Esempio n. 1
0
 /**
  * Create the criteria that will be used by getTribes and getTribesCount
  *
  * @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 $tribes_id ID of a single tribe to retrieve, may also be an array of tribe IDs
  * @param bool $sortByTitle true to sort by title ascending
  * @return icms_db_criteria_Compo $criteria
  */
 private function getTribesCriteria($start = 0, $limit = 0, $uid_owner = false, $tribes_id = false, $sortByTitle = false)
 {
     $criteria = new icms_db_criteria_Compo();
     if ($start) {
         $criteria->setStart((int) $start);
     }
     if ($limit) {
         $criteria->setLimit((int) $limit);
     }
     if ($sortByTitle) {
         $criteria->setSort('title');
     } else {
         $criteria->setSort('creation_time');
         $criteria->setOrder('DESC');
     }
     if ($uid_owner) {
         $criteria->add(new icms_db_criteria_Item('uid_owner', (int) $uid_owner));
     }
     if ($tribes_id) {
         if (!is_array($tribes_id)) {
             $tribes_id = array((int) $tribes_id);
         }
         $tribes_id = '(' . implode(',', $tribes_id) . ')';
         $criteria->add(new icms_db_criteria_Item('tribes_id', $tribes_id, 'IN'));
     }
     return $criteria;
 }
 /**
  * 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;
 }
 /**
  * Create the criteria that will be used by getTribeusers and getTribeusersCount
  *
  * @param int $start to which record to start
  * @param int $limit limit of tribeusers to return
  * @param int $user_id if specifid, only the tribeusers of this user will be returned
  * @param int $tribeuser_id ID of a single tribeuser to retrieve
  * @param int $tribe_id id of tribe
  * @param str $condition
  * @param bool $approved
  * @param bool $accepted
  * @return icms_db_criteria_Compo $criteria
  */
 private function getTribeusersCriteria($start = 0, $limit = 0, $user_id = false, $tribeuser_id = false, $tribe_id = false, $condition = '=', $approved = false, $accepted = false)
 {
     $criteria = new icms_db_criteria_Compo();
     if ($start) {
         $criteria->setStart((int) $start);
     }
     if ($limit) {
         $criteria->setLimit((int) $limit);
     }
     if ($tribeuser_id) {
         $criteria->add(new icms_db_criteria_Item('tribeusers_id', (int) $tribeuser_id));
     }
     if ($tribe_id) {
         if (!is_array($tribe_id)) {
             $tribe_id = array($tribe_id);
         }
         $tribe_id = '(' . implode(',', $tribe_id) . ')';
         $criteria->add(new icms_db_criteria_Item('tribe_id', $tribe_id, 'IN'));
     }
     if ($user_id) {
         $criteria->add(new icms_db_criteria_Item('user_id', (int) $user_id, $condition));
     }
     if ($approved !== false) {
         $criteria->add(new icms_db_criteria_Item('approved', (int) $approved));
     }
     if ($accepted !== false) {
         $criteria->add(new icms_db_criteria_Item('accepted', (int) $accepted));
     }
     return $criteria;
 }
 /**
  * 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;
 }
 /**
  * Create the criteria that will be used by getConfigs and getConfigsCount
  *
  * @param int $start to which record to start
  * @param int $limit limit of configs to return
  * @param int $uid_owner if specifid, only the configs of this user will be returned
  * @param int $configs_id ID of a single config to retrieve
  * @return icms_db_criteria_Compo $criteria
  */
 private function getConfigsCriteria($start = 0, $limit = 0, $uid_owner = false, $configs_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('config_uid', (int) $uid_owner));
     }
     if ($configs_id) {
         $criteria->add(new icms_db_criteria_Item('configs_id', (int) $configs_id));
     }
     return $criteria;
 }
 /**
  * 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;
 }
Esempio n. 7
0
 /**
  * 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;
 }
 /**
  * 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;
 }
 /**
  * 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;
 }
Esempio n. 10
0
			if ($time > 0) {
				$criteria[] = "user_regdate > $time";
			}
		}

		if (!empty($_POST['mail_regd_max'])) {
			$f_mail_regd_max = trim($_POST['mail_regd_max']);
			$time = mktime(0, 0, 0, substr($f_mail_regd_max, 5, 2), substr($f_mail_regd_max, 8, 2), substr($f_mail_regd_max, 0, 4));
			if ($time > 0) {
				$criteria[] = "user_regdate < $time";
			}
		}

		if (!empty($criteria) || !empty($_POST['mail_to_group'])) {
			$criteria_object = new icms_db_criteria_Compo();
			$criteria_object->setStart(@$_POST['mail_start']);
			$criteria_object->setLimit($limit);
			foreach ($criteria as $c) {
				list ($field, $op, $value) = explode(' ', $c);
				$crit = new icms_db_criteria_Item($field, $value, $op);
				$crit->prefix = "u";
				$criteria_object->add($crit, 'AND');
			}
			$member_handler = icms::handler('icms_member');
			$groups = empty($_POST['mail_to_group']) ? array() : array_map('intval', $_POST['mail_to_group']);
			$getusers = $member_handler->getUsersByGroupLink($groups, $criteria_object, TRUE);
			$count_criteria = $member_handler->getUserCountByGroupLink($groups, $criteria_object);
			foreach ($getusers as $getuser) {
				if (!in_array($getuser->getVar("uid"), $added_id)) {
					$added[] = $getuser;
					$added_id[] = $getuser->getVar("uid");
Esempio n. 11
0
 /**
  * Retrieves comments for an item
  *
  * @param   int     $module_id  Module ID
  * @param   int     $item_id    Item ID
  * @param   string  $order      Sort order
  * @param   int     $status     Status of the comment
  * @param   int     $limit      Max num of comments to retrieve
  * @param   int     $start      Start offset
  *
  * @return  array   Array of {@link icms_data_comment_Object} objects
  **/
 public function getByItemId($module_id, $item_id, $order = null, $status = null, $limit = null, $start = 0)
 {
     $criteria = new icms_db_criteria_Compo(new icms_db_criteria_Item('com_modid', (int) $module_id));
     $criteria->add(new icms_db_criteria_Item('com_itemid', (int) $item_id));
     if (isset($status)) {
         $criteria->add(new icms_db_criteria_Item('com_status', (int) $status));
     }
     if (isset($order)) {
         $criteria->setOrder($order);
     }
     if (isset($limit)) {
         $criteria->setLimit($limit);
         $criteria->setStart($start);
     }
     return $this->getObjects($criteria);
 }
Esempio n. 12
0
/**
 * Displays user information form
 * 
 */
function displayUsers() {
	global $icmsConfig, $icmsModule, $icmsConfigUser;
	$userstart = isset($_GET['userstart']) ? (int) $_GET['userstart'] : 0;

	icms_cp_header();
	echo '<div class="CPbigTitle" style="background-image: url(' . ICMS_MODULES_URL . '/system/admin/users/images/users_big.png)">' . _MD_AM_USER . '</div><br />';
	$member_handler = icms::handler('icms_member');
	$usercount = $member_handler->getUserCount(new icms_db_criteria_Item('level', '-1', '!='));
	$nav = new icms_view_PageNav($usercount, 200, $userstart, 'userstart', 'fct=users');
	$editform = new icms_form_Theme(_AM_EDEUSER, 'edituser', 'admin.php');
	$user_select = new icms_form_elements_Select('', 'uid');
	$criteria = new icms_db_criteria_Compo();
	$criteria->add(new icms_db_criteria_Item('level', '-1', '!='));
	$criteria->setSort('uname');
	$criteria->setOrder('ASC');
	$criteria->setLimit(200);
	$criteria->setStart($userstart);
	$user_select->addOptionArray($member_handler->getUserList($criteria));
	$user_select_tray = new icms_form_elements_Tray(_AM_NICKNAME, '<br />');
	$user_select_tray->addElement($user_select);
	$user_select_nav = new icms_form_elements_Label('', $nav->renderNav(4));
	$user_select_tray->addElement($user_select_nav);
	
	$op_select = new icms_form_elements_Select('', 'op');
	$op_select->addOptionArray(array('modifyUser'=>_AM_MODIFYUSER, 'delUser'=>_AM_DELUSER));
	
	$submit_button = new icms_form_elements_Button('', 'submit', _AM_GO, 'submit');
	$fct_hidden = new icms_form_elements_Hidden('fct', 'users');
	$editform->addElement($user_select_tray);
	$editform->addElement($op_select);
	$editform->addElement($submit_button);
	$editform->addElement($fct_hidden);
	$editform->display();

	echo "<br />\n";
	$usercount = $member_handler->getUserCount(new icms_db_criteria_Item('level', '-1'));
	$nav = new icms_view_PageNav($usercount, 200, $userstart, 'userstart', 'fct=users');
	$editform = new icms_form_Theme(_AM_REMOVED_USERS, 'edituser', 'admin.php');
	$user_select = new icms_form_elements_Select('', 'uid');
	$criteria = new icms_db_criteria_Compo();
	$criteria->add(new icms_db_criteria_Item('level', '-1'));
	$criteria->setSort('uname');
	$criteria->setOrder('ASC');
	$criteria->setLimit(200);
	$criteria->setStart($userstart);
	$user_select->addOptionArray($member_handler->getUserList($criteria));
	$user_select_tray = new icms_form_elements_Tray(_AM_NICKNAME, '<br />');
	$user_select_tray->addElement($user_select);
	$user_select_nav = new icms_form_elements_Label('', $nav->renderNav(4));
	$user_select_tray->addElement($user_select_nav);

	$op_select = new icms_form_elements_Select('', 'op');
	$op_select->addOptionArray(array('modifyUser'=>_AM_MODIFYUSER));

	$submit_button = new icms_form_elements_Button('', 'submit', _AM_GO, 'submit');
	$fct_hidden = new icms_form_elements_Hidden('fct', 'users');
	$editform->addElement($user_select_tray);
	$editform->addElement($op_select);
	$editform->addElement($submit_button);
	$editform->addElement($fct_hidden);
	$editform->display();

	echo "<br />\n";
	$uid_value = '';
	$uname_value = '';
	$login_name_value = '';
	$name_value = '';
	$email_value = '';
	$email_cbox_value = 0;
	$openid_value = '';
	$openid_cbox_value = 0;
	$url_value = '';
	$timezone_value = $icmsConfig['default_TZ'];
	$icq_value = '';
	$aim_value = '';
	$yim_value = '';
	$msnm_value = '';
	$location_value = '';
	$occ_value = '';
	$interest_value = '';
	$sig_value = '';
	$sig_cbox_value = 0;
	$umode_value = $icmsConfig['com_mode'];
	$uorder_value = $icmsConfig['com_order'];

	include_once ICMS_INCLUDE_PATH .'/notification_constants.php';
	$notify_method_value = XOOPS_NOTIFICATION_METHOD_PM;
	$notify_mode_value = XOOPS_NOTIFICATION_MODE_SENDALWAYS;
	$bio_value = '';
	$rank_value = 0;
	$mailok_value = 0;
	$pass_expired_value = 0;
	$op_value = 'addUser';
	$form_title = _AM_ADDUSER;
	$form_isedit = FALSE;
	$language_value = $icmsConfig['language'];
	$groups = array(XOOPS_GROUP_USERS);
	include ICMS_MODULES_PATH . '/system/admin/users/userform.php';
	icms_cp_footer();
}
Esempio n. 13
0
             echo $xoopsMailer->getErrors();
         } else {
             echo '<div><h4>' . _MSC_REFERENCESENT . '</h4></div>';
         }
         //CloseTable();
     }
     break;
 case 'online':
     echo '<table  width="100%" cellspacing="1" class="outer"><tr><th colspan="3">' . _WHOSONLINE . '</th></tr>';
     $start = isset($_GET['start']) ? (int) $_GET['start'] : 0;
     $online_handler = icms::handler('icms_core_Online');
     $online_total =& $online_handler->getCount();
     $limit = $online_total > 20 ? 20 : $online_total;
     $criteria = new icms_db_criteria_Compo();
     $criteria->setLimit($limit);
     $criteria->setStart($start);
     $onlines =& $online_handler->getAll($criteria);
     $count = count($onlines);
     $module_handler = icms::handler('icms_module');
     $modules =& $module_handler->getList(new icms_db_criteria_Item('isactive', 1));
     for ($i = 0; $i < $count; $i++) {
         if ($onlines[$i]['online_uid'] == 0) {
             $onlineUsers[$i]['user'] = '';
         } else {
             $onlineUsers[$i]['user'] = new icms_member_user_Object($onlines[$i]['online_uid']);
         }
         $onlineUsers[$i]['ip'] = $onlines[$i]['online_ip'];
         $onlineUsers[$i]['updated'] = $onlines[$i]['online_updated'];
         $onlineUsers[$i]['module'] = $onlines[$i]['online_module'] > 0 ? $modules[$onlines[$i]['online_module']] : '';
     }
     $class = 'even';
Esempio n. 14
0
 /**
  * Get Contents requested by the global search feature
  *
  * @param array $queryarray array containing the searched keywords
  * @param bool $andor wether the keywords should be searched with AND or OR
  * @param int $limit maximum results returned
  * @param int $offset where to start in the resulting dataset
  * @param int $userid should we return contents by specific contenter ?
  * @return array array of contents
  */
 public function getContentsForSearch($queryarray, $andor, $limit, $offset, $userid)
 {
     $criteria = new icms_db_criteria_Compo();
     $criteria->setStart($offset);
     $criteria->setLimit($limit);
     if ($userid != 0) {
         $criteria->add(new icms_db_criteria_Item('content_uid', $userid));
     }
     if ($queryarray) {
         $criteriaKeywords = new icms_db_criteria_Compo();
         for ($i = 0; $i < count($queryarray); $i++) {
             $criteriaKeyword = new icms_db_criteria_Compo();
             $criteriaKeyword->add(new icms_db_criteria_Item('content_title', '%' . $queryarray[$i] . '%', 'LIKE'), 'OR');
             $criteriaKeyword->add(new icms_db_criteria_Item('content_body', '%' . $queryarray[$i] . '%', 'LIKE'), 'OR');
             $criteriaKeywords->add($criteriaKeyword, $andor);
             unset($criteriaKeyword);
         }
         $criteria->add($criteriaKeywords);
     }
     $criteria->add(new icms_db_criteria_Item('content_status', CONTENT_CONTENT_STATUS_PUBLISHED));
     return $this->getObjects($criteria, true, false);
 }