def new_post(request): if request.method == 'POST': validate_blog = BlogpostForm(request.POST) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.user = request.user blog_post.meta_description = request.POST['meta_description'] blog_post.status = 'D' if request.POST.get('status') == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'P' elif request.POST.get('status') == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'T' blog_post.save() if request.POST.get('tags', ''): tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) sg = sendgrid.SendGridClient(settings.SG_USER, settings.SG_PWD) sending_msg = sendgrid.Mail() sending_msg.set_subject("New blog post has been created") blog_url = 'https://www.micropyramid.com/blog/view-post/' + str( blog_post.slug) + '/' message = '<p>New blog post has been created by ' + str( request.user) + ' with the name ' + str( blog_post.title) + ' in the category ' message += str( blog_post.category.name ) + '.</p>' + '<p>Please <a href="' + blog_url + '">click here</a> to view the blog post in the site.</p>' sending_msg.set_html(message) sending_msg.set_text('New blog post has been created') sending_msg.set_from(request.user.email) sending_msg.add_to( [user.email for user in User.objects.filter(is_admin=True)]) sg.send(sending_msg) data = {'error': False, 'response': 'Blog Post created'} else: data = {'error': True, 'response': validate_blog.errors} return HttpResponse(json.dumps(data), content_type='application/json; charset=utf-8') categories = Category.objects.all() c = {} c.update(csrf(request)) return render(request, 'admin/blog/blog-new.html', { 'categories': categories, 'csrf_token': c['csrf_token'] })
def new_post(request): if request.method == 'POST': validate_blog = BlogpostForm(request.POST) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.user = request.user blog_post.status = 'D' if request.POST.get('status') == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'P' elif request.POST.get('status') == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'T' blog_post.save() if request.POST.get('tags', ''): tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) data = {'error': False, 'response': 'Blog Post created'} else: data = {'error': True, 'response': validate_blog.errors} return HttpResponse(json.dumps(data)) categories = Category.objects.all() c = {} c.update(csrf(request)) return render(request, 'admin/blog/blog-new.html', {'categories': categories, 'csrf_token': c['csrf_token']})
def new_post(request): if request.method == 'POST': validate_blog = BlogpostForm(request.POST) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.user = request.user blog_post.meta_description = request.POST['meta_description'] blog_post.status = 'D' if request.POST.get('status') == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'P' blog_post.published_on = datetime.datetime.now().date() elif request.POST.get('status') == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'T' blog_post.save() if request.user.is_superuser and request.POST.get('slug'): blog_post.slug = request.POST.get('slug') else: tempslug = slugify(blog_post.title) blog_post.save() if request.POST.get('tags', ''): tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) sg = sendgrid.SendGridClient(settings.SG_USER, settings.SG_PWD) sending_msg = sendgrid.Mail() sending_msg.set_subject("New blog post has been created") blog_url = 'https://www.micropyramid.com/blog/' + str(blog_post.slug) + '/' message = '<p>New blog post has been created by ' + str(request.user) + ' with the name ' + str(blog_post.title) + ' in the category ' message += str(blog_post.category.name) + '.</p>' + '<p>Please <a href="' + blog_url + '">click here</a> to view the blog post in the site.</p>' sending_msg.set_html(message) sending_msg.set_text('New blog post has been created') sending_msg.set_from(request.user.email) sending_msg.add_to([user.email for user in User.objects.filter(is_admin=True)]) sg.send(sending_msg) cache._cache.flush_all() data = {'error': False, 'response': 'Blog Post created'} else: data = {'error': True, 'response': validate_blog.errors} return HttpResponse(json.dumps(data), content_type='application/json; charset=utf-8') categories = Category.objects.all() c = {} c.update(csrf(request)) return render(request, 'admin/blog/blog-new.html', {'categories': categories, 'csrf_token': c['csrf_token']})
def test_blogpostform(self): form = BlogpostForm( data={ 'title': 'python introduction', 'content': 'This is content', 'category': self.category.id, 'status': 'D', 'meta_description': 'meta', 'is_superuser': '******' }) self.assertTrue(form.is_valid())
def test_blogpostform(self): form = BlogpostForm( data={ 'title': 'python introduction', 'content': 'This is content', 'category': self.category.id, 'status': 'D', 'meta_description': 'meta', 'is_superuser': '******', 'excerpt': "Description" }) self.assertTrue(form.is_valid())
def test_blogpostform(self): form = BlogpostForm( data={ 'title': 'python introduction', 'content': 'This is content', 'category': self.category.id, 'status': 'D' }) self.assertTrue(form.is_valid())
def edit_blog_post(request, blog_slug): if request.method == 'POST': current_post = get_object_or_404(Post, slug=blog_slug) validate_blog = BlogpostForm(request.POST, instance=current_post) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.meta_description = request.POST['meta_description'] blog_post.status = 'D' if request.POST.get('status') == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'P' elif request.POST.get('status') == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'T' if request.user.is_superuser and request.POST.get('slug'): blog_post.slug = request.POST.get('slug') else: tempslug = slugify(blog_post.title) blog_post.save() blog_post.tags.clear() if request.POST.get('tags', ''): for tag in blog_post.tags.all(): blog_post.tags.remove(tag) tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) cache._cache.flush_all() data = {'error': False, 'response': 'Blog Post edited'} else: data = {'error': True, 'response': validate_blog.errors} return HttpResponse(json.dumps(data), content_type='application/json; charset=utf-8') blog_post = get_object_or_404(Post, slug=blog_slug) categories = Category.objects.all() if request.user.is_superuser or blog_post.user == request.user: c = {} c.update(csrf(request)) return render(request, 'admin/blog/blog-edit.html', {'blog_post': blog_post, 'categories': categories, 'csrf_token': c['csrf_token']}) else: return render_to_response('admin/accessdenied.html')
def edit_blog_post(request, blog_slug): if request.method == 'POST': current_post = get_object_or_404(Post, slug=blog_slug) validate_blog = BlogpostForm(request.POST, instance=current_post) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.meta_description = request.POST['meta_description'] blog_post.status = 'D' if request.POST.get('status') == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'P' elif request.POST.get('status') == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'T' blog_post.save() blog_post.tags.clear() if request.POST.get('tags', ''): for tag in blog_post.tags.all(): blog_post.tags.remove(tag) tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) data = {'error': False, 'response': 'Blog Post edited'} else: data = {'error': True, 'response': validate_blog.errors} return HttpResponse(json.dumps(data), content_type='application/json; charset=utf-8') blog_post = get_object_or_404(Post, slug=blog_slug) categories = Category.objects.all() if request.user.is_superuser or blog_post.user == request.user: c = {} c.update(csrf(request)) return render( request, 'admin/blog/blog-edit.html', { 'blog_post': blog_post, 'categories': categories, 'csrf_token': c['csrf_token'] }) else: return render_to_response('admin/accessdenied.html')
def edit_blog_post(request,blog_slug): if request.method == 'POST': current_post = Post.objects.get(slug = blog_slug) print len(request.POST.get('content')) validate_blog = BlogpostForm(request.POST,instance=current_post) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.user=request.user if request.POST.get('status'): blog_post.status='D' else: blog_post.status='P' if request.POST.get('featured_post',''): blog_post.featured_post==request.POST.get('featured_post') if 'featuredimage' in request.FILES: if current_post.featured_image: os.remove(BLOG_IMAGES + current_post.featured_image) blog_post.featured_image=store_image(request.FILES.get('featuredimage'),BLOG_IMAGES) blog_post.save() if request.POST.get('tags',''): for tag in blog_post.tags.all(): blog_post.tags.remove(tag) tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) data = {'error':False,'response':'Blog Post created'} else: data = {'error':True,'response':validate_blog.errors} return HttpResponse(json.dumps(data)) blog_post = Post.objects.get(slug=blog_slug) categories = Category.objects.all() c = {} c.update(csrf(request)) return render_to_response('admin/blog/blog-edit.html',{'blog_post':blog_post,'categories':categories,'csrf_token':c['csrf_token']})
def edit_blog_post(request, blog_slug): if request.method == "POST": current_post = get_object_or_404(Post, slug=blog_slug) validate_blog = BlogpostForm(request.POST, instance=current_post) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.status = "D" if request.POST.get("status") == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = "P" elif request.POST.get("status") == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = "T" blog_post.save() blog_post.tags.clear() if request.POST.get("tags", ""): for tag in blog_post.tags.all(): blog_post.tags.remove(tag) tags = request.POST.get("tags") tags = tags.split(",") for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) data = {"error": False, "response": "Blog Post edited"} else: data = {"error": True, "response": validate_blog.errors} return HttpResponse(json.dumps(data), content_type="application/json; charset=utf-8") blog_post = get_object_or_404(Post, slug=blog_slug) categories = Category.objects.all() if request.user.is_superuser or blog_post.user == request.user: c = {} c.update(csrf(request)) return render( request, "admin/blog/blog-edit.html", {"blog_post": blog_post, "categories": categories, "csrf_token": c["csrf_token"]}, ) else: return render_to_response("admin/accessdenied.html")
def edit_blog_post(request, blog_slug): if request.method == 'POST': current_post = Post.objects.get(slug=blog_slug) validate_blog = BlogpostForm(request.POST, instance=current_post) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.status = 'D' if request.POST.get('status') == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'P' elif request.POST.get('status') == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'T' blog_post.save() if request.POST.get('tags', ''): for tag in blog_post.tags.all(): blog_post.tags.remove(tag) tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) data = {'error': False, 'response': 'Blog Post edited'} else: data = {'error': True, 'response': validate_blog.errors} return HttpResponse(json.dumps(data)) blog_post = Post.objects.get(slug=blog_slug) categories = Category.objects.all() if request.user.is_superuser or blog_post.user == request.user: c = {} c.update(csrf(request)) return render(request, 'admin/blog/blog-edit.html', {'blog_post': blog_post, 'categories': categories, 'csrf_token': c['csrf_token']}) else: return render_to_response('admin/accessdenied.html')
def admin_new_post(request): if request.method == 'POST': validate_blog = BlogpostForm(request.POST) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.user=request.user if request.POST.get('status',''): blog_post.status='D' else: blog_post.status='P' if request.POST.get('featured_post',''): blog_post.featured_post=request.POST.get('featured_post') if 'featuredimage' in request.FILES: blog_post.featured_image=store_image(request.FILES.get('featuredimage'),BLOG_IMAGES) else: blog_post.featured_image='' blog_post.save() if request.POST.get('tags',''): tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) data = {'error':False,'response':'Blog Post created'} else: data = {'error':True,'response':validate_blog.errors} return HttpResponse(json.dumps(data)) categories = Category.objects.all() c = {} c.update(csrf(request)) return render_to_response('admin/blog/blog-new.html',{'categories':categories,'csrf_token':c['csrf_token']})
def test_blogpostform(self): form = BlogpostForm(data={'title':'python introduction','content':'This is content','category':self.c.id,'status':'D'}) self.assertTrue(form.is_valid())
def edit_blog_post(request, blog_slug): blog_post = get_object_or_404(Post, slugs__slug=blog_slug) active_slug = blog_post.slug old_blog_status = blog_post.status if active_slug != blog_slug: return redirect(reverse('micro_blog:edit_blog_post', kwargs={'blog_slug': active_slug}) ) if not blog_post.is_editable_by(request.user): return render_to_response('admin/accessdenied.html') BlogSlugFormSet = inlineformset_factory(Post, Post_Slugs, can_delete=True, extra=3, fields=('slug', 'is_active'), formset=CustomBlogSlugInlineFormSet ) if request.method == 'POST': blog_form = BlogpostForm(request.POST, instance=blog_post) blogslugs_formset = BlogSlugFormSet(request.POST, instance=blog_post) if blog_form.is_valid() and blogslugs_formset.is_valid(): blog_post = blog_form.save(commit=False) if blogslugs_formset.is_valid(): blog_post.status = old_blog_status blog_post.meta_description = request.POST.get( 'meta_description') if request.POST.get('status') == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'P' elif request.POST.get('status') == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'T' elif (request.POST.get('status') == "R" or request.POST.get('status') == "D" ): blog_post.status = request.POST.get('status') else: pass blog_post.save() blogslugs_formset.save() # If no slugs are specified, then create one using title. if not blog_post.slugs.all(): blog_post.create_blog_slug([slugify(blog_post.title)]) blog_post.check_and_activate_slug() blog_post.tags.clear() if request.POST.get('tags', ''): for tag in blog_post.tags.all(): blog_post.tags.remove(tag) tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) cache._cache.flush_all() return redirect(reverse('micro_blog:admin_post_list')) else: blog_form = BlogpostForm(instance=blog_post) blogslugs_formset = BlogSlugFormSet(instance=blog_post) categories = Category.objects.all() c = {} c.update(csrf(request)) return render(request, 'admin/blog/blog-edit.html', {'blog_post': blog_post, 'categories': categories, 'csrf_token': c['csrf_token'], 'blogslugs_formset': blogslugs_formset, 'blog_form': blog_form} )
def new_post(request): BlogSlugFormSet = inlineformset_factory(Post, Post_Slugs, can_delete=True, extra=3, fields=('slug', 'is_active'), formset=CustomBlogSlugInlineFormSet ) if request.method == 'POST': blog_form = BlogpostForm(request.POST) blogslugs_formset = BlogSlugFormSet(request.POST) if blog_form.is_valid() and blogslugs_formset.is_valid(): blog_post = blog_form.save(commit=False) blogslugs_formset = BlogSlugFormSet( request.POST, instance=blog_post) if blogslugs_formset.is_valid(): blog_post.user = request.user if request.POST.get('meta_description'): blog_post.meta_description = request.POST[ 'meta_description'] blog_post.status = 'D' if request.POST.get('status') == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'P' if not blog_post.published_on: blog_post.published_on = datetime.datetime.now( ).date() elif request.POST.get('status') == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = 'T' elif request.POST.get('status') == "R": blog_post.status = 'R' blog_post.save() blogslugs_formset.save() # If no slugs are specified, then create one using title. if not blog_post.slugs.all(): blog_post.create_blog_slug([slugify(blog_post.title)]) blog_post.check_and_activate_slug() if request.POST.get('tags', ''): tags = request.POST.get('tags') tags = tags.split(',') for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) sg = sendgrid.SendGridClient(settings.SG_USER, settings.SG_PWD) sending_msg = sendgrid.Mail() sending_msg.set_subject("New blog post has been created") blog_url = 'https://www.micropyramid.com/blog/' + \ str(blog_post.slug) + '/' message = '<p>New blog post has been created by ' + str(request.user) + ' with the name ' + str( blog_post.title) + ' in the category ' + str(blog_post.category.name) + '.</p>' sending_msg.set_html(message) sending_msg.set_text('New blog post has been created') sending_msg.set_from(request.user.email) sending_msg.add_to( [user.email for user in User.objects.filter(is_admin=True)]) sg.send(sending_msg) cache._cache.flush_all() return redirect(reverse('micro_blog:admin_post_list')) else: blog_form = BlogpostForm() blogslugs_formset = BlogSlugFormSet(instance=Post()) categories = Category.objects.all() c = {} c.update(csrf(request)) return render(request, 'admin/blog/blog-new.html', {'categories': categories, 'csrf_token': c['csrf_token'], 'blogslugs_formset': blogslugs_formset, 'blog_form': blog_form} )
def new_post(request): if request.method == "POST": validate_blog = BlogpostForm(request.POST) if validate_blog.is_valid(): blog_post = validate_blog.save(commit=False) blog_post.user = request.user blog_post.status = "D" if request.POST.get("status") == "P": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = "P" elif request.POST.get("status") == "T": if request.user.user_roles == "Admin" or request.user.is_special or request.user.is_superuser: blog_post.status = "T" blog_post.save() if request.POST.get("tags", ""): tags = request.POST.get("tags") tags = tags.split(",") for tag in tags: blog_tag = Tags.objects.filter(name=tag) if blog_tag: blog_tag = blog_tag[0] else: blog_tag = Tags.objects.create(name=tag) blog_post.tags.add(blog_tag) sg = sendgrid.SendGridClient(settings.SG_USER, settings.SG_PWD) sending_msg = sendgrid.Mail() sending_msg.set_subject("New blog post has been created") blog_url = "http://www.micropyramid.com/blog/view-post/" + str(blog_post.slug) + "/" message = ( "<p>New blog post has been created by " + str(request.user) + " with the name " + str(blog_post.title) + " in the category " ) message += ( str(blog_post.category.name) + ".</p>" + '<p>Please <a href="' + blog_url + '">click here</a> to view the blog post in the site.</p>' ) sending_msg.set_html(message) sending_msg.set_text("New blog post has been created") sending_msg.set_from(request.user.email) sending_msg.add_to([user.email for user in User.objects.filter(is_admin=True)]) sg.send(sending_msg) data = {"error": False, "response": "Blog Post created"} else: data = {"error": True, "response": validate_blog.errors} return HttpResponse(json.dumps(data), content_type="application/json; charset=utf-8") categories = Category.objects.all() c = {} c.update(csrf(request)) return render(request, "admin/blog/blog-new.html", {"categories": categories, "csrf_token": c["csrf_token"]})