Wrote blogpost_create view.
authorAditi <aditi.iitr@gmail.com>
Fri, 19 Jul 2013 13:59:13 +0000 (19:29 +0530)
committerAditi <aditi.iitr@gmail.com>
Fri, 19 Jul 2013 13:59:13 +0000 (19:29 +0530)
mediagoblin/media_types/blog/views.py

index 35ed5809a245d8aac48076e3a23308a3656c7bd0..885594b1b7cb8344467c061a12784263a2c97550 100644 (file)
@@ -41,6 +41,8 @@ from mediagoblin.tools.url import slugify
 from mediagoblin.db.util import check_media_slug_used, check_collection_slug_used
 from mediagoblin.db.models import User, Collection, MediaEntry
 
+from mediagoblin.notifications import add_comment_subscription
+
 
 @require_active_login
 def blog_edit(request):
@@ -99,9 +101,50 @@ def blog_edit(request):
                      'user': request.user,
                      'app_config': mg_globals.app_config})
         else:
-            pass            
-        
+            if request.method == 'POST' and form.validate():
+                       blog.title = unicode(form.title.data)
+                       blog.description = unicode(form.description.data)
+                       blog.author = request.user.id
+                       blog.generate_slug()
+                       
+                       blog.save()
+                       add_message(request, SUCCESS, "Your blog is updated.")
+            return redirect(request, "mediagoblin.user_pages.user_home",
+                        user=request.user.username)            
         
-            
+@require_active_login        
+def blogpost_create(request):
+       form = blog_forms.BlogPostEditForm(request.form, license=request.user.license_preference)
+       
+       if request.method == 'POST' and form.validate():
+               blogpost = MediaEntry()
+               blogpost.media_type = 'blog_post'
+               blogpost.title = unicode(form.title.data)
+               blogpost.description = unicode(form.description.data)
+               blogpost.tags =  convert_to_tag_list_of_dicts(form.tags.data)
+               blogpost.license = unicode(form.license.data) or None
+               blogpost.uploader = request.user.id
+               #blogpost.state = 'processed'
+               
+               blogpost.generate_slug()
+               
+               blogpost.save()
+       
+               add_message(request, SUCCESS, _('Woohoo! Submitted!'))
+               add_comment_subscription(request.user, blogpost)
+               return redirect(request, "mediagoblin.user_pages.user_home", 
+                       user=request.user.username)
+               
+       return render_to_response(
+        request,
+        'mediagoblin/blog/blog_post_edit_create.html',
+        {'form': form,
+        'app_config': mg_globals.app_config,
+        'user': request.user.username})
+       
+               
+               
+       
+