本文整理汇总了PHP中icms_db_criteria_Compo::setSort方法的典型用法代码示例。如果您正苦于以下问题:PHP icms_db_criteria_Compo::setSort方法的具体用法?PHP icms_db_criteria_Compo::setSort怎么用?PHP icms_db_criteria_Compo::setSort使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类icms_db_criteria_Compo
的用法示例。
在下文中一共展示了icms_db_criteria_Compo::setSort方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getFriendshipsCriteria
/**
* Create the criteria that will be used by getFriendships
*
* @param int $start to which record to start
* @param int $limit max friendships to display
* @param int $friend1_uid only the friendship of this user will be returned
* @param int $friend2_uid if specifid, the friendship of these two users will be returned.
* @param int $status only get friendships with the specified status
* @return icms_db_criteria_Compo $criteria
*/
private function getFriendshipsCriteria($start = 0, $limit = 0, $friend1_uid = 0, $friend2_uid = 0, $status = 0)
{
$criteria = new icms_db_criteria_Compo();
if ($start) {
$criteria->setStart((int) $start);
}
if ($limit) {
$criteria->setLimit((int) $limit);
}
$criteria->setSort('creation_time');
$criteria->setOrder('DESC');
if ($status == PROFILE_FRIENDSHIP_STATUS_PENDING && $friend2_uid) {
$criteria->add(new icms_db_criteria_Item('status', (int) $status));
$criteria->add(new icms_db_criteria_Item('friend2_uid', (int) $friend2_uid));
} else {
if ($status) {
$criteria->add(new icms_db_criteria_Item('status', (int) $status));
}
if ($friend2_uid > 0) {
$criteria->add(new icms_db_criteria_Item('friend1_uid', (int) $friend1_uid));
$criteria->add(new icms_db_criteria_Item('friend2_uid', (int) $friend2_uid));
$criteria->add(new icms_db_criteria_Item('friend1_uid', (int) $friend2_uid), 'OR');
$criteria->add(new icms_db_criteria_Item('friend2_uid', (int) $friend1_uid));
} elseif ($friend1_uid > 0) {
$criteria->add(new icms_db_criteria_Item('friend1_uid', (int) $friend1_uid));
$criteria->add(new icms_db_criteria_Item('friend2_uid', (int) $friend1_uid), 'OR');
}
if ($status) {
$criteria->add(new icms_db_criteria_Item('status', (int) $status));
}
}
return $criteria;
}
示例2: getAllCategoriesArray
/**
* Return all categories in an array
*
* @param int $parentid
* @param string $perm_name
* @param string $sort
* @param string $order
* @return array
*/
public function getAllCategoriesArray($parentid = 0, $perm_name = false, $sort = 'parentid', $order = 'ASC')
{
if (!$this->allCategoriesObj) {
$criteria = new icms_db_criteria_Compo();
$criteria->setSort($sort);
$criteria->setOrder($order);
$userIsAdmin = is_object(icms::$user) && icms::$user->isAdmin();
if ($perm_name && !$userIsAdmin) {
if (!$this->setGrantedObjectsCriteria($criteria, $perm_name)) {
return false;
}
}
$this->allCategoriesObj =& $this->getObjects($criteria, 'parentid');
}
$ret = array();
if (isset($this->allCategoriesObj[$parentid])) {
foreach ($this->allCategoriesObj[$parentid] as $categoryid => $categoryObj) {
$ret[$categoryid]['self'] =& $categoryObj->toArray();
if (isset($this->allCategoriesObj[$categoryid])) {
$ret[$categoryid]['sub'] =& $this->getAllCategoriesArray($categoryid);
$ret[$categoryid]['subcatscount'] = count($ret[$categoryid]['sub']);
}
}
}
return $ret;
}
示例3: getPicturesCriteria
/**
* Create the criteria that will be used by getPictures and getPicturesCount
*
* @param int $start to which record to start
* @param int $limit limit of pictures to return
* @param int $uid_owner if specifid, only the pictures of this user will be returned
* @param int $picture_id ID of a single picture to retrieve
* @return icms_db_criteria_Compo $criteria
*/
private function getPicturesCriteria($start = 0, $limit = 0, $uid_owner = false, $picture_id = false)
{
$module = icms::handler("icms_module")->getByDirname(basename(dirname(dirname(__FILE__))), TRUE);
$criteria = new icms_db_criteria_Compo();
if ($start) {
$criteria->setStart((int) $start);
}
if ($limit) {
$criteria->setLimit((int) $limit);
}
$criteria->setSort('creation_time');
if ($module->config['images_order']) {
$criteria->setOrder('DESC');
}
if (is_object(icms::$user)) {
if (icms::$user->getVar('uid') != $uid_owner && !icms::$user->isAdmin()) {
$criteria->add(new icms_db_criteria_Item('private', 0));
}
} else {
$criteria->add(new icms_db_criteria_Item('private', 0));
}
if ($uid_owner) {
$criteria->add(new icms_db_criteria_Item('uid_owner', (int) $uid_owner));
}
if ($picture_id) {
$criteria->add(new icms_db_criteria_Item('pictures_id', (int) $picture_id));
}
return $criteria;
}
示例4: getTopicCriteria
/**
* Create the criteria that will be used by getTopics
*
* @param int $start to which record to start
* @param int $limit limit of topics to return
* @param int $topic_id id of the topic
* @param int $tribes_id id of the tribe the topic belongs to
* @return icms_db_criteria_Compo $criteria
*/
private function getTopicCriteria($start = 0, $limit = 0, $topic_id = false, $tribes_id = false)
{
$criteria = new icms_db_criteria_Compo();
if ($start) {
$criteria->setStart((int) $start);
}
if ($limit) {
$criteria->setLimit((int) $limit);
}
$criteria->setSort('last_post_time');
$criteria->setOrder('DESC');
if ($topic_id) {
$criteria->add(new icms_db_criteria_Item('topic_id', (int) $topic_id));
}
if ($tribes_id) {
$criteria->add(new icms_db_criteria_Item('tribes_id', (int) $tribes_id));
}
return $criteria;
}
示例5: getAudioCriteria
/**
* Create the criteria that will be used by getAudios and getAudioCount
*
* @param int $start to which record to start
* @param int $limit limit of audio to return
* @param int $uid_owner if specifid, only the audio of this user will be returned
* @param int $audio_id ID of a single audio to retrieve
* @return icms_db_criteria_Compo $criteria
*/
private function getAudioCriteria($start = 0, $limit = 0, $uid_owner = false, $audio_id = false)
{
$criteria = new icms_db_criteria_Compo();
if ($start) {
$criteria->setStart((int) $start);
}
if ($limit) {
$criteria->setLimit((int) $limit);
}
if ($uid_owner) {
$criteria->add(new icms_db_criteria_Item('uid_owner', (int) $uid_owner));
}
if ($audio_id) {
$criteria->add(new icms_db_criteria_Item('audio_id', (int) $audio_id));
}
$criteria->setSort('creation_time');
$criteria->setOrder('DESC');
return $criteria;
}
示例6: __construct
/**
* Constructor
* @param object $object reference to targetobject (@link icms_ipf_Object)
* @param string $key the form name
*/
public function __construct($object, $key)
{
$category_title_field = $object->handler->identifierName;
$addNoParent = isset($object->controls[$key]['addNoParent']) ? $object->controls[$key]['addNoParent'] : true;
$criteria = new icms_db_criteria_Compo();
$criteria->setSort("weight, " . $category_title_field);
$category_handler = icms_getModuleHandler('category', $object->handler->_moduleName);
$categories = $category_handler->getObjects($criteria);
$mytree = new icms_ipf_Tree($categories, "category_id", "category_pid");
parent::__construct($object->vars[$key]['form_caption'], $key, $object->getVar($key, 'e'));
$ret = array();
$options = $this->getOptionArray($mytree, $category_title_field, 0, $ret, "");
if ($addNoParent) {
$newOptions = array('0' => '----');
foreach ($options as $k => $v) {
$newOptions[$k] = $v;
}
$options = $newOptions;
}
$this->addOptionArray($options);
}
示例7: __construct
/**
* Constructor
*
* @param string $caption
* @param string $name
* @param mixed $value Pre-selected value (or array of them).
* For an item with massive members, such as "Registered Users", "$value" should be used to store selected temporary users only instead of all members of that item
* @param bool $include_anon Include user "anonymous"?
* @param int $size Number or rows. "1" makes a drop-down-list.
* @param bool $multiple Allow multiple selections?
*/
public function __construct($caption, $name, $include_anon = FALSE, $value = NULL, $size = 1, $multiple = FALSE, $showremovedusers = FALSE, $justremovedusers = FALSE)
{
$limit = 200;
$select_element = new icms_form_elements_Select('', $name, $value, $size, $multiple);
if ($include_anon) {
$select_element->addOption(0, $GLOBALS['icmsConfig']['anonymous']);
}
$member_handler = icms::handler('icms_member');
$user_count = $member_handler->getUserCount();
$value = is_array($value) ? $value : (empty($value) ? array() : array($value));
if ($user_count > $limit && count($value) > 0) {
$criteria = new icms_db_criteria_Compo(new icms_db_criteria_Item("uid", "(" . implode(",", $value) . ")", "IN"));
} else {
$criteria = new icms_db_criteria_Compo();
$criteria->setLimit($limit);
}
$criteria->setSort('uname');
if (!$showremovedusers) {
$criteria->add(new icms_db_criteria_Item('level', '-1', '!='));
} elseif ($showremovedusers && $justremovedusers) {
$criteria->add(new icms_db_criteria_Item('level', '-1'));
}
$criteria->setOrder('ASC');
$users = $member_handler->getUserList($criteria);
$select_element->addOptionArray($users);
if ($user_count <= $limit) {
parent::__construct($caption, "", $name);
$this->addElement($select_element);
return;
}
icms_loadLanguageFile('core', 'findusers');
$js_addusers = "<script type=\"text/javascript\">\r\n\t\t\t\t\tfunction addusers(opts){\r\n\t\t\t\t\t\tvar num = opts.substring(0, opts.indexOf(\":\"));\r\n\t\t\t\t\t\topts = opts.substring(opts.indexOf(\":\")+1, opts.length);\r\n\t\t\t\t\t\tvar sel = xoopsGetElementById(\"" . $name . ($multiple ? "[]" : "") . "\");\r\n\t\t\t\t\t\tvar arr = new Array(num);\r\n\t\t\t\t\t\tfor (var n=0; n < num; n++) {\r\n\t\t\t\t\t\t\tvar nm = opts.substring(0, opts.indexOf(\":\"));\r\n\t\t\t\t\t\t\topts = opts.substring(opts.indexOf(\":\")+1, opts.length);\r\n\t\t\t\t\t\t\tvar val = opts.substring(0, opts.indexOf(\":\"));\r\n\t\t\t\t\t\t\topts = opts.substring(opts.indexOf(\":\")+1, opts.length);\r\n\t\t\t\t\t\t\tvar txt = opts.substring(0, nm - val.length);\r\n\t\t\t\t\t\t\topts = opts.substring(nm - val.length, opts.length);\r\n\t\t\t\t\t\t\tvar added = false;\r\n\t\t\t\t\t\t\tfor (var k = 0; k < sel.options.length; k++) {\r\n\t\t\t\t\t\t\t\tif (sel.options[k].value == val){\r\n\t\t\t\t\t\t\t\t\tadded = true;\r\n\t\t\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tif (added == false) {\r\n\t\t\t\t\t\t\t\tsel.options[k] = new Option(txt, val);\r\n\t\t\t\t\t\t\t\tsel.options[k].selected = true;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\treturn true;\r\n\t\t\t\t\t}\r\n\t\t\t\t\t</script>";
$token = icms::$security->createToken();
$action_tray = new icms_form_elements_Tray("", " | ");
$action_tray->addElement(new icms_form_elements_Label('', "<a href='#' onclick='var sel = xoopsGetElementById(\"" . $name . ($multiple ? "[]" : "") . "\");for (var i = sel.options.length-1; i >= 0; i--) {if (!sel.options[i].selected) {sel.options[i] = null;}}; return false;'>" . _MA_USER_REMOVE . "</a>"));
$action_tray->addElement(new icms_form_elements_Label('', "<a href='#' onclick='openWithSelfMain(\"" . ICMS_URL . "/include/findusers.php?target={$name}&multiple={$multiple}&token={$token}\", \"userselect\", 800, 600, null); return false;' >" . _MA_USER_MORE . "</a>" . $js_addusers));
parent::__construct($caption, '<br /><br />', $name);
$this->addElement($select_element);
$this->addElement($action_tray);
}
示例8: getVisitorsCriteria
/**
* Create the criteria that will be used by getVisitors
*
* @param int $start to which record to start
* @param int $limit limit of tribes to return
* @param int $uid_owner if specifid, only the tribes of this user will be returned
* @param int $uid_visitor if specified, only the records with the specified user as a visitor will be returned
* @param int $visit_time if specified, only records with a visit time greater than the specified on will be returned
* @return icms_db_criteria_Compo $criteria
*/
private function getVisitorsCriteria($start = 0, $limit = 0, $uid_owner = false, $uid_visitor = false, $visit_time = false)
{
$criteria = new icms_db_criteria_Compo();
if ($start) {
$criteria->setStart((int) $start);
}
if ($limit) {
$criteria->setLimit((int) $limit);
}
$criteria->setSort('visit_time');
$criteria->setOrder('DESC');
if ($uid_owner) {
$criteria->add(new icms_db_criteria_Item('uid_owner', (int) $uid_owner));
}
if ($uid_visitor) {
$criteria->add(new icms_db_criteria_Item('uid_visitor', (int) $uid_visitor));
}
if ($visit_time) {
$criteria->add(new icms_db_criteria_Item('visit_time', $visit_time, '>='));
}
return $criteria;
}
示例9: profile_search
/**
* Return search results and show images on userinfo page
*
* @param array $queryarray the terms to look
* @param text $andor the conector between the terms to be looked
* @param int $limit The number of maximum results
* @param int $offset from wich register start
* @param int $userid from which user to look
* @return array $ret with all results
*/
function profile_search($queryarray, $andor, $limit, $offset, $userid)
{
global $icmsConfigUser;
$ret = array();
$i = 0;
$dirname = basename(dirname(dirname(__FILE__)));
// check if anonymous users can access profiles
if (!is_object(icms::$user) && !$icmsConfigUser['allow_annon_view_prof']) {
return $ret;
}
// check if tribes are activated in module configuration
$module = icms::handler('icms_module')->getByDirname($dirname, TRUE);
if (!$module->config['enable_tribes']) {
return $ret;
}
$profile_tribes_handler = icms_getModuleHandler('tribes', basename(dirname(dirname(__FILE__))), 'profile');
$criteria = new icms_db_criteria_Compo();
// if those two lines are uncommented, "all search results" isn't showing in the search results
//if ($offset) $criteria->setStart($offset);
//if ($limit) $criteria->setLimit((int)$limit);
$criteria->setSort('title');
if ($userid) {
$criteria->add(new icms_db_criteria_Item('uid_owner', $userid));
}
if (is_array($queryarray) && count($queryarray) > 0) {
foreach ($queryarray as $query) {
$criteria_query = new icms_db_criteria_Compo();
$criteria_query->add(new icms_db_criteria_Item('title', '%' . $query . '%', 'LIKE'));
$criteria_query->add(new icms_db_criteria_Item('tribe_desc', '%' . $query . '%', 'LIKE'), 'OR');
$criteria->add($criteria_query, $andor);
unset($criteria_query);
}
}
$tribes = $profile_tribes_handler->getObjects($criteria, false, false);
foreach ($tribes as $tribe) {
$ret[$i++] = array("image" => 'images/tribes.gif', "link" => $tribe['itemUrl'], "title" => $tribe['title'], "time" => strtotime($tribe['creation_time']), "uid" => $tribe['uid_owner']);
}
return $ret;
}
示例10: getPostCriteria
/**
* Create the criteria that will be used by getPosts
*
* @param int $start to which record to start
* @param int $limit limit of posts to return
* @param int $post_id id of the post
* @param int $topic_id id of the topic the post belongs to
* @param int $tribes_id id of the tribe the topic / post belongs to
* @param string $order sort order for the result list
* @return icms_db_criteria_Compo $criteria
*/
private function getPostCriteria($start = 0, $limit = 0, $post_id = false, $topic_id = false, $tribes_id = false, $order = 'ASC')
{
$criteria = new icms_db_criteria_Compo();
if ($start) {
$criteria->setStart((int) $start);
}
if ($limit) {
$criteria->setLimit((int) $limit);
}
$criteria->setSort('post_id');
$criteria->setOrder($order);
if ($post_id) {
$criteria->add(new icms_db_criteria_Item('post_id', (int) $post_id));
}
if ($topic_id) {
$criteria->add(new icms_db_criteria_Item('topic_id', (int) $topic_id));
}
if ($tribes_id) {
$criteria->add(new icms_db_criteria_Item('tribes_id', (int) $tribes_id));
}
return $criteria;
}
示例11: b_system_comments_show
/**
* Shows The latest comments
*
* @param array $options The block options
* @return array $block the block array
*/
function b_system_comments_show($options) {
$block = array();
include_once ICMS_ROOT_PATH . '/include/comment_constants.php';
$comment_handler = icms::handler('icms_data_comment');
$criteria = new icms_db_criteria_Compo(new icms_db_criteria_Item('com_status', XOOPS_COMMENT_ACTIVE));
$criteria->setLimit((int) $options[0]);
$criteria->setSort('com_created');
$criteria->setOrder('DESC');
// Check modules permissions
$moduleperm_handler = icms::handler('icms_member_groupperm');
$gperm_groupid = is_object(icms::$user) ? icms::$user->getGroups() : array(XOOPS_GROUP_ANONYMOUS);
$criteria1 = new icms_db_criteria_Compo(new icms_db_criteria_Item('gperm_name', 'module_read', '='));
$criteria1->add(new icms_db_criteria_Item('gperm_groupid', '(' . implode(',', $gperm_groupid) . ')', 'IN'));
$perms = $moduleperm_handler->getObjects($criteria1, TRUE);
$modIds = array();
foreach ($perms as $item) {
$modIds[] = $item->getVar('gperm_itemid');
}
if (count($modIds) > 0) {
$modIds = array_unique($modIds);
$criteria->add(new icms_db_criteria_Item('com_modid', '(' . implode(',', $modIds) . ')', 'IN'));
}
// Check modules permissions
$comments = $comment_handler->getObjects($criteria, TRUE);
$member_handler = icms::handler('icms_member');
$module_handler = icms::handler('icms_module');
$modules = $module_handler->getObjects(new icms_db_criteria_Item('hascomments', 1), TRUE);
$comment_config = array();
foreach (array_keys($comments) as $i) {
$mid = $comments[$i]->getVar('com_modid');
$com['module'] = '<a href="' . ICMS_MODULES_URL . '/' . $modules[$mid]->getVar('dirname') . '/">' . $modules[$mid]->getVar('name') . '</a>';
if (!isset($comment_config[$mid])) {
$comment_config[$mid] = $modules[$mid]->getInfo('comments');
}
$com['id'] = $i;
$com['title'] = '<a href="' . ICMS_MODULES_URL . '/' . $modules[$mid]->getVar('dirname') . '/' . $comment_config[$mid]['pageName'] . '?' . $comment_config[$mid]['itemName'] . '=' . $comments[$i]->getVar('com_itemid') . '&com_id=' . $i . '&com_rootid=' . $comments[$i]->getVar('com_rootid') . '&' . htmlspecialchars($comments[$i]->getVar('com_exparams')) . '#comment' . $i . '">' . $comments[$i]->getVar('com_title') . '</a>';
$com['icon'] = htmlspecialchars($comments[$i]->getVar('com_icon'), ENT_QUOTES);
$com['icon'] = ($com['icon'] != '') ? $com['icon'] : 'icon1.gif';
$com['time'] = formatTimestamp($comments[$i]->getVar('com_created'), 'm');
if ($comments[$i]->getVar('com_uid') > 0) {
$poster =& $member_handler->getUser($comments[$i]->getVar('com_uid'));
if (is_object($poster)) {
$com['poster'] = '<a href="' . ICMS_URL . '/userinfo.php?uid=' . $comments[$i]->getVar('com_uid') . '">' . $poster->getVar('uname') . '</a>';
} else {
$com['poster'] = $GLOBALS['icmsConfig']['anonymous'];
}
} else {
$com['poster'] = $GLOBALS['icmsConfig']['anonymous'];
}
$block['comments'][] =& $com;
unset($com);
}
return $block;
}
示例12: getTasks
/**
* Gets selected type current events for current user
*
* @param int $ type
* @return Object
*/
public function getTasks() {
$criteria = new icms_db_criteria_Compo();
$criteria->setSort('sat_lastruntime');
$criteria->setOrder('ASC');
$criteria->add( new icms_db_criteria_Item('(sat_lastruntime + sat_interval)', time(), '<=', NULL, "%s" ));
$criteria->add( new icms_db_criteria_Item('sat_repeat', 0, '>=', NULL, "'%s'"));
$criteria->add( new icms_db_criteria_Item('sat_enabled', 1));
$rez = $this->getObjects($criteria, FALSE);
return $rez;
}
示例13: getPages
/**
* Gets the content pages
*
* @param bool $showsubs Show subitems related to this item (recursive!)
* @param string $sort Order the pages by weight
* @param string $order The sort direction
* @param int $content_id The content ID
* @param int $relateds Show related items
* @return array $pages The array with pages in a certain weight, order and with related id's
*/
function getPages($showsubs = true, $sort = 'content_weight', $order = 'ASC', $content_id = 0, $relateds = 0)
{
$groups = is_object(icms::$user) ? icms::$user->getGroups() : array(ICMS_GROUP_ANONYMOUS);
$uid = is_object(icms::$user) ? icms::$user->getVar('uid') : 0;
$content_handler =& icms_getModuleHandler('content', basename(dirname(dirname(__FILE__))), 'content');
$module = icms::handler('icms_module')->getByDirname(basename(dirname(dirname(__FILE__))));
$criteria = new icms_db_criteria_Compo(new icms_db_criteria_Item('content_status', 1));
if (!$relateds) {
$criteria->add(new icms_db_criteria_Item('content_pid', $content_id));
} else {
$criteria->add(new icms_db_criteria_Item('short_url', $content_id, 'LIKE'));
$criteria->add(new icms_db_criteria_Item('content_id', $content_id), 'OR');
}
$crit = new icms_db_criteria_Compo(new icms_db_criteria_Item('content_visibility', 1));
$crit->add(new icms_db_criteria_Item('content_visibility', 3), 'OR');
$criteria->add($crit);
$criteria->setSort($sort);
$criteria->setOrder($order);
$impress_content = $content_handler->getObjects($criteria);
$i = 0;
$pages = array();
foreach ($impress_content as $content) {
if (icms::handler('icms_member_groupperm')->checkRight('content_read', $content->getVar('content_id'), $groups, $module->getVar('mid'))) {
$pages[$i]['title'] = $content->getVar('content_title');
$pages[$i]['menu'] = $content_handler->makeLink($content);
if ($showsubs) {
$subs = getPages($showsubs, $sort, $order, $content->getVar('content_id'));
if (count($subs) > 0) {
$pages[$i]['hassubs'] = 1;
$pages[$i]['subs'] = $subs;
} else {
$pages[$i]['hassubs'] = 0;
}
}
$i++;
}
}
return $pages;
}
示例14: getList
/**
* Retrieve a list of objects as arrays - DON'T USE WITH JOINT KEYS
*
* @param object $criteria {@link icms_db_criteria_Element} conditions to be met
* @param int $limit Max number of objects to fetch
* @param int $start Which record to start at
*
* @return array
*/
public function getList($criteria = null, $limit = 0, $start = 0, $debug = false)
{
$ret = array();
if ($criteria == null) {
$criteria = new icms_db_criteria_Compo();
}
if ($criteria->getSort() == '') {
$criteria->setSort($this->getIdentifierName());
}
$sql = 'SELECT ' . (is_array($this->keyName) ? implode(', ', $this->keyName) : $this->keyName);
if (!empty($this->identifierName)) {
$sql .= ', ' . $this->getIdentifierName();
}
$sql .= ' FROM ' . $this->table . " AS " . $this->_itemname;
if (isset($criteria) && is_subclass_of($criteria, 'icms_db_criteria_Element')) {
$sql .= ' ' . $criteria->renderWhere();
if ($criteria->getSort() != '') {
$sql .= ' ORDER BY ' . $criteria->getSort() . ' ' . $criteria->getOrder();
}
$limit = $criteria->getLimit();
$start = $criteria->getStart();
}
if ($debug) {
icms_core_Debug::message($sql);
}
$result = $this->db->query($sql, $limit, $start);
if (!$result) {
return $ret;
}
while ($myrow = $this->db->fetchArray($result)) {
//identifiers should be textboxes, so sanitize them like that
$ret[$myrow[$this->keyName]] = empty($this->identifierName) ? 1 : icms_core_DataFilter::checkVar($myrow[$this->identifierName], 'text', 'output');
}
return $ret;
}
示例15: downWeight
public function downWeight($bid) {
$blockObj = $this->get($bid);
$criteria = new icms_db_criteria_Compo();
$criteria->setLimit(1);
$criteria->setSort('weight');
$criteria->setOrder('ASC');
$criteria->add(new icms_db_criteria_Item('side', $blockObj->vars['side']['value']));
$criteria->add(new icms_db_criteria_Item('weight', $blockObj->getVar('weight'), '>'));
$sideBlocks = $this->getObjects($criteria);
$weight = (is_array($sideBlocks) && count($sideBlocks) == 1) ? $sideBlocks[0]->getVar('weight') + 1 : $blockObj->getVar('weight') + 1;
$blockObj->setVar('weight', $weight);
$this->insert($blockObj, TRUE);
}