function widget_activity_log($vars) { global $_ADMINLANG; $title = $_ADMINLANG['utilities']['activitylog']; $content = ''; $patterns = $replacements = array(); $patterns[] = '/User ID: (.*?) /'; $patterns[] = '/Service ID: (.*?) /'; $patterns[] = '/Domain ID: (.*?) /'; $patterns[] = '/Invoice ID: (.*?) /'; $patterns[] = '/Order ID: (.*?) /'; $patterns[] = '/Transaction ID: (.*?) /'; $replacements[] = '<a href="clientssummary.php?userid=$1">User ID: $1</a> '; $replacements[] = '<a href="clientshosting.php?id=$1">Service ID: $1</a> '; $replacements[] = '<a href="clientsdomains.php?id=$1">Domain ID: $1</a> '; $replacements[] = '<a href="invoices.php?action=edit&id=$1">Invoice ID: $1</a> '; $replacements[] = '<a href="orders.php?action=view&id=$1">Order ID: $1</a> '; $replacements[] = '<a href="transactions.php?action=edit&id=$1">Transaction ID: $1</a> '; $result = select_query("tblactivitylog", "", "", "id", "DESC", "0,10"); while ($data = mysql_fetch_array($result)) { $description = $data["description"] . ' '; $description = whmcsHtmlspecialchars($description); $description = preg_replace($patterns, $replacements, $description); $content .= $description . '<br /><span style="font-size:11px;"> - ' . fromMySQLDate($data["date"], true) . ' - ' . $data['user'] . ' - ' . $data['ipaddr'] . '</span><br />'; } if (!$content) { $content = '<div align="center">No Activity Recorded Yet</div>'; } else { $content .= '<div align="right"><a href="systemactivitylog.php">' . $_ADMINLANG['home']['viewall'] . ' »</a></div>'; } return array('title' => $title, 'content' => $content); }
function widget_todo_list($vars) { global $_ADMINLANG; $content = '<table width="100%" bgcolor="#cccccc" cellspacing="1"> <tr bgcolor=#efefef style="text-align:center;font-weight:bold;"><td>' . $_ADMINLANG['fields']['date'] . '</td><td>' . $_ADMINLANG['fields']['title'] . '/' . $_ADMINLANG['fields']['description'] . '</td><td>' . $_ADMINLANG['fields']['duedate'] . '</td><td>' . $_ADMINLANG['fields']['status'] . '</td><td width="20"></td></tr> '; $id = ''; $result = select_query("tbltodolist", "", array("status" => array("sqltype" => "NEQ", "value" => "Completed")), "duedate", "ASC"); while ($data = mysql_fetch_array($result)) { $id = $data["id"]; $date = $data["date"]; $title = $data["title"]; $description = $data["description"]; $admin = $data["admin"]; $status = $data["status"]; $duedate = $data["duedate"]; $date = fromMySQLDate($date); $duedate = $duedate == "0000-00-00" ? '-' : fromMySQLDate($duedate); $bgcolor = $admin == $vars['adminid'] ? "#f5f5d7" : "#ffffff"; $description = strlen($description) > 50 ? substr($description, 0, 50) . '...' : $description; $content .= '<tr bgcolor="' . $bgcolor . '" style="text-align:center;"><td>' . $date . '</td><td>' . $title . ' - ' . $description . '</td><td>' . $duedate . '</td><td>' . $status . '</td><td><a href="todolist.php?action=edit&id=' . $id . '"><img src="images/edit.gif" border="0"></a></td></tr> '; } if (!$id) { $content .= '<tr bgcolor="#ffffff"><td colspan="5" align="center">' . $_ADMINLANG['global']['norecordsfound'] . '</td></tr>'; } $content .= '</table> <div align="right" style="padding-top:5px;"><a href="todolist.php">' . $_ADMINLANG['home']['manage'] . ' »</a></div>'; $title = $_ADMINLANG['todolist']['todolisttitle']; return array('title' => $title, 'content' => $content); }
/** * * @ WHMCS FULL DECODED & NULLED * * @ Version : 5.2.15 * @ Author : MTIMER * @ Release on : 2013-12-24 * @ Website : http://www.mtimer.cn * * */ function widget_staffboard_overview($vars) { global $_ADMINLANG; $title = "Staff Noticeboard"; $lastviews = get_query_val("tbladdonmodules", "value", array("module" => "staffboard", "setting" => "lastviewed")); if ($lastviews) { $lastviews = unserialize($lastviews); $new = false; } else { $lastviews = array(); $new = true; } $lastviewed = $lastviews[$_SESSION['adminid']]; $lastviews[$_SESSION['adminid']] = time(); if ($new) { insert_query("tbladdonmodules", array("module" => "staffboard", "setting" => "lastviewed", "value" => serialize($lastviews))); } else { update_query("tbladdonmodules", array("value" => serialize($lastviews)), array("module" => "staffboard", "setting" => "lastviewed")); } $numchanged = get_query_val("mod_staffboard", "COUNT(id)", "date>='" . date("Y-m-d H:i:s", $lastviewed) . "'"); $content = "\n<style>\n.staffboardchanges {\n margin: 0 0 5px 0;\n padding: 8px 25px;\n font-size: 1.2em;\n text-align: center;\n}\n.staffboardnotices {\n max-height: 130px;\n overflow: auto;\n border-top: 1px solid #ccc;\n border-bottom: 1px solid #ccc;\n}\n.staffboardnotices div {\n padding: 5px 15px;\n border-bottom: 2px solid #fff;\n}\n.staffboardnotices div.pink {\n background-color: #F3CBF3;\n}\n.staffboardnotices div.yellow {\n background-color: #FFFFC1;\n}\n.staffboardnotices div.purple {\n background-color: #DCD7FE;\n}\n.staffboardnotices div.white {\n background-color: #FAFAFA;\n}\n.staffboardnotices div.pink {\n background-color: #F3CBF3;\n}\n.staffboardnotices div.blue {\n background-color: #A6E3FC;\n}\n.staffboardnotices div.green {\n background-color: #A5F88B;\n}\n</style>\n<div class=\"staffboardchanges\">There are <strong>" . $numchanged . "</strong> New or Updated Staff Notices Since your Last Visit - <a href=\"addonmodules.php?module=staffboard\">Visit Noticeboard »</a></div><div class=\"staffboardnotices\">"; $result = select_query("mod_staffboard", "", "", "date", "DESC"); while ($data = mysql_fetch_array($result)) { $content .= "<div class=\"" . $data['color'] . "\">" . fromMySQLDate($data['date'], 1) . " - " . (100 < strlen($data['note']) ? substr($data['note'], 0, 100) . "..." : $data['note']) . "</div>"; } $content .= "</div>"; return array("title" => $title, "content" => $content, "jquerycode" => $jquerycode); }
public function getClients($criteria = array()) { global $disable_clients_list_services_summary; $clientgroups = $this->getGroups(); $filters = $this->buildCriteria($criteria); $where = count($filters) ? " WHERE " . implode(" AND ", $filters) : ""; $customfieldjoin = $this->customfieldsfilter ? " INNER JOIN tblcustomfieldsvalues ON tblcustomfieldsvalues.relid=tblclients.id" : ""; $result = full_query("SELECT COUNT(*) FROM tblclients" . $customfieldjoin . $where); $data = mysql_fetch_array($result); $this->getPageObj()->setNumResults($data[0]); $clients = array(); $query = "SELECT id,firstname,lastname,companyname,email,datecreated,groupid,status FROM tblclients" . $customfieldjoin . $where . " ORDER BY " . $this->getPageObj()->getOrderBy() . " " . $this->getPageObj()->getSortDirection() . " LIMIT " . $this->getQueryLimit(); $result = full_query($query); while ($data = mysql_fetch_array($result)) { $id = $data['id']; $firstname = $data['firstname']; $lastname = $data['lastname']; $companyname = $data['companyname']; $email = $data['email']; $datecreated = $data['datecreated']; $groupid = $data['groupid']; $status = $data['status']; $datecreated = fromMySQLDate($datecreated); $groupcolor = isset($clientgroups[$groupid]['colour']) ? $clientgroups[$groupid]['colour'] . "\"" : ""; $services = $totalservices = "-"; if (!$disable_clients_list_services_summary) { $result2 = full_query("SELECT (SELECT COUNT(*) FROM tblhosting WHERE userid=tblclients.id AND domainstatus IN ('Active','Suspended'))+(SELECT COUNT(*) FROM tblhostingaddons WHERE hostingid IN (SELECT id FROM tblhosting WHERE userid=tblclients.id) AND status IN ('Active','Suspended'))+(SELECT COUNT(*) FROM tbldomains WHERE userid=tblclients.id AND status IN ('Active')) AS services,(SELECT COUNT(*) FROM tblhosting WHERE userid=tblclients.id)+(SELECT COUNT(*) FROM tblhostingaddons WHERE hostingid IN (SELECT id FROM tblhosting WHERE userid=tblclients.id))+(SELECT COUNT(*) FROM tbldomains WHERE userid=tblclients.id) AS totalservices FROM tblclients WHERE tblclients.id=" . (int) $id . " LIMIT 1"); $data = mysql_fetch_array($result2); $services = $data['services']; $totalservices = $data['totalservices']; } $clients[] = array("id" => $id, "firstname" => $firstname, "lastname" => $lastname, "companyname" => $companyname, "groupid" => $groupid, "groupcolor" => $groupcolor, "email" => $email, "services" => $services, "totalservices" => $totalservices, "datecreated" => $datecreated, "status" => $status); } return $clients; }
function sirportly_ticket_table($results) { foreach ($results as $key => $ticket) { $tickets[] = array('date' => fromMySQLDate($ticket['submitted_at'], time), 'tid' => $ticket['reference'], 'subject' => $ticket['subject'], 'c' => $ticket['id'], 'lastreply' => fromMySQLDate($ticket['last_update_posted_at'], time), 'department' => $ticket['department']['name'], 'status' => "<span style='color:#{$ticket['status']['colour']}'>{$ticket['status']['name']}</span>"); } return $tickets; }
/** * * @ WHMCS FULL DECODED & NULLED * * @ Version : 5.2.15 * @ Author : MTIMER * @ Release on : 2013-12-24 * @ Website : http://www.mtimer.cn * **/ function project_management_timesoutput($vars, $taskid) { $timesoutput = "<table width=\"95%\" bgcolor=\"#cccccc\" cellspacing=\"1\" align=\"center\" style=\"margin-top:5px;\"><tr class=\"taskholder" . $taskid . "\" bgcolor=\"#efefef\" style=\"text-align:center;font-weight:bold;\"><td align=\"center\">" . $vars['_lang']['staff'] . "</td><td>" . $vars['_lang']['starttime'] . "</td><td>" . $vars['_lang']['stoptime'] . "</td><td>" . $vars['_lang']['timespent'] . "</td><td width=\"25\"></td></tr>"; $result2 = select_query("mod_projecttimes", "*", array("taskid" => $taskid)); while ($timerdata = mysql_fetch_assoc($result2)) { $show_startresume = "false"; $timerid = $timerdata['id']; $timeradmin = mysql_fetch_assoc(select_query("tbladmins", "firstname,lastname", array("id" => $timerdata['adminid']))); $timerstart = $timerdata['start']; $timerend = $timerdata['end']; $starttime = fromMySQLDate(date("Y-m-d H:i:s", $timerstart), 1) . ":" . date("s", $timerstart); $endtimerlink = $timerdata['adminid'] == $_SESSION['adminid'] || project_management_check_masteradmin() ? "<a rel=\"" . $timerid . "\" id=\"ajaxendtimertaskid" . $taskid . "\" class=\"ajaxendtimer timerlink\">" . $vars['_lang']['endtimer'] . "</a>" : $vars['_lang']['inprogress']; $deltimerlink = $timerdata['adminid'] == $_SESSION['adminid'] || project_management_check_masteradmin() ? "<a href=\"#\" onclick=\"deleteTimer('" . $timerid . "','" . $taskid . "');return false\"><img src=\"images/delete.gif\"></a>" : ""; $endtime = $timerend ? fromMySQLDate(date("Y-m-d H:i:s", $timerend), 1) . ":" . date("s", $timerend) : $endtimerlink; $totaltime = $timerend ? project_management_sec2hms($timerend - $timerstart) : $vars['_lang']['inprogress']; $timesoutput .= "<tr bgcolor=\"#ffffff\" class=\"time taskholder" . $taskid . "\"><td>" . $timeradmin['firstname'] . " " . $timeradmin['lastname'] . "</td><td>" . $starttime . "</td><td id=\"ajaxendtimertaskholderid" . $timerid . "\">" . $endtime . "</td><td id=\"ajaxtimerstatusholderid" . $timerid . "\">" . $totaltime . "</td><td>" . $deltimerlink . "</td></tr>"; if ($timerend) { $timecount += $timerend - $timerstart; $totaltimecount += $timerend - $timerstart; $show_startresume = "true"; $invoicelinedesc .= " > " . $starttime . " - " . $endtime . " (" . $totaltime . " " . $vars['_lang']['hours'] . ")\r\n"; } } if (!$timerid) { $timesoutput .= "<tr id=\"notasktimersexist" . $taskid . "\"><td colspan=\"6\" align=\"center\" bgcolor=\"#fff\">" . $vars['_lang']['notimesrecorded'] . "</td></tr>"; } $timesoutput .= "</table>"; $GLOBALS['timerid'] = $timerid; $GLOBALS['timecount'] = $timecount; $GLOBALS['invoicelinedesc'] = $invoicelinedesc; return $timesoutput; }
function widget_admin_activity($vars) { global $_ADMINLANG; $title = $_ADMINLANG['home']['recentadminactivity']; $content = '<table width="75%" bgcolor="#cccccc" cellspacing="1" align="center"> <tr bgcolor="#efefef" style="text-align:center;font-weight:bold;"><td>' . $_ADMINLANG['fields']['admin'] . '</td><td>' . $_ADMINLANG['fields']['ipaddress'] . '</td><td>' . $_ADMINLANG['system']['lastaccess'] . '</td></tr>'; $result = select_query("tbladminlog", "", "", "lastvisit", "DESC", "0,5"); while ($data = mysql_fetch_array($result)) { $content .= '<tr bgcolor="#ffffff" style="text-align:center;"><td>' . $data["adminusername"] . '</a></td><td><a href="http://www.geoiptool.com/en/?IP=' . $data["ipaddress"] . '" target="_blank">' . $data["ipaddress"] . '</a></td><td>' . fromMySQLDate($data["lastvisit"], true) . '</td></tr>'; } $content .= '</table>'; return array('title' => $title, 'content' => $content); }
public function getInvoices($criteria = array()) { global $aInt; global $currency; $query = " FROM tblinvoices INNER JOIN tblclients ON tblclients.id=tblinvoices.userid"; $filters = $this->buildCriteria($criteria); $query .= count($filters) ? " WHERE " . implode(" AND ", $filters) : ""; $result = full_query("SELECT COUNT(*)" . $query); $data = mysql_fetch_array($result); $this->getPageObj()->setNumResults($data[0]); $gateways = new WHMCS_Gateways(); $orderby = $this->getPageObj()->getOrderBy(); if ($orderby == "clientname") { $orderby = "firstname " . $this->getPageObj()->getSortDirection() . ",lastname " . $this->getPageObj()->getSortDirection() . ",companyname"; } if ($orderby == "id") { $orderby = "tblinvoices.invoicenum " . $this->getPageObj()->getSortDirection() . ",tblinvoices.id"; } $invoices = array(); $query = "SELECT tblinvoices.*,tblclients.firstname,tblclients.lastname,tblclients.companyname,tblclients.groupid,tblclients.currency" . $query . " ORDER BY " . $orderby . " " . $this->getPageObj()->getSortDirection() . " LIMIT " . $this->getQueryLimit(); $result = full_query($query); while ($data = mysql_fetch_array($result)) { $id = $data['id']; $invoicenum = $data['invoicenum']; $userid = $data['userid']; $date = $data['date']; $duedate = $data['duedate']; $subtotal = $data['subtotal']; $credit = $data['credit']; $total = $data['total']; $gateway = $data['paymentmethod']; $status = $data['status']; $firstname = $data['firstname']; $lastname = $data['lastname']; $companyname = $data['companyname']; $groupid = $data['groupid']; $currency = $data['currency']; $clientname = $aInt->outputClientLink($userid, $firstname, $lastname, $companyname, $groupid); $paymentmethod = $gateways->getDisplayName($gateway); $currency = getCurrency("", $currency); $totalformatted = formatCurrency($credit + $total); $statusformatted = $this->formatStatus($status); $date = fromMySQLDate($date); $duedate = fromMySQLDate($duedate); if (!$invoicenum) { $invoicenum = $id; } $invoices[] = array("id" => $id, "invoicenum" => $invoicenum, "userid" => $userid, "clientname" => $clientname, "date" => $date, "duedate" => $duedate, "subtotal" => $subtotal, "credit" => $credit, "total" => $total, "totalformatted" => $totalformatted, "gateway" => $gateway, "paymentmethod" => $paymentmethod, "status" => $status, "statusformatted" => $statusformatted); } return $invoices; }
function widget_client_activity($vars) { global $_ADMINLANG; $title = $_ADMINLANG['home']['recentclientactivity']; $content = '<table class="table table-condensed"> <tr bgcolor="#efefef" style="text-align:center;font-weight:bold;"><td>' . $_ADMINLANG['fields']['client'] . '</td><td>' . $_ADMINLANG['fields']['ipaddress'] . '</td><td>' . $_ADMINLANG['system']['lastaccess'] . '</td></tr>'; $id = ''; $result = select_query("tblclients", "id,firstname,lastname,ip,lastlogin", "", "lastlogin", "DESC", "0,5"); while ($data = mysql_fetch_array($result)) { $id = $data['id']; $content .= '<tr bgcolor="#ffffff" style="text-align:center;"><td><a href="clientssummary.php?userid=' . $id . '">' . $data["firstname"] . ' ' . $data["lastname"] . '</a></td><td><a href="http://www.geoiptool.com/en/?IP=' . $data["ip"] . '" target="_blank">' . $data["ip"] . '</a></td><td>' . fromMySQLDate($data["lastlogin"], true) . '</td></tr>'; } if (!$id) { $content .= '<tr bgcolor="#ffffff" style="text-align:center;"><td colspan="3">' . $_ADMINLANG['global']['norecordsfound'] . '</td></tr>'; } $content .= '</table>'; return array('title' => $title, 'content' => $content); }
function widget_open_invoices($vars) { global $_ADMINLANG, $currency; $title = $_ADMINLANG['home']['openinvoices']; if (!function_exists("getGatewaysArray")) { require ROOTDIR . "/includes/gatewayfunctions.php"; } $gatewaysarray = getGatewaysArray(); $content = '<table class="table table-condensed"> <tr style="background-color:#efefef;font-weight:bold;text-align:center"><td>' . $_ADMINLANG['fields']['invoicenum'] . '</td><td>' . $_ADMINLANG['fields']['clientname'] . '</td><td>' . $_ADMINLANG['fields']['invoicedate'] . '</td><td>' . $_ADMINLANG['fields']['duedate'] . '</td><td>' . $_ADMINLANG['fields']['totaldue'] . '</td><td>' . $_ADMINLANG['fields']['paymentmethod'] . '</td><td width="20"></td></tr> '; $id = ''; $query = "SELECT tblinvoices.*,tblinvoices.total-COALESCE((SELECT SUM(amountin) FROM tblaccounts WHERE tblaccounts.invoiceid=tblinvoices.id),0) AS invoicebalance,tblclients.firstname,tblclients.lastname FROM tblinvoices INNER JOIN tblclients ON tblclients.id=tblinvoices.userid WHERE tblinvoices.status='Unpaid' ORDER BY duedate,date ASC LIMIT 0,5"; $result = full_query($query); while ($data = mysql_fetch_array($result)) { $id = $data["id"]; $invoicenum = $data["invoicenum"]; $userid = $data["userid"]; $firstname = $data["firstname"]; $lastname = $data["lastname"]; $date = $data["date"]; $duedate = $data["duedate"]; $total = $data["total"]; $invoicebalance = $data["invoicebalance"]; $paymentmethod = $data["paymentmethod"]; $paymentmethod = $gatewaysarray[$paymentmethod]; $date = fromMySQLDate($date); $duedate = fromMySQLDate($duedate); $currency = getCurrency($userid); if (!$invoicenum) { $invoicenum = $id; } $content .= '<tr bgcolor="#ffffff" style="text-align:center;"><td><a href="invoices.php?action=edit&id=' . $id . '">' . $invoicenum . '</a></td><td>' . $firstname . ' ' . $lastname . '</td><td>' . $date . '</td><td>' . $duedate . '</td><td>' . formatCurrency($total) . '</td><td>' . $paymentmethod . '</td><td><a href="invoices.php?action=edit&id=' . $id . '"><img src="images/edit.gif" border="0" /></a></td></tr>'; } if (!$id) { $content .= '<tr bgcolor="#ffffff" style="text-align:center;"><td colspan="7">' . $_ADMINLANG['global']['norecordsfound'] . '</td></tr>'; } $content .= '</table> <div class="widget-footer"> <a href="invoices.php?status=Unpaid" class="btn btn-info btn-sm">' . $_ADMINLANG['home']['viewall'] . ' »</a> </div>'; return array('title' => $title, 'content' => $content); }
<form method="post" action="reports.php?report={$report}"> <table align="center"> <tr><td>Date From:</td><td><input type="text" name="datefrom" value="{$datefrom}" class="datepick" /></td><td width="20"></td><td>Date To:</td><td><input type="text" name="dateto" value="{$dateto}" class="datepick" /></td><td width="20"></td><td><input type="submit" value="Submit" /></tr> </table> </form> EOF; $reportdata["tableheadings"] = array("Coupon Code", "Discount Type", "Value", "Recurring", "Notes", "Usage Count", "Total Revenue"); $i = 0; $result = select_query("tblpromotions", "", "", "code", "ASC"); while ($data = mysql_fetch_array($result)) { $code = $data["code"]; $type = $data["type"]; $value = $data["value"]; $recurring = $data["recurring"]; $notes = $data["notes"]; $rowcount = $rowtotal = 0; $reportdata["drilldown"][$i]["tableheadings"] = array("Order ID", "Order Date", "Order Number", "Order Total", "Order Status"); $result2 = select_query("tblorders", "", "promocode='" . db_escape_string($code) . "' AND date>='" . db_make_safe_human_date($datefrom) . "' AND date<='" . db_make_safe_human_date($dateto) . "'", "id", "ASC"); while ($data = mysql_fetch_array($result2)) { $orderid = $data['id']; $ordernum = $data['ordernum']; $orderdate = $data['date']; $ordertotal = $data['amount']; $orderstatus = $data['status']; $rowcount++; $rowtotal += $ordertotal; $reportdata["drilldown"][$i]["tablevalues"][] = array('<a href="orders.php?action=view&id=' . $orderid . '">' . $orderid . '</a>', fromMySQLDate($orderdate), $ordernum, $ordertotal, $orderstatus); } $reportdata["tablevalues"][$i] = array($code, $type, $value, $recurring, $notes, $rowcount, format_as_currency($rowtotal)); $i++; }
use WHMCS\Input\Sanitize; if (!defined("WHMCS")) { die("This file cannot be accessed directly"); } if (!function_exists('getRegistrarsDropdownMenu')) { require ROOTDIR . '/includes/registrarfunctions.php'; } $whmcs = App::self(); $reportdata["title"] = $aInt->lang('reports', 'domainRenewalEmailsTitle'); $userID = $whmcs->get_req_var('client'); $domain = $whmcs->get_req_var('domain'); $dateFrom = $whmcs->get_req_var('dateFrom') ? toMySQLDate($whmcs->get_req_var('dateFrom')) : ''; $dateTo = $whmcs->get_req_var('dateTo') ? toMySQLDate($whmcs->get_req_var('dateTo')) : ''; $formDateFrom = $dateFrom ? fromMySQLDate($dateFrom) : ''; $formDateTo = $dateTo ? fromMySQLDate($dateTo) : ''; $registrar = $whmcs->get_req_var('registrar'); $print = $whmcs->get_req_var('print'); /** * Replace the "None" string with the "Any" string */ $registrarList = str_replace($aInt->lang('global', 'none'), $aInt->lang('global', 'any'), getRegistrarsDropdownMenu($registrar)); $reportdata["description"] = $aInt->lang('reports', 'domainRenewalEmailsDescription'); $reportHeader = ''; if (!$print) { $reportHeader = <<<REPORT_HEADER <form method="post" action="reports.php?report=domain_renewal_emails"> {$aInt->lang('fields', 'clientid')}: {$aInt->clientsDropDown($userID, '', 'client', true)} {$aInt->lang('fields', 'domain')}: <input type="text" name="domain" value="{$domain}" size="30" /> {$aInt->lang('fields', 'registrar')}: {$registrarList} {$aInt->lang('fields', 'daterange')}:
public function getFiles() { $where = array("userid" => $this->userid); if (!defined("ADMINAREA")) { $where['adminonly'] = ""; } $files = array(); $result = select_query("tblclientsfiles", "", $where, "title", "ASC"); while ($data = mysql_fetch_assoc($result)) { $id = $data['id']; $title = $data['title']; $adminonly = $data['adminonly']; $filename = $data['filename']; $filename = substr($filename, 11); $date = fromMySQLDate($data['dateadded'], 0, 1); $files[] = array("id" => $id, "date" => $date, "title" => $title, "adminonly" => $adminonly, "filename" => $filename); } return $files; }
$managetitle = $aInt->lang("addons", "editaddon"); $result = select_query("tblhostingaddons", "", array("id" => $aid)); $data = mysql_fetch_array($result); $addonid = $data['addonid']; $customname = $data['name']; $recurring = $data['recurring']; $setupfee = $data['setupfee']; $billingcycle = $data['billingcycle']; $status = $data['status']; $regdate = $data['regdate']; $nextduedate = $data['nextduedate']; $paymentmethod = $data['paymentmethod']; $tax = $data['tax']; $notes = $data['notes']; $regdate = fromMySQLDate($regdate); $nextduedate = fromMySQLDate($nextduedate); } echo "<h2>" . $managetitle . "</h2>"; $predefaddons = array(); $result = select_query("tbladdons", "", "", "weight` ASC,`name", "ASC"); while ($data = mysql_fetch_array($result)) { $preid = $data['id']; $name = $data['name']; $predefaddons[$preid] = $name; } $tbl = new WHMCS_Table(); $tbl->add($aInt->lang("fields", "product"), $frm->hidden("oldserviceid", $id) . $frm->dropdown("id", $servicesarr, $id), 1); $tbl->add($aInt->lang("fields", "regdate"), $frm->date("regdate", $regdate)); $tbl->add($aInt->lang("fields", "setupfee"), $frm->text("setupfee", $setupfee, "10")); $tbl->add($aInt->lang("addons", "predefinedaddon"), $frm->dropdown("addonid", $predefaddons, $addonid, "", "", true)); $tbl->add($aInt->lang("global", "recurring"), $frm->text("recurring", $recurring, "10") . ($aid == "add" ? " " . $frm->checkbox("defaultpricing", $aInt->lang("addons", "usedefault"), true) : ""));
$result = full_query($query); while ($data = mysql_fetch_array($result)) { $reportvalues['tickets_staff_replies'][$data[0]] = $data[1]; } $query = "SELECT date_format(date, '%e'),COUNT(id) FROM tblcancelrequests WHERE date LIKE '" . $year . "-" . $month . "-%' GROUP BY date_format(date, '%e') ORDER BY date ASC"; $result = full_query($query); while ($data = mysql_fetch_array($result)) { $reportvalues['cancellations_new'][$data[0]] = $data[1]; } for ($day = 1; $day <= 31; $day++) { $date = date("Y-m-d", mktime(0, 0, 0, $month, $day, $year)); $daytext = date("l", mktime(0, 0, 0, $month, $day, $year)); $neworders = isset($reportvalues['orders_active'][$day]) ? $reportvalues['orders_active'][$day] : '0'; $newinvoices = isset($reportvalues['invoices_new'][$day]) ? $reportvalues['invoices_new'][$day] : '0'; $paidinvoices = isset($reportvalues['invoices_paid'][$day]) ? $reportvalues['invoices_paid'][$day] : '0'; $newtickets = isset($reportvalues['tickets_new'][$day]) ? $reportvalues['tickets_new'][$day] : '0'; $ticketreplies = isset($reportvalues['tickets_staff_replies'][$day]) ? $reportvalues['tickets_staff_replies'][$day] : '0'; $cancellations = isset($reportvalues['cancellations_new'][$day]) ? $reportvalues['cancellations_new'][$day] : '0'; $reportdata["tablevalues"][] = array($daytext . ' ' . fromMySQLDate($date), $neworders, $newinvoices, $paidinvoices, $newtickets, $ticketreplies, $cancellations); $chartdata['rows'][] = array('c' => array(array('v' => fromMySQLDate($date)), array('v' => (int) $neworders), array('v' => (int) $newinvoices), array('v' => (int) $paidinvoices), array('v' => (int) $newtickets), array('v' => (int) $ticketreplies), array('v' => (int) $cancellations))); } $chartdata['cols'][] = array('label' => 'Day', 'type' => 'string'); $chartdata['cols'][] = array('label' => 'Completed Orders', 'type' => 'number'); $chartdata['cols'][] = array('label' => 'New Invoices', 'type' => 'number'); $chartdata['cols'][] = array('label' => 'Paid Invoices', 'type' => 'number'); $chartdata['cols'][] = array('label' => 'Opened Tickets', 'type' => 'number'); $chartdata['cols'][] = array('label' => 'Ticket Replies', 'type' => 'number'); $chartdata['cols'][] = array('label' => 'Cancellation Requests', 'type' => 'number'); $args = array(); $args['legendpos'] = 'right'; $reportdata["headertext"] = $chart->drawChart('Area', $chartdata, $args, '400px');
$totalprojectstime = $i = 0; $adminquery = $adminid ? " AND adminid='" . (int) $adminid . "'" : ""; $statusquery = $status ? " AND status='" . db_escape_string($status) . "'" : ""; $result = select_query("mod_project", "", "duedate>='" . toMySQLDate($datefrom) . "' AND duedate<='" . toMySQLDate($dateto) . "'" . $adminquery . $statusquery); while ($data = mysql_fetch_array($result)) { $totaltaskstime = 0; $projectid = $data['id']; $projectname = $data['title']; $adminid = $data['adminid']; $userid = $data['userid']; $created = $data['created']; $duedate = $data['duedate']; $ticketids = $data['ticketids']; $projectstatus = $data['status']; $created = fromMySQLDate($created); $duedate = fromMySQLDate($duedate); $admin = $adminid ? getAdminName($adminid) : "None"; if ($userid) { $clientsdetails = getClientsDetails($userid); $client = "<a href=\"clientssummary.php?userid=" . $clientsdetails['userid'] . "\">" . $clientsdetails['firstname'] . " " . $clientsdetails['lastname']; if ($clientsdetails['companyname']) { $client .= " (" . $clientsdetails['companyname'] . ")"; } $client .= "</a>"; $currency = getCurrency(); } else { $client = "None"; } $ticketinvoicelinks = array(); foreach ($ticketids as $i => $ticketnum) { if ($ticketnum) {
function buildAdminTicketListArray($result) { global $departmentsarray; global $tabledata; global $aInt; global $tickets; while ($data = mysql_fetch_array($result)) { $id = $data['id']; $ticketnumber = $data['tid']; $did = $data['did']; $puserid = $data['userid']; $name = $data['name']; $email = $data['email']; $date = $data['date']; $title = $data['title']; $message = $data['message']; $tstatus = $data['status']; $priority = $data['urgency']; $rawlastactivity = $data['lastreply']; $flag = $data['flag']; $firstname = $data['firstname']; $lastname = $data['lastname']; $companyname = $data['companyname']; $groupid = $data['groupid']; $adminread = $data['adminunread']; $adminread = explode(",", $adminread); $tickets->addTagCloudID($id); if (!in_array($_SESSION['adminid'], $adminread)) { $unread = 1; } else { $unread = 0; } $alttitle = ""; $title = trim($title); if (!$title) { $title = " - " . $aInt->lang("emails", "nosubject") . " - "; } if (80 < strlen($title)) { $alttitle = $title; $title = substr($title, 0, 80) . "..."; } if ($alttitle) { $alttitle .= "\r\n"; } $alttitle .= trim(ticketsummary($message, 250)); $flaggedto = ""; if ($flag == $_SESSION['adminid']) { $showflag = "user"; } else { if ($flag == 0) { $showflag = "none"; } else { $showflag = "other"; $flaggedto = getAdminName($flag); } } $department = $departmentsarray[$did]; if ($flaggedto) { $department .= " (" . $flaggedto . ")"; } $date = fromMySQLDate($date, "time"); $lastactivity = fromMySQLDate($rawlastactivity, "time"); $tstatus = getStatusColour($tstatus); $lastreply = getShortLastReplyTime($rawlastactivity); $title = "#" . $ticketnumber . " - " . $title; if ($unread) { $title = "<strong>" . $title . "</strong>"; } $clientinfo = $puserid != "0" ? $aInt->outputClientLink($puserid, $firstname, $lastname, $companyname, $groupid) : $name; $ticketlink = "<a href=\"?action=viewticket&id=" . $id . "\"" . ($alttitle ? " title=\"" . $alttitle . "\"" : "") . "" . $ainject . ">"; $tabledata[] = array("<input type=\"checkbox\" name=\"selectedtickets[]\" value=\"" . $id . "\" class=\"checkall\">", "<img src=\"images/" . strtolower($priority) . ("priority.gif\" width=\"16\" height=\"16\" alt=\"" . $priority . "\" class=\"absmiddle\" />"), $department, "<div style=\"text-align:left;\">" . $ticketlink . $title . "</a></div>", $clientinfo, $tstatus, $lastreply); } }
} else { header('Location: viewticket.php?tid=' . $ticket['results']['reference'] . '&c=' . $ticket['results']['id']); } } } ## Ticket updates foreach ($ticket['results']['updates'] as $key => $value) { if (!$value['private']) { $replies[] = array('name' => $value['author']['name'] ? $value['author']['name'] : $value['author']['first_name'] . ' ' . $value['author']['last_name'], 'message' => nl2br(($value['message'] ? $value['message'] : strip_tags($value['html_body'])) . ($value['signature_text'] ? "<div class='signature'><p>" . $value['signature_text'] . "</p></div>" : "")), 'admin' => $value['author']['type'] == 'User' ? true : false, 'userid' => $value['author']['type'] == 'User' ? false : true, 'date' => fromMySQLDate($value['posted_at'], 'time'), 'user' => $value['author']['type'] == 'User' ? "{$value['author']['first_name']} {$value['author']['last_name']}" : "{$value['from_name']}"); } } ## Logged in? if ($ca->isLoggedIn()) { $result = mysql_query("SELECT CONCAT_WS(' ', firstname, lastname) as full_name, email FROM tblclients WHERE id=" . $ca->getUserID()); $client = mysql_fetch_array($result, MYSQL_ASSOC); $ca->assign('email', $client['email']); $ca->assign('clientname', $client['full_name']); } ## Assign vars to the template $ca->assign('tid', $ticket['results']['reference']); $ca->assign('subject', $ticket['results']['subject']); $ca->assign('date', fromMySQLDate($ticket['results']['submitted_at'], time)); $ca->assign('department', $ticket['results']['department']['name']); $ca->assign('urgency', "<span style='color:#{$ticket['results']['priority']['colour']}'>{$ticket['results']['priority']['name']}</span>"); $ca->assign('status', "<span style='color:#{$ticket['results']['status']['colour']}'>{$ticket['results']['status']['name']}</span>"); $ca->assign('showclosebutton', $settings['close_ticket'] ? true : false); $ca->assign('descreplies', array_reverse($replies)); $ca->assign('replies', array_reverse($replies)); $ca->assign('c', $_GET['c']); $ca->setTemplate('viewticket'); $ca->output();
public function getInvoices($status = "", $userid = "", $orderby = "id", $sort = "DESC", $limit = "") { global $whmcs; $where = array(); if ($status) { $where['status'] = $status; } if ($userid) { $where['userid'] = $userid; } $where["(select count(id) from tblinvoiceitems where invoiceid=tblinvoices.id and type='Invoice')"] = array("sqltype" => "<=", "value" => 0); $invoices = array(); $result = select_query("tblinvoices", "tblinvoices.*,total-COALESCE((SELECT SUM(amountin-amountout) FROM tblaccounts WHERE tblaccounts.invoiceid=tblinvoices.id),0) AS balance", $where, $orderby, $sort, $limit); while ($data = mysql_fetch_array($result)) { $id = $data['id']; $invoicenum = $data['invoicenum']; $date = $data['date']; $duedate = $data['duedate']; $credit = $data['credit']; $total = $data['total']; $balance = $data['balance']; $status = $data['status']; if ($status == "Unpaid") { $this->totalbalance += $balance; } $date = fromMySQLDate($date, 0, 1); $duedate = fromMySQLDate($duedate, 0, 1); $rawstatus = strtolower($status); if (!$invoicenum) { $invoicenum = $id; } $invoices[] = array("id" => $id, "invoicenum" => $invoicenum, "datecreated" => $date, "datedue" => $duedate, "total" => formatCurrency($credit + $total), "balance" => formatCurrency($balance), "status" => getInvoiceStatusColour($status), "rawstatus" => $rawstatus, "statustext" => $whmcs->get_lang("invoices" . $rawstatus)); } return $invoices; }
$disklimit = $data["disklimit"]; $bwusage = $data["bwusage"]; $bwlimit = $data["bwlimit"]; $lastupdate = $data["lastupdate"]; if ($disklimit == "0") { $percentused = "N/A"; } else { @($percentused = number_format($diskusage / $disklimit * 100, 0, '.', '')); } if ($disklimit == "0") { $disklimit = "Unlimited"; } if ($bwlimit == "0") { $bwpercentused = "N/A"; } else { @($bwpercentused = number_format($bwusage / $bwlimit * 100, 0, '.', '')); } if ($bwlimit == "0") { $bwlimit = "Unlimited"; } if ($percentused != "N/A") { $percentused .= "%"; } if ($bwpercentused != "N/A") { $bwpercentused .= "%"; } $reportdata["tablevalues"][] = array("{$name}<br>{$domain}", "{$diskusage} MB", "{$disklimit} MB", "{$percentused}", "{$bwusage} MB", "{$bwlimit} MB", "{$bwpercentused}"); } } $data["footertext"] = "<p>Disk Space Usage Stats Last Updated at " . fromMySQLDate($lastupdate, "time") . " - <a href=\"" . $_SERVER["PHP_SELF"] . "?report=" . $_GET["report"] . "&action=updatestats\">Update Now</a></p>";
$paymentstatus = "<span class=\"textgreen\">" . $aInt->lang("status", "complete") . "</span>"; } else { if ($invoicestatus == "Unpaid") { $paymentstatus = "<span class=\"textred\">" . $aInt->lang("status", "incomplete") . "</span>"; } else { $paymentstatus = getInvoiceStatusColour($invoicestatus); } } } } run_hook("ViewOrderDetailsPage", array("orderid" => $id, "ordernum" => $ordernum, "userid" => $userid, "amount" => $amount, "paymentmethod" => $paymentmethod, "invoiceid" => $invoiceid, "status" => $orderstatus)); $clientnotes = array(); $result = select_query("tblnotes", "tblnotes.*,(SELECT CONCAT(firstname,' ',lastname) FROM tbladmins WHERE tbladmins.id=tblnotes.adminid) AS adminuser", array("userid" => $userid, "sticky" => "1"), "modified", "DESC"); while ($data = mysql_fetch_assoc($result)) { $data['created'] = fromMySQLDate($data['created'], 1); $data['modified'] = fromMySQLDate($data['modified'], 1); $data['note'] = autoHyperLink(nl2br($data['note'])); $clientnotes[] = $data; } if (count($clientnotes)) { echo "<div id=\"clientsimportantnotes\">\n"; foreach ($clientnotes as $note) { echo "<div class=\"ticketstaffnotes\">\n <table class=\"ticketstaffnotestable\">\n <tr>\n <td>" . $note['adminuser'] . "</td>\n <td align=\"right\">" . $note['modified'] . "</td>\n </tr>\n </table>\n <div>\n " . $note['note'] . "\n <div style=\"float:right;\"><a href=\"clientsnotes.php?userid=" . $userid . "&action=edit&id=" . $note['id'] . "\"><img src=\"images/edit.gif\" width=\"16\" height=\"16\" align=\"absmiddle\" /></a></div>\n </div>\n</div>\n"; } echo "</div>"; } echo "\n<table class=\"form\" width=\"100%\" border=\"0\" cellspacing=\"2\" cellpadding=\"3\">\n<tr><td class=\"fieldlabel\">"; echo $aInt->lang("fields", "date"); echo "</td><td class=\"fieldarea\">"; echo $date; echo "</td><td width=\"15%\" class=\"fieldlabel\">";
<?php if (!defined("WHMCS")) { die("This file cannot be accessed directly"); } $reportdata["title"] = "Credits Reviewer"; $reportdata["description"] = "This report allows you to review all the credits issued to clients between 2 dates you specify"; $reportdata["headertext"] = '<form method="post" action="?report=' . $report . '"> <p align="center">Start Date: <input type="text" name="startdate" value="' . $startdate . '" class="datepick" /> End Date: <input type="text" name="enddate" value="' . $enddate . '" class="datepick" /> <input type="submit" value="Generate Report"></p> </form>'; $reportdata["tableheadings"] = array("Credit ID", "Client Name", "Date", "Description", "Amount"); if ($startdate && $enddate) { $query = "SELECT tblcredit.*,tblclients.firstname,tblclients.lastname FROM tblcredit INNER JOIN tblclients ON tblclients.id=tblcredit.clientid WHERE tblcredit.date BETWEEN '" . db_make_safe_human_date($startdate) . "' AND '" . db_make_safe_human_date($enddate) . "'"; $result = full_query($query); while ($data = mysql_fetch_array($result)) { $id = $data["id"]; $userid = $data["clientid"]; $clientname = $data["firstname"] . " " . $data["lastname"]; $date = fromMySQLDate($data["date"]); $description = $data["description"]; $amount = $data["amount"]; $currency = getCurrency($userid); $amount = formatCurrency($amount); $reportdata["tablevalues"][] = array($id, '<a href="clientssummary.php?userid=' . $userid . '">' . $clientname . '</a>', $date, nl2br($description), $amount); } } $data["footertext"] = '';
$reportdata["tableheadings"][] = "Rating"; $reportdata["tableheadings"][] = "Comments"; $reportdata["tableheadings"][] = "IP Address"; $result = select_query("tblticketfeedback", "tblticketfeedback.*,(SELECT CONCAT(firstname,' ',lastname) FROM tbladmins WHERE tbladmins.id=tblticketfeedback.adminid) AS adminname,(SELECT CONCAT(tid,'|||',title) FROM tbltickets WHERE tbltickets.id=tblticketfeedback.ticketid) AS ticketinfo", "datetime>='" . db_make_safe_human_date($fromdate) . "' AND datetime<='" . db_make_safe_human_date($todate) . " 23:59:59'" . ($staffid ? " AND adminid=" . (int) $staffid : ""), "datetime", "ASC"); while ($data = mysql_fetch_array($result)) { $id = $data['id']; $ticketid = $data['ticketid']; $ticketinfo = $data['ticketinfo']; $adminid = $data['adminid']; $adminname = $data['adminname']; $rating = $data['rating']; $comments = $data['comments']; $datetime = $data['datetime']; $ip = $data['ip']; if ($adminid == 0) { $adminname = 'Generic Feedback'; } elseif (!trim($adminname)) { $adminname = 'Deleted Admin'; } if (!trim($comments)) { $comments = 'No Comments Left'; } $datetime = fromMySQLDate($datetime, 1); $ticketinfo = explode('|||', $ticketinfo); $tickettid = $ticketinfo[0]; $subject = $ticketinfo[1]; if (!$tickettid) { $tickettid = 'Not Found'; } $reportdata["tablevalues"][] = array('<a href="supporttickets.php?action=viewticket&id=' . $ticketid . '" target="_blank">' . $tickettid . '</a>', $adminname, $subject, $datetime, $rating, nl2br($comments), '<a href="http://www.geoiptool.com/en/?IP=' . $ip . '" target="_blank">' . $ip . '</a>'); }
$data2 = mysql_fetch_array($result2); $firstname = $data2['firstname']; $lastname = $data2['lastname']; $clientinfo = "<b>" . $firstname . " " . $lastname . "</b>"; } else { $clientinfo = "<b>" . $name . "</b> (" . $email . ")"; } echo "" . $clientinfo . " @ " . $date . "<br><hr size=1><br>" . stripslashes($message) . "<hr size=1>"; $result = select_query("tblticketreplies", "", array("tid" => $id), "date", "ASC"); while ($data = mysql_fetch_array($result)) { $ids = $data['id']; $puserid = $data['userid']; $name = $data['name']; $email = $data['email']; $date = $data['date']; $date = fromMySQLDate($date, "time"); $message = $data['message']; $attachment = $data['attachment']; $admin = $data['admin']; $message = strip_tags($message); $message = nl2br($message); $message = ticketAutoHyperlinks($message); if ($admin) { $clientinfo = "<b>" . $admin . "</b>"; } else { if ($puserid != "0000000000") { $result2 = select_query("tblclients", "", array("id" => $pauserid)); $data2 = mysql_fetch_array($result2); $firstname = $data2['firstname']; $lastname = $data2['lastname']; $clientinfo = "<B>" . $firstname . " " . $lastname . "</B>";
function widget_system_overview($vars) { global $whmcs, $_ADMINLANG; $title = $_ADMINLANG['home']['sysoverview']; if ($whmcs->get_req_var('getsystemoverview')) { $activeclients = get_query_val("tblclients", "COUNT(id)", "status='Active'"); $totalclients = get_query_val("tblclients", "COUNT(id)", ""); $clientsactive = $activeclients == 0 || $totalclients == 0 ? '0' : round($activeclients / $totalclients * 100, 0); $activeservices = get_query_val("tblhosting", "COUNT(id)", "domainstatus='Active'"); $totalservices = get_query_val("tblhosting", "COUNT(id)", ""); $servicesactive = $activeservices == 0 || $totalservices == 0 ? '0' : round($activeservices / $totalservices * 100, 0); $unpaidinvoices = get_query_val("tblinvoices", "COUNT(id)", "status='Unpaid'"); $overdueinvoices = get_query_val("tblinvoices", "COUNT(id)", "status='Unpaid' AND duedate<'" . date("Ymd") . "'"); $overduestatus = $overdueinvoices == 0 || $unpaidinvoices == 0 ? '0' : round($overdueinvoices / $unpaidinvoices * 100, 0); echo ' <table width="100%"> <tr> <td width="150">Clients</td> <td> <div class="percentbar"> <div class="active" style="width:' . $clientsactive . '%">' . $clientsactive . '% Active</div> </div> </td> <td class="totals">' . $totalclients . '</td> </tr> <tr> <td>Services</td> <td> <div class="percentbar"> <div class="active" style="width:' . $servicesactive . '%">' . $servicesactive . '% Active</div> </div> </td> <td class="totals">' . $totalservices . '</td> </tr> <tr> <td>Unpaid Invoices</td> <td> <div class="percentbar"> <div class="overdue" style="width:' . $overduestatus . '%">' . $overduestatus . '% Overdue</div> </div> </td> <td class="totals">' . $unpaidinvoices . '</td> </tr> </table> '; exit; } $adminusername = get_query_val("tbladmins", "username", array("id" => $vars['adminid'])); $lastlogin = get_query_vals("tbladminlog", "lastvisit,ipaddress", array("adminusername" => $adminusername), "lastvisit", "DESC", "1,1"); $lastlogindate = $lastlogin[0] ? fromMySQLDate($lastlogin[0], true) : '(None Recorded)'; $lastloginip = $lastlogin[1] ? $lastlogin[1] : '-'; $content = ' <style> #systemoverviewstats { display: none; } #systemoverviewstats div.percentbar { width: 100%; height: 24px; border: 1px solid #ccc; background-color: #efefef; } #systemoverviewstats div.percentbar div.active { height: 24px; line-height: 24px; background-color: #84B429; color: #fff; font-weight: bold; text-align: center; overflow: hidden; } #systemoverviewstats div.percentbar div.overdue { height: 24px; line-height: 24px; background-color: #cc0000; color: #fff; font-weight: bold; text-align: center; } #systemoverviewstats td { text-align: center; font-weight: bold; height: 35px; } .lastlogin { margin-bottom:5px; padding:3px; text-align: center; } </style> <div id="systemoverviewstats">' . $vars['loading'] . '</div> <div class="lastlogin">' . $_ADMINLANG['home']['lastlogin'] . ': <strong>' . $lastlogindate . '</strong> ' . $_ADMINLANG['home']['lastloginip'] . ' <strong>' . $lastloginip . '</strong></div> '; $statusfilter = array(); $result = select_query("tblticketstatuses", "title", array("showawaiting" => "1")); while ($data = mysql_fetch_array($result)) { $statusfilter[] = $data[0]; } $result = full_query("SELECT COUNT(*) FROM tbltickets WHERE status IN (" . db_build_in_array($statusfilter) . ")"); $data = mysql_fetch_array($result); $ticketsawaitingreply = $data[0]; $result = full_query("SELECT COUNT(*) FROM tblcancelrequests INNER JOIN tblhosting ON tblhosting.id=tblcancelrequests.relid WHERE (tblhosting.domainstatus!='Cancelled' AND tblhosting.domainstatus!='Terminated')"); $data = mysql_fetch_array($result); $cancellationrequests = $data[0]; $result = full_query("SELECT COUNT(*) FROM tbltodolist WHERE status!='Completed' AND status!='Postponed' AND duedate<='" . date("Y-m-d") . "'"); $data = mysql_fetch_array($result); $todoitemsdue = $data[0]; $result = full_query("SELECT COUNT(*) FROM tblnetworkissues WHERE status!='Scheduled' AND status!='Resolved'"); $data = mysql_fetch_array($result); $opennetworkissues = $data[0]; $jquerycode = 'jQuery.post("index.php", { getsystemoverview: 1 }, function(data){ jQuery("#systemoverviewstats").html(data); jQuery("#systemoverviewstats").slideDown(); jQuery("#sysoverviewbanner").html("<div style=\\"margin:0 0 -5px 0;padding: 10px;background-color: #FBEEEB;border: 1px dashed #cc0000;font-weight: bold;color: #cc0000;font-size:14px;text-align: center;-moz-border-radius: 10px;-webkit-border-radius: 10px;-o-border-radius: 10px;border-radius: 10px;\\">' . $_ADMINLANG['global']['attentionitems'] . ': <a href=\\"supporttickets.php\\">' . $ticketsawaitingreply . ' ' . $_ADMINLANG['stats']['ticketsawaitingreply'] . '</a> - <a href=\\"cancelrequests.php\\">' . $cancellationrequests . ' ' . $_ADMINLANG['stats']['pendingcancellations'] . '</a> - <a href=\\"todolist.php\\">' . $todoitemsdue . ' ' . $_ADMINLANG['stats']['todoitemsdue'] . '</a> - <a href=\\"networkissues.php\\">' . $opennetworkissues . ' ' . $_ADMINLANG['stats']['opennetworkissues'] . '</a></div>"); });'; return array('title' => $title, 'content' => $content, 'jquerycode' => $jquerycode); }
$patterns[] = "/Domain ID: (.*?) /"; $patterns[] = "/Invoice ID: (.*?) /"; $patterns[] = "/Quote ID: (.*?) /"; $patterns[] = "/Order ID: (.*?) /"; $patterns[] = "/Transaction ID: (.*?) /"; $replacements[] = ""; $replacements[] = "<a href=\"clientsservices.php?id=\$1\">Service ID: \$1</a> "; $replacements[] = "<a href=\"clientsdomains.php?id=\$1\">Domain ID: \$1</a> "; $replacements[] = "<a href=\"invoices.php?action=edit&id=\$1\">Invoice ID: \$1</a> "; $replacements[] = "<a href=\"quotes.php?action=manage&id=\$1\">Quote ID: \$1</a> "; $replacements[] = "<a href=\"orders.php?action=view&id=\$1\">Order ID: \$1</a> "; $replacements[] = "<a href=\"transactions.php?action=edit&id=\$1\">Transaction ID: \$1</a> "; $result = select_query("tblactivitylog", "", $where, "id", "DESC", $page * $limit . ("," . $limit)); while ($data = mysql_fetch_array($result)) { $id = $data['id']; $description = $data['description']; $username = $data['user']; $date = $data['date']; $ipaddr = $data['ipaddr']; $description .= " "; $description = whmcsHtmlspecialchars($description); $description = preg_replace($patterns, $replacements, $description); $tabledata[] = array(fromMySQLDate($date, "time"), "<div align=\"left\">" . $description . "</div>", $username, $ipaddr); } echo $aInt->sortableTable(array("Date", "Description", "User", "IP Address"), $tabledata); $content = ob_get_contents(); ob_end_clean(); $aInt->content = $content; $aInt->jquerycode = $jquerycode; $aInt->jscode = $jscode; $aInt->display();
} } } $result = select_query("tblnetworkissues", "COUNT(*)", $query_where); $data = mysql_fetch_array($result); $numitems = $data[0]; list($orderby, $sort, $limit) = clientAreaTableInit("networkissues", "lastupdate", "DESC", $numitems); $smartyvalues['orderby'] = $orderby; $smartyvalues['sort'] = strtolower($sort); $issues = array(); $result = select_query("tblnetworkissues", "", $query_where, $orderby, $sort, $limit); while ($data = mysql_fetch_array($result)) { $startdate = fromMySQLDate($data['startdate'], true); $lastupdate = fromMySQLDate($data['lastupdate'], true); if (!is_null($data['enddate'])) { $enddate = fromMySQLDate($data['enddate'], true); } else { $enddate = ""; } $priority = $_LANG["networkissuespriority" . strtolower($data['priority'])]; $status = $_LANG["networkissuesstatus" . str_replace(" ", "", strtolower($data['status']))]; $type = $_LANG["networkissuestype" . strtolower($data['type'])]; $affected = false; if ($data['server']) { if (in_array($data['server'], $users_servers)) { $affected = true; } $result2 = select_query("tblservers", "name", array("id" => $data['server'])); $data2 = mysql_fetch_array($result2); $servername = $data2['name']; } else {
$data = mysql_fetch_array($result); $title = $data['title']; $startdate = $data['startdate']; $enddate = $data['enddate']; $description = $data['description']; $type = $data['type']; $affecting = $data['affecting']; $server = $data['server']; $priority = $data['priority']; $status = $data['status']; $lastupdate = $data['lastupdate']; $startts = $startdate ? MySQL2Timestamp($startdate) : ""; $endts = $enddate ? MySQL2Timestamp($enddate) : ""; $startdate = fromMySQLDate($startdate, true); if ($enddate) { $enddate = fromMySQLDate($enddate, true); } echo "<input type=\"hidden\" name=\"id\" value=\"" . $id . "\" />"; } else { $pagetitle = "Create New Issue"; if (!$startdate) { $startdate = $upd; $startts = $startdate ? MySQL2Timestamp($startdate) : ""; } if (!$type) { $type = "Server"; } } if ($CONFIG['DateFormat'] == "DD/MM/YYYY" || $CONFIG['DateFormat'] == "DD.MM.YYYY" || $CONFIG['DateFormat'] == "DD-MM-YYYY") { $localdateformat = "dd/mm/yy"; } else {
<?php if (!defined("WHMCS")) { die("This file cannot be accessed directly"); } $reportdata["title"] = "Ticket Tags Overview"; $reportdata["description"] = "This report provides an overview of ticket tags assigned to tickets for a given date range"; if (!$fromdate) { $fromdate = fromMySQLDate(date("Y-m-d", mktime(0, 0, 0, date("m") - 1, date("d"), date("Y")))); } if (!$todate) { $todate = getTodaysDate(); } $reportdata["headertext"] = "<form method=\"post\" action=\"" . $_SERVER['PHP_SELF'] . "?report={$report}\"><center>Start Date: <input type=\"text\" name=\"fromdate\" value=\"{$fromdate}\" class=\"datepick\" /> End Date: <input type=\"text\" name=\"todate\" value=\"{$todate}\" class=\"datepick\" /> <input type=\"submit\" value=\"Generate Report\" /></form>"; $reportdata["tableheadings"][] = "Tag"; $reportdata["tableheadings"][] = "Count"; $result = full_query("SELECT `tag`, COUNT(*) AS `count` FROM `tbltickettags` INNER JOIN tbltickets ON tbltickets.id=tbltickettags.ticketid WHERE tbltickets.date>='" . db_make_safe_human_date($fromdate) . " 00:00:00' AND tbltickets.date<='" . db_make_safe_human_date($todate) . " 23:59:59' GROUP BY tbltickettags.tag ORDER BY `count` DESC"); while ($data = mysql_fetch_array($result)) { $tag = $data[0]; $count = $data[1]; $reportdata["tablevalues"][] = array($tag, $count); $chartdata['rows'][] = array('c' => array(array('v' => $tag), array('v' => (int) $count, 'f' => $count))); } $chartdata['cols'][] = array('label' => 'Tag', 'type' => 'string'); $chartdata['cols'][] = array('label' => 'Count', 'type' => 'number'); $args = array(); $args['legendpos'] = 'right'; $reportdata["headertext"] .= $chart->drawChart('Pie', $chartdata, $args, '300px');
/** * * @ WHMCS FULL DECODED & NULLED * * @ Version : 5.2.15 * @ Author : MTIMER * @ Release on : 2013-12-24 * @ Website : http://www.mtimer.cn * **/ define("ADMINAREA", true); require "../init.php"; $aInt = new WHMCS_Admin("View WHOIS Lookup Log"); $aInt->title = $aInt->lang("system", "whois"); $aInt->sidebar = "utilities"; $aInt->icon = "logs"; $aInt->sortableTableInit("date"); $numrows = get_query_val("tblwhoislog", "COUNT(*)", ""); $result = select_query("tblwhoislog", "", "", "id", "DESC", $page * $limit . "," . $limit); while ($data = mysql_fetch_array($result)) { $id = $data['id']; $date = $data['date']; $domain = $data['domain']; $ip = $data['ip']; $tabledata[] = array(fromMySQLDate($date, true), "<a href=\"#\" onclick=\"\$('#frmWhoisDomain').val('" . addslashes($domain) . ("');\$('#frmWhois').submit();return false\">" . $domain . "</a>"), "<a href=\"http://www.geoiptool.com/en/?IP=" . $ip . "\" target=\"_blank\">" . $ip . "</a>"); } $content = $aInt->sortableTable(array($aInt->lang("fields", "date"), $aInt->lang("fields", "domain"), $aInt->lang("fields", "ipaddress")), $tabledata); $content .= "\n<form method=\"post\" action=\"whois.php\" target=\"_blank\" id=\"frmWhois\">\n<input type=\"hidden\" name=\"domain\" value=\"\" id=\"frmWhoisDomain\" />\n</form>\n"; $aInt->content = $content; $aInt->display();