Commit 8ab3cdc0 authored by tbrehm's avatar tbrehm
Browse files

Merged revisions 2681-2739 from 3.0.4 stable branch.

parent 8cddcd77
......@@ -865,11 +865,11 @@ class installer_dist extends installer_base {
if($conf['nginx']['installed'] == true){
$command = 'usermod -a -G ispconfig '.$conf['nginx']['user'];
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
if(is_user('ispapps')){
//if(is_user('ispapps')){
// Allow the ispapps vhost access to /etc/squirrelmail
$command = 'usermod -a -G '.$conf['apache']['group'].' ispapps';
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
}
//$command = 'usermod -a -G '.$conf['apache']['group'].' ispapps';
//caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
//}
if(is_group('ispapps')){
$command = 'usermod -a -G ispapps '.$conf['nginx']['user'];
caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
......
......@@ -653,6 +653,7 @@ class installer extends installer_base
if(substr($socket_dir,-1) != '/') $socket_dir .= '/';
if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir);
$fpm_socket = $socket_dir.'apps.sock';
$cgi_socket = escapeshellcmd($conf['nginx']['cgi_socket']);
$content = str_replace('{apps_vhost_ip}', $apps_vhost_ip, $content);
$content = str_replace('{apps_vhost_port}', $conf['web']['apps_vhost_port'], $content);
......@@ -660,6 +661,7 @@ class installer extends installer_base
$content = str_replace('{apps_vhost_servername}', $apps_vhost_servername, $content);
//$content = str_replace('{fpm_port}', ($conf['nginx']['php_fpm_start_port']+1), $content);
$content = str_replace('{fpm_socket}', $fpm_socket, $content);
$content = str_replace('{cgi_socket}', $cgi_socket, $content);
wf($vhost_conf_dir.'/apps.vhost', $content);
......
......@@ -1500,6 +1500,7 @@ class installer_base {
if(substr($socket_dir,-1) != '/') $socket_dir .= '/';
if(!is_dir($socket_dir)) exec('mkdir -p '.$socket_dir);
$fpm_socket = $socket_dir.'apps.sock';
$cgi_socket = escapeshellcmd($conf['nginx']['cgi_socket']);
$content = str_replace('{apps_vhost_ip}', $apps_vhost_ip, $content);
$content = str_replace('{apps_vhost_port}', $conf['web']['apps_vhost_port'], $content);
......@@ -1507,6 +1508,7 @@ class installer_base {
$content = str_replace('{apps_vhost_servername}', $apps_vhost_servername, $content);
//$content = str_replace('{fpm_port}', ($conf['nginx']['php_fpm_start_port']+1), $content);
$content = str_replace('{fpm_socket}', $fpm_socket, $content);
$content = str_replace('{cgi_socket}', $cgi_socket, $content);
wf($vhost_conf_dir.'/apps.vhost', $content);
......
ALTER TABLE `shell_user` CHANGE `ssh_rsa` `ssh_rsa` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '';
\ No newline at end of file
......@@ -1026,7 +1026,7 @@ CREATE TABLE `shell_user` (
`shell` varchar(255) NOT NULL default '/bin/bash',
`dir` varchar(255) default NULL,
`chroot` varchar(255) NOT NULL,
`ssh_rsa` VARCHAR( 600 ) NOT NULL default '',
`ssh_rsa` text NOT NULL,
PRIMARY KEY (`shell_user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
......
......@@ -122,7 +122,7 @@ $conf['init_scripts'] = '/etc/init.d';
//** Interface
$conf['interface_modules_enabled'] = 'dashboard,mail,sites,dns,tools';
$conf['interface_modules_enabled'] = 'dashboard,mail,sites,dns,tools,help';
//** Demo mode
/* The demo mode is an option to restrict certain actions in the interface like
......
......@@ -38,9 +38,15 @@ server {
try_files $uri =404;
root /usr/share/;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:{fpm_socket};
# To access phpMyAdmin, the default user (like www-data on Debian/Ubuntu) must be used
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 4k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
......@@ -57,9 +63,15 @@ server {
try_files $uri =404;
root /usr/share/;
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:{fpm_socket};
# To access SquirrelMail, the default user (like www-data on Debian/Ubuntu) must be used
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 4k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
location ~* ^/squirrelmail/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
......@@ -68,4 +80,24 @@ server {
location /webmail {
rewrite ^/* /squirrelmail last;
}
location /cgi-bin/mailman {
root /usr/lib/;
fastcgi_split_path_info (^/cgi-bin/mailman/[^/]*)(.*)$;
include /etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_intercept_errors on;
fastcgi_pass unix:{cgi_socket};
}
location /images/mailman {
alias /usr/share/images/mailman;
}
location /pipermail {
alias /var/lib/mailman/archives/public;
autoindex on;
}
}
\ No newline at end of file
......@@ -103,7 +103,7 @@ wget=/usr/bin/wget
[rescue]
try_rescue=n
do_not_try_rescue_apache=n
do_not_try_rescue_httpd=n
do_not_try_rescue_mysql=n
do_not_try_rescue_mail=n
......@@ -63,6 +63,31 @@ class custom_datasource {
return $records_new;
}
function webdav_domains($field, $record) {
global $app, $conf;
$servers = $app->db->queryAllRecords("SELECT * FROM server WHERE active = 1 AND mirror_server_id = 0");
$server_ids = array();
$app->uses('getconf');
if(is_array($servers) && !empty($servers)){
foreach($servers as $server){
$web_config = $app->getconf->get_server_config($server['server_id'], 'web');
if($web_config['server_type'] != 'nginx') $server_ids[] = $server['server_id'];
}
}
$server_ids = implode(',', $server_ids);
$records = $app->db->queryAllRecords("SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND server_id IN (".$server_ids.") AND ".$app->tform->getAuthSQL('r')." ORDER BY domain");
$records_new = array();
if(is_array($records)) {
foreach($records as $rec) {
$key = $rec['domain_id'];
$records_new[$key] = $rec['domain'];
}
}
return $records_new;
}
function client_servers($field, $record) {
global $app, $conf;
......
......@@ -282,7 +282,7 @@ class listform {
public function decode($record)
{
global $conf, $app;
if(is_array($record)) {
if(is_array($record) && count($record) > 0) {
foreach($this->listDef['item'] as $field){
$key = $field['field'];
if(isset($record[$key])) {
......
......@@ -86,15 +86,17 @@ class listform_actions {
$rec['bgcolor'] = $this->DataRowColor;
//* substitute value for select fields
foreach($app->listform->listDef['item'] as $field) {
$key = $field['field'];
if(isset($field['formtype']) && $field['formtype'] == 'SELECT') {
if(strtolower($rec[$key]) == 'y' or strtolower($rec[$key]) == 'n') {
// Set a additional image variable for bolean fields
$rec['_'.$key.'_'] = (strtolower($rec[$key]) == 'y')?'x16/tick_circle.png':'x16/cross_circle.png';
if(is_array($app->listform->listDef['item']) && count($app->listform->listDef['item']) > 0) {
foreach($app->listform->listDef['item'] as $field) {
$key = $field['field'];
if(isset($field['formtype']) && $field['formtype'] == 'SELECT') {
if(strtolower($rec[$key]) == 'y' or strtolower($rec[$key]) == 'n') {
// Set a additional image variable for bolean fields
$rec['_'.$key.'_'] = (strtolower($rec[$key]) == 'y')?'x16/tick_circle.png':'x16/cross_circle.png';
}
//* substitute value for select field
$rec[$key] = @$field['value'][$rec[$key]];
}
//* substitute value for select field
$rec[$key] = @$field['value'][$rec[$key]];
}
}
......
......@@ -1353,6 +1353,12 @@ class remoting {
if($params['system_user'] == '') $params['system_user'] = '-';
if($params['system_group'] == '') $params['system_group'] = '-';
//* Set a few defaults for nginx servers
if($params['pm_max_children'] == '') $params['pm_max_children'] = 1;
if($params['pm_start_servers'] == '') $params['pm_start_servers'] = 1;
if($params['pm_min_spare_servers'] == '') $params['pm_min_spare_servers'] = 1;
if($params['pm_max_spare_servers'] == '') $params['pm_max_spare_servers'] = 1;
$domain_id = $this->insertQuery('../sites/form/web_domain.tform.php',$client_id,$params, 'sites:web_domain:on_after_insert');
if ($readonly === true)
$app->db->query("UPDATE web_domain SET `sys_userid` = '1' WHERE domain_id = ".$domain_id);
......@@ -2521,8 +2527,8 @@ class remoting {
return false;
}
$client_id = intval($client_id);
$sql = "SELECT database_id, database_name, database_user, database_password FROM web_database WHERE sys_userid = $client_id ";
$all = $app->db->queryAllRecords($sql);
$sql = "SELECT d.database_id, d.database_name, d.database_user, d.database_password FROM web_database d INNER JOIN sys_user s on(d.sys_groupid = s.default_group) WHERE client_id = $client_id";
$all = $app->db->queryAllRecords($sql);
return $all;
}
......
......@@ -33,6 +33,12 @@ $wb['top_menu_domain'] = 'Domene';
$wb['top_menu_dashboard'] = 'Početna';
$wb['toolsarea_head_txt'] = 'Postavke';
$wb['latest_news_txt'] = 'Vijesti';
$wb['error_301'] = 'Ne možete koristiti ovaj modul.';
$wb['error_302'] = 'Greška u modulu.';
$wb['error_1001'] = 'Korisničko ime i šifra ne mogu biti prazni!';
$wb['error_1002'] = 'Korisničko ime i/ili šifra nisu ispravni!';
$wb['error_1003'] = 'Korisničko ime je deaktivirano!';
$wb['top_menu_vm'] = 'VServer';
$wb['daynamesmin_su'] = 'Su';
$wb['daynamesmin_mo'] = 'Mo';
$wb['daynamesmin_tu'] = 'Tu';
......@@ -61,10 +67,4 @@ $wb['monthnamesshort_nov'] = 'Nov';
$wb['monthnamesshort_dec'] = 'Dec';
$wb['datepicker_nextText'] = 'Next';
$wb['datepicker_prevText'] = 'Prev';
$wb['error_301'] = 'Module not permitted for the current user.';
$wb['error_302'] = 'Module invalid.';
$wb['error_1001'] = 'The username and password cannot be empty !';
$wb['error_1002'] = 'The username and/or password are not correct !';
$wb['error_1003'] = 'The username is deactivated!';
$wb['top_menu_vm'] = 'VServer';
?>
<?php
$wb['conf_format_dateshort'] = 'Y-m-d';
$wb['conf_format_dateshort'] = 'd-m-Y';
$wb['conf_format_datelong'] = 'l dS of F Y';
$wb['conf_format_timeshort'] = 'H:i';
$wb['conf_format_timelong'] = 'H:i:s';
$wb['conf_format_datetime'] = 'Y-m-d H:i';
$wb['conf_format_datetime'] = 'd-m-Y H:i';
$wb['number_format_decimals'] = '2';
$wb['number_format_dec_point'] = '.';
$wb['number_format_thousands_sep'] = '';
$wb['error_301'] = 'Modulo non permesso per l`utente corrente.';
$wb['error_302'] = 'Modulo non valido.';
$wb['error_1001'] = 'Nome utente e password non possono essere vuoti!';
$wb['error_1002'] = 'Il nome utente e/o la password non sono corretti!';
$wb['error_1003'] = 'Questo utento non è attivo!';
$wb['number_format_dec_point'] = ',';
$wb['number_format_thousands_sep'] = '.';
$wb['delete_confirmation'] = 'Sei sicuro di voler cancellare questo record?';
$wb['error_no_view_permission'] = 'Non hai il permesso di visualizzare questo record o non esiste!';
$wb['error_no_delete_permission'] = 'Non hai il permesso per cancellare questo record!';
$wb['error_no_view_permission'] = 'Non hai il permesso di visualizzare questo record o non esiste.';
$wb['error_no_delete_permission'] = 'Non hai il permesso per cancellare questo record.';
$wb['page_txt'] = 'Pagina';
$wb['page_of_txt'] = 'di';
$wb['page_next_txt'] = 'Successiva';
......@@ -23,21 +18,26 @@ $wb['delete_txt'] = 'Cancella';
$wb['filter_txt'] = 'Filtro';
$wb['add_new_record_txt'] = 'Aggiungi nuovo record';
$wb['btn_save_txt'] = 'Salva';
$wb['btn_cancel_txt'] = 'Indietro';
$wb['toolsarea_head_txt'] = 'Tools';
$wb['page_and_txt'] = 'and';
$wb['top_menu_system'] = 'System';
$wb['top_menu_client'] = 'Client';
$wb['btn_cancel_txt'] = 'Annulla';
$wb['toolsarea_head_txt'] = 'Strumenti';
$wb['page_and_txt'] = 'e';
$wb['top_menu_system'] = 'Sistema';
$wb['top_menu_client'] = 'Clienti';
$wb['top_menu_email'] = 'Email';
$wb['top_menu_monitor'] = 'Monitor';
$wb['top_menu_sites'] = 'Sites';
$wb['top_menu_sites'] = 'Siti';
$wb['top_menu_dns'] = 'DNS';
$wb['top_menu_tools'] = 'Tools';
$wb['top_menu_help'] = 'Help';
$wb['top_menu_billing'] = 'Billing';
$wb['top_menu_domain'] = 'Domains';
$wb['top_menu_tools'] = 'Strumenti';
$wb['top_menu_help'] = 'Aiuto';
$wb['top_menu_billing'] = 'Fatture';
$wb['top_menu_domain'] = 'Domini';
$wb['top_menu_dashboard'] = 'Home';
$wb['latest_news_txt'] = 'Latest news';
$wb['latest_news_txt'] = 'Ultime notizie';
$wb['error_301'] = 'Module not permitted for the current user.';
$wb['error_302'] = 'Module invalid.';
$wb['error_1001'] = 'The username and password cannot be empty !';
$wb['error_1002'] = 'The username and/or password are not correct !';
$wb['error_1003'] = 'The username is deactivated!';
$wb['top_menu_vm'] = 'VServer';
$wb['daynamesmin_su'] = 'Su';
$wb['daynamesmin_mo'] = 'Mo';
......
......@@ -102,18 +102,6 @@ $form["tabs"]['services'] = array (
'default' => '0',
'value' => array(0 => 0,1 => 1)
),
'proxy_server' => array (
'datatype' => 'INTEGER',
'formtype' => 'CHECKBOX',
'default' => '0',
'value' => array(0 => 0,1 => 1)
),
'firewall_server' => array (
'datatype' => 'INTEGER',
'formtype' => 'CHECKBOX',
'default' => '0',
'value' => array(0 => 0,1 => 1)
),
'mirror_server_id' => array (
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
......
......@@ -1053,7 +1053,7 @@ $form["tabs"]['rescue'] = array(
'default' => 'n',
'value' => array(0 => 'n', 1 => 'y')
),
'do_not_try_rescue_apache' => array(
'do_not_try_rescue_httpd' => array(
'datatype' => 'VARCHAR',
'formtype' => 'CHECKBOX',
'default' => 'n',
......
......@@ -144,9 +144,9 @@ $wb['php_fpm_start_port_error_empty'] = 'PHP-FPM start port is empty.';
$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket directory';
$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket directory is empty.';
$wb['try_rescue_txt'] = 'Enable service monitoring and restart on failure';
$wb['do_not_try_rescue_apache_txt'] = 'Disable apache monitoring';
$wb['do_not_try_rescue_mysql_txt'] = 'Disable MySQL monitoring';
$wb['do_not_try_rescue_mail_txt'] = 'Disable Email monitoring';
$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the Disable MySQL monitor checkbox and then wait 2-3 minutes.<br>if you do not wait 2-3 minutes, rescue will try to restart mysql!';
$wb['enable_sni_txt'] = 'Enable SNI';
$wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring';
?>
......@@ -144,9 +144,9 @@ $wb['php_fpm_start_port_error_empty'] = 'PHP-FPM start port is empty.';
$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket directory';
$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket directory is empty.';
$wb['try_rescue_txt'] = 'Enable service monitoring and restart on failure';
$wb['do_not_try_rescue_apache_txt'] = 'Disable apache monitoring';
$wb['do_not_try_rescue_mysql_txt'] = 'Disable MySQL monitoring';
$wb['do_not_try_rescue_mail_txt'] = 'Disable Email monitoring';
$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the Disable MySQL monitor checkbox and then wait 2-3 minutes.<br>if you do not wait 2-3 minutes, rescue will try to restart mysql!';
$wb['enable_sni_txt'] = 'Enable SNI';
$wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring';
?>
......@@ -144,9 +144,9 @@ $wb['php_fpm_start_port_error_empty'] = 'PHP-FPM start port is empty.';
$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket directory';
$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket directory is empty.';
$wb['try_rescue_txt'] = 'Enable service monitoring and restart on failure';
$wb['do_not_try_rescue_apache_txt'] = 'Disable apache monitoring';
$wb['do_not_try_rescue_mysql_txt'] = 'Disable MySQL monitoring';
$wb['do_not_try_rescue_mail_txt'] = 'Disable Email monitoring';
$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the Disable MySQL monitor checkbox and then wait 2-3 minutes.<br>if you do not wait 2-3 minutes, rescue will try to restart mysql!';
$wb['enable_sni_txt'] = 'Enable SNI';
$wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring';
?>
......@@ -144,9 +144,9 @@ $wb['php_fpm_start_port_error_empty'] = 'PHP-FPM start port is empty.';
$wb['php_fpm_socket_dir_txt'] = 'PHP-FPM socket directory';
$wb['php_fpm_socket_dir_error_empty'] = 'PHP-FPM socket directory is empty.';
$wb['try_rescue_txt'] = 'Enable service monitoring and restart on failure';
$wb['do_not_try_rescue_apache_txt'] = 'Disable apache monitoring';
$wb['do_not_try_rescue_mysql_txt'] = 'Disable MySQL monitoring';
$wb['do_not_try_rescue_mail_txt'] = 'Disable Email monitoring';
$wb['rescue_description_txt'] = '<b>Information:</b> If you want to shut down mysql you have to select the Disable MySQL monitor checkbox and then wait 2-3 minutes.<br>if you do not wait 2-3 minutes, rescue will try to restart mysql!';
$wb['enable_sni_txt'] = 'Enable SNI';
$wb['do_not_try_rescue_httpd_txt'] = 'Disable HTTPD monitoring';
?>
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment