@@ -529,119 +529,115 @@ public function check_language($language) {
529529 }
530530
531531 // Function to lock a client
532- public function func_client_lock ($ client_id ,$ locked ) {
533-
534- global $ app ;
535- $ client_data = $ app ->db ->queryOneRecord ('SELECT `tmp_data` FROM `client` WHERE `client_id` = ? ' , $ client_id );
536- if ($ client_data ['tmp_data ' ] == '' ) $ tmp_data = array ();
537- else $ tmp_data = unserialize ($ client_data ['tmp_data ' ]);
538- if (!is_array ($ tmp_data )) $ tmp_data = array ();
539- $ to_disable = array ('cron ' => 'id ' ,
540- 'ftp_user ' => 'ftp_user_id ' ,
541- 'mail_domain ' => 'domain_id ' ,
542- 'mail_user ' => 'mailuser_id ' ,
543- 'mail_user_smtp ' => 'mailuser_id ' ,
544- 'mail_forwarding ' => 'forwarding_id ' ,
545- 'mail_get ' => 'mailget_id ' ,
546- 'openvz_vm ' => 'vm_id ' ,
547- 'shell_user ' => 'shell_user_id ' ,
548- 'webdav_user ' => 'webdav_user_id ' ,
549- 'web_database ' => 'database_id ' ,
550- 'web_domain ' => 'domain_id ' ,
551- 'web_folder ' => 'web_folder_id ' ,
552- 'web_folder_user ' => 'web_folder_user_id '
553- );
554-
555- $ udata = $ app ->db ->queryOneRecord ('SELECT `userid` FROM `sys_user` WHERE `client_id` = ? ' , $ client_id );
556- $ gdata = $ app ->db ->queryOneRecord ('SELECT `groupid` FROM `sys_group` WHERE `client_id` = ? ' , $ client_id );
557- $ sys_groupid = $ gdata ['groupid ' ];
558- $ sys_userid = $ udata ['userid ' ];
559- if ($ locked == 'y ' ) {
560- $ prev_active = array ();
561- $ prev_sysuser = array ();
562- foreach ($ to_disable as $ current => $ keycolumn ) {
563- $ active_col = 'active ' ;
564- $ reverse = false ;
565- if ($ current == 'mail_user ' ) {
566- $ active_col = 'postfix ' ;
567- } elseif ($ current == 'mail_user_smtp ' ) {
568- $ current = 'mail_user ' ;
569- $ active_col = 'disablesmtp ' ;
570- $ reverse = true ;
571- }
572-
573- if (!isset ($ prev_active [$ current ])) $ prev_active [$ current ] = array ();
574- if (!isset ($ prev_sysuser [$ current ])) $ prev_sysuser [$ current ] = array ();
575-
576- $ entries = $ app ->db ->queryAllRecords ('SELECT ?? as `id`, `sys_userid`, ?? FROM ?? WHERE `sys_groupid` = ? ' , $ keycolumn , $ active_col , $ current , $ sys_groupid );
577- foreach ($ entries as $ item ) {
578-
579- if ($ item [$ active_col ] != 'y ' && $ reverse == false ) $ prev_active [$ current ][$ item ['id ' ]][$ active_col ] = 'n ' ;
580- elseif ($ item [$ active_col ] == 'y ' && $ reverse == true ) $ prev_active [$ current ][$ item ['id ' ]][$ active_col ] = 'y ' ;
581- if ($ item ['sys_userid ' ] != $ sys_userid ) $ prev_sysuser [$ current ][$ item ['id ' ]] = $ item ['sys_userid ' ];
582- // we don't have to store these if y, as everything without previous state gets enabled later
583-
584- //$app->db->datalogUpdate($current, array($active_col => ($reverse == true ? 'y' : 'n'), 'sys_userid' => $_SESSION["s"]["user"]["userid"]), $keycolumn, $item['id']);
585- $ app ->db ->datalogUpdate ($ current , array ($ active_col => ($ reverse == true ? 'y ' : 'n ' ), 'sys_userid ' => $ sys_userid ), $ keycolumn , $ item ['id ' ]);
586- }
587- }
532+ public function func_client_lock ($ client_id ,$ locked ) {
533+ global $ app ;
534+ $ client_data = $ app ->db ->queryOneRecord ('SELECT `tmp_data` FROM `client` WHERE `client_id` = ? ' , $ client_id );
535+ if ($ client_data ['tmp_data ' ] == '' ) $ tmp_data = array ();
536+ else $ tmp_data = unserialize ($ client_data ['tmp_data ' ]);
537+ if (!is_array ($ tmp_data )) $ tmp_data = array ();
538+ $ to_disable = array ('cron ' => 'id ' ,
539+ 'ftp_user ' => 'ftp_user_id ' ,
540+ 'mail_domain ' => 'domain_id ' ,
541+ 'mail_user ' => 'mailuser_id ' ,
542+ 'mail_user_smtp ' => 'mailuser_id ' ,
543+ 'mail_forwarding ' => 'forwarding_id ' ,
544+ 'mail_get ' => 'mailget_id ' ,
545+ 'openvz_vm ' => 'vm_id ' ,
546+ 'shell_user ' => 'shell_user_id ' ,
547+ 'webdav_user ' => 'webdav_user_id ' ,
548+ 'web_database ' => 'database_id ' ,
549+ 'web_domain ' => 'domain_id ' ,
550+ 'web_folder ' => 'web_folder_id ' ,
551+ 'web_folder_user ' => 'web_folder_user_id '
552+ );
553+ $ udata = $ app ->db ->queryOneRecord ('SELECT `userid` FROM `sys_user` WHERE `client_id` = ? ' , $ client_id );
554+ $ gdata = $ app ->db ->queryOneRecord ('SELECT `groupid` FROM `sys_group` WHERE `client_id` = ? ' , $ client_id );
555+ $ sys_groupid = $ gdata ['groupid ' ];
556+ $ sys_userid = $ udata ['userid ' ];
557+ if ($ locked == 'y ' ) {
558+ $ prev_active = array ();
559+ $ prev_sysuser = array ();
560+ foreach ($ to_disable as $ current => $ keycolumn ) {
561+ $ active_col = 'active ' ;
562+ $ reverse = false ;
563+ if ($ current == 'mail_user ' ) {
564+ $ active_col = 'postfix ' ;
565+ } elseif ($ current == 'mail_user_smtp ' ) {
566+ $ current = 'mail_user ' ;
567+ $ active_col = 'disablesmtp ' ;
568+ $ reverse = true ;
569+ }
570+
571+ if (!isset ($ prev_active [$ current ])) $ prev_active [$ current ] = array ();
572+ if (!isset ($ prev_sysuser [$ current ])) $ prev_sysuser [$ current ] = array ();
573+
574+ $ entries = $ app ->db ->queryAllRecords ('SELECT ?? as `id`, `sys_userid`, ?? FROM ?? WHERE `sys_groupid` = ? ' , $ keycolumn , $ active_col , $ current , $ sys_groupid );
575+ foreach ($ entries as $ item ) {
576+
577+ if ($ item [$ active_col ] != 'y ' && $ reverse == false ) $ prev_active [$ current ][$ item ['id ' ]][$ active_col ] = 'n ' ;
578+ elseif ($ item [$ active_col ] == 'y ' && $ reverse == true ) $ prev_active [$ current ][$ item ['id ' ]][$ active_col ] = 'y ' ;
579+ if ($ item ['sys_userid ' ] != $ sys_userid ) $ prev_sysuser [$ current ][$ item ['id ' ]] = $ item ['sys_userid ' ];
580+ // we don't have to store these if y, as everything without previous state gets enabled later
581+
582+ //$app->db->datalogUpdate($current, array($active_col => ($reverse == true ? 'y' : 'n'), 'sys_userid' => $_SESSION["s"]["user"]["userid"]), $keycolumn, $item['id']);
583+ $ app ->db ->datalogUpdate ($ current , array ($ active_col => ($ reverse == true ? 'y ' : 'n ' ), 'sys_userid ' => $ sys_userid ), $ keycolumn , $ item ['id ' ]);
584+ }
585+ }
588586
589- $ tmp_data ['prev_active ' ] = $ prev_active ;
590- $ tmp_data ['prev_sys_userid ' ] = $ prev_sysuser ;
591- $ app ->db ->query ("UPDATE `client` SET `tmp_data` = ? WHERE `client_id` = ? " , serialize ($ tmp_data ), $ client_id );
592- unset($ prev_active );
593- unset($ prev_sysuser );
594- } elseif ($ locked == 'n ' ) {
595- foreach ($ to_disable as $ current => $ keycolumn ) {
596- $ active_col = 'active ' ;
597- $ reverse = false ;
598- if ($ current == 'mail_user ' ) {
599- $ active_col = 'postfix ' ;
600- } elseif ($ current == 'mail_user_smtp ' ) {
601- $ current = 'mail_user ' ;
602- $ active_col = 'disablesmtp ' ;
603- $ reverse = true ;
604- }
605-
606- $ entries = $ app ->db ->queryAllRecords ('SELECT ?? as `id` FROM ?? WHERE `sys_groupid` = ? ' , $ keycolumn , $ current , $ sys_groupid );
607- foreach ($ entries as $ item ) {
608- $ set_active = ($ reverse == true ? 'n ' : 'y ' );
609- $ set_inactive = ($ reverse == true ? 'y ' : 'n ' );
610- $ set_sysuser = $ sys_userid ;
611- if (array_key_exists ('prev_active ' , $ tmp_data ) == true
612- && array_key_exists ($ current , $ tmp_data ['prev_active ' ]) == true
613- && array_key_exists ($ item ['id ' ], $ tmp_data ['prev_active ' ][$ current ]) == true
614- && $ tmp_data ['prev_active ' ][$ current ][$ item ['id ' ]][$ active_col ] == $ set_inactive ) $ set_active = $ set_inactive ;
615- if (array_key_exists ('prev_sysuser ' , $ tmp_data ) == true
616- && array_key_exists ($ current , $ tmp_data ['prev_sysuser ' ]) == true
617- && array_key_exists ($ item ['id ' ], $ tmp_data ['prev_sysuser ' ][$ current ]) == true
618- && $ tmp_data ['prev_sysuser ' ][$ current ][$ item ['id ' ]] != $ sys_userid ) $ set_sysuser = $ tmp_data ['prev_sysuser ' ][$ current ][$ item ['id ' ]];
619-
620- $ app ->db ->datalogUpdate ($ current , array ($ active_col => $ set_active , 'sys_userid ' => $ set_sysuser ), $ keycolumn , $ item ['id ' ]);
621- }
622- }
623- if (array_key_exists ('prev_active ' , $ tmp_data )) unset($ tmp_data ['prev_active ' ]);
624- $ app ->db ->query ("UPDATE `client` SET `tmp_data` = ? WHERE `client_id` = ? " , serialize ($ tmp_data ), $ client_id );
625- }
626- unset($ tmp_data );
627- unset($ entries );
628- unset($ to_disable );
629-
630- }
631- // Function to cancel disable/enable a client
632- public function func_client_cancel ($ client_id ,$ cancel ) {
633- global $ app ;
634- if ($ cancel == 'y ' ) {
635- $ sql = "UPDATE sys_user SET active = '0' WHERE client_id = ? " ;
636- $ result = $ app ->db ->query ($ sql , $ client_id );
637- } elseif ($ cancel == 'n ' ) {
638- $ sql = "UPDATE sys_user SET active = '1' WHERE client_id = ? " ;
639- $ result = $ app ->db ->query ($ sql , $ client_id );
640- } else {
641- $ result = false ;
642- }
643- return $ result ;
644- }
587+ $ tmp_data ['prev_active ' ] = $ prev_active ;
588+ $ tmp_data ['prev_sys_userid ' ] = $ prev_sysuser ;
589+ $ app ->db ->query ("UPDATE `client` SET `tmp_data` = ? WHERE `client_id` = ? " , serialize ($ tmp_data ), $ client_id );
590+ unset($ prev_active );
591+ unset($ prev_sysuser );
592+ } elseif ($ locked == 'n ' ) {
593+ foreach ($ to_disable as $ current => $ keycolumn ) {
594+ $ active_col = 'active ' ;
595+ $ reverse = false ;
596+ if ($ current == 'mail_user ' ) {
597+ $ active_col = 'postfix ' ;
598+ } elseif ($ current == 'mail_user_smtp ' ) {
599+ $ current = 'mail_user ' ;
600+ $ active_col = 'disablesmtp ' ;
601+ $ reverse = true ;
602+ }
603+
604+ $ entries = $ app ->db ->queryAllRecords ('SELECT ?? as `id` FROM ?? WHERE `sys_groupid` = ? ' , $ keycolumn , $ current , $ sys_groupid );
605+ foreach ($ entries as $ item ) {
606+ $ set_active = ($ reverse == true ? 'n ' : 'y ' );
607+ $ set_inactive = ($ reverse == true ? 'y ' : 'n ' );
608+ $ set_sysuser = $ sys_userid ;
609+ if (array_key_exists ('prev_active ' , $ tmp_data ) == true
610+ && array_key_exists ($ current , $ tmp_data ['prev_active ' ]) == true
611+ && array_key_exists ($ item ['id ' ], $ tmp_data ['prev_active ' ][$ current ]) == true
612+ && $ tmp_data ['prev_active ' ][$ current ][$ item ['id ' ]][$ active_col ] == $ set_inactive ) $ set_active = $ set_inactive ;
613+ if (array_key_exists ('prev_sysuser ' , $ tmp_data ) == true
614+ && array_key_exists ($ current , $ tmp_data ['prev_sysuser ' ]) == true
615+ && array_key_exists ($ item ['id ' ], $ tmp_data ['prev_sysuser ' ][$ current ]) == true
616+ && $ tmp_data ['prev_sysuser ' ][$ current ][$ item ['id ' ]] != $ sys_userid ) $ set_sysuser = $ tmp_data ['prev_sysuser ' ][$ current ][$ item ['id ' ]];
617+ $ app ->db ->datalogUpdate ($ current , array ($ active_col => $ set_active , 'sys_userid ' => $ set_sysuser ), $ keycolumn , $ item ['id ' ]);
618+ }
619+ }
620+ if (array_key_exists ('prev_active ' , $ tmp_data )) unset($ tmp_data ['prev_active ' ]);
621+ $ app ->db ->query ("UPDATE `client` SET `tmp_data` = ? WHERE `client_id` = ? " , serialize ($ tmp_data ), $ client_id );
622+ }
623+ unset($ tmp_data );
624+ unset($ entries );
625+ unset($ to_disable );
626+ }
627+ // Function to cancel disable/enable a client
628+ public function func_client_cancel ($ client_id ,$ cancel ) {
629+ global $ app ;
630+ if ($ cancel == 'y ' ) {
631+ $ sql = "UPDATE sys_user SET active = '0' WHERE client_id = ? " ;
632+ $ result = $ app ->db ->query ($ sql , $ client_id );
633+ } elseif ($ cancel == 'n ' ) {
634+ $ sql = "UPDATE sys_user SET active = '1' WHERE client_id = ? " ;
635+ $ result = $ app ->db ->query ($ sql , $ client_id );
636+ } else {
637+ $ result = false ;
638+ }
639+ return $ result ;
640+ }
645641
646642}
647643
0 commit comments