Beispiel #1
0
def new_post():
    cities = [(c.name, c.name) for c in City.query.all()]
    countries = [(c.name, c.name) for c in Country.query.all()]
    form = PostForm(city_choices=cities, country_choices=countries)

    if form.validate_on_submit():
        city = City.query.filter_by(name=form.city.data).first()
        post = Post(title=form.title.data,
                    content=form.content.data,
                    author=current_user,
                    anouncement_type=form.postType.data,
                    house_type=form.houseType.data,
                    square_meters=form.sqMeters.data,
                    price=form.price.data,
                    address=form.address.data,
                    city_id=city.id,
                    number_rooms=form.nmbRooms.data,
                    phonenumber=form.phonenumber.data)

        if form.picture.data:
            for pic in form.picture.data:
                pic_name = save_picture(pic)
                image = Image(name=pic_name, post=post)
                db.session.add(image)
        db.session.add(post)
        db.session.commit()
        #flash('Your post has been created!', 'success')
        return redirect(url_for('posts.payment', post_id=post.id))
    return render_template('create_post.html',
                           title='New Post',
                           form=form,
                           legend='New Post')
Beispiel #2
0
def new_post():
    form = PostForm()
    if form.validate_on_submit():
        if (form.picture.data):
            picture_file = save_picture(form.picture.data)
        else:
            picture_file = 'default1.jpg'
        post = Post(title=form.title.data,
                    content=form.content.data,
                    author=current_user,
                    image_file=picture_file,
                    category=form.category.data)

        db.session.add(post)
        db.session.commit()
        flash('Your post has been created!', 'success')

        return redirect(url_for('main.home'))
    dis_cats = []
    for dis_cat in db.session.query(Post.category).distinct():
        dis_cats.append(dis_cat.category)
    return render_template('create_post.html',
                           title='New Post',
                           form=form,
                           dis_cats=dis_cats,
                           legend='New Post')
def new_post():
    form = PostForm()
    if form.validate_on_submit():
        try:
            website = User.query.filter_by(id=current_user.id).first()
            domain = str(form.biz_name.data).replace(" ", "-").lower()
            logo_img = None
            back_img = None
            if form.logo_img.data:
                logo_img = save_picture(form.logo_img.data)
            if form.back_img.data:
                back_img = save_picture(form.back_img.data)

            website.biz_name=form.biz_name.data
            website.about=form.about.data
            website.domain=domain
            website.show_loc = form.show_loc.data
            website.address=form.address.data
            website.address2=form.address2.data
            website.city=form.city.data
            website.state=form.state.data
            website.post_code=form.post_code.data
            website.logo_img=logo_img
            website.facebook=form.facebook.data
            website.instagram=form.instagram.data
            website.contact_email=form.contact_email.data
            website.contact_phone=form.contact_phone.data
            website.abn=form.abn.data
            website.back_img=back_img
            website.color_1=form.color_1.data
            website.color_2=form.color_2.data

            db.session.commit()
            string = "Your Website Has Been Created! Go to *************/" + str(form.biz_name.data).replace(" ", "-").lower() + " to see your website."
            flash(string, 'success')
            return redirect(url_for('posts.post', domain=domain))
        except Exception as e:
            SendErrMail(e)
    return render_template("create_website.html", title="New Website", form=form, legend="New Website")
Beispiel #4
0
def create_post():
    form = PostForm()
    if form.validate_on_submit():
        picture_fn = None if form.picture.data is None else save_picture(
            form.picture.data)
        post = Post(title=form.title.data,
                    content=form.content.data,
                    image_file=picture_fn,
                    author=current_user)
        db.session.add(post)
        db.session.commit()
        flash('You just have posted successfully', 'success')
        return redirect(url_for('main.home'))
    return render_template('posts/create_post.html',
                           title='Create Post',
                           form=form,
                           legend='Create New Post')
Beispiel #5
0
def new_post():
    form = PostForm()
    if form.validate_on_submit():
        post = Post(title=form.title.data,
                    content=form.content.data,
                    author=current_user)
        if form.image.data:
            picture_file = save_picture(form.image.data)
            post.image = picture_file
        db.session.add(post)
        db.session.commit()
        flash('Your post has been published.', 'success')
        return redirect(url_for('main.home'))
    return render_template('create_post.html',
                           title='New Post',
                           form=form,
                           legend='New Post',
                           prof_pic=firebase_storage.prof_img(current_user))
Beispiel #6
0
def new_post():
    form = PostForm()
    if form.validate_on_submit():
        attrs = {
            'img': ['src', 'alt', 'title', 'style'],
            'p': ['style'],
            'h1': ['style']
        }
        if form.picture.data:
            picture_file = save_picture(form.picture.data)
            clean_content = bleach.clean(
                request.form.get('content'),
                tags=bleach.sanitizer.ALLOWED_TAGS +
                ['h1', 'br', 'p', 'img', 'blockquote'],
                attributes=attrs,
                protocols=bleach.sanitizer.ALLOWED_PROTOCOLS + ['data'],
                styles=bleach.sanitizer.ALLOWED_STYLES +
                ['color', 'width', 'text-align'])
            post = Post(title=form.title.data,
                        content=clean_content,
                        author=current_user,
                        cat_id=form.category.data.id,
                        image_file=picture_file)
        else:
            post = Post(
                title=form.title.data,
                content=bleach.clean(
                    form.content.data,
                    tags=bleach.sanitizer.ALLOWED_TAGS +
                    ['h1', 'br', 'p', 'img', 'blockquote'],
                    attributes=attrs,
                    protocols=bleach.sanitizer.ALLOWED_PROTOCOLS + ['data'],
                    styles=bleach.sanitizer.ALLOWED_STYLES +
                    ['color', 'width', 'text-align']),
                author=current_user,
                cat_id=form.category.data.id)
        db.session.add(post)
        db.session.commit()
        flash('Your post has been created!', 'success')
        return redirect(url_for('main.home'))
    return render_template('create_post.html',
                           title='New Post',
                           form=form,
                           legend='New Post')
def image_gallery_add(domain):
    try:
        form = AddImageForm()
        website = User.query.filter_by(domain=domain).first()
        if website.id != current_user.id:
            abort(403)
        if form.validate_on_submit():
            img = None
            if form.img.data:
                img = save_picture(form.img.data)
            title = form.title.data
            new_image = Images(title=title, img=img, user=current_user.id)
            db.session.add(new_image)
            db.session.commit()
            flash("Image added!", 'success')
            return redirect(url_for('users.account'))
        return render_template("image_add.html", form=form, title="Add Image", legend="Add Image")
    except Exception as e:
        SendErrMail(e)
Beispiel #8
0
def update_post(post_id):
    post = Post.query.get_or_404(post_id)
    if post.author != current_user:
        abort(403)
    form = PostForm()
    if form.validate_on_submit():
        picture_fn = None if form.picture.data is None else save_picture(
            form.picture.data)
        post.title = form.title.data
        post.content = form.content.data
        post.image_file = post.image_file if picture_fn is None else picture_fn
        db.session.commit()
        flash('You just have updated post successfully', 'success')
        return redirect(url_for('posts.view_post', post_id=post.id))
    elif request.method == 'GET':
        form.title.data = post.title
        form.content.data = post.content
    return render_template('posts/create_post.html',
                           title='Update Post',
                           form=form,
                           legend='Update Post')
Beispiel #9
0
def update_post(post_id):
    post = Post.query.get_or_404(post_id)
    if post.author != current_user:
        abort(403)
    form = PostForm()
    if form.validate_on_submit():
        post.title = form.title.data
        post.content = form.content.data
        if form.image.data:
            picture_file = save_picture(form.image.data)
            post.image = picture_file
        db.session.commit()
        flash('Post updated successfully.', 'success')
        return redirect(url_for('posts.post', post_id=post.id))
    elif request.method == 'GET':
        form.title.data = post.title
        form.content.data = post.content
    return render_template('create_post.html',
                           title='Update Post',
                           form=form,
                           legend='Update Post',
                           prof_pic=firebase_storage.prof_img(current_user))
Beispiel #10
0
def new_post():
    form = PostForm()
    if form.validate_on_submit():

        picture_file = None
        print(form.picture.data)
        #If there is picture data, change profile picture
        if form.picture.data:
            print('form.picture.data has the picture')

            picture_file = save_picture(form.picture.data)
        #Create post and add to database
        post = Post(title=form.title.data,
                    content=form.content.data,
                    author=current_user,
                    image_file=picture_file)
        db.session.add(post)
        db.session.commit()
        flash('Your post has been created!', 'success')
        return redirect(url_for('main.home'))
    return render_template('create_post.html',
                           title='New Post',
                           form=form,
                           legend='New Post')
def update_post(domain):
    try:
        website = User.query.filter_by(domain=domain).first()
        if website.id != current_user.id:
            abort(403)
        form = UpdatePostForm()
    except Exception as e:
        SendErrMail(e)
    if form.validate_on_submit():
        try:
            website = User.query.filter_by(domain=domain).first()
            logo_img = None
            back_img = None
            if form.logo_img.data != None:
                os.remove(os.path.join('FlaskBlog/flaskblog/static/uploads', website.logo_img))
                logo_img = save_picture(form.logo_img.data)
            if form.back_img.data != None:
                os.remove(os.path.join('FlaskBlog/flaskblog/static/uploads', website.back_img))
                back_img = save_picture(form.back_img.data)

            domain = str(form.biz_name.data).replace(" ", "-").lower()
            website.biz_name=form.biz_name.data
            website.about=form.about.data
            website.domain=domain
            website.show_loc = form.show_loc.data
            website.address=form.address.data
            website.address2=form.address2.data
            website.city=form.city.data
            website.state=form.state.data
            website.post_code=form.post_code.data
            website.logo_img=logo_img
            website.facebook=form.facebook.data
            website.instagram=form.instagram.data
            website.contact_email=form.contact_email.data
            website.contact_phone=form.contact_phone.data
            website.abn=form.abn.data
            website.back_img=back_img
            website.color_1=form.color_1.data
            website.color_2=form.color_2.data

            db.session.commit()
            flash("Your Website has been updated!", 'success')
            return redirect(url_for('posts.post', domain=website.domain))
        except Exception as e:
            SendErrMail(e)
    elif request.method == 'GET':
        try:
            form.biz_name.data = website.biz_name
            form.about.data = website.about
            domain = website.domain
            form.show_loc.data = website.show_loc
            form.address.data = website.address
            form.address2.data = website.address2
            form.city.data = website.city
            form.state.data = website.state
            form.post_code.data = website.post_code
            form.logo_img.data = website.logo_img
            form.facebook.data = website.facebook
            form.instagram.data = website.instagram
            form.contact_email.data = website.contact_email
            form.contact_phone.data = website.contact_phone
            form.abn.data = website.abn
            form.back_img.data = website.back_img
            form.color_1.data = website.color_1
            form.color_2.data = website.color_2

        except Exception as e:
            SendErrMail(e)

    return render_template("create_website.html", title="Update Website", form=form, legend="Update Website")