def create_task_view(): goals = get_goals(owner=current_user.id, include_top_level=False) if len(goals["basic"]) == 0: flash("No goals exist. Create a goal before creating tasks!", "danger") return redirect(url_for("create_goal")) form = CreateTaskForm(request.form) form.associated_goal.choices = goals["display"] if request.method == "POST" and form.validate(): associated_goal_name = None for goal in goals["basic"]: if form.associated_goal.data == goal[0]: associated_goal_name = goal[1] break if associated_goal_name is None: # Should only happen if a page was left open long enough for # the location to be deleted in a separate session flash("Associated goal not found, cannot create task.", "danger") return redirect(url_for("create_task")) new_task = Task.create( name=form.task_name.data, associated_goal_id=form.associated_goal.data, owner_id=current_user.id ) if new_task is None: flash("Task %s already exists under %s!" % (form.task_name.data, associated_goal_name), "danger") return redirect(url_for("create_task")) else: flash("Task %s created under %s!" % (form.task_name.data, associated_goal_name), "success") return redirect(url_for("home")) else: return render_turkey("task.html", form=form)
def create_task_view(): goals = get_goals(owner=current_user.id, include_top_level=False) if len(goals['basic']) == 0: flash( 'No goals exist. Create a goal before creating tasks!', 'danger', ) return redirect(url_for('create_goal')) form = CreateTaskForm(request.form) form.associated_goal.choices = goals['display'] if request.method == 'POST' and form.validate(): associated_goal_name = None for goal in goals['basic']: if form.associated_goal.data == goal[0]: associated_goal_name = goal[1] break if associated_goal_name is None: # Should only happen if a page was left open long enough for # the location to be deleted in a separate session flash( 'Associated goal not found, cannot create task.', 'danger', ) return redirect(url_for('create_task')) new_task = Task.create( name=form.task_name.data, associated_goal_id=form.associated_goal.data, owner_id=current_user.id, ) if new_task is None: flash( 'Task %s already exists under %s!' % ( form.task_name.data, associated_goal_name, ), 'danger', ) return redirect(url_for('create_task')) else: flash( 'Task %s created under %s!' % ( form.task_name.data, associated_goal_name, ), 'success', ) return redirect(url_for('home')) else: return render_turkey("task.html", form=form)
def create_goal_view(): goals = get_goals(owner=current_user.id) form = GoalForm(request.form) form.parent_goal.choices = goals['display'] if request.method == 'POST' and form.validate(): parent_goal_name = None for goal in goals['basic']: if form.parent_goal.data == goal[0]: parent_goal_name = goal[1] break if parent_goal_name is None: # Should only happen if a page was left open long enough for # the location to be deleted in a separate session flash( 'Parent goal not found, cannot create goal.', 'danger', ) return redirect(url_for('create_goal')) new_goal = Goal.create( name=form.goal_name.data, parent_goal_id=form.parent_goal.data, owner_id=current_user.id, ) if new_goal is None: flash( 'Goal %s already exists under %s!' % ( form.goal_name.data, parent_goal_name, ), 'danger', ) return redirect(url_for('create_goal')) else: flash( 'Goal %s created under %s!' % ( form.goal_name.data, parent_goal_name, ), 'success', ) return redirect(url_for('home')) else: return render_turkey("goal.html", form=form)