示例#1
0
def add_tag():
    '''
        application for adding a tag
    '''
    form = AddTagForm()
    if form.validate_on_submit():
        tag = request.form['tag']
        functions.add_tag(tag, session['id'])
        return redirect('/profile/')
    return render_template('add_tag.html',
                           form=form,
                           username=session['username'])
示例#2
0
def home(folder):
    print "hi"
    folderForm = AddFolderForm()
    picForm = UpdateMetadataForm()
    searchForm = SearchForm()
    tagForm = AddTagForm()
    addTagForm = AddTag2PicForm()
    moveForm = MoveFolderForm()
    batchForm = BatchUpdateForm()
    editFolderForm = EditFolderForm()
    editTagForm = EditTagForm()

    currentFolder = Tag.query.filter((Tag.name == folder)
                                     & (Tag.isFolder == True)).first_or_404()
    folder_hierarchy = Tag_Hierarchy.query.filter_by(
        node_id=currentFolder.id).order_by(Tag_Hierarchy.depth.desc()).all()
    folder_path = [
        Tag.query.filter_by(id=h.parent_id).first() for h in folder_hierarchy
    ]

    moveForm.all_folders.data = currentFolder

    if folderForm.submitFolder.data and folderForm.validate_on_submit():
        name = folderForm.name.data
        new_folder = Tag(name, isFolder=True)
        currentFolder.hierarchy(new_folder.id)

        return redirect(url_for('core.home', folder=folder))
    if tagForm.submitTag.data and tagForm.validate_on_submit():
        name = tagForm.name.data
        new_tag = Tag(name)

    tag_list = Tag.query.filter_by(isFolder=False).all()
    children = currentFolder.get_direct_children()
    pics = Pic.query.filter(Pic.tags.any(id=currentFolder.id)).order_by(
        Pic.name).all()

    return render_template('home.html',
                           editTagForm=editTagForm,
                           editFolderForm=editFolderForm,
                           batchForm=batchForm,
                           moveForm=moveForm,
                           addTagForm=addTagForm,
                           tagForm=tagForm,
                           searchForm=searchForm,
                           picForm=picForm,
                           folderForm=folderForm,
                           tag_list=tag_list,
                           folder_path=folder_path,
                           pics=pics,
                           folders=children)