Compare commits
4
Commits
0.7.0
...
5c15580738
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5c15580738 | ||
|
|
0a5e40d7cb | ||
|
|
ae7491f002 | ||
|
|
8296a2a281 |
@@ -45,22 +45,12 @@
|
|||||||
addEventListener('pushstate', track);
|
addEventListener('pushstate', track);
|
||||||
addEventListener('popstate', track);
|
addEventListener('popstate', track);
|
||||||
|
|
||||||
|
|
||||||
let r = {
|
|
||||||
"workingDay": "2020-01-15",
|
|
||||||
"workingTime": "09:00:00"
|
|
||||||
};
|
|
||||||
let records = {
|
|
||||||
"title" : "Einträge",
|
|
||||||
"records" : [r, r]
|
|
||||||
};
|
|
||||||
|
|
||||||
const router = Navaid('/')
|
const router = Navaid('/')
|
||||||
.on('/', () => run(import('../routes/Home.svelte')))
|
.on('/', () => run(import('../routes/Home.svelte')))
|
||||||
.on('/views/weekly', () => run(import('../routes/WeeklyViews.svelte')))
|
.on('/views/weekly', () => run(import('../routes/WeeklyViews.svelte')))
|
||||||
.on('/views/monthly', () => run(import('../routes/MonthlyViews.svelte')))
|
.on('/views/monthly', () => run(import('../routes/MonthlyViews.svelte')))
|
||||||
.on('/views/yearly', () => run(import('../routes/YearlyViews.svelte')))
|
.on('/views/yearly', () => run(import('../routes/YearlyViews.svelte')))
|
||||||
.on('/working-hours', () => run(import('../routes/WorkingHours.svelte'), records))
|
.on('/working-hours', () => run(import('../routes/WorkingHours.svelte')))
|
||||||
.listen();
|
.listen();
|
||||||
|
|
||||||
onDestroy(router.unlisten);
|
onDestroy(router.unlisten);
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
return res.json();
|
return res.json();
|
||||||
})
|
})
|
||||||
.then(data => {
|
.then(data => {
|
||||||
activeRecord = null;
|
Controller.cancelActiveRecord();
|
||||||
params.records = data;
|
params.records = data;
|
||||||
params.isLoading = false;
|
params.isLoading = false;
|
||||||
})
|
})
|
||||||
@@ -45,7 +45,7 @@
|
|||||||
.then(data => {
|
.then(data => {
|
||||||
activeRecord = data;
|
activeRecord = data;
|
||||||
if (date === null) {
|
if (date === null) {
|
||||||
Records.browse();
|
Controller.listRecords();
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
.catch(err => {
|
.catch(err => {
|
||||||
@@ -73,8 +73,7 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
.then(() => {
|
.then(() => {
|
||||||
newRecord = false;
|
Controller.listRecords();
|
||||||
Records.browse();
|
|
||||||
})
|
})
|
||||||
.catch(err => {
|
.catch(err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
@@ -101,14 +100,39 @@
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
.then(() => {
|
.then(() => {
|
||||||
Records.browse();
|
Controller.listRecords();
|
||||||
})
|
})
|
||||||
.catch(err => {
|
.catch(err => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
Records.browse();
|
const Controller = {
|
||||||
|
'listRecords': () => {
|
||||||
|
Controller.cancelActiveRecord();
|
||||||
|
Records.browse();
|
||||||
|
},
|
||||||
|
'newRecord': () => {
|
||||||
|
activeRecord = {workingTime: '00:00:00'};
|
||||||
|
newRecord = true;
|
||||||
|
},
|
||||||
|
'saveRecord': () => {
|
||||||
|
if (newRecord === true) {
|
||||||
|
Records.add(activeRecord);
|
||||||
|
} else {
|
||||||
|
Records.update(activeRecord.workingDay, activeRecord);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'selectActiveRecord': record => Records.read(record.workingDay),
|
||||||
|
'cancelActiveRecord': () => {
|
||||||
|
activeRecord = null;
|
||||||
|
newRecord = false;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
const initSite = () => {
|
||||||
|
Controller.listRecords()
|
||||||
|
};
|
||||||
|
initSite()
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<svelte:head>
|
<svelte:head>
|
||||||
@@ -127,7 +151,7 @@
|
|||||||
<!--suppress HtmlUnknownTarget -->
|
<!--suppress HtmlUnknownTarget -->
|
||||||
<form action="/working-hours">
|
<form action="/working-hours">
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<button on:click={() => {activeRecord = {}; newRecord = true}}>Neuer Eintrag
|
<button on:click={Controller.newRecord}>Neuer Eintrag
|
||||||
<IconifyIcon icon={documentIcon}/>
|
<IconifyIcon icon={documentIcon}/>
|
||||||
</button>
|
</button>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
@@ -146,7 +170,7 @@
|
|||||||
<td>{record.workingDay}</td>
|
<td>{record.workingDay}</td>
|
||||||
<td>{record.workingTime}</td>
|
<td>{record.workingTime}</td>
|
||||||
<td>
|
<td>
|
||||||
<button on:click={() => Records.read(record.workingDay)}>Bearbeiten
|
<button on:click={() => Controller.selectActiveRecord(record)}>Bearbeiten
|
||||||
<IconifyIcon icon={wrenchIcon}/>
|
<IconifyIcon icon={wrenchIcon}/>
|
||||||
</button>
|
</button>
|
||||||
</td>
|
</td>
|
||||||
@@ -168,26 +192,20 @@
|
|||||||
<fieldset name="record-data">
|
<fieldset name="record-data">
|
||||||
<div>
|
<div>
|
||||||
<label for="workingDay">Arbeitstag</label>
|
<label for="workingDay">Arbeitstag</label>
|
||||||
<input bind:value={activeRecord.workingDay} placeholder="Arbeitstag" type="date"
|
<input bind:value={activeRecord.workingDay} type="date"
|
||||||
id="workingDay">
|
id="workingDay" required pattern="\d{4}-\d{2}-\d{2}">
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<label for="workingTime">Arbeitszeit</label>
|
<label for="workingTime">Arbeitszeit</label>
|
||||||
<input bind:value={activeRecord.workingTime} placeholder="Arbeitszeit" type="time"
|
<input bind:value={activeRecord.workingTime} placeholder="Arbeitszeit" type="time"
|
||||||
id="workingTime">
|
id="workingTime" required pattern="[0-5]\d:[0-5]\d:[0-5]\d">
|
||||||
</div>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
<fieldset name="buttons">
|
<fieldset name="buttons">
|
||||||
{#if newRecord === true}
|
<button on:click={Controller.saveRecord}>Übernehmen
|
||||||
<button on:click={() => Records.add(activeRecord)}>Übernehmen
|
<IconifyIcon icon={checkIcon} color="green"/>
|
||||||
<IconifyIcon icon={checkIcon} color="green"/>
|
</button>
|
||||||
</button>
|
<button on:click={Controller.cancelActiveRecord}>Abbrechen
|
||||||
{:else}
|
|
||||||
<button on:click={() => Records.update(activeRecord.workingDay, activeRecord)}>Übernehmen
|
|
||||||
<IconifyIcon icon={checkIcon} color="green"/>
|
|
||||||
</button>
|
|
||||||
{/if}
|
|
||||||
<button on:click={() => Records.read(null)}>Abbrechen
|
|
||||||
<IconifyIcon icon={xIcon}/>
|
<IconifyIcon icon={xIcon}/>
|
||||||
</button>
|
</button>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|||||||
Reference in New Issue
Block a user