public function getSmilies($start = 0, $limit = 0, $asobject = true) { $criteria = new CriteriaCompo(); $criteria->setSort('smiley_id'); $criteria->setOrder('ASC'); $criteria->setStart($start); $criteria->setLimit($limit); return parent::getAll($criteria, false, $asobject); }
public function getByCategory($imgcat_id, $start = 0, $limit = 0, $asobject = true) { $criteria = new CriteriaCompo(); $criteria->add(new Criteria('imgcat_id', $imgcat_id)); $criteria->setSort('image_weight'); $criteria->setOrder('ASC'); $criteria->setStart($start); $criteria->setLimit($limit); return parent::getObjects($criteria, null, $asobject); }
/** * @param CriteriaElement|null $criteria * @param bool $id_as_key * * @return array */ public function getPermittedObjects($criteria = null, $start = 0, $limit = 0, $id_as_key = false, $asobject = true) { $this->table_link = $this->db2->prefix('system_permission'); if (isset($criteria)) { $criteria = new CriteriaCompo($criteria); } else { $criteria = new CriteriaCompo(); } $criteria->setSort('o.imgcat_weight, o.imgcat_id'); $criteria->setOrder('ASC'); $criteria->setStart($start); $criteria->setLimit($limit); return parent::getByLink($criteria, null, $asobject, 'gperm_itemid', 'imgcat_id'); }
/** * retrieve all files * * @param int $itemid * @param int $status * @param int $limit * @param int $start * @param string $sort * @param string $order * @param array $category * * @return array array of {@link PublisherFile} objects */ public function &getAllFiles($itemid = 0, $status = -1, $limit = 0, $start = 0, $sort = 'datesub', $order = 'DESC', $category = array()) { $this->table_link = $this->db2->prefix('publisher_items'); $this->field_object = 'itemid'; $this->field_link = 'itemid'; $hasStatusCriteria = false; $criteriaStatus = new CriteriaCompo(); if (is_array($status)) { $hasStatusCriteria = true; foreach ($status as $v) { $criteriaStatus->add(new Criteria('o.status', $v), 'OR'); } } elseif ($status != -1) { $hasStatusCriteria = true; $criteriaStatus->add(new Criteria('o.status', $status), 'OR'); } $hasCategoryCriteria = false; $criteriaCategory = new CriteriaCompo(); $category = (array) $category; if (count($category) > 0 && $category[0] != 0) { $hasCategoryCriteria = true; foreach ($category as $cat) { $criteriaCategory->add(new Criteria('l.categoryid', $cat), 'OR'); } } $criteriaItemid = new Criteria('o.itemid', $itemid); $criteria = new CriteriaCompo(); if ($itemid != 0) { $criteria->add($criteriaItemid); } if ($hasStatusCriteria) { $criteria->add($criteriaStatus); } if ($hasCategoryCriteria) { $criteria->add($criteriaCategory); } $criteria->setSort($sort); $criteria->setOrder($order); $criteria->setLimit($limit); $criteria->setStart($start); $files = $this->getByLink($criteria, array('o.*'), true); return $files; }
$admin_page = new \Xoops\Module\Admin(); $admin_page->addBreadcrumbLink(SystemLocale::CONTROL_PANEL, \XoopsBaseConfig::get('url') . '/admin.php', true); $admin_page->addBreadcrumbLink(SystemLocale::GROUPS_MANAGER, $system->adminVersion('groups', 'adminpath')); $admin_page->addBreadcrumbLink(XoopsLocale::MAIN); $admin_page->addItemButton(SystemLocale::ADD_NEW_GROUP, 'admin.php?fct=groups&op=groups_add', 'add'); $admin_page->addTips(SystemLocale::GROUPS_TIPS_1); $admin_page->renderBreadcrumb(); $admin_page->renderTips(); $admin_page->renderButton(); // Get start pager $start = $system->cleanVars($_REQUEST, 'start', 0, 'int'); // Criteria $criteria = new CriteriaCompo(); $criteria->setSort("groupid"); $criteria->setOrder("ASC"); $criteria->setStart($start); $criteria->setLimit($nb_group); $groups_arr = $groups_handler->getAll($criteria); // Count group $groups_count = count($groups_arr); // Assign Template variables $xoops->tpl()->assign('groups_count', $groups_count); /* @var $group XoopsGroup */ foreach ($groups_arr as $group) { $groups_id = $group->getVar("groupid"); $groups['groups_id'] = $groups_id; $groups['name'] = $group->getVar("name"); $groups['description'] = $group->getVar("description"); $member_handler = $xoops->getHandlerMember(); if ($groups_id != 3) { $group_id_arr[0] = $groups_id;
/** * @param int $limit * @param int $start * @param int $parentid * @param string $sort * @param string $order * @param bool $id_as_key * * @return array */ public function &getCategories($limit = 0, $start = 0, $parentid = 0, $sort = 'weight', $order = 'ASC', $id_as_key = true) { $xoops = Xoops::getInstance(); $ret = array(); $criteria = new CriteriaCompo(); $criteria->setSort($sort); $criteria->setOrder($order); if ($parentid != -1) { $criteria->add(new Criteria('parentid', $parentid)); } if (!PublisherUtils::IsUserAdmin()) { $categoriesGranted = $this->publisher->getPermissionHandler()->getGrantedItems('category_read'); if (count($categoriesGranted) > 0) { $criteria->add(new Criteria('categoryid', '(' . implode(',', $categoriesGranted) . ')', 'IN')); } else { return $ret; } if ($xoops->isUser()) { $criteria->add(new Criteria('moderator', $xoops->user->getVar('uid')), 'OR'); } } $criteria->setStart($start); $criteria->setLimit($limit); $ret = $this->getObjects($criteria, $id_as_key); return $ret; }
/** * @param array $queryarray * @param string $andor * @param int $limit * @param int $offset * @param int $userid * @param array $categories * @param int $sortby * @param string $searchin * @param string $extra * * @return array */ public function getItemsFromSearch($queryarray = array(), $andor = 'AND', $limit = 0, $offset = 0, $userid = 0, $categories = array(), $sortby = 0, $searchin = "", $extra = "") { $xoops = Xoops::getInstance(); $ret = array(); $gperm_handler = $xoops->getHandlerGroupPermission(); $groups = $xoops->getUserGroups(); $searchin = empty($searchin) ? array("title", "body", "summary") : (is_array($searchin) ? $searchin : array($searchin)); if (in_array("all", $searchin) || count($searchin) == 0) { $searchin = array("title", "subtitle", "body", "summary", "meta_keywords"); } if (is_array($userid) && count($userid) > 0) { $userid = array_map("intval", $userid); $criteriaUser = new CriteriaCompo(); $criteriaUser->add(new Criteria('uid', '(' . implode(',', $userid) . ')', 'IN'), 'OR'); } elseif (is_numeric($userid) && $userid > 0) { $criteriaUser = new CriteriaCompo(); $criteriaUser->add(new Criteria('uid', $userid), 'OR'); } $count = count($queryarray); if (is_array($queryarray) && $count > 0) { $criteriaKeywords = new CriteriaCompo(); for ($i = 0; $i < count($queryarray); ++$i) { $criteriaKeyword = new CriteriaCompo(); if (in_array('title', $searchin)) { $criteriaKeyword->add(new Criteria('title', '%' . $queryarray[$i] . '%', 'LIKE'), 'OR'); } if (in_array('subtitle', $searchin)) { $criteriaKeyword->add(new Criteria('subtitle', '%' . $queryarray[$i] . '%', 'LIKE'), 'OR'); } if (in_array('body', $searchin)) { $criteriaKeyword->add(new Criteria('body', '%' . $queryarray[$i] . '%', 'LIKE'), 'OR'); } if (in_array('summary', $searchin)) { $criteriaKeyword->add(new Criteria('summary', '%' . $queryarray[$i] . '%', 'LIKE'), 'OR'); } if (in_array('meta_keywords', $searchin)) { $criteriaKeyword->add(new Criteria('meta_keywords', '%' . $queryarray[$i] . '%', 'LIKE'), 'OR'); } $criteriaKeywords->add($criteriaKeyword, $andor); unset($criteriaKeyword); } } if (!PublisherUtils::IsUserAdmin() && count($categories) > 0) { $criteriaPermissions = new CriteriaCompo(); // Categories for which user has access $categoriesGranted = $gperm_handler->getItemIds('category_read', $groups, $this->publisher->getModule()->getVar('mid')); if (count($categories) > 0) { $categoriesGranted = array_intersect($categoriesGranted, $categories); } if (count($categoriesGranted) == 0) { return $ret; } $grantedCategories = new Criteria('categoryid', "(" . implode(',', $categoriesGranted) . ")", 'IN'); $criteriaPermissions->add($grantedCategories, 'AND'); } elseif (count($categories) > 0) { $criteriaPermissions = new CriteriaCompo(); $grantedCategories = new Criteria('categoryid', "(" . implode(',', $categories) . ")", 'IN'); $criteriaPermissions->add($grantedCategories, 'AND'); } $criteriaItemsStatus = new CriteriaCompo(); $criteriaItemsStatus->add(new Criteria('status', _PUBLISHER_STATUS_PUBLISHED)); $criteria = new CriteriaCompo(); if (!empty($criteriaUser)) { $criteria->add($criteriaUser, 'AND'); } if (!empty($criteriaKeywords)) { $criteria->add($criteriaKeywords, 'AND'); } if (!empty($criteriaPermissions)) { $criteria->add($criteriaPermissions); } if (!empty($criteriaItemsStatus)) { $criteria->add($criteriaItemsStatus, 'AND'); } $criteria->setLimit($limit); $criteria->setStart($offset); if (empty($sortby)) { $sortby = "datesub"; } $criteria->setSort($sortby); $order = 'ASC'; if ($sortby === "datesub") { $order = 'DESC'; } $criteria->setOrder($order); $ret = $this->getItemObjects($criteria); return $ret; }