本文整理汇总了PHP中createFieldFilter函数的典型用法代码示例。如果您正苦于以下问题:PHP createFieldFilter函数的具体用法?PHP createFieldFilter怎么用?PHP createFieldFilter使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了createFieldFilter函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: reportIVR
function reportIVR($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") {
$pIVR = new paloIvrPBX($pDB, $domain);
} else {
$pIVR = new paloIvrPBX($pDB, "");
}
$total = $pIVR->getTotalIvr($domain, $name);
$arrOrgz = array("all" => _tr("all"));
foreach ($pORGZ->getOrganization(array()) as $value) {
$arrOrgz[$value["domain"]] = $value["name"];
}
} else {
$arrOrgz = array();
$pIVR = new paloIvrPBX($pDB, $domain);
$total = $pIVR->getTotalIvr($domain, $name);
}
if ($total === false) {
$error = $pIVR->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('Ivrs 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("Ivr Name");
$arrColumns[] = _tr("Timeout");
$arrColumns[] = _tr("Enable Call Extensions");
$arrColumns[] = _tr("# Loops");
$oGrid->setColumns($arrColumns);
$arrData = array();
$arrIVR = array();
if ($total != 0) {
$arrIVR = $pIVR->getIvrs($domain, $name, $limit, $offset);
}
if ($arrIVR === false) {
$error = _tr("Error getting ivr data.") . $pIVR->errMsg;
} else {
foreach ($arrIVR as $ivr) {
$arrTmp = array();
if ($credentials['userlevel'] == "superadmin") {
$arrTmp[] = $arrOrgz[$ivr['organization_domain']];
}
$arrTmp[] = " <a href='?menu={$module_name}&action=view&id_ivr=" . $ivr['id'] . "&organization={$ivr["organization_domain"]}'>" . htmlentities($ivr["name"], ENT_QUOTES, "UTF-8") . "</a>";
$arrTmp[] = $ivr["timeout"];
$arrTmp[] = $ivr["directdial"];
$arrTmp[] = $ivr["loops"];
$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("Create New IVR"), array_slice($arrOrgz, 1), $selected = null, "create_ivr", $onchange_select = null);
} else {
$oGrid->addNew("create_ivr", _tr("Create New IVR"));
}
}
if ($credentials['userlevel'] == 'superadmin') {
$_POST["organization"] = $domain;
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("Organization") . " = " . $arrOrgz[$domain], $_POST, array("organization" => _tr("all")), true);
}
$_POST["name"] = $name;
//ivr name
$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"));
//.........这里部分代码省略.........
示例2: _moduleContent
function _moduleContent(&$smarty, $module_name)
{
//include module files
include_once "modules/{$module_name}/configs/default.conf.php";
include_once "modules/{$module_name}/libs/paloSantoCallsDetail.class.php";
include_once "modules/agent_console/getinfo.php";
global $arrConf;
load_language_module($module_name);
//folder path for custom templates
$base_dir = dirname($_SERVER['SCRIPT_FILENAME']);
$templates_dir = isset($arrConfig['templates_dir']) ? $arrConfig['templates_dir'] : 'themes';
$local_templates_dir = "{$base_dir}/modules/{$module_name}/" . $templates_dir . '/' . $arrConf['theme'];
// added by Tri Do
$sAction = getParameter('action');
switch ($sAction) {
case 'viewNote':
return viewNote();
break;
case 'viewDelivery':
return view_delivery();
break;
default:
break;
}
// Cadenas estáticas de Smarty
$smarty->assign(array("Filter" => _tr('Filter'), "SHOW" => _tr("Show")));
$bElastixNuevo = method_exists('paloSantoGrid', 'setURL');
// Variables iniciales para posición de grid
$offset = 0;
$limit = 50;
$total = 0;
// Para poder consultar las colas activas
$pConfig = new paloConfig("/etc", "amportal.conf", "=", "[[:space:]]*=[[:space:]]*");
$ampconfig = $pConfig->leer_configuracion(false);
$ampdsn = $ampconfig['AMPDBENGINE']['valor'] . "://" . $ampconfig['AMPDBUSER']['valor'] . ":" . $ampconfig['AMPDBPASS']['valor'] . "@" . $ampconfig['AMPDBHOST']['valor'] . "/asterisk";
$oQueue = new paloQueue($ampdsn);
$listaColas = $oQueue->getQueue();
if (!is_array($listaColas)) {
$smarty->assign("mb_title", _tr("Error when connecting to database"));
$smarty->assign("mb_message", $oQueue->errMsg);
}
// Para poder consultar los agentes de campañas
$pDB = new paloDB($cadena_dsn);
$oCallsDetail = new paloSantoCallsDetail($pDB);
$listaAgentes = $oCallsDetail->getAgents();
// Para llenar el select de agentes
$urlVars = array('menu' => $module_name);
$arrFormElements = createFieldFilter($listaAgentes, $listaColas);
$oFilterForm = new paloForm($smarty, $arrFormElements);
// Validar y aplicar las variables de filtro
$paramLista = NULL;
$paramFiltro = array();
foreach (array('date_start', 'date_end', 'calltype', 'agent', 'queue', 'phone') as $k) {
$paramFiltro[$k] = getParameter($k);
}
if (!isset($paramFiltro['date_start'])) {
$paramFiltro['date_start'] = date("d M Y");
}
if (!isset($paramFiltro['date_end'])) {
$paramFiltro['date_end'] = date("d M Y");
}
if (!$oFilterForm->validateForm($paramFiltro)) {
// Hay un error al validar las variables del filtro
$smarty->assign("mb_title", _tr("Validation Error"));
$arrErrores = $oFilterForm->arrErroresValidacion;
$strErrorMsg = "<b>" . _tr('The following fields contain errors') . ":</b><br>";
$strErrorMsg = implode(', ', array_keys($arrErrores));
$smarty->assign("mb_message", $strErrorMsg);
} else {
$urlVars = array_merge($urlVars, $paramFiltro);
$paramLista = $paramFiltro;
$paramLista['date_start'] = translateDate($paramFiltro['date_start']) . " 00:00:00";
$paramLista['date_end'] = translateDate($paramFiltro['date_end']) . " 23:59:59";
}
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $paramFiltro);
// Inicio de objeto grilla y asignación de filtro
$oGrid = new paloSantoGrid($smarty);
$oGrid->enableExport();
// enable export.
$oGrid->showFilter($htmlFilter);
$bExportando = $bElastixNuevo ? $oGrid->isExportAction() : isset($_GET['exportcsv']) && $_GET['exportcsv'] == 'yes' || isset($_GET['exportspreadsheet']) && $_GET['exportspreadsheet'] == 'yes' || isset($_GET['exportpdf']) && $_GET['exportpdf'] == 'yes';
// Ejecutar la consulta con las variables ya validadas
$arrData = array();
$total = 0;
if (is_array($paramLista)) {
$total = $oCallsDetail->contarDetalleLlamadas($paramLista);
if (is_null($total)) {
$smarty->assign("mb_title", _tr("Error when connecting to database"));
$smarty->assign("mb_message", $oCallsDetail->errMsg);
$total = 0;
} else {
// Habilitar la exportación de todo el contenido consultado
if ($bExportando) {
$limit = $total;
}
// Calcular el offset de la petición de registros
if ($bElastixNuevo) {
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
$offset = $oGrid->calculateOffset();
//.........这里部分代码省略.........
示例3: report_TicketDelivery
function report_TicketDelivery($smarty, $module_name, $local_templates_dir, &$pDB, $pDB_2)
{
$pTicket_Delivery = new Ticket_Delivery($pDB);
$pACL = new paloACL($pDB_2);
$img_dir = "modules/{$module_name}/images/";
// get filter parameters
$filter = array('date_start' => trim($_POST['date_start']) == '' ? '' : date("Y-m-d", strtotime($_POST['date_start'])), 'date_end' => trim($_POST['date_end']) == '' ? '' : date("Y-m-d", strtotime($_POST['date_end'])), 'customer_name' => trim($_POST['customer_name']), 'customer_phone' => trim($_POST['customer_number']), 'ticket_code' => trim($_POST['ticket_code']), 'status' => trim($_POST['status']));
//begin grid parameters
$oGrid = new paloSantoGrid($smarty);
$oGrid->setTitle("Yêu cầu giao vé");
$oGrid->setTableName("delivery_grid");
$oGrid->pagingShow(true);
// show paging section.
$oGrid->enableExport();
// enable export.
$oGrid->setNameFile_Export("ticket_delivery");
$url = array("menu" => $module_name);
$oGrid->setURL($url);
$arrColumns = array("ID", "Tên Khách Hàng", "Số điện thoại", "Booker", "Địa chỉ", "Tiền trả", "Mã số vé", "Tình trạng", "Nhân viên giao", "Ngày phân công", "Vé đính kèm", "Ngày nhận tiền", "Xử lý", "Chi tiết", " ");
$oGrid->setColumns($arrColumns);
$total = $pTicket_Delivery->getNumTicket_Delivery($filter);
$arrData = null;
if ($oGrid->isExportAction()) {
$limit = $total;
// max number of rows.
$offset = 0;
// since the start.
} else {
$limit = 20;
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
$offset = $oGrid->calculateOffset();
}
$arrResult = $pTicket_Delivery->getTicket_Delivery($limit, $offset, $filter);
if (is_array($arrResult) && $total > 0) {
foreach ($arrResult as $key => $value) {
$ticket = '';
$name = $pACL->getUsers($value['accounting_id']);
$elastix_user = is_null($value['accounting_id']) ? '(Chưa nhận)' : $name[0][1];
// show files
$download = '';
foreach ($value['ticket_attachment'] as $row) {
$url = "/modules/agent_console/ajax-attachments-handler.php?download=" . $row['filepath'] . "&name=" . $row['filename'];
$filename = $row['filename'];
$download .= "*<a href='{$url}' target='_blank' title='{$filename}'>" . shorten($filename) . "</a><br/>";
}
$print = '<a href="javascript:void(0)" onclick="print(\'' . $value['id'] . '\')"><img src="' . $img_dir . 'print.png" title="In phiếu"></a>';
$enable = $value['isActive'] == '1' ? '<a href="javascript:void(0)" onclick="disable(\'' . $value['id'] . '\')"><img src="' . $img_dir . 'disable.png" title="Hủy yêu cầu giao vé"></a> ' : '
<a href="javascript:void(0)" onclick="enable(\'' . $value['id'] . '\')"><img src="' . $img_dir . 'enable.png" title="Tạo lại yêu cầu giao vé"></a>';
$print .= ' ' . $enable;
// function show base on status
if ($value['isActive'] == '0') {
$value['status'] = 'Đã hủy';
}
switch ($value['status']) {
case 'Mới':
$function = '<a href="javascript:void(1)" onclick="assign_form(\'' . $value['id'] . '\')"><img src="' . $img_dir . 'assign.png" title="Phân công"></a>';
break;
case 'Đang giao':
$function = '<a href="javascript:void(1)" onclick="assign_form(\'' . $value['id'] . '\')"><img src="' . $img_dir . 'assign.png" title="Đổi phân công"></a>
<a href="javascript:void(1)" onclick="collect_form(\'' . $value['id'] . '\',\'' . $elastix_user . '\')"><img src="' . $img_dir . 'result.png" title="Kết quả"></a>';
break;
case 'Đã nhận tiền':
$function = '<a href="javascript:void(1)" onclick="uncollect_form(\'' . $value['id'] . '\',\'' . $elastix_user . '\')"><img src="' . $img_dir . 'unpaid.png" title="Hủy nhận tiền"></a>';
break;
case 'Chờ xử lý':
$function = '<a href="javascript:void(1)" onclick="assign_form(\'' . $value['id'] . '\')"><img src="' . $img_dir . 'assign.png" title="Phân công"></a>';
break;
default:
$function = '';
}
// show ticket code
foreach ($value['ticket_code'] as $row) {
$ticket .= $row . '<br>';
}
$arrTmp[0] = $value['id'];
$arrTmp[1] = $value['customer_name'];
$arrTmp[2] = $value['customer_phone'];
$arrTmp[3] = '<span title="Chi nhánh: ' . $value['office'] . '">' . $value['agent_name'] . '</span>';
$arrTmp[4] = '<a href="javascript:void(1)" title="' . $value['deliver_address'] . '"
onclick="view_address(\'' . $value['deliver_address'] . '\')">' . shorten($value['deliver_address']) . '
</a>';
$arrTmp[5] = $value['pay_amount'];
$arrTmp[6] = $ticket;
$arrTmp[7] = showStatus($value['status']);
$arrTmp[8] = $value['delivery_name'];
$arrTmp[9] = is_null($value['delivery_date']) ? '' : date("d-m-Y H:m:s", strtotime($value['delivery_date']));
$arrTmp[10] = $download;
$arrTmp[11] = is_null($value['collection_date']) ? '' : date("d-m-Y H:m:s", strtotime($value['collection_date']));
$arrTmp[12] = $function;
$arrTmp[13] = '<a href="javascript:void(1)" onclick="view_log(\'' . $value['id'] . '\')">
<img src="' . $img_dir . 'extra.png" title="Xem chi tiết"></a>';
$arrTmp[14] = $print;
$arrData[] = $arrTmp;
}
}
$oGrid->setData($arrData);
//begin section filter
$oFilterForm = new paloForm($smarty, createFieldFilter());
// get delivery man list
//.........这里部分代码省略.........
示例4: reportWeakKeys
function reportWeakKeys($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf)
{
$pWeakKeys = new paloSantoWeakKeys($pDB);
$filter_field = getParameter("filter_field");
$filter_value = getParameter("filter_value");
//begin grid parameters
$oGrid = new paloSantoGrid($smarty);
$total = $pWeakKeys->getNumWeakKeys($filter_field, $filter_value);
$pDB2 = new paloDB($arrConf['elastix_dsn']['acl']);
$pACL = new paloACL($pDB2);
$oGrid->enableExport();
// enable csv export.
$oGrid->pagingShow(true);
// show paging section.
$oGrid->setTitle(_tr("Weak Secrets"));
$oGrid->setIcon("modules/{$module_name}/images/security_weak_keys.png");
$oGrid->setNameFile_Export(_tr("Weak Secrets"));
if ($oGrid->isExportAction()) {
$limit = $total;
$offset = 0;
$bExportation = true;
} else {
$limit = 30;
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
$offset = $oGrid->calculateOffset();
$bExportation = false;
}
$url = array('menu' => $module_name, 'filter_field' => $filter_field, 'filter_value' => $filter_value);
$oGrid->setURL($url);
$arrResult = $pWeakKeys->getWeakKeys($limit, $offset, $filter_field, $filter_value);
$arrData = null;
//$arrResult =$pWeakKeys->getWeakKeysChecker();
$arrColumns = array(_tr("Extension"), _tr("Description"), _tr("Status"));
$oGrid->setColumns($arrColumns);
if (is_array($arrResult) && $total > 0) {
foreach ($arrResult as $tech) {
foreach ($tech as $key => $value) {
$arrTmp[0] = $value['id'];
$arrTmp[1] = $value['description'];
$mensaje = getMensaje($value['id'], $value['data']);
if ($mensaje != "OK" && !$bExportation) {
if ($pACL->isUserAdministratorGroup($_SESSION['elastix_user']) || $pACL->getUserExtension($_SESSION['elastix_user']) == $value['id']) {
$mensaje = _tr("Weak Key") . ": {$mensaje} <a href='?menu={$module_name}&action=change&id={$value['id']}'>" . _tr("Change Secret") . "</a>";
}
}
$arrTmp[2] = $mensaje;
$arrData[] = $arrTmp;
}
}
}
$oGrid->setData($arrData);
//begin section filter
$arrFormFilterWeakKeys = createFieldFilter();
$oFilterForm = new paloForm($smarty, $arrFormFilterWeakKeys);
$smarty->assign("SHOW", _tr("Show"));
$_POST["filter_field"] = $filter_field;
$_POST["filter_value"] = $filter_value;
$oGrid->addFilterControl(_tr("Filter applied: ") . _tr("Extension") . " = " . $filter_value, $_POST, array("filter_field" => "extension", "filter_value" => ""));
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST);
//end section filter
$oGrid->showFilter(trim($htmlFilter));
$content = $oGrid->fetchGrid();
//end grid parameters
return $content;
}
示例5: reportGroup
function reportGroup($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf, $userLevel1, $userAccount, $idOrganization)
{
$pACL = new paloACL($pDB);
$pORGZ = new paloSantoOrganization($pDB);
$idOrgFil = getParameter("idOrganization");
if ($userLevel1 == "superadmin") {
if (!empty($idOrgFil)) {
$cntGroups = $pACL->getNumGroups($idOrgFil);
} else {
$idOrgFil = 0;
//opcion default se muestran todos los grupos
$cntGroupsMO = $pACL->getNumGroups(1);
//obtenemos en numero de grupos que pertenecen a
//la organizacion 1 y lo restamos del total de grupos
$cntGroups = $pACL->getNumGroups() - $cntGroupsMO;
}
} else {
$idOrgFil = $idOrganization;
$cntGroups = $pACL->getNumGroups($idOrganization);
}
if ($cntGroups === false) {
$smarty->assign("mb_title", _tr("ERROR"));
$smarty->assign("mb_message", _tr($pACL->errMsg));
$total = 0;
} else {
$total = $cntGroups;
}
//url
$url['menu'] = $module_name;
$url['idOrganization'] = $idOrgFil;
$total = $total == NULL ? 0 : $total;
$limit = 20;
$oGrid = new paloSantoGrid($smarty);
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
$offset = $oGrid->calculateOffset();
$end = $oGrid->getEnd();
$oGrid->setURL($url);
$oGrid->setTitle(_tr('Group List'));
$oGrid->setIcon("web/apps/{$module_name}/images/system_groups.png");
$oGrid->setURL($url);
$oGrid->setWidth("99%");
$oGrid->setStart($total == 0 ? 0 : $offset + 1);
$oGrid->setEnd($end);
if ($userLevel1 == "superadmin") {
$arrColumns[] = _tr("Organization");
}
$arrColumns[] = _tr("Group Name");
$arrColumns[] = _tr("Group Description");
$oGrid->setColumns($arrColumns);
if ($idOrgFil != 0) {
$Groups = $pACL->getGroupsPaging($limit, $offset, $idOrgFil);
} else {
$Groups = $pACL->getGroupsPaging($limit, $offset);
}
$arrData = array();
foreach ($Groups as $group) {
if ($group[3] != 1) {
$arrTmp = array();
if ($userLevel1 == "superadmin") {
$orgz = $pORGZ->getOrganizationById($group[3]);
$arrTmp[] = htmlentities($orgz["name"], ENT_COMPAT, 'UTF-8');
//organization
}
$arrTmp[] = " <a href='?menu=grouplist&action=view&id=" . $group[0] . "'>" . $group[1] . "</a>";
//id,group name
$arrTmp[] = _tr($group[2]);
//description
$arrData[] = $arrTmp;
}
}
if ($pORGZ->getNumOrganization(array()) > 0) {
global $arrPermission;
if (in_array('create_group', $arrPermission)) {
$oGrid->addNew("create_group", _tr("Create New Group"));
}
if ($userLevel1 == "superadmin") {
$arrOrgz = array(0 => _tr("all"));
foreach ($pORGZ->getOrganization(array()) as $value) {
if ($value["id"] != 1) {
$arrOrgz[$value["id"]] = $value["name"];
}
}
$arrFormElements = createFieldFilter($arrOrgz);
$oFilterForm = new paloForm($smarty, $arrFormElements);
$_POST["idOrganization"] = $idOrgFil;
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("Organization") . " = " . $arrOrgz[$idOrgFil], $_POST, array("idOrganization" => 0), true);
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST);
$oGrid->showFilter(trim($htmlFilter));
}
} else {
$smarty->assign("mb_title", _tr("ERROR"));
$smarty->assign("mb_message", _tr("You need have created at least one organization before you can create a new group"));
}
$contenidoModulo = $oGrid->fetchGrid(array(), $arrData);
return $contenidoModulo;
}
示例6: reportReportedeCalltypes
//.........这里部分代码省略.........
// enable export.
$oGrid->setNameFile_Export(_tr("Reporte Ultima Gestion Recargables"));
$url = array("menu" => $module_name, "filter_field" => $filter_field, "filter_value" => $filter_value, "id_campania" => $id_campania, "adicionales" => $filter_field_adicional, "filtro_adicional" => $filter_value_adicional);
$oGrid->setURL($url);
// Columnas base
$arrColumns = array(_tr("Fecha"), _tr("Hora"), _tr("Campaña"), _tr("Base"), _tr("Cliente"), _tr("CI"), _tr("Teléfono"), _tr("Agente"), _tr("Contactabilidad"), _tr("Calltype"), _tr("Provincia"), _tr("Ciudad"), _tr("Nacimiento"), _tr("Correo Personal"), _tr("Correo Trabajo"), _tr("Estado Civil"), _tr("Formulario"));
// Otras columnas
if ($id_campania != "") {
// Columnas adicionales
$arrColumnasAdicionales = $pReportedeCalltypes->getColumnasAdicionales($id_campania);
$arrColumns = array_merge($arrColumns, $arrColumnasAdicionales);
$smarty->assign("mostrarAdicional", "si");
$smarty->assign("filtro_adicionales", filter_adicionales($arrColumnasAdicionales, null));
// Columnas de gestión
$arrTmp = $pReportedeCalltypes->getFormFields($id_campania);
$i = 0;
foreach ($arrTmp as $formField) {
$arrOrden[] = $formField['id'];
$arrColumnsAdicionales[$i] = $formField['etiqueta'];
$i++;
}
$arrColumns = array_merge($arrColumns, $arrColumnsAdicionales);
}
$oGrid->setColumns($arrColumns);
$total = $pReportedeCalltypes->getNumReportedeCalltypes($filter_field, $filter_value, $id_campania, $filter_field_adicional, $filter_value_adicional);
$arrData = null;
if ($oGrid->isExportAction()) {
$limit = $total;
// max number of rows.
$offset = 0;
// since the start.
} else {
$limit = 20;
// default 20
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
$offset = $oGrid->calculateOffset();
}
$arrResult = $pReportedeCalltypes->getReportedeCalltypes($limit, $offset, $filter_field, $filter_value, $id_campania, $filter_field_adicional, $filter_value_adicional);
if (is_array($arrResult) && $total > 0) {
foreach ($arrResult as $key => $value) {
$fecha = date("Y-m-d", strtotime($value['fecha']));
$hora = date("H:i:s", strtotime($value['fecha']));
$arrTmp[0] = $fecha;
$arrTmp[1] = $hora;
$arrTmp[2] = $value['campania'];
$arrTmp[3] = $value['base'];
$arrTmp[4] = $value['cliente'];
$arrTmp[5] = $value['ci'];
$arrTmp[6] = $value['telefono'];
$arrTmp[7] = $value['agente'];
$arrTmp[8] = $value['contactabilidad'];
$arrTmp[9] = $value['calltype'];
$arrTmp[10] = $value['provincia'];
$arrTmp[11] = $value['ciudad'];
$arrTmp[12] = $value['nacimiento'];
$arrTmp[13] = $value['correo_personal'];
$arrTmp[14] = $value['correo_trabajo'];
$arrTmp[15] = $value['estado_civil'];
// $arrTmp[8] = $value['formulario'];
// Así lo requiere RUBENING
$arrTmp[16] = "<a href=modules/{$module_name}/gestion_info.php?id_gestion={$value['id_gestion']} target=\"_blank\" onClick=\"window.open(this.href, this.target, 'width=600,height=400'); return false;\">Ver gestión</a>" . "<br>" . "<a href=modules/{$module_name}/gestion_edit.php?id_gestion={$value['id_gestion']}&user=" . $_SESSION["elastix_user"] . " target=\"_blank\" onClick=\"window.open(this.href, this.target, 'width=600,height=400,scrollbars=1'); return false;\">Editar</a>";
// Datos adicionales
$arrDatosAdicionales = $pReportedeCalltypes->getDatosAdicionales($value['id_cliente'], $value['id_base']);
$i = 17;
foreach ($arrColumnasAdicionales as $k => $columnaAdicional) {
$arrTmp[$i] = $arrDatosAdicionales[$columnaAdicional];
$i++;
}
unset($arrDatosAdicionales);
$numColumnasFijas = $i;
// Datos de gestión
$arrFormValues = $pReportedeCalltypes->getFormValues($value['id_gestion']);
// array_search retorna el key dado el valor a buscar
foreach ($arrFormValues as $formValue) {
// echo $formValue['valor'] . " " . array_search($formValue['id_form_field'],$arrOrden) . "<br>";
$ubicacionReal = array_search($formValue['id_form_field'], $arrOrden) + $numColumnasFijas;
if (is_array($formValue['valor'])) {
$formValue['valor'] = print_r($formValue['valor'], true);
}
$arrTmp[$ubicacionReal] = $formValue['valor'];
}
$arrData[] = $arrTmp;
unset($arrTmp);
}
}
$oGrid->setData($arrData);
/* Para colocar en $arrTmp
*/
//begin section filter
$oFilterForm = new paloForm($smarty, createFieldFilter());
$smarty->assign("SHOW", _tr("Show"));
$smarty->assign("filter_campaign", filter_campaign($pDB, $id_campania));
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST);
//end section filter
$oGrid->showFilter(trim($htmlFilter));
$content = $oGrid->fetchGrid();
//end grid parameters
return $content;
}
示例7: reportANI
function reportANI($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf, $credentials)
{
global $arrPermission;
$error = "";
$smarty->assign("SHOW_DIV_ERROR", "0");
//FIXED: can show div error message with javascript
$smarty->assign("mb_message", "hide");
//FIXED: can show div error message with javascript
$pORGZ = new paloSantoOrganization($pDB);
$domain = getParameter("organization");
$domain = empty($domain) ? 'all' : $domain;
if ($credentials['userlevel'] != "superadmin") {
$domain = $credentials['domain'];
}
$ani_prefix = getParameter("ani_prefix");
$pANI = new paloSantoANI($pDB, $domain);
$url['menu'] = $module_name;
$url['organization'] = $domain;
$url['ani_prefix'] = $ani_prefix;
$total = $pANI->getNumANI($domain, $ani_prefix);
$arrOrgz = array();
if ($credentials['userlevel'] == "superadmin") {
$arrOrgz = array("all" => _tr("all"));
foreach ($pORGZ->getOrganization(array()) as $value) {
$arrOrgz[$value["domain"]] = $value["name"];
}
}
if ($total === false) {
$error = $pANI->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('ANI List'));
$oGrid->setWidth("99%");
$oGrid->setStart($total == 0 ? 0 : $offset + 1);
$oGrid->setEnd($end);
$oGrid->setTotal($total);
$oGrid->setURL($url);
$arrColum = array();
if ($credentials['userlevel'] == "superadmin") {
$arrColum[] = _tr("Organization");
}
$arrColum[] = _tr("Trunk Name");
$arrColum[] = _tr("Prefix ANI");
$oGrid->setColumns($arrColum);
$arrANI = array();
$arrData = array();
if ($total != 0) {
$arrANI = $pANI->getANI($domain, $ani_prefix, $limit, $offset);
}
if ($arrANI === false) {
$error = _tr("Error to obtain ANI") . $pANI->errMsg;
$arrANI = array();
}
if ($error != "") {
$smarty->assign("mb_title", _tr("MESSAGE"));
$smarty->assign("mb_message", $error);
$smarty->assign("SHOW_DIV_ERROR", "1");
}
foreach ($arrANI as $row) {
$arrTmp = array();
if ($credentials['userlevel'] == "superadmin") {
$arrTmp[] = $arrOrgz[$row["organization_domain"]];
}
$arrTmp[] = $row["name"];
$arrTmp[] = "<input type='text' style='width:60px; text-align:center;' id='text#{$row['organization_domain']}#{$row['trunkid']}' value='{$row['ani_prefix']}' /> \n <input type='button' id='button#{$row['organization_domain']}#{$row['trunkid']}' value='" . _tr("Save") . "' />";
$arrData[] = $arrTmp;
}
$smarty->assign("USERLEVEL", $credentials['userlevel']);
$smarty->assign("SEARCH", "<input type='submit' class='button' value='" . _tr('Search') . "' name='report'>");
if ($pORGZ->getNumOrganization(array()) == 0) {
$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"));
$smarty->assign("SHOW_DIV_ERROR", "1");
}
if ($credentials['userlevel'] == 'superadmin') {
$_POST["organization"] = $domain;
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("Organization") . " = " . $arrOrgz[$domain], $_POST, array("organization" => "all"), true);
}
$_POST["ani_prefix"] = $ani_prefix;
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("ANI Prefix") . " = " . $ani_prefix, $_POST, array("ani_prefix" => ""));
$arrFormElements = createFieldFilter($arrOrgz);
$oFilterForm = new paloForm($smarty, $arrFormElements);
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST);
$oGrid->showFilter(trim($htmlFilter));
return $oGrid->fetchGrid(array(), $arrData);
}
示例8: reportClientesagendados
function reportClientesagendados($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf)
{
$pClientesagendados = new paloSantoClientesagendados($pDB);
$filter_field = getParameter("filter_field");
$filter_value = getParameter("filter_value");
//begin grid parameters
$oGrid = new paloSantoGrid($smarty);
$oGrid->setTplFile("/var/www/html/modules/{$module_name}/themes/default/_list.tpl");
$oGrid->setTitle(_tr("Clientes agendados"));
$oGrid->pagingShow(true);
// show paging section.
$oGrid->enableExport();
// enable export.
$oGrid->setNameFile_Export(_tr("Clientes agendados"));
$url = array("menu" => $module_name, "filter_field" => $filter_field, "filter_value" => $filter_value);
$oGrid->setURL($url);
$arrColumns = array(_tr("Apellido"), _tr("Nombre"), _tr("CI"), _tr("Campaña"), _tr("Fecha de agendamiento"), _tr("Call type"), _tr("Agente agendado"), "<input class=\"button\" type=\"submit\" name=\"action\" value=\"Reasignar\">");
$oGrid->setColumns($arrColumns);
$total = $pClientesagendados->getNumClientesagendados($filter_field, $filter_value);
$arrData = null;
if ($oGrid->isExportAction()) {
$limit = $total;
// max number of rows.
$offset = 0;
// since the start.
} else {
$limit = 20;
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
$offset = $oGrid->calculateOffset();
}
$arrResult = $pClientesagendados->getClientesagendados($limit, $offset, $filter_field, $filter_value);
if (is_array($arrResult) && $total > 0) {
foreach ($arrResult as $key => $value) {
$arrTmp[0] = $value['apellido'];
$arrTmp[1] = $value['nombre'];
$arrTmp[2] = $value['ci'];
$arrTmp[3] = $value['nombre_campania'];
$arrTmp[4] = $value['fecha_agendamiento'];
$arrTmp[5] = $value['ultimo_calltype'];
$arrTmp[6] = $value['agente_agendado'];
if (empty($value['id_campania_cliente'])) {
$arrTmp[7] = getFormSelectAgentesCampaniaRecargable($pClientesagendados, $value['id_campania'], $value['id_campania_recargable_cliente'], $value['agente_agendado']);
} else {
$arrTmp[7] = getFormSelectAgentesCampania($pClientesagendados, $value['id_campania'], $value['id_campania_cliente'], $value['agente_agendado']);
}
$arrData[] = $arrTmp;
}
}
$oGrid->setData($arrData);
//begin section filter
$oFilterForm = new paloForm($smarty, createFieldFilter());
$smarty->assign("SHOW", _tr("Show"));
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST);
//end section filter
$oGrid->showFilter(trim($htmlFilter));
$content = $oGrid->fetchGrid();
//end grid parameters
return $content;
}
示例9: reportMonitoring
//.........这里部分代码省略.........
if ($esAdministrador) {
$oGrid->deleteList(_tr("message_alert"), 'submit_eliminar', _tr("Delete"));
$buttonDelete = "";
} else {
$buttonDelete = "";
}
$arrColumns = array($buttonDelete, "Ngày", "Giờ", "Gọi từ", "Gọi đến", "Nhân viên/PSTN", "Thời gian gọi", "Loại", "Ghi âm", "Nội dung", "Giao vé");
$oGrid->setColumns($arrColumns);
if ($esAdministrador) {
$arrResult = $pMonitoring->getMonitoring($limit, $offset, $filter_field, $filter_value, null, $date_initial, $date_final);
} elseif (!($extension == "" || is_null($extension))) {
$arrResult = $pMonitoring->getMonitoring($limit, $offset, $filter_field, $filter_value, $extension, $date_initial, $date_final);
} else {
$arrResult = array();
}
if (is_array($arrResult) && $total > 0) {
$src = "";
$dst = "";
foreach ($arrResult as $key => $value) {
if ($esAdministrador) {
$arrTmp[0] = "<input type='checkbox' name='id_" . $value['uniqueid'] . "' />";
} else {
$arrTmp[0] = "";
}
$arrTmp[1] = date('d M Y', strtotime($value['calldate']));
$arrTmp[2] = date('H:i:s', strtotime($value['calldate']));
if (!isset($value['src']) || $value['src'] == "") {
$src = "<font color='gray'>" . _tr("unknown") . "</font>";
} else {
$src = $value['src'];
}
if (!isset($value['dst']) || $value['dst'] == "") {
$dst = "<font color='gray'>" . _tr("unknown") . "</font>";
} else {
$dst = $value['dst'];
}
$arrTmp[3] = $src;
$arrTmp[4] = $dst;
$arrTmp[5] = channel_lookup($pDB, $value['dstchannel']);
$arrTmp[6] = "<label title='" . $value['duration'] . " seconds' style='color:green'>" . SecToHHMMSS($value['duration']) . "</label>";
//$file = base64_encode($value['userfield']);
$file = $value['uniqueid'];
$namefile = basename($value['userfield']);
$namefile = str_replace("audio:", "", $namefile);
if ($namefile == 'deleted') {
$arrTmp[7] = _tr('Deleted');
} else {
switch ($namefile[0]) {
case "O":
$arrTmp[7] = _tr("Outgoing");
break;
case "g":
$arrTmp[7] = _tr("Group");
break;
case "q":
$arrTmp[7] = _tr("Queue");
break;
default:
$arrTmp[7] = _tr("Incoming");
break;
}
}
if ($namefile != 'deleted') {
$recordingLink = "<a href=\"javascript:popUp('index.php?menu={$module_name}&action=display_record&id={$file}&namefile={$namefile}&rawmode=yes',350,100);\">" . _tr("Listen") . "</a> ";
$recordingLink .= "<a href='?menu={$module_name}&action=download&id={$file}&namefile={$namefile}&rawmode=yes' >" . _tr("Download") . "</a>";
} else {
$recordingLink = '';
}
$arrTmp[8] = $recordingLink;
$arrTmp[9] = is_null($value['note_id']) ? '-' : '<a href="javascript:void(0)" onclick="view_note(\'' . $value['note_id'] . '\')">Xem</a>';
$arrTmp[10] = is_null($value['delivery_id']) ? '-' : '<a href="javascript:void(0)" onclick="view_delivery(\'' . $value['delivery_id'] . '\')">Xem</a>';
$arrData[] = $arrTmp;
}
}
}
$oGrid->setData($arrData);
//begin section filter
$arrFormFilterMonitoring = createFieldFilter();
$oFilterForm = new paloForm($smarty, $arrFormFilterMonitoring);
$smarty->assign("INCOMING", _tr("Incoming"));
$smarty->assign("OUTGOING", _tr("Outgoing"));
$smarty->assign("QUEUE", _tr("Queue"));
$smarty->assign("GROUP", _tr("Group"));
$smarty->assign("SHOW", _tr("Show"));
$_POST["filter_field"] = $filter_field;
$_POST["filter_value"] = $filter;
$_POST["filter_value_userfield"] = $filter_userfield;
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("Start Date") . " = " . $paramFilter['date_start'] . ", " . _tr("End Date") . " = " . $paramFilter['date_end'], $paramFilter, array('date_start' => date("d M Y"), 'date_end' => date("d M Y")), true);
if ($filter_field == "userfield") {
$oGrid->addFilterControl(_tr("Filter applied ") . " {$nameFilterField} = {$nameFilterUserfield}", $_POST, array('filter_field' => "src", 'filter_value_userfield' => "incoming"));
} else {
$oGrid->addFilterControl(_tr("Filter applied ") . " {$nameFilterField} = {$filter}", $_POST, array('filter_field' => "src", "filter_value" => ""));
}
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST);
//end section filter
$oGrid->showFilter(trim($htmlFilter));
$content = $oGrid->fetchGrid();
//end grid parameters
return $content;
}
示例10: reportExten
//.........这里部分代码省略.........
$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('Extensions List'));
//$oGrid->setIcon('url de la imagen');
$oGrid->setWidth("99%");
$oGrid->setStart($total == 0 ? 0 : $offset + 1);
$oGrid->setEnd($end);
$oGrid->setTotal($total);
$oGrid->setURL($url);
if ($credentials['userlevel'] == "superadmin") {
$arrColum[] = _tr("Organization");
}
$arrColum[] = _tr("Extension");
$arrColum[] = _tr("Caller ID");
$arrColum[] = _tr("Technology");
$arrColum[] = _tr("Device");
$arrColum[] = _tr("Context");
$arrColum[] = _tr("User");
$arrColum[] = _tr("Voicemail");
$arrColum[] = _tr("Recording In") . " / " . _tr("Recording Out");
$oGrid->setColumns($arrColum);
$arrExtens = array();
$arrData = array();
if ($total != 0) {
$arrExtens = $pExten->getExtensions($domain, $extension, $limit, $offset);
}
if ($arrExtens === false) {
$error = _tr("Error to obtain extensions") . $pExten->errMsg;
$arrExtens = array();
} else {
foreach ($arrExtens as $exten) {
$arrTmp = array();
if ($credentials['userlevel'] == "superadmin") {
$arrTmp[] = $arrOrgz[$exten["organization_domain"]];
}
$arrTmp[] = " <a href='?menu=extensions&action=view&id_exten=" . $exten['id'] . "&organization={$exten['organization_domain']}'>" . $exten["exten"] . "</a>";
$arrTmp[] = $exten['clid_name'] . " <{$exten['clid_number']}>";
$arrTmp[] = strtoupper($exten['tech']);
$arrTmp[] = $exten['device'];
$arrTmp[] = $exten['context'];
$query = "Select username from acl_user where extension=? and id_group in (select g.id from acl_group g join organization o on g.id_organization=o.id where o.domain=?)";
$result = $pDB->getFirstRowQuery($query, false, array($exten["exten"], $exten["organization_domain"]));
if ($result != false) {
$arrTmp[] = $result[0];
} else {
$arrTmp[] = _tr("Nobody");
}
if (isset($exten["voicemail"])) {
if ($exten["voicemail"] != "novm") {
$arrTmp[] = "yes";
} else {
$arrTmp[] = "no";
}
} else {
$arrTmp[] = "no";
}
$arrTmp[] = _tr($exten["record_in"]) . " / " . _tr($exten["record_out"]);
$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("Create New Extension"), array_slice($arrOrgz, 1), $selected = null, "create_exten", $onchange_select = null);
} else {
$oGrid->addNew("create_exten", _tr("Create New Extension"));
}
}
if ($credentials['userlevel'] == 'superadmin') {
$_POST["organization"] = $domain;
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("Organization") . " = " . $arrOrgz[$domain], $_POST, array("organization" => "all"), true);
}
$_POST["extension"] = $extension;
// patter to filter estension number
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("Extension") . " = " . $extension, $_POST, array("extension" => ""));
$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;
}
示例11: reportOutbound
//.........这里部分代码省略.........
}
$total = $pOutbound->getNumOutbound($domain, $name);
$arrOrgz = array("all" => _tr("all"));
foreach ($pORGZ->getOrganization(array()) as $value) {
$arrOrgz[$value["domain"]] = $value["name"];
}
} else {
$pOutbound = new paloSantoOutbound($pDB, $domain);
$total = $pOutbound->getNumOutbound($domain, $name);
}
if ($total === false) {
$error = $pOutbound->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;
$arrGrid = array("title" => _tr('Outbound Routes List'), "url" => $url, "width" => "99%", "start" => $total == 0 ? 0 : $offset + 1, "end" => $end, "total" => $total);
$arrColumns = array();
$arrColumns[] = _tr("Order");
$arrColumns[] = _tr("Route Name");
if ($credentials['userlevel'] == "superadmin") {
$arrColumns[] = _tr("Organization");
}
$arrColumns[] = _tr("Route CID");
$arrColumns[] = _tr("Route Password");
$arrColumns[] = _tr("Time Group");
$oGrid->setColumns($arrColumns);
$arrOutbound = array();
$arrData = array();
if ($total != 0) {
$arrOutbound = $pOutbound->getOutbounds($domain, $name, $limit, $offset);
}
if ($arrOutbound === false) {
$error = _tr("Error to obtain outbounds") . $pOutbound->errMsg;
$arrOutbound = array();
}
$create = in_array('create', $arrPermission);
$edit = in_array('edit', $arrPermission);
foreach ($arrOutbound as $outbound) {
$arrTmp = array();
if ($edit) {
$arrTmp[] = fieldOrden($arrOutbound, $outbound["seq"], $outbound["id"], $outbound["organization_domain"]);
} else {
$arrTmp[] = $outbound["seq"];
}
$arrTmp[] = " <a href='?menu=outbound_route&action=view&id_outbound=" . $outbound['id'] . "&organization={$outbound["organization_domain"]}'>" . htmlentities($outbound['routename'], ENT_QUOTES, "UTF-8") . "</a>";
if ($credentials['userlevel'] == "superadmin") {
$arrTmp[] = $arrOrgz[$outbound["organization_domain"]];
}
$arrTmp[] = $outbound["outcid"];
$arrTmp[] = $outbound["routepass"];
if (isset($outbound["time_group_id"])) {
$query = "SELECT name from time_group where id=?";
$result = $pDB->getFirstRowQuery($query, true, array($outbound["time_group_id"]));
if ($result != false) {
$arrTmp[] = $result["name"];
} else {
$arrTmp[] = "";
}
}
$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 Outbound Route"), array_slice($arrOrgz, 1), $selected = null, "create_outbound", $onchange_select = null);
} else {
$oGrid->addNew("create_outbound", _tr("ADD Outbound 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;
//outbound_route name
$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($arrGrid, $arrData);
$mensaje = showMessageReload($module_name, $pDB, $credentials);
$contenidoModulo = $mensaje . $contenidoModulo;
return $contenidoModulo;
}
示例12: report_AccessAudit
function report_AccessAudit($smarty, $module_name, $local_templates_dir)
{
global $arrPermission;
$pAccessLogs = new paloSantoAccessaudit();
$listaFechas = $pAccessLogs->astLog->listarFechas();
$arrFormElements = createFieldFilter($listaFechas);
$field_pattern = getParameter("filter");
$busqueda = getParameter('busqueda');
$sUltimaBusqueda = getParameter('ultima_busqueda');
$iUltimoOffset = getParameter('ultimo_offset');
if (is_null($busqueda) || trim($busqueda) == '') {
$busqueda = '';
}
if ($busqueda != '') {
$_POST['busqueda'] = $busqueda;
}
/* Última búsqueda, si existe */
if (is_null($sUltimaBusqueda) || $sUltimaBusqueda == '' || is_null($iUltimoOffset) || !ereg('^[[:digit:]]+$', $iUltimoOffset)) {
$sUltimaBusqueda = NULL;
$iUltimoOffset = NULL;
}
if (!ereg($arrFormElements['filter']['VALIDATION_EXTRA_PARAM'], $field_pattern)) {
$field_pattern = $listaFechas[count($listaFechas) - 1];
}
$_POST['filter'] = $field_pattern;
$oFilterForm = new paloForm($smarty, $arrFormElements);
$oGrid = new paloSantoGrid($smarty);
$oGrid->setTitle(_tr("Audit"));
$oGrid->setIcon("web/apps/{$module_name}/images/security_audit.png");
$oGrid->pagingShow(true);
// show paging section.
if (in_array("export", $arrPermission)) {
$oGrid->enableExport();
}
// enable export.
$oGrid->setNameFile_Export(_tr("Access audit"));
if (in_array("export", $arrPermission)) {
$isExport = $oGrid->isExportAction();
} else {
$isExport = false;
}
$total_datos = $pAccessLogs->ObtainNumAccessLogs($field_pattern);
$totalBytes = $total_datos[0];
$iNumLineasPorPagina = 30;
$iEstimadoBytesPagina = $iNumLineasPorPagina * 128;
$iOffsetVerdadero = getParameter('offset');
if (is_null($iOffsetVerdadero) || !ereg('^[[:digit:]]+$', $iOffsetVerdadero)) {
$iOffsetVerdadero = 0;
}
if ($iOffsetVerdadero >= $totalBytes) {
$iOffsetVerdadero = 0;
}
if (isset($_GET['filter']) && isset($_POST['filter']) && $_GET['filter'] != $_POST['filter']) {
$iOffsetVerdadero = 0;
}
/* Para ubicarse en la página, se obtiene la región 5 páginas estimadas hacia delante y
5 páginas estimadas hacia atrás desde el offset indicado.
*/
$inicioRango = $iOffsetVerdadero - 5 * $iEstimadoBytesPagina;
if ($inicioRango < 0) {
$inicioRango = 0;
}
if ($isExport) {
$arrResult = $pAccessLogs->ObtainAccessLogs($totalBytes, 0, $field_pattern, NULL, $isExport);
} else {
$arrResult = $pAccessLogs->ObtainAccessLogs(10 * $iEstimadoBytesPagina, $inicioRango, $field_pattern, NULL, $isExport);
}
/* Localizar la línea del offset verdadero, así como los offsets de las páginas previa y siguiente */
for ($iPos = 0; $iPos < count($arrResult); $iPos++) {
if ($arrResult[$iPos]['offset'] >= $iOffsetVerdadero) {
break;
}
}
$iPosPrevio = $iPos - $iNumLineasPorPagina;
$iPosSiguiente = $iPos + $iNumLineasPorPagina;
if ($iPosPrevio < 0) {
$iPosPrevio = 0;
}
if ($iPosSiguiente > count($arrResult) - 1) {
$iPosSiguiente = count($arrResult) - 1;
}
$iOffsetPrevio = $arrResult[$iPosPrevio]['offset'];
$iOffsetSiguiente = $arrResult[$iPosSiguiente]['offset'];
$limit = 30;
$total = (int) ($totalBytes / 128);
$offset = $iOffsetVerdadero;
$nav = getParameter('nav');
if ($nav) {
switch ($nav) {
case 'start':
$offset = 0;
break;
case 'end':
/* Caso especial: se debe tomar la última sección del log */
$inicioRango = $totalBytes - 5 * $iEstimadoBytesPagina;
if ($inicioRango < 0) {
$inicioRango = 0;
}
if ($isExport) {
$arrResult = $pAccessLogs->ObtainAccessLogs($totalBytes, 0, $field_pattern, $busqueda != '' ? $busqueda : NULL, $isExport);
//.........这里部分代码省略.........
示例13: reportUser
//.........这里部分代码省略.........
$arrColumns = array();
if ($credentials["userlevel"] == "superadmin") {
$arrColumns[] = _tr("Organization");
//delete
}
$arrColumns[] = _tr("Username");
$arrColumns[] = _tr("Name");
$arrColumns[] = _tr("Group");
$arrColumns[] = _tr("Extension") . " / " . _tr("Fax Extension");
$arrColumns[] = _tr("Used Space") . " / " . _tr("Email Quota");
if (in_array('reconstruct_mailbox', $arrPermission)) {
$arrColumns[] = "";
}
//reconstruct mailbox
$oGrid->setColumns($arrColumns);
$arrData = array();
if ($credentials['userlevel'] == "superadmin") {
if ($idOrgFil != 0) {
$arrUsers = $pACL->getUsersPaging($limit, $offset, $idOrgFil, $username);
} else {
$arrUsers = $pACL->getUsersPaging($limit, $offset, null, $username);
}
} else {
$arrUsers = $pACL->getUsersPaging($limit, $offset, $idOrgFil, $username);
}
if ($arrUsers === false) {
$smarty->assign("mb_title", _tr("ERROR"));
$smarty->assign("mb_message", _tr($pACL->errMsg));
}
//si es un usuario solo se ve a si mismo
//si es un administrador ve a todo los usuarios de
foreach ($arrUsers as $user) {
$arrTmp = array();
if ($credentials["userlevel"] == "superadmin") {
$arrOgz = $pORGZ->getOrganizationById($user[4]);
$arrTmp[] = htmlentities($arrOgz["name"], ENT_COMPAT, 'UTF-8');
//organization
}
$arrTmp[] = " <a href='?menu=userlist&action=view&id={$user['0']}'>" . $user[1] . "</a>";
//username
$arrTmp[] = htmlentities($user[2], ENT_COMPAT, 'UTF-8');
//name
$gpTmp = $pACL->getGroupNameByid($user[7]);
$arrTmp[] = $gpTmp == "superadmin" ? _tr("NONE") : $gpTmp;
if (!isset($user[5]) || $user[5] == "") {
$ext = _tr("Not assigned");
} else {
$ext = $user[5];
}
if (!isset($user[6]) || $user[6] == "") {
$faxExt = _tr("Not assigned");
} else {
$faxExt = $user[6];
}
$arrTmp[] = $ext . " / " . $faxExt;
if ($user[4] != 1) {
//user that belong organization 1 do not have email account
$arrTmp[] = obtener_quota_usuario($user[1], $module_name);
//email quota
if (in_array('reconstruct_mailbox', $arrPermission)) {
$arrTmp[] = " <a href='#' onclick=mailbox_reconstruct('{$user[1]}')>" . _tr('Reconstruct Mailbox') . "</a>";
//reconstruct mailbox
}
} else {
$arrTmp[] = '';
$arrTmp[] = '';
}
$arrData[] = $arrTmp;
$end++;
}
$smarty->assign("USERLEVEL", $credentials['userlevel']);
$smarty->assign("SEARCH", "<input name='search_org' type='submit' class='button' value='" . _tr('Search') . "'>");
if ($pORGZ->getNumOrganization(array()) > 0) {
$arrOrgz = array(0 => _tr("all"));
if (in_array('create_user', $arrPermission)) {
$oGrid->addNew("create_user", _tr("Create New User"));
}
if ($credentials['userlevel'] == "superadmin") {
foreach ($pORGZ->getOrganization(array()) as $value) {
$arrOrgz[$value["id"]] = $value["name"];
}
$_POST["idOrganization"] = $idOrgFil;
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("Organization") . " = " . $arrOrgz[$idOrgFil], $_POST, array("idOrganization" => 0), true);
//organization
}
$arrFormElements = createFieldFilter($arrOrgz);
$oFilterForm = new paloForm($smarty, $arrFormElements);
$oGrid->addFilterControl(_tr("Filter applied ") . _tr("Username") . " = " . $username, $_POST, array("username" => ""));
//username
$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("In order to use this module must exist at least 1 organization in the Elastix Server"));
}
$contenidoModulo = $oGrid->fetchGrid(array(), $arrData);
$mensaje = showMessageReload($module_name, $pDB, $credentials);
$contenidoModulo = $mensaje . $contenidoModulo;
return $contenidoModulo;
}
示例14: reportClientesCampania
function reportClientesCampania($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf)
{
$pClientesagendados = new paloSantoClientesCampania($pDB);
$filter_field = getParameter("filter_field");
$filter_value = getParameter("filter_value");
//begin grid parameters
$oGrid = new paloSantoGrid($smarty);
$oGrid->setTplFile("/var/www/html/modules/{$module_name}/themes/default/_list.tpl");
$oGrid->setTitle(_tr("Clientes por campaña"));
$oGrid->pagingShow(true);
// show paging section.
$oGrid->enableExport();
// enable export.
$oGrid->setNameFile_Export(_tr("Clientes por campaña"));
$url = array("menu" => $module_name, "filter_field" => $filter_field, "filter_value" => $filter_value);
$oGrid->setURL($url);
$arrColumns = array(_tr("CI"), _tr("Cliente"), _tr("Campaña"), _tr("Agendamiento"), _tr("Agendado a"), _tr("Acción"));
$oGrid->setColumns($arrColumns);
$total = $pClientesagendados->getNumClientesCampania($filter_field, $filter_value);
$arrData = null;
if ($oGrid->isExportAction()) {
$limit = $total;
// max number of rows.
$offset = 0;
// since the start.
} else {
$limit = 100;
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
$offset = $oGrid->calculateOffset();
}
$arrResult = $pClientesagendados->getClientesCampania($limit, $offset, $filter_field, $filter_value);
if (is_array($arrResult) && $total > 0) {
foreach ($arrResult as $key => $value) {
$arrTmp[0] = $value['ci'];
$arrTmp[1] = $value['cliente'];
$arrTmp[2] = $value['campania'];
$arrTmp[3] = $value['fecha_agendamiento'];
$arrTmp[4] = $value['agente_agendado'];
//$arrTmp[3] = getFormSelectAgentesCampania($pClientesagendados,$value['id_campania'],$value['id_campania_cliente'],$value['agente_agendado']);
$arrTmp[5] = "<a href='index.php?menu={$module_name}&id_campania_cliente={$value['id_campania_cliente']}&action=agendar'>Agendar</a>" . " / <a href='index.php?menu=hispana_clientes_datosbasicos&id_cliente=" . $value['id_cliente'] . "'>Editar</a>";
$arrData[] = $arrTmp;
}
}
$oGrid->setData($arrData);
//begin section filter
$oFilterForm = new paloForm($smarty, createFieldFilter());
$smarty->assign("SHOW", _tr("Show"));
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST);
//end section filter
$oGrid->showFilter(trim($htmlFilter));
$content = $oGrid->fetchGrid();
//end grid parameters
return $content;
}
示例15: reportDHCP_Configuration
function reportDHCP_Configuration($smarty, $module_name, $local_templates_dir, &$pDB, $arrConf)
{
$pDHCP_Configuration = new paloSantoDHCP_Configuration($pDB);
$filter_field = getParameter("filter_field");
$filter_value = getParameter("filter_value");
$action = getParameter("nav");
$start = getParameter("start");
//begin grid parameters
$oGrid = new paloSantoGrid($smarty);
$nameOpt = array("hostname" => _tr('Host Name'), "ipaddress" => _tr('IP Address'), "macaddress" => _tr('MAC Address'));
if (isset($nameOpt[$filter_field])) {
$valorFiltro = $nameOpt[$filter_field];
} else {
$valorFiltro = "";
}
$oGrid->addFilterControl(_tr("Filter applied ") . " " . $valorFiltro . " = {$filter_value}", $_POST, array("filter_field" => "hostname", "filter_value" => ""));
$totalDHCP_Configuration = $pDHCP_Configuration->contarIpFijas($filter_field, $filter_value);
$oGrid->addNew("new_dhcpconft", _tr("Assign IP Address"));
$oGrid->deleteList("Are you sure you wish to delete the DHCP configuration.", "delete_dhcpConf", _tr("Delete"));
$limit = 20;
$total = $totalDHCP_Configuration;
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
$oGrid->calculatePagination($action, $start);
$offset = $oGrid->getOffsetValue();
$end = $oGrid->getEnd();
$arrData = null;
$arrResult = $pDHCP_Configuration->leerIPsFijas($limit, $offset, $filter_field, $filter_value);
if (is_array($arrResult) && $total > 0) {
foreach ($arrResult as $key => $value) {
$arrTmp[0] = "<input type='checkbox' name='DhcpConfID_{$value['id']}' />";
$arrTmp[1] = "<a href='?menu={$module_name}&action=view_dhcpconf&id=" . $value['id'] . "'>" . $value['hostname'] . "</a>";
$arrTmp[2] = $value['ipaddress'];
$arrTmp[3] = $value['macaddress'];
$arrData[] = $arrTmp;
}
}
$buttonDelete = "";
$arrGrid = array("title" => _tr('Assign IP Address to Host'), "icon" => "modules/{$module_name}/images/system_network_assign_ip_address.png", "width" => "99%", "start" => $total == 0 ? 0 : $offset + 1, "end" => $end, "total" => $total, "url" => array('menu' => $module_name, 'filter_field' => $filter_field, 'filter_value' => $filter_value), "columns" => array(0 => array("name" => $buttonDelete, "property1" => ""), 1 => array("name" => _tr('Host Name'), "property1" => ""), 2 => array("name" => _tr('IP Address'), "property1" => ""), 3 => array("name" => _tr('MAC Address'), "property1" => "")));
//begin section filter
$arrFormFilterDHCP_Configuration = createFieldFilter();
$oFilterForm = new paloForm($smarty, $arrFormFilterDHCP_Configuration);
$smarty->assign("SHOW", _tr('Show'));
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST);
//end section filter
$oGrid->showFilter(trim($htmlFilter));
$contenidoModulo = $oGrid->fetchGrid($arrGrid, $arrData);
//end grid parameters
return $contenidoModulo;
}