diff --git a/interface/web/admin/lib/lang/de_server_php.lng b/interface/web/admin/lib/lang/de_server_php.lng index 67dad7064ae56db3e87a1e8e2885dcaee572ffe2..4eb9065ba320896bd8d697026046a0c41d4f1bdb 100644 --- a/interface/web/admin/lib/lang/de_server_php.lng +++ b/interface/web/admin/lib/lang/de_server_php.lng @@ -14,4 +14,5 @@ $wb['php_fpm_init_script_txt'] = 'Pfad zum PHP-FPM Init Script'; $wb['php_fpm_ini_dir_txt'] = 'Pfad zum php.ini Verzeichnis'; $wb['php_fpm_pool_dir_txt'] = 'Pfad zum PHP-FPM Pool Verzeichnis'; $wb['active_txt'] = 'Aktiv'; +$wb['php_in_use_error'] = 'Diese PHP-Version wird noch benutzt.'; ?> diff --git a/interface/web/admin/lib/lang/en_server_php.lng b/interface/web/admin/lib/lang/en_server_php.lng index 179a8fc357142ea401cd663697ef817237957d10..6ae160b648e4d46aeceddd143c6a7bbbc3040696 100644 --- a/interface/web/admin/lib/lang/en_server_php.lng +++ b/interface/web/admin/lib/lang/en_server_php.lng @@ -14,4 +14,5 @@ $wb['php_fpm_init_script_txt'] = 'Path to the PHP-FPM init script'; $wb['php_fpm_ini_dir_txt'] = 'Path to the php.ini directory'; $wb['php_fpm_pool_dir_txt'] = 'Path to the PHP-FPM pool directory'; $wb['active_txt'] = 'Active'; +$wb['php_in_use_error'] = 'This PHP-Version is in use.'; ?> diff --git a/interface/web/admin/server_php_del.php b/interface/web/admin/server_php_del.php index 6848eea8d472a0c787e011558b7429375fc7965e..f160c1b2d93e89db8899b97cb31364f0811d7cd1 100644 --- a/interface/web/admin/server_php_del.php +++ b/interface/web/admin/server_php_del.php @@ -46,7 +46,39 @@ require_once '../../lib/app.inc.php'; $app->auth->check_module_permissions('admin'); $app->auth->check_security_permissions('admin_allow_server_php'); -$app->uses("tform_actions"); -$app->tform_actions->onDelete(); +$app->uses('tpl,tform,tform_actions'); +$app->load('tform_actions'); + +class page_action extends tform_actions { + + function onBeforeDelete() { + global $app; $conf; + + $check = array(); + + // fastcgi + if(!empty(trim($this->dataRecord['php_fastcgi_binary']))) $check[] = trim($this->dataRecord['php_fastcgi_binary']); + if(!empty(trim($this->dataRecord['php_fastcgi_ini_dir']))) $check[] = trim($this->dataRecord['php_fastcgi_ini_dir']); + if(!empty($check)) $fastcgi_check = implode(':', $check); + unset($check); + + // fpm + if(!empty(trim($this->dataRecord['php_fpm_init_script']))) $check[] = trim($this->dataRecord['php_fpm_init_script']); + if(!empty(trim($this->dataRecord['php_fpm_ini_dir']))) $check[] = trim($this->dataRecord['php_fpm_ini_dir']); + if(!empty(trim($this->dataRecord['php_fpm_pool_dir']))) $check[] = trim($this->dataRecord['php_fpm_pool_dir']); + if(!empty($check)) $fpm_check = implode(':', $check); + + $sql = 'SELECT domain_id FROM web_domain WHERE server_id = ? AND fastcgi_php_version LIKE ?'; + if(isset($fastcgi_check)) $web_domains_fastcgi = $app->db->queryAllRecords($sql, $this->dataRecord['server_id'], '%:'.$fastcgi_check); + if(isset($fpm_check)) $web_domains_fpm = $app->db->queryAllRecords($sql, $this->dataRecord['server_id'], '%:'.$fpm_check); + + if(!empty($webdomains_fastcgi) || !empty($web_domains_fpm)) $app->error($app->tform->lng('php_in_use_error')); + + } + +} + +$page = new page_action; +$page->onDelete(); ?>