2fc0fb7d6a5862a55856ebc6b791f4a4201a85af
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

1) <?php
2) /*
3) This file belongs to the Webinterface of schokokeks.org Hosting
4) 
5) Written 2008-2018 by schokokeks.org Hosting, namely
6)   Bernd Wurst <bernd@schokokeks.org>
7)   Hanno Böck <hanno@schokokeks.org>
8) 
9) To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty.
10) 
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

11) You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

12) http://creativecommons.org/publicdomain/zero/1.0/
13) 
14) Nevertheless, in case you use a significant part of this code, we ask (but not require, see the license) that you keep the authors' names in place and return your changes to the public. We would be especially happy if you tell us what you're going to do with this code.
15) */
16) 
17) require_once('inc/debug.php');
18) require_once('inc/icons.php');
19) 
20) require_once('class/domain.php');
21) require_once('domains.php');
22) 
Bernd Wurst Blende Aktionen aus, wenn d...

Bernd Wurst authored 6 years ago

23) require_role(array(ROLE_CUSTOMER, ROLE_SYSTEMUSER));
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

24) 
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

25) $dom = null;
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

26) if (isset($_REQUEST['id'])) {
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

27)     $dom = new Domain((int) $_REQUEST['id']);
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

28)     $_SESSION['domains_detail_domainname'] = $dom->fqdn;
29) } elseif (isset($_SESSION['domains_detail_domainname'])) {
30)     $dom = new Domain($_SESSION['domains_detail_domainname']);
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

31) } else {
32)     system_failure("Keine Domain angegeben");
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

33) }
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

34) if (!$dom) {
35)     system_failure("Keine Domain gewählt!");
36) }
Bernd Wurst Blende Aktionen aus, wenn d...

Bernd Wurst authored 6 years ago

37) if (have_role(ROLE_CUSTOMER)) {
38)     $dom->ensure_customerdomain();
39) } else {
40)     $dom->ensure_userdomain();
41) }
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

42) 
43) title("Domain {$dom->fqdn}");
44) $section = 'domains_domains';
45) 
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

46) // Block zuständiger Useraccount
47) 
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

48) $is_current_user = true;
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

49) $useraccounts = list_useraccounts();
Bernd Wurst Blende Aktionen aus, wenn d...

Bernd Wurst authored 6 years ago

50) if (have_role(ROLE_CUSTOMER) && count($useraccounts) > 1) {
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

51)     if ($dom->useraccount != $_SESSION['userinfo']['uid']) {
52)         $is_current_user = false;
53)     }
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

54)     // Mehrere User vorhanden
55)     $options = array();
56)     foreach ($useraccounts as $u) {
57)         $options[$u['uid']] = $u['username'];
58)     }
59)     if (!array_key_exists($dom->useraccount, $options)) {
60)         $options[$dom->useraccount] = $dom->useraccount;
61)     }
62)     output('<h4>Zuständiges Benutzerkonto</h4>');
63)     $form = '<p>Diese Domain nutzen im Benutzerkonto '.html_select('domainuser', $options, $dom->useraccount).' <input type="submit" name="submit" value="Änderung speichern"></p>';
64)     output(html_form('update-user', 'update', 'action=chguser&id='.$dom->id, $form));
Hanno fix codingstyle

Hanno authored 5 years ago

65) } elseif (!have_role(ROLE_SYSTEMUSER) || $dom->useraccount != $_SESSION['userinfo']['uid']) {
Bernd Wurst Kennzeichne Domains korrekt...

Bernd Wurst authored 5 years ago

66)     // Kunde hat keine mehreren User, Domain ist trotzdem in einem anderen Useraccount
67)     $is_current_user = false;
68)     output('<h4>Zuständiges Benutzerkonto</h4>');
69)     output('<p>Diese Domain wird im Benutzerkonto mit der User-ID #'.$dom->useraccount.' verwendet.</p>');
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

70) }
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

71) 
72) 
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

73) // Block Nutzung
74) 
75) if ($is_current_user) {
76)     output("<h4>Aktuelle Nutzung dieser Domain</h4>");
Bernd Wurst Deeplinks als Flex-Tiles

Bernd Wurst authored 6 years ago

77)     output('<div class="tile-container">');
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

78)     $everused = false;
79)     if (have_module('dns') && $dom->dns == 1) {
80)         $used = dns_in_use($dom->id);
81)         output("<div class=\"tile usage ".($used ? "used" : "unused")."\"><p><strong>".internal_link('../dns/dns_domain', "DNS-Server", 'dom='.$dom->id)."</strong></p><p>".($used ? "Manuelle DNS-Records vorhanden." : "DNS-Records möglich")."</p></div>");
82)         $everused = true;
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

83)     }
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

84)     if (have_module('email') && ($dom->mail != 'none')) {
Bernd Wurst Erzeuge Warnung wenn bei ei...

Bernd Wurst authored 5 years ago

85)         if ($dom->provider != 'terions') {
86)             $mxresult = dns_get_record($dom->fqdn, DNS_MX);
87)             $found = false;
88)             foreach ($mxresult as $mx) {
89)                 if (substr_compare($mx['target'], config('masterdomain'), -strlen(config('masterdomain'))) === 0) {
90)                     $found = true;
91)                 }
92)             }
93)             if (! $found) {
94)                 DEBUG('MX für '.$dom->fqdn.':');
95)                 DEBUG($mxresult);
96)                 warning('Bei dieser Domain ist der Mail-Empfang aktiviert, jedoch verweist das DNS-System scheinbar nicht auf unsere Anlagen. Wenn Sie keine E-Mails empfangen möchten, schalten Sie die Mail-Verarbeitung für diese Domain aus.');
97)             }
98)         }
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

99)         $used = mail_in_use($dom->id);
Bernd Wurst Zeige Mail-Deeplink korrekt...

Bernd Wurst authored 6 years ago

100)         $vmail = count_vmail($dom->id);
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

101)         if ($used) {
102)             if ($vmail > 0) {
103)                 output("<div class=\"tile usage used\"><p><strong>".internal_link('../email/vmail', "E-Mail", 'filter='.$dom->fqdn)."</strong></p><p>E-Mail-Postfächer unter dieser Domain: <strong>{$vmail}</strong></p></div>");
104)             } else {
105)                 output("<div class=\"tile usage unused\"><p><strong>".internal_link('../email/imap', "E-Mail")."</strong></p><p>Manuelle Mail-Konfiguration ist aktiv</p></div>");
106)             }
Bernd Wurst Zeige Mail-Deeplink korrekt...

Bernd Wurst authored 6 years ago

107)         } else {
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

108)             output("<div class=\"tile usage unused\"><p><strong>".internal_link('../email/vmail', "E-Mail", 'filter='.$dom->fqdn)."</strong></p><p>Bisher keine E-Mail-Postfächer unter dieser Domain.</p></div>");
Bernd Wurst Zeige Mail-Deeplink korrekt...

Bernd Wurst authored 6 years ago

109)         }
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

110)         $everused = true;
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

111)     }
112)     if (have_module('mailman') && mailman_subdomains($dom->id)) {
Bernd Wurst Deeplink von Domain zu Mail...

Bernd Wurst authored 6 years ago

113)         $mailmanhosts = mailman_subdomains($dom->id);
114)         $hostname = $dom->fqdn;
115)         if (count($mailmanhosts) == 1) {
116)             $hostname = $mailmanhosts[0]['hostname'].'.'.$dom->fqdn;
117)         }
118)         output("<div class=\"tile usage used\"><p><strong>".internal_link('../mailman/lists', "Mailinglisten", 'filter='.$hostname)."</strong></p><p>Diese Domain wird für Mailinglisten verwendet</p></div>");
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

119)         $used = true;
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

120)         $everused = true;
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

121)     }
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

122)     if (have_module('vhosts')) {
123)         $used = web_in_use($dom->id);
124)         output("<div class=\"tile usage ".($used ? "used" : "unused")."\"><p><strong>".internal_link('../vhosts/vhosts', "Websites", 'filter='.$dom->fqdn)."</strong></p><p>".($used ? "Es gibt Website-Einstellungen für diese Domain" : "Bisher keine Website eingerichtet")."</p></div>");
125)         $everused = true;
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

126)     }
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

127)     if (have_module('jabber')) {
128)         if ($dom->jabber == 1) {
129)             output("<div class=\"tile usage used\"><p><strong>".internal_link('../jabber/accounts', "Jabber/XMPP")."</strong></p><p>Diese Domain wird für Jabber verwendet</p></div>");
130)         } else {
131)             output("<div class=\"tile usage unused\"><p><strong>".internal_link('../jabber/new_domain', "Jabber/XMPP")."</strong></p><p>Diese Domain wird bisher nicht für Jabber verwendet</p></div>");
132)         }
133)         $everused = true;
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

134)     }
Bernd Wurst Deeplinks als Flex-Tiles

Bernd Wurst authored 6 years ago

135)     output('</div>');
Bernd Wurst styling der Nutzungsangaben...

Bernd Wurst authored 6 years ago

136)     if (! $everused) {
137)         output('<p><em>Keine Nutzung dieser Domain (die hier angezeigt wird)</em></p>');
138)     }
Bernd Wurst Domain-Nutzung mit Deeplink...

Bernd Wurst authored 6 years ago

139) }
140) 
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

141) // Block Domain-Inhaber
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

142) 
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

143) if (have_role(ROLE_CUSTOMER) && config('http.net-apikey') && $dom->provider == 'terions' && ($dom->cancel_date === null || $dom->cancel_date > date('Y-m-d'))) {
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

144)     use_module('contacts');
145)     require_once('contacts.php');
Bernd Wurst Blende Aktionen aus, wenn d...

Bernd Wurst authored 6 years ago

146)     require_once('domainapi.php');
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

147) 
148)     output('<h4>Inhaberwechsel der Domain</h4>');
149)     output('<p>Legen Sie hier einen neuen Inhaber für diese Domain fest.</p>');
150) 
151)     if (isset($_REQUEST['id'])) {
152)         api_download_domain($_REQUEST['id']);
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

153)         $_SESSION['domains_detail_domainname'] = $dom->fqdn;
154)         $_SESSION['domains_detail_owner'] = $dom->owner;
155)         $_SESSION['domains_detail_admin_c'] = $dom->admin_c;
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

156)     }
157)     if (!update_possible($dom->id)) {
158)         warning("Diese Domain verwendet eine unübliche Endung. Daher kann der Inhaber nicht auf diesem Weg verändert werden. Bitte kontaktieren Sie den Support.");
159)     } else {
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

160)         if ($_SESSION['domains_detail_admin_c'] == $dom->admin_c &&
161)                 $_SESSION['domains_detail_owner'] != $dom->owner &&
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

162)                 (!isset($_SESSION['domains_detail_detach']) || $_SESSION['domains_detail_detach'] == 0)) {
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

163)             // Wenn der Owner geändert wurde, der Admin aber nicht und das detach-Flag
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

164)             // nicht gesetzt ist, dann wird der Admin gleich dem Owner gesetzt
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

165)             $_SESSION['domains_detail_admin_c'] = $_SESSION['domains_detail_owner'];
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

166)         }
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

167) 
168)         if (isset($_GET['admin_c']) && $_GET['admin_c'] == 'none') {
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

169)             $_SESSION['domains_detail_admin_c'] = $_SESSION['domains_detail_owner'];
170)             unset($_SESSION['domains_detail_detach']);
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

171)         }
172) 
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

173)         $owner = get_contact($_SESSION['domains_detail_owner']);
174)         $admin_c = get_contact($_SESSION['domains_detail_admin_c']);
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

175)         $function = 'Inhaber';
176)         if ($owner['id'] == $admin_c['id']) {
177)             $function .= ' und Verwalter';
178)         }
179)         $cssclass = '';
180)         if ($owner['id'] != $dom->owner) {
181)             $cssclass = 'modified';
182)         }
183)         output('<p><strong>'.$function.':</strong></p>'.display_contact($owner, '', $cssclass));
184)         addnew('choose', 'Neuen Inhaber wählen', "type=owner");
185)         if ($owner['id'] != $admin_c['id']) {
186)             $cssclass = '';
187)             if ($admin_c['id'] != $dom->admin_c) {
188)                 $cssclass = 'modified';
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

189)             }
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

190)             output('<p><strong>Verwalter:</strong></p>'.display_contact($admin_c, '', $cssclass));
191)             addnew('choose', 'Neuen Verwalter wählen', "type=admin_c");
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

192)             output('<p class="delete">'.internal_link('', 'Keinen separaten Verwalter festlegen', 'admin_c=none').'</p>');
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

193)         } else {
194)             addnew('choose', 'Einen separaten Verwalter wählen', "type=admin_c&detach=1");
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

195)         }
196) 
197) 
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

198)         if ($owner['id'] != $dom->owner || $admin_c['id'] != $dom->admin_c) {
199)             if (isset($_GET['error']) && $_GET['error'] == '1') {
200)                 input_error('Sie müssen der Übertragung explizit zustimmen!');
201)             }
202)             $form = '<p>Es sind Änderungen vorgenommen worden, die noch nicht gespeichert wurden</p>';
203)             $form .= '<p><input type="checkbox" name="accept" value="1" id="accept"><label for="accept"> Ich bestätige, dass ich die nachfolgenden Hinweise zur Kenntnis genommen habe.</p>
204)                 <p>Mit Speichern dieser Änderungen führen Sie möglicherweise einen Inhaberwechsel bei der Domain '.$dom->fqdn.' aus. Inhaberwechsel sind bei einigen Domainendungen (z.B. com/net/org) zustimmungspflichtig vom alten und vom neuen Inhaber. Die Registrierungsstelle kann nach eigenem Ermessen diese Zustimmung per separater E-Mail einfordern. Wird diese Zustimmung nicht oder verspätet erteilt, kann eine Domain gesperrt werden. Dieser Vorgang wird nicht von '.config('company_name').' kontrolliert.</p>
205)                 <p>Sie sind ferner darüber informiert, dass die Adresse des Domaininhabers öffentlich abrufbar ist.</p>';
206)             $form .= '<p><input type="submit" name="sumbit" value="Änderungen speichern und Domaininhaber ändern"></p>';
207)             output(html_form('domains_update', 'update', "action=ownerchange&id=".$dom->id, $form));
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

208)         }
Bernd Wurst Ermögliche das Ändern eines...

Bernd Wurst authored 6 years ago

209)     }
210) }
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

211) 
212) // Block Externe Domain umziehen
213) 
Bernd Wurst Blende Aktionen aus, wenn d...

Bernd Wurst authored 6 years ago

214) if (have_role(ROLE_CUSTOMER) && config('http.net-apikey')) {
215)     if ($dom->status == 'prereg') {
216)         output('<h4>Domain-Registrierung abschließen</h4>
217)                 <p>'.internal_link('domainreg', 'Domain registrieren', "domain={$dom->fqdn}").'</p>');
218)     } elseif ($dom->status == 'pretransfer') {
219)         output('<h4>Domain zu '.config('company_name').' umziehen</h4>
220)                 <p>'.internal_link('domainreg', 'Umzugsautrag (ggf. nochmals) erteilen', "domain={$dom->fqdn}").'</p>');
221)     } elseif ($dom->provider != 'terions') {
222)         output('<h4>Domain zu '.config('company_name').' umziehen</h4>
223)                 <p>'.internal_link('domainreg', 'Domain-Transfer starten', "domain={$dom->fqdn}").'</p>');
224)     }
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

225) }
226) 
Bernd Wurst Transfer-Freigabe und Kündi...

Bernd Wurst authored 6 years ago

227) // Block Domain löschen/kündigen
228) 
229) $domain_in_use = mailman_subdomains($dom->id) || mail_in_use($dom->id) || web_in_use($dom->id) || $dom->jabber == 1;
230) if (!$domain_in_use && ($dom->status == 'prereg' || $dom->status == 'pretransfer' || $dom->status == 'transferfailed' || $dom->status == 'external')) {
231)     output('<h4>Domain wieder entfernen</h4>');
232)     output('<p class="delete">'.internal_link('save', 'Die Domain '.$dom->fqdn.' entfernen', 'action=delete&domain='.$dom->id).'</p>');
Bernd Wurst Biete kein Domain-Managemen...

Bernd Wurst authored 6 years ago

233) } elseif (have_role(ROLE_CUSTOMER) && config('http.net-apikey') && $dom->provider == 'terions' && (!$dom->cancel_date || ($dom->cancel_date > date('Y-m-d')))) {
Bernd Wurst Blende Aktionen aus, wenn d...

Bernd Wurst authored 6 years ago

234)     require_once('domainapi.php');
Bernd Wurst Transfer-Freigabe und Kündi...

Bernd Wurst authored 6 years ago

235)     output('<h4>Domain kündigen</h4>');
236)     $info = api_download_domain($dom->id);
237)     if ($info['authInfo']) {
238)         output('<p>Das Auth-Info für diese Domain lautet: <strong>'.$info['authInfo'].'</strong></p>');
239)         output('<p>Wenden Sie sich an den Support, wenn Sie den Domainumzug wieder sperren möchten.</p>');
240)     } else {
241)         output('<p>Hier können Sie die Domain zum Umzug freigeben.</p>');
242)         $form = '<p><input type="hidden" name="domain" value="'.$dom->id.'"><input type="submit" name="submit" value="Die Domain '.$dom->fqdn.' zum Umzug freigeben"></p>';
243)         output(html_form('domains_transfer', 'save', 'action=transfer', $form));
244)     }
245)     output('<p>Die aktuelle Laufzeit der Domain dauert noch bis '.$info['currentContractPeriodEnd'].'</p>');
246)     if ($info['deletionDate']) {
247)         output('<p>Es liegt aktuell eine Kündigung vor auf <strong>'.$info['deletionDate'].'</strong></p><p>Um die Kündigung aufzuheben, wenden Sie sich bitte an den Support.</p>');
248)     } else {
Bernd Wurst Formulierung für Domainkünd...

Bernd Wurst authored 5 years ago

249)         output('<p>Die Laufzeit wird automatisch um ein weiteres Jahr verlängert, sofern Sie keine Kündigung auslösen oder die Domain zu einem anderen Anbieter umziehen.</p>');
Bernd Wurst Transfer-Freigabe und Kündi...

Bernd Wurst authored 6 years ago

250)         output('<p class="delete">'.internal_link('save', 'Die Domain '.$dom->fqdn.' kündigen', 'action=cancel&domain='.$dom->id).'</p>');
251)     }
252) }
253) 
254) 
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

255) // Block Domain bestätigen
256) 
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

257) if ($dom->mailserver_lock == 1 && $dom->status != 'prereg') {
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

258)     if (has_own_ns($dom->domainname, $dom->tld)) {
259)         unset_mailserver_lock($dom);
260)         success_msg("Die Domain {$dom->fqdn} wurde erfolgreich bestätigt und kann nun in vollem Umfang verwendet werden.");
261)         redirect("");
262)     }
263)     output('<h3>Mailserver-Sperre aktiv</h3>
264)             <p>Bisher ist für diese Domain die Nutzung als Mail-Domain eingeschränkt, da wir noch keine Gewissheit haben, ob Sie der rechtmäßige Nutzer der Domain sind. Eine Domain, die für E-Mail-Aktivität genutzt werden soll, muss entweder die DNS-Server von '.config('company_name').' verwenden oder die Inhaberschaft muss durch einen passend gesetzten DNS-Record nachgewiesen werden. Nachfolgend werden die Möglichkeiten im Detail vorgestellt.</p>');
265)     if (!$dom->secret) {
266)         create_domain_secret($dom);
267)     }
268) 
269)     $TXT = get_txt_record('_schokokeks', $dom->domainname, $dom->tld);
270)     if ($TXT == $dom->secret) {
271)         unset_mailserver_lock($dom);
272)         success_msg("Die Domain {$dom->fqdn} wurde erfolgreich bestätigt und kann nun in vollem Umfang verwendet werden.");
Bernd Wurst Lasse die API bestimmen was...

Bernd Wurst authored 6 years ago

273)         redirect("");
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

274)     }
275) 
276)     if ($dom->dns == 1 || have_module('dns')) {
277)         output('<h4>DNS-Server von '.config('company_name').' nutzen</h4>');
278)         output('<p>Wenn Sie die lokalen DNS-Server als zuständig einrichten, wird die Domain automatisch bestätigt.</p>');
279)         if ($dom->dns == 0) {
280)             output('<p>Bisher ist der lokale DNS-Server ausgeschaltet. Besuchen Sie die DNS-Einstellungen um dies zu ändern.</p>');
281)             output('<p>'.internal_link('../dns/dns', 'DNS-Einstellungen aufrufen').'</p>');
282)         } else {
283)             $own_ns = own_ns();
284)             asort($own_ns);
285)             output('<p>Wenn Sie die DNS-Server von '.config('company_name').' nutzen möchten, dann richten Sie bei Ihrem Domain-Registrar bitte folgende DNS-Server als zuständig für diese Domain ein:</p>
286)                     <ul>');
287)             foreach ($own_ns as $ns) {
288)                 output('<li>'.$ns.'</li>');
289)             }
290)             output('</ul>');
291)             output('<p>Nachdem die Änderungen bei der Registrierungsstelle übernommen wurden (das kann mehrere Stunden dauern), reicht ein erneuter Aufruf dieser Seite um die Sperrung aufzuheben.</p>');
292)         }
293)     }
294)     output('<h4>Inhaberschaft bestätigen</h4>');
295)     output('<p>Um eine extern registrierte Domain in vollem Umfang zu nutzen, ohne die lokalen DNS-Server als zuständig einzurichten, müssen Sie die Inhaberschaft bestätigen. Erst nach diesem Schritt können Sie diese Domain bei '.config('company_name').' als Mail-Domain nutzen.</p>');
Hanno remove whitespace in empty...

Hanno authored 6 years ago

296) 
Bernd Wurst Alle Domain-Details auf ein...

Bernd Wurst authored 6 years ago

297)     output('<p>Die Zeichenkette zur Bestätigung lautet <strong>'.$dom->secret.'</strong>.</p>');
298)     output('<p>Richten Sie bitte auf dem zuständigen DNS-Server einen DNS-Record vom Typ TXT unter dem Hostname <strong>_schokokeks.'.$dom->fqdn.'</strong> ein und hinterlegen Sie dort diese Zeichenkette als Inhalt:</p>
299)             <p><code>_schokokeks.'.$dom->fqdn.'.    IN TXT "'.$dom->secret.'"</code></p>
300)             <p>Beachten Sie, dass Aktualisierungen am DNS-Server i.d.R. mit einigen Minuten verzögerung abgerufen werden können.</p>');
Hanno Fix coding style with php-c...

Hanno authored 6 years ago

301)     #output('<p>Sie können diese entweder als DNS-Record vom Typ TXT unter dem Hostname <strong>_schokokeks.'.$dom->fqdn.'</strong> einrichten oder auf dem zuständigen Webserver eine Datei hinterlegen mit dem Code als Inhalt und der Abruf-URL <strong>http://'.$dom->fqdn.'/'.$dom->secret.'.txt</strong></p>');