Exemple #1
0
function dispatch()
{
	global $xoopsUser, $xoopsModuleConfig;
	if($this->isGuest() || !$xoopsModuleConfig['use_footprint']){
		redirect_header(XOOPS_URL, 2, _NOPERM);
	}
	
	$limit = 30;
	
	$own_uid = $xoopsUser->getVar('uid');
	$user_handler =& XsnsUserHandler::getInstance();
	$own_user =& $user_handler->get($own_uid);
	if(!is_object($own_user)){
		redirect_header(XOOPS_URL, 2, _NOPERM);
	}
	
	$footprint_handler =& XsnsFootprintHandler::getInstance();
	$footprint_list_temp =& $footprint_handler->getListForUser($own_uid, $limit);
	$footprint_count = $footprint_handler->getCountForUser($own_uid);
	
	$user_ids = array();
	foreach($footprint_list_temp as $footprint){
		$user_ids[] = $footprint['uid_from'];
	}
	if(count($user_ids) > 0){
		$user_ids = array_unique($user_ids);
		
		$criteria = new Criteria('uid', '('.implode(',',$user_ids).')', 'IN');
		$user_obj_list =& $user_handler->getObjects($criteria, true);
	}
	else{
		$user_obj_list = array();
	}
	
	$footprint_list = array();
	
	foreach($footprint_list_temp as $footprint){
		$uid = $footprint['uid_from'];
		$footprint_list[] = array(
			'uname' => isset($user_obj_list[$uid]) ? $user_obj_list[$uid]->getVar('uname') : "-",
			'url' => XSNS_URL_MYPAGE.'&uid='.$uid,
			'time' => $footprint['time'],
		);
	}
	
	$this->context->setAttribute('user_menu', $own_user->getMypageMenu());
	$this->context->setAttribute('user_name', $own_user->getVar('uname'));
	$this->context->setAttribute('footprint_list', $footprint_list);
	$this->context->setAttribute('footprint_count', $footprint_count);
}
Exemple #2
0
function dispatch()
{
	$blog_limit = 10;
	$topic_limit = 5;
	$intro_limit = 5;
	
	global $xoopsUser, $xoopsModuleConfig;
	if(!$this->checkPermissionForGuest()){
		redirect_header(XOOPS_URL, 2, _NOPERM);
	}
	$own_uid = $this->isGuest() ? 0 : $xoopsUser->getVar('uid');
	
	$uid = $this->getIntRequest('uid', XSNS_REQUEST_GET);
	if(!$uid){
		$uid = $own_uid;
	}
	
	$user_handler =& XsnsUserHandler::getInstance();
	$user =& $user_handler->get($uid);
	if(!is_object($user) || $user->getVar('level') < 1){
		redirect_header(XOOPS_URL, 2, _NOPERM);
	}
	
	if($uid == $own_uid){
		$is_own_page = true;
		$is_friend_page = false;
		
		// Information List
		$info_list =& $user->getInformationList();
	}
	else{
		$is_own_page = false;
		$own =& $user_handler->get($own_uid);
		if(is_object($own)){
			$is_friend_page = $own->isFriend($uid);
			
			// Add Footprint
			if($xoopsModuleConfig['use_footprint']){
				$footprint_handler =& XsnsFootprintHandler::getInstance();
				$footprint_handler->add($uid, $own_uid);
			}
		}
		else{
			$is_friend_page = false;
		}
		$info_list = NULL;
	}
	
	if($is_own_page || $is_friend_page){
		if($is_own_page){
			// Topic List
			$topic_list =& $user->getTopicList($topic_limit, 0);
			$topic_count_all = $user->getTopicCount();
			
			// Friend's Blog List
			$blog_list =& $user->getFriendBlogList($blog_limit, 0, &$blog_count_all);
		}
		else{
			$topic_list = array();
			$topic_count_all = 0;
			
			// My Blog List
			$blog_list =& $user->getMyBlogList($blog_limit, 0, &$blog_count_all);
		}
	}
	else{
		$friend_list = $topic_list = $blog_list = array();
		$topic_count_all = $blog_count_all = 0;
	}
	
	// Friend List
	$friend_list =& $user->getFriendList(9, 0, true);
	$friend_count = count($friend_list);
	if($friend_count%3 > 0){
		for($i=0; $i<(3-$friend_count%3); $i++){
			$friend_list[] = array();
		}
	}
	$friend_count_all = $user->getFriendCount();
	
	// Community List
	$commu_list =& $user->getCommunityList(9, 0, true);
	$commu_count = count($commu_list);
	if($commu_count%3 > 0){
		for($i=0; $i<(3-$commu_count%3); $i++){
			$commu_list[] = array();
		}
	}
	$commu_count_all = $user->getCommunityCount();
	
	// Introduction List
	$intro_list =& $user->getIntroList($intro_limit, 0, true);
	$intro_count_all = $user->getIntroCount();
	
	// Output
	$this->context->setAttribute('user_menu', $user->getMypageMenu());
	$this->context->setAttribute('user_info', $this->getUserInfo($uid));
	
	$this->context->setAttribute('info_list', $info_list);
	$this->context->setAttribute('friend_list', $friend_list);
	$this->context->setAttribute('commu_list', $commu_list);
	$this->context->setAttribute('topic_list', $topic_list);
	$this->context->setAttribute('blog_list', $blog_list);
	$this->context->setAttribute('intro_list', $intro_list);
	
	$this->context->setAttribute('friend_count', $friend_count_all);
	$this->context->setAttribute('commu_count', $commu_count_all);
	$this->context->setAttribute('topic_count', $topic_count_all);
	$this->context->setAttribute('blog_count', $blog_count_all);
	$this->context->setAttribute('intro_count', $intro_count_all);
	
	$this->context->setAttribute('is_own_page', $is_own_page);
	$this->context->setAttribute('is_friend_page', $is_friend_page);

}