css improvements

This commit is contained in:
2025-09-12 20:37:04 +02:00
parent 443fb2bd33
commit 5bda651669
3 changed files with 42 additions and 25 deletions

View File

@@ -11,6 +11,7 @@
import PermissionEditor from '../../Components/PermissionEditor.svelte'; import PermissionEditor from '../../Components/PermissionEditor.svelte';
import TagList from '../tags/TagList.svelte'; import TagList from '../tags/TagList.svelte';
let detail = $state(false);
let error = $state(null); let error = $state(null);
let { key, version } = $props(); let { key, version } = $props();
let page = $state(null); let page = $state(null);
@@ -95,6 +96,10 @@
router.navigate(`/wiki/${page.id}/view`); router.navigate(`/wiki/${page.id}/view`);
} }
function toggleDetail(){
detail = !detail;
}
async function updatePermission(uid, newPerm){ async function updatePermission(uid, newPerm){
let newMembers = JSON.parse(JSON.stringify(page.members)); let newMembers = JSON.parse(JSON.stringify(page.members));
newMembers[uid] = {permission:newPerm}; newMembers[uid] = {permission:newPerm};
@@ -107,21 +112,25 @@
<span class="error">{error}</span> <span class="error">{error}</span>
{/if} {/if}
{#if page} {#if page}
<span class="version">{t('version')}</span> <div class="wiki page">
{#each page.versions as v} <div class="versions">
<span class="version"> <span class="version">{t('version')}</span>
{#each page.versions as v}
<span class="version">
<a href={`/wiki/${page.id}/version/${v}`} {onclick} class={page.version == v?'selected':''}>{v}</a> &nbsp; <a href={`/wiki/${page.id}/version/${v}`} {onclick} class={page.version == v?'selected':''}>{v}</a> &nbsp;
</span> </span>
{/each} {/each}
<LineEditor value={page.title} type="h2" {editable} onSet={t => patchTitle(t)} /> </div>
{#if page.version != page.versions[0]} <LineEditor value={page.title} type="h2" {editable} onSet={t => patchTitle(t)} />
<span class="warn">{t('not_recent_version')}</span> {#if page.version != page.versions[0]}
{/if} <span class="warn">{t('not_recent_version')}</span>
<MarkdownEditor {editable} value={page.content} onSet={s => patch({content:s})} /> {/if}
{#if editable} <button onclick={toggleDetail} class="symbol" title={t('toggle_objects',{objects:t('users')})}></button>
<PermissionEditor members={page.members} {addMember} {dropMember} {getCandidates} {updatePermission} /> {#if detail}
{:else} {#if editable}
<table> <PermissionEditor members={page.members} {addMember} {dropMember} {getCandidates} {updatePermission} />
{:else}
<table>
<thead> <thead>
<tr> <tr>
<th>{t('user')}</th> <th>{t('user')}</th>
@@ -136,11 +145,14 @@
</tr> </tr>
{/each} {/each}
</tbody> </tbody>
</table> </table>
{/if} {/if}
<TagList module="wiki" id={page.id} user_list={Object.keys(page.members).map(id => +id)} /> {/if}
<div class="notes"> <MarkdownEditor {editable} value={page.content} onSet={s => patch({content:s})} />
<TagList module="wiki" id={page.id} user_list={Object.keys(page.members).map(id => +id)} />
<div class="notes">
<h3>{t('notes')}</h3> <h3>{t('notes')}</h3>
<Notes module="wiki" entity_id={page.id} /> <Notes module="wiki" entity_id={page.id} />
</div>
</div> </div>
{/if} {/if}

View File

@@ -248,6 +248,7 @@
"timetracking": "Zeiterfassung", "timetracking": "Zeiterfassung",
"title_not_available": "„{title}“ ist als Seitenname nicht mehr verfügbar!", "title_not_available": "„{title}“ ist als Seitenname nicht mehr verfügbar!",
"title_or_desc": "Titel/Beschreibung", "title_or_desc": "Titel/Beschreibung",
"toggle_objects": "{objects} an/ausschalten",
"tutorial": "Tutorial", "tutorial": "Tutorial",
"type": "Dokumententyp", "type": "Dokumententyp",
"type_confirmation": "Bestätigung", "type_confirmation": "Bestätigung",

View File

@@ -386,3 +386,7 @@ table{
border: 1px solid orange; border: 1px solid orange;
border-radius: 5px; border-radius: 5px;
} }
.wiki.page h2{
display: inline-block;
}