Exemplo n.º 1
0
def manage_blogs(request, blog_id=None):
    if request.method == 'POST':
        form = BlogForm(request.POST)
        if form.is_valid():
            niche = NicheModel.objects.get(id=int(request.POST['niche']))
            newblog = BlogModel(address=request.POST['address'],
                                user=request.POST['user'],
                                password=request.POST['password'],
                                niche=niche)
            newblog.save()
            return HttpResponseRedirect('/manage_blogs/')
    else:
        initial_data = None
        if blog_id:
            try:
                edit_blog = BlogModel.objects.get(pk=blog_id)
                initial_data = edit_blog.get_data()
            except Exception:
                pass
        form = BlogForm(initial_data)
        blogs = BlogModel.objects.all()
        return render_to_response('manage_blogs.html', {
            'blogs': blogs,
            'form': form,
            'blog_id': blog_id
        },
                                  context_instance=RequestContext(request))
Exemplo n.º 2
0
 async def get(self, id=None):
     form = BlogForm()
     blog = dict()
     if id:
         blog = await self.application.objects.get(Blog, id=id)
         form = BlogForm(title=blog.title, text=blog.text)
     self.render("blog_create.html", blog=blog, form=form)
Exemplo n.º 3
0
def edit(request, id=None):
    if not request.user.is_staff or not request.user.is_superuser:
        raise Http404
    instance = get_object_or_404(Blog, id=id)

    # check just owner and superuser can edit current post
    if not request.user.is_superuser and request.user != instance.owner:
        raise PermissionDenied

    form = BlogForm(request.POST or None,
                    request.FILES or None,
                    instance=instance)
    if form.is_valid():
        instance = form.save(commit=False)
        instance.owner = request.user
        form.save()
        messages.success(request,
                         _('updated successfully!!'),
                         extra_tags='alert alert-success')
        return HttpResponseRedirect(instance.get_absolute_url())

    context = {
        'form': form,
    }
    return render(request, 'edit.html', context)
def blog():
    form = BlogForm()
    if form.validate_on_submit():
        # get the users choice
        time_ = datetime.datetime.now().strftime('%Y/%m/%d %H:%M:%S')
        content = form.content.data

        # insert the blog message into the database
        c, conn = get_db()
        query = 'insert into Blog (time_, user_nm, comp_nm, post) VALUES ("{}","{}", "{}", "{}")'.format(time_, USERNM.name, COMPNAME, content)
        c.execute(query)
        conn.commit()

        return redirect(url_for('blog'))

    conn = sqlite3.connect('survivor.db')

    #Display all blogs from the 'blogs' table
    conn.row_factory = dict_factory
    c = conn.cursor()
    c.execute("SELECT * FROM Blog \
        ORDER BY time_ DESC")
    blogs = c.fetchall()

    return render_template('blog.html', posts=blogs, form=form, user_nm=USERNM.name)
Exemplo n.º 5
0
def create(request, template_name='main/form.html'):
    form = BlogForm(request.POST or None)
    if form.is_valid():
        form.save()
        messages.success(request, 'Post has been created')
        return redirect('index')
    return render(request, template_name, {'form': form})
Exemplo n.º 6
0
def editBlog(id):
    blog_id = id
    org_blog = session.query(BlogModel).get(blog_id)
    form = BlogForm()
    if form.validate_on_submit():
        name = form['title'].data
        content = form['content'].data
        if org_blog.author != current_user.id:
            return "Permission Denied"
        session.query(BlogModel).filter(BlogModel.id == blog_id).update({
            "name":
            name,
            "content":
            content,
            "edited_on":
            datetime.datetime.now()
        })

        session.commit()
        flash("Blog edited successfully")
        return redirect("/blog/%d" % id)
    else:
        blog = session.query(BlogModel).get(blog_id)
        if blog.author == current_user.id:
            form.title.data = blog.name
            form.content.data = blog.content
            return render_template('edit_blog.html',
                                   title=blog.name,
                                   content=blog.content,
                                   blog_id=blog_id,
                                   form=form)
        else:
            return "Sign in with correct user"
Exemplo n.º 7
0
def edit_blog(user_id):
    blog = session.query(Blog).filter_by(user_id=user_id).one()
    old_img = blog.profile_img
    form = BlogForm(obj=blog)
    if form.validate_on_submit():
        blog.last_modified = time()
        form.populate_obj(blog)
        if form.image.data and allowed_file(form.image.data.filename):
            if old_img:
                # first delete the previous file in the upload_folder
                deleting_file = os.path.join(app.config['UPLOAD_FOLDER'],
                                             old_img)
                os.remove(deleting_file)
            # then upload the new file
            file = form.image.data
            # upload the file with prefix(blog_id), suffix(last_modified)
            blog.profile_img = upload(file, str(login_session['blog_id']),
                                      str(int(blog.last_modified)))

        session.add(blog)
        session.commit()
        return redirect(url_for('view_blog', user_id=user_id))
    return render_template('blog_profile.html',
                           form=form,
                           user_id=login_session.get('user_id'),
                           username=login_session.get('username'))
Exemplo n.º 8
0
def blog():
    # connect to the db and get the users
    conn = sqlite3.connect('survivor.db')
    conn.row_factory = dict_factory
    c = conn.cursor() 
    
    c.execute('SELECT user_nm FROM CompUser')
    results = c.fetchall()
    users = [(results.index(item), item) for item in results]
        
    form = BlogForm()
    form.username.choices = users
    if form.validate_on_submit():
        # get the users choice
        choices = form.username.choices
        user = (choices[form.username.data][1])
        time_ = datetime.datetime.now().strftime('%Y/%m/%d %H:%M:%S')
        content = form.content.data
       
        query = "insert into Blog VALUES ('" + time_ + \
            "'," + "'" + user + "'," + "'" + content + "')"
        c.execute(query)
        conn.commit()

        flash(f'Blog created for {user}!', 'success')
        return redirect(url_for('home'))

    return render_template('blog.html', form=form)
Exemplo n.º 9
0
def update(request, blog_id, template_name='main/form.html'):
    post = get_object_or_404(Blog, pk=blog_id)
    form = BlogForm(request.POST or None, instance=post)
    if form.is_valid():
        form.save()
        messages.success(request, 'Post has been updated')
        return redirect('index')
    return render(request, template_name, {'form': form})
Exemplo n.º 10
0
def add():
    blog_form = BlogForm(user_id=current_user.id)
    if blog_form.validate_on_submit():
        Blog.new(blog_form.data)
        return redirect(url_for('.index'))
    else:
        flash('添加博客失败')
        return redirect(url_for('.new'))
Exemplo n.º 11
0
def update(blog_id):
    blog_form = BlogForm(user_id=current_user.id)
    if blog_form.validate_on_submit():
        Blog.update(blog_id, blog_form.data)
        return redirect(url_for('.detail', blog_id=blog_id))
    else:
        flash('修改博客失败')
        return redirect(url_for('.edit', blog_id=blog_id))
Exemplo n.º 12
0
def edit_blog(id):
    blog = Blog.query.get_or_404(id)
    if current_user != blog.author and not current_user.is_administrator:
        abort(403)
    form = BlogForm(obj=blog)
    if form.validate_on_submit():
        form.populate_obj(blog)
        db.session.add(blog)
        db.session.commit()
        flash('博客已经更新', 'success')
        return redirect(url_for('front.blog', id=blog.id))
    return render_template('user/edit_blog.html', form=form)
Exemplo n.º 13
0
def post_blog():
    # Check if user logged in to give access to page, otherwise direct to login
    form2 = BlogForm()
    if 'username' in session:
        if form2.validate_on_submit():
            with open('data/blog_posts.csv', 'a') as f:
                writer = csv.writer(f)
                writer.writerow([form2.blog_title.data, form2.content.data, form2.topic_area.data])
            return redirect(url_for('successful_post'))
        return render_template('Post_blog.html', form2=form2)
    else:
        flash('Log in first!')
        return redirect(url_for('login'))
Exemplo n.º 14
0
def newBlog():
    form = BlogForm()
    if form.validate_on_submit():
        print(form)
        title = form['title'].data
        content = form['content'].data
        blog = BlogModel(name=title,
                         content=content,
                         author=current_user.id,
                         created_on=datetime.datetime.now())
        session.add(blog)
        session.commit()
        return redirect('/blog/{}'.format(blog.id))
    else:
        return render_template("post_blog.html", form=form)
Exemplo n.º 15
0
def new_post(request):
    if request.method == 'POST':
        print request
        # create a form instance and populate it with data from the request
        form = BlogForm(request.POST)
        # check if it is valid
        if form.is_valid():
            # process data and redirect to a new URL
            title = form.cleaned_data['title']
            description = form.cleaned_data['description']
            content = form.cleaned_data['content']
            new = Post(title=title,
                       content=content,
                       description=description,
                       published=form['published'],
                       slug=slugify(unicode(title)))
            new.save()
            return HttpResponseRedirect('/blog/')
    # GET or other methods, create a blank form
    else:
        print "GET HERE"
        form = BlogForm()
        print form
    return render(request, 'blog/new.html', {'form': form})
Exemplo n.º 16
0
def create(request, template_name='main/form.html'):
    """
        View to create a new blog post.
        Just for the SuperUser.
    """
    if request.user.is_superuser:
        form = BlogForm(request.POST or None)
        if form.is_valid():
            form.save()
            messages.success(request, 'Post has been created')
            return redirect('index')
        return render(request, template_name, {'form': form})
    else:
        messages.success(request, 'You are not authorized')
        return redirect('index')
Exemplo n.º 17
0
def update(request, blog_id, template_name='main/form.html'):
    """
        View to update a particular blog post.
        Just for the SuperUser.
    """
    if request.user.is_superuser:
        post = get_object_or_404(Blog, pk=blog_id)
        form = BlogForm(request.POST or None, instance=post)
        if form.is_valid():
            form.save()
            messages.success(request, 'Post has been updated')
            return redirect('index')
        return render(request, template_name, {'form': form})
    else:
        messages.success(request, 'You are not authorized')
        return redirect('index')
Exemplo n.º 18
0
def blog():
  form = BlogForm()

  if request.method == 'POST':
    if form.validate() == False:
      return render_template('blog.html', form=form)
    else:
      newpost = Post(request.form['title'], request.form['post'])
      #newpost = Post(form.title.data, form.post.data)
      db.session.add(newpost)
      db.session.commit()
      return redirect(url_for('home'))


  elif request.method == 'GET':
    return render_template('blog.html', form=form)
Exemplo n.º 19
0
def new_post():
    form = BlogForm()
    if request.method == 'POST':
        if not form.validate():
            return render_template('newpost.html', form=form)
        else:

            owner = User.query.filter_by(username=session['username']).first()
            blog_title = form.blog_title.data
            blog_post = form.blog_post.data

            new_blog = Blog(blog_title, blog_post, owner)
            db.session.add(new_blog)
            db.session.commit()

            return redirect(url_for('blog', id=new_blog.id))

    return render_template('newpost.html', form=form, title="Add a Blog Entry")
Exemplo n.º 20
0
def new_blog():
    """Blog List."""
    error = None
    form = BlogForm(request.form)
    if form.validate_on_submit():
        print 'hi'
        new_message = BlogPost(form.title.data, form.description.data,
                               current_user.id)
        db.session.add(new_message)
        db.session.commit()
        flash('New entry was successfully posted. Thanks.')
        return redirect(url_for('blog.blogs'))
    else:
        posts = db.session.query(BlogPost).all()
        return render_template('new_blog.html',
                               posts=posts,
                               form=form,
                               error=error)
Exemplo n.º 21
0
    async def post(self, id=None):
        title = self.get_argument("title")
        text = self.get_argument("text")

        form = BlogForm(title=title, text=text)
        if form.validate():
            if id:
                blog = await self.application.objects.get(Blog, id=id)
                blog.title = title
                blog.text = text
                blog.updated_at = datetime.datetime.now()
                await self.application.objects.update(blog)
                return self.redirect(self.reverse_url("blog_detail", id))
            blog = await self.application.objects.create(Blog,
                                                         title=title,
                                                         text=text)
            return self.redirect(self.reverse_url("blog_detail", blog.id))
        return self.render("blog_create.html", form=form)
Exemplo n.º 22
0
def create(request):
    if not request.user.is_staff or not request.user.is_superuser:
        raise Http404
    form = BlogForm(
        request.POST or None,
        request.FILES,
    )
    if form.is_valid():
        instance = form.save(commit=False)
        instance.owner = request.user
        instance.save()
        messages.success(
            request,
            _('created successfully! <a href="/">See the item</a>'),
            extra_tags='alert alert-success safe')
    context = {
        'form': form,
    }
    return render(request, 'create.html', context)
Exemplo n.º 23
0
def addBlog():
        title = {'title': 'Add Blog', 'year': forDate()}
        form = BlogForm()
        if form.validate_on_submit():
            '''---------------Add blog to database--------------'''
            blogTitle = request.form.get('blogTitle')
            auther = request.form.get('auther')
            blogContent = request.form.get('blogContent')
            tags = request.form.get('tags')
            now = datetime.now()
            now = now.strftime('%Y-%m-%d %H:%M:%S')
            dbconn = pymysql.connect(host="localhost", user="******", password="******", db="mooz")
            curr = dbconn.cursor()
            curr.execute("INSERT INTO posts (userId,title,Auther,post,tags,created) values ('" + '1' + "','" + blogTitle + "','" + auther + "','" + blogContent + "','" + tags + "','" + now + "')")
            dbconn.commit()
            flash("User Adding his blog of {} Title ".format(form.blogTitle.data))
            return redirect(url_for('home'))

        return render_template('addBlog.html',title=title,form=form)
Exemplo n.º 24
0
def blog(request):
    latest_blog_list = Blog.objects.order_by('-created_time')[:5]
    # latest_comment_list = Comment.objects.order_by('-comment_date')[:5]
    template = loader.get_template('blogs.html')
    context = RequestContext(
        request,
        {
            'latest_blog_list': latest_blog_list,
            # 'latest_comment_list':latest_comment_list,
            'template_name': 'blogs.html',
            'form_blog': BlogForm,
            'form_comment': CommentForm,
            'success_url': '/thanks/',
        })
    if request.method == 'POST':
        if 'blog_body' in request.POST:
            form = BlogForm(request.POST)
        elif 'comment_data' in request.POST:
            form = CommentForm(request.POST)
        if form.is_valid():
            blog_form = form.save(commit=False)
            if 'comment_data' in request.POST:
                blog = Blog.objects.get(id=request.POST['blog'])
                comment_count = blog.comment_set.aggregate(
                    Count('comment_data')).values()
                if comment_count[0] != None:
                    comment_count = blog.comment_set.aggregate(
                        Count('comment_data')).values()[0]
                else:
                    comment_count = int(request.POST['comment_data'])
                blog.overall_comment = comment_count
                blog.save()

            # commit=False tells Django that "Don't send this to database yet.
            # I have more things I want to do with it."
            blog_form.user = User.objects.get(username=request.user)
            # Set the user object here
            blog_form.save()
            # Now you can send it to DB

    return HttpResponse(template.render(context))
Exemplo n.º 25
0
def index():
    '''网站首页'''
    form = BlogForm()
    # 凡是登录成功的用户,就有写博客的权限
    if current_user.is_authenticated:
        if form.validate_on_submit():
            blog = Blog()
            form.populate_obj(blog)
            blog.author = current_user
            db.session.add(blog)
            db.session.commit()
            flash('成功发布博客', 'success')
            return redirect(url_for('.index'))
    page = request.args.get('page', 1, type=int)
    pagination = Blog.query.order_by(Blog.time_stamp.desc()).paginate(
        page, per_page=current_app.config['BLOGS_PER_PAGE'], error_out=False)
    blogs = pagination.items
    return render_template('index.html',
                           form=form,
                           blogs=blogs,
                           pagination=pagination)
Exemplo n.º 26
0
def new():
    blog_form = BlogForm(user_id=current_user.id)
    return render_template('/blog/add.html', form=blog_form)
Exemplo n.º 27
0
def edit(blog_id):
    blog = Blog.query.get(blog_id)
    blog_auth(blog)
    blog_form = BlogForm(user_id=current_user.id)
    blog_form.content.data = blog.content
    return render_template('/blog/edit.html', form=blog_form, blog=blog)