Merge branch 'release/v20.2.0'
This commit is contained in:
+13
-1
@@ -27,7 +27,7 @@ from rowsandall_app.settings import SITE_URL
|
|||||||
from rowsandall_app.settings_dev import SITE_URL as SITE_URL_DEV
|
from rowsandall_app.settings_dev import SITE_URL as SITE_URL_DEV
|
||||||
from rowsandall_app.settings import PROGRESS_CACHE_SECRET
|
from rowsandall_app.settings import PROGRESS_CACHE_SECRET
|
||||||
from rowsandall_app.settings import SETTINGS_NAME
|
from rowsandall_app.settings import SETTINGS_NAME
|
||||||
|
from rowers.models import UserMessage, Rower, User
|
||||||
|
|
||||||
import pandas as pd
|
import pandas as pd
|
||||||
|
|
||||||
@@ -112,6 +112,18 @@ def send_template_email(from_email, to_email, subject,
|
|||||||
else:
|
else:
|
||||||
emailbounced = False
|
emailbounced = False
|
||||||
|
|
||||||
|
try:
|
||||||
|
usr = User.objects.get(email=to_email)
|
||||||
|
umsg = UserMessage(
|
||||||
|
receiver = usr.rower,
|
||||||
|
datetime = timezone.now(),
|
||||||
|
text = text_content,
|
||||||
|
subject=subject,
|
||||||
|
)
|
||||||
|
umsg.save()
|
||||||
|
except User.DoesNotExist:
|
||||||
|
pass
|
||||||
|
|
||||||
if not emailbounced:
|
if not emailbounced:
|
||||||
res = msg.send()
|
res = msg.send()
|
||||||
else: # pragma: no cover
|
else: # pragma: no cover
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ from rowers import mytypes
|
|||||||
from rowers.tasks import handle_strava_sync, fetch_strava_workout
|
from rowers.tasks import handle_strava_sync, fetch_strava_workout
|
||||||
from stravalib.exc import ActivityUploadFailed, TimeoutExceeded
|
from stravalib.exc import ActivityUploadFailed, TimeoutExceeded
|
||||||
from rowers.rower_rules import is_workout_user, ispromember
|
from rowers.rower_rules import is_workout_user, ispromember
|
||||||
from rowers.utils import get_strava_stream
|
from rowers.utils import get_strava_stream, custom_exception_handler
|
||||||
|
|
||||||
from rowers.utils import myqueue, dologging
|
from rowers.utils import myqueue, dologging
|
||||||
#from rowers.imports import *
|
#from rowers.imports import *
|
||||||
|
|||||||
@@ -1241,6 +1241,13 @@ class DeleteUserForm(forms.ModelForm):
|
|||||||
model = User
|
model = User
|
||||||
fields = []
|
fields = []
|
||||||
|
|
||||||
|
class UserMessage(models.Model):
|
||||||
|
receiver = models.ForeignKey(Rower, on_delete=models.CASCADE)
|
||||||
|
datetime = models.DateTimeField()
|
||||||
|
isread = models.BooleanField(default=False)
|
||||||
|
text = models.CharField(max_length=1000)
|
||||||
|
subject = models.CharField(max_length=100,default='Message')
|
||||||
|
|
||||||
# requestor is user
|
# requestor is user
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
BIN
Binary file not shown.
@@ -898,6 +898,8 @@ def ps_dict_order_dict(d, short=False):
|
|||||||
def ps_dict_order(d, short=False, rower=None, html=True):
|
def ps_dict_order(d, short=False, rower=None, html=True):
|
||||||
sdict = collections.OrderedDict({})
|
sdict = collections.OrderedDict({})
|
||||||
steps = d['steps']
|
steps = d['steps']
|
||||||
|
if steps is None:
|
||||||
|
steps = []
|
||||||
|
|
||||||
ftp = 200
|
ftp = 200
|
||||||
powerzones = None
|
powerzones = None
|
||||||
|
|||||||
Reference in New Issue
Block a user