示例#1
0
def login():

    form = LoginForm()
    error = []

    if form.validate_on_submit():

        user = Users.query.filter_by(email=form.email.data).first()

        try:
            if user.check_password(form.password.data) and user is not None:
                login_user(user)
        except:
            error.append('Oho!')
            flash("Email is not Registered.")
            return render_template('login.html', form=form)
        else:
            next = request.args.get('next')

            if next is None or not next[0] == '/':
                next = url_for('core.index')

            return redirect(next)

    return render_template('login.html',
                           form=form,
                           flash=form.errors,
                           error=error)
示例#2
0
def account():

    form = UpdateUserForm()

    if form.validate_on_submit():
        if form.picture.data:
            username = current_user.username
            pic = add_profile_pic(form.picture.data, username)

            current_user.profile_image = pic

        current_user.username = form.username.data
        current_user.email = form.email.data

        db.session.commit()
        flash("Your Account Data updated!")

        return redirect(url_for('users_blueprint.account', flash=flash))

    elif request.method == "GET":
        form.username.data = current_user.username
        form.email.data = current_user.email

    profile_image = url_for('static',
                            filename='/profile_pics' +
                            current_user.profile_image)
    return render_template('account.html',
                           profile_image=profile_image,
                           form=form)
示例#3
0
def blog_update(blog_post_id):
    blog_post = Blogpost.query.get_or_404(blog_post_id)
    #print (blog_post.text)

    if blog_post.author != current_user:
        abort(403)

    form = BlogPostForm()


    if form.validate_on_submit():
        blog_post.title = form.title.data
        blog_post.text = form.text.data
        print (blog_post)

        print ("in here")
        db.session.commit()

        flash('Blog POST Updated')

        return redirect(url_for('blog_posts.blog_post',blog_post_id=blog_post_id,flash=flash))

    elif request.method == 'GET':

        blog_post.title = blog_post.title
        blog_post.text = blog_post.text

    return render_template('updatepost.html',title='Updating',form=form,blog_post=blog_post,flash=form.errors)
示例#4
0
def userposts(username):
    page = request.args.get('page', 1, type=int)
    user = Users.query.filter_by(username=username).first_or_404()
    blog_posts = Blogpost.query.filter_by(author=user).order_by(
        Blogpost.date.desc()).paginate(page=page, per_page=5)
    return render_template('user_blog_posts.html',
                           blog_posts=blog_posts,
                           user=user)
示例#5
0
def create_post():
    form = BlogPostForm()

    if form.validate_on_submit():
        blog_post = Blogpost(title=form.title.data,
                             text=form.text.data,
                             user_id=current_user.id)

        db.session.add(blog_post)
        db.session.commit()

        flash('New Blog POST Created')

        return redirect(url_for('core.index'),flash=flash)

    return render_template('createpost.html',form=form)
示例#6
0
def register():

    form = RegistrationForm()

    if form.validate_on_submit():

        user = Users(email=form.email.data,
                     username=form.username.data,
                     password=form.password.data,
                     sex=form.sex.data,
                     mobile=str(form.country_code.data) +
                     str(form.mobile.data))
        db.session.add(user)
        try:
            db.session.commit()
        except:
            db.session.rollback()
            flash("Your email is already registered.Try Log in")
        else:
            flash("Thanks for Registration!")

        return redirect(url_for('users_blueprint.login'))
    print(form.errors)
    return render_template('register.html', form=form, flash=form.errors)
示例#7
0
def error_404(error):
    return render_template('error_pages/404.html'), 404
示例#8
0
def error_500(error):
    return render_template('error_pages/500.html'), 500
示例#9
0
def index():
    page = request.args.get('page', 1, type=int)
    blog_posts = Blogpost.query.order_by(Blogpost.date.desc()).paginate(
        page=page, per_page=5)
    return render_template('index.html', blog_posts=blog_posts)
示例#10
0
def info():
    return render_template('info.html')
示例#11
0
def blog_post(blog_post_id):
    blog_post = Blogpost.query.get_or_404(blog_post_id)
    return render_template('blogpost.html',title=blog_post.title,
                           date=blog_post.date,post=blog_post)