Allow add/edit domains for most providers

This commit is contained in:
Johannes Zellner
2025-01-29 16:29:21 +01:00
parent 60140087a5
commit d12e8cbe97
3 changed files with 219 additions and 50 deletions
+11 -6
View File
@@ -72,7 +72,10 @@ async function onRemove(domain) {
if (!yes) return;
const [error] = await domainsModel.remove(domain.domain);
if (error) return console.error(error);
if (error) {
if (error.status === 409) window.pankow.notify({ text: `Domain ${domain} is still in use.`, type: 'danger', persistent: true });
return console.error(error);
}
await refreshDomains();
}
@@ -125,7 +128,7 @@ onMounted(async () => {
<template>
<div class="content">
<InputDialog ref="inputDialog" />
<DomainDialog ref="domainDialog" />
<DomainDialog ref="domainDialog" @success="refreshDomains()"/>
<Section :title="$t('domains.title')">
<template #header-buttons>
@@ -133,16 +136,18 @@ onMounted(async () => {
<Button @click="onAdd()" icon="fa-solid fa-plus"> {{ $t('domains.addDomain') }}</Button>
</template>
<TableView :model="filteredDomains" :columns="columns" style="max-height: 900px;">
<p>{{ $t('domains.domainDialog.addDescription') }}</p>
<TableView :model="filteredDomains" :columns="columns" style="max-height: 900px;" @row-click="onEdit">
<template #provider="domain">
{{ prettyProviderName(domain) }}
</template>
<template #actions="domain">
<div class="table-actions">
<ButtonGroup>
<Button tool small secondary @click="onEditWellKnown(domain)" v-tooltip="$t('domains.tooltipWellKnown')" icon="fa-solid fa-atlas" />
<Button tool small secondary @click="onEdit(domain)" v-tooltip="$t('domains.tooltipEdit')" icon="fa-solid fa-pencil-alt" />
<Button tool small danger @click="onRemove(domain)" v-tooltip="$t('domains.tooltipRemove')" :disabled="domain.domain === dashboardDomain" icon="fa-solid fa-trash-alt" />
<Button tool small secondary @click.stop="onEditWellKnown(domain)" v-tooltip="$t('domains.tooltipWellKnown')" icon="fa-solid fa-atlas" />
<Button tool small secondary @click.stop="onEdit(domain)" v-tooltip="$t('domains.tooltipEdit')" icon="fa-solid fa-pencil-alt" />
<Button tool small danger @click.stop="onRemove(domain)" v-tooltip="$t('domains.tooltipRemove')" :disabled="domain.domain === dashboardDomain" icon="fa-solid fa-trash-alt" />
</ButtonGroup>
</div>
</template>