diff --git a/TODO b/TODO index 3b8bf01f..a0361bd4 100644 --- a/TODO +++ b/TODO @@ -8,7 +8,7 @@ FIXED 0001281 Wrong open_basedir directive 0001280 deb packet 1.4.2.1-2 fu*ked FIXED 0001279 incorrect usage of escapeshellcmd FIXED 0001269 AWStats RewriteRule is wrong -WONFIX 0001278 Customer and domain directories are not created +WONFIX 0001278 Customer and domain directories are not created FIXED 0001277 Apache Redirect => permanent 301 FIXED 0001276 Bind Zones Not Updated on Nameserver Change FIXED 0001275 Setting up Traffic limit is limited to 999 GB @@ -17,8 +17,8 @@ FIXED 0001271 cant install the package magento FIXED 0001270 xinet reltime update mistake FIXED 0001268 SysCP Funktion: aktualisierung in Real-Time 0001041 Customer should have access to his webserver logs. - 0001267 Domain-Aliases also create a HOST-entry - 0001266 Lighttpd has a internal limit of regex-hits which limits max amount of domain-aliases +FIXED 0001267 Domain-Aliases also create a HOST-entry +FIXED 0001266 Lighttpd has a internal limit of regex-hits which limits max amount of domain-aliases FIXED 0001263 Cosmettic Change WONTFIX 0001056 Need extra payment methods WONTFIX 0001262 Currency type modification. diff --git a/admin_domains.php b/admin_domains.php index c0ffdc5c..5f9208e2 100644 --- a/admin_domains.php +++ b/admin_domains.php @@ -996,8 +996,20 @@ if($page == 'domains' $db->query("UPDATE `" . TABLE_PANEL_ADMINS . "` SET `domains_used` = `domains_used` - 1 WHERE `adminid` = '" . (int)$result['adminid'] . "' "); } + $ssfs = isset($_POST['specialsettingsforsubdomains']) ? intval($_POST['specialsettingsforsubdomains']) : 1; + if($ssfs == 1) + { + $upd_specialsettings = ", `specialsettings`='" . $db->escape($specialsettings) . "' "; + } + else + { + $upd_specialsettings = ''; + $db->query("UPDATE `" . TABLE_PANEL_DOMAINS . "` SET `specialsettings`='' WHERE `parentdomainid`='" . (int)$id . "'"); + $log->logAction(ADM_ACTION, LOG_INFO, "removed specialsettings on all subdomains of domain #" . $id); + } + $result = $db->query("UPDATE `" . TABLE_PANEL_DOMAINS . "` SET `customerid` = '" . (int)$customerid . "', `adminid` = '" . (int)$adminid . "', `documentroot`='" . $db->escape($documentroot) . "', `ipandport`='" . $db->escape($ipandport) . "', `ssl`='" . (int)$ssl . "', `ssl_redirect`='" . (int)$ssl_redirect . "', `ssl_ipandport`='" . (int)$ssl_ipandport . "', `aliasdomain`=" . (($aliasdomain != 0 && $alias_check == 0) ? '\'' . $db->escape($aliasdomain) . '\'' : 'NULL') . ", `isbinddomain`='" . $db->escape($isbinddomain) . "', `isemaildomain`='" . $db->escape($isemaildomain) . "', `email_only`='" . $db->escape($email_only) . "', `subcanemaildomain`='" . $db->escape($subcanemaildomain) . "', `dkim`='" . $db->escape($dkim) . "', `caneditdomain`='" . $db->escape($caneditdomain) . "', `zonefile`='" . $db->escape($zonefile) . "', `wwwserveralias`='" . $db->escape($wwwserveralias) . "', `openbasedir`='" . $db->escape($openbasedir) . "', `safemode`='" . $db->escape($safemode) . "', `phpsettingid`='" . $db->escape($phpsettingid) . "', `mod_fcgid_starter`='" . $db->escape($mod_fcgid_starter) . "', `mod_fcgid_maxrequests`='" . $db->escape($mod_fcgid_maxrequests) . "', `specialsettings`='" . $db->escape($specialsettings) . "', `registration_date`='" . $db->escape($registration_date) . "' WHERE `id`='" . (int)$id . "'"); - $result = $db->query("UPDATE `" . TABLE_PANEL_DOMAINS . "` SET `customerid` = '" . (int)$customerid . "', `adminid` = '" . (int)$adminid . "', `ipandport`='" . $db->escape($ipandport) . "', `openbasedir`='" . $db->escape($openbasedir) . "', `safemode`='" . $db->escape($safemode) . "', `phpsettingid`='" . $db->escape($phpsettingid) . "', `mod_fcgid_starter`='" . $db->escape($mod_fcgid_starter) . "', `mod_fcgid_maxrequests`='" . $db->escape($mod_fcgid_maxrequests) . "', `specialsettings`='" . $db->escape($specialsettings) . "'" . $updatechildren . " WHERE `parentdomainid`='" . (int)$id . "'"); + $result = $db->query("UPDATE `" . TABLE_PANEL_DOMAINS . "` SET `customerid` = '" . (int)$customerid . "', `adminid` = '" . (int)$adminid . "', `ipandport`='" . $db->escape($ipandport) . "', `openbasedir`='" . $db->escape($openbasedir) . "', `safemode`='" . $db->escape($safemode) . "', `phpsettingid`='" . $db->escape($phpsettingid) . "', `mod_fcgid_starter`='" . $db->escape($mod_fcgid_starter) . "', `mod_fcgid_maxrequests`='" . $db->escape($mod_fcgid_maxrequests) . "'" . $upd_specialsettings . $updatechildren . " WHERE `parentdomainid`='" . (int)$id . "'"); $log->logAction(ADM_ACTION, LOG_INFO, "edited domain #" . $id); $redirect_props = Array( 'page' => $page, @@ -1114,6 +1126,8 @@ if($page == 'domains' $phpconfigs.= makeoption($phpconfigs_row['description'], $phpconfigs_row['id'], $result['phpsettingid'], true, true); } + $specialsettingsforsubdomains = makeyesno('specialsettingsforsubdomains', '1', '0', '1'); + $result = htmlentities_array($result); eval("echo \"" . getTemplate("domains/domains_edit") . "\";"); } diff --git a/lng/english.lng.php b/lng/english.lng.php index ca2301ec..3d9a880c 100644 --- a/lng/english.lng.php +++ b/lng/english.lng.php @@ -1279,5 +1279,7 @@ $lng['crondesc']['cron_apsupdater'] = 'updating APS packages'; $lng['crondesc']['cron_traffic'] = 'traffic calculation'; $lng['crondesc']['cron_ticketsreset'] = 'resetting ticket-counters'; $lng['crondesc']['cron_ticketarchive'] = 'archiving old tickets'; +$lng['admin']['specialsettingsforsubdomains'] = 'Apply specialsettings to all subdomains (*.example.com)'; +$lng['serversettings']['specialsettingsforsubdomains']['description'] = 'If yes these custom vhost-settings will be added to all subdomains; if no subdomain-specialsettings are being removed.'; ?> diff --git a/lng/german.lng.php b/lng/german.lng.php index 8d760c26..9ab23acc 100644 --- a/lng/german.lng.php +++ b/lng/german.lng.php @@ -1259,5 +1259,7 @@ $lng['crondesc']['cron_apsupdater'] = 'Aktualisieren der APS Pakete'; $lng['crondesc']['cron_traffic'] = 'Traffic-Berechnung'; $lng['crondesc']['cron_ticketsreset'] = 'Zurücksetzen der Ticket-Zähler'; $lng['crondesc']['cron_ticketarchive'] = 'Archivieren alter Tickets'; +$lng['admin']['specialsettingsforsubdomains'] = 'Übernehme Einstellungen für alle Subdomains (*.beispiel.de)'; +$lng['serversettings']['specialsettingsforsubdomains']['description'] = 'Wenn ja, werden die individuellen Einstellungen für alle Subdomains übernommen; wenn nein, werden Subdomain-Specialsettings entfernt.'; ?> diff --git a/scripts/jobs/cron_tasks.inc.http.20.lighttpd.php b/scripts/jobs/cron_tasks.inc.http.20.lighttpd.php index fb2a753e..1079219a 100644 --- a/scripts/jobs/cron_tasks.inc.http.20.lighttpd.php +++ b/scripts/jobs/cron_tasks.inc.http.20.lighttpd.php @@ -407,13 +407,13 @@ class lighttpd if($domain['iswildcarddomain'] == '1') { - $server_string[] = '(^|\.)' . $domain_name . '$'; + $server_string[] = '(?:^|\.)' . $domain_name . '$'; } else { if($domain['wwwserveralias'] == '1') { - $server_string[] = '^(www\.|)' . $domain_name . '$'; + $server_string[] = '^(?:www\.|)' . $domain_name . '$'; } else { @@ -429,13 +429,13 @@ class lighttpd if($alias_domain['iswildcarddomain'] == '1') { - $server_string[] = '(^|\.)' . $alias_domain_name . '$'; + $server_string[] = '(?:^|\.)' . $alias_domain_name . '$'; } else { if($alias_domain['wwwserveralias'] == '1') { - $server_string[] = '^(www\.|)' . $alias_domain_name . '$'; + $server_string[] = '^(?:www\.|)' . $alias_domain_name . '$'; } else { diff --git a/templates/admin/domains/domains_domain.tpl b/templates/admin/domains/domains_domain.tpl index 61ae09ed..447139f8 100644 --- a/templates/admin/domains/domains_domain.tpl +++ b/templates/admin/domains/domains_domain.tpl @@ -3,5 +3,5 @@ {$row['ipandport']} {$row['customername']} ({$row['loginname']}) {$lng['panel']['edit']} - {$lng['panel']['delete']}{$lng['domains']['hasaliasdomains']}{$lng['panel']['service_still_active']} + {$lng['panel']['delete']}{$lng['domains']['hasaliasdomains']} diff --git a/templates/admin/domains/domains_edit.tpl b/templates/admin/domains/domains_edit.tpl index 90db0bf1..71f1029a 100644 --- a/templates/admin/domains/domains_edit.tpl +++ b/templates/admin/domains/domains_edit.tpl @@ -105,6 +105,10 @@ $header {$lng['admin']['ownvhostsettings']}:
{$lng['serversettings']['default_vhostconf']['description']} + + {$lng['admin']['specialsettingsforsubdomains']}:
{$lng['serversettings']['specialsettingsforsubdomains']['description']} + {$specialsettingsforsubdomains} +