home · contact · privacy
Improve todo accounting script.
[misc] / todo_templates / task.html
1 {% extends 'base.html' %}
2
3 {% block css %}
4 th { padding-right: 1em; }
5 {% endblock %}
6
7 {% block content %}
8 <h3>edit task</h3>
9
10 <form id="form_to_watch" action="task" method="POST">
11 <input type="hidden" name="task_id" value="{{ task.id_ }}" />
12 <input type="hidden" name="return_to" value="{{ return_to }}" />
13 <table>
14
15 <tr>
16 <th>title</th>
17 <td class="input">
18 <input name="title" type="text" value="{{ task.title.now|e }}" size=100 />
19 <details>
20 <summary>history</summary>
21 <ul>
22 {% for k,v in task.title.history.items() | sort(attribute='0', reverse=True) %}
23 <li>{{ k }}: {{ v|e }}
24 {% endfor %}
25 </ul>
26 </details>
27 </td>
28 </tr>
29
30 <tr>
31 <th>comment</th>
32 <td class="input">
33 <textarea name="comment" cols=100>{{task.comment|e}}</textarea>
34 </td>
35 </tr>
36
37 <tr>
38 <th>default effort</th>
39 <td class="input">
40 {% if task.subtasks %}
41 {{ task.default_effort.now }}
42 {% else %}
43 <input type="number" name="default_effort" value="{{ task.default_effort.now }}" step=0.1 size=8 required />
44 <details>
45 <summary>history</summary>
46 <ul>
47 {% for k,v in task.default_effort.history.items() | sort(attribute='0', reverse=True) %}
48 <li>{{ k }}: {{ v|e }}
49 {% endfor %}
50 </ul>
51 </details>
52 {% endif %}
53 </td>
54 </tr>
55
56 <tr>
57 <th>tags</th>
58 <td>
59 {% for tag in tags | sort %}
60 <input type="checkbox" name="tag_{{tag|e}}"{% if tag in task.tags.now %} checked{% endif %}/> {{ tag }}
61 <br />
62 {% endfor %}
63 add: <input name="joined_tags" type="text" value="" size=100>
64 <br />
65 <details>
66 <summary>history</summary>
67 <ul>
68 {% for k,v in task.tags.history.items() | sort(attribute='0', reverse=True) %}
69 <li>{{ k }}: {{ v|e }}
70 {% endfor %}
71 </ul>
72 </details>
73 </td>
74 </tr>
75
76 <tr>
77 <th>children</th>
78 <td>
79 <table>
80
81 {% for subtask in task.subtasks %}
82 <tr>
83 <td>
84 <input name="subtask" type="checkbox" value="{{subtask.id_}}" checked/>
85 </td>
86 <td>
87 <a href="task?id={{subtask.id_}}">{{subtask.title.now}}</a>
88 </td>
89 </tr>
90 {% endfor %}
91
92 <tr>
93 <th colspan=2>---</th>
94 </tr>
95
96 {% for subtask in filtered_tasks %}
97 <tr>
98 <td>
99 <input name="subtask" type="checkbox" value="{{subtask.id_}}"/>
100 </td>
101 <td>
102 <a href="task?id={{subtask.id_}}">{{subtask.title.now}}</a>
103 </td>
104 </tr>
105 {% endfor %}
106
107 </table>
108 </td>
109 </tr>
110
111 </table>
112 <input class="update" type="submit" name="update" value="update" />
113 <hr />
114 {% include 'tagfilters.html' %}
115 <br />
116 search: <input name="search" value="{{search|e}}" />
117 <input type="submit" name="filter" value="filter" />
118 </form>
119
120 {% include 'watch_form.html' %}
121 <script>
122 mere_filter_inputs = mere_filter_inputs.concat(['search']);
123 </script> 
124 {% endblock %}