Esempio n. 1
0
def edit_card(card_id):
    card = Card.query.get_or_404(card_id)
    form = CardForm(obj=card)
    if form.validate_on_submit():
        form.populate_obj(card)
        try:
            db.session.commit()
            flash("Card successfully updated")
            return redirect(f'/cards/{card.id}')
        except:
            db.session.rollback()
            flash("Error updating card")
            return redirect(request.url)
    return render_template('add-card.html', form=form, card_img_url=card.img_url)
Esempio n. 2
0
def edit_card(id):
    card = Card.query.get_or_404(id)
    form = CardForm(obj=card)
    if form.validate_on_submit():
        load_card(card, form)
        card.last_updated = datetime.datetime.utcnow()
        if form.image.data:
            try:
                img = Image.open(request.files[form.image.name])
                upload_img(img, card)
                card.has_img = True
                db.session.commit()
            except UnidentifiedImageError:
                flash("Image file is unsupported type", 'error')
        try:
            db.session.commit()
            flash("Changes saved", 'success')
            return redirect(f'/users/{card.user.id}')
        except:
            db.session.rollback()
            flash("error saving changes", 'error')
    return render_template('edit-card.html', form=form, card=card)
Esempio n. 3
0
def add_new_card(id):
    """Add a new card from form data"""
    form = CardForm()
    if form.validate_on_submit():
        new_card = Card.createFromForm(form, owner_id=id)
        db.session.add(new_card)
        try:
            db.session.commit()
            flash("Card successfully added!", 'success')
            if form.image.data:
                try:
                    img = Image.open(request.files[form.image.name])
                    upload_img(img, new_card)
                    new_card.has_img = True
                    db.session.commit()
                except:
                    flash("Image file is unsupported type", 'error')
            return redirect(f'/users/{id}')
        except:
            db.session.rollback()
            flash("Error adding Card", 'error')
    return render_template('add-card.html', form=form)
Esempio n. 4
0
def add_card(user_id):
    if not g.user:
        flash("You must be logged in for access")
        return redirect("/register")
    elif g.user.id != user_id:
        flash("You can only add to your collection")
        return redirect(f"/users/{g.user.id}")
    else:
        form = CardForm()
        if form.validate_on_submit():
            new_card = Card(owner_id=user_id, 
                            player=form.player.data, 
                            year=form.year.data, 
                            set_name=form.set_name.data, 
                            number=form.number.data, 
                            parallel=form.parallel.data)
            db.session.add(new_card)
            try:
                db.session.commit()
                if form.img.data:
                    print("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
                    img_data = request.files[form.img.name].read()
                    print("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@")
                    print(img_data)
                    file_key = f"card_images/{g.user.id}/{new_card.id}.jpg"
                    response = S3.put_object(Body=img_data, Bucket=AWS_BUCKET, Key=file_key, ACL="public-read")
                    print(response)
                    img_url = f"https://cardboardgmpics.s3-us-west-2.amazonaws.com/{file_key}"
                    new_card.img_url = img_url
                    db.session.commit()
                flash("Card successfully added")
                return redirect(request.url)
            except Exception as err:
                db.session.rollback()
                flash("Error adding card")
                return redirect(request.url)
        return render_template("add-card.html", form=form)
Esempio n. 5
0
def index():
    global DUMB
    if DUMB:
        form = CardForm(**{"route": DUMB})
    else:
        form = CardForm()

    if form.validate_on_submit():
        DUMB = []
        for route in form.route.entries:
            DUMB.append({
                "color": route.color.data,
                "attempt_1": route.attempt_1.data,
                "attempt_2": route.attempt_2.data,
                "attempt_3": route.attempt_3.data,
                "result": route.result.data,
            })
        pprint(DUMB)
        flash("Data stored OK")

        return redirect(url_for('index'))

    print(form.errors)
    return render_template("index.html", form=form)
def card():
	if session['user'] is None:
		return redirect('/login_required')
	else:
		form = CardForm()
		filterForm = CardFilterForm()
		if form.validate_on_submit():
			transaction = Receipt(name = session['user'],
				card_type = form.card_type.data,
				date = form.date.data,
				description = form.description.data,
				amount = form.amount.data)
			db.session.add(transaction)
			db.session.commit()
			flash('Transaction submitted')
			return redirect('/card')
		transactions = Receipt.query.filter_by(name = session['user']).all()
		if filterForm.validate_on_submit():
			card = filterForm.card_type.data
			transactions = Receipt.query.filter_by(card_type = card, name = session['user'])
		return render_template('card.html',
			form = form,
			filterForm = filterForm,
			transactions = transactions)