/** * Loads all available users into private data property * * @return void */ protected function loadUsers() { $query = "SELECT * from `users`"; // WHERE `Cash`>= -`Credit` AND `Passive`='0' AND `Down`=0; ? $tmp = zb_UserGetAllStargazerData(); if (!empty($tmp)) { foreach ($tmp as $io => $each) { $this->allUsers[$each['login']] = $each; } } }
function mrst_MassReset() { global $altcfg, $billing; $query = "SELECT `login` from `users`"; $allusers = zb_UserGetAllStargazerData(); if (!empty($allusers)) { foreach ($allusers as $io => $eachuser) { //very shitty hack sleep(2); $billing->resetuser($eachuser['login']); if (!isset($altcfg['MASSRESET_NOLOG'])) { log_register("MASSRESET User (" . $eachuser['login'] . ")"); } } //preventing F5 rcms_redirect("?module=massreset"); } else { show_error(__('Any users found')); } }
function web_UsersLister($users) { $tablecells = wf_TableCell(__('Login')); $tablecells .= wf_TableCell(__('Real Name')); $tablecells .= wf_TableCell(__('Full address')); $tablecells .= wf_TableCell(__('Tariff')); $tablecells .= wf_TableCell(__('Tariff speeds')); $tablecells .= wf_TableCell(__('Speed override')); $tablecells .= wf_TableCell(__('Actions')); $tablerows = wf_TableRow($tablecells, 'row1'); if (!empty($users)) { $udata = array(); $alluserdata = zb_UserGetAllStargazerData(); $alladdress = zb_AddressGetFulladdresslist(); $allrealnames = zb_UserGetAllRealnames(); $allspeeds = zb_TariffGetAllSpeeds(); if (!empty($alluserdata)) { foreach ($alluserdata as $ia => $eachdata) { $udata[$eachdata['login']]['Tariff'] = $eachdata['Tariff']; @($udata[$eachdata['login']]['Address'] = $alladdress[$eachdata['login']]); @($udata[$eachdata['login']]['RealName'] = $allrealnames[$eachdata['login']]); @($udata[$eachdata['login']]['NormalSpeedDown'] = $allspeeds[$eachdata['Tariff']]['speeddown']); @($udata[$eachdata['login']]['NormalSpeedUp'] = $allspeeds[$eachdata['Tariff']]['speedup']); } } foreach ($users as $io => $eachuser) { $tablecells = wf_TableCell(wf_Link('?module=userprofile&username='******'login'], web_profile_icon() . ' ' . $eachuser['login'])); $tablecells .= wf_TableCell($udata[$eachuser['login']]['RealName']); $tablecells .= wf_TableCell($udata[$eachuser['login']]['Address']); $tablecells .= wf_TableCell($udata[$eachuser['login']]['Tariff']); $tablecells .= wf_TableCell($udata[$eachuser['login']]['NormalSpeedDown'] . '/' . $udata[$eachuser['login']]['NormalSpeedUp']); $tablecells .= wf_TableCell(zb_UserGetSpeedOverride($eachuser['login'])); $fixlink = wf_JSAlert('?module=speedcontrol&fix=' . $eachuser['login'], '<img src="skins/icon_repair.gif" title=' . __('Fix') . '>', 'Are you serious'); $tablecells .= wf_TableCell($fixlink); $tablerows .= wf_TableRow($tablecells, 'row3'); } } $result = wf_TableBody($tablerows, '100%', '0', 'sortable'); return $result; }
public function render() { $allAddress = zb_AddressGetFulladdresslistCached(); $allRealNames = zb_UserGetAllRealnames(); $stargazerUsers = zb_UserGetAllStargazerData(); $allUsers = array(); if (!empty($stargazerUsers)) { foreach ($stargazerUsers as $io => $each) { $allUsers[$each['login']] = $each['Credit']; } } $cells = wf_TableCell(__('ID')); $cells .= wf_TableCell(__('Date')); $cells .= wf_TableCell(__('Login')); $cells .= wf_TableCell(__('Address')); $cells .= wf_TableCell(__('Real Name')); $cells .= wf_TableCell(__('Cash')); $rows = wf_TableRow($cells, 'row1'); if (!empty($this->data)) { foreach ($this->data as $io => $each) { $cells = wf_TableCell($each['id']); $cells .= wf_TableCell($each['date']); $loginLink = wf_Link("?module=userprofile&username=" . @$each['login'], web_profile_icon() . ' ' . @$each['login'], false, ''); $cells .= wf_TableCell($loginLink); $cells .= wf_TableCell(@$allAddress[$each['login']]); $cells .= wf_TableCell(@$allRealNames[$each['login']]); $cells .= wf_TableCell(@$each['balance']); //deleded users indication if (@isset($allUsers[$each['login']])) { $rowClass = 'row3'; } else { $rowClass = 'sigdeleteduser'; } $rows .= wf_TableRow($cells, $rowClass); } } $result = wf_TableBody($rows, '100%', '0', 'sortable'); return $result; }
/** * Loads all existing Internet users from database * * @return void */ protected function loadUsers() { $all = zb_UserGetAllStargazerData(); if (!empty($all)) { foreach ($all as $io => $each) { $this->allUserData[$each['login']] = $each; } } }
/** * Exports existing userbase as CSV format * * @return void */ function zb_RMExportUserbaseCsv() { $allusers = zb_UserGetAllStargazerData(); $allrealnames = zb_UserGetAllRealnames(); $alladdress = zb_AddressGetFulladdresslist(); $allcontracts = zb_UserGetAllContracts(); $allmac = array(); $mac_q = "SELECT * from `nethosts`"; $allnh = simple_queryall($mac_q); if (!empty($allnh)) { foreach ($allnh as $nh => $eachnh) { $allmac[$eachnh['ip']] = $eachnh['mac']; } } $result = ''; //options $delimiter = ";"; $in_charset = 'utf-8'; $out_charset = 'windows-1251'; ///////////////////// if (!empty($allusers)) { $result .= __('Login') . $delimiter . __('Password') . $delimiter . __('IP') . $delimiter . __('MAC') . $delimiter . __('Tariff') . $delimiter . __('Cash') . $delimiter . __('Credit') . $delimiter . __('Credit expire') . $delimiter . __('Address') . $delimiter . __('Real Name') . $delimiter . __('Contract') . $delimiter . __('AlwaysOnline') . $delimiter . __('Disabled') . $delimiter . __('User passive') . "\n"; foreach ($allusers as $io => $eachuser) { //credit expirity if ($eachuser['CreditExpire'] != 0) { $creditexpire = date("Y-m-d", $eachuser['CreditExpire']); } else { $creditexpire = ''; } //user mac if (isset($allmac[$eachuser['IP']])) { $usermac = $allmac[$eachuser['IP']]; } else { $usermac = ''; } $result .= $eachuser['login'] . $delimiter . $eachuser['Password'] . $delimiter . $eachuser['IP'] . $delimiter . $usermac . $delimiter . $eachuser['Tariff'] . $delimiter . $eachuser['Cash'] . $delimiter . $eachuser['Credit'] . $delimiter . $creditexpire . $delimiter . @$alladdress[$eachuser['login']] . $delimiter . @$allrealnames[$eachuser['login']] . $delimiter . @$allcontracts[$eachuser['login']] . $delimiter . $eachuser['AlwaysOnline'] . $delimiter . $eachuser['Down'] . $delimiter . $eachuser['Passive'] . "\n"; } if ($in_charset != $out_charset) { $result = iconv($in_charset, $out_charset, $result); } log_register('DOWNLOAD FILE `userbase.csv`'); // push data for csv handler header('Content-type: application/ms-excel'); header('Content-Disposition: attachment; filename=userbase.csv'); echo $result; die; } }
/** * loads user data for template processing * * @return void */ public function loadAllUserData() { $userdata = array(); $alluserdata = zb_UserGetAllStargazerData(); $tariffspeeds = zb_TariffGetAllSpeeds(); $tariffprices = zb_TariffGetPricesAll(); $multinetdata = zb_MultinetGetAllData(); $allcontracts = zb_UserGetAllContracts(); $allcontracts = array_flip($allcontracts); $contractDates = $this->getContractDatesAll(); $allphonedata = zb_UserGetAllPhoneData(); $allrealnames = zb_UserGetAllRealnames(); $alladdress = zb_AddressGetFulladdresslist(); $allemails = zb_UserGetAllEmails(); $allnasdata = zb_NasGetAllData(); $allcfdata = cf_FieldsGetAll(); $allpdata = zb_UserPassportDataGetAll(); $curdate = curdate(); $lastDocId = $this->getDocumentLastId(); $newDocId = $lastDocId + 1; if ($this->altcfg['OPENPAYZ_REALID']) { $allopcustomers = zb_TemplateGetAllOPCustomers(); } if (!empty($alluserdata)) { foreach ($alluserdata as $io => $eachuser) { $userdata[$eachuser['login']]['LOGIN'] = $eachuser['login']; $userdata[$eachuser['login']]['PASSWORD'] = $eachuser['Password']; $userdata[$eachuser['login']]['USERHASH'] = crc16($eachuser['login']); $userdata[$eachuser['login']]['TARIFF'] = $eachuser['Tariff']; @($userdata[$eachuser['login']]['TARIFFPRICE'] = $tariffprices[$eachuser['Tariff']]); $userdata[$eachuser['login']]['CASH'] = $eachuser['Cash']; $userdata[$eachuser['login']]['CREDIT'] = $eachuser['Credit']; $userdata[$eachuser['login']]['DOWN'] = $eachuser['Down']; $userdata[$eachuser['login']]['PASSIVE'] = $eachuser['Passive']; $userdata[$eachuser['login']]['AO'] = $eachuser['AlwaysOnline']; @($userdata[$eachuser['login']]['CONTRACT'] = $allcontracts[$eachuser['login']]); @($userdata[$eachuser['login']]['CONTRACTDATE'] = $contractDates[$eachuser['login']]['contractdate']); @($userdata[$eachuser['login']]['REALNAME'] = $allrealnames[$eachuser['login']]); @($userdata[$eachuser['login']]['ADDRESS'] = $alladdress[$eachuser['login']]); @($userdata[$eachuser['login']]['EMAIL'] = $allemails[$eachuser['login']]); @($userdata[$eachuser['login']]['PHONE'] = $allphonedata[$eachuser['login']]['phone']); @($userdata[$eachuser['login']]['MOBILE'] = $allphonedata[$eachuser['login']]['mobile']); //openpayz payment ID if ($this->altcfg['OPENPAYZ_REALID']) { @($userdata[$eachuser['login']]['PAYID'] = $allopcustomers[$eachuser['login']]); } else { @($userdata[$eachuser['login']]['PAYID'] = ip2int($eachuser['IP'])); } //traffic params $userdata[$eachuser['login']]['TRAFFIC'] = $eachuser['D0'] + $eachuser['U0']; $userdata[$eachuser['login']]['TRAFFICDOWN'] = $eachuser['D0']; $userdata[$eachuser['login']]['TRAFFICUP'] = $eachuser['U0']; //net params @($userdata[$eachuser['login']]['IP'] = $eachuser['IP']); @($userdata[$eachuser['login']]['MAC'] = $multinetdata[$eachuser['IP']]['mac']); @($userdata[$eachuser['login']]['NETID'] = $multinetdata[$eachuser['IP']]['netid']); @($userdata[$eachuser['login']]['HOSTID'] = $multinetdata[$eachuser['IP']]['id']); //nas data @($usernas = zb_NasGetParams($multinetdata[$eachuser['IP']]['netid'], $allnasdata)); @($userdata[$eachuser['login']]['NASID'] = $usernas['id']); @($userdata[$eachuser['login']]['NASIP'] = $usernas['nasip']); @($userdata[$eachuser['login']]['NASNAME'] = $usernas['nasname']); @($userdata[$eachuser['login']]['NASTYPE'] = $usernas['nastype']); if (isset($tariffspeeds[$eachuser['Tariff']])) { $userdata[$eachuser['login']]['SPEEDDOWN'] = $tariffspeeds[$eachuser['Tariff']]['speeddown']; $userdata[$eachuser['login']]['SPEEDUP'] = $tariffspeeds[$eachuser['Tariff']]['speedup']; } else { //if no tariff speed defined zero speed by default $userdata[$eachuser['login']]['SPEEDDOWN'] = 0; $userdata[$eachuser['login']]['SPEEDUP'] = 0; } //passport data @($userdata[$eachuser['login']]['PBIRTH'] = $allpdata[$eachuser['login']]['birthdate']); @($userdata[$eachuser['login']]['PNUM'] = $allpdata[$eachuser['login']]['passportnum']); @($userdata[$eachuser['login']]['PDATE'] = $allpdata[$eachuser['login']]['passportdate']); @($userdata[$eachuser['login']]['PWHO'] = $allpdata[$eachuser['login']]['passportwho']); @($userdata[$eachuser['login']]['PCITY'] = $allpdata[$eachuser['login']]['pcity']); @($userdata[$eachuser['login']]['PSTREET'] = $allpdata[$eachuser['login']]['pstreet']); @($userdata[$eachuser['login']]['PBUILD'] = $allpdata[$eachuser['login']]['pbuild']); @($userdata[$eachuser['login']]['PAPT'] = $allpdata[$eachuser['login']]['papt']); //other document data @($userdata[$eachuser['login']]['CURDATE'] = $curdate); @($userdata[$eachuser['login']]['DOCID'] = $newDocId); } } $this->userData = $userdata; }
/** * Returns JSON reply for jquery datatables with full list of available connection details * * @return void */ public function ajaxGetData() { $query = "SELECT * from `condet`;"; $all = simple_queryall($query); $alladdress = zb_AddressGetFulladdresslist(); $allrealnames = zb_UserGetAllRealnames(); $allStgData_raw = zb_UserGetAllStargazerData(); $userData = array(); if (!empty($allStgData_raw)) { foreach ($allStgData_raw as $io => $each) { $userData[$each['login']] = $each; } } $result = '{ "aaData": [ '; if (!empty($all)) { foreach ($all as $io => $each) { $profileLink = wf_Link('?module=userprofile&username='******'login'], web_profile_icon() . ' ', false); $profileLink = str_replace('"', '', $profileLink); $profileLink = str_replace("'", '', $profileLink); $profileLink = trim($profileLink); $userAddress = @$alladdress[$each['login']]; $userAddress = str_replace("'", '`', $userAddress); $userAddress = str_replace('"', '``', $userAddress); $userAddress = trim($userAddress); $userRealname = @$allrealnames[$each['login']]; $userRealname = str_replace("'", '`', $userRealname); $userRealname = str_replace('"', '``', $userRealname); $userRealname = trim($userRealname); @($cash = $userData[$each['login']]['Cash']); @($credit = $userData[$each['login']]['Credit']); $act = wf_img('skins/icon_active.gif') . __('Yes'); //finance check if ($cash < '-' . $credit) { $act = wf_img('skins/icon_inactive.gif') . __('No'); } $act = str_replace('"', '', $act); $act = trim($act); $result .= ' [ "' . $profileLink . $userAddress . '", "' . $userRealname . '", "' . @$userData[$each['login']]['IP'] . '", "' . @$userData[$each['login']]['Tariff'] . '", "' . $act . '", "' . $cash . '", "' . $credit . '", "' . $each['seal'] . '", "' . $each['price'] . '", "' . $each['length'] . '", "' . 'CREDIT' . '" ],'; } } $result = substr($result, 0, -1); $result .= '] }'; die($result); }
/** * 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); } } } } }
function stg_show_fulluserlistOld() { global $alter_conf; $allusers = zb_UserGetAllStargazerData(); $allrealnames = zb_UserGetAllRealnames(); $alladdress = zb_AddressGetFulladdresslist(); if ($alter_conf['USER_LINKING_ENABLED']) { $alllinkedusers = cu_GetAllLinkedUsers(); $allparentusers = cu_GetAllParentUsers(); } $totaltraff_i = 0; $totaltraff_m = 0; $totaltraff = 0; $ucount = 0; $trueonline = 0; $inacacount = 0; $tcredit = 0; $tcash = 0; // LAT column if ($alter_conf['ONLINE_LAT']) { $lat_col_head = wf_TableCell(__('LAT')); $act_offset = 1; } else { $lat_col_head = ''; $act_offset = 0; } //online stars if ($alter_conf['DN_ONLINE_DETECT']) { $true_online_header = wf_TableCell(__('Users online')); $true_online_selector = ' col_' . (5 + $act_offset) . ': "select",'; } else { $true_online_header = ''; $true_online_selector = ''; } //extended filters if ($alter_conf['ONLINE_FILTERS_EXT']) { $extfilters = wf_Link('javascript:showfilter();', __('Extended filters'), false); } else { $extfilters = ''; } //additional finance links if ($alter_conf['FAST_CASH_LINK']) { $fastcash = true; } else { $fastcash = false; } $result = $extfilters; $result .= wf_tag('table', false, 'sortable', 'width="100%" id="onlineusers"'); $headerCells = wf_TableCell(__('Full address')); $headerCells .= wf_TableCell(__('Real Name')); $headerCells .= wf_TableCell(__('IP')); $headerCells .= wf_TableCell(__('Tariff')); $headerCells .= $lat_col_head; $headerCells .= wf_TableCell(__('Active')); $headerCells .= $true_online_header; $headerCells .= wf_TableCell(__('Traffic')); $headerCells .= wf_TableCell(__('Balance')); $headerCells .= wf_TableCell(__('Credit')); $headerRow = wf_TableRow($headerCells, 'row1'); $result .= $headerRow; if (!empty($allusers)) { foreach ($allusers as $io => $eachuser) { $tinet = 0; $ucount++; $cash = $eachuser['Cash']; $credit = $eachuser['Credit']; for ($classcounter = 0; $classcounter <= 9; $classcounter++) { $dc = 'D' . $classcounter . ''; $uc = 'U' . $classcounter . ''; $tinet = $tinet + ($eachuser[$dc] + $eachuser[$uc]); } $totaltraff = $totaltraff + $tinet; $tcredit = $tcredit + $credit; $tcash = $tcash + $cash; $act = web_green_led() . ' ' . __('Yes'); //finance check if ($cash < '-' . $credit) { $act = web_red_led() . ' ' . __('No'); $inacacount++; } if ($alter_conf['ONLINE_LAT']) { $user_lat = wf_TableCell(date("Y-m-d H:i:s", $eachuser['LastActivityTime'])); } else { $user_lat = ''; } //online check if ($alter_conf['DN_ONLINE_DETECT']) { if (file_exists(DATA_PATH . 'dn/' . $eachuser['login'])) { $online_flag = 1; $trueonline++; } else { $online_flag = 0; } $online_cell = wf_TableCell(web_bool_star($online_flag, true), '', '', 'sorttable_customkey="' . $online_flag . '"'); } else { $online_cell = ''; $online_flag = 0; } if ($alter_conf['ONLINE_LIGHTER']) { $lighter = 'onmouseover="this.className = \'row2\';" onmouseout="this.className = \'row3\';" '; } else { $lighter = ''; } //user linking indicator if ($alter_conf['USER_LINKING_ENABLED']) { //is user child? if (isset($alllinkedusers[$eachuser['login']])) { $corporate = wf_Link('?module=corporate&userlink=' . $alllinkedusers[$eachuser['login']], web_corporate_icon(), false); } else { $corporate = ''; } //is user parent? if (isset($allparentusers[$eachuser['login']])) { $corporate = wf_Link('?module=corporate&userlink=' . $allparentusers[$eachuser['login']], web_corporate_icon('Corporate parent'), false); } } else { $corporate = ''; } //fast cash link if ($fastcash) { $financelink = wf_Link('?module=addcash&username='******'login'] . '#profileending', wf_img('skins/icon_dollar.gif', __('Finance operations')), false); } else { $financelink = ''; } $result .= wf_tag('tr', false, 'row3', $lighter); $result .= wf_tag('td', false); $result .= wf_Link('?module=traffstats&username='******'login'], web_stats_icon(), false); $result .= $financelink; $result .= wf_Link('?module=userprofile&username='******'login'], web_profile_icon(), false); $result .= $corporate; $result .= @$alladdress[$eachuser['login']]; $result .= wf_tag('td', true); $result .= wf_TableCell(@$allrealnames[$eachuser['login']]); $result .= wf_TableCell($eachuser['IP'], '', '', 'sorttable_customkey="' . ip2int($eachuser['IP']) . '"'); $result .= wf_TableCell($eachuser['Tariff']); $result .= $user_lat; $result .= wf_TableCell($act); $result .= $online_cell; $result .= wf_TableCell(stg_convert_size($tinet), '', '', 'sorttable_customkey="' . $tinet . '"'); $result .= wf_TableCell(round($eachuser['Cash'], 2)); $result .= wf_TableCell(round($eachuser['Credit'], 2)); $result .= wf_tag('tr', true); } } if ($alter_conf['DN_ONLINE_DETECT']) { $true_online_counter = wf_TableCell(__('Users online') . ' ' . $trueonline); } else { $true_online_counter = null; } $result .= wf_tag('table', true); $footerCells = wf_TableCell(__('Total') . ': ' . $ucount); $footerCells .= wf_TableCell(__('Active users') . ' ' . ($ucount - $inacacount) . ' / ' . __('Inactive users') . ' ' . $inacacount); $footerCells .= $true_online_counter; $footerCells .= wf_TableCell(__('Traffic') . ': ' . stg_convert_size($totaltraff)); $footerCells .= wf_TableCell(__('Total') . ': ' . round($tcash, 2)); $footerCells .= wf_TableCell(__('Credit total') . ': ' . $tcredit); $footerRows = wf_TableRow($footerCells, 'row1'); $result .= wf_TableBody($footerRows, '100%', '0'); //extended filters again if ($alter_conf['ONLINE_FILTERS_EXT']) { $filtercode = wf_tag('script', false, '', 'language="javascript" type="text/javascript"'); $filtercode .= ' //<![CDATA[ function showfilter() { var onlinefilters = { btn: false, col_' . (4 + $act_offset) . ': "select", ' . $true_online_selector . ' btn_text: ">" } setFilterGrid("onlineusers",0,onlinefilters); } //]]>'; $filtercode .= wf_tag('script', true); } else { $filtercode = ''; } $result .= $filtercode; return $result; }
/** * Returns array of all users tariffs array as login=>tariff * * @return array */ function zb_ExportTariffsLoadAll() { $allstgdata = zb_UserGetAllStargazerData(); $result = array(); if (!empty($allstgdata)) { foreach ($allstgdata as $io => $eachuser) { $result[$eachuser['login']] = $eachuser['Tariff']; } } return $result; }
/** * Returns alive/dead user counts on each tariff * * @return array */ function zb_TariffGetLiveCount() { $allusers = zb_UserGetAllStargazerData(); $alltariffs = zb_TariffsGetAll(); $result = array(); //fill array with some tariff entries if (!empty($alltariffs)) { foreach ($alltariffs as $io => $eachtariff) { $result[$eachtariff['name']]['alive'] = 0; $result[$eachtariff['name']]['dead'] = 0; } } //count users for each tariff if (!empty($allusers)) { foreach ($allusers as $ia => $eachlogin) { if (isset($result[$eachlogin['Tariff']])) { if ($eachlogin['Cash'] >= '-' . $eachlogin['Credit']) { $result[$eachlogin['Tariff']]['alive'] = $result[$eachlogin['Tariff']]['alive'] + 1; } else { $result[$eachlogin['Tariff']]['dead'] = $result[$eachlogin['Tariff']]['dead'] + 1; } } } } return $result; }
/** * loads all available users logins into private prop * * @return void */ protected function loadUsers() { $this->users = zb_UserGetAllStargazerData(); }
/** * Returns all data about current userbase * which used for templatizing functions * * @return array */ function zb_TemplateGetAllUserData() { $altcfg = rcms_parse_ini_file(CONFIG_PATH . "alter.ini"); $userdata = array(); $alluserdata = zb_UserGetAllStargazerData(); $tariffspeeds = zb_TariffGetAllSpeeds(); $tariffprices = zb_TariffGetPricesAll(); $multinetdata = zb_MultinetGetAllData(); $allcontracts = zb_UserGetAllContracts(); $allcontracts = array_flip($allcontracts); $allrealnames = zb_UserGetAllRealnames(); $alladdress = zb_AddressGetFulladdresslist(); $allemails = zb_UserGetAllEmails(); $allnasdata = zb_NasGetAllData(); $allcfdata = cf_FieldsGetAll(); $allpdata = zb_UserPassportDataGetAll(); if ($altcfg['OPENPAYZ_REALID']) { $allopcustomers = zb_TemplateGetAllOPCustomers(); } if (!empty($alluserdata)) { foreach ($alluserdata as $io => $eachuser) { $userdata[$eachuser['login']]['login'] = $eachuser['login']; $userdata[$eachuser['login']]['password'] = $eachuser['Password']; $userdata[$eachuser['login']]['userhash'] = crc16($eachuser['login']); $userdata[$eachuser['login']]['tariff'] = $eachuser['Tariff']; @($userdata[$eachuser['login']]['tariffprice'] = $tariffprices[$eachuser['Tariff']]); $userdata[$eachuser['login']]['cash'] = $eachuser['Cash']; $userdata[$eachuser['login']]['credit'] = $eachuser['Credit']; $userdata[$eachuser['login']]['down'] = $eachuser['Down']; $userdata[$eachuser['login']]['passive'] = $eachuser['Passive']; $userdata[$eachuser['login']]['ao'] = $eachuser['AlwaysOnline']; @($userdata[$eachuser['login']]['contract'] = $allcontracts[$eachuser['login']]); @($userdata[$eachuser['login']]['realname'] = $allrealnames[$eachuser['login']]); @($userdata[$eachuser['login']]['address'] = $alladdress[$eachuser['login']]); @($userdata[$eachuser['login']]['email'] = $allemails[$eachuser['login']]); //openpayz payment ID if ($altcfg['OPENPAYZ_REALID']) { @($userdata[$eachuser['login']]['payid'] = $allopcustomers[$eachuser['login']]); } else { @($userdata[$eachuser['login']]['payid'] = ip2int($eachuser['IP'])); } //traffic params $userdata[$eachuser['login']]['traffic'] = $eachuser['D0'] + $eachuser['U0']; $userdata[$eachuser['login']]['trafficdown'] = $eachuser['D0']; $userdata[$eachuser['login']]['trafficup'] = $eachuser['U0']; //net params $userdata[$eachuser['login']]['ip'] = $eachuser['IP']; @($userdata[$eachuser['login']]['mac'] = $multinetdata[$eachuser['IP']]['mac']); @($userdata[$eachuser['login']]['netid'] = $multinetdata[$eachuser['IP']]['netid']); @($userdata[$eachuser['login']]['hostid'] = $multinetdata[$eachuser['IP']]['id']); //nas data @($usernas = zb_NasGetParams($multinetdata[$eachuser['IP']]['netid'], $allnasdata)); @($userdata[$eachuser['login']]['nasid'] = $usernas['id']); @($userdata[$eachuser['login']]['nasip'] = $usernas['nasip']); @($userdata[$eachuser['login']]['nasname'] = $usernas['nasname']); @($userdata[$eachuser['login']]['nastype'] = $usernas['nastype']); if (isset($tariffspeeds[$eachuser['Tariff']])) { $userdata[$eachuser['login']]['speeddown'] = $tariffspeeds[$eachuser['Tariff']]['speeddown']; $userdata[$eachuser['login']]['speedup'] = $tariffspeeds[$eachuser['Tariff']]['speedup']; } else { //if no tariff speed defined zero speed by default $userdata[$eachuser['login']]['speeddown'] = 0; $userdata[$eachuser['login']]['speedup'] = 0; } //CF data $usercfdata = zb_cfGetContent($eachuser['login'], $allcfdata); if (!empty($usercfdata)) { foreach ($usercfdata as $cd => $eachcf) { $userdata[$eachuser['login']]['cf'][$cd] = $eachcf; } } //passport data @($userdata[$eachuser['login']]['birthdate'] = $allpdata[$eachuser['login']]['birthdate']); @($userdata[$eachuser['login']]['passportnum'] = $allpdata[$eachuser['login']]['passportnum']); @($userdata[$eachuser['login']]['passportdate'] = $allpdata[$eachuser['login']]['passportdate']); @($userdata[$eachuser['login']]['passportwho'] = $allpdata[$eachuser['login']]['passportwho']); @($userdata[$eachuser['login']]['pcity'] = $allpdata[$eachuser['login']]['pcity']); @($userdata[$eachuser['login']]['pstreet'] = $allpdata[$eachuser['login']]['pstreet']); @($userdata[$eachuser['login']]['pbuild'] = $allpdata[$eachuser['login']]['pbuild']); @($userdata[$eachuser['login']]['papt'] = $allpdata[$eachuser['login']]['papt']); } } return $userdata; }