+
+
+def registration(request, validation_value) :
+ error_message = ''
+ registration_message = ''
+ try :
+ subscriber = Subscriber.objects.get(password = validation_value)
+ subscriber.is_validated = True
+
+ if subscriber.is_registered is False :
+ params = urllib.urlencode({'email' : subscriber.email, 'fullname' : '', 'pw' : subscriber.password, 'pw-conf' : subscriber.password, 'digest' : '0'})
+ response = urllib.urlopen(settings.NEWSLETTER_SUBSCRIPTION_URL, params)
+ if response.getcode() == 200 :
+ subscriber.is_registered = True
+ registration_message = _("You subscribed to our newsletter.")
+ else :
+ subscriber.is_registered = None # TODO : rajouter une méthode niveau table pour gérer les enregistrements qui échouent (pareil pour la souscription proprement dite).
+ elif subscriber.is_registered :
+ error_message = _('You already subscribed to our newsletter.')
+ else :
+ error_message = _('Your subscription is pending.')
+
+ subscriber.save()
+
+ return render(request, 'registration.html', {'user_exist' : True, 'error_message' : error_message, 'registration_message' : registration_message })
+
+ except Subscriber.DoesNotExist :
+ error_message = _('Forbidden page.')
+ return render(request, 'registration.html', {'user_exist' : False, 'error_message' : error_message})
+
+
+
+