Exemple #1
0
 function zb_AnnihilateUser($login)
 {
     global $billing;
     $alter_conf = rcms_parse_ini_file(CONFIG_PATH . "alter.ini");
     $user_ip = zb_UserGetIP($login);
     $user_aptdata = zb_AddressGetAptData($login);
     @($user_aptid = $user_aptdata['aptid']);
     zb_AddressDeleteApartment($user_aptid);
     zb_AddressOrphanUser($login);
     zb_UserDeleteEmail($login);
     zb_UserDeleteNotes($login);
     zb_UserDeletePhone($login);
     zb_UserDeleteRealName($login);
     zb_UserDeleteSpeedOverride($login);
     if (!$alter_conf['STRICT_CONTRACTS_PROTECT']) {
         zb_UserDeleteContract($login);
     }
     zb_VserviceCashClear($login);
     log_register("DELETE VCASH (" . $login . ")");
     cf_FlushAllUserCF($login);
     zb_FlushAllUserTags($login);
     vlan_delete_host($login);
     multinet_delete_host($user_ip);
     multinet_rebuild_all_handlers();
     //destroy stargazer user
     $billing->deleteuser($login);
     log_register("StgUser DELETE (" . $login . ")");
 }
Exemple #2
0
    function zb_SpeedControlGetOverrideUsers()
    {
        $query = "SELECT `login` from `userspeeds` WHERE `speed` NOT LIKE '0'";
        $alloverrides = simple_queryall($query);
        $result = array();
        if (!empty($alloverrides)) {
            foreach ($alloverrides as $io => $eachoverride) {
                $result[] = $eachoverride;
            }
        }
        return $result;
    }
    function zb_SpeedControlFix($login)
    {
    }
    //fixing speed override
    if (isset($_GET['fix'])) {
        $login = vf($_GET['fix']);
        $speed = 0;
        zb_UserDeleteSpeedOverride($login);
        zb_UserCreateSpeedOverride($login, $speed);
        log_register("SPEEDFIX (" . $login . ")");
        $billing->resetuser($login);
        log_register("RESET User (" . $login . ")");
        rcms_redirect("?module=speedcontrol");
    }
    $alloverrides = zb_SpeedControlGetOverrideUsers();
    show_window(__('Users with speed overrides'), web_UsersLister($alloverrides));
} else {
    show_error(__('You cant control this module'));
}
 /**
  * Performs available tasks processing
  * 
  * @return void
  */
 public function tasksProcessing()
 {
     global $billing;
     $curdate = curdate();
     $rawUsers = zb_UserGetAllStargazerData();
     $allUsers = array();
     if (!empty($rawUsers)) {
         foreach ($rawUsers as $io => $each) {
             $allUsers[$each['login']] = $each;
         }
     }
     if (!empty($this->allTasks)) {
         foreach ($this->allTasks as $io => $each) {
             if ($each['date'] == $curdate) {
                 if (isset($allUsers[$each['login']])) {
                     $login = $each['login'];
                     $param = $each['param'];
                     switch ($each['action']) {
                         case 'addcash':
                             zb_CashAdd($login, $param, 'add', 1, 'SCHEDULED');
                             break;
                         case 'corrcash':
                             zb_CashAdd($login, $param, 'correct', 1, 'SCHEDULED');
                             break;
                         case 'setcash':
                             zb_CashAdd($login, $param, 'set', 1, 'SCHEDULED');
                             break;
                         case 'credit':
                             $billing->setcredit($login, $param);
                             log_register('CHANGE Credit (' . $login . ') ON ' . $param);
                             break;
                         case 'creditexpire':
                             $billing->setcreditexpire($login, $param);
                             log_register('CHANGE CreditExpire (' . $login . ') ON ' . $param);
                             break;
                         case 'tariffchange':
                             $billing->settariff($login, $param);
                             log_register('CHANGE Tariff (' . $login . ') ON `' . $param . '`');
                             //optional user reset
                             if ($this->altCfg['TARIFFCHGRESET']) {
                                 $billing->resetuser($login);
                                 log_register('RESET User (' . $login . ')');
                             }
                             break;
                         case 'tagadd':
                             stg_add_user_tag($login, $param);
                             break;
                         case 'tagdel':
                             stg_del_user_tagid($login, $param);
                             break;
                         case 'freeze':
                             $billing->setpassive($login, 1);
                             log_register('CHANGE Passive (' . $login . ') ON 1');
                             break;
                         case 'unfreeze':
                             $billing->setpassive($login, 0);
                             log_register('CHANGE Passive (' . $login . ') ON 0');
                             break;
                         case 'reset':
                             $billing->resetuser($login);
                             log_register('RESET User (' . $login . ')');
                             break;
                         case 'setspeed':
                             zb_UserDeleteSpeedOverride($login);
                             zb_UserCreateSpeedOverride($login, $param);
                             $billing->resetuser($login);
                             log_register("RESET User (" . $login . ")");
                             break;
                         case 'down':
                             $billing->setdown($login, 1);
                             log_register('CHANGE Down (' . $login . ') ON 1');
                             break;
                         case 'undown':
                             $billing->setdown($login, 0);
                             log_register('CHANGE Down (' . $login . ') ON 0');
                             break;
                         case 'ao':
                             $billing->setao($login, 1);
                             log_register('CHANGE AlwaysOnline (' . $login . ') ON 1');
                             break;
                         case 'unao':
                             $billing->setao($login, 0);
                             log_register('CHANGE AlwaysOnline (' . $login . ') ON 0');
                             break;
                     }
                     //flush task from database
                     $this->setTaskIsDone($each['id']);
                 } else {
                     log_register('SCHEDULER FAIL ID [' . $taskId . '] USER (' . $each['login'] . ')  NON EXISTS');
                     $this->deleteTask($taskId);
                 }
             }
         }
     }
 }