tbrehm
2010-10-05 ba17936ff25eaa6a68f5dcd693e194ee0ef30bb8
Fixed: FS#1343 - removing client doesn't remove additional relations
2 files modified
15 ■■■■■ changed files
interface/lib/classes/db_mysql.inc.php 2 ●●● patch | view | raw | blame | history
interface/web/client/client_del.php 13 ●●●●● patch | view | raw | blame | history
interface/lib/classes/db_mysql.inc.php
@@ -483,7 +483,7 @@
       
    public function tableInfo($table_name) {
        //* Tabellenfelder einlesen ?
        if($rows = $this->queryAllRecords('SHOW FIELDS FROM $table_name')){
        if($rows = $this->queryAllRecords('SHOW FIELDS FROM '.$table_name)){
        foreach($rows as $row) {
            $name    = $row['Field'];
            $default = $row['Default'];
interface/web/client/client_del.php
@@ -54,6 +54,9 @@
    function onDelete() {
        global $app, $conf,$list_def_file,$tform_def_file;
        
        // Loading tform framework
        if(!is_object($app->tform)) $app->uses('tform');
        if($_POST["confirm"] == 'yes') {
            parent::onDelete();
        } else {
@@ -63,17 +66,16 @@
        $app->tpl->setInclude('content_tpl', 'templates/client_del.htm');
        
        include_once($list_def_file);
        // Loading tform framework
        if(!is_object($app->tform)) $app->uses('tform');
        // Load table definition from file
        // Load table definition from file
        $app->tform->loadFormDef($tform_def_file);
        
        $this->id = intval($_REQUEST["id"]);
        
        $this->dataRecord = $app->tform->getDataRecord($this->id);
        $client_id = intval($this->dataRecord['client_id']);
        //$parent_client_id = intval($this->dataRecord['parent_client_id']);
        //$parent_user = $app->db->queryOneRecord("SELECT userid FROM sys_user WHERE client_id = $parent_client_id");
        $client_group = $app->db->queryOneRecord("SELECT groupid FROM sys_group WHERE client_id = $client_id");
@@ -82,6 +84,7 @@
        $tables = 'client,dns_rr,dns_soa,dns_slave,ftp_user,mail_access,mail_content_filter,mail_domain,mail_forwarding,mail_get,mail_user,mail_user_filter,shell_user,spamfilter_users,support_message,web_database,web_domain,web_traffic';
        $tables_array = explode(',',$tables);
        $client_group_id = intval($client_group['groupid']);
        $table_list = array();
        if($client_group_id > 1) {
            foreach($tables_array as $table) {