repaired celery, c2 error, finish merge
This commit is contained in:
@@ -447,7 +447,6 @@ def get_username(access_token):
|
|||||||
|
|
||||||
me_json = response.json()
|
me_json = response.json()
|
||||||
|
|
||||||
|
|
||||||
return me_json['data']['username']
|
return me_json['data']['username']
|
||||||
|
|
||||||
# Get user id, having access token
|
# Get user id, having access token
|
||||||
@@ -463,9 +462,12 @@ def get_userid(access_token):
|
|||||||
|
|
||||||
|
|
||||||
me_json = response.json()
|
me_json = response.json()
|
||||||
|
try:
|
||||||
|
res = me_json['data']['id']
|
||||||
return me_json['data']['id']
|
except KeyError:
|
||||||
|
res = 0
|
||||||
|
|
||||||
|
return res
|
||||||
|
|
||||||
# For debugging purposes
|
# For debugging purposes
|
||||||
def process_callback(request):
|
def process_callback(request):
|
||||||
@@ -515,16 +517,19 @@ def workout_c2_upload(user,w):
|
|||||||
def rower_c2_token_refresh(user):
|
def rower_c2_token_refresh(user):
|
||||||
r = Rower.objects.get(user=user)
|
r = Rower.objects.get(user=user)
|
||||||
res = do_refresh_token(r.c2refreshtoken)
|
res = do_refresh_token(r.c2refreshtoken)
|
||||||
access_token = res[0]
|
if res[0]:
|
||||||
expires_in = res[1]
|
access_token = res[0]
|
||||||
refresh_token = res[2]
|
expires_in = res[1]
|
||||||
expirydatetime = timezone.now()+timedelta(seconds=expires_in)
|
refresh_token = res[2]
|
||||||
|
expirydatetime = timezone.now()+timedelta(seconds=expires_in)
|
||||||
|
|
||||||
r = Rower.objects.get(user=user)
|
r = Rower.objects.get(user=user)
|
||||||
r.c2token = access_token
|
r.c2token = access_token
|
||||||
r.tokenexpirydate = expirydatetime
|
r.tokenexpirydate = expirydatetime
|
||||||
r.c2refreshtoken = refresh_token
|
r.c2refreshtoken = refresh_token
|
||||||
|
|
||||||
r.save()
|
r.save()
|
||||||
return r.c2token
|
return r.c2token
|
||||||
|
else:
|
||||||
|
return None
|
||||||
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ from celery import Celery
|
|||||||
# on Windows, so I use Celery on my notebook.
|
# on Windows, so I use Celery on my notebook.
|
||||||
|
|
||||||
# set the default Django settings module for the 'celery' program.
|
# set the default Django settings module for the 'celery' program.
|
||||||
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'rowsandall_app.settings')
|
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'rowsandall_app.settings_dev')
|
||||||
|
|
||||||
from django.conf import settings # noqa
|
from django.conf import settings # noqa
|
||||||
|
|
||||||
@@ -25,6 +25,8 @@ app.config_from_object('django.conf:settings')
|
|||||||
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
|
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)
|
||||||
|
|
||||||
|
|
||||||
|
database_url = 'sqlite:///db.sqlite3'
|
||||||
|
|
||||||
@app.task(bind=True)
|
@app.task(bind=True)
|
||||||
def debug_task(self):
|
def debug_task(self):
|
||||||
print('Request: {0!r}'.format(self.request))
|
print('Request: {0!r}'.format(self.request))
|
||||||
|
|||||||
@@ -32,10 +32,14 @@ class CNsummaryForm(forms.Form):
|
|||||||
class SummaryStringForm(forms.Form):
|
class SummaryStringForm(forms.Form):
|
||||||
intervalstring = forms.CharField(max_length=255,label='Workout Description')
|
intervalstring = forms.CharField(max_length=255,label='Workout Description')
|
||||||
|
|
||||||
|
# little window to type a Team invitation code
|
||||||
|
class TeamInviteCodeForm(forms.Form):
|
||||||
|
code = forms.CharField(max_length=10,label='Team Code',
|
||||||
|
)
|
||||||
|
|
||||||
# Used for testing the POST API for StrokeData
|
# Used for testing the POST API for StrokeData
|
||||||
class StrokeDataForm(forms.Form):
|
class StrokeDataForm(forms.Form):
|
||||||
strokedata = forms.CharField(label='payload',
|
strokedata = forms.CharField(label='payload',widget=forms.Textarea)
|
||||||
widget=forms.Textarea)
|
|
||||||
|
|
||||||
# The form used for uploading files
|
# The form used for uploading files
|
||||||
class DocumentsForm(forms.Form):
|
class DocumentsForm(forms.Form):
|
||||||
|
|||||||
@@ -100,7 +100,25 @@
|
|||||||
</tr>
|
</tr>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</tbody>
|
</tbody>
|
||||||
|
</table>
|
||||||
|
<h3>Manual code redeem</h3>
|
||||||
|
<div class="grid_4 alpha">
|
||||||
|
<form enctype="multipart/form-data" action="{{ formloc }}" method="post">
|
||||||
|
{% if form.errors %}
|
||||||
|
<p style\"color: red;">
|
||||||
|
Please correct the error{{ form.errors|pluralize }} below.
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
{% csrf_token %}
|
||||||
|
<table>
|
||||||
|
{{ form.as_table }}
|
||||||
</table>
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="formbutton" class="grid_1 suffix_1 omega">
|
||||||
|
<input class="button green" type="submit" value="Submit">
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
</p>
|
</p>
|
||||||
{% else %}
|
{% else %}
|
||||||
<p> </p>
|
<p> </p>
|
||||||
|
|||||||
@@ -647,7 +647,7 @@ def c2_open(user):
|
|||||||
if res[0] != None:
|
if res[0] != None:
|
||||||
thetoken = res[0]
|
thetoken = res[0]
|
||||||
else:
|
else:
|
||||||
thetoken = r.c2token
|
raise C2NoTokenError("User has no token")
|
||||||
else:
|
else:
|
||||||
thetoken = r.c2token
|
thetoken = r.c2token
|
||||||
|
|
||||||
@@ -5081,8 +5081,22 @@ def team_leave_view(request,id=0):
|
|||||||
url = reverse(rower_teams_view)
|
url = reverse(rower_teams_view)
|
||||||
response = HttpResponseRedirect(url)
|
response = HttpResponseRedirect(url)
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
from rowers.forms import TeamInviteCodeForm
|
||||||
|
|
||||||
@login_required()
|
@login_required()
|
||||||
|
def rower_teams_view(request,message='',successmessage=''):
|
||||||
|
if request.method == 'POST':
|
||||||
|
form = TeamInviteCodeForm(request.POST)
|
||||||
|
if form.is_valid():
|
||||||
|
code = form.cleaned_data['code']
|
||||||
|
res,text = teams.process_invite_code(request.user,code)
|
||||||
|
if res:
|
||||||
|
successmessage = text
|
||||||
|
else:
|
||||||
|
message = text
|
||||||
|
else:
|
||||||
|
form = TeamInviteCodeForm()
|
||||||
|
|
||||||
r = Rower.objects.get(user=request.user)
|
r = Rower.objects.get(user=request.user)
|
||||||
ts = Team.objects.filter(rower=r)
|
ts = Team.objects.filter(rower=r)
|
||||||
@@ -5093,6 +5107,8 @@ def rower_teams_view(request,message='',successmessage=''):
|
|||||||
invites = TeamInvite.objects.filter(user=request.user)
|
invites = TeamInvite.objects.filter(user=request.user)
|
||||||
requests = TeamRequest.objects.filter(user=request.user)
|
requests = TeamRequest.objects.filter(user=request.user)
|
||||||
myrequests = TeamRequest.objects.filter(team__in=myteams)
|
myrequests = TeamRequest.objects.filter(team__in=myteams)
|
||||||
|
myinvites = TeamInvite.objects.filter(team__in=myteams)
|
||||||
|
|
||||||
print form
|
print form
|
||||||
|
|
||||||
return render(request, 'teams.html',
|
return render(request, 'teams.html',
|
||||||
@@ -5102,6 +5118,7 @@ def rower_teams_view(request,message='',successmessage=''):
|
|||||||
'invites':invites,
|
'invites':invites,
|
||||||
'otherteams':otherteams,
|
'otherteams':otherteams,
|
||||||
'requests':requests,
|
'requests':requests,
|
||||||
|
'myrequests':myrequests,
|
||||||
'form':form,
|
'form':form,
|
||||||
'message':message,
|
'message':message,
|
||||||
'successmessage':successmessage,
|
'successmessage':successmessage,
|
||||||
|
|||||||
@@ -14,7 +14,9 @@ from settings import *
|
|||||||
DATABASES = {
|
DATABASES = {
|
||||||
'default': {
|
'default': {
|
||||||
'ENGINE': 'django.db.backends.sqlite3',
|
'ENGINE': 'django.db.backends.sqlite3',
|
||||||
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),},
|
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
|
||||||
|
'HOST': 'localhost'
|
||||||
|
},
|
||||||
# 'TEST': {
|
# 'TEST': {
|
||||||
# 'CHARSET': 'utf8',
|
# 'CHARSET': 'utf8',
|
||||||
# 'COLLATION': 'utf8_general_ci',
|
# 'COLLATION': 'utf8_general_ci',
|
||||||
|
|||||||
Reference in New Issue
Block a user