Mehr config-optionen und config via Wrapper-Funktion benutzen
bernd

bernd commited on 2009-05-23 15:24:52
Zeige 28 geänderte Dateien mit 88 Einfügungen und 69 Löschungen.


git-svn-id: https://svn.schokokeks.org/repos/tools/webinterface/trunk@1376 87cf0b9e-d624-0410-a070-f6ee81989793
... ...
@@ -1,7 +1,6 @@
1 1
 <?php
2 2
 
3 3
 require_once('../config.php');
4
-global $config;
5 4
 global $prefix;
6 5
 $prefix = '../';
7 6
 
... ...
@@ -35,6 +35,34 @@ class Domain extends KeksData
35 35
     $this->parse($res[0]);
36 36
   }
37 37
 
38
+  function ensure_customerdomain()
39
+  {
40
+    if (! $this->is_customerdomain() )
41
+      system_failure('Diese Domain gehört nicht Ihrem Kundenaccount.');
42
+  }
43
+
44
+  function ensure_userdomain()
45
+  {
46
+    if (! $this->is_userdomain() )
47
+      system_failure('Diese Domain gehört nicht Ihrem Benutzeraccount.');
48
+  }
49
+
50
+  function is_customerdomain()
51
+  {
52
+    if (! isset($_SESSION['customerinfo']) )
53
+      return false;
54
+    $customerno = (int) $_SESSION['customerinfo']['customerno'];
55
+    return ($this->kunde == $customerno);
56
+  }
57
+
58
+  function is_userdomain()
59
+  {
60
+    if (! isset($_SESSION['userinfo']) )
61
+      return false;
62
+    $uid = (int) $_SESSION['userinfo']['uid'];
63
+    return ($this->useraccount == $uid);
64
+  }
65
+
38 66
   function parse($data)
39 67
   {
40 68
     DEBUG($data);
... ...
@@ -89,7 +117,7 @@ function get_jabberable_domains()
89 117
   DEBUG($domains);
90 118
   $result = array( new Domain() );
91 119
   $result[0]->id = 0;
92
-  $result[0]->fqdn = "schokokeks.org";
120
+  $result[0]->fqdn = config('masterdomain');
93 121
   foreach ($domains as $dom)
94 122
   {
95 123
     if ($dom->jabber)
... ...
@@ -37,7 +37,7 @@ if (strstr($go, "..") or strstr($go, "./") or strstr($go, ":") or (! file_exists
37 37
 }
38 38
 $tmp = explode('/', $go, 2);
39 39
 $module = $tmp[0];
40
-if (! in_array($module, $config['modules']))
40
+if (! in_array($module, config('modules')))
41 41
 {
42 42
   die("illegal command");
43 43
 }
... ...
@@ -3,6 +3,17 @@
3 3
 require_once('inc/db_connect.php');
4 4
 
5 5
 
6
+function config($key)
7
+{
8
+  global $config;
9
+  if (array_key_exists($key, $config))
10
+    return $config[$key];
11
+  else
12
+    logger("inc/base", "config", "Request to read nonexistant config option »{$key}«.");
13
+    return '';
14
+}
15
+
16
+
6 17
 function db_query($query)
7 18
 {
8 19
   DEBUG($query);
... ...
@@ -37,8 +48,7 @@ function maybe_null($value)
37 48
 
38 49
 function logger($scriptname, $scope, $message)
39 50
 {
40
-  global $config;
41
-  if ($config['logging'] == false)
51
+  if (config('logging') == false)
42 52
     return;
43 53
 
44 54
   $user = 'NULL';
... ...
@@ -148,8 +158,7 @@ function check_form_token($form_id, $formtoken = NULL)
148 158
 
149 159
 function have_module($modname)
150 160
 {
151
-  global $config;
152
-  return in_array($modname, $config['modules']);
161
+  return in_array($modname, config('modules'));
153 162
 }
154 163
 
155 164
 
... ...
@@ -2,7 +2,7 @@
2 2
 
3 3
 require_once('inc/error.php');
4 4
 
5
-if (!@mysql_connect($config['db_host'], $config['db_user'], $config['db_pass']))
5
+if (!@mysql_connect(config('db_host'), config('db_user'), config('db_pass')))
6 6
 	system_failure('Konnte nicht zur Datenbank verbinden. Wenn dieser Fehler wiederholt auftritt, beachrichtigen Sie bitte den Administrator.');
7 7
 	
8 8
 if (!@mysql_query('SET NAMES utf8'))
... ...
@@ -1,8 +1,7 @@
1 1
 <?php
2 2
 
3 3
 require_once('config.php');
4
-global $config;
5
-$debugmode = (isset($_GET['debug']) && $config['enable_debug']);
4
+$debugmode = (isset($_GET['debug']) && config('enable_debug'));
6 5
 
7 6
 function DEBUG($str)
8 7
 {
... ...
@@ -126,8 +126,8 @@ function login_screen($why)
126 126
 	else
127 127
 	{
128 128
 		// der User hat die Startseite aufgerufen
129
-	        echo '<h3>'.$config['brand'].' Webinterface</h3>';
130
-		echo '<p>Auf dieser Seite können Sie diverse Einstellungen Ihres Accounts auf schokokeks.org festlegen. Sofern Sie noch kein Kunde von schokokeks.org sind, können Sie diese Seite nicht benutzen. Besuchen Sie in diesem Fall bitte unsere <a href="http://www.schokokeks.org/">öffentliche Seite</a>.</p>';
129
+	        echo '<h3>'.config('company_name').' Webinterface</h3>';
130
+		echo '<p>Auf dieser Seite können Sie diverse Einstellungen Ihres Accounts auf '.config('company_name').' festlegen. Sofern Sie noch kein Kunde von '.config('company_name').' sind, können Sie diese Seite nicht benutzen. Besuchen Sie in diesem Fall bitte unsere <a href="'.config('company_url').'">öffentliche Seite</a>.</p>';
131 131
 	}
132 132
         echo '<form action="" method="post">
133 133
         <p><span class="login_label">Benutzer<sup>*</sup>:</span> <input type="text" name="username" size="30" /></p>
... ...
@@ -5,16 +5,15 @@ require_once('inc/error.php');
5 5
 
6 6
 function strong_password($password)
7 7
 {
8
-  global $config;
9
-  if (isset($config['use_cracklib']) and $config['use_cracklib'] == false) {
8
+  if (isset(config('use_cracklib')) and config('use_cracklib') == false) {
10 9
     DEBUG('Cracklib deaktiviert');
11 10
     return true;
12 11
   }
13
-  DEBUG("Öffne Wörterbuch: {$config['cracklib_dict']}");
14
-  if (! ($dict = crack_opendict($config['cracklib_dict'])))
12
+  DEBUG("Öffne Wörterbuch: {config('cracklib_dict')}");
13
+  if (! ($dict = crack_opendict(config('cracklib_dict'))))
15 14
   {
16
-    logger("inc/security", "cracklib", "could not open cracklib-dictionary »{$config['cracklib_dict']}«");
17
-    system_failure("Kann Crack-Lib-Wörterbuch nicht öffnen: {$config['cracklib_dict']}");
15
+    logger("inc/security", "cracklib", "could not open cracklib-dictionary »{config('cracklib_dict')}«");
16
+    system_failure("Kann Crack-Lib-Wörterbuch nicht öffnen: {config('cracklib_dict')}");
18 17
   }
19 18
   // Führe eine Überprüfung des Passworts durch
20 19
   $check = crack_check($dict, $password);
... ...
@@ -13,8 +13,7 @@ $weighted_menuitem = array();
13 13
 
14 14
 $submenu = array();
15 15
 
16
-global $config;
17
-foreach ($config['modules'] as $module)
16
+foreach (config('modules') as $module)
18 17
 {
19 18
   $menu = false;
20 19
   if (file_exists("modules/{$module}/menu.php"))
... ...
@@ -59,7 +58,7 @@ foreach ($submenu AS $weight => $data) {
59 58
 DEBUG($submenu);
60 59
 
61 60
 
62
-header("Content-Type: {$config['mime_type']}");
61
+header("Content-Type: {config('mime_type')}");
63 62
 ?>
64 63
 <?php echo '<?xml version="1.0" encoding="utf-8"?>'."\n"; ?>
65 64
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
... ...
@@ -85,7 +84,7 @@ echo $html_header;
85 84
 <a href="#content" style="display: none;">Zum Inhalt</a>
86 85
 
87 86
 <div class="menu">
88
-<img src="<?php echo $prefix; ?>images/schokokeks.png" width="190" height="141" alt="schokokeks.org" />
87
+<img src="<?php echo $prefix.config('logo'); ?>" width="190" height="141" alt="<?php echo config('company_name'); ?>" />
89 88
 
90 89
 
91 90
 <?php
... ...
@@ -114,7 +114,7 @@ function blank_dns_record($type)
114 114
                'spec' => NULL);
115 115
   if (strtolower($type) == 'mx')
116 116
   {
117
-    $rec['data'] = 'zucker.schokokeks.org';
117
+    $rec['data'] = config('default_mx');
118 118
     $rec['spec'] = '5';
119 119
   }
120 120
   return $rec;
... ...
@@ -14,7 +14,7 @@ $subdomains = $settings['subdomains'];
14 14
 DEBUG($settings);
15 15
 
16 16
 output('<h3>E-Mail-Verwaltung</h3>
17
-<p>Sie können bei schokokeks.org die E-Mails Ihrer Domains auf zwei unterschiedliche Arten empfangen.</p>
17
+<p>Sie können bei '.config('company_namy').' die E-Mails Ihrer Domains auf zwei unterschiedliche Arten empfangen.</p>
18 18
 <ol><li>Sie können einfache E-Mail-Konten erstellen, die ankommende E-Mails speichern oder weiterleiten.</li>
19 19
 <li>Sie können die manuelle Verwaltung wählen, bei der Sie passende .courier-Dateien für den Empfang und
20 20
 manuelle POP3/IMAP-Konten für den Abruf erstellen können.</li></ol>
... ...
@@ -7,7 +7,6 @@ require_once('mailaccounts.php');
7 7
 
8 8
 require_role(ROLE_SYSTEMUSER);
9 9
 
10
-global $config;
11 10
 
12 11
 $user = $_SESSION['userinfo'];
13 12
 
... ...
@@ -86,7 +85,7 @@ elseif (isset($_GET['action']) && $_GET['action'] == 'create')
86 85
   <tr>
87 86
     <td>Benutzername:</td>
88 87
     <td><input type="text" id="user" name="user" />@<select name="domain" size="1">
89
-    <option value="'.$config['masterdomain'].'">'.$config['masterdomain'].'</option>
88
+    <option value="'.config('masterdomain').'">'.config('masterdomain').'</option>
90 89
   '.$options.'
91 90
     </select></td>
92 91
   </tr>
... ...
@@ -157,7 +156,7 @@ elseif (isset($_GET['edit']))
157 156
   <tr><th>Einstellung:</th><th>alter Wert:</th><th>neuer Wert:</th><th>&#160;</th></tr>
158 157
   <tr><td>Benutzername:</td><td><input type="text" id="old_account" name="old_account" value="'.$account['account'].'" readonly="readonly" style="background-color: #C0C0C0;" /></td>
159 158
           <td><input type="text" id="user" name="user" value="'.$username.'" />@<select name="domain" id="domain" size="1">
160
-    <option value="'.$config['masterdomain'].'">'.$config['masterdomain'].'</option>
159
+    <option value="'.config('masterdomain').'">'.config('masterdomain').'</option>
161 160
     ';
162 161
     $domains = get_domain_list($user['customerno'], $user['uid']);
163 162
     if (count($domains) > 0)
... ...
@@ -11,9 +11,8 @@ require_once('common.php');
11 11
 
12 12
 function mailaccounts($uid)
13 13
 {
14
-  global $config;
15 14
   $uid = (int) $uid;
16
-  $result = db_query("SELECT m.id,concat_ws('@',`m`.`local`,if(isnull(`m`.`domain`),'{$config['masterdomain']}',`d`.`domainname`)) AS `account`, `m`.`password` AS `cryptpass`,`m`.`maildir` AS `maildir`,aktiv from (`mail`.`mailaccounts` `m` left join `mail`.`v_domains` `d` on((`d`.`id` = `m`.`domain`))) WHERE m.uid=$uid");
15
+  $result = db_query("SELECT m.id,concat_ws('@',`m`.`local`,if(isnull(`m`.`domain`),'{config('masterdomain')}',`d`.`domainname`)) AS `account`, `m`.`password` AS `cryptpass`,`m`.`maildir` AS `maildir`,aktiv from (`mail`.`mailaccounts` `m` left join `mail`.`v_domains` `d` on((`d`.`id` = `m`.`domain`))) WHERE m.uid=$uid");
17 16
   DEBUG("Found ".@mysql_num_rows($result)." rows!");
18 17
   $accounts = array();
19 18
   if (@mysql_num_rows($result) > 0)
... ...
@@ -24,9 +23,8 @@ function mailaccounts($uid)
24 23
 
25 24
 function get_mailaccount($id)
26 25
 {
27
-  global $config;
28 26
   $uid = (int) $uid;
29
-  $result = db_query("SELECT concat_ws('@',`m`.`local`,if(isnull(`m`.`domain`),'{$config['masterdomain']}',`d`.`domainname`)) AS `account`, `m`.`password` AS `cryptpass`,`m`.`maildir` AS `maildir`,aktiv from (`mail`.`mailaccounts` `m` left join `mail`.`v_domains` `d` on((`d`.`id` = `m`.`domain`))) WHERE m.id=$id");
27
+  $result = db_query("SELECT concat_ws('@',`m`.`local`,if(isnull(`m`.`domain`),'{config('masterdomain')}',`d`.`domainname`)) AS `account`, `m`.`password` AS `cryptpass`,`m`.`maildir` AS `maildir`,aktiv from (`mail`.`mailaccounts` `m` left join `mail`.`v_domains` `d` on((`d`.`id` = `m`.`domain`))) WHERE m.id=$id");
30 28
   DEBUG("Found ".mysql_num_rows($result)." rows!");
31 29
   $acc = mysql_fetch_object($result);
32 30
   $ret = array('account' => $acc->account, 'mailbox' => $acc->maildir,  'enabled' => ($acc->aktiv == 1));
... ...
@@ -136,7 +134,6 @@ function delete_mailaccount($id)
136 134
 
137 135
 function check_valid($acc)
138 136
 {
139
-  global $config;
140 137
   $user = $_SESSION['userinfo'];
141 138
   DEBUG("Account-data: ".print_r($acc, true));
142 139
   DEBUG("User-data: ".print_r($user, true));
... ...
@@ -151,7 +148,7 @@ function check_valid($acc)
151 148
   if ($acc['account'] == '' || strpos($acc['account'], '@') == 0)
152 149
     return "Es wurde kein Benutzername angegeben!";
153 150
   if (strpos($acc['account'], '@') === false)
154
-    return "Es wurde kein Domain-Teil im Account-Name angegeben. Account-Namen müssen einen Domain-Teil enthalten. Im Zweifel versuchen Sie »@{$config['masterdomain']}«.";
151
+    return "Es wurde kein Domain-Teil im Account-Name angegeben. Account-Namen müssen einen Domain-Teil enthalten. Im Zweifel versuchen Sie »@{config('masterdomain')}«.";
155 152
 
156 153
   list($local, $domain) = explode('@', $acc['account'], 2);
157 154
   verify_input_username($local);
... ...
@@ -162,11 +159,11 @@ function check_valid($acc)
162 159
 
163 160
   if (array_search($domain, $domains) === false)
164 161
   {
165
-    if ($domain == $config['masterdomain'])
162
+    if ($domain == config('masterdomain'))
166 163
     {
167 164
       if (substr($local, 0, strlen($user['username'])) != $user['username'] || ($acc['account'][strlen($user['username'])] != '-' && $acc['account'][strlen($user['username'])] != '@'))
168 165
       {
169
-        return "Sie haben »@{$config['masterdomain']}« als Domain-Teil angegeben, aber der Benutzer-Teil beginnt nicht mit Ihrem Benutzername!";
166
+        return "Sie haben »@{config('masterdomain')}« als Domain-Teil angegeben, aber der Benutzer-Teil beginnt nicht mit Ihrem Benutzername!";
170 167
       }
171 168
     }
172 169
     else
... ...
@@ -119,7 +119,6 @@ function domainselect($selected = NULL, $selectattribute = '')
119 119
 
120 120
 function save_vmail_account($account)
121 121
 {
122
-  global $config;
123 122
   $uid = (int) $_SESSION['userinfo']['uid'];
124 123
   $id = $account['id'];
125 124
   if ($id != NULL)
... ...
@@ -241,7 +240,7 @@ function save_vmail_account($account)
241 240
   if ($account['password'] != 'NULL')
242 241
   {
243 242
     # notify the vmail subsystem of this new account
244
-    mail('vmail@'.$config['vmail_server'], 'command', "user={$account['local']}\nhost={$domainname}", "X-schokokeks-org-message: command");
243
+    mail('vmail@'.config('vmail_server'), 'command', "user={$account['local']}\nhost={$domainname}", "X-schokokeks-org-message: command");
245 244
   }
246 245
 }
247 246
 
... ...
@@ -10,7 +10,7 @@ if (! user_has_vmail_domain()) {
10 10
   output("<h3>E-Mail-Verwaltung</h3>");
11 11
   
12 12
   output('
13
-<p>Sie können bei schokokeks.org die E-Mails Ihrer Domains auf zwei unterschiedliche Arten empfangen.</p>
13
+<p>Sie können bei '.config('company_name').' die E-Mails Ihrer Domains auf zwei unterschiedliche Arten empfangen.</p>
14 14
 <ol><li>Sie können einfache E-Mail-Konten erstellen, die ankommende E-Mails speichern oder weiterleiten.</li>
15 15
 <li>Sie können die manuelle Verwaltung wählen, bei der Sie passende .courier-Dateien für den Empfang und
16 16
 manuelle POP3/IMAP-Konten für den Abruf erstellen können.</li></ol>
... ...
@@ -101,7 +101,7 @@ output('<h3>E-Mail-Accounts</h3>
101 101
 output('<p>'.internal_link("edit", "Neue E-Mail-Adresse anlegen").'</p>');
102 102
 
103 103
 /* FIXME: Das sollte nur kommen, wenn der IMAP/POP3-Menü-Eintrag nicht da ist */
104
-output('<p style="font-size: 90%;padding-top: 0.5em; border-top: 1px solid black;">Hinweis: schokokeks.org bietet für fortgeschrittene Nutzer die manuelle Einrichtung von POP3/IMAP-Accounts.<br/>'.internal_link("imap", "Neuen POP3/IMAP-Account anlegen", "action=create").'</p>');
104
+output('<p style="font-size: 90%;padding-top: 0.5em; border-top: 1px solid black;">Hinweis: '.config('company_name').' bietet für fortgeschrittene Nutzer die manuelle Einrichtung von POP3/IMAP-Accounts.<br/>'.internal_link("imap", "Neuen POP3/IMAP-Account anlegen", "action=create").'</p>');
105 105
 
106 106
 }
107 107
 
... ...
@@ -24,7 +24,6 @@ if (isset($_GET['clear']))
24 24
 if (isset($_SESSION['clientcert_cert']))
25 25
 {
26 26
   // FIXME: Es gibt keine Duplikaterkennung.
27
-  global $config;
28 27
   global $menu;
29 28
   output('<div style="margin: 1em; padding: 1em; border: 2px solid green;">');
30 29
   output('<p>Es wurde folgendes Client-Zertifikat von Ihrem Browser gesendet:</p>
... ...
@@ -22,11 +22,11 @@ Diese automatische Nachricht dient der Überprüfung Ihrer Identität.
22 22
 
23 23
 Um sich ein neues Passwort setzen zu können, rufen Sie bitte den
24 24
 folgenden Link auf:
25
- https://config.schokokeks.org/go/index/validate_token.php?customerno={$customer['customerno']}&token={$token}
25
+ ".config('webinterface_url')."/go/index/validate_token.php?customerno={$customer['customerno']}&token={$token}
26 26
 
27 27
 Sollte Ihr E-Mail-Programm diesen Link nicht korrekt an den Browser
28 28
 übertragen, rufen Sie bitte die Seite
29
- https://config.schokokeks.org/go/index/validate_token.php
29
+ ".config('webinterface_url')."/go/index/validate_token.php
30 30
 auf und geben Sie die folgenden Daten ein:
31 31
  Kundennummer: {$customer['customerno']}
32 32
  Token:        {$token}
... ...
@@ -44,7 +44,7 @@ function send_mail($address, $subject, $body)
44 44
 {
45 45
   if (strstr($subject, "\n") !== false)
46 46
     die("Zeilenumbruch im subject!");
47
-  $header = "From: schokokeks.org Web Administration <noreply@schokokeks.org>\r\nReply-To: root@schokokeks.org\r\nContent-Type: text/plain; charset=\"utf-8\"\r\nContent-Transfer-Encoding: 8bit";
47
+  $header = "From: ".config('company_name')." Web Administration <noreply@".config('masterdomain').">\r\nReply-To: ".config('adminmail')."\r\nContent-Type: text/plain; charset=\"utf-8\"\r\nContent-Transfer-Encoding: 8bit";
48 48
   mail($address, $subject, $body, $header);
49 49
 }
50 50
 
... ...
@@ -24,7 +24,7 @@ foreach ($jabberaccounts as $acc)
24 24
   if ($domain->id == NULL)
25 25
   {
26 26
     $domain = new Domain();
27
-    $domain->fqdn='schokokeks.org';
27
+    $domain->fqdn = config('masterdomain');
28 28
   }
29 29
   output("<tr><td>{$local}@{$domain->fqdn}</td><td>".internal_link('chpass', 'Passwort ändern', 'account='.$acc['id'])."&#160;&#160;&#160;".internal_link('save', 'Löschen', 'action=delete&account='.$acc['id']).'</td></tr>');
30 30
 }
... ...
@@ -31,7 +31,7 @@ function get_jabberaccount_details($id)
31 31
     system_failure("Invalid account");
32 32
   $data = mysql_fetch_assoc($result);
33 33
   if ($data['domain'] == NULL)
34
-    $data['domain'] = 'schokokeks.org';
34
+    $data['domain'] = config('masterdomain');
35 35
   else
36 36
   {
37 37
     $dom = new Domain((int) $data['domain']);
... ...
@@ -6,7 +6,7 @@ $title = "Neue Mailingliste erstellen";
6 6
 $section = 'mailman_lists';
7 7
 $domains = get_mailman_domains();
8 8
 
9
-$maildomains = array('0' => 'lists.schokokeks.org');
9
+$maildomains = array('0' => config('mailman_host'));
10 10
 foreach ($domains AS $domain)
11 11
 {
12 12
   $maildomains[$domain['id']] = $domain['fqdn'];
... ...
@@ -19,7 +19,7 @@ output('<p>Tragen Sie hier die benötigten Daten zur Erstellung einer neuen Mail
19 19
 '.html_form('mailman_newlist', 'save', 'action=new', '
20 20
 <table>
21 21
 <tr><td>Listenname:</td><td><input type="text" name="listname" value="" />&#160;@&#160;'.html_select('maildomain', $maildomains).'</td></tr>
22
-<tr><td>E-Mail-Adresse des Listen-Verwalters:</td><td><input type="text" name="admin" value="'.$_SESSION['userinfo']['username'].'@'.$config['masterdomain'].'" /></td></tr>
22
+<tr><td>E-Mail-Adresse des Listen-Verwalters:</td><td><input type="text" name="admin" value="'.$_SESSION['userinfo']['username'].'@'.config('masterdomain').'" /></td></tr>
23 23
 </table>
24 24
 <br />
25 25
 <input type="submit" name="submit" value="Anlegen" />
... ...
@@ -6,7 +6,7 @@ require_role(ROLE_SYSTEMUSER);
6 6
 $title = "Neue Mailingliste erstellen";
7 7
 $domains = get_mailman_domains();
8 8
 
9
-$maildomains = array('0' => 'lists.schokokeks.org');
9
+$maildomains = array('0' => config('mailman_host'));
10 10
 foreach ($domains AS $domain)
11 11
 {
12 12
   $maildomains[$domain['id']] = $domain['fqdn'];
... ...
@@ -78,7 +78,7 @@ html_header("<script type=\"text/javascript\">
78 78
 
79 79
 $defaultdocroot = $vhost['domain'];
80 80
 if (! $vhost['domain'])
81
-  $defaultdocroot = $_SESSION['userinfo']['username'].'.schokokeks.org';
81
+  $defaultdocroot = $_SESSION['userinfo']['username'].'.'.config('masterdomain');
82 82
 if ($vhost['hostname'])
83 83
   $defaultdocroot = $vhost['hostname'].'.'.$defaultdocroot;
84 84
 
... ...
@@ -23,7 +23,7 @@ function empty_vhost()
23 23
   $vhost['hostname'] = '';
24 24
   
25 25
   $vhost['domain_id'] = -1;
26
-  $vhost['domain'] = $_SESSION['userinfo']['username'].'.schokokeks.org';
26
+  $vhost['domain'] = $_SESSION['userinfo']['username'].'.'.config('masterdomain');
27 27
   
28 28
   $vhost['homedir'] = $_SESSION['userinfo']['homedir'];
29 29
   $vhost['docroot'] = NULL;
... ...
@@ -45,7 +45,7 @@ function empty_alias()
45 45
   $alias['hostname'] = '';
46 46
   
47 47
   $alias['domain_id'] = -1;
48
-  $alias['domain'] = $_SESSION['userinfo']['username'].'.schokokeks.org';
48
+  $alias['domain'] = $_SESSION['userinfo']['username'].'.'.config('masterdomain');
49 49
   
50 50
   $alias['options'] = '';
51 51
   return $alias;
... ...
@@ -54,14 +54,14 @@ function empty_alias()
54 54
 
55 55
 function domainselect($selected = NULL, $selectattribute = '')
56 56
 {
57
-  global $domainlist;
57
+  global $domainlist, $config;
58 58
   if ($domainlist == NULL)
59 59
     $domainlist = get_domain_list($_SESSION['customerinfo']['customerno'],
60 60
                                   $_SESSION['userinfo']['uid']);
61 61
   $selected = (int) $selected;
62 62
 
63 63
   $ret = '<select id="domain" name="domain" size="1" '.$selectattribute.' >';
64
-  $ret .= ' <option value="-1">'.$_SESSION['userinfo']['username'].'.schokokeks.org</option>';
64
+  $ret .= ' <option value="-1">'.$_SESSION['userinfo']['username'].'.'.config('masterdomain').'</option>';
65 65
   $ret .= ' <option value="" disabled="disabled">--------------------------------</option>';
66 66
   foreach ($domainlist as $dom)
67 67
   {
... ...
@@ -27,8 +27,7 @@ if ($_GET['action'] == 'edit')
27 27
   $domainid = (int) $_POST['domain'];
28 28
   if ($domainid != -1) {
29 29
     $domain = new Domain( (int) $_POST['domain'] );
30
-    if ($domain->useraccount != $_SESSION['userinfo']['uid'])
31
-      system_failure('Ungültige Domain');
30
+    $domain->ensure_userdomain();
32 31
     $domainid = $domain->id;
33 32
   }
34 33
 
... ...
@@ -165,8 +164,7 @@ elseif ($_GET['action'] == 'addalias')
165 164
   $domainid = (int) $_POST['domain'];
166 165
   if ($domainid != -1) {
167 166
     $domain = new Domain( (int) $_POST['domain'] );
168
-    if ($domain->useraccount != $_SESSION['userinfo']['uid'])
169
-      system_failure('Ungültige Domain');
167
+    $domain->ensure_userdomain();
170 168
     $domainid = $domain->id;
171 169
   }
172 170
 
... ...
@@ -3,9 +3,6 @@
3 3
 require_once('inc/base.php');
4 4
 require_once('session/start.php');
5 5
 
6
-global $config;
7
-
8
-
9 6
 require_role(ROLE_SYSTEMUSER);
10 7
 
11 8
 $title = 'Drupal 6 einrichten';
... ...
@@ -63,7 +60,7 @@ else
63 60
   
64 61
   <h5>E-Mail-Adresse der Seite</h5>
65 62
   <p>Wenn die Website E-Mails versendet (z.B. für neue Benutzer, bei kommentaren auf einzelnen Seiten, ...) erscheint diese Adresse als Absender.
66
-  <p><label for="siteemail">E-Mail-Adresse:</label> <input type="text" id="siteemail" name="siteemail" value="'.$_SESSION['userinfo']['username'].'@'.$config['masterdomain'].'" /></p>
63
+  <p><label for="siteemail">E-Mail-Adresse:</label> <input type="text" id="siteemail" name="siteemail" value="'.$_SESSION['userinfo']['username'].'@'.config('masterdomain').'" /></p>
67 64
 </div>
68 65
 
69 66
 <h4>Drupal-Administrator</h4>
... ...
@@ -71,7 +68,7 @@ else
71 68
   <p>Der Administrator kann später auf der Website neue Benutzer anlegen, Seiten erzeugen und verändern und sonstige Verwaltungsaufgaben durchführen.</p>
72 69
   <p><label for="adminuser">Benutzername:</label> <input type="text" id="adminuser" name="adminuser" value="'.$_SESSION['userinfo']['username'].'" /></p>
73 70
   <p><label for="adminpassword">Passwort:</label> <input type="password" id="adminpassword" name="adminpassword" /></p>
74
-  <p><label for="adminemail">E-Mail-Adresse:</label> <input type="text" id="adminemail" name="adminemail" value="'.$_SESSION['userinfo']['username'].'@'.$config['masterdomain'].'" /></p>
71
+  <p><label for="adminemail">E-Mail-Adresse:</label> <input type="text" id="adminemail" name="adminemail" value="'.$_SESSION['userinfo']['username'].'@'.config('masterdomain').'" /></p>
75 72
 </div>
76 73
 
77 74
 <p><input type="submit" name="submit" value="Drupal installieren!" /></p>
... ...
@@ -3,9 +3,6 @@
3 3
 require_once('inc/base.php');
4 4
 require_once('session/start.php');
5 5
 
6
-global $config;
7
-
8
-
9 6
 require_role(ROLE_SYSTEMUSER);
10 7
 
11 8
 $title = 'MediaWiki einrichten';
... ...
@@ -67,7 +64,7 @@ else
67 64
   <p>Der Wiki-Administrator kann später im Wiki neue Benutzer anlegen, Seiten sperren oder sonstige Verwaltungsaufgaben durchführen.</p>
68 65
   <p><label for="adminuser">Benutzername:</label> <input type="text" id="adminuser" name="adminuser" value="WikiSysop" /></p>
69 66
   <p><label for="adminpassword">Passwort:</label> <input type="password" id="adminpassword" name="adminpassword" /></p>
70
-  <p><label for="adminemail">E-Mail-Adresse:</label> <input type="text" id="adminemail" name="adminemail" value="'.$_SESSION['userinfo']['username'].'@'.$config['masterdomain'].'" /></p>
67
+  <p><label for="adminemail">E-Mail-Adresse:</label> <input type="text" id="adminemail" name="adminemail" value="'.$_SESSION['userinfo']['username'].'@'.config('masterdomain').'" /></p>
71 68
 </div>
72 69
 
73 70
 <p><input type="submit" name="submit" value="Wiki installieren!" /></p>
... ...
@@ -89,7 +89,7 @@ if ($_POST['target'] == 'new')
89 89
   $domain = $domain->fqdn;
90 90
   if ($domainid == -1)
91 91
   {
92
-    $domain = $_SESSION['userinfo']['username'].'.'.$config['masterdomain'];
92
+    $domain = $_SESSION['userinfo']['username'].'.'.config('masterdomain');
93 93
   }
94 94
 
95 95
   $url = ($ssl == 'forward' || $ssl == 'https' ? 'https://' : 'http://').($aliaswww ? 'www.' : '').((strlen($hostname) > 0) ? $hostname.'.' : '').$domain;
... ...
@@ -59,7 +59,7 @@ function find_role($login, $password, $i_am_admin = False)
59 59
   // Mail-Account
60 60
   $account = $login;
61 61
   if (! strstr($account, '@')) {
62
-    $account .= '@schokokeks.org';
62
+    $account .= '@'.config('masterdomain');
63 63
   }
64 64
   $result = db_query("SELECT cryptpass FROM mail.courier_mailaccounts WHERE account='{$account}' LIMIT 1;");
65 65
   if (@mysql_num_rows($result) > 0)
... ...
@@ -215,7 +215,7 @@ function setup_session($role, $useridentity)
215 215
   {
216 216
     $id = $useridentity;
217 217
     if (! strstr($id, '@'))
218
-      $id .= '@schokokeks.org';
218
+      $id .= '@'.config('masterdomain');
219 219
     $_SESSION['mailaccount'] = $id;
220 220
     DEBUG("We are mailaccount: {$_SESSION['mailaccount']}");
221 221
   }
222 222