def edit_task(name,goal,strategy,task): P=models.Projects.query.all() project=models.Projects.query.filter_by(id=name).first() pgoal=models.Goals.query.filter_by(id=goal).first() pstrat=models.Strategies.query.filter_by(id=strategy).first() ptask=models.Tasks.query.filter_by(id=task).first() delete_form=DeleteRow_form() form = task_form(obj=ptask) form.populate_obj(ptask) form.deadline.data = ptask.deadline.strftime("%m/%d/%Y") tform=task_form(request.values) if request.method == 'POST' and form.validate_on_submit(): #if it changed from True to false, set complete date to None # import pdb;pdb.set_trace() if get_history(ptask, 'complete')[0]==[True] and get_history(ptask, 'complete')[2]==[False]: print 'changed from false to true' ptask.completeDate=datetime.datetime.utcnow() if get_history(ptask, 'complete')[0]==[False] and get_history(ptask, 'complete')[2]==[True]: print 'changed from true to false' ptask.completeDate=None else: if get_history(ptask, 'complete')[0]==[True] and get_history(ptask, 'complete')[2]==[None]: ptask.complete=True ptask.completeDate=None db.session.commit() return redirect(url_for('task_outline',name=name,goal=goal,strategy=strategy)) if delete_form.validate_on_submit(): db.session.delete(ptask) db.session.commit() return redirect(url_for('task_outline',name=name,goal=goal,strategy=strategy)) return render_template('edit_task.html', tform=tform,form=form,project=project,pgoal=pgoal,pstrat=pstrat,ptask=ptask,delete_form=delete_form,P=P)
def edit_task(name, goal, strategy, task): project = models.Projects.query.filter_by(id=name).first() pgoal = models.Goals.query.filter_by(id=goal).first() pstrat = models.Strategies.query.filter_by(id=strategy).first() ptask = models.Tasks.query.filter_by(id=task).first() form = task_form(obj=ptask) form.populate_obj(ptask) form.deadline.data = ptask.deadline.strftime("%m/%d/%Y") tform = task_form(request.values) if request.method == "POST" and form.validate_on_submit(): # if it changed from True to false, set complete date to None if get_history(ptask, "complete")[0] == [True] and get_history(ptask, "complete")[2] == [False]: print "changed from false to true" ptask.completeDate = datetime.datetime.utcnow() if get_history(ptask, "complete")[0] == [False] and get_history(ptask, "complete")[2] == [True]: print "changed from true to false" ptask.completeDate = None # task=tform.task.data # strat=pstrat # note = tform.note.data # staff=tform.staff.data # deadline=tform.deadline.data # complete=tform.complete.data # created=datetime.datetime.utcnow() db.session.commit() return redirect(url_for("task_outline", name=name, goal=goal, strategy=strategy)) return render_template( "edit_task.html", tform=tform, form=form, project=project, pgoal=pgoal, pstrat=pstrat, ptask=ptask )
def task_outline(name,goal,strategy): P=models.Projects.query.all() project=models.Projects.query.filter_by(id=name).first() pgoal=models.Goals.query.filter_by(id=goal).first() pstrat=models.Strategies.query.filter_by(id=strategy).first() # T=(pstrat.tasks.order_by(pstrat.tasks.Order)).all() T=pstrat.tasks.all() tform=task_form(request.values) if request.method == 'POST': if tform.validate() == False: flash('Failed Field validation.') flash_errors(tform) return redirect(url_for('task_outline',name=name,goal=goal,strategy=strategy)) else: if tform.complete.data == True: completeDate=datetime.datetime.utcnow() print completeDate p=models.Tasks(task=tform.task.data,strat=pstrat,note = tform.note.data,staff=tform.staff.data,deadline=tform.deadline.data,complete=tform.complete.data,created=datetime.datetime.utcnow(), completeDate=completeDate) else: p=models.Tasks(task=tform.task.data,strat=pstrat,note = tform.note.data,staff=tform.staff.data,deadline=tform.deadline.data,complete=tform.complete.data,created=datetime.datetime.utcnow()) db.session.add(p) db.session.commit() return redirect(url_for('task_outline',name=name,goal=goal,strategy=strategy)) return render_template("index_for_task.html",project=project,T=T,tform=tform,pstrat=pstrat,pgoal=pgoal,P=P)
def index(): pform=project_form() tform=task_form() sform=strategy_form() gform=goal_form() P=models.Projects.query.all() if gform.validate_on_submit(): u=models.Projects.query.get(1) p=models.Goals(goal=gform.goal.data,proj=u) db.session.add(p) db.session.commit() return redirect(url_for('index')) return render_template("baseindex.html",pform=pform,gform=gform,tform=tform,sform=sform,P=P)