From 33209aed7c3e858d95576bdcfefa17c3f5d7597b Mon Sep 17 00:00:00 2001 From: luxagraf Date: Wed, 5 Feb 2020 16:18:53 -0500 Subject: migrated newsletter templates and updated mailing model --- app/lttr/admin.py | 31 +++++++++++++++- app/lttr/migrations/0005_auto_20200205_1606.py | 31 ++++++++++++++++ app/lttr/models.py | 20 +++++++++-- app/lttr/templates/lttr/confirm_activate.html | 17 +++++++++ app/lttr/templates/lttr/message/subscribe.html | 24 +++++++++++++ app/lttr/templates/lttr/message/subscribe.txt | 9 +++++ .../templates/lttr/message/subscribe_subject.txt | 1 + app/lttr/templates/lttr/message/unsubscribe.html | 19 ++++++++++ app/lttr/templates/lttr/message/unsubscribe.txt | 9 +++++ .../templates/lttr/message/unsubscribe_subject.txt | 1 + app/lttr/templates/lttr/subscribed.html | 17 +++++++++ app/lttr/templates/lttr/subscriber_form.html | 39 ++++++++++++++++++++ app/lttr/views.py | 11 ++++++ design/templates/lttr/confirm_activate.html | 17 --------- design/templates/lttr/message/subscribe.html | 24 ------------- design/templates/lttr/message/subscribe.txt | 9 ----- .../templates/lttr/message/subscribe_subject.txt | 1 - design/templates/lttr/message/unsubscribe.html | 19 ---------- design/templates/lttr/message/unsubscribe.txt | 9 ----- .../templates/lttr/message/unsubscribe_subject.txt | 1 - design/templates/lttr/subscribed.html | 17 --------- design/templates/lttr/subscriber_form.html | 39 -------------------- design/templates/newsletter/common.html | 15 ++++++++ design/templates/newsletter/message/message.html | 32 +++++++++++++++++ design/templates/newsletter/message/message.txt | 15 ++++++++ .../newsletter/message/message_subject.txt | 1 + design/templates/newsletter/message/subscribe.html | 20 +++++++++++ design/templates/newsletter/message/subscribe.txt | 9 +++++ .../newsletter/message/subscribe_subject.txt | 1 + .../templates/newsletter/message/unsubscribe.html | 19 ++++++++++ .../templates/newsletter/message/unsubscribe.txt | 9 +++++ .../newsletter/message/unsubscribe_subject.txt | 1 + design/templates/newsletter/message/update.html | 19 ++++++++++ design/templates/newsletter/message/update.txt | 9 +++++ .../newsletter/message/update_subject.txt | 1 + design/templates/newsletter/newsletter_detail.html | 30 ++++++++++++++++ design/templates/newsletter/newsletter_list.html | 41 ++++++++++++++++++++++ .../templates/newsletter/submission_archive.html | 21 +++++++++++ .../newsletter/subscription_activate.html | 15 ++++++++ .../newsletter/subscription_subscribe.html | 25 +++++++++++++ .../subscription_subscribe_activated.html | 11 ++++++ .../subscription_subscribe_email_sent.html | 11 ++++++ .../newsletter/subscription_subscribe_user.html | 25 +++++++++++++ .../newsletter/subscription_unsubscribe.html | 25 +++++++++++++ .../subscription_unsubscribe_activated.html | 11 ++++++ .../subscription_unsubscribe_email_sent.html | 11 ++++++ .../newsletter/subscription_unsubscribe_user.html | 27 ++++++++++++++ .../templates/newsletter/subscription_update.html | 25 +++++++++++++ .../newsletter/subscription_update_activated.html | 11 ++++++ .../newsletter/subscription_update_email_sent.html | 11 ++++++ 50 files changed, 676 insertions(+), 140 deletions(-) create mode 100644 app/lttr/migrations/0005_auto_20200205_1606.py create mode 100644 app/lttr/templates/lttr/confirm_activate.html create mode 100644 app/lttr/templates/lttr/message/subscribe.html create mode 100644 app/lttr/templates/lttr/message/subscribe.txt create mode 100644 app/lttr/templates/lttr/message/subscribe_subject.txt create mode 100644 app/lttr/templates/lttr/message/unsubscribe.html create mode 100644 app/lttr/templates/lttr/message/unsubscribe.txt create mode 100644 app/lttr/templates/lttr/message/unsubscribe_subject.txt create mode 100644 app/lttr/templates/lttr/subscribed.html create mode 100644 app/lttr/templates/lttr/subscriber_form.html delete mode 100644 design/templates/lttr/confirm_activate.html delete mode 100644 design/templates/lttr/message/subscribe.html delete mode 100644 design/templates/lttr/message/subscribe.txt delete mode 100644 design/templates/lttr/message/subscribe_subject.txt delete mode 100644 design/templates/lttr/message/unsubscribe.html delete mode 100644 design/templates/lttr/message/unsubscribe.txt delete mode 100644 design/templates/lttr/message/unsubscribe_subject.txt delete mode 100644 design/templates/lttr/subscribed.html delete mode 100644 design/templates/lttr/subscriber_form.html create mode 100644 design/templates/newsletter/common.html create mode 100644 design/templates/newsletter/message/message.html create mode 100644 design/templates/newsletter/message/message.txt create mode 100644 design/templates/newsletter/message/message_subject.txt create mode 100644 design/templates/newsletter/message/subscribe.html create mode 100644 design/templates/newsletter/message/subscribe.txt create mode 100644 design/templates/newsletter/message/subscribe_subject.txt create mode 100644 design/templates/newsletter/message/unsubscribe.html create mode 100644 design/templates/newsletter/message/unsubscribe.txt create mode 100644 design/templates/newsletter/message/unsubscribe_subject.txt create mode 100644 design/templates/newsletter/message/update.html create mode 100644 design/templates/newsletter/message/update.txt create mode 100644 design/templates/newsletter/message/update_subject.txt create mode 100644 design/templates/newsletter/newsletter_detail.html create mode 100644 design/templates/newsletter/newsletter_list.html create mode 100644 design/templates/newsletter/submission_archive.html create mode 100644 design/templates/newsletter/subscription_activate.html create mode 100644 design/templates/newsletter/subscription_subscribe.html create mode 100644 design/templates/newsletter/subscription_subscribe_activated.html create mode 100644 design/templates/newsletter/subscription_subscribe_email_sent.html create mode 100644 design/templates/newsletter/subscription_subscribe_user.html create mode 100644 design/templates/newsletter/subscription_unsubscribe.html create mode 100644 design/templates/newsletter/subscription_unsubscribe_activated.html create mode 100644 design/templates/newsletter/subscription_unsubscribe_email_sent.html create mode 100644 design/templates/newsletter/subscription_unsubscribe_user.html create mode 100644 design/templates/newsletter/subscription_update.html create mode 100644 design/templates/newsletter/subscription_update_activated.html create mode 100644 design/templates/newsletter/subscription_update_email_sent.html diff --git a/app/lttr/admin.py b/app/lttr/admin.py index 1b919d6..4ca30ce 100644 --- a/app/lttr/admin.py +++ b/app/lttr/admin.py @@ -1,7 +1,8 @@ from django.contrib import admin -from .models import NewsletterMailing, Subscriber +from utils.widgets import AdminImageWidget, LGEntryForm +from .models import NewsletterMailing, Subscriber @admin.register(Subscriber) class SubscriberAdmin(admin.ModelAdmin): @@ -11,3 +12,31 @@ class SubscriberAdmin(admin.ModelAdmin): class Media: js = ('next-prev-links.js',) + + +@admin.register(NewsletterMailing) +class NewsletterMailingAdmin(admin.ModelAdmin): + form = LGEntryForm + list_display = ('title', 'pub_date', 'status') + fieldsets = ( + ('Entry', { + 'fields': ( + 'title', + 'body_markdown', + ('pub_date', 'status'), + 'slug', + 'featured_image', + ), + 'classes': ( + 'show', + 'extrapretty', + 'wide' + ) + } + ), + ) + class Media: + js = ('image-loader.js', 'next-prev-links.js') + css = { + "all": ("my_styles.css",) + } diff --git a/app/lttr/migrations/0005_auto_20200205_1606.py b/app/lttr/migrations/0005_auto_20200205_1606.py new file mode 100644 index 0000000..0be644e --- /dev/null +++ b/app/lttr/migrations/0005_auto_20200205_1606.py @@ -0,0 +1,31 @@ +# Generated by Django 2.1.2 on 2020-02-05 16:06 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('photos', '0019_auto_20190704_0903'), + ('lttr', '0004_auto_20190212_1529'), + ] + + operations = [ + migrations.AddField( + model_name='newslettermailing', + name='body_html', + field=models.TextField(blank=True), + ), + migrations.AddField( + model_name='newslettermailing', + name='body_markdown', + field=models.TextField(default='tk'), + preserve_default=False, + ), + migrations.AddField( + model_name='newslettermailing', + name='featured_image', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='photos.LuxImage'), + ), + ] diff --git a/app/lttr/models.py b/app/lttr/models.py index ec5e897..4ab6030 100644 --- a/app/lttr/models.py +++ b/app/lttr/models.py @@ -12,6 +12,7 @@ from django.utils.crypto import get_random_string from taggit.managers import TaggableManager from taxonomy.models import TaggedItems +from photos.models import LuxImage, LuxImageSize # Possible actions that user can perform @@ -101,7 +102,10 @@ class NewsletterMailing(models.Model): """ A model for Newletter Mailings, the things actually sent out """ title = models.CharField(max_length=250) slug = models.SlugField(unique_for_date='pub_date', blank=True) + body_html = models.TextField(blank=True) + body_markdown = models.TextField() pub_date = models.DateTimeField() + featured_image = models.ForeignKey(LuxImage, on_delete=models.CASCADE, null=True, blank=True) tags = TaggableManager(through=TaggedItems, blank=True, help_text='Topics Covered') PUB_STATUS = ( (0, 'Not Published'), @@ -120,8 +124,20 @@ class NewsletterMailing(models.Model): return reverse("newsletter:mailing-detail", kwargs={"slug": self.slug}) def save(self, *args, **kwargs): - if not self.id: + created = self.pk is None + if not created: + md = render_images(self.body_markdown) + self.body_html = markdown_to_html(md) self.date_created = timezone.now() + if created and not self.featured_image: + self.featured_image = LuxImage.objects.latest() + old = type(self).objects.get(pk=self.pk) if self.pk else None + if old and old.featured_image != self.featured_image: # Field has changed + s = LuxImageSize.objects.get(name="featured_jrnl") + ss = LuxImageSize.objects.get(name="picwide-med") + self.featured_image.sizes.add(s) + self.featured_image.sizes.add(ss) + self.featured_image.save() super(NewsletterMailing, self).save() @@ -298,8 +314,6 @@ class Subscriber(models.Model): def get_address(name, email): - # Converting name to ascii for compatibility with django < 1.9. - # Remove this when django 1.8 is no longer supported. if name: return u'%s <%s>' % (name, email) else: diff --git a/app/lttr/templates/lttr/confirm_activate.html b/app/lttr/templates/lttr/confirm_activate.html new file mode 100644 index 0000000..d67ee1b --- /dev/null +++ b/app/lttr/templates/lttr/confirm_activate.html @@ -0,0 +1,17 @@ +{% extends 'base.html' %} +{% load typogrify_tags %} + +{% block pagetitle %}Luxagraf | Friends of a Long Year {% endblock %} +{% block metadescription %}An infrequesnt mailing list about travel, photography, tools, walking, the natural world and other ephemera.{% endblock %} + +{% block primary %} +
+
+

You're confirmed, thanks for joining.

+

If you'd like you can visit the archives of past mailings.

+
+
+{%endblock%} diff --git a/app/lttr/templates/lttr/message/subscribe.html b/app/lttr/templates/lttr/message/subscribe.html new file mode 100644 index 0000000..3ed34db --- /dev/null +++ b/app/lttr/templates/lttr/message/subscribe.html @@ -0,0 +1,24 @@ +{% load i18n %} + + + + + {% blocktrans with title=newsletter.title %}Subscription to {{ title }}{% endblocktrans %} + + + +{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.subscribe_activate_url %} + +

Hola-

+ +

Someone, hopefully you, asked to subscribe to {{ title }}, a luxagraf.net letter.

+ +

To confirm your subscription, please follow this activation link: +

+ +https://{{ domain }}{{ url }} +{% endblocktrans %} +

cheers
+Scott

+ + diff --git a/app/lttr/templates/lttr/message/subscribe.txt b/app/lttr/templates/lttr/message/subscribe.txt new file mode 100644 index 0000000..2af5378 --- /dev/null +++ b/app/lttr/templates/lttr/message/subscribe.txt @@ -0,0 +1,9 @@ +Hola- + +Someone, hopefully you, asked to subscribe to {{ newsletter.title }}, a luxagraf.net letter. + +If you would like to confirm your subscription, please follow this activation link: +https://{{ site.domain }}{{ subscription.subscribe_activate_url }} + +cheers +Scott diff --git a/app/lttr/templates/lttr/message/subscribe_subject.txt b/app/lttr/templates/lttr/message/subscribe_subject.txt new file mode 100644 index 0000000..f4660e0 --- /dev/null +++ b/app/lttr/templates/lttr/message/subscribe_subject.txt @@ -0,0 +1 @@ +Confirm Your Subscription to {{newsletter.title}} diff --git a/app/lttr/templates/lttr/message/unsubscribe.html b/app/lttr/templates/lttr/message/unsubscribe.html new file mode 100644 index 0000000..4b1a86b --- /dev/null +++ b/app/lttr/templates/lttr/message/unsubscribe.html @@ -0,0 +1,19 @@ +{% load i18n %} + + + + + {% blocktrans with title=newsletter.title %}Unsubscription from {{ title }}{% endblocktrans %} + + +{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.unsubscribe_activate_url %}Dear {{ name }}, + +you, or someone in your name requested unsubscription from {{ title }}. + +If you would like to confirm your unsubscription, please follow this activation link: +http://{{ domain }}{{ url }} + +Kind regards,{% endblocktrans %} +{{ newsletter.sender }} + + diff --git a/app/lttr/templates/lttr/message/unsubscribe.txt b/app/lttr/templates/lttr/message/unsubscribe.txt new file mode 100644 index 0000000..ab31fa5 --- /dev/null +++ b/app/lttr/templates/lttr/message/unsubscribe.txt @@ -0,0 +1,9 @@ +{% load i18n %}{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.unsubscribe_activate_url %}Dear {{ name }}, + +you, or someone in your name requested unsubscription from {{ title }}. + +If you would like to confirm your unsubscription, please follow this activation link: +http://{{ domain }}{{ url }} + +Kind regards,{% endblocktrans %} +{{ newsletter.sender }} diff --git a/app/lttr/templates/lttr/message/unsubscribe_subject.txt b/app/lttr/templates/lttr/message/unsubscribe_subject.txt new file mode 100644 index 0000000..49c68ef --- /dev/null +++ b/app/lttr/templates/lttr/message/unsubscribe_subject.txt @@ -0,0 +1 @@ +{% load i18n %}{{ newsletter.title }} - {% trans "Confirm unsubscription" %} diff --git a/app/lttr/templates/lttr/subscribed.html b/app/lttr/templates/lttr/subscribed.html new file mode 100644 index 0000000..18ad151 --- /dev/null +++ b/app/lttr/templates/lttr/subscribed.html @@ -0,0 +1,17 @@ +{% extends 'base.html' %} +{% load typogrify_tags %} + +{% block pagetitle %}Luxagraf | Friends of a Long Year {% endblock %} +{% block metadescription %}An infrequesnt mailing list about travel, photography, tools, walking, the natural world and other ephemera.{% endblock %} + +{% block primary %} +
+
+

Thanks for joining.

+

Check your email for a link to confirm your subscription

+
+
+{%endblock%} diff --git a/app/lttr/templates/lttr/subscriber_form.html b/app/lttr/templates/lttr/subscriber_form.html new file mode 100644 index 0000000..83e1e28 --- /dev/null +++ b/app/lttr/templates/lttr/subscriber_form.html @@ -0,0 +1,39 @@ +{% extends 'base.html' %} +{% load typogrify_tags %} + +{% block pagetitle %}Luxagraf | Friends of a Long Year {% endblock %} +{% block metadescription %}An infrequesnt mailing list about travel, photography, tools, walking, the natural world and other ephemera.{% endblock %} + +{% block primary %} +
+
+

Join the Friends of a Long Year.

+ + {% if field.errors %}{{field.errors}}{% endif %} + {%endfor%} +

Say what?

+

Friends of a Long Year is an infrequent mailing that will keep you up-to-date with luxagraf and offer some thoughts on topics like travel, photography, the natural world, tools, walking and other ephemera. It comes about twice a month, sometimes less, sometimes more. Unsubscribing is easy. It's all self-hosted, secure, and private.

+

The name comes from the great early 20th century explorer and desert rat, Mary Hunter Austin, whose collected essays, Lost Borders is dedicated to the "Friends of a Long Year". This somewhat inscrutable dedication grabbed me, and seemed like the perfect name for this mailing list.

+
+

Letters

+ +
+{%endblock%} diff --git a/app/lttr/views.py b/app/lttr/views.py index 0d3dbea..79b8e72 100644 --- a/app/lttr/views.py +++ b/app/lttr/views.py @@ -90,3 +90,14 @@ class ConfirmSubscriptionView(DetailView): if obj.subscribed is False: obj.update('subscribe') return obj + + +class UnsubscribeRequestView(DetailView): + model = Subscriber + template_name = "lttr/unsubscribe.html" + + def get_object(self): + obj = Subscriber.objects.get(newsletter__slug=self.kwargs['slug']) + if obj.subscribed is True: + obj.update('unsubscribe') + return obj diff --git a/design/templates/lttr/confirm_activate.html b/design/templates/lttr/confirm_activate.html deleted file mode 100644 index d67ee1b..0000000 --- a/design/templates/lttr/confirm_activate.html +++ /dev/null @@ -1,17 +0,0 @@ -{% extends 'base.html' %} -{% load typogrify_tags %} - -{% block pagetitle %}Luxagraf | Friends of a Long Year {% endblock %} -{% block metadescription %}An infrequesnt mailing list about travel, photography, tools, walking, the natural world and other ephemera.{% endblock %} - -{% block primary %} -
-
-

You're confirmed, thanks for joining.

-

If you'd like you can visit the archives of past mailings.

-
-
-{%endblock%} diff --git a/design/templates/lttr/message/subscribe.html b/design/templates/lttr/message/subscribe.html deleted file mode 100644 index 3ed34db..0000000 --- a/design/templates/lttr/message/subscribe.html +++ /dev/null @@ -1,24 +0,0 @@ -{% load i18n %} - - - - - {% blocktrans with title=newsletter.title %}Subscription to {{ title }}{% endblocktrans %} - - - -{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.subscribe_activate_url %} - -

Hola-

- -

Someone, hopefully you, asked to subscribe to {{ title }}, a luxagraf.net letter.

- -

To confirm your subscription, please follow this activation link: -

- -https://{{ domain }}{{ url }} -{% endblocktrans %} -

cheers
-Scott

- - diff --git a/design/templates/lttr/message/subscribe.txt b/design/templates/lttr/message/subscribe.txt deleted file mode 100644 index 2af5378..0000000 --- a/design/templates/lttr/message/subscribe.txt +++ /dev/null @@ -1,9 +0,0 @@ -Hola- - -Someone, hopefully you, asked to subscribe to {{ newsletter.title }}, a luxagraf.net letter. - -If you would like to confirm your subscription, please follow this activation link: -https://{{ site.domain }}{{ subscription.subscribe_activate_url }} - -cheers -Scott diff --git a/design/templates/lttr/message/subscribe_subject.txt b/design/templates/lttr/message/subscribe_subject.txt deleted file mode 100644 index f4660e0..0000000 --- a/design/templates/lttr/message/subscribe_subject.txt +++ /dev/null @@ -1 +0,0 @@ -Confirm Your Subscription to {{newsletter.title}} diff --git a/design/templates/lttr/message/unsubscribe.html b/design/templates/lttr/message/unsubscribe.html deleted file mode 100644 index 4b1a86b..0000000 --- a/design/templates/lttr/message/unsubscribe.html +++ /dev/null @@ -1,19 +0,0 @@ -{% load i18n %} - - - - - {% blocktrans with title=newsletter.title %}Unsubscription from {{ title }}{% endblocktrans %} - - -{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.unsubscribe_activate_url %}Dear {{ name }}, - -you, or someone in your name requested unsubscription from {{ title }}. - -If you would like to confirm your unsubscription, please follow this activation link: -http://{{ domain }}{{ url }} - -Kind regards,{% endblocktrans %} -{{ newsletter.sender }} - - diff --git a/design/templates/lttr/message/unsubscribe.txt b/design/templates/lttr/message/unsubscribe.txt deleted file mode 100644 index ab31fa5..0000000 --- a/design/templates/lttr/message/unsubscribe.txt +++ /dev/null @@ -1,9 +0,0 @@ -{% load i18n %}{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.unsubscribe_activate_url %}Dear {{ name }}, - -you, or someone in your name requested unsubscription from {{ title }}. - -If you would like to confirm your unsubscription, please follow this activation link: -http://{{ domain }}{{ url }} - -Kind regards,{% endblocktrans %} -{{ newsletter.sender }} diff --git a/design/templates/lttr/message/unsubscribe_subject.txt b/design/templates/lttr/message/unsubscribe_subject.txt deleted file mode 100644 index 49c68ef..0000000 --- a/design/templates/lttr/message/unsubscribe_subject.txt +++ /dev/null @@ -1 +0,0 @@ -{% load i18n %}{{ newsletter.title }} - {% trans "Confirm unsubscription" %} diff --git a/design/templates/lttr/subscribed.html b/design/templates/lttr/subscribed.html deleted file mode 100644 index 18ad151..0000000 --- a/design/templates/lttr/subscribed.html +++ /dev/null @@ -1,17 +0,0 @@ -{% extends 'base.html' %} -{% load typogrify_tags %} - -{% block pagetitle %}Luxagraf | Friends of a Long Year {% endblock %} -{% block metadescription %}An infrequesnt mailing list about travel, photography, tools, walking, the natural world and other ephemera.{% endblock %} - -{% block primary %} -
-
-

Thanks for joining.

-

Check your email for a link to confirm your subscription

-
-
-{%endblock%} diff --git a/design/templates/lttr/subscriber_form.html b/design/templates/lttr/subscriber_form.html deleted file mode 100644 index 83e1e28..0000000 --- a/design/templates/lttr/subscriber_form.html +++ /dev/null @@ -1,39 +0,0 @@ -{% extends 'base.html' %} -{% load typogrify_tags %} - -{% block pagetitle %}Luxagraf | Friends of a Long Year {% endblock %} -{% block metadescription %}An infrequesnt mailing list about travel, photography, tools, walking, the natural world and other ephemera.{% endblock %} - -{% block primary %} -
-
-

Join the Friends of a Long Year.

- - {% if field.errors %}{{field.errors}}{% endif %} - {%endfor%} -

Say what?

-

Friends of a Long Year is an infrequent mailing that will keep you up-to-date with luxagraf and offer some thoughts on topics like travel, photography, the natural world, tools, walking and other ephemera. It comes about twice a month, sometimes less, sometimes more. Unsubscribing is easy. It's all self-hosted, secure, and private.

-

The name comes from the great early 20th century explorer and desert rat, Mary Hunter Austin, whose collected essays, Lost Borders is dedicated to the "Friends of a Long Year". This somewhat inscrutable dedication grabbed me, and seemed like the perfect name for this mailing list.

-
-

Letters

- -
-{%endblock%} diff --git a/design/templates/newsletter/common.html b/design/templates/newsletter/common.html new file mode 100644 index 0000000..20ac822 --- /dev/null +++ b/design/templates/newsletter/common.html @@ -0,0 +1,15 @@ +{% load i18n %} + + + + + {% block title %}{% trans "Newsletter" %}{% endblock title %} + {% block header %} + {% endblock header %} + + + + {% block body %} + {% endblock body %} + + diff --git a/design/templates/newsletter/message/message.html b/design/templates/newsletter/message/message.html new file mode 100644 index 0000000..8929b67 --- /dev/null +++ b/design/templates/newsletter/message/message.html @@ -0,0 +1,32 @@ +{% load thumbnail i18n %} + + + + + {{ newsletter.title }}: {{ message.title }} + + +

{{ newsletter.title }}

+

{{ message.title }}

+ {% for article in message.articles.all %} +

{{ article.title }}

+ + {% thumbnail article.image "200x200" as image %} + + {% endthumbnail %} + +
{{ article.text|safe }}
+ + {% if article.url %} +
{% trans "Read more" %}
+ {% endif %} + {% endfor %} + + + + diff --git a/design/templates/newsletter/message/message.txt b/design/templates/newsletter/message/message.txt new file mode 100644 index 0000000..ffaab98 --- /dev/null +++ b/design/templates/newsletter/message/message.txt @@ -0,0 +1,15 @@ +{% load i18n %}++++++++++++++++++++ + +{{ newsletter.title }}: {{ message.title }} + +++++++++++++++++++++ + +{% for article in message.articles.all %} +{{ article.title }} +{{ article.text|striptags|safe }} + +{% endfor %} + +++++++++++++++++++++ + +{% trans "Unsubscribe:" %} http://{{ site }}{% url "newsletter_unsubscribe_request" newsletter.slug %} diff --git a/design/templates/newsletter/message/message_subject.txt b/design/templates/newsletter/message/message_subject.txt new file mode 100644 index 0000000..00aa450 --- /dev/null +++ b/design/templates/newsletter/message/message_subject.txt @@ -0,0 +1 @@ +{{ newsletter.title }} - {{ message.title }} \ No newline at end of file diff --git a/design/templates/newsletter/message/subscribe.html b/design/templates/newsletter/message/subscribe.html new file mode 100644 index 0000000..088a3d0 --- /dev/null +++ b/design/templates/newsletter/message/subscribe.html @@ -0,0 +1,20 @@ +{% load i18n %} + + + + + {% blocktrans with title=newsletter.title %}Subscription to {{ title }}{% endblocktrans %} + + + +{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.subscribe_activate_url %}Dear {{ name }}, + +you, or someone in your name requested a subscription to {{ title }}. + +If you would like to confirm your subscription, please follow this activation link: +http://{{ domain }}{{ url }} + +Kind regards,{% endblocktrans %} +{{ newsletter.sender }} + + diff --git a/design/templates/newsletter/message/subscribe.txt b/design/templates/newsletter/message/subscribe.txt new file mode 100644 index 0000000..1f334f2 --- /dev/null +++ b/design/templates/newsletter/message/subscribe.txt @@ -0,0 +1,9 @@ +{% load i18n %}{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.subscribe_activate_url %}Dear {{ name }}, + +you, or someone in your name requested a subscription to {{ title }}. + +If you would like to confirm your subscription, please follow this activation link: +http://{{ domain }}{{ url }} + +Kind regards,{% endblocktrans %} +{{ newsletter.sender }} diff --git a/design/templates/newsletter/message/subscribe_subject.txt b/design/templates/newsletter/message/subscribe_subject.txt new file mode 100644 index 0000000..f61b228 --- /dev/null +++ b/design/templates/newsletter/message/subscribe_subject.txt @@ -0,0 +1 @@ +{% load i18n %}{{ newsletter.title }} - {% trans "Confirm subscription" %} diff --git a/design/templates/newsletter/message/unsubscribe.html b/design/templates/newsletter/message/unsubscribe.html new file mode 100644 index 0000000..4b1a86b --- /dev/null +++ b/design/templates/newsletter/message/unsubscribe.html @@ -0,0 +1,19 @@ +{% load i18n %} + + + + + {% blocktrans with title=newsletter.title %}Unsubscription from {{ title }}{% endblocktrans %} + + +{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.unsubscribe_activate_url %}Dear {{ name }}, + +you, or someone in your name requested unsubscription from {{ title }}. + +If you would like to confirm your unsubscription, please follow this activation link: +http://{{ domain }}{{ url }} + +Kind regards,{% endblocktrans %} +{{ newsletter.sender }} + + diff --git a/design/templates/newsletter/message/unsubscribe.txt b/design/templates/newsletter/message/unsubscribe.txt new file mode 100644 index 0000000..ab31fa5 --- /dev/null +++ b/design/templates/newsletter/message/unsubscribe.txt @@ -0,0 +1,9 @@ +{% load i18n %}{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.unsubscribe_activate_url %}Dear {{ name }}, + +you, or someone in your name requested unsubscription from {{ title }}. + +If you would like to confirm your unsubscription, please follow this activation link: +http://{{ domain }}{{ url }} + +Kind regards,{% endblocktrans %} +{{ newsletter.sender }} diff --git a/design/templates/newsletter/message/unsubscribe_subject.txt b/design/templates/newsletter/message/unsubscribe_subject.txt new file mode 100644 index 0000000..49c68ef --- /dev/null +++ b/design/templates/newsletter/message/unsubscribe_subject.txt @@ -0,0 +1 @@ +{% load i18n %}{{ newsletter.title }} - {% trans "Confirm unsubscription" %} diff --git a/design/templates/newsletter/message/update.html b/design/templates/newsletter/message/update.html new file mode 100644 index 0000000..e46235d --- /dev/null +++ b/design/templates/newsletter/message/update.html @@ -0,0 +1,19 @@ +{% load i18n %} + + + + + {% blocktrans with title=newsletter.title %}Update of subscription to {{ title }}{% endblocktrans %} + + +{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.update_activate_url %}Dear {{ name }}, + +you, or someone in your name requested updating your personal information for {{ title }}. + +To make changes to your information in our database, please follow this activation link: +http://{{ domain }}{{ url }} + +Kind regards,{% endblocktrans %} +{{ newsletter.sender }} + + diff --git a/design/templates/newsletter/message/update.txt b/design/templates/newsletter/message/update.txt new file mode 100644 index 0000000..aa50b19 --- /dev/null +++ b/design/templates/newsletter/message/update.txt @@ -0,0 +1,9 @@ +{% load i18n %}{% blocktrans with name=subscription.name title=newsletter.title domain=site.domain url=subscription.update_activate_url %}Dear {{ name }}, + +you, or someone in your name requested updating your personal information for {{ title }}. + +To make changes to your information in our database, please follow this activation link: +http://{{ domain }}{{ url }} + +Kind regards,{% endblocktrans %} +{{ newsletter.sender }} diff --git a/design/templates/newsletter/message/update_subject.txt b/design/templates/newsletter/message/update_subject.txt new file mode 100644 index 0000000..217d5f6 --- /dev/null +++ b/design/templates/newsletter/message/update_subject.txt @@ -0,0 +1 @@ +{% load i18n %}{{ newsletter.title }} - {% trans "Update information" %} diff --git a/design/templates/newsletter/newsletter_detail.html b/design/templates/newsletter/newsletter_detail.html new file mode 100644 index 0000000..fe23a1f --- /dev/null +++ b/design/templates/newsletter/newsletter_detail.html @@ -0,0 +1,30 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter detail" %}{% endblock title %} + +{% block body %} + + + + + + + + {% if not user.is_authenticated %} + + + + {% endif %} + + + + + + + + + +
{% trans "Newsletter" %} {{ object.title }}
{% trans "Subscribe" %}
{% trans "Update" %}
{% trans "Unsubscribe" %}
{% trans "Archive" %}
{% trans "Back to list" %}
+{% endblock body %} diff --git a/design/templates/newsletter/newsletter_list.html b/design/templates/newsletter/newsletter_list.html new file mode 100644 index 0000000..2b48fa2 --- /dev/null +++ b/design/templates/newsletter/newsletter_list.html @@ -0,0 +1,41 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter list" %}{% endblock title %} + +{% block body %} +{% if user.is_authenticated %} +
+ {% csrf_token %} + {{ formset.management_form }} + + + + {% if user %} + + {% endif %} + + {% for form in formset.forms %} + + + + + {% endfor %} +
{% trans "Newsletter" %}{% trans "Subscribe" %}
{{ form.id }}{{ form.newsletter }} +{{ form.instance.newsletter.title }}{{ form.subscribed }}
+

+
+{% else %} + + + + + {% for newsletter in object_list %} + + + + {% endfor %} +
{% trans "Newsletter" %}
{{ newsletter.title }}
+{% endif %} +{% endblock body %} diff --git a/design/templates/newsletter/submission_archive.html b/design/templates/newsletter/submission_archive.html new file mode 100644 index 0000000..771b995 --- /dev/null +++ b/design/templates/newsletter/submission_archive.html @@ -0,0 +1,21 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter archive" %}{% endblock title %} + +{% block body %} + + + + + {% for submission in latest %} + + + + {% endfor %} + + + +
{% trans "Newsletter archive" %} {{ newsletter.title }}
{{ submission }}
{% trans "Back to list" %}
+{% endblock body %} diff --git a/design/templates/newsletter/subscription_activate.html b/design/templates/newsletter/subscription_activate.html new file mode 100644 index 0000000..558013a --- /dev/null +++ b/design/templates/newsletter/subscription_activate.html @@ -0,0 +1,15 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter" %} {{ newsletter.title }} {{ action }} {% trans "activate" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter" %} {{ newsletter.title }} {{ action }} {% trans "activate" %}

+ +
+ {% csrf_token %} + {{ form.as_p }} +

+
+{% endblock body %} diff --git a/design/templates/newsletter/subscription_subscribe.html b/design/templates/newsletter/subscription_subscribe.html new file mode 100644 index 0000000..a2716a1 --- /dev/null +++ b/design/templates/newsletter/subscription_subscribe.html @@ -0,0 +1,25 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter subscribe" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter subscribe" %} {{ newsletter.title }}

+ + {% if error %} +

{% trans "Due to a technical error we were not able to submit your confirmation email. This could be because your email address is invalid." %}

+ + {% comment %} Replace the the following dummy with a valid email address and remove this comment. + +

{% trans "If the error persists, please don't hesitate to contact us at the following email address:" %} newsletter@luxagraf.net

+ + {% endcomment %} + {% else %} +
+ {% csrf_token %} + {{ form.as_p }} +

+
+ {% endif %} +{% endblock body %} diff --git a/design/templates/newsletter/subscription_subscribe_activated.html b/design/templates/newsletter/subscription_subscribe_activated.html new file mode 100644 index 0000000..c8519d7 --- /dev/null +++ b/design/templates/newsletter/subscription_subscribe_activated.html @@ -0,0 +1,11 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter" %} {{ newsletter.title }} {{ action }} {% trans "activate" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter" %} {{ newsletter.title }} {{ action }} {% trans "activate" %}

+ +

{% trans "Your subscription has successfully been activated." %}

+{% endblock body %} diff --git a/design/templates/newsletter/subscription_subscribe_email_sent.html b/design/templates/newsletter/subscription_subscribe_email_sent.html new file mode 100644 index 0000000..79eea11 --- /dev/null +++ b/design/templates/newsletter/subscription_subscribe_email_sent.html @@ -0,0 +1,11 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter subscribe" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter subscribe" %} {{ newsletter.title }}

+ +

{% trans "Your subscription request was successfully received and an activation email has been sent to you. In that email you will find a link which you need to follow in order to activate your subscription." %}

+{% endblock body %} diff --git a/design/templates/newsletter/subscription_subscribe_user.html b/design/templates/newsletter/subscription_subscribe_user.html new file mode 100644 index 0000000..f0bbf3d --- /dev/null +++ b/design/templates/newsletter/subscription_subscribe_user.html @@ -0,0 +1,25 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter subscribe" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter subscribe" %} {{ newsletter.title }}

+ +

Welcome, {{ user }}!

+ +{% if messages %} + +{% else %} +{% trans "Do you want to subscribe to this newsletter?" %} +
+ {% csrf_token %} +

+
+{% endif %} +{% endblock body %} diff --git a/design/templates/newsletter/subscription_unsubscribe.html b/design/templates/newsletter/subscription_unsubscribe.html new file mode 100644 index 0000000..022ba4b --- /dev/null +++ b/design/templates/newsletter/subscription_unsubscribe.html @@ -0,0 +1,25 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter unsubscribe" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter unsubscribe" %} {{ newsletter.title }}

+ + {% if error %} +

{% trans "Due to a technical error we were not able to submit your confirmation email. This could be because your email address is invalid." %}

+ + {% comment %} Replace the the following dummy with a valid email address and remove this comment. + +

{% trans "If the error persists, please don't hesitate to contact us at the following email address:" %} info@foobar.com

+ + {% endcomment %} + {% else %} +
+ {% csrf_token %} + {{ form.as_p }} +

+
+ {% endif %} +{% endblock body %} diff --git a/design/templates/newsletter/subscription_unsubscribe_activated.html b/design/templates/newsletter/subscription_unsubscribe_activated.html new file mode 100644 index 0000000..65628c5 --- /dev/null +++ b/design/templates/newsletter/subscription_unsubscribe_activated.html @@ -0,0 +1,11 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter" %} {{ newsletter.title }} {{ action }} {% trans "activate" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter" %} {{ newsletter.title }} {{ action }} {% trans "activate" %}

+ +

{% trans "You have successfully been unsubscribed." %}

+{% endblock body %} diff --git a/design/templates/newsletter/subscription_unsubscribe_email_sent.html b/design/templates/newsletter/subscription_unsubscribe_email_sent.html new file mode 100644 index 0000000..19d00b8 --- /dev/null +++ b/design/templates/newsletter/subscription_unsubscribe_email_sent.html @@ -0,0 +1,11 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter unsubscribe" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter unsubscribe" %} {{ newsletter.title }}

+ +

{% trans "Your unsubscription request has successfully been received. An email has been sent to you with a link you need to follow in order to confirm your unsubscription." %}

+{% endblock body %} diff --git a/design/templates/newsletter/subscription_unsubscribe_user.html b/design/templates/newsletter/subscription_unsubscribe_user.html new file mode 100644 index 0000000..5bc81dc --- /dev/null +++ b/design/templates/newsletter/subscription_unsubscribe_user.html @@ -0,0 +1,27 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter unsubscribe" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter unsubscribe" %} {{ newsletter.title }}

+ +

Welcome, {{ user }}!

+ +{% if messages %} + +{% else %} + +{% trans "Do you want to unsubscribe from this newsletter?" %} +
+ {% csrf_token %} +

+
+{% endif %} + +{% endblock body %} diff --git a/design/templates/newsletter/subscription_update.html b/design/templates/newsletter/subscription_update.html new file mode 100644 index 0000000..fe83797 --- /dev/null +++ b/design/templates/newsletter/subscription_update.html @@ -0,0 +1,25 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter update" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter update" %} {{ newsletter.title }}

+ + {% if error %} +

{% trans "Due to a technical error we were not able to submit your confirmation email. This could be because your email address is invalid." %}

+ + {% comment %} Replace the the following dummy with a valid email address and remove this comment. + +

{% trans "If the error persists, please don't hesitate to contact us at the following email address:" %} info@foobar.com

+ + {% endcomment %} + {% else %} +
+ {% csrf_token %} + {{ form.as_p }} +

+
+ {% endif %} +{% endblock body %} diff --git a/design/templates/newsletter/subscription_update_activated.html b/design/templates/newsletter/subscription_update_activated.html new file mode 100644 index 0000000..65b0298 --- /dev/null +++ b/design/templates/newsletter/subscription_update_activated.html @@ -0,0 +1,11 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter" %} {{ newsletter.title }} {{ action }} {% trans "activate" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter" %} {{ newsletter.title }} {{ action }} {% trans "activate" %}

+ +

{% trans "Your subscription has successfully been updated." %}

+{% endblock body %} diff --git a/design/templates/newsletter/subscription_update_email_sent.html b/design/templates/newsletter/subscription_update_email_sent.html new file mode 100644 index 0000000..b740d18 --- /dev/null +++ b/design/templates/newsletter/subscription_update_email_sent.html @@ -0,0 +1,11 @@ +{% extends "newsletter/common.html" %} + +{% load i18n %} + +{% block title %}{% trans "Newsletter update" %}{% endblock title %} + +{% block body %} +

{% trans "Newsletter update" %} {{ newsletter.title }}

+ +

{% trans "Your update request was successfully received and an activation email has been sent to you. In that email you will find a link which you need to follow in order to update your subscription." %}

+{% endblock body %} -- cgit v1.2.3