]> git.openstreetmap.org Git - osqa.git/commitdiff
Merge of jambazov branch to trunk. Adds CC license and failed sign-in referrer bug...
authorclaycarpenter <claycarpenter@0cfe37f9-358a-4d5e-be75-b63607b5c754>
Wed, 2 Feb 2011 23:34:44 +0000 (23:34 +0000)
committerclaycarpenter <claycarpenter@0cfe37f9-358a-4d5e-be75-b63607b5c754>
Wed, 2 Feb 2011 23:34:44 +0000 (23:34 +0000)
git-svn-id: http://svn.osqa.net/svnroot/osqa/trunk@735 0cfe37f9-358a-4d5e-be75-b63607b5c754

forum/skins/default/media/images/by-sa-88x31.png [new file with mode: 0644]
forum/skins/default/templates/footer.html
forum/views/auth.py

diff --git a/forum/skins/default/media/images/by-sa-88x31.png b/forum/skins/default/media/images/by-sa-88x31.png
new file mode 100644 (file)
index 0000000..f0a944e
Binary files /dev/null and b/forum/skins/default/media/images/by-sa-88x31.png differ
index e9c9b516bea6309ef8c40052dab3f0ed8c462e1d..38a980f48c0d0fa89cc036b5acb9d78e59fb8220 100644 (file)
@@ -12,8 +12,8 @@
   </p>
 </div>
  <div id="licenseLogo">
-  <a href="http://creativecommons.org/licenses/by/3.0/">
-            <img src="{% media  "/media/images/cc-wiki.png" %}" title="Creative Commons: Attribution - Share Alike" alt="cc-wiki" width="50" height="68" />
+  <a rel="license" href="http://creativecommons.org/licenses/by-sa/3.0/">
+            <img src="{% media  "/media/images/by-sa-88x31.png" %}"" title="Creative Commons: Attribution - Share Alike" alt="cc-by-sa" width="88" height="31" />
   </a>
  </div>
 
index ad4785dcef53e6a273702ea9b7d8abe78ddaff86..3281fe44eebc22c8a38968d0ea352d54834a4440 100644 (file)
@@ -30,10 +30,12 @@ from forum.models import AuthKeyUserAssociation, ValidationHash, Question, Answe
 from forum.actions import UserJoinsAction
 
 def signin_page(request):
-    request.session['on_signin_url'] = request.META.get('HTTP_REFERER', '/')
-    
-    if reverse('auth_signin') == request.session['on_signin_url'].replace(settings.APP_URL, ''):
-        request.session['on_signin_url'] = reverse('index')
+    referer = request.META.get('HTTP_REFERER', '/')
+
+    # If the referer is equal to the sign up page, e. g. if the previous login attempt was not successful we do not
+    # change the sign in URL. The user should go to the same page.
+    if not referer.replace(settings.APP_URL, '') == reverse('auth_signin'):
+        request.session['on_signin_url'] = referer
 
     all_providers = [provider.context for provider in AUTH_PROVIDERS.values()]
 
@@ -277,16 +279,15 @@ def send_validation_email(request):
     if not request.user.is_authenticated():
         return HttpResponseUnauthorized(request)
     else:
+        # We check if there are some old validation hashes. If there are -- we delete them.
         try:
             hash = ValidationHash.objects.get(user=request.user, type='email')
             hash.delete()
-            
-            # If we were able to get a previous validation hash we should raise an
-            # Exception immediately. Otherwise new validation hash will not be created
-            # and users will not receive the desired e-mail vaidation link.
-            raise Exception("Validation has already been sent")
         except:
-            hash = ValidationHash.objects.create_new(request.user, 'email', [request.user.email])
+            pass
+
+        # We don't care if there are previous cashes in the database... In every case we have to create a new one
+        hash = ValidationHash.objects.create_new(request.user, 'email', [request.user.email])
 
         send_template_email([request.user], "auth/mail_validation.html", {'validation_code': hash})
         request.user.message_set.create(message=_("A message with an email validation link was just sent to your address."))
@@ -383,7 +384,7 @@ def login_and_forward(request, user, forward=None, message=None):
 
     if not forward:
         forward = request.session.get('on_signin_url', reverse('index'))
-        
+
     pending_data = request.session.get('pending_submission_data', None)
 
     if pending_data and (user.email_isvalid or pending_data['type'] not in settings.REQUIRE_EMAIL_VALIDATION_TO):