Пример #1
0
 public function run()
 {
     list($type, $page) = $this->getInput(array('type', 'page'));
     $page = intval($page);
     $page < 1 && ($page = 1);
     $perpage = 20;
     list($start, $limit) = Pw::page2limit($page, $perpage);
     $noticeList = $this->_getNoticeDs()->getNotices($this->loginUser->uid, $type, $start, $limit);
     $noticeList = $this->_getNoticeService()->formatNoticeList($noticeList);
     $typeCounts = $this->_getNoticeService()->countNoticesByType($this->loginUser->uid);
     //类型
     $typeid = intval($type);
     //获取未读通知数
     $unreadCount = $this->_getNoticeDs()->getUnreadNoticeCount($this->loginUser->uid);
     $this->_readNoticeList($unreadCount, $noticeList);
     //count
     $count = intval($typeCounts[$typeid]['count']);
     $this->setOutput($page, 'page');
     $this->setOutput($perpage, 'perpage');
     $this->setOutput($count, 'count');
     $this->setOutput(ceil($count / $perpage), 'totalpage');
     $this->setOutput(array('type' => $typeid), 'args');
     $this->setOutput($typeid, 'typeid');
     $this->setOutput($typeCounts, 'typeCounts');
     $this->setOutput($noticeList, 'noticeList');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:mess.notice.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #2
0
 public function run()
 {
     $permissionService = new PwPermissionService();
     $categorys = $permissionService->getPermissionPoint($this->_getShowPoint(), array('basic', 'bbs'));
     $compare = $this->getInput('gid');
     if ($compare && $compare != $this->loginUser->gid) {
         $this->setOutput(true, 'compare');
         $compareGroup = $permissionService->getPermissionConfigByGid($compare, $this->_getShowPoint());
         $this->setOutput($compareGroup, 'compareGroupPermission');
         $this->setOutput($compare, 'comparegid');
     }
     $myGroup = $permissionService->getPermissionConfigByGid($this->loginUser->gid, $this->_getShowPoint());
     $this->listGroups();
     $attach = array('allow_upload', 'allow_download', 'uploads_perday');
     foreach ($categorys['bbs']['sub'] as $_k => $_v) {
         if (!in_array($_v, $attach)) {
             continue;
         }
         unset($categorys['bbs']['sub'][$_k]);
     }
     $totalCredit = Wekit::load('usergroup.srv.PwUserGroupsService')->getCredit($this->loginUser->info);
     $categorys['attach'] = array('name' => '附件权限', 'sub' => $attach);
     $this->setOutput($categorys, 'categorys');
     $this->setOutput($myGroup, 'myGroupPermission');
     $this->setOutput($totalCredit, 'myCredit');
     $this->_appendBread('权限查看', WindUrlHelper::createUrl('profile/right/run'));
     $this->setTemplate('profile_right');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:profile.right.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #3
0
 public function run()
 {
     $page = $this->getInput('page');
     $this->page = $page < 1 ? 1 : intval($page);
     list($start, $limit) = Pw::page2limit($this->page, $this->perpage);
     $total = $this->_getPollVoterDs()->countByUid(Wekit::getLoginUser()->uid);
     $poll = $total ? $this->_getPollVoterDs()->getPollByUid(Wekit::getLoginUser()->uid, $limit, $start) : array();
     $pollInfo = array();
     if ($poll) {
         $pollid = array();
         foreach ($poll as $value) {
             $pollid[] = $value['poll_id'];
         }
         Wind::import('SRV:poll.srv.dataSource.PwFetchPollByPollid');
         $pollDisplay = new PwPollDisplay(new PwFetchPollByPollid($pollid, count($pollid)));
         $pollInfo = $this->_buildPoll($pollDisplay->gather(), 'my');
     }
     $latestPollDisplay = new PwPollDisplay(new PwFetchPollByOrder(10, 0, array('created_time' => '0')));
     $latestPoll = $latestPollDisplay->gather();
     $this->setOutput($total, 'total');
     $this->setOutput($pollInfo, 'pollInfo');
     $this->setOutput($latestPoll, 'latestPoll');
     $this->setOutput($this->page, 'page');
     $this->setOutput($this->perpage, 'perpage');
     $this->setOutput(array('allowview' => $this->loginUser->getPermission('allow_view_vote'), 'allowvote' => $this->loginUser->getPermission('allow_participate_vote')), 'pollGroup');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:vote.my.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #4
0
 /**
  * 谁看过我
  */
 public function run()
 {
     $space = $this->_getSpaceDs()->getSpace($this->loginUser->uid);
     $visitors = $space['visitors'] ? unserialize($space['visitors']) : array();
     $uids = array_keys($visitors);
     if ($uids) {
         $userList = Wekit::load('user.PwUser')->fetchUserByUid($uids, PwUser::FETCH_MAIN | PwUser::FETCH_DATA | PwUser::FETCH_INFO);
         $userList = $this->_buildData($userList, $uids);
         $follows = $this->_getAttentionDs()->fetchFollows($this->loginUser->uid, $uids);
         $fans = $this->_getAttentionDs()->fetchFans($this->loginUser->uid, $uids);
         $friends = array_intersect_key($fans, $follows);
         $this->setOutput($fans, 'fans');
         $this->setOutput($friends, 'friends');
         $this->setOutput($userList, 'userList');
         $this->setOutput($follows, 'follows');
     } else {
         Wind::import('SRV:user.vo.PwUserSo');
         $vo = new PwUserSo();
         $vo->orderbyLastpost(false);
         $lastPostUser = Wekit::load('SRV:user.PwUserSearch')->searchUser($vo, 2);
         if ($lastPostUser) {
             unset($lastPostUser[$this->loginUser->uid]);
             $lastPostUser = array_keys($lastPostUser);
             $this->setOutput($lastPostUser[0], 'lastPostUser');
         }
     }
     $this->setOutput($visitors, 'visitors');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:bbs.visitor.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #5
0
 public function run()
 {
     //new add
     $sign = $this->getInput('sign', 'get');
     $sessionId = Pw::getCookie($this->_getLoginSessionService()->getCookieName());
     $sessionInfo = App_Account_LoginSessionBo::getInstance($sessionId)->getSession();
     $sessionData = $sessionInfo['sessiondata'];
     $type = $sessionData['type'];
     $nick = $sessionData['data']['nick'];
     if (!$sessionId || !$this->_getAccountTypeService()->checkType($type) || $sessionData['data']['sign'] != $sign) {
         $this->showError("非法访问");
     }
     $this->setOutput($this->_getAccountTypeService()->getTypeName($type), 'typeName');
     $this->setOutput($sign, 'sign');
     $data = array('username' => $nick);
     $this->setOutput($data, 'data');
     $this->init();
     $this->setOutput($this->getInput('invite'), 'invite');
     $this->setOutput(WindUrlHelper::createUrl('bbs/index/run'), 'backurl');
     $this->setTemplate('register');
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:u.register.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #6
0
 public function run()
 {
     $page = $this->getInput('page');
     $this->page = $page < 1 ? 1 : intval($page);
     list($start, $limit) = Pw::page2limit($this->page, $this->perpage);
     $timestamp = PW::getTime();
     $startTime = $timestamp - 7 * 86400;
     $endTime = $timestamp;
     $total = $this->_getPollDs()->countPollByTime($startTime, $endTime);
     $pollInfo = array();
     if ($total) {
         Wind::import('SRV:poll.srv.dataSource.PwFetchPollByTime');
         $pollDisplay = new PwPollDisplay(new PwFetchPollByTime($startTime, $endTime, $limit, $start, array('voter_num' => 0, 'created_time' => 0)));
         $pollInfo = $this->_buildPoll($pollDisplay->gather());
     }
     $latestPollDisplay = new PwPollDisplay(new PwFetchPollByOrder(10, 0, array('created_time' => '0')));
     $latestPoll = $latestPollDisplay->gather();
     $this->setOutput($total, 'total');
     $this->setOutput($pollInfo, 'pollInfo');
     $this->setOutput($latestPoll, 'latestPoll');
     $this->setOutput($this->page, 'page');
     $this->setOutput($this->perpage, 'perpage');
     $this->setOutput(array('allowview' => $this->loginUser->getPermission('allow_view_vote'), 'allowvote' => $this->loginUser->getPermission('allow_participate_vote')), 'pollGroup');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     if ($this->page > 1) {
         $seoBo->setCustomSeo($lang->getMessage('SEO:vote.hot.run.page.title', array($this->page)), $lang->getMessage('vote.hot.run.description'), '');
     } else {
         $seoBo->setCustomSeo($lang->getMessage('SEO:vote.hot.run.title'), '', $lang->getMessage('SEO:vote.hot.run.description'));
     }
     Wekit::setV('seo', $seoBo);
 }
Пример #7
0
 public function run()
 {
     $id = (int) $this->getInput('id', 'get');
     $portal = $this->_getPortalDs()->getPortal($id);
     if (!$portal) {
         $this->showError("page.status.404");
     }
     if (!$portal['isopen']) {
         $permissions = $this->_getPermissionsService()->getPermissionsForUserGroup($this->loginUser->uid);
         if ($permissions < 1) {
             $this->showError("page.status.404");
         }
     }
     $this->setOutput($portal, 'portal');
     if ($portal['navigate']) {
         $this->setOutput($this->headguide($portal['title']), 'headguide');
     }
     if ($portal['template']) {
         $url = WindUrlHelper::checkUrl(PUBLIC_THEMES . '/portal/local/' . $portal['template'], PUBLIC_URL);
         $design['url']['css'] = $url . '/css';
         $design['url']['images'] = $url . '/images';
         $design['url']['js'] = $url . '/js';
         Wekit::setGlobal($design, 'design');
         $this->setTemplate("THEMES:portal.local." . $portal['template'] . ".template.index");
     } else {
         $this->setTemplate("TPL:special.index_run");
     }
     //$this->getForward()->getWindView()->compileDir = 'DATA:design.default.' . $id;
     $this->setT($portal['template'], 'THEMES:portal.local');
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $seoBo->init('area', 'custom', $id);
     $seoBo->set('{pagename}', $portal['title']);
     Wekit::setV('seo', $seoBo);
 }
Пример #8
0
 /**
  * 关注-首页
  */
 public function run()
 {
     $type = $this->getInput('type');
     $page = intval($this->getInput('page'));
     $page < 1 && ($page = 1);
     $perpage = 20;
     list($start, $limit) = Pw::page2limit($page, $perpage);
     $url = $classCurrent = array();
     $typeCounts = $this->_getTypeDs()->countUserType($this->loginUser->uid);
     if ($type) {
         $tmp = $this->_getTypeDs()->getUserByType($this->loginUser->uid, $type, $limit, $start);
         $follows = $this->_getDs()->fetchFollows($this->loginUser->uid, array_keys($tmp));
         $count = $typeCounts[$type] ? $typeCounts[$type]['count'] : 0;
         $url['type'] = $type;
         $classCurrent[$type] = 'current';
     } else {
         $follows = $this->_getDs()->getFollows($this->loginUser->uid, $limit, $start);
         $count = $this->loginUser->info['follows'];
         $classCurrent[0] = 'current';
     }
     $uids = array_keys($follows);
     $fans = $this->_getDs()->fetchFans($this->loginUser->uid, $uids);
     $userList = Wekit::load('user.PwUser')->fetchUserByUid($uids, PwUser::FETCH_MAIN | PwUser::FETCH_DATA | PwUser::FETCH_INFO);
     $service = $this->_getService();
     $typeArr = $service->getAllType($this->loginUser->uid);
     $userType = $service->getUserType($this->loginUser->uid, $uids);
     foreach ($userType as $key => $value) {
         $tmp = array();
         foreach ($value as $k => $v) {
             $tmp[$v] = $typeArr[$v];
         }
         ksort($tmp);
         $userType[$key] = $tmp;
     }
     $follows = WindUtility::mergeArray($follows, $userList);
     if (!$type && !$follows) {
         $num = 30;
         $uids = $this->_getRecommendService()->getOnlneUids($num);
         $uids = array_slice($uids, 0, 24);
         $this->setOutput($this->_getRecommendService()->buildUserInfo($this->loginUser->uid, $uids, $num), 'recommend');
     }
     $this->setOutput($follows, 'follows');
     $this->setOutput($typeArr, 'typeArr');
     $this->setOutput($type, 'type');
     $this->setOutput($userType, 'userType');
     $this->setOutput($typeCounts, 'typeCounts');
     $this->setOutput($fans, 'fans');
     $this->setOutput($classCurrent, 'classCurrent');
     $this->setOutput($page, 'page');
     $this->setOutput($perpage, 'perpage');
     $this->setOutput($count, 'count');
     $this->setOutput($url, 'url');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:bbs.follow.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #9
0
 public function run()
 {
     //seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $seoBo->init('like', 'hot');
     Wekit::setV('seo', $seoBo);
 }
Пример #10
0
 public function run()
 {
     $this->init();
     $this->setOutput($this->getInput('invite'), 'invite');
     $this->setOutput(WindUrlHelper::createUrl('bbs/index/run'), 'backurl');
     $this->setTemplate('register');
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:u.register.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #11
0
 /** 
  * 推荐关注
  */
 public function run()
 {
     $uids = $this->getOnlneUids(40);
     $userList = $this->_buildUserInfo($this->loginUser->uid, $uids, 20);
     $this->setOutput($userList, 'userList');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:bbs.friend.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #12
0
 public function run()
 {
     $order = $this->getInput('order', 'get');
     $page = intval($this->getInput('page', 'get'));
     $threadList = new PwThreadList();
     $this->runHook('c_index_run', $threadList);
     $threadList->setPage($page)->setPerpage(Wekit::C('bbs', 'thread.perpage'));
     Wind::import('SRV:forum.srv.threadList.PwNewThread');
     $forbidFids = Wekit::load('forum.srv.PwForumService')->getForbidVisitForum($this->loginUser, null, true);
     $dataSource = new PwNewThread($forbidFids);
     if ($order == 'postdate') {
         $dataSource->setOrderBy($order);
     } else {
         $dataSource->setOrderBy('lastpost');
     }
     $threadList->execute($dataSource);
     if ($threadList->total > 12000) {
         Wekit::load('forum.PwThreadIndex')->deleteOver($threadList->total - 10000);
     }
     $threaddb = $threadList->getList();
     $fids = array();
     foreach ($threaddb as $key => $value) {
         $fids[] = $value['fid'];
     }
     $forums = Wekit::load('forum.srv.PwForumService')->fetchForum($fids);
     if ($operateThread = $this->loginUser->getPermission('operate_thread', false, array())) {
         $operateThread = Pw::subArray($operateThread, array('delete'));
     }
     $this->setOutput($threadList, 'threadList');
     $this->setOutput($threaddb, 'threaddb');
     $this->setOutput($forums, 'forums');
     $this->setOutput($threadList->icon, 'icon');
     $this->setOutput($threadList->uploadIcon, 'uploadIcon');
     $this->setOutput(26, 'numofthreadtitle');
     $this->setOutput($order, 'order');
     $this->setOutput($operateThread, 'operateThread');
     $this->setOutput($threadList->page, 'page');
     $this->setOutput($threadList->perpage, 'perpage');
     $this->setOutput($threadList->total, 'count');
     $this->setOutput($threadList->maxPage, 'totalpage');
     $this->setOutput($threadList->getUrlArgs(), 'urlargs');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $threadList->page <= 1 && $seoBo->setDefaultSeo($lang->getMessage('SEO:bbs.forum.run.title'), '', $lang->getMessage('SEO:bbs.forum.run.description'));
     $seoBo->init('bbs', 'new');
     $seoBo->set('{page}', $threadList->page);
     Wekit::setV('seo', $seoBo);
 }
Пример #13
0
	public function run() {
		$this->setOutput($this->_showVerify(), 'verify');
		$this->setOutput('用户登录', 'title');
		$this->setOutput($this->_filterUrl(false), 'url');
		$this->setOutput(PwUserHelper::getLoginMessage(), 'loginWay');
		$this->setOutput($this->getInput('invite'), 'invite');
		$this->setTemplate('login');
		
		Wind::import('SRV:seo.bo.PwSeoBo');
		$seoBo = PwSeoBo::getInstance();
		$lang = Wind::getComponent('i18n');
		$seoBo->setCustomSeo($lang->getMessage('SEO:u.login.run.title'), '', '');
		Wekit::setV('seo', $seoBo);
	}
Пример #14
0
 public function run()
 {
     $resource = Wind::getComponent('i18n');
     list($_pwdMsg, $_pwdArgs) = PwUserValidator::buildPwdShowMsg();
     $this->setOutput($resource->getMessage($_pwdMsg, $_pwdArgs), 'pwdReg');
     $this->setCurrentLeft('password');
     $this->appendBread('修改密码', WindUrlHelper::createUrl('profile/password/run'));
     $this->setTemplate('profile_password');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:profile.password.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #15
0
 public function run()
 {
     if (($result = $this->_checkRight()) instanceof PwError) {
         $this->showError($result->getError());
     }
     list($page, $perpage, $keywords, $fid, $limittime, $orderby) = $this->getInput(array('page', 'perpage', 'keywords', 'fid', 'limittime', 'orderby'));
     if ($keywords) {
         //最后搜索时间
         if (($result = $this->_checkSearch()) instanceof PwError) {
             $this->showError($result->getError());
         }
         $page = $page ? $page : 1;
         $perpage = $perpage ? $perpage : $this->perpage;
         list($start, $limit) = Pw::page2limit($page, $perpage);
         !$orderby && ($orderby = 'lastpost_time');
         Wind::import('SRV:forum.vo.PwThreadSo');
         $so = new PwThreadSo();
         $keywords = urldecode($keywords);
         $so->setKeywordOfTitleOrContent($keywords);
         $fid && $so->setFid($fid);
         $limittime && $so->setCreateTimeStart($this->_getLimitTime($limittime));
         $so = $this->_getOrderBy($so, $orderby);
         $count = $this->_getSearchService()->countSearchThread($so);
         $count = $count > $this->maxNum ? $this->maxNum : $count;
         if ($count) {
             $threads = $this->_getSearchService()->searchThread($so, $limit, $start);
             $threads = $this->_getSearchService()->buildThreads($threads, $keywords);
             $this->_replaceRecord($keywords, App_Search_Record::TYPE_THREAD);
         }
         $this->setOutput($page, 'page');
         $this->setOutput($perpage, 'perpage');
         $this->setOutput($count, 'count');
         $this->setOutput($threads, 'threads');
         $this->setOutput(array(1 => 'img', 3 => 'img', 4 => 'file', 5 => 'img', 7 => 'img'), 'uploadIcon');
         $this->setOutput(array('img' => '图片帖', 'file' => '附件'), 'icon');
     }
     $args = array('keywords' => $keywords, 'fid' => $fid, 'limittime' => $limittime, 'orderby' => $orderby);
     $this->setOutput($args, 'args');
     $forumList = Wekit::load('forum.srv.PwForumService')->getForumList();
     $this->setOutput(App_Search_Record::TYPE_THREAD, 'recordType');
     $this->setOutput($forumList, 'forumList');
     $this->setOutput($this->getCommonForumList($forumList), 'forumdb');
     $this->setTemplate('index_run');
     //seo设置
     $seoBo = PwSeoBo::getInstance();
     $seoBo->setCustomSeo($keywords . ' - {sitename}', '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #16
0
 /**
  * 关注-首页
  */
 public function run()
 {
     $type = $this->getInput('type');
     $page = intval($this->getInput('page'));
     $page < 1 && ($page = 1);
     $perpage = 20;
     list($start, $limit) = Pw::page2limit($page, $perpage);
     $args = $classCurrent = array();
     /*		$typeCounts = $this->_getTypeDs()->countUserType($this->space->spaceUid);
     		if ($type) {
     			$tmp = $this->_getTypeDs()->getUserByType($this->space->spaceUid, $type, $limit, $start);
     			$follows = $this->_getDs()->fetchFollows($this->space->spaceUid, array_keys($tmp));
     			$count = $typeCounts[$type] ? $typeCounts[$type]['count'] : 0;
     			$classCurrent[$type] = 'current';
     			$args = array('type' => $type);
     		} else {*/
     $follows = $this->_getDs()->getFollows($this->space->spaceUid, $limit, $start);
     $count = $this->space->spaceUser['follows'];
     $classCurrent[0] = 'current';
     //}
     $uids = array_keys($follows);
     $fans = $this->_getDs()->fetchFans($this->loginUser->uid, $uids);
     $myfollows = $this->_getDs()->fetchFollows($this->loginUser->uid, $uids);
     $userList = Wekit::load('user.PwUser')->fetchUserByUid($uids, PwUser::FETCH_ALL);
     $service = $this->_getService();
     $args['uid'] = $this->space->spaceUid;
     $follows = WindUtility::mergeArray($follows, $userList);
     if (!$follows && $this->space->tome == PwSpaceBo::MYSELF) {
         $num = 20;
         $uids = $this->_getRecommendService()->getRecommendAttention($this->loginUser->uid, $num);
         $this->setOutput($this->_getRecommendService()->buildUserInfo($this->loginUser->uid, $uids, $num), 'recommend');
     }
     $this->setOutput($fans, 'fans');
     $this->setOutput($follows, 'follows');
     $this->setOutput($myfollows, 'myfollows');
     $this->setOutput($classCurrent, 'classCurrent');
     $this->setOutput($args, 'args');
     $this->setOutput($page, 'page');
     $this->setOutput($perpage, 'perpage');
     $this->setOutput($count, 'count');
     $this->setOutput('follows', 'src');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:space.follows.run.title', array($this->space->spaceUser['username'], $this->space->space['space_name'])), '', $lang->getMessage('SEO:space.follows.run.description', array($this->space->spaceUser['username'])));
     Wekit::setV('seo', $seoBo);
 }
Пример #17
0
 /**
  * 用户资料
  */
 public function run()
 {
     $lang = Wind::getComponent('i18n');
     $gid = $this->space->spaceUser['groupid'] == 0 ? $this->space->spaceUser['memberid'] : $this->space->spaceUser['groupid'];
     $group = Wekit::load('usergroup.PwUserGroups')->getGroupByGid($gid);
     $constellation = Wekit::load('space.srv.PwSpaceService')->getConstellation($this->space->spaceUser['byear'], $this->space->spaceUser['bmonth'], $this->space->spaceUser['bday']);
     $this->setOutput($group['name'], 'groupName');
     $this->setOutput($lang->getMessage('USER:profile.constellation.' . $constellation), 'constellation');
     $this->setOutput('profile', 'src');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:space.profile.run.title', array($this->space->spaceUser['username'], $this->space->space['space_name'])), '', $lang->getMessage('SEO:space.profile.run.description', array($this->space->spaceUser['username'])));
     Wekit::setV('seo', $seoBo);
 }
Пример #18
0
 public function preHandle()
 {
     /* 模板变量设置 */
     $url = array();
     $var = Wekit::url();
     $url['base'] = $var->base;
     $url['res'] = $var->res;
     $url['css'] = $var->css;
     $url['images'] = $var->images;
     $url['js'] = $var->js;
     $url['attach'] = $var->attach;
     $url['themes'] = $var->themes;
     $url['extres'] = $var->extres;
     Wekit::setGlobal($url, 'url');
     $request = array('m' => $this->router->getModule(), 'c' => $this->router->getController(), 'a' => $this->router->getAction());
     $request['mc'] = $request['m'] . '/' . $request['c'];
     $request['mca'] = $request['mc'] . '/' . $request['a'];
     Wekit::setGlobal($request, 'request');
     Wekit::setV('request', $request);
     $this->_setPreCache($request['m'], $request['mc'], $request['mca']);
     $loginUser = Wekit::getLoginUser();
     $config = Wekit::C('site');
     if ($config['visit.state'] > 0) {
         $service = Wekit::load('site.srv.PwSiteStatusService');
         $resource = $service->siteStatus($loginUser, $config);
         if ($resource instanceof PwError) {
             if (!($config['visit.state'] == 1 && $request['mc'] == 'u/login')) {
                 $this->showError($resource->getError());
             }
         }
     }
     if (!in_array($request['mc'], array('u/login', 'u/register', 'u/findPwd')) && !$loginUser->getPermission('allow_visit')) {
         if ($loginUser->isExists()) {
             $this->showError(array('permission.visit.allow', array('{grouptitle}' => $loginUser->getGroupInfo('name'))));
         } else {
             $this->forwardRedirect(WindUrlHelper::createUrl('u/login/run'));
         }
     }
     if ($config['refreshtime'] > 0 && Wind::getApp()->getRequest()->isGet() && !Wind::getApp()->getRequest()->getIsAjaxRequest()) {
         if (Wekit::V('lastvist')->lastRequestUri == Wekit::V('lastvist')->requestUri && Wekit::V('lastvist')->lastvisit + $config['refreshtime'] > Pw::getTime()) {
             $this->showError('SITE:refresh.fast');
         }
     }
     $this->_setPreHook($request['m'], $request['mc'], $request['mca']);
     $debug = $config['debug'] || !$config['css.compress'];
     Wekit::setGlobal(array('debug' => $debug ? '/dev' : '/build'), 'theme');
 }
Пример #19
0
 public function run()
 {
     /* @var $forumDs PwForum */
     $forumDs = Wekit::load('forum.PwForum');
     $list = $forumDs->getCommonForumList(PwForum::FETCH_MAIN | PwForum::FETCH_STATISTICS);
     list($cateList, $forumList) = $this->_filterMap($list);
     $bbsinfo = Wekit::load('site.PwBbsinfo')->getInfo(1);
     $this->setOutput($cateList, 'cateList');
     $this->setOutput($forumList, 'forumList');
     $this->setOutput($this->todayposts, 'todayposts');
     $this->setOutput($this->article, 'article');
     $this->setOutput($bbsinfo, 'bbsinfo');
     $this->setTemplate('forum_list');
     //seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $seoBo->init('bbs', 'forumlist');
     Wekit::setV('seo', $seoBo);
 }
Пример #20
0
 public function run()
 {
     $userInfo = Wekit::load('user.PwUser')->getUserByUid($this->loginUser->uid, PwUser::FETCH_INFO);
     $userInfo = array_merge($this->loginUser->info, $userInfo);
     list($year, $month, $day) = PwUserHelper::getBirthDay();
     $this->setOutput($this->_buildArea($userInfo['location']), 'location');
     $this->setOutput($this->_buildArea($userInfo['hometown']), 'hometown');
     $isAllowSign = false;
     if ($this->loginUser->getPermission('allow_sign')) {
         $isAllowSign = true;
         $isSignBan = false;
         if (Pw::getstatus($this->loginUser->info['status'], PwUser::STATUS_BAN_SIGN)) {
             Wind::import('SRV:user.srv.PwBanBp');
             $banBp = new PwBanBp($this->loginUser->uid);
             if (false === $banBp->checkIfBanSign()) {
                 $banBp->recoveryBanSignError();
             } elseif ($banBp->endDateTimeBanSign()) {
                 $s = 1 << PwUser::STATUS_BAN_SIGN - 1;
                 $this->loginUser->info['status'] = $this->loginUser->info['status'] - $s;
             } else {
                 $isSignBan = true;
             }
         }
     }
     $extendsSrv = new PwUserProfileExtends($this->loginUser);
     list($_left, $_tab) = $this->getMenuService()->getCurrentTab($this->getInput('_left'), $this->getInput('_tab'));
     $extendsSrv->setCurrent($_left, $_tab);
     $this->runHook('c_profile_foot_run', $extendsSrv);
     $this->setOutput($extendsSrv, 'hookSrc');
     $this->setOutput($isAllowSign, 'isAllowSign');
     $this->setOutput($isSignBan, 'isSignBan');
     $this->setOutput($this->loginUser->getPermission('sign_max_length'), 'signMaxLength');
     $this->setOutput($year, 'years');
     $this->setOutput($month, 'months');
     $this->setOutput($day, 'days');
     $this->setOutput($userInfo, 'userinfo');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:profile.index.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #21
0
 public function run()
 {
     $fid = $this->getInput('fid');
     $type = intval($this->getInput('type', 'get'));
     // 主题分类ID
     $page = intval($this->getInput('page', 'get'));
     $page < 1 && ($page = 1);
     $perpage = Wekit::C('bbs', 'thread.perpage');
     $pwforum = new PwForumBo($fid, true);
     if (!$pwforum->isForum(true)) {
         $this->showError('BBS:forum.exists.not');
     }
     if (($result = $pwforum->allowVisit($this->loginUser)) !== true) {
         $this->showError($result->getError());
     }
     $totalJoin = Wekit::load('forum.PwForumUser')->countUserByFid($fid);
     $joinUser = Wekit::load('forum.PwForumUser')->getUserByFid($fid, 15);
     $activeUser = Wekit::load('forum.srv.PwForumUserService')->getActiveUser($fid, 7, 50);
     $uids = array_merge(array_keys($joinUser), array_keys($activeUser));
     $users = Wekit::load('user.PwUser')->fetchUserByUid($uids);
     $guide = $pwforum->headguide();
     $guide .= $this->buildBread('会员', 'bbs/user/run?fid=' . $fid);
     $this->setOutput($fid, 'fid');
     $this->setOutput($pwforum, 'pwforum');
     $this->setOutput($guide, 'headguide');
     $this->setOutput($totalJoin, 'totalJoin');
     $this->setOutput($joinUser, 'joinUser');
     $this->setOutput($activeUser, 'activeUser');
     $this->setOutput($users, 'users');
     //版块风格
     //版块风格
     if ($pwforum->foruminfo['style']) {
         $this->setTheme('forum', $pwforum->foruminfo['style']);
         //$this->addCompileDir($pwforum->foruminfo['style']);
     }
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:bbs.user.run.title', array($pwforum->foruminfo['name'])), '', $lang->getMessage('SEO:bbs.user.run.description', array($pwforum->foruminfo['name'])));
     Wekit::setV('seo', $seoBo);
 }
Пример #22
0
 /**
  * (non-PHPdoc)
  * @see wekit/wind/web/WindController::run()
  */
 public function run()
 {
     $page = (int) $this->getInput('page', 'get');
     if ($page < 1) {
         $page = 1;
     }
     $this->setOutput('index', 'src');
     $this->setOutput($page, 'page');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $des = Pw::substrs($this->space->space['space_descrip'], 100, 0, false);
     if ($page == 1) {
         $seoBo->setCustomSeo($lang->getMessage('SEO:space.index.run.title', array($this->space->space['space_name'])), '', $des);
     } else {
         $seoBo->setCustomSeo($lang->getMessage('SEO:space.index.run.page.title', array($page, $this->space->space['space_name'])), '', $des);
     }
     Wekit::setV('seo', $seoBo);
 }
Пример #23
0
 public function run()
 {
     $this->setCurrentLeft();
     $model = $this->getProfileMenu();
     unset($model['profile'], $model['contact'], $model['tag']);
     $userInfo = Wekit::load('user.PwUser')->getUserByUid($this->loginUser->uid, PwUser::FETCH_INFO);
     $secret = $userInfo['secret'] ? unserialize($userInfo['secret']) : array();
     //手机号码默认仅自己可见
     !isset($secret['mobile']) && ($secret['mobile'] = 1);
     $this->setOutput($model, 'model');
     $this->setOutput($secret, 'secret');
     $this->setOutput($this->getSecretOption(), 'option');
     $this->appendBread('空间隐私', WindUrlHelper::createUrl('profile/secret/run'));
     $this->setTemplate('profile_secret');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:profile.secret.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #24
0
 public function run()
 {
     $this->setCurrentLeft('avatar');
     $isAvatarBan = false;
     if (Pw::getstatus($this->loginUser->info['status'], PwUser::STATUS_BAN_AVATAR)) {
         Wind::import('SRV:user.srv.PwBanBp');
         $banBp = new PwBanBp($this->loginUser->uid);
         if (false === $banBp->checkIfBanAvatar()) {
             $banBp->recoveryBanAvatarError();
         } elseif ($banBp->endDateTimeBanAvatar()) {
             $this->loginUser->info['status'] = $banBp->callEndDateTimeBanAvatar();
         } else {
             $isAvatarBan = true;
             $info = $banBp->getBanAvatarInfo();
             if ($info['created_userid'] == 0) {
                 $info['operator'] = 'system';
             } else {
                 $operatorInfo = Wekit::load('user.PwUser')->getUserByUid($info['created_userid']);
                 $info['operator'] = $operatorInfo['username'];
             }
             $this->setOutput($info, 'banInfo');
         }
     }
     $windidApi = $this->_getWindid();
     $this->setOutput($windidApi->showFlash($this->loginUser->uid), 'avatarFlash');
     $this->setOutput($windidApi->showFlash($this->loginUser->uid, 0), 'avatarArr');
     $this->setOutput($isAvatarBan, 'isAvatarBan');
     $this->setOutput($this->getInput('type'), 'type');
     $this->setLayout('');
     $this->setTemplate('profile_avatar');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:profile.avatar.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #25
0
 /**
  * 举报管理
  *
  * @return void
  */
 public function run()
 {
     list($page, $perpage, $ifcheck, $type) = $this->getInput(array('page', 'perpage', 'ifcheck', 'type'));
     $page = $page ? $page : 1;
     $perpage = $perpage ? $perpage : $this->perpage;
     list($start, $limit) = Pw::page2limit($page, $perpage);
     $count = $this->_getReportDs()->countByType($ifcheck, $type);
     if ($count) {
         $reports = $this->_getReportService()->getReceiverList($ifcheck, $type, $limit, $start);
     }
     $reportTypes = $this->_getReportService()->getTypeName();
     $this->setOutput($reportTypes, 'reportTypes');
     $this->setOutput($page, 'page');
     $this->setOutput($perpage, 'perpage');
     $this->setOutput($count, 'count');
     $this->setOutput($reports, 'reports');
     $this->setOutput(array('ifcheck' => $ifcheck, 'type' => $type), 'args');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:manage.report.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #26
0
 public function run()
 {
     $page = intval($this->getInput('page'));
     $page < 1 && ($page = 1);
     $perpage = 20;
     list($start, $limit) = Pw::page2limit($page, $perpage);
     $fans = $this->_getDs()->getFans($this->space->spaceUid, $limit, $start);
     $uids = array_keys($fans);
     $count = $this->space->spaceUser['fans'];
     $follows = $this->_getDs()->fetchFollows($this->loginUser->uid, $uids);
     $userList = Wekit::load('user.PwUser')->fetchUserByUid($uids, PwUser::FETCH_ALL);
     $this->setOutput(WindUtility::mergeArray($fans, $userList), 'fans');
     $this->setOutput($follows, 'follows');
     $this->setOutput($page, 'page');
     $this->setOutput($perpage, 'perpage');
     $this->setOutput($count, 'count');
     $this->setOutput('fans', 'src');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:space.fans.run.title', array($this->space->spaceUser['username'], $this->space->space['space_name'])), '', $lang->getMessage('SEO:space.fans.run.description', array($this->space->spaceUser['username'])));
     Wekit::setV('seo', $seoBo);
 }
Пример #27
0
 public function run()
 {
     $page = intval($this->getInput('page'));
     $page < 1 && ($page = 1);
     list($start, $num) = Pw::page2limit($page, $this->perpage);
     $orderBy = $this->getInput('orderby', 'get');
     if (!$orderBy || !isset($this->orderBy[$orderBy])) {
         $orderBy = key($this->orderBy);
     }
     $count = $this->_appDs()->countByStatus(9);
     $apps = $this->_appDs()->fetchListByStatus($num, $start, 9, $this->orderBy[$orderBy]);
     $return = array();
     foreach ($apps as $k => $v) {
         $return[] = array('app_id' => $k, 'name' => $v['name'], 'logo' => $v['logo'], 'alias' => $v['alias'], 'desc' => $v['description'] ? $v['description'] : '这家伙很懒', 'url' => $v['status'] & 8 ? WindUrlHelper::createUrl('appcenter/apps/run', array('appid' => $v['app_id'])) : WindUrlHelper::createUrl('app/index/run', array('app' => $v['alias'])));
     }
     $this->setOutput(array('apps' => $return, 'count' => $count, 'perpage' => $this->perpage, 'page' => $page, 'orderby' => $orderBy));
     $this->setTemplate('app_index_run');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:appcenter.appindex.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #28
0
 public function run()
 {
     $sign = $this->getInput('sign', 'get');
     $sessionId = Pw::getCookie($this->_getLoginSessionService()->getCookieName());
     $sessionInfo = App_Account_LoginSessionBo::getInstance($sessionId)->getSession();
     $sessionData = $sessionInfo['sessiondata'];
     $type = $sessionData['type'];
     if (!$sessionId || !$this->_getAccountTypeService()->checkType($type) || $sessionData['data']['sign'] != $sign) {
         $this->showError("非法访问");
     }
     $this->setOutput($this->_getAccountTypeService()->getTypeName($type), 'typeName');
     $this->setOutput($sign, 'sign');
     $this->setOutput($this->_showVerify(), 'verify');
     $this->setOutput('用户登录', 'title');
     $this->setOutput($this->_filterUrl(false), 'url');
     $this->setOutput(PwUserHelper::getLoginMessage(), 'loginWay');
     $this->setOutput($this->getInput('invite'), 'invite');
     $this->setTemplate('login_bind');
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:u.login.run.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #29
0
 /**
  * 回复列表
  */
 public function replyAction()
 {
     list($page, $perpage) = $this->getInput(array('page', 'perpage'));
     $page = $page ? $page : 1;
     $perpage = $perpage ? $perpage : $this->perpage;
     list($start, $limit) = Pw::page2limit($page, $perpage);
     $count = $this->_getThreadExpandDs()->countDisabledPostByUid($this->loginUser->uid);
     if ($count) {
         $tmpPosts = $this->_getThreadExpandDs()->getDisabledPostByUid($this->loginUser->uid, $limit, $start);
         $posts = $tids = array();
         foreach ($tmpPosts as $v) {
             $tids[] = $v['tid'];
         }
         $threads = $this->_getThreadDs()->fetchThread($tids);
         foreach ($tmpPosts as $v) {
             $v['threadSubject'] = Pw::substrs($threads[$v['tid']]['subject'], 30);
             $v['content'] = Pw::substrs($v['content'], 30);
             $v['created_time'] = PW::time2str($v['created_time'], 'auto');
             $posts[] = $v;
         }
     }
     $this->setOutput($count, 'count');
     $this->setOutput($page, 'page');
     $this->setOutput($perpage, 'perpage');
     $this->setOutput($posts, 'posts');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:bbs.article.reply.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }
Пример #30
0
 /**
  * 回收站-回复
  */
 public function replyAction()
 {
     $threaddb = $params = array();
     list($keyword, $fid, $author, $createdTimeStart, $createdTimeEnd, $operator, $operateTimeStart, $operateTimeEnd) = $this->getInput(array('keyword', 'fid', 'author', 'created_time_start', 'created_time_end', 'operator', 'operate_time_start', 'operate_time_end'));
     $page = intval($this->getInput('page'));
     $page < 1 && ($page = 1);
     $perpage = 20;
     list($start, $limit) = Pw::page2limit($page, $perpage);
     Wind::import('SRV:recycle.vo.PwRecycleReplySo');
     $so = new PwRecycleReplySo();
     $so->orderbyCreatedTime(0);
     $url = array();
     if ($keyword) {
         $so->setKeywordOfTitle($keyword);
         $url['keyword'] = $keyword;
     }
     if ($author) {
         $so->setAuthor($author);
         $url['author'] = $author;
     }
     if ($fid) {
         $so->setFid($fid);
         $url['fid'] = $fid;
     }
     if ($createdTimeStart) {
         $so->setCreateTimeStart(Pw::str2time($createdTimeStart));
         $url['created_time_start'] = $createdTimeStart;
     }
     if ($createdTimeEnd) {
         $so->setCreateTimeEnd(Pw::str2time($createdTimeEnd));
         $url['created_time_end'] = $createdTimeEnd;
     }
     if ($operator) {
         $so->setOperator($operator);
         $url['operator'] = $operator;
     }
     if ($operateTimeStart) {
         $so->setOperatorTimeStart(Pw::str2time($operateTimeStart));
         $url['operate_time_start'] = $operateTimeStart;
     }
     if ($operateTimeEnd) {
         $so->setOperatorTimeEnd(Pw::str2time($operateTimeEnd));
         $url['operate_time_end'] = $operateTimeEnd;
     }
     $service = Wekit::load('recycle.PwReplyRecycle');
     $count = $service->countSearchRecord($so);
     $threaddb = $service->searchRecord($so);
     $this->setOutput($threaddb, 'threaddb');
     $this->setOutput(Wekit::load('forum.srv.PwForumService')->getForumOption($fid), 'option_html');
     $this->setOutput(Wekit::load('forum.PwForum')->getForumList(), 'forumname');
     $this->setOutput($page, 'page');
     $this->setOutput($perpage, 'perpage');
     $this->setOutput($count, 'count');
     $this->setOutput($url, 'url');
     // seo设置
     Wind::import('SRV:seo.bo.PwSeoBo');
     $seoBo = PwSeoBo::getInstance();
     $lang = Wind::getComponent('i18n');
     $seoBo->setCustomSeo($lang->getMessage('SEO:manage.recycle.reply.title'), '', '');
     Wekit::setV('seo', $seoBo);
 }