/** * Shows signup tariffs popularity chart * * @return void */ function web_SignupGraph() { if (!wf_CheckGet(array('month'))) { $cmonth = curmonth(); } else { $cmonth = mysql_real_escape_string($_GET['month']); } $where = "WHERE `date` LIKE '" . $cmonth . "%'"; $alltariffnames = zb_TariffsGetAll(); $tariffusers = zb_TariffsGetAllUsers(); $allsignups = zb_SignupsGet($where); $tcount = array(); if (!empty($allsignups)) { foreach ($alltariffnames as $io => $eachtariff) { foreach ($allsignups as $ii => $eachsignup) { if (@$tariffusers[$eachsignup['login']] == $eachtariff['name']) { @($tcount[$eachtariff['name']] = $tcount[$eachtariff['name']] + 1); } } } } $tablecells = wf_TableCell(__('Tariff')); $tablecells .= wf_TableCell(__('Count')); $tablecells .= wf_TableCell(__('Visual')); $tablerows = wf_TableRow($tablecells, 'row1'); if (!empty($tcount)) { foreach ($tcount as $sigtariff => $eachcount) { $tablecells = wf_TableCell($sigtariff); $tablecells .= wf_TableCell($eachcount); $tablecells .= wf_TableCell(web_bar($eachcount, sizeof($allsignups)), '', '', 'sorttable_customkey="' . $eachcount . '"'); $tablerows .= wf_TableRow($tablecells, 'row3'); } } $result = wf_TableBody($tablerows, '100%', '0', 'sortable'); show_window(__('Tariffs report'), $result); }
/** * loads all user tariffs from database * * @retun void */ protected function loadUserTariffs() { $this->userTariffs = zb_TariffsGetAllUsers(); }
$rssi = trim($rssi); $result[$mac] = $rssi; } } } return $result; } } // Main code part $alter_config = $ubillingConfig->getAlter(); if ($alter_config['MTSIGMON_ENABLED']) { $sigmon = new MTSIGMON(); $allMonitoredDevices = $sigmon->getDevices(); $allusermacs = zb_UserGetAllMACs(); $alladdress = zb_AddressGetFullCityaddresslist(); $alltariffs = zb_TariffsGetAllUsers(); $allrealnames = zb_UserGetAllRealnames(); $alluserips = zb_UserGetAllIPs(); $result = ''; $hlightmac = ''; //hlight user mac sub if (isset($_GET['username'])) { $login = mysql_real_escape_string($_GET['username']); $userip = zb_UserGetIP($login); $usermac = zb_MultinetGetMAC($userip); $hlightmac = $usermac; } if (!empty($allMonitoredDevices)) { foreach ($allMonitoredDevices as $io => $eachdevice) { $userCounter = 0; $hostdata = $sigmon->deviceQuery($eachdevice['ip'], $eachdevice['community']);
function web_PaymentSearch($markers) { if (wf_CheckPost(array('searchtable'))) { if ($_POST['searchtable'] == 'payments') { $table = 'payments'; } if ($_POST['searchtable'] == 'corrections') { $table = 'paymentscorr'; } } else { $table = 'payments'; } $query = "SELECT * from `" . $table . "`"; $query .= $markers; $altercfg = rcms_parse_ini_file(CONFIG_PATH . "alter.ini"); $csvdata = ''; $allpayments = simple_queryall($query); if ($altercfg['FINREP_CONTRACT']) { $allcontracts = zb_UserGetAllContracts(); $allcontracts = array_flip($allcontracts); } if ($altercfg['FINREP_TARIFF']) { $alltariffs = zb_TariffsGetAllUsers(); } $allrealnames = zb_UserGetAllRealnames(); $alladdress = zb_AddressGetFulladdresslist(); $alltypes = zb_CashGetAllCashTypes(); $allservicenames = zb_VservicesGetAllNamesLabeled(); $allpaysyspercents = zb_PaySysPercentGetAll(); $totalsumm = 0; $paysyssumm = 0; $profitsumm = 0; $totalcount = 0; $cells = wf_TableCell(__('ID')); $cells .= wf_TableCell(__('Date')); $cells .= wf_TableCell(__('Cash')); $cells .= wf_TableCell(__('PS%')); $cells .= wf_TableCell(__('Profit')); $cells .= wf_TableCell(__('Login')); if ($altercfg['FINREP_CONTRACT']) { $cells .= wf_TableCell(__('Contract')); } $cells .= wf_TableCell(__('Full address')); $cells .= wf_TableCell(__('Real Name')); if ($altercfg['FINREP_TARIFF']) { $cells .= wf_TableCell(__('Tariff')); } $cells .= wf_TableCell(__('Payment type')); $cells .= wf_TableCell(__('Notes')); $cells .= wf_TableCell(__('Admin')); $rows = wf_TableRow($cells, 'row1'); if (!empty($allpayments)) { if ($altercfg['FINREP_TARIFF']) { $csvTariffColumn = ';' . __('Tariff'); } else { $csvTariffColumn = ''; } $csvdata .= __('ID') . ';' . __('Date') . ';' . __('Cash') . ';' . __('PS%') . ';' . __('Profit') . ';' . __('Login') . ';' . __('Full address') . ';' . __('Real Name') . $csvTariffColumn . ';' . __('Payment type') . ';' . __('Notes') . ';' . __('Admin') . "\n"; foreach ($allpayments as $io => $each) { $cells = wf_TableCell($each['id']); $cells .= wf_TableCell($each['date']); $cells .= wf_TableCell($each['summ']); //detecting paymentsystem and calc percent if (isset($allpaysyspercents[$each['note']])) { $currPc = $allpaysyspercents[$each['note']]['percent']; $rawSumm = $each['summ']; $paySysPc = $rawSumm / 100 * $currPc; $ourProfit = $rawSumm - $paySysPc; } else { $paySysPc = 0; $ourProfit = $each['summ']; } $cells .= wf_TableCell($paySysPc); $cells .= wf_TableCell($ourProfit); $cells .= wf_TableCell(wf_Link('?module=userprofile&username='******'login'], web_profile_icon() . ' ' . $each['login'], false, '')); if ($altercfg['FINREP_CONTRACT']) { $cells .= wf_TableCell(@$allcontracts[$each['login']]); } @($paymentRealname = $allrealnames[$each['login']]); @($paymentCashType = __($alltypes[$each['cashtypeid']])); @($paymentAddress = $alladdress[$each['login']]); $cells .= wf_TableCell($paymentAddress); $cells .= wf_TableCell($paymentRealname); if ($altercfg['FINREP_TARIFF']) { @($userTariff = $alltariffs[$each['login']]); $cells .= wf_TableCell($userTariff); $csvTariff = ';' . $userTariff; } else { $csvTariff = ''; } $cells .= wf_TableCell($paymentCashType); //payment notes translation if ($altercfg['TRANSLATE_PAYMENTS_NOTES']) { $paynote = zb_TranslatePaymentNote($each['note'], $allservicenames); } else { $paynote = $each['note']; } $cells .= wf_TableCell($paynote); $cells .= wf_TableCell($each['admin']); $rows .= wf_TableRow($cells, 'row3'); //calculating totals if ($each['summ'] > 0) { $totalsumm = $totalsumm + $each['summ']; $totalcount++; } if ($paySysPc > 0) { $paysyssumm = $paysyssumm + $paySysPc; } if ($ourProfit > 0) { $profitsumm = $profitsumm + $ourProfit; } $csvSumm = str_replace('.', ',', $each['summ']); $csvdata .= $each['id'] . ';' . $each['date'] . ';' . $csvSumm . ';' . $paySysPc . ';' . $ourProfit . ';' . $each['login'] . ';' . $paymentAddress . ';' . $paymentRealname . $csvTariff . ';' . $paymentCashType . ';' . $paynote . ';' . $each['admin'] . "\n"; } } //saving report for future download if (!empty($csvdata)) { $csvSaveName = 'exports/payfind_' . zb_rand_string(8) . '.csv'; $csvSaveNameEnc = base64_encode($csvSaveName); $csvdata = iconv('utf-8', 'windows-1251', $csvdata); file_put_contents($csvSaveName, $csvdata); $csvDownloadLink = wf_Link('?module=payfind&downloadcsv=' . $csvSaveNameEnc, wf_img('skins/excel.gif', __('Export')), false); } else { $csvDownloadLink = ''; } $result = wf_TableBody($rows, '100%', '0', 'sortable'); //additional total counters $result .= wf_tag('div', false, 'glamour') . __('Count') . ': ' . $totalcount . wf_tag('div', true); $result .= wf_tag('div', false, 'glamour') . __('Total payments') . ': ' . $totalsumm . wf_tag('div', true); $result .= wf_tag('div', false, 'glamour') . __('Payment systems %') . ': ' . $paysyssumm . wf_tag('div', true); $result .= wf_tag('div', false, 'glamour') . __('Our final profit') . ': ' . $profitsumm . wf_tag('div', true); $result .= wf_CleanDiv(); show_window(__('Payments found') . ' ' . $csvDownloadLink, $result); }
/** * Renders ticket, all of replies and all needed controls/forms for they * * @param int $ticketid * * @return string */ function web_TicketDialogue($ticketid) { $ticketid = vf($ticketid, 3); $ticketdata = zb_TicketGetData($ticketid); $ticketreplies = zb_TicketGetReplies($ticketid); $result = wf_tag('p', false, '', 'align="right"') . wf_Link('?module=ticketing', 'Back to tickets list', true, 'ubButton') . wf_tag('p', true); if (!empty($ticketdata)) { $alladdress = zb_AddressGetFulladdresslist(); $allrealnames = zb_UserGetAllRealnames(); $alltariffs = zb_TariffsGetAllUsers(); $allcash = zb_CashGetAllUsers(); $allcredits = zb_CreditGetAllUsers(); $alluserips = zb_UserGetAllIPs(); if ($ticketdata['status']) { $actionlink = wf_Link('?module=ticketing&openticket=' . $ticketdata['id'], 'Open', false, 'ubButton'); } else { $actionlink = wf_Link('?module=ticketing&closeticket=' . $ticketdata['id'], 'Close', false, 'ubButton'); } $tablecells = wf_TableCell(__('ID')); $tablecells .= wf_TableCell(__('Date')); $tablecells .= wf_TableCell(__('Login')); $tablecells .= wf_TableCell(__('Real Name')); $tablecells .= wf_TableCell(__('Full address')); $tablecells .= wf_TableCell(__('IP')); $tablecells .= wf_TableCell(__('Tariff')); $tablecells .= wf_TableCell(__('Balance')); $tablecells .= wf_TableCell(__('Credit')); $tablecells .= wf_TableCell(__('Processed')); $tablerows = wf_TableRow($tablecells, 'row1'); $tablecells = wf_TableCell($ticketdata['id']); $tablecells .= wf_TableCell($ticketdata['date']); $profilelink = wf_Link('?module=userprofile&username='******'from'], web_profile_icon() . ' ' . $ticketdata['from']); $tablecells .= wf_TableCell($profilelink); $tablecells .= wf_TableCell(@$allrealnames[$ticketdata['from']]); $tablecells .= wf_TableCell(@$alladdress[$ticketdata['from']]); $tablecells .= wf_TableCell(@$alluserips[$ticketdata['from']]); $tablecells .= wf_TableCell(@$alltariffs[$ticketdata['from']]); $tablecells .= wf_TableCell(@$allcash[$ticketdata['from']]); $tablecells .= wf_TableCell(@$allcredits[$ticketdata['from']]); $tablecells .= wf_TableCell(web_bool_led($ticketdata['status'])); $tablerows .= wf_TableRow($tablecells, 'row3'); $result .= wf_TableBody($tablerows, '100%', '0'); //ticket body $tickettext = strip_tags($ticketdata['text']); $tickettext = nl2br($tickettext); $tablecells = wf_TableCell('', '20%'); $tablecells .= wf_TableCell($ticketdata['date']); $tablerows = wf_TableRow($tablecells, 'row2'); $ticketauthor = wf_tag('center') . wf_tag('b') . @$allrealnames[$ticketdata['from']] . wf_tag('b', true) . wf_tag('center', true); $ticketavatar = wf_tag('center') . wf_img('skins/userava.png') . wf_tag('center', true); $ticketpanel = $ticketauthor . wf_tag('br') . $ticketavatar; $tablecells = wf_TableCell($ticketpanel); $tablecells .= wf_TableCell($tickettext); $tablerows .= wf_TableRow($tablecells, 'row3'); $result .= wf_TableBody($tablerows, '100%', '0', 'glamour'); $result .= $actionlink; } if (!empty($ticketreplies)) { $result .= wf_tag('h2') . __('Replies') . wf_tag('h2', true); $result .= wf_CleanDiv(); foreach ($ticketreplies as $io => $eachreply) { //reply if ($eachreply['admin']) { $replyauthor = wf_tag('center') . wf_tag('b') . $eachreply['admin'] . wf_tag('b', true) . wf_tag('center', true); $replyavatar = wf_tag('center') . gravatar_ShowAdminAvatar($eachreply['admin'], '64') . wf_tag('center', true); } else { $replyauthor = wf_tag('center') . wf_tag('b') . @$allrealnames[$eachreply['from']] . wf_tag('b', true) . wf_tag('center', true); $replyavatar = wf_tag('center') . wf_img('skins/userava.png') . wf_tag('center', true); } $replyactions = wf_tag('center'); $replyactions .= wf_JSAlert('?module=ticketing&showticket=' . $ticketdata['id'] . '&deletereply=' . $eachreply['id'], web_delete_icon(), 'Removing this may lead to irreparable results') . ' '; $replyactions .= wf_JSAlert('?module=ticketing&showticket=' . $ticketdata['id'] . '&editreply=' . $eachreply['id'], web_edit_icon(), 'Are you serious'); $replyactions .= wf_tag('center', true); // reply body if (isset($_GET['editreply'])) { if ($_GET['editreply'] == $eachreply['id']) { //is this reply editing? $replytext = web_TicketReplyEditForm($eachreply['id']); } else { //not this ticket edit $replytext = strip_tags($eachreply['text']); } } else { //normal text by default $replytext = strip_tags($eachreply['text']); $replytext = nl2br($replytext); } $replypanel = $replyauthor . wf_tag('br') . $replyavatar . wf_tag('br') . $replyactions; $tablecells = wf_TableCell('', '20%'); $tablecells .= wf_TableCell($eachreply['date']); $tablerows = wf_TableRow($tablecells, 'row2'); $tablecells = wf_TableCell($replypanel); $tablecells .= wf_TableCell($replytext); $tablerows .= wf_TableRow($tablecells, 'row3'); $result .= wf_TableBody($tablerows, '100%', '0', 'glamour'); $result .= wf_CleanDiv(); } } //reply form and previous tickets $allprevious = zb_TicketsGetAllByUser($ticketdata['from']); $previoustickets = ''; if (!empty($allprevious)) { $previoustickets = wf_tag('h2') . __('All tickets by this user') . wf_tag('h2', true); foreach ($allprevious as $io => $eachprevious) { $tablecells = wf_TableCell($eachprevious['date']); $tablecells .= wf_TableCell(web_bool_led($eachprevious['status'])); $prevaction = wf_Link('?module=ticketing&showticket=' . $eachprevious['id'], 'Show', false, 'ubButton'); $tablecells .= wf_TableCell($prevaction); $tablerows = wf_TableRow($tablecells, 'row3'); $previoustickets .= wf_TableBody($tablerows, '100%', '0'); } } $tablecells = wf_TableCell(web_TicketReplyForm($ticketid), '50%', '', 'valign="top"'); $tablecells .= wf_TableCell($previoustickets, '50%', '', 'valign="top"'); $tablerows = wf_TableRow($tablecells); $result .= wf_TableBody($tablerows, '100%', '0', 'glamour'); $result .= wf_CleanDiv(); return $result; }
/** * Renders list of strict login=>agent assigns with some controls * * @return string */ function web_AgentAssignStrictShow() { $allassigns = zb_AgentAssignStrictGetAllData(); $allahens = zb_ContrAhentGetAllData(); $allrealnames = zb_UserGetAllRealnames(); $alladdress = zb_AddressGetFulladdresslistCached(); $allusertariffs = zb_TariffsGetAllUsers(); $agentnames = array(); if (!empty($allahens)) { foreach ($allahens as $io => $eachahen) { $agentnames[$eachahen['id']] = $eachahen['contrname']; } } $cells = wf_TableCell(__('Login')); $cells .= wf_TableCell(__('Full address')); $cells .= wf_TableCell(__('Real Name')); $cells .= wf_TableCell(__('Tariff')); $cells .= wf_TableCell(__('Contrahent name')); $cells .= wf_TableCell(__('Actions')); $rows = wf_TableRow($cells, 'row1'); if (!empty($allassigns)) { foreach ($allassigns as $eachlogin => $eachagent) { $loginLink = wf_Link('?module=userprofile&username='******' ' . $eachlogin, false, ''); $cells = wf_TableCell($loginLink); $cells .= wf_TableCell(@$alladdress[$eachlogin]); $cells .= wf_TableCell(@$allrealnames[$eachlogin]); $cells .= wf_TableCell(@$allusertariffs[$eachlogin]); $cells .= wf_TableCell(@$agentnames[$eachagent]); $actLinks = wf_JSAlert('?module=contractedit&username='******'Are you serious')); $cells .= wf_TableCell($actLinks); $rows .= wf_TableRow($cells, 'row3'); } } $result = wf_TableBody($rows, '100%', '0', 'sortable'); return $result; }
/** * Get all users tariffs * * @return void */ protected function LoadAllTariffs() { $this->allTariffs = zb_TariffsGetAllUsers(); }
/** * Returns user array in table view * * @global object $ubillingConfig * @param array $usersarr * @return string */ function web_UserArrayShower($usersarr) { global $ubillingConfig; $alterconf = $ubillingConfig->getAlter(); if (!empty($usersarr)) { $alladdress = zb_AddressGetFulladdresslistCached(); $allrealnames = zb_UserGetAllRealnames(); $alltariffs = zb_TariffsGetAllUsers(); $allusercash = zb_CashGetAllUsers(); $allusercredits = zb_CreditGetAllUsers(); $alluserips = zb_UserGetAllIPs(); if ($alterconf['ONLINE_LAT']) { $alluserlat = zb_LatGetAllUsers(); } //additional finance links if ($alterconf['FAST_CASH_LINK']) { $fastcash = true; } else { $fastcash = false; } $tablecells = wf_TableCell(__('Login')); $tablecells .= wf_TableCell(__('Address')); $tablecells .= wf_TableCell(__('Real Name')); $tablecells .= wf_TableCell(__('IP')); $tablecells .= wf_TableCell(__('Tariff')); // last activity time if ($alterconf['ONLINE_LAT']) { $tablecells .= wf_TableCell(__('LAT')); } $tablecells .= wf_TableCell(__('Active')); //online detect if ($alterconf['DN_ONLINE_DETECT']) { $tablecells .= wf_TableCell(__('Users online')); } $tablecells .= wf_TableCell(__('Balance')); $tablecells .= wf_TableCell(__('Credit')); $tablerows = wf_TableRow($tablecells, 'row1'); foreach ($usersarr as $eachlogin) { @($usercash = $allusercash[$eachlogin]); @($usercredit = $allusercredits[$eachlogin]); //finance check $activity = web_green_led(); $activity_flag = 1; if ($usercash < '-' . $usercredit) { $activity = web_red_led(); $activity_flag = 0; } //fast cash link if ($fastcash) { $financelink = wf_Link('?module=addcash&username='******'skins/icon_dollar.gif', __('Finance operations')), false, ''); } else { $financelink = ''; } $profilelink = $financelink . wf_Link('?module=userprofile&username='******' ' . $eachlogin); $tablecells = wf_TableCell($profilelink); $tablecells .= wf_TableCell(@$alladdress[$eachlogin]); $tablecells .= wf_TableCell(@$allrealnames[$eachlogin]); $tablecells .= wf_TableCell(@$alluserips[$eachlogin], '', '', 'sorttable_customkey="' . ip2int(@$alluserips[$eachlogin]) . '"'); $tablecells .= wf_TableCell(@$alltariffs[$eachlogin]); if ($alterconf['ONLINE_LAT']) { if (isset($alluserlat[$eachlogin])) { $cUserLat = date("Y-m-d H:i:s", $alluserlat[$eachlogin]); } else { $cUserLat = __('No'); } $tablecells .= wf_TableCell($cUserLat); } $tablecells .= wf_TableCell($activity, '', '', 'sorttable_customkey="' . $activity_flag . '"'); if ($alterconf['DN_ONLINE_DETECT']) { if (file_exists(DATA_PATH . 'dn/' . $eachlogin)) { $online_flag = 1; } else { $online_flag = 0; } $tablecells .= wf_TableCell(web_bool_star($online_flag), '', '', 'sorttable_customkey="' . $online_flag . '"'); } $tablecells .= wf_TableCell($usercash); $tablecells .= wf_TableCell($usercredit); $tablerows .= wf_TableRow($tablecells, 'row3'); } $result = wf_TableBody($tablerows, '100%', '0', 'sortable'); $result .= wf_tag('b') . __('Total') . ': ' . wf_tag('b', true) . sizeof($usersarr); } else { $result = __('Any users found'); } return $result; }