diff --git a/frontend/src/Components/MarkdownEditor.svelte b/frontend/src/Components/MarkdownEditor.svelte
index 429744b0..53eea6c5 100644
--- a/frontend/src/Components/MarkdownEditor.svelte
+++ b/frontend/src/Components/MarkdownEditor.svelte
@@ -6,6 +6,7 @@
let {
editable = true,
onclick = evt => {},
+ onRender = src => {},
onSet = newVal => {return true;},
simple = false,
type = 'div',
@@ -50,6 +51,7 @@
body : editValue.source
});
editValue.rendered = await resp.text();
+ onRender(editValue.source);
}
function typed(ev){
@@ -118,4 +120,4 @@
{:else}
{@html target(value.rendered)}
{/if}
-
\ No newline at end of file
+
diff --git a/frontend/src/routes/task/Add.svelte b/frontend/src/routes/task/Add.svelte
index 05f89b30..3931497f 100644
--- a/frontend/src/routes/task/Add.svelte
+++ b/frontend/src/routes/task/Add.svelte
@@ -16,8 +16,8 @@
let extendedSettings = $state(false);
let parent_task = $state(null);
let task = $state({
- name : '',
- description : { source : '', rendered : '' },
+ name : localStorage.getItem('task.name'),
+ description : { source : localStorage.getItem('task.markdown'), rendered : '' },
due_date : null,
est_time : null,
members : {},
@@ -42,6 +42,14 @@
/// TODO: ?
}
+ async function getCandidates(text){
+ const origin = parent_task ? parent_task.members : project.members;
+ const candidates = Object.values(origin)
+ .filter(member => member.user.name.toLowerCase().includes(text.toLowerCase()))
+ .map(member => [member.user.id,member.user.name]);
+ return Object.fromEntries(candidates);
+ }
+
async function load(){
if (parent_task_id) await loadParent();
if (project_id) loadProject();
@@ -87,16 +95,7 @@
}
}
- async function getCandidates(text){
- const origin = parent_task ? parent_task.members : project.members;
- const candidates = Object.values(origin)
- .filter(member => member.user.name.toLowerCase().includes(text.toLowerCase()))
- .map(member => [member.user.id,member.user.name]);
- return Object.fromEntries(candidates);
- }
-
-
- function onkeydown(e){
+ function onkeydown(e){
if (e.ctrlKey && e.keyCode === 83) {
e.preventDefault();
saveTask();
@@ -111,6 +110,8 @@
body : JSON.stringify(task)
});
if (resp.ok) {
+ localStorage.removeItem('task.markdown');
+ localStorage.removeItem('task.name');
if (!assignee) { // if assignee is set, this form was opened within an external context. hence we don`t want to navigate somewhere else!
task = await resp.json();
if (task.parent_task_id){
@@ -123,6 +124,12 @@
}
}
+ function storeSource(markdown){
+ if (markdown) localStorage.setItem('task.markdown',markdown);
+ localStorage.setItem('task.name',task.name);
+ }
+
+
function toggleSettings(){
extendedSettings = !extendedSettings;
}
@@ -172,7 +179,7 @@
{t('description')}
-
+
|