Taches personnelles OK - partie Done à gérer
This commit is contained in:
parent
df14d389b1
commit
8531c141d7
38
src/app.py
38
src/app.py
@ -15,6 +15,7 @@ from random import choice
|
|||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
mktaskdir()
|
mktaskdir()
|
||||||
|
|
||||||
|
|
||||||
#Homepage, GET : getting the page. Maybe getting it with arguments generated by a button on the page, in which case we take it into account
|
#Homepage, GET : getting the page. Maybe getting it with arguments generated by a button on the page, in which case we take it into account
|
||||||
@app.route('/', methods=['GET'])
|
@app.route('/', methods=['GET'])
|
||||||
def render():
|
def render():
|
||||||
@ -31,13 +32,13 @@ def render():
|
|||||||
#...or using their preferred theme if do have one
|
#...or using their preferred theme if do have one
|
||||||
else:
|
else:
|
||||||
csslink = request.cookies.get('csslink')
|
csslink = request.cookies.get('csslink')
|
||||||
resp = make_response(render_template("homepage.html", ntodo = todotasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink))
|
resp = make_response(render_template("homepage.html", ntodo = todotasks(gettasks()), npers = personnaltasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink))
|
||||||
|
|
||||||
#Delete has been clicked
|
#Delete has been clicked
|
||||||
if request.args.get("delete") is not None:
|
if request.args.get("delete") is not None:
|
||||||
todelete = request.args.get("delete")
|
todelete = request.args.get("delete")
|
||||||
deltask(int(todelete))
|
deltask(int(todelete))
|
||||||
resp = make_response(render_template("homepage.html", ntodo = todotasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink))
|
resp = make_response(render_template("homepage.html", ntodo = todotasks(gettasks()), npers = personnaltasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink))
|
||||||
|
|
||||||
#Edit has been clicked
|
#Edit has been clicked
|
||||||
elif request.args.get("edit") is not None:
|
elif request.args.get("edit") is not None:
|
||||||
@ -70,9 +71,9 @@ def render():
|
|||||||
mytask = switchstatus(mytask)
|
mytask = switchstatus(mytask)
|
||||||
deltask(toswitch)
|
deltask(toswitch)
|
||||||
addtask(mytask)
|
addtask(mytask)
|
||||||
resp = make_response(render_template("homepage.html", ntodo = todotasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink))
|
resp = make_response(render_template("homepage.html", ntodo = todotasks(gettasks()), npers = personnaltasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink))
|
||||||
else:
|
else:
|
||||||
resp = make_response(render_template("homepage.html", ntodo = todotasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink))
|
resp = make_response(render_template("homepage.html", ntodo = todotasks(gettasks()), npers = personnaltasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink))
|
||||||
|
|
||||||
return resp
|
return resp
|
||||||
|
|
||||||
@ -88,17 +89,22 @@ def homepage():
|
|||||||
try:
|
try:
|
||||||
tasktitle = request.form['title']
|
tasktitle = request.form['title']
|
||||||
tasktext = request.form['text']
|
tasktext = request.form['text']
|
||||||
print("PING")
|
|
||||||
priority = request.form['priority']
|
priority = request.form['priority']
|
||||||
|
|
||||||
|
if "personnal" in request.form.keys():
|
||||||
|
personnal = True
|
||||||
|
else:
|
||||||
|
personnal = False
|
||||||
|
|
||||||
print(f"Got new task with prio {priority}")
|
print(f"Got new task with prio {priority}")
|
||||||
|
|
||||||
rightnow = int(time.time())
|
rightnow = int(time.time())
|
||||||
newtask = task(createtime=rightnow, modtime=rightnow, title=tasktitle, text=tasktext, done=False, priority=int(priority))
|
newtask = task(createtime=rightnow, modtime=rightnow, title=tasktitle, text=tasktext, done=False, priority=int(priority), personnal=False)
|
||||||
addtask(newtask)
|
addtask(newtask)
|
||||||
except:
|
except Exception as E:
|
||||||
|
print(f"!!!!!!!!!! {E} - {request.form}")
|
||||||
pass
|
pass
|
||||||
return render_template("homepage.html", ntodo = todotasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink)
|
return render_template("homepage.html", ntodo = todotasks(gettasks()), npers = personnaltasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink)
|
||||||
|
|
||||||
|
|
||||||
#Export mode
|
#Export mode
|
||||||
@ -126,7 +132,13 @@ def edit():
|
|||||||
todoselected = "selected"
|
todoselected = "selected"
|
||||||
doneselected = ""
|
doneselected = ""
|
||||||
|
|
||||||
return render_template("edit.html", tasknumber=tasknumber, ntitle=mytask.title, ntext=mytask.text, csslink = csslink, priority=mytask.priority, taskdonemark=mytask.donemark, todoselected=todoselected, doneselected=doneselected)
|
#Is it personnal ?
|
||||||
|
if mytask.personnal:
|
||||||
|
pers_checked = "checked"
|
||||||
|
else:
|
||||||
|
pers_checked = ""
|
||||||
|
|
||||||
|
return render_template("edit.html", tasknumber=tasknumber, ntitle=mytask.title, ntext=mytask.text, csslink = csslink, priority=mytask.priority, taskdonemark=mytask.donemark, todoselected=todoselected, doneselected=doneselected, pers_checked=pers_checked)
|
||||||
|
|
||||||
#Handling post
|
#Handling post
|
||||||
if request.method == "POST":
|
if request.method == "POST":
|
||||||
@ -141,11 +153,15 @@ def edit():
|
|||||||
taskdone = True
|
taskdone = True
|
||||||
else:
|
else:
|
||||||
taskdone = False
|
taskdone = False
|
||||||
|
if "personnal" in request.form.keys():
|
||||||
|
personnal = True
|
||||||
|
else:
|
||||||
|
personnal = False
|
||||||
deltask(tasknumber)
|
deltask(tasknumber)
|
||||||
rightnow = int(time.time())
|
rightnow = int(time.time())
|
||||||
newtask = task(createtime=tasknumber, modtime=rightnow, title=tasktitle, text=tasktext, done=taskdone, priority=taskpriority)
|
newtask = task(createtime=tasknumber, modtime=rightnow, title=tasktitle, text=tasktext, done=taskdone, priority=taskpriority, personnal = personnal)
|
||||||
addtask(newtask)
|
addtask(newtask)
|
||||||
return render_template("homepage.html", ntodo = todotasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink)
|
return render_template("homepage.html", ntodo = todotasks(gettasks()), npers = personnaltasks(gettasks()), ndone = donetasks(gettasks()), csslink = csslink)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
#CLASS
|
#CLASS
|
||||||
class task:
|
class task:
|
||||||
def __init__(self, createtime: int, modtime: int, title: str, text: str, done: bool, priority: int):
|
def __init__(self, createtime: int, modtime: int, title: str, text: str, done: bool, priority: int, personnal: bool = False):
|
||||||
"""
|
"""
|
||||||
createtime, modtime : epoch time of task writing / modfying
|
createtime, modtime : epoch time of task writing / modfying
|
||||||
title and text are str
|
title and text are str
|
||||||
@ -17,11 +17,15 @@ class task:
|
|||||||
self.title = title
|
self.title = title
|
||||||
self.text = text
|
self.text = text
|
||||||
self.priority = priority
|
self.priority = priority
|
||||||
|
self.personnal = personnal
|
||||||
|
|
||||||
if done:
|
if done:
|
||||||
self.donemark = "✅"
|
self.donemark = "✅"
|
||||||
else:
|
else:
|
||||||
self.donemark = "⚠️"
|
if personnal:
|
||||||
|
self.donemark = "🔒"
|
||||||
|
else:
|
||||||
|
self.donemark = "⚠️"
|
||||||
|
|
||||||
def rendertime(self, pretimestamp: int):
|
def rendertime(self, pretimestamp: int):
|
||||||
"""
|
"""
|
||||||
|
18
src/funcs.py
18
src/funcs.py
@ -146,6 +146,22 @@ def todotasks(tasklist):
|
|||||||
|
|
||||||
return finalstr
|
return finalstr
|
||||||
|
|
||||||
|
def personnaltasks(tasklist):
|
||||||
|
"""
|
||||||
|
Sorts tasks in tasklist: Gives todotasks sorted by priority
|
||||||
|
"""
|
||||||
|
buffer = []
|
||||||
|
finalstr = ""
|
||||||
|
for task in tasklist:
|
||||||
|
if task.donemark == "🔒":
|
||||||
|
buffer.append(task)
|
||||||
|
|
||||||
|
tasks = sorted(buffer, key=lambda task: task.priority, reverse=True)
|
||||||
|
for task in tasks:
|
||||||
|
finalstr += task.flaskrender()
|
||||||
|
|
||||||
|
return finalstr
|
||||||
|
|
||||||
def donetasks(tasklist):
|
def donetasks(tasklist):
|
||||||
"""
|
"""
|
||||||
Sorts tasks in tasklist: Gives done tasks sorted by modtime
|
Sorts tasks in tasklist: Gives done tasks sorted by modtime
|
||||||
@ -165,7 +181,7 @@ def donetasks(tasklist):
|
|||||||
def convertemoji():
|
def convertemoji():
|
||||||
tasks = gettasks()
|
tasks = gettasks()
|
||||||
for task in tasks:
|
for task in tasks:
|
||||||
if task.donemark not in ["⚠️", "✅"]:
|
if task.donemark not in ["⚠️", "✅", "🔒"]:
|
||||||
task.donemark = "⚠️"
|
task.donemark = "⚠️"
|
||||||
dumptasks(tasks)
|
dumptasks(tasks)
|
||||||
|
|
||||||
|
@ -20,6 +20,8 @@
|
|||||||
<option value="⚠️" {{ todoselected }}>⚠️</option>
|
<option value="⚠️" {{ todoselected }}>⚠️</option>
|
||||||
<option value="✅" {{ doneselected }}>✅</option>
|
<option value="✅" {{ doneselected }}>✅</option>
|
||||||
</select>
|
</select>
|
||||||
|
<label for="personnal">Private</label>
|
||||||
|
<input type="checkbox" name="personnal" id="personnal" {{ pers_checked }}><br>
|
||||||
<button type="submit" name="submit">OK</button>
|
<button type="submit" name="submit">OK</button>
|
||||||
<div class="tasktime">Note : you can drag the textbox to make it bigger.</div>
|
<div class="tasktime">Note : you can drag the textbox to make it bigger.</div>
|
||||||
</form>
|
</form>
|
||||||
|
@ -15,13 +15,23 @@
|
|||||||
<input type="text" name="title" class="title" placeholder="Title"><br>
|
<input type="text" name="title" class="title" placeholder="Title"><br>
|
||||||
<textarea type="text" name="text" rows = "5" cols = "60*" class="text" placeholder="Text"></textarea><br>
|
<textarea type="text" name="text" rows = "5" cols = "60*" class="text" placeholder="Text"></textarea><br>
|
||||||
<label for="priority">Priority</label>
|
<label for="priority">Priority</label>
|
||||||
<input type="number" name="priority" class="priorityinput" id="priority" min="0" max="10" value="5"><br>
|
<input type="number" name="priority" class="priorityinput" id="priority" min="0" max="10" value="5">
|
||||||
|
<label for="personnal">Private</label><input type="checkbox" name="personnal" id="personnal"><br>
|
||||||
<button type="submit" name="submit">Post</button>
|
<button type="submit" name="submit">Post</button>
|
||||||
<div class="tasktime">Note : you can drag the textbox to make it bigger. Scroll down to see your previous tasks.</div>
|
<div class="tasktime">Note : you can drag the textbox to make it bigger. Scroll down to see your previous tasks.</div>
|
||||||
</form>
|
</form>
|
||||||
<br>
|
<br>
|
||||||
<hr>
|
<hr>
|
||||||
<h2 class="separator">Todo</h2>
|
<h2 class="separator">Private</h2>
|
||||||
|
<hr>
|
||||||
|
<details>
|
||||||
|
<summary>Click to expand.</summary>
|
||||||
|
<p>
|
||||||
|
{{ npers }}
|
||||||
|
</p>
|
||||||
|
</details>
|
||||||
|
<hr>
|
||||||
|
<h2 class="separator">Work</h2>
|
||||||
<hr>
|
<hr>
|
||||||
<div class="globalcontainer">
|
<div class="globalcontainer">
|
||||||
{{ ntodo }}
|
{{ ntodo }}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user