Exemplo n.º 1
0
def delete_place(category_id, place_id):
    """Delete place page.  User must have created place to delete."""

    cat = db.get_cat(category_id)
    place = db.get_place(place_id)

    user_id = login_session['user_id']

    if place.user_id != user_id:
        return redirect(url_for('main_page'))
    if creator.id != login_session['user_id']:
        flash("You cannot delete this Type.\
              This Type belongs to % s" % creator.name)
        return redirect(url_for('show_place'))

    if request.method == 'POST':
        delete_confirmation = request.form['delete']

        if delete_confirmation == 'yes':
            db.delete_place(place)
            flash('place entry deleted.')
        return redirect(url_for('show_category', category_id=cat.id))
    else:
        return render_template(
            'delete_place.html',
            category=cat,
            place=place
            )
Exemplo n.º 2
0
def show_item(category_id, item_id):
    """Specific item page. Shows desc."""
    categories = db.get_all_categories()
    cat = db.get_cat(category_id)
    item = db.get_item(item_id)
    return render_template('item.html',
                           categories=categories,
                           category=cat,
                           item=item)
Exemplo n.º 3
0
def show_place(category_id, place_id):
    """Specific place page. Shows desc."""
    categories = db.get_all_categories()
    cat = db.get_cat(category_id)
    place = db.get_place(place_id)
    return render_template('place.html',
                           categories=categories,
                           category=cat,
                           place=place)
Exemplo n.º 4
0
def show_category(category_id):
    """Specific category page.  Shows all titles."""
    categories = db.get_all_categories()
    cat = db.get_cat(category_id)
    items = session.query(ItemTitle).filter_by(category_id=cat.id).order_by(
        asc(ItemTitle.name))
    return render_template('category.html',
                           categories=categories,
                           category=cat,
                           items=items)
Exemplo n.º 5
0
def show_item(category_id, item_id):
    """Specific item page. Shows desc."""
    categories = db.get_all_categories()
    cat = db.get_cat(category_id)
    item = db.get_item(item_id)
    return render_template(
        'item.html',
        categories=categories,
        category=cat,
        item=item
        )
Exemplo n.º 6
0
def show_category(category_id):
    """Specific category page.  Shows all titles."""
    categories = db.get_all_categories()
    cat = db.get_cat(category_id)
    items = session.query(ItemTitle).filter_by(category_id=cat.id).order_by(asc(ItemTitle.name))
    return render_template(
        'category.html',
        categories=categories,
        category=cat,
        items=items
        )
Exemplo n.º 7
0
def edit_place(category_id, place_id):
    """Edit place page. User must have created the place to edit."""

    categories = db.get_all_categories()
    cat = db.get_cat(category_id)
    place = db.get_place(place_id)
    user_id = login_session['user_id']

    if place.user_id != user_id:
        return redirect(url_for('main_page'))
    if creator.id != login_session['user_id']:
        flash("You cannot edit this Type.\
              This Type belongs to % s" % creator.name)
        return redirect(url_for('show_place'))

    if request.method == 'POST':
        name = request.form['name']
        description = request.form['description']
        category = request.form['category']
        field_vals = {}
        if name and description:
            flash('place edited!')
            db.edit_place(place, name, description, db.get_cat_id(category))
            time.sleep(1)
            return redirect(url_for(
                'show_place',
                category_id=category_id,
                place_id=place_id
                )
            )
        else:
            field_vals['default_cat'] = category
            flash('Invalid input! Must enter values.')
            field_vals['input_name'] = name
            field_vals['input_description'] = description
            return render_template('new_place.html',
                               categories=categories,
                               **field_vals)
    else:
        return render_template(
            'edit_place.html',
            category_id=category_id,
            place_id=place_id,
            categories=categories,
            input_name=place.name,
            input_description=place.description,
            default_cat=cat.name
            )
Exemplo n.º 8
0
def new_place(category_id):
    """Add new place page.  Requires logged in status."""

    categories = db.get_all_categories()

    if request.method == 'POST':
        name = request.form['name']
        description = request.form['description']
        category = request.form['category']
        field_vals = {}

        user_id = login_session['user_id']

        if name and description and category != "None":
            print 'received inputs'
            flash('New place added!')
            cat_id = db.get_cat_id(category)
            new_place = db.create_place(
                name,
                description,
                cat_id,
                user_id
                )
            return redirect(url_for(
                'show_place',
                category_id=cat_id,
                place_id=new_place.id
                )
            )
        elif category == "None":
            flash('Must enter a category.')
        else:
            field_vals['default_cat'] = category
            flash('Invalid input! Must enter values.')

        field_vals['input_name'] = name
        field_vals['input_description'] = description
        return render_template('new_place.html',
                               categories=categories, **field_vals)
    else:
        if category_id:
            cat_name = db.get_cat(category_id).name
            return render_template('new_place.html',
                                   categories=categories,
                                   default_cat=cat_name)
        else:
            return render_template('new_place.html', categories=categories)
Exemplo n.º 9
0
def edit_item(category_id, item_id):
    """Edit item page. User must have created the item to edit."""

    categories = db.get_all_categories()
    cat = db.get_cat(category_id)
    item = db.get_item(item_id)
    user_id = login_session['user_id']

    if item.user_id != user_id:
        return redirect(url_for('main_page'))

    if request.method == 'POST':
        name = request.form['name']
        description = request.form['description']
        category = request.form['category']

        field_vals = {}

        if name and description:
            flash('Item edited!')
            db.edit_item(item, name, description, db.get_cat_id(category))

            time.sleep(1)
            return redirect(url_for(
                'show_item',
                category_id=category_id,
                item_id=item_id
                )
            )
        else:
            field_vals['default_cat'] = category
            flash('Invalid input! Must enter values.')

        field_vals['input_name'] = name
        field_vals['input_description'] = description
        return render_template('new_item.html', categories=categories, **field_vals)
    else:
        return render_template(
            'edit_item.html',
            category_id=category_id,
            item_id=item_id,
            categories=categories,
            input_name=item.name,
            input_description=item.description,
            default_cat=cat.name
            )
Exemplo n.º 10
0
def new_item(category_id):
    """Add new item page.  Requires logged in status."""

    categories = db.get_all_categories()

    if request.method == 'POST':
        name = request.form['name']
        description = request.form['description']
        category = request.form['category']
        field_vals = {}

        user_id = login_session['user_id']

        if name and description and category != "None":
            print 'received inputs'
            flash('New item added!')
            cat_id = db.get_cat_id(category)
            new_item = db.create_item(
                name,
                description,
                cat_id,
                user_id
                )
            return redirect(url_for(
                'show_item',
                category_id=cat_id,
                item_id=new_item.id
                )
            )
        elif category == "None":
            flash('Must enter a category.')
        else:
            field_vals['default_cat'] = category
            flash('Invalid input! Must enter values.')

        field_vals['input_name'] = name
        field_vals['input_description'] = description
        return render_template('new_item.html', categories=categories, **field_vals)
    else:
        if category_id:
            cat_name = db.get_cat(category_id).name
            return render_template('new_item.html', categories=categories, default_cat=cat_name)
        else:
            return render_template('new_item.html', categories=categories)
Exemplo n.º 11
0
def edit_item(category_id, item_id):
    """Edit item page. User must have created the item to edit."""

    categories = db.get_all_categories()
    cat = db.get_cat(category_id)
    item = db.get_item(item_id)
    user_id = login_session['user_id']

    if item.user_id != user_id:
        return redirect(url_for('main_page'))

    if request.method == 'POST':
        name = request.form['name']
        description = request.form['description']
        category = request.form['category']

        field_vals = {}

        if name and description:
            flash('Item edited!')
            db.edit_item(item, name, description, db.get_cat_id(category))

            time.sleep(1)
            return redirect(
                url_for('show_item', category_id=category_id, item_id=item_id))
        else:
            field_vals['default_cat'] = category
            flash('Invalid input! Must enter values.')

        field_vals['input_name'] = name
        field_vals['input_description'] = description
        return render_template('new_item.html',
                               categories=categories,
                               **field_vals)
    else:
        return render_template('edit_item.html',
                               category_id=category_id,
                               item_id=item_id,
                               categories=categories,
                               input_name=item.name,
                               input_description=item.description,
                               default_cat=cat.name)
Exemplo n.º 12
0
def delete_item(category_id, item_id):
    """Delete item page.  User must have created item to delete."""

    cat = db.get_cat(category_id)
    item = db.get_item(item_id)

    user_id = login_session['user_id']

    if item.user_id != user_id:
        return redirect(url_for('main_page'))

    if request.method == 'POST':
        delete_confirmation = request.form['delete']

        if delete_confirmation == 'yes':
            db.delete_item(item)
            flash('Item entry deleted.')
        return redirect(url_for('show_category', category_id=cat.id))
    else:
        return render_template('delete_item.html', category=cat, item=item)
Exemplo n.º 13
0
def delete_item(category_id, item_id):
    """Delete item page.  User must have created item to delete."""

    cat = db.get_cat(category_id)
    item = db.get_item(item_id)

    user_id = login_session['user_id']

    if item.user_id != user_id:
        return redirect(url_for('main_page'))

    if request.method == 'POST':
        delete_confirmation = request.form['delete']

        if delete_confirmation == 'yes':
            db.delete_item(item)
            flash('Item entry deleted.')
        return redirect(url_for('show_category', category_id=cat.id))
    else:
        return render_template(
            'delete_item.html',
            category=cat,
            item=item
            )
Exemplo n.º 14
0
def category_items_json(category_id):
    item_list = db.get_items_in_category(category_id)
    category = db.get_cat(category_id)
    return jsonify(Category=category.name,
                   Items=[item.serialize for item in item_list])
Exemplo n.º 15
0
def category_places_json(category_id):
    place_list = db.get_places_in_category(category_id)
    category = db.get_cat(category_id)
    return jsonify(Category=category.name,
                   Places=[place.serialize for place in place_list])
Exemplo n.º 16
0
def category_items_json(category_id):
    item_list = db.get_items_in_category(category_id)
    category = db.get_cat(category_id)
    return jsonify(Category=category.name, Items=[item.serialize for item in item_list])