123 lines
5.0 KiB
PHP
123 lines
5.0 KiB
PHP
<?php
|
|
|
|
/**
|
|
* [Discuz!] (C)2001-2099 Comsenz Inc.
|
|
* This is NOT a freeware, use is subject to license terms
|
|
*
|
|
* $Id: collection_view.php 33065 2013-04-16 10:06:07Z chenmengshu $
|
|
*/
|
|
|
|
if(!defined('IN_DISCUZ')) {
|
|
exit('Access Denied');
|
|
}
|
|
|
|
$oplist = array('comment', 'followers', 'related');
|
|
if(!in_array($op, $oplist)) {
|
|
$op = '';
|
|
}
|
|
$fromoplist = array('my', 'all');
|
|
$fromop = (!in_array($_GET['fromop'], $fromoplist)) ? '' : $_GET['fromop'];
|
|
$fromtid = dintval($_GET['fromtid']);
|
|
$tids = $fids = array();
|
|
|
|
if(!$_G['collection']['ctid']) {
|
|
showmessage('collection_permission_deny');
|
|
}
|
|
|
|
$navtitle = $_G['collection']['name'].' - '.lang('core', 'title_collection');
|
|
|
|
$permission = checkcollectionperm($_G['collection'], $_G['uid']);
|
|
$avgrate = number_format($_G['collection']['rate'], 1);
|
|
|
|
$start = ($page-1)*$tpp;
|
|
|
|
$collectionfollowdata = C::t('forum_collectionfollow')->fetch_by_ctid_uid($ctid, $_G['uid']);
|
|
$collectionteamworker = C::t('forum_collectionteamworker')->fetch_all_by_ctid($_G['collection']['ctid']);
|
|
|
|
$_G['collection']['arraykeyword'] = parse_keyword($_G['collection']['keyword'], false, false);
|
|
if($_G['collection']['arraykeyword']) {
|
|
foreach ($_G['collection']['arraykeyword'] as $kid=>$s_keyword) {
|
|
$metakeywords .= ($metakeywords ? ',' : '').$s_keyword;
|
|
$_G['collection']['urlkeyword'][$kid] = rawurlencode($s_keyword);
|
|
}
|
|
}
|
|
$metadescription = $_G['collection']['name'];
|
|
|
|
if($_G['collection']['ratenum']) {
|
|
$star = imgdisplayrate($avgrate);
|
|
}
|
|
|
|
if(!$op || $op == 'related') {
|
|
$isteamworkers = in_array($_G['uid'], array_keys($collectionteamworker));
|
|
|
|
$search_status = FALSE;
|
|
|
|
if(!$op && $op != 'related') {
|
|
if($_G['collection']['uid'] == $_G['uid']) {
|
|
$lastvisit = $_G['collection']['lastvisit'];
|
|
if($_G['collection']['lastupdate'] >= $lastvisit) {
|
|
C::t('forum_collection')->update($ctid, array('lastvisit' => TIMESTAMP), true, true);
|
|
}
|
|
} elseif($isteamworkers) {
|
|
$lastvisit = $collectionteamworker[$_G['uid']]['lastvisit'];
|
|
if($_G['collection']['lastupdate'] >= $lastvisit) {
|
|
C::t('forum_collectionteamworker')->update($ctid, $_G['uid'], array('lastvisit' => TIMESTAMP), true, true);
|
|
}
|
|
} elseif($collectionfollowdata['ctid']) {
|
|
$lastvisit = $collectionfollowdata['lastvisit'];
|
|
if($_G['collection']['lastupdate'] >= $lastvisit) {
|
|
C::t('forum_collectionfollow')->update($ctid, $_G['uid'], array('lastvisit' => TIMESTAMP), true, true);
|
|
}
|
|
} else {
|
|
$lastvisit = null;
|
|
}
|
|
|
|
$collectiontids = C::t('forum_collectionthread')->fetch_all_by_ctid($_G['collection']['ctid'], $start, $tpp);
|
|
$tids = array_keys($collectiontids);
|
|
$threadlist = C::t('forum_thread')->fetch_all_by_tid($tids);
|
|
collectionThread($threadlist, false, $lastvisit, $collectiontids);
|
|
|
|
$multipage = multi($_G['collection']['threadnum'], $tpp, $page, "forum.php?mod=collection&action=view&ctid={$_G['collection']['ctid']}");
|
|
|
|
$userCollections = C::t('forum_collection')->fetch_all_by_uid($_G['collection']['uid'], 0, 5, $_G['collection']['ctid']);
|
|
}
|
|
|
|
if($_G['collection']['commentnum'] > 0) {
|
|
$commentlist = C::t('forum_collectioncomment')->fetch_all_by_ctid($_G['collection']['ctid'], 0, 5);
|
|
foreach($commentlist as &$curvalue) {
|
|
$curvalue['dateline'] = dgmdate($curvalue['dateline'], 'u', '9999', getglobal('setting/dateformat'));
|
|
$curvalue['message'] = cutstr($curvalue['message'], 50);
|
|
$curvalue['rateimg'] = imgdisplayrate($curvalue['rate']);
|
|
}
|
|
|
|
$memberrate = C::t('forum_collectioncomment')->fetch_rate_by_ctid_uid($_G['collection']['ctid'], $_G['uid']);
|
|
}
|
|
$followers = C::t('forum_collectionfollow')->fetch_all($ctid, true, 0, 6);
|
|
|
|
include template('forum/collection_view');
|
|
} elseif($op == 'comment') {
|
|
$navtitle = lang('core', 'title_collection_comment_list').' - '.$navtitle;
|
|
if($_G['collection']['commentnum'] > 0) {
|
|
$start = ($page-1)*$_G['setting']['postperpage'];
|
|
|
|
$commentlist = C::t('forum_collectioncomment')->fetch_all_by_ctid($_G['collection']['ctid'], $start, $_G['setting']['postperpage']);
|
|
foreach($commentlist as &$curvalue) {
|
|
$curvalue['dateline'] = dgmdate($curvalue['dateline'], 'u', '9999', getglobal('setting/dateformat'));
|
|
$curvalue['rateimg'] = imgdisplayrate($curvalue['rate']);
|
|
}
|
|
|
|
$multipage = multi($_G['collection']['commentnum'], $_G['setting']['postperpage'], $page, "forum.php?mod=collection&action=view&op=comment&ctid={$_G['collection']['ctid']}");
|
|
|
|
$memberrate = C::t('forum_collectioncomment')->fetch_rate_by_ctid_uid($_G['collection']['ctid'], $_G['uid']);
|
|
}
|
|
include template('forum/collection_comment');
|
|
} elseif($op == 'followers') {
|
|
$navtitle = lang('core', 'title_collection_followers_list').' - '.$navtitle;
|
|
$cmemberperpage = 28;
|
|
$start = ($page-1)*$cmemberperpage;
|
|
$followers = C::t('forum_collectionfollow')->fetch_all($ctid, true, $start, $cmemberperpage);
|
|
$multipage = multi($_G['collection']['follownum'], $cmemberperpage, $page, "forum.php?mod=collection&action=view&op=followers&ctid={$_G['collection']['ctid']}");
|
|
|
|
include template('forum/collection_followers');
|
|
}
|
|
?>
|