function reportInbound($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf, $credentials) { global $arrPermission; $error = ""; $pORGZ = new paloSantoOrganization($pDB); $domain = getParameter("organization"); $name = getParameter("name"); // $domain = empty($domain) ? 'all' : $domain; if ($credentials['userlevel'] != "superadmin") { $domain = $credentials['domain']; } $url['menu'] = $module_name; $url['organization'] = $domain; $url['name'] = $name; if ($credentials['userlevel'] == "superadmin") { if (isset($domain) && $domain != "all") { $pInbound = new paloSantoInbound($pDB, $domain); } else { $pInbound = new paloSantoInbound($pDB, ""); } $total = $pInbound->getNumInbound($domain, $name); $arrOrgz = array("all" => _tr("all")); foreach ($pORGZ->getOrganization(array()) as $value) { $arrOrgz[$value["domain"]] = $value["name"]; } } else { $arrOrgz = array(); $pInbound = new paloSantoInbound($pDB, $domain); $total = $pInbound->getNumInbound($domain, $name); } if ($total === false) { $error = $pInbound->errMsg; $total = 0; } $limit = 20; $oGrid = new paloSantoGrid($smarty); $oGrid->setLimit($limit); $oGrid->setTotal($total); $offset = $oGrid->calculateOffset(); $end = $offset + $limit <= $total ? $offset + $limit : $total; $oGrid->setTitle(_tr('Inbound Routes List')); $oGrid->setUrl($url); $oGrid->setWidth("99%"); $oGrid->setStart($total == 0 ? 0 : $offset + 1); $oGrid->setEnd($end); if ($credentials['userlevel'] == "superadmin") { $arrColumns[] = _tr("Organization"); } $arrColumns[] = _tr("Description"); $arrColumns[] = _tr("DID Number") . "/" . _tr("CID Number"); $arrColumns[] = _tr("CID Prefix"); $arrColumns[] = _tr("Language"); $arrColumns[] = _tr("Destination"); $oGrid->setColumns($arrColumns); $arrInbound = array(); $arrData = array(); if ($total != 0) { $arrInbound = $pInbound->getInbounds($domain, $name, $limit, $offset); } if ($arrInbound === false) { $error = _tr("Error to obtain Inbounds") . $pInbound->errMsg; $arrInbound = array(); } foreach ($arrInbound as $inbound) { $arrTmp = array(); if ($credentials['userlevel'] == 'superadmin') { $arrTmp[] = $arrOrgz[$inbound['organization_domain']]; } //organization $arrTmp[] = " <a href='?menu=inbound_route&action=view&id_inbound=" . $inbound['id'] . "&organization={$inbound['organization_domain']}'>" . htmlentities($inbound['description'], ENT_QUOTES, "UTF-8") . "</a>"; $did = $cid = ""; if ($inbound["did_number"] != "") { $did = $inbound["did_number"]; } if ($inbound["cid_number"] != "") { $cid = $inbound["cid_number"]; } $arrTmp[] = $did . " / " . $cid; $arrTmp[] = $inbound["cid_prefix"]; $arrTmp[] = $inbound["language"]; $arrTmp[] = $inbound["destination"]; $arrData[] = $arrTmp; } $smarty->assign("USERLEVEL", $credentials['userlevel']); $smarty->assign("SEARCH", "<input type='submit' class='button' value='" . _tr('Search') . "' name='report'>"); if ($pORGZ->getNumOrganization(array()) >= 1) { if (in_array('create', $arrPermission)) { if ($credentials['userlevel'] == 'superadmin') { $oGrid->addComboAction("organization_add", _tr("ADD Incoming Route"), array_slice($arrOrgz, 1), $selected = null, "create_inbound", $onchange_select = null); } else { $oGrid->addNew("create_inbound", _tr("ADD Incoming Route")); } } if ($credentials['userlevel'] == 'superadmin') { $_POST["organization"] = $domain; $oGrid->addFilterControl(_tr("Filter applied ") . _tr("Organization") . " = " . $arrOrgz[$domain], $_POST, array("organization" => "all"), true); } $_POST["name"] = $name; // name inboundrout $oGrid->addFilterControl(_tr("Filter applied ") . _tr("Name") . " = " . $name, $_POST, array("name" => "")); $arrFormElements = createFieldFilter($arrOrgz); $oFilterForm = new paloForm($smarty, $arrFormElements); $htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST); $oGrid->showFilter(trim($htmlFilter)); } else { $smarty->assign("mb_title", _tr("MESSAGE")); $smarty->assign("mb_message", _tr("It's necesary you create at least one organization so you can use this module")); } if ($error != "") { $smarty->assign("mb_title", _tr("MESSAGE")); $smarty->assign("mb_message", $error); } $contenidoModulo = $oGrid->fetchGrid(array(), $arrData); $mensaje = showMessageReload($module_name, $pDB, $credentials); $contenidoModulo = $mensaje . $contenidoModulo; return $contenidoModulo; }