js-rest-aktionen #6

Merged
TorstenHettstedt merged 9 commits from js-rest-aktionen into master 2021-04-12 14:11:32 +02:00
Showing only changes of commit c711e0ae24 - Show all commits
+52 -3
View File
@@ -5,7 +5,9 @@
import wrenchIcon from '@iconify-icons/oi/wrench';
import checkIcon from '@iconify-icons/oi/check';
import xIcon from '@iconify-icons/oi/x';
import documentIcon from '@iconify-icons/oi/document';
let activeRecord = null;
let newRecord = false;
params = {
title: 'Einträge',
records: [],
@@ -50,6 +52,34 @@
console.log(err);
});
},
'add': record => {
console.log(record);
// noinspection JSUnresolvedVariable
fetch(env.API_URL + '/working-hours', {
method: 'POST',
mode: 'no-cors',
cache: 'no-cache',
credentials: 'same-origin',
headers: {
'Content-Type': 'application/json'
},
redirect: 'follow',
referrerPolicy: 'no-referrer',
body: JSON.stringify(record)
})
.then(res => {
if (!res.ok) {
throw new Error('Fail!');
}
})
.then(() => {
newRecord = false;
Records.browse();
})
.catch(err => {
console.log(err);
});
},
'update': (date, record) => {
console.log(record);
// noinspection JSUnresolvedVariable
@@ -71,7 +101,6 @@
}
})
.then(() => {
activeRecord = null;
Records.browse();
})
.catch(err => {
@@ -92,6 +121,17 @@
<h1>{title}</h1>
</header>
<article>
{#if params.isLoading === true}
<p>Loading...</p>
{:else}
<!--suppress HtmlUnknownTarget -->
<form action="/working-hours">
<fieldset>
<button on:click={() => {activeRecord = {}; newRecord = true}}>Neuer Eintrag
TorstenHettstedt marked this conversation as resolved Outdated
Outdated
Review

Es ist eine Überlegung wert, die einzelnen anonymen Funktionen zu einem Objekt zusammenzufassen.

Es ist eine Überlegung wert, die einzelnen anonymen Funktionen zu einem Objekt zusammenzufassen.
<IconifyIcon icon={documentIcon}/>
</button>
</fieldset>
</form>
<table>
<thead>
<tr>
@@ -114,6 +154,7 @@
{/each}
</tbody>
</table>
{/if}
</article>
</section>
{:else}
@@ -127,17 +168,25 @@
<fieldset name="record-data">
<div>
<label for="workingDay">Arbeitstag</label>
<input bind:value={activeRecord.workingDay} placeholder="Arbeitstag" type="date" id="workingDay">
<input bind:value={activeRecord.workingDay} placeholder="Arbeitstag" type="date"
TorstenHettstedt marked this conversation as resolved Outdated
Outdated
Review

Es sollte das aktuelle Datum als Defaultwert genommen werden.

Es sollte das aktuelle Datum als Defaultwert genommen werden.
Outdated
Review

Wird leider nicht unterstützt.

Wird leider nicht unterstützt.
id="workingDay">
</div>
<div>
<label for="workingTime">Arbeitszeit</label>
<input bind:value={activeRecord.workingTime} placeholder="Arbeitszeit" type="time" id="workingTime">
<input bind:value={activeRecord.workingTime} placeholder="Arbeitszeit" type="time"
TorstenHettstedt marked this conversation as resolved
Review

Es sollten auch die Sekunden eintragbar sein und der Defaultwert sollte '00:00:00' sein.

Es sollten auch die Sekunden eintragbar sein und der Defaultwert sollte '00:00:00' sein.
id="workingTime">
</div>
</fieldset>
<fieldset name="buttons">
{#if newRecord === true}
<button on:click={() => Records.add(activeRecord)}>Übernehmen
<IconifyIcon icon={checkIcon} color="green"/>
</button>
{:else}
<button on:click={() => Records.update(activeRecord.workingDay, activeRecord)}>Übernehmen
<IconifyIcon icon={checkIcon} color="green"/>
</button>
{/if}
<button on:click={() => Records.read(null)}>Abbrechen
TorstenHettstedt marked this conversation as resolved Outdated
Outdated
Review

Beim Abbrechen muss nicht alles neu geladen werden.

Beim Abbrechen muss nicht alles neu geladen werden.
<IconifyIcon icon={xIcon}/>
</button>