diff options
Diffstat (limited to 'src/gnunet/service/zonemaster/gui_edit.htpl')
-rw-r--r-- | src/gnunet/service/zonemaster/gui_edit.htpl | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/src/gnunet/service/zonemaster/gui_edit.htpl b/src/gnunet/service/zonemaster/gui_edit.htpl new file mode 100644 index 0000000..a4673b0 --- /dev/null +++ b/src/gnunet/service/zonemaster/gui_edit.htpl | |||
@@ -0,0 +1,130 @@ | |||
1 | {{define "edit_zone"}} | ||
2 | {{$type := index .Params "keytype"}} | ||
3 | {{$name := index .Params "name"}} | ||
4 | <div> | ||
5 | <h3>Edit a [{{$type}}] GNS zone:</h3> | ||
6 | <p><small>(Created: {{index .Params "created"}}, Last edited: {{index .Params "modified"}})</small></p> | ||
7 | <form action="/action/upd/zone/{{.Ref}}" method="post" onsubmit="return(zone_validate());"> | ||
8 | <input type="hidden" name="old_name" value="{{$name}}"> | ||
9 | <table> | ||
10 | <tr> | ||
11 | <td align="right"><b>Zone name:</b></td> | ||
12 | <td><input type="text" id="name" name="name" value="{{$name}}"></td> | ||
13 | </tr> | ||
14 | <tr> | ||
15 | <td colspan="2"> | ||
16 | <p>The type of the zone key cannot be changed. It is currently set to | ||
17 | <b>{{if eq $type "PKEY"}}PKEY (Ed25519+EcDSA){{else}}EDKEY (EdDSA){{end}}</b>:</p> | ||
18 | <table> | ||
19 | <tr> | ||
20 | <td align="right"><b>Public key:</b></td> | ||
21 | <td>{{index .Params "keydata"}}</td> | ||
22 | </tr> | ||
23 | <tr> | ||
24 | <td align="right"><b>Private key:</b></td> | ||
25 | <td>{{index .Params "prvdata"}}</td> | ||
26 | </tr> | ||
27 | </table> | ||
28 | </td> | ||
29 | </tr> | ||
30 | </table> | ||
31 | <button id="submit">Change zone name</button> | ||
32 | </form> | ||
33 | <p><a href="/"><button>Leave</button></a></p> | ||
34 | </div> | ||
35 | <script> | ||
36 | const old_zone = "{{$name}}"; | ||
37 | const zone_names = [ | ||
38 | {{range $i, $n := .Names}} | ||
39 | "{{$n}}", | ||
40 | {{end}} | ||
41 | ]; | ||
42 | function zone_validate() { | ||
43 | const name = document.getElementById("name").value; | ||
44 | if (!name) { | ||
45 | alert("Empty zone name not allowed"); | ||
46 | return false; | ||
47 | } | ||
48 | if (name == old_zone) { | ||
49 | alert("Zone name not changed"); | ||
50 | return false; | ||
51 | } | ||
52 | for (var i = 0; i < names.length; i++) { | ||
53 | if (zone_names[i] == name) { | ||
54 | alert("Zone name already in-use"); | ||
55 | return false; | ||
56 | } | ||
57 | } | ||
58 | return(true); | ||
59 | } | ||
60 | </script> | ||
61 | {{end}} | ||
62 | |||
63 | {{define "edit_label"}} | ||
64 | {{$name := index .Params "name"}} | ||
65 | {{$zone := index .Params "zone"}} | ||
66 | <div> | ||
67 | <h3>Edit a GNS label for zone "{{$zone}}":</h3> | ||
68 | <p><small>(Created: {{index .Params "created"}}, Last edited: {{index .Params "modified"}})</small></p> | ||
69 | <form action="/action/upd/label/{{.Ref}}" method="post" onsubmit="return(label_validate());"> | ||
70 | <input type="hidden" name="old_name" value="{{$name}}"> | ||
71 | <input type="hidden" name="zid" value="{{index .Params "zid"}}"> | ||
72 | <table> | ||
73 | <tr> | ||
74 | <td align="right">Name:</td> | ||
75 | <td><input type="text" id="name" name="name" value="{{$name}}"></td> | ||
76 | </tr> | ||
77 | </table> | ||
78 | <button id="submit">Change label name</button> | ||
79 | </form> | ||
80 | <p><a href="/"><button>Leave</button></a></p> | ||
81 | </div> | ||
82 | <script> | ||
83 | const old_label = "{{$name}}"; | ||
84 | const label_names = [ | ||
85 | {{range $i, $n := .Names}} | ||
86 | '{{$n}}', | ||
87 | {{end}} | ||
88 | ]; | ||
89 | function label_validate() { | ||
90 | const name = document.getElementById("name").value; | ||
91 | if (!name) { | ||
92 | alert("Empty labels not allowed"); | ||
93 | return false; | ||
94 | } | ||
95 | if (name == old_label) { | ||
96 | alert("Label name not changed"); | ||
97 | return false; | ||
98 | } | ||
99 | for (var i = 0; i < names.length; i++) { | ||
100 | if (label_names[i] == name) { | ||
101 | alert("Label name already in-use"); | ||
102 | return false; | ||
103 | } | ||
104 | } | ||
105 | return(true); | ||
106 | } | ||
107 | </script> | ||
108 | {{end}} | ||
109 | |||
110 | {{define "edit_rec"}} | ||
111 | {{$label := index .Params "label"}} | ||
112 | <div> | ||
113 | <h3>Edit a resource record for label "{{$label}}":</h3> | ||
114 | <p><small>(Created: {{index .Params "created"}}, Last edited: {{index .Params "modified"}})</small></p> | ||
115 | {{$t := rritype (index .Params "type")}} | ||
116 | {{if eq $t "PKEY"}}{{template "PKEY" .}}{{end}} | ||
117 | {{if eq $t "EDKEY"}}{{template "EDKEY" .}}{{end}} | ||
118 | {{if eq $t "NICK"}}{{template "NICK" .}}{{end}} | ||
119 | {{if eq $t "LEHO"}}{{template "LEHO" .}}{{end}} | ||
120 | {{if eq $t "REDIRECT"}}{{template "REDIRECT" .}}{{end}} | ||
121 | {{if eq $t "GNS2DNS"}}{{template "GNS2DNS" .}}{{end}} | ||
122 | {{if eq $t "BOX"}}{{template "BOX" .}}{{end}} | ||
123 | {{if eq $t "DNS_CNAME"}}{{template "DNS_CNAME" .}}{{end}} | ||
124 | {{if eq $t "DNS_A"}}{{template "DNS_A" .}}{{end}} | ||
125 | {{if eq $t "DNS_AAAA"}}{{template "DNS_AAAA" .}}{{end}} | ||
126 | {{if eq $t "DNS_MX"}}{{template "DNS_MX" .}}{{end}} | ||
127 | {{if eq $t "DNS_TXT"}}{{template "DNS_TXT" .}}{{end}} | ||
128 | </div> | ||
129 | <a href="/"><button>Leave</button></a> | ||
130 | {{end}} \ No newline at end of file | ||