diff apps/snippet/views.py @ 190:a4f88ac85837

Changes: Now guest users cannot see revision history and they also cannot see snippets posted by registered users. To see snippets posted by registered users, one has to login.
author ahsanalishahid <ahsan.ali.shahid@gmail.com>
date Thu, 20 Jun 2013 17:17:16 +0500
parents c7be7def8b57
children 499e5f47f278
line wrap: on
line diff
--- a/apps/snippet/views.py	Tue Jun 18 19:59:40 2013 +0500
+++ b/apps/snippet/views.py	Thu Jun 20 17:17:16 2013 +0500
@@ -35,6 +35,7 @@
         if request.user.is_authenticated():
             snippet.author = request.user
 
+
         snippet_form = SnippetForm(request.POST,
                                    request.FILES,
                                    request=request,
@@ -51,17 +52,29 @@
     context = {
         'snippet_form': snippet_form,
         'recent_snippets' : recent,
+        'show': True, # always true b/c guest posting is allowed
     }
 
     return render(request, 'snippet/snippet_new.djhtml', context)
 
 
-def snippet_details(request, snippet_id,
-    template_name='snippet/snippet_details.djhtml', is_raw=False):
+def snippet_details(request, snippet_id,template_name='snippet/snippet_details.djhtml', is_raw=False):
+    
     snippet = get_object_or_404(Snippet, secret_id=snippet_id)
     snippet.num_views += 1
     snippet.save()
 
+
+    if request.user.is_authenticated() and hasattr(snippet,'author'):
+        show = True
+    elif ( request.user.is_anonymous() ) and (hasattr(snippet,'author') ):
+        if snippet.author == None:
+            show = True
+        else:
+            show = False
+    else:
+        show = False
+
     tree = snippet.get_root()
     tree = tree.get_descendants(include_self=True)
 
@@ -74,6 +87,7 @@
         'content': snippet.content,
         'lexer': snippet.lexer,
         'title': reply_title,
+        
     }
 
     if request.method == "POST":
@@ -102,6 +116,7 @@
         'pygments_styles': PygmentsStyle.objects.all(),
         'default_style': default_pygments_style,
         'no_descendants': len(tree) == 1,
+        'show': show,
     }
 
     response = render(request, template_name, context)