mirror of
https://github.com/1f349/admin.1f349.com.git
synced 2025-02-22 13:34:57 +00:00
Fix domains page not changing domain properly
This commit is contained in:
parent
c4bc0fb0e3
commit
f07172876a
@ -17,6 +17,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
let editPopup: boolean = false;
|
let editPopup: boolean = false;
|
||||||
|
export let locked: boolean = false;
|
||||||
|
|
||||||
function save() {
|
function save() {
|
||||||
value.update(editItem);
|
value.update(editItem);
|
||||||
@ -28,14 +29,16 @@
|
|||||||
<td class="code-font">{value.data.Ns}</td>
|
<td class="code-font">{value.data.Ns}</td>
|
||||||
<td class="code-font">{value.data.Hdr.Ttl}</td>
|
<td class="code-font">{value.data.Hdr.Ttl}</td>
|
||||||
<td>
|
<td>
|
||||||
<ActionMenu
|
{#if !locked}
|
||||||
data={value}
|
<ActionMenu
|
||||||
edit={() => {
|
data={value}
|
||||||
editItem = JSON.parse(JSON.stringify(value.data));
|
edit={() => {
|
||||||
editPopup = true;
|
editItem = JSON.parse(JSON.stringify(value.data));
|
||||||
}}
|
editPopup = true;
|
||||||
remove={() => value.remove()}
|
}}
|
||||||
/>
|
remove={() => value.remove()}
|
||||||
|
/>
|
||||||
|
{/if}
|
||||||
|
|
||||||
<ActionPopup name="Edit SOA Record" bind:show={editPopup} on:save={save}>
|
<ActionPopup name="Edit SOA Record" bind:show={editPopup} on:save={save}>
|
||||||
<NsCreate bind:editItem editMode={true} />
|
<NsCreate bind:editItem editMode={true} />
|
||||||
|
@ -22,6 +22,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
let editPopup: boolean = false;
|
let editPopup: boolean = false;
|
||||||
|
export let locked: boolean = false;
|
||||||
|
|
||||||
function save() {
|
function save() {
|
||||||
value.update(editItem);
|
value.update(editItem);
|
||||||
@ -36,14 +37,16 @@
|
|||||||
<td class="code-font">{value.data.Retry}</td>
|
<td class="code-font">{value.data.Retry}</td>
|
||||||
<td class="code-font">{value.data.Expire}</td>
|
<td class="code-font">{value.data.Expire}</td>
|
||||||
<td>
|
<td>
|
||||||
<ActionMenu
|
{#if !locked}
|
||||||
data={value}
|
<ActionMenu
|
||||||
edit={() => {
|
data={value}
|
||||||
editItem = JSON.parse(JSON.stringify(value.data));
|
edit={() => {
|
||||||
editPopup = true;
|
editItem = JSON.parse(JSON.stringify(value.data));
|
||||||
}}
|
editPopup = true;
|
||||||
remove={() => value.remove()}
|
}}
|
||||||
/>
|
remove={() => value.remove()}
|
||||||
|
/>
|
||||||
|
{/if}
|
||||||
|
|
||||||
<ActionPopup name="Edit SOA Record" bind:show={editPopup} on:save={save}>
|
<ActionPopup name="Edit SOA Record" bind:show={editPopup} on:save={save}>
|
||||||
<div>Name</div>
|
<div>Name</div>
|
||||||
|
@ -49,6 +49,7 @@
|
|||||||
import CnameCreate from "../components/create-domains/CnameCreate.svelte";
|
import CnameCreate from "../components/create-domains/CnameCreate.svelte";
|
||||||
import CaaCreate from "../components/create-domains/CaaCreate.svelte";
|
import CaaCreate from "../components/create-domains/CaaCreate.svelte";
|
||||||
import TxtCreate from "../components/create-domains/TxtCreate.svelte";
|
import TxtCreate from "../components/create-domains/TxtCreate.svelte";
|
||||||
|
import PromiseTable from "../components/PromiseTable.svelte";
|
||||||
|
|
||||||
const apiAzalea = import.meta.env.VITE_API_AZALEA;
|
const apiAzalea = import.meta.env.VITE_API_AZALEA;
|
||||||
|
|
||||||
@ -89,39 +90,31 @@
|
|||||||
return domain + ".";
|
return domain + ".";
|
||||||
}
|
}
|
||||||
|
|
||||||
let soaRecords: SoaRecord[] = [
|
let domainTitle: string = "";
|
||||||
{
|
$: (domainTitle = table.rows.length === 0 ? "Unknown" : getTitleDomain(table.rows[0].data.Hdr.Name)), $table;
|
||||||
Hdr: {
|
let zoneFileUrl: string;
|
||||||
Name: "example.com.",
|
zoneFileUrl = domainTitle ? `${import.meta.env.VITE_API_AZALEA}/domains/${domainTitle}/zone-file` : "";
|
||||||
Rrtype: DnsTypeSOA,
|
|
||||||
Class: 1,
|
|
||||||
Ttl: 300,
|
|
||||||
},
|
|
||||||
Ns: "ns1.example.com.",
|
|
||||||
Mbox: "postmaster.example.com.",
|
|
||||||
Serial: 0,
|
|
||||||
Refresh: 0,
|
|
||||||
Retry: 0,
|
|
||||||
Expire: 0,
|
|
||||||
Minttl: 0,
|
|
||||||
},
|
|
||||||
];
|
|
||||||
let domainTitle: string = getTitleDomain(soaRecords[0].Hdr.Name);
|
|
||||||
let zoneFileUrl: string = `${import.meta.env.VITE_API_AZALEA}/domains/${domainTitle}/zone-file`;
|
|
||||||
|
|
||||||
let recordTypes = [
|
let recordTypes = [
|
||||||
{
|
{
|
||||||
name: "SOA",
|
name: "SOA",
|
||||||
headers: ["Primary Domain", "Email", "Default TTL", "Refresh Rate", "Retry Rate", "Expire Time"],
|
headers: ["Primary Domain", "Email", "Default TTL", "Refresh Rate", "Retry Rate", "Expire Time"],
|
||||||
|
locked: true,
|
||||||
filter: isSoaRecord,
|
filter: isSoaRecord,
|
||||||
render: SoaRow,
|
render: SoaRow,
|
||||||
create: null,
|
create: null,
|
||||||
save: null,
|
save: null,
|
||||||
empty: null,
|
empty: null,
|
||||||
|
convert: (t: SoaRecord): ApiRecordFormat => ({
|
||||||
|
name: t.Hdr.Name,
|
||||||
|
type: t.Hdr.Rrtype,
|
||||||
|
value: "",
|
||||||
|
}),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "NS",
|
name: "NS",
|
||||||
headers: ["Subdomain", "Name Server", "TTL"],
|
headers: ["Subdomain", "Name Server", "TTL"],
|
||||||
|
locked: true,
|
||||||
filter: isNsRecord,
|
filter: isNsRecord,
|
||||||
render: NsRow,
|
render: NsRow,
|
||||||
create: NsCreate,
|
create: NsCreate,
|
||||||
@ -143,6 +136,7 @@
|
|||||||
{
|
{
|
||||||
name: "MX",
|
name: "MX",
|
||||||
headers: ["Mail Server", "Preference", "Subdomain", "TTL"],
|
headers: ["Mail Server", "Preference", "Subdomain", "TTL"],
|
||||||
|
locked: false,
|
||||||
filter: isMxRecord,
|
filter: isMxRecord,
|
||||||
render: MxRow,
|
render: MxRow,
|
||||||
create: MxCreate,
|
create: MxCreate,
|
||||||
@ -168,6 +162,7 @@
|
|||||||
{
|
{
|
||||||
name: "A/AAAA",
|
name: "A/AAAA",
|
||||||
headers: ["Hostname", "IP Address", "TTL"],
|
headers: ["Hostname", "IP Address", "TTL"],
|
||||||
|
locked: false,
|
||||||
filter: (t: UnknownRecord) => isARecord(t) || isAaaaRecord(t),
|
filter: (t: UnknownRecord) => isARecord(t) || isAaaaRecord(t),
|
||||||
render: ARow,
|
render: ARow,
|
||||||
create: ACreate,
|
create: ACreate,
|
||||||
@ -190,6 +185,7 @@
|
|||||||
{
|
{
|
||||||
name: "CNAME",
|
name: "CNAME",
|
||||||
headers: ["Hostname", "Aliases to", "TTL"],
|
headers: ["Hostname", "Aliases to", "TTL"],
|
||||||
|
locked: false,
|
||||||
filter: isCnameRecord,
|
filter: isCnameRecord,
|
||||||
render: CnameRow,
|
render: CnameRow,
|
||||||
create: CnameCreate,
|
create: CnameCreate,
|
||||||
@ -211,6 +207,7 @@
|
|||||||
{
|
{
|
||||||
name: "TXT",
|
name: "TXT",
|
||||||
headers: ["Hostname", "Value", "TTL"],
|
headers: ["Hostname", "Value", "TTL"],
|
||||||
|
locked: false,
|
||||||
filter: isTxtRecord,
|
filter: isTxtRecord,
|
||||||
render: TxtRow,
|
render: TxtRow,
|
||||||
create: TxtCreate,
|
create: TxtCreate,
|
||||||
@ -232,6 +229,7 @@
|
|||||||
{
|
{
|
||||||
name: "SRV",
|
name: "SRV",
|
||||||
headers: ["Name", "Priority", "Weight", "Port", "Target", "TTL"],
|
headers: ["Name", "Priority", "Weight", "Port", "Target", "TTL"],
|
||||||
|
locked: false,
|
||||||
filter: isSrvRecord,
|
filter: isSrvRecord,
|
||||||
render: SrvRow,
|
render: SrvRow,
|
||||||
create: null,
|
create: null,
|
||||||
@ -261,6 +259,7 @@
|
|||||||
{
|
{
|
||||||
name: "CAA",
|
name: "CAA",
|
||||||
headers: ["Name", "Tag", "Value", "TTL"],
|
headers: ["Name", "Tag", "Value", "TTL"],
|
||||||
|
locked: false,
|
||||||
filter: isCaaRecord,
|
filter: isCaaRecord,
|
||||||
render: CaaRow,
|
render: CaaRow,
|
||||||
create: CaaCreate,
|
create: CaaCreate,
|
||||||
@ -287,12 +286,14 @@
|
|||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
recordTypes[1].empty = null;
|
||||||
|
|
||||||
function toAny(a: any) {
|
function toAny(a: any) {
|
||||||
return a as any;
|
return a as any;
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{#if soaRecords.length >= 1}
|
{#if domainTitle}
|
||||||
<div class="title-row">
|
<div class="title-row">
|
||||||
<h1>Domains / {domainTitle}</h1>
|
<h1>Domains / {domainTitle}</h1>
|
||||||
<a class="zone-download" href={zoneFileUrl} download="{domainTitle}.zone">Download DNS Zone File</a>
|
<a class="zone-download" href={zoneFileUrl} download="{domainTitle}.zone">Download DNS Zone File</a>
|
||||||
@ -321,7 +322,7 @@
|
|||||||
{/if}
|
{/if}
|
||||||
</svelte:fragment>
|
</svelte:fragment>
|
||||||
|
|
||||||
<svelte:component this={recordType.render} slot="row" let:value {value} />
|
<svelte:component this={recordType.render} slot="row" let:value {value} locked={recordType.locked} />
|
||||||
</DomainTableView>
|
</DomainTableView>
|
||||||
{/each}
|
{/each}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user