notification for new publications
[redakcja.git] / apps / organizations / forms.py
index 63f9c02..5580766 100644 (file)
@@ -1,6 +1,15 @@
+# -*- coding: utf-8 -*-
+#
+# This file is part of MIL/PEER, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
 from django import forms
+from django.contrib.sites.models import Site
+
+from redakcja.utlis import send_notify_email
 from .models import Organization, UserCard, countries
 
+
 class OrganizationForm(forms.ModelForm):
     cts = countries
 
@@ -8,6 +17,18 @@ class OrganizationForm(forms.ModelForm):
         model = Organization
         exclude = ['_html']
 
+    def save(self, commit=True):
+        organization = super(OrganizationForm, self).save(commit=commit)
+        site = Site.objects.get_current()
+        send_notify_email(
+            'New organization in MIL/PEER',
+            '''New organization in MIL/PEER: %s. View their profile: https://%s%s.
+
+--
+MIL/PEER team.''' % (organization.name, site.domain, organization.get_absolute_url()))
+        return organization
+
+
 class UserCardForm(forms.ModelForm):
     cts = countries
 
@@ -24,11 +45,10 @@ class UserCardForm(forms.ModelForm):
                 'first_name': kwargs['instance'].user.first_name,
                 'last_name': kwargs['instance'].user.last_name,
             }
-        return super(UserCardForm, self).__init__(*args, **kwargs)
+        super(UserCardForm, self).__init__(*args, **kwargs)
 
     def save(self, *args, **kwargs):
         self.instance.user.first_name = self.cleaned_data.get('first_name', '')
         self.instance.user.last_name = self.cleaned_data.get('last_name', '')
         self.instance.user.save()
         return super(UserCardForm, self).save(*args, **kwargs)
-