mirror of
https://github.com/TrentSPalmer/todo_app_flask.git
synced 2025-07-04 19:33:15 -07:00
initial commit
This commit is contained in:
72
app/tasks/tasks.py
Normal file
72
app/tasks/tasks.py
Normal file
@ -0,0 +1,72 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
from flask import Blueprint, redirect, url_for, render_template
|
||||
from flask_login import current_user
|
||||
from app.models import Category, Task
|
||||
from markdown import markdown
|
||||
|
||||
tsks = Blueprint(
|
||||
"tsks", __name__, template_folder="templates"
|
||||
)
|
||||
|
||||
|
||||
@tsks.route("/hidden-tasks/<int:category_id>")
|
||||
def hidden_tasks(category_id):
|
||||
category = Category.query.get(category_id)
|
||||
if current_user.is_anonymous or current_user.id != category.contributor_id:
|
||||
return(redirect(url_for('cats.index')))
|
||||
|
||||
tasks = Task.query.filter_by(
|
||||
catid=category_id,
|
||||
contributor_id=current_user.id,
|
||||
done=True
|
||||
).order_by(Task.priority.desc()).all()
|
||||
|
||||
for task in tasks:
|
||||
task.markup = markdown(task.content)
|
||||
task.href = url_for('taskaction.task_action', taskid=task.id)
|
||||
task.time = task.timestamp.strftime("%Y-%m-%d %H:%M")
|
||||
|
||||
nl = (
|
||||
('new', url_for('newtask.new_task', category_id=category_id)),
|
||||
('categories', url_for('cats.index')),
|
||||
('open', url_for('tsks.tasks', category_id=category_id))
|
||||
)
|
||||
return render_template(
|
||||
'tasks.html',
|
||||
title="Completed Tasks",
|
||||
navbar_links=nl,
|
||||
tasks=tasks,
|
||||
heading="{}:completed tasks".format(category.name)
|
||||
)
|
||||
|
||||
|
||||
@tsks.route("/tasks/<int:category_id>")
|
||||
def tasks(category_id):
|
||||
category = Category.query.get(category_id)
|
||||
if current_user.is_anonymous or current_user.id != category.contributor_id:
|
||||
return(redirect(url_for('cats.index')))
|
||||
|
||||
tasks = Task.query.filter_by(
|
||||
catid=category_id,
|
||||
contributor_id=current_user.id,
|
||||
done=False
|
||||
).order_by(Task.priority.desc()).all()
|
||||
|
||||
for task in tasks:
|
||||
task.markup = markdown(task.content)
|
||||
task.href = url_for('taskaction.task_action', taskid=task.id)
|
||||
task.time = task.timestamp.strftime("%Y-%m-%d %H:%M")
|
||||
|
||||
nl = (
|
||||
('new', url_for('newtask.new_task', category_id=category_id)),
|
||||
('categories', url_for('cats.index')),
|
||||
('done', url_for('tsks.hidden_tasks', category_id=category_id))
|
||||
)
|
||||
return render_template(
|
||||
'tasks.html',
|
||||
title="Tasks",
|
||||
navbar_links=nl,
|
||||
tasks=tasks,
|
||||
heading="{}:tasks".format(category.name)
|
||||
)
|
Reference in New Issue
Block a user