diff --git a/kaehmy/static/kaehmy/img/kaehmy_banner.png b/kaehmy/static/kaehmy/img/kaehmy_banner.png index c7fb689..3c149e6 100644 Binary files a/kaehmy/static/kaehmy/img/kaehmy_banner.png and b/kaehmy/static/kaehmy/img/kaehmy_banner.png differ diff --git a/kaehmy/templates/kaehmy.html b/kaehmy/templates/kaehmy.html index ed838aa..127df2e 100644 --- a/kaehmy/templates/kaehmy.html +++ b/kaehmy/templates/kaehmy.html @@ -25,10 +25,9 @@

{% trans "Päivämääriä & deadlineja" %}
{% csrf_token %} diff --git a/requirements.txt b/requirements.txt index fcd9cb6..6615aa2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9,7 +9,7 @@ ptyprocess==0.5.1 pytz==2016.4 simplegeneric==0.8.1 traitlets==4.2.1 -Pillow==5.4.1 +Pillow==7.2.0 requests==2.11.1 django-nocaptcha-recaptcha==0.0.19 django-cors-headers==2.0.1 @@ -41,3 +41,4 @@ django-filter==2.0.0 whitenoise==4.1.4 jsonschema==3.2.0 mailjet-rest==1.3.3 +markdown==3.2.2 diff --git a/stack-compose.yml b/stack-compose.yml index 415435c..775c529 100644 --- a/stack-compose.yml +++ b/stack-compose.yml @@ -1,16 +1,5 @@ version: '3.4' services: - filebrowser: - image: registry.gitlab.com/sahkoinsinoorikilta/vtmk/filebrowser - ports: - - 5000:80 - environment: - - AUTH_BACKEND_URL=https://api.sika.sik.party/jwt_nginx - - AUTH_LOGIN_URL=https://sika.sik.party/admin/login - volumes: - - /home/sik/production/files/static:/srv - - /home/sik/production/filebrowser.db:/filebrowser.db - db: image: postgres:12 deploy: diff --git a/webapp/migrations/0070_auto_20201004_1820.py b/webapp/migrations/0070_auto_20201004_1820.py new file mode 100644 index 0000000..520fc52 --- /dev/null +++ b/webapp/migrations/0070_auto_20201004_1820.py @@ -0,0 +1,39 @@ +# Generated by Django 2.1.5 on 2020-10-04 15:20 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('webapp', '0069_signupform_schema'), + ] + + operations = [ + migrations.AddField( + model_name='event', + name='location_en', + field=models.CharField(blank=True, max_length=255, null=True), + ), + migrations.AddField( + model_name='event', + name='location_fi', + field=models.CharField(blank=True, max_length=255, null=True), + ), + migrations.AddField( + model_name='signupform', + name='email_content', + field=models.TextField(default=''), + preserve_default=False, + ), + migrations.AddField( + model_name='signupform', + name='title_en', + field=models.CharField(max_length=255, null=True), + ), + migrations.AddField( + model_name='signupform', + name='title_fi', + field=models.CharField(max_length=255, null=True), + ), + ] diff --git a/webapp/migrations/0071_auto_20201006_1749.py b/webapp/migrations/0071_auto_20201006_1749.py new file mode 100644 index 0000000..2a3b8fb --- /dev/null +++ b/webapp/migrations/0071_auto_20201006_1749.py @@ -0,0 +1,18 @@ +# Generated by Django 2.1.5 on 2020-10-06 14:49 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('webapp', '0070_auto_20201004_1820'), + ] + + operations = [ + migrations.AlterField( + model_name='signupform', + name='email_content', + field=models.TextField(blank=True), + ), + ] diff --git a/webapp/models.py b/webapp/models.py index 731d652..faf9541 100644 --- a/webapp/models.py +++ b/webapp/models.py @@ -100,6 +100,7 @@ class SignupForm(models.Model): schema = JSONField() visible = models.BooleanField(default=True) quota = models.PositiveIntegerField(blank=True, null=True) + email_content = models.TextField(blank=True) def __str__(self): return _('#{} {}').format(self.id, self.title) @@ -149,7 +150,7 @@ def email_on_signup(sender, instance, created, **kwargs): except AttributeError: # subject = _(f"Olet ilmoittautunut ilmoon {instance.signupForm.title}") subject = f"Olet ilmoittautunut ilmoon {instance.signupForm.title}" - send_signup_email(instance.email, subject, instance.id, instance.uuid) + send_signup_email(instance.email, subject, instance.id, instance.uuid, instance.signupForm.email_content) class BaseRole(models.Model): diff --git a/webapp/serializers.py b/webapp/serializers.py index 0a1049e..0236cfd 100644 --- a/webapp/serializers.py +++ b/webapp/serializers.py @@ -53,7 +53,7 @@ class SignupFormSerializer(serializers.ModelSerializer): class Meta: model = SignupForm - fields = ('id', 'title', 'visible', 'isOpen', 'start_time', 'end_time', 'questions', 'schema', 'signups', 'quota') + fields = ('id', 'title_fi', 'title_en', 'visible', 'isOpen', 'start_time', 'end_time', 'email_content', 'questions', 'schema', 'signups', 'quota') class EventSerializer(serializers.ModelSerializer): @@ -77,7 +77,7 @@ class EventSerializer(serializers.ModelSerializer): class Meta: model = Event fields = ('id', 'tag_id', 'tags', 'visible', 'image', 'title_fi', 'title_en', 'description_fi', 'description_en', - 'content_fi', 'content_en', 'start_time', 'end_time', 'location', 'signup_id', 'signupForm') + 'content_fi', 'content_en', 'start_time', 'end_time', 'location_fi', 'location_en', 'signup_id', 'signupForm') read_only_fields = ['tags', 'signupForm'] depth = 1 diff --git a/webapp/templates/signup_email.html b/webapp/templates/signup_email.html index 9dbf67a..659ce67 100644 --- a/webapp/templates/signup_email.html +++ b/webapp/templates/signup_email.html @@ -1,10 +1,9 @@ -{% load i18n %} -{% trans "Moikka" %}, +{% autoescape off %} +{{ content }} +{% endautoescape %} -{% trans "Ilmottautuminen saapui perille" %} +

Voit muokata ilmoittautumistasi lomakkeen olleessa avoinna alla olevasta linkistä:

-{% trans "Voit muokata ilmoittautumistasi lomakkeen olleessa avoinna alla olevasta linkistä:" %} +{{url}} -{{ url }} - -{% trans "Hädässä ota yhteyttä sik-vtmk@list.ayy.fi" %} +

Hädässä ota yhteyttä sik-vtmk@list.ayy.fi

\ No newline at end of file diff --git a/webapp/translation.py b/webapp/translation.py index 24c4b62..c404302 100644 --- a/webapp/translation.py +++ b/webapp/translation.py @@ -29,7 +29,7 @@ class TagTranslationOptions(TranslationOptions): class EventTranslationOptions(TranslationOptions): """Class for event translation options.""" - fields = () + fields = ('location',) @register(Signup) @@ -43,7 +43,7 @@ class SignupTranslationOptions(TranslationOptions): class SignupFormTranslationOptions(TranslationOptions): """Class for registration translation options.""" - fields = () + fields = ('title',) @register(TemplateQuestion) diff --git a/webapp/utils.py b/webapp/utils.py index 299cd52..1f60f3a 100644 --- a/webapp/utils.py +++ b/webapp/utils.py @@ -14,6 +14,7 @@ import base64 import uuid from sikweb.settings import FRONTEND_URL, URL, EMAIL_API_KEY, EMAIL_API_SECRET, DEFAULT_EMAIL_FROM, DEFAULT_EMAIL_FROM_ADDR, ENABLE_AUTOMATIC_EMAILS import imghdr +import markdown def get_file_extension(file_name, decoded_file): @@ -91,11 +92,12 @@ def send_email(to, subject, body, html=False): logging.exception('Failed to send email.') -def send_signup_email(to, subject, id, uuid): +def send_signup_email(to, subject, id, uuid, content): message = render_to_string( 'webapp:signup_email.html', { 'url': f"https://{FRONTEND_URL}/signup/edit/{id}/{uuid}", + 'content': markdown.markdown(content), } ) - return send_email(to, subject, message) + return send_email(to, subject, message, True)