From ab7597c7ec2d62aadf82c4c647d3dc63dae8de90 Mon Sep 17 00:00:00 2001 From: mcramer <m.cramer@pixcept.de> Date: Thu, 16 Aug 2012 14:53:05 -0400 Subject: [PATCH] Implemented FS#2379 - Add perl option to web sites (apache2 mod_perl2) Fixed (partly) FS#2310 - Template switch not working in mailuser module, for dashlets and the login page --- server/conf/vhost.conf.master | 13 +++++++++++++ install/sql/ispconfig3.sql | 1 + interface/web/index.php | 2 ++ install/sql/incremental/upd_0036.sql | 5 +++++ interface/web/sites/lib/lang/de_web_domain.lng | 1 + interface/web/sites/lib/lang/en_web_domain.lng | 1 + interface/web/sites/form/web_domain.tform.php | 6 ++++++ interface/web/sites/templates/web_domain_edit.htm | 6 ++++++ 8 files changed, 35 insertions(+), 0 deletions(-) diff --git a/install/sql/incremental/upd_0036.sql b/install/sql/incremental/upd_0036.sql new file mode 100644 index 0000000..db0d59d --- /dev/null +++ b/install/sql/incremental/upd_0036.sql @@ -0,0 +1,5 @@ +-- -------------------------------------------------------- + +ALTER TABLE `web_domain` ADD `perl` enum('n','y') NOT NULL default 'n' AFTER `python`; + + diff --git a/install/sql/ispconfig3.sql b/install/sql/ispconfig3.sql index a7ac059..88a6884 100644 --- a/install/sql/ispconfig3.sql +++ b/install/sql/ispconfig3.sql @@ -1643,6 +1643,7 @@ `php` varchar(32) NOT NULL default 'y', `ruby` enum('n','y') NOT NULL default 'n', `python` enum('n','y') NOT NULL default 'n', + `perl` enum('n','y') NOT NULL default 'n', `redirect_type` varchar(255) default NULL, `redirect_path` varchar(255) default NULL, `seo_redirect` varchar(255) default NULL, diff --git a/interface/web/index.php b/interface/web/index.php index 5122d2d..b131396 100644 --- a/interface/web/index.php +++ b/interface/web/index.php @@ -31,6 +31,8 @@ require_once('../lib/config.inc.php'); require_once('../lib/app.inc.php'); +if(!isset($_SESSION['s']['module']['name'])) $_SESSION['s']['module']['name'] = 'login'; + $app->uses('tpl'); $app->tpl->newTemplate('main.tpl.htm'); diff --git a/interface/web/sites/form/web_domain.tform.php b/interface/web/sites/form/web_domain.tform.php index 1682f6b..ef9470e 100644 --- a/interface/web/sites/form/web_domain.tform.php +++ b/interface/web/sites/form/web_domain.tform.php @@ -230,6 +230,12 @@ ),*/ 'value' => '' ), + 'perl' => array ( + 'datatype' => 'VARCHAR', + 'formtype' => 'CHECKBOX', + 'default' => 'n', + 'value' => array(0 => 'n',1 => 'y') + ), 'ruby' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'CHECKBOX', diff --git a/interface/web/sites/lib/lang/de_web_domain.lng b/interface/web/sites/lib/lang/de_web_domain.lng index 00d262a..e969e17 100644 --- a/interface/web/sites/lib/lang/de_web_domain.lng +++ b/interface/web/sites/lib/lang/de_web_domain.lng @@ -80,6 +80,7 @@ $wb['ipv6_address_txt'] = 'IPv6-Adresse'; $wb['error_no_sni_txt'] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb['python_txt'] = 'Python'; +$wb['perl_txt'] = 'Perl'; $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; $wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers'; $wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers'; diff --git a/interface/web/sites/lib/lang/en_web_domain.lng b/interface/web/sites/lib/lang/en_web_domain.lng index 4968cfd..ba17f7e 100644 --- a/interface/web/sites/lib/lang/en_web_domain.lng +++ b/interface/web/sites/lib/lang/en_web_domain.lng @@ -81,6 +81,7 @@ $wb["php_fpm_use_socket_txt"] = 'Use Socket For PHP-FPM'; $wb["error_no_sni_txt"] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; $wb["python_txt"] = 'Python'; +$wb["perl_txt"] = 'Perl'; $wb["pm_max_children_txt"] = 'PHP-FPM pm.max_children'; $wb["pm_start_servers_txt"] = 'PHP-FPM pm.start_servers'; $wb["pm_min_spare_servers_txt"] = 'PHP-FPM pm.min_spare_servers'; diff --git a/interface/web/sites/templates/web_domain_edit.htm b/interface/web/sites/templates/web_domain_edit.htm index 496ddec..96319c9 100644 --- a/interface/web/sites/templates/web_domain_edit.htm +++ b/interface/web/sites/templates/web_domain_edit.htm @@ -80,6 +80,12 @@ </div> </div> <div class="ctrlHolder apache"> + <p class="label">{tmpl_var name='perl_txt'}</p> + <div class="multiField"> + {tmpl_var name='perl'} + </div> + </div> + <div class="ctrlHolder apache"> <p class="label">{tmpl_var name='ruby_txt'}</p> <div class="multiField"> {tmpl_var name='ruby'} diff --git a/server/conf/vhost.conf.master b/server/conf/vhost.conf.master index 4b11640..6c9513a 100644 --- a/server/conf/vhost.conf.master +++ b/server/conf/vhost.conf.master @@ -109,6 +109,19 @@ </IfModule> </tmpl_if> +<tmpl_if name='perl' op='==' value='y'> + <IfModule mod_perl.c> + PerlModule ModPerl::Registry + PerlModule Apache2::Reload + <Directory {tmpl_var name='web_document_root_www'}> + SetHandler perl-script + PerlResponseHandler ModPerl::Registry + PerlOptions +ParseHeaders + Options +ExecCGI + </Directory> + </IfModule> +</tmpl_if> + <tmpl_if name='python' op='==' value='y'> <IfModule mod_python.c> <Directory {tmpl_var name='web_document_root_www'}> -- Gitblit v1.9.1