def taskupdate(): if 'userid' in session: user = User.query.get_or_404(session['userid']) if request.method == 'POST': updateform = TaskUpdateForm(request.form) if updateform.validate(): task = Task.query.get_or_404(updateform.taskid.data) if task.userid == user.id: # update fields task.title = updateform.title.data task.value = updateform.value.data #task.datedue = updateform.datedue.data db.session.commit() return redirect(url_for('tasks')) else: tasks = user.tasks.filter(Task.complete == False).order_by( desc(Task.dateadded)).all() return render_template('tasks.html', username=user.username, points=user.points, tasks=tasks, form=TaskForm(), idform=TaskIdForm(), updateform=updateform, containerclass="listcontainer") else: return redirect(url_for('tasks')) else: return redirect(url_for('front'))
def update_task(workspace, id, task_id): """Update task""" form = TaskUpdateForm(csrf_enabled=False, data=request.json) if form.validate(): task = Task.query.filter(Task.team == id, Task.id == task_id).first() update_obj_with_data(task, form.data) ret_task = conv_obj_to_dict(task) db.session.commit() return jsonify({"data": ret_task}) return jsonify({"errors": form.errors}), 400
def tasks(): if 'userid' in session: user = User.query.get_or_404(session['userid']) if request.method == 'POST': form = TaskForm(request.form) if form.validate(): newtask = Task(form.title.data, user, None, form.value.data) db.session.add(newtask) db.session.commit() return redirect(url_for('tasks')) else: tasks = user.tasks.filter(Task.complete == False).order_by( desc(Task.dateadded)).all() return render_template('tasks.html', username=user.username, points=user.points, tasks=tasks, form=form, idform=TaskIdForm(), updateform=TaskUpdateForm(), containerclass="listcontainer") else: tasks = user.tasks.filter(Task.complete == False).order_by( desc(Task.dateadded)).all() return render_template('tasks.html', username=user.username, points=user.points, tasks=tasks, form=TaskForm(), idform=TaskIdForm(), updateform=TaskUpdateForm(), containerclass="listcontainer") # if no session, display default home page. TODO: convert to splash page else: return redirect(url_for('front'))
async def update_task(request, task_id): errors = '' status_code = 200 form = TaskUpdateForm().load(request.json) if not form.errors: async with app.engine.acquire() as conn: query = await conn.execute( Tasks.select().where(Tasks.c.id == task_id)) task = await query.fetchone() if task: await conn.execute(Tasks.update().where(Tasks.c.id == task_id). \ values({k: v for k, v in form.data.items()})) await conn.connection.commit() else: errors = 'Not Found' status_code = 404 else: status_code = 400 errors = form.errors return response.json({'errors': errors}, status=status_code)