/** * List the records * @param string The current GET/POST option */ function showContacts($option) { global $database, $mainframe, $mosConfig_list_limit; $catid = $mainframe->getUserStateFromRequest("catid{$option}", 'catid', 0); $limit = $mainframe->getUserStateFromRequest("viewlistlimit", 'limit', $mosConfig_list_limit); $limitstart = $mainframe->getUserStateFromRequest("view{$option}limitstart", 'limitstart', 0); $search = $mainframe->getUserStateFromRequest("search{$option}", 'search', ''); $search = $database->getEscaped(trim(strtolower($search))); $where = $search ? "\n WHERE name LIKE '%{$search}%'" : ""; // get the total number of records $database->setQuery("SELECT COUNT(*) FROM #__contact_details {$where}"); $total = $database->loadResult(); require_once $GLOBALS['mosConfig_absolute_path'] . '/administrator/includes/pageNavigation.php'; $pageNav = new mosPageNav($total, $limitstart, $limit); // get the subset (based on limits) of required records $query = "SELECT cd.*, cc.title AS category, u.name AS user, u.name as editor" . "\n FROM #__contact_details AS cd" . "\n LEFT JOIN #__categories AS cc ON cc.id = cd.catid" . "\n LEFT JOIN #__users AS u ON u.id = cd.user_id" . $where . "\n ORDER BY cd.catid, cd.ordering, cd.name ASC" . "\n LIMIT {$pageNav->limitstart}, {$pageNav->limit}"; $database->setQuery($query); $rows = $database->loadObjectList(); // build list of categories $javascript = 'onchange="document.adminForm.submit();"'; $lists['catid'] = mosAdminMenus::ComponentCategory('catid', 'com_contact_details', intval($catid), $javascript); HTML_contact::showcontacts($rows, $pageNav, $search, $option, $lists); }
/** * List the records * @param string The current GET/POST option */ function showContacts($option) { global $mainframe; $db =& JFactory::getDBO(); $filter_order = $mainframe->getUserStateFromRequest($option . 'filter_order', 'filter_order', 'cd.ordering', 'cmd'); $filter_order_Dir = $mainframe->getUserStateFromRequest($option . 'filter_order_Dir', 'filter_order_Dir', '', 'word'); $filter_state = $mainframe->getUserStateFromRequest($option . 'filter_state', 'filter_state', '', 'word'); $filter_catid = $mainframe->getUserStateFromRequest($option . 'filter_catid', 'filter_catid', 0, 'int'); $search = $mainframe->getUserStateFromRequest($option . 'search', 'search', '', 'string'); $search = JString::strtolower($search); $limit = $mainframe->getUserStateFromRequest('global.list.limit', 'limit', $mainframe->getCfg('list_limit'), 'int'); $limitstart = $mainframe->getUserStateFromRequest($option . '.limitstart', 'limitstart', 0, 'int'); $where = array(); if ($search) { $where[] = 'cd.name LIKE ' . $db->Quote('%' . $db->getEscaped($search, true) . '%', false); } if ($filter_catid) { $where[] = 'cd.catid = ' . (int) $filter_catid; } if ($filter_state) { if ($filter_state == 'P') { $where[] = 'cd.published = 1'; } else { if ($filter_state == 'U') { $where[] = 'cd.published = 0'; } } } $where = count($where) ? ' WHERE ' . implode(' AND ', $where) : ''; if ($filter_order == 'cd.ordering') { $orderby = ' ORDER BY category, cd.ordering'; } else { $orderby = ' ORDER BY ' . $filter_order . ' ' . $filter_order_Dir . ', category, cd.ordering'; } // get the total number of records $query = 'SELECT COUNT(*)' . ' FROM #__contact_details AS cd' . $where; $db->setQuery($query); $total = $db->loadResult(); jimport('joomla.html.pagination'); $pageNav = new JPagination($total, $limitstart, $limit); // get the subset (based on limits) of required records $query = 'SELECT cd.*, cc.title AS category, u.name AS user, v.name as editor, g.name AS groupname' . ' FROM #__contact_details AS cd' . ' LEFT JOIN #__groups AS g ON g.id = cd.access' . ' LEFT JOIN #__categories AS cc ON cc.id = cd.catid' . ' LEFT JOIN #__users AS u ON u.id = cd.user_id' . ' LEFT JOIN #__users AS v ON v.id = cd.checked_out' . $where . $orderby; $db->setQuery($query, $pageNav->limitstart, $pageNav->limit); $rows = $db->loadObjectList(); // build list of categories $javascript = 'onchange="document.adminForm.submit();"'; $lists['catid'] = JHTML::_('list.category', 'filter_catid', 'com_contact_details', intval($filter_catid), $javascript); // state filter $lists['state'] = JHTML::_('grid.state', $filter_state); // table ordering $lists['order_Dir'] = $filter_order_Dir; $lists['order'] = $filter_order; // search filter $lists['search'] = $search; HTML_contact::showcontacts($rows, $pageNav, $option, $lists); }
/** * List the records * @param string The current GET/POST option */ function showContacts($option) { global $database, $mainframe, $mosConfig_list_limit; $catid = intval($mainframe->getUserStateFromRequest("catid{$option}", 'catid', 0)); $limit = intval($mainframe->getUserStateFromRequest("viewlistlimit", 'limit', $mosConfig_list_limit)); $limitstart = intval($mainframe->getUserStateFromRequest("view{$option}limitstart", 'limitstart', 0)); $search = $mainframe->getUserStateFromRequest("search{$option}", 'search', ''); if (get_magic_quotes_gpc()) { $search = stripslashes($search); } if ($search) { $where[] = "cd.name LIKE '%" . $database->getEscaped(trim(strtolower($search))) . "%'"; } if ($catid) { $where[] = "cd.catid = " . (int) $catid; } if (isset($where)) { $where = "\n WHERE " . implode(' AND ', $where); } else { $where = ''; } // get the total number of records $query = "SELECT COUNT(*)" . "\n FROM #__contact_details AS cd" . $where; $database->setQuery($query); $total = $database->loadResult(); require_once $GLOBALS['mosConfig_absolute_path'] . '/administrator/includes/pageNavigation.php'; $pageNav = new mosPageNav($total, $limitstart, $limit); // get the subset (based on limits) of required records $query = "SELECT cd.*, cc.title AS category, u.name AS user, v.name as editor" . "\n FROM #__contact_details AS cd" . "\n LEFT JOIN #__categories AS cc ON cc.id = cd.catid" . "\n LEFT JOIN #__users AS u ON u.id = cd.user_id" . "\n LEFT JOIN #__users AS v ON v.id = cd.checked_out" . $where . "\n ORDER BY cd.catid, cd.ordering, cd.name ASC"; $database->setQuery($query, $pageNav->limitstart, $pageNav->limit); $rows = $database->loadObjectList(); // build list of categories $javascript = 'onchange="document.adminForm.submit();"'; $lists['catid'] = mosAdminMenus::ComponentCategory('catid', 'com_contact_details', intval($catid), $javascript); HTML_contact::showcontacts($rows, $pageNav, $search, $option, $lists); }