def delete_tag(): if not state.validate(): state.save('next', 'tags_all') return redirect(url_for('auth_logout')) json_id_data = request.json['tag_id'] if 'tag_id' in request.json else '' tag_id = int(json_id_data[4:]) if json_id_data.startswith('tag-') else -1 tag = Tag.query.filter((Tag.id == tag_id) & (Tag.account_id == current_user.id)).first() if tag: db.session.delete(tag) db.session.commit() return state.get_url_for_function()
def delete_task(): if not state.validate(): state.save('next', 'tasks_today') return redirect(url_for('auth_logout')) json_data = request.json['task_id'] task_id = int(json_data[5:]) if json_data.startswith('task-') else -1 task = Task.query.filter((Task.account_id == current_user.id) & (Task.id == task_id)).first() if task: db.session.delete(task) db.session.commit() return state.get_url_for_function()
def new_task(): if not state.validate(): state.save('next', 'tasks_today') return redirect(url_for('auth_logout')) form = TaskForm(request.form) if not form.validate(): return redirect(state.get_url_for_function()) form_desc = form.description.data list_id = func.url_function_to_int() tasklist_result = TaskList.query.filter(TaskList.id == list_id).first() if tasklist_result: last_task = Task.query.filter((Task.tasklist_id == list_id) & (Task.account_id == current_user.id) & (Task.is_completed == False)).order_by( desc(Task.order)).first() order = last_task.order + 1 if last_task else 1 created_task = Task(current_user.id, list_id, order, form_desc) db.session.add(created_task) db.session.commit() return redirect(state.get_url_for_function())
def move_task(): if not state.validate(): state.save('next', 'tasks_today') return redirect(url_for('auth_logout')) json_id_data = request.json['task_id'] json_list_data = request.json['list_id'] task_id = int(json_id_data[5:]) if json_id_data.startswith('task-') else -1 list_id = int( json_list_data[5:]) if json_list_data.startswith('move-') else -1 task = Task.query.filter(Task.id == task_id).first() tasklist = TaskList.query.filter(TaskList.id == list_id).first() if task and tasklist: task.tasklist_id = tasklist.id db.session.commit() return state.get_url_for_function()
def complete_task(): if not state.validate(): state.save('next', 'tasks_today') return redirect(url_for('auth_logout')) json_data = request.json['task_id'] task_id = int(json_data[5:]) if json_data.startswith('task-') else -1 task = Task.query.filter((Task.account_id == current_user.id) & (Task.id == task_id)).first() if task: list_id = func.url_function_to_int() task_count = Task.query.filter((Task.tasklist_id == list_id) & (Task.account_id == current_user.id) & (Task.is_completed == True)).count() task.is_completed = True task.order = task_count + 1 db.session.commit() return state.get_url_for_function()
def tags_edit(): if not state.validate(): state.save('next', 'tags_all') return redirect(url_for('auth_logout')) if request.method == "GET": state.save('url_function', 'tags_edit') tag_id_data = request.args.get("tag", default="", type=str) tag_id = tag_id_data[4:] if tag_id_data.startswith('tag-') else -1 tag_query = Tag.query.filter( (Tag.id == tag_id) & (Tag.account_id == current_user.id)).first() tag_form = TagForm() if tag_query: tag_form.name.data = tag_query.name return render_template('tags/tags_edit.html', form=tag_form, tag=tag_query) else: form = TagForm(request.form) if not form.validate(): return redirect(state.get_url_for_function()) form_name = form.name.data tag_id = request.args.get("tagId", default=-1, type=int) tag_query = Tag.query.filter( (Tag.id == tag_id) & (Tag.account_id == current_user.id)).first() print(tag_query) if tag_query: tag_query.name = form_name else: created_tag = Tag(current_user.id, form_name) db.session.add(created_tag) db.session.commit() return redirect(url_for('tags_all'))