492ec955ab5e8ed220af93e4e22a36788a2551ae
Bernd Wurst Erste Vorbereitungen für Do...

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) 
11) You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see 
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/security.php');
18) require_once('inc/icons.php');
19) require_once('class/domain.php');
20) 
21) require_once('domains.php');
22) require_once('domainapi.php');
23) require_role(ROLE_CUSTOMER);
24) use_module('contacts');
25) require_once('contacts.php');
26) 
27) 
28) $dom = NULL;
29) if (isset($_REQUEST['domain'])) {
30)     $domain = $_REQUEST['domain'];
31)     if (strpos($domain, ' ') !== false) {
32)         system_failure('Leerzeichen sind in Domainnamen nicht erlaubt.');
33)     }
34)     $dom = new Domain();
35)     if ($dom->loadByName($domain) === false) {
36)         // Eintragen mit DNS und Mail
37)         $id = insert_domain_external($domain, true, true);
38)         $dom->loadByName($domain);
39)     } 
40)     $dom->ensure_customerdomain();
41)     if ($dom->provider == 'terions') {
42)         system_failure("Diese Domain ist bereits auf Ihr Kundenkonto registriert.");
43)     }
44)     
45)     // An diesem Punkt ist die Domain eingetragen als extern und ggf. mit Mailserver-Lock
46)     // Bei der Reg-Bestätigung wird das Lock entfernt und die Daten entsprechend gesetzt, inklusive Preise.
47) 
Bernd Wurst Domain-Transfer und -Regist...

Bernd Wurst authored 6 years ago

48)     $_SESSION['domains_domainreg_owner'] = $dom->owner;
49)     $_SESSION['domains_domainreg_admin_c'] = $dom->admin_c;
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

50)     $_SESSION['domains_domainreg_domainname'] = $domain;
51)     $_SESSION['domains_domainreg_detach'] = 0;
52)     
53) } elseif (isset($_SESSION['domains_domainreg_domainname'])) {
54)     $domain = $_SESSION['domains_domainreg_domainname'];
55)     $dom = new Domain($domain);
56)     $dom->ensure_customerdomain();
57) }
58) 
59) if (!$dom) {
60)     system_failure("Keine Domain");
61) }
62) 
Bernd Wurst Lasse die API bestimmen was...

Bernd Wurst authored 6 years ago

63) $avail = api_domain_available($dom->fqdn);
64) $tld = $avail['extension'];
65) if ($tld != $dom->tld) {
66)     system_failure("Fehler in den Daten! Bitte Support informieren");
67) }
68) 
69) $pricedata = get_domain_offer($tld);
Bernd Wurst Domain-Transfer und -Regist...

Bernd Wurst authored 6 years ago

70) if (!$pricedata) {
71)     redirect('adddomain');
72) }
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

73) $mode=NULL;
74) 
Bernd Wurst Domain-Transfer und -Regist...

Bernd Wurst authored 6 years ago

75) if ($avail['status'] == 'available') {
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

76)     set_domain_prereg($dom->id);
77)     $mode = 'reg';
78)     title("Domain registrieren");
Bernd Wurst Domain-Transfer und -Regist...

Bernd Wurst authored 6 years ago

79) } elseif ($avail['status'] == 'registered' || $avail['status'] == 'alreadyRegistered') {
Bernd Wurst Erste Vorbereitungen für Do...

Bernd Wurst authored 6 years ago

80)     // FIXME: alreadyRegistered bedeutet, dass die Domain bereits über uns verwaltet wird. Das wird dann hier nicht funktionieren
81)     set_domain_pretransfer($dom->id);
82)     $mode = 'transfer';
83)     title("Domain-Transfer vornehmen");
84) }
85) 
86) 
87) output("<p>Domainname: <strong>".$dom->fqdn."</strong></p>");
88) 
89) $section='domains_domains';
90) 
91) 
92) output('<h4>Inhaber der Domain</h4>');
93) output('<p>Legen Sie hier einen neuen Inhaber für diese Domain fest.</p>');
94) 
95) if ($_SESSION['domains_domainreg_detach'] == 0) {
96)     $_SESSION['domains_domainreg_admin_c'] = $_SESSION['domains_domainreg_owner'];
97) } 
98) 
99) // Behandlung für "keinen extra Verwalter"
100) if (isset($_GET['admin_c']) && $_GET['admin_c'] == 'none') {
101)     $_SESSION['domains_domainreg_admin_c'] = $_SESSION['domains_domainreg_owner'];
102)     $_SESSION['domains_domainreg_detach'] = 0;
103) }
104) 
105) if ($_SESSION['domains_domainreg_owner']) {
106)     $owner = get_contact($_SESSION['domains_domainreg_owner']);
107) 
108)     $function = 'Inhaber';
109)     if ($_SESSION['domains_domainreg_admin_c'] == $_SESSION['domains_domainreg_owner']) {
110)         $function .= ' und Verwalter';
111)     }
112)     output('<p><strong>'.$function.':</strong></p>'.display_contact($owner, ''));
113) } else {
114)     output('<p><strong>Inhaber und Verwalter:</strong></p><p><em>Bisher kein Inhaber ausgewählt</em>');
115) }
116) addnew('choose', 'Neuen Inhaber wählen', "type=owner&backto=domainreg");
117) if ($_SESSION['domains_domainreg_admin_c'] != $_SESSION['domains_domainreg_owner']) {
118)     $admin_c = get_contact($_SESSION['domains_domainreg_admin_c']);
119)     output('<p><strong>Verwalter:</strong></p>'.display_contact($admin_c, ''));
120)     addnew('choose', 'Neuen Verwalter wählen', "type=admin_c&backto=domainreg");
121)     output('<p class="delete">'.internal_link('', 'Keinen separaten Verwalter festlegen', 'admin_c=none').'</p>');
122) } else {
123)     addnew('choose', 'Einen separaten Verwalter wählen', "type=admin_c&detach=1&backto=domainreg");
124) }
125) 
126) 
Bernd Wurst Domain-Transfer und -Regist...

Bernd Wurst authored 6 years ago

127) $form = '';
128) if ($mode == 'transfer') {
129)     $form .= '<h4>Auth-Info-Code für den Transfer</h4>';
130)     $form .= '<p><label for="authinfo">Auth-Info-Code für den Domainumzug:</label> <input type="text" name="authinfo" id="authinfo"></p>';
131)     
132) }
133) 
134) $form .= '<h4>Kosten</h4>';
135) 
136) $form .= '<p>Für die Verwaltung der Domain fallen folgende Kosten an:</p>
137) <table>
138) <tr><td>Domainname:</td><td><strong>'.$dom->fqdn.'</strong></td></tr>
139) <tr><td>Jahresgebühr:</td><td style="text-align: right;">'.$pricedata['gebuehr'].' €</td></tr>';
140) if ($pricedata['setup']) {
141)     $form .= '<tr><td>Setup-Gebühr (einmalig):</td><td style="text-align: right;">'.$pricedata['setup'].' €</td></tr>';
142) }
143) $form .='</table>';
144) $form .= '<p>Der Domain-Vertrag beginnt mit Zuteilung der Domain durch die Regisrierungsstelle und läuft jeweils ein Jahr. Er verlängert sich stets automatisch um ein weiteres Jahr, wenn nicht bis 14 Tage vor Ende der Laufzeit eine Kündigung vorliegt.</p>';
145) 
146) $form .= '<p><input type="hidden" name="domain" value="'.filter_input_general($dom->fqdn).'">
147) <input type="submit" name="submit" value="Kostenpflichtigen Vertrag abschließen"></p>';
148) output(html_form('domains_domainreg', 'domainreg_save', '', $form));
149) output('<p>'.internal_link('domains', 'Zurück').'</p>');