$nobbname = false; } else { $nobbname = true; } if (empty($metakeywords)) { $metakeywords = $article['title']; } if (empty($metadescription)) { $metadescription = $article['summary'] ? $article['summary'] : $article['title']; } list($seccodecheck, $secqaacheck) = seccheck('publish'); $catid = $article['catid']; if (!$_G['setting']['relatedlinkstatus']) { $_G['relatedlinks'] = get_related_link('article'); } else { $content['content'] = parse_related_link($content['content'], 'article'); } if (isset($_G['makehtml'])) { helper_makehtml::portal_article($cat, $article, $page); } portal_get_per_next_article($article); $tpldirectory = ''; $articleprimaltplname = $cat['articleprimaltplname']; if (strpos($articleprimaltplname, ':') !== false) { list($tpldirectory, $articleprimaltplname) = explode(':', $articleprimaltplname); } include_once template("diy:portal/view:{$catid}", NULL, $tpldirectory, NULL, $articleprimaltplname); function parseforumattach(&$post, $aids) { global $_G; if ($aids = array_unique($aids)) {
if (empty($navtitle)) { $navtitle = $blog['subject'] . ' - ' . lang('space', 'sb_blog', array('who' => $blog['username'])); $nobbname = false; } else { $nobbname = true; } if (empty($metakeywords)) { $metakeywords = $blogmeta_tag ? $blogmeta_tag : $blog['subject']; } if (empty($metadescription)) { $metadescription = $summary; } if (!$_G['setting']['relatedlinkstatus']) { $_G['relatedlinks'] = get_related_link('blog'); } else { $blog['message'] = parse_related_link($blog['message'], 'blog'); } include_once template("diy:home/space_blog_view"); } else { loadcache('blogcategory'); $category = $_G['cache']['blogcategory']; if (empty($_GET['view'])) { $_GET['view'] = 'we'; } $perpage = 10; $perpage = mob_perpage($perpage); $start = ($page - 1) * $perpage; ckstart($start, $perpage); $summarylen = 300; $classarr = array(); $list = array();
function viewthread_procpost($post, $lastvisit, $ordertype, $maxposition = 0) { global $_G, $rushreply; if (!$_G['forum_newpostanchor'] && $post['dateline'] > $lastvisit) { $post['newpostanchor'] = '<a name="newpost"></a>'; $_G['forum_newpostanchor'] = 1; } else { $post['newpostanchor'] = ''; } $post['lastpostanchor'] = $ordertype != 1 && $_G['forum_numpost'] == $_G['forum_thread']['replies'] || $ordertype == 1 && $_G['forum_numpost'] == $_G['forum_thread']['replies'] + 2 ? '<a name="lastpost"></a>' : ''; if (!$post['hotrecommended']) { if ($_G['forum_pagebydesc']) { if ($ordertype != 1) { $post['number'] = $_G['forum_numpost'] + $_G['forum_ppp2']--; } else { $post['number'] = $post['first'] == 1 ? 1 : $_G['forum_numpost'] - 1 - $_G['forum_ppp2']--; } } else { if ($ordertype != 1) { $post['number'] = ++$_G['forum_numpost']; } else { $post['number'] = $post['first'] == 1 ? 1 : --$_G['forum_numpost']; $post['number'] = $post['number'] - 1; } } } if ($post['existinfirstpage']) { if ($_G['forum_pagebydesc']) { $_G['forum_ppp2']--; } else { if ($ordertype != 1) { ++$_G['forum_numpost']; } else { --$_G['forum_numpost']; } } } if ($maxposition) { $post['number'] = $post['position']; } if ($post['hotrecommended']) { $post['number'] = -1; } if (!$_G['forum_thread']['special'] && !$rushreply && !$hiddenreplies && $_G['setting']['threadfilternum'] && getstatus($post['status'], 11)) { $post['isWater'] = true; if ($_G['setting']['hidefilteredpost'] && !$_G['forum']['noforumhidewater']) { $post['inblacklist'] = true; } } else { $_G['allblocked'] = false; } if ($post['inblacklist']) { $_G['blockedpids'][] = $post['pid']; } $_G['forum_postcount']++; $post['dbdateline'] = $post['dateline']; $post['dateline'] = dgmdate($post['dateline'], 'u', '9999', getglobal('setting/dateformat') . ' H:i:s'); $post['groupid'] = $_G['cache']['usergroups'][$post['groupid']] ? $post['groupid'] : 7; if ($post['username']) { $_G['forum_onlineauthors'][$post['authorid']] = 0; $post['usernameenc'] = rawurlencode($post['username']); $post['readaccess'] = $_G['cache']['usergroups'][$post['groupid']]['readaccess']; if ($_G['cache']['usergroups'][$post['groupid']]['userstatusby'] == 1) { $post['authortitle'] = $_G['cache']['usergroups'][$post['groupid']]['grouptitle']; $post['stars'] = $_G['cache']['usergroups'][$post['groupid']]['stars']; } $post['upgradecredit'] = false; if ($_G['cache']['usergroups'][$post['groupid']]['type'] == 'member' && $_G['cache']['usergroups'][$post['groupid']]['creditslower'] != 999999999) { $post['upgradecredit'] = $_G['cache']['usergroups'][$post['groupid']]['creditslower'] - $post['credits']; $post['upgradeprogress'] = 100 - ceil($post['upgradecredit'] / ($_G['cache']['usergroups'][$post['groupid']]['creditslower'] - $_G['cache']['usergroups'][$post['groupid']]['creditshigher']) * 100); $post['upgradeprogress'] = min(max($post['upgradeprogress'], 2), 100); } $post['taobaoas'] = addslashes($post['taobao']); $post['regdate'] = dgmdate($post['regdate'], 'd'); $post['lastdate'] = dgmdate($post['lastvisit'], 'd'); $post['authoras'] = !$post['anonymous'] ? ' ' . addslashes($post['author']) : ''; if ($post['medals']) { loadcache('medals'); foreach ($post['medals'] = explode("\t", $post['medals']) as $key => $medalid) { list($medalid, $medalexpiration) = explode("|", $medalid); if (isset($_G['cache']['medals'][$medalid]) && (!$medalexpiration || $medalexpiration > TIMESTAMP)) { $post['medals'][$key] = $_G['cache']['medals'][$medalid]; $post['medals'][$key]['medalid'] = $medalid; $_G['medal_list'][$medalid] = $_G['cache']['medals'][$medalid]; } else { unset($post['medals'][$key]); } } } $post['avatar'] = avatar($post['authorid']); $post['groupicon'] = $post['avatar'] ? g_icon($post['groupid'], 1) : ''; $post['banned'] = $post['status'] & 1; $post['warned'] = ($post['status'] & 2) >> 1; } else { if (!$post['authorid']) { $post['useip'] = substr($post['useip'], 0, strrpos($post['useip'], '.')) . '.x'; } } $post['attachments'] = array(); $post['imagelist'] = $post['attachlist'] = ''; if ($post['attachment']) { if (!empty($_G['setting']['guestviewthumb']['flag']) && !$_G['uid'] || $_G['group']['allowgetattach'] || $_G['group']['allowgetimage']) { $_G['forum_attachpids'][] = $post['pid']; $post['attachment'] = 0; if (preg_match_all("/\\[attach\\](\\d+)\\[\\/attach\\]/i", $post['message'], $matchaids)) { $_G['forum_attachtags'][$post['pid']] = $matchaids[1]; } } else { $post['message'] = preg_replace("/\\[attach\\](\\d+)\\[\\/attach\\]/i", '', $post['message']); } } if ($_G['setting']['ratelogrecord'] && $post['ratetimes']) { $_G['forum_cachepid'][$post['pid']] = $post['pid']; } if ($_G['setting']['commentnumber'] && ($post['first'] && $_G['setting']['commentfirstpost'] || !$post['first']) && $post['comment']) { $_G['forum_cachepid'][$post['pid']] = $post['pid']; } $post['allowcomment'] = $_G['setting']['commentnumber'] && in_array(1, $_G['setting']['allowpostcomment']) && ($_G['setting']['commentpostself'] || $post['authorid'] != $_G['uid']) && ($post['first'] && $_G['setting']['commentfirstpost'] && in_array($_G['group']['allowcommentpost'], array(1, 3)) || !$post['first'] && in_array($_G['group']['allowcommentpost'], array(2, 3))); $forum_allowbbcode = $_G['forum']['allowbbcode'] ? -$post['groupid'] : 0; $post['signature'] = $post['usesig'] ? $_G['setting']['sigviewcond'] ? strlen($post['message']) > $_G['setting']['sigviewcond'] ? $post['signature'] : '' : $post['signature'] : ''; $imgcontent = $post['first'] ? getstatus($_G['forum_thread']['status'], 15) : 0; if (!defined('IN_ARCHIVER')) { if ($post['first']) { if (!defined('IN_MOBILE')) { $messageindex = false; if (strpos($post['message'], '[/index]') !== FALSE) { $post['message'] = preg_replace("/\\s?\\[index\\](.+?)\\[\\/index\\]\\s?/ies", "parseindex('\\1', '{$post['pid']}')", $post['message']); $messageindex = true; unset($_GET['threadindex']); } if (strpos($post['message'], '[page]') !== FALSE) { if ($_GET['cp'] != 'all') { $postbg = ''; if (strpos($post['message'], '[/postbg]') !== FALSE) { preg_match("/\\s?\\[postbg\\]\\s*([^\\[\\<\r\n;'\"\\?\\(\\)]+?)\\s*\\[\\/postbg\\]\\s?/is", $post['message'], $r); $postbg = $r[0]; } $messagearray = explode('[page]', $post['message']); $cp = max(intval($_GET['cp']), 1); $post['message'] = $messagearray[$cp - 1]; if ($postbg && strpos($post['message'], '[/postbg]') === FALSE) { $post['message'] = $postbg . $post['message']; } unset($postbg); } else { $cp = 0; $post['message'] = preg_replace("/\\s?\\[page\\]\\s?/is", '', $post['message']); } if ($_GET['cp'] != 'all' && strpos($post['message'], '[/index]') === FALSE && empty($_GET['threadindex']) && !$messageindex) { $_G['forum_posthtml']['footer'][$post['pid']] .= '<div id="threadpage"></div><script type="text/javascript" reload="1">show_threadpage(' . $post['pid'] . ', ' . $cp . ', ' . count($messagearray) . ', ' . ($_GET['from'] == 'preview' ? '1' : '0') . ');</script>'; } } } } if (!empty($_GET['threadindex'])) { $_G['forum_posthtml']['header'][$post['pid']] .= '<div id="threadindex"></div><script type="text/javascript" reload="1">show_threadindex(0, ' . ($_GET['from'] == 'preview' ? '1' : '0') . ');</script>'; } if (!$imgcontent) { $post['message'] = discuzcode($post['message'], $post['smileyoff'], $post['bbcodeoff'], $post['htmlon'] & 1, $_G['forum']['allowsmilies'], $forum_allowbbcode, $_G['forum']['allowimgcode'] && $_G['setting']['showimages'] ? 1 : 0, $_G['forum']['allowhtml'], $_G['forum']['jammer'] && $post['authorid'] != $_G['uid'] ? 1 : 0, 0, $post['authorid'], $_G['cache']['usergroups'][$post['groupid']]['allowmediacode'] && $_G['forum']['allowmediacode'], $post['pid'], $_G['setting']['lazyload'], $post['dbdateline'], $post['first']); if ($post['first']) { $_G['relatedlinks'] = ''; $relatedtype = !$_G['forum_thread']['isgroup'] ? 'forum' : 'group'; if (!$_G['setting']['relatedlinkstatus']) { $_G['relatedlinks'] = get_related_link($relatedtype); } else { $post['message'] = parse_related_link($post['message'], $relatedtype); } if (strpos($post['message'], '[/begin]') !== FALSE) { $post['message'] = preg_replace("/\\[begin(=\\s*([^\\[\\<\r\n]*?)\\s*,(\\d*),(\\d*),(\\d*),(\\d*))?\\]\\s*([^\\[\\<\r\n]+?)\\s*\\[\\/begin\\]/ies", $_G['cache']['usergroups'][$post['groupid']]['allowbegincode'] ? "parsebegin('\\2', '\\7', '\\3', '\\4', '\\5', '\\6');" : '', $post['message']); } } } } if (defined('IN_ARCHIVER') || defined('IN_MOBILE') || !$post['first']) { if (strpos($post['message'], '[page]') !== FALSE) { $post['message'] = preg_replace("/\\s?\\[page\\]\\s?/is", '', $post['message']); } if (strpos($post['message'], '[/index]') !== FALSE) { $post['message'] = preg_replace("/\\s?\\[index\\](.+?)\\[\\/index\\]\\s?/is", '', $post['message']); } if (strpos($post['message'], '[/begin]') !== FALSE) { $post['message'] = preg_replace("/\\[begin(=\\s*([^\\[\\<\r\n]*?)\\s*,(\\d*),(\\d*),(\\d*),(\\d*))?\\]\\s*([^\\[\\<\r\n]+?)\\s*\\[\\/begin\\]/ies", '', $post['message']); } } if ($imgcontent) { $post['message'] = '<img id="threadimgcontent" src="./' . stringtopic('', $post['tid']) . '">'; } $_G['forum_firstpid'] = intval($_G['forum_firstpid']); $post['numbercard'] = viewthread_numbercard($post); $post['mobiletype'] = getstatus($post['status'], 4) ? base_convert(getstatus($post['status'], 10) . getstatus($post['status'], 9) . getstatus($post['status'], 8), 2, 10) : 0; return $post; }
function viewthread_procpost($post, $lastvisit, $ordertype, $maxposition = 0) { global $_G, $rushreply; if (!$_G['forum_newpostanchor'] && $post['dateline'] > $lastvisit) { $post['newpostanchor'] = '<a name="newpost"></a>'; $_G['forum_newpostanchor'] = 1; } else { $post['newpostanchor'] = ''; } $post['lastpostanchor'] = $ordertype != 1 && $_G['forum_numpost'] == $_G['forum_thread']['replies'] || $ordertype == 1 && $_G['forum_numpost'] == $_G['forum_thread']['replies'] + 2 ? '<a name="lastpost"></a>' : ''; if ($_G['forum_pagebydesc']) { if ($ordertype != 1) { $post['number'] = $_G['forum_numpost'] + $_G['forum_ppp2']--; } else { $post['number'] = $post['first'] == 1 ? 1 : $_G['forum_numpost'] - 1 - $_G['forum_ppp2']--; } } else { if ($ordertype != 1) { $post['number'] = ++$_G['forum_numpost']; } else { $post['number'] = $post['first'] == 1 ? 1 : --$_G['forum_numpost']; $post['number'] = $post['number'] - 1; } } if ($maxposition) { $post['number'] = $post['position']; } $_G['forum_postcount']++; $post['dbdateline'] = $post['dateline']; $post['dateline'] = dgmdate($post['dateline'], 'u', '9999', getglobal('setting/dateformat') . ' H:i:s'); $post['groupid'] = $_G['cache']['usergroups'][$post['groupid']] ? $post['groupid'] : 7; if ($post['username']) { $_G['forum_onlineauthors'][$post['authorid']] = 0; $post['usernameenc'] = rawurlencode($post['username']); $post['readaccess'] = $_G['cache']['usergroups'][$post['groupid']]['readaccess']; if ($_G['cache']['usergroups'][$post['groupid']]['userstatusby'] == 1) { $post['authortitle'] = $_G['cache']['usergroups'][$post['groupid']]['grouptitle']; $post['stars'] = $_G['cache']['usergroups'][$post['groupid']]['stars']; } $post['upgradecredit'] = false; if ($_G['cache']['usergroups'][$post['groupid']]['type'] == 'member' && $_G['cache']['usergroups'][$post['groupid']]['creditslower'] != 999999999) { $post['upgradecredit'] = $_G['cache']['usergroups'][$post['groupid']]['creditslower'] - $post['credits']; } $post['taobaoas'] = addslashes($post['taobao']); $post['regdate'] = dgmdate($post['regdate'], 'd'); $post['lastdate'] = dgmdate($post['lastvisit'], 'd'); $post['authoras'] = !$post['anonymous'] ? ' ' . addslashes($post['author']) : ''; if ($post['medals']) { loadcache('medals'); foreach ($post['medals'] = explode("\t", $post['medals']) as $key => $medalid) { list($medalid, $medalexpiration) = explode("|", $medalid); if (isset($_G['cache']['medals'][$medalid]) && (!$medalexpiration || $medalexpiration > TIMESTAMP)) { $post['medals'][$key] = $_G['cache']['medals'][$medalid]; $post['medals'][$key]['medalid'] = $medalid; $_G['medal_list'][$medalid] = $_G['cache']['medals'][$medalid]; } else { unset($post['medals'][$key]); } } } $post['avatar'] = avatar($post['authorid']); $post['groupicon'] = $post['avatar'] ? g_icon($post['groupid'], 1) : ''; $post['banned'] = $post['status'] & 1; $post['warned'] = ($post['status'] & 2) >> 1; } else { if (!$post['authorid']) { $post['useip'] = substr($post['useip'], 0, strrpos($post['useip'], '.')) . '.x'; } } $post['attachments'] = array(); $post['imagelist'] = $post['attachlist'] = ''; if ($post['attachment']) { if ($_G['group']['allowgetattach'] || $_G['group']['allowgetimage']) { $_G['forum_attachpids'][] = $post['pid']; $post['attachment'] = 0; if (preg_match_all("/\\[attach\\](\\d+)\\[\\/attach\\]/i", $post['message'], $matchaids)) { $_G['forum_attachtags'][$post['pid']] = $matchaids[1]; } } else { $post['message'] = preg_replace("/\\[attach\\](\\d+)\\[\\/attach\\]/i", '', $post['message']); } } if ($_G['setting']['ratelogrecord'] && $post['ratetimes']) { $_G['forum_cachepid'][$post['pid']] = $post['pid']; } if ($_G['setting']['commentnumber'] && ($post['first'] && $_G['setting']['commentfirstpost'] || !$post['first']) && $post['comment']) { $_G['forum_cachepid'][$post['pid']] = $post['pid']; } $post['allowcomment'] = $_G['setting']['commentnumber'] && in_array(1, $_G['setting']['allowpostcomment']) && ($_G['setting']['commentpostself'] || $post['authorid'] != $_G['uid']) && ($post['first'] && $_G['setting']['commentfirstpost'] && in_array($_G['group']['allowcommentpost'], array(1, 3)) || !$post['first'] && in_array($_G['group']['allowcommentpost'], array(2, 3))); $forum_allowbbcode = $_G['forum']['allowbbcode'] ? -$post['groupid'] : 0; $post['signature'] = $post['usesig'] ? $_G['setting']['sigviewcond'] ? strlen($post['message']) > $_G['setting']['sigviewcond'] ? $post['signature'] : '' : $post['signature'] : ''; if (!defined('IN_ARCHIVER')) { $post['message'] = discuzcode($post['message'], $post['smileyoff'], $post['bbcodeoff'], $post['htmlon'] & 1, $_G['forum']['allowsmilies'], $forum_allowbbcode, $_G['forum']['allowimgcode'] && $_G['setting']['showimages'] ? 1 : 0, $_G['forum']['allowhtml'], $_G['forum']['jammer'] && $post['authorid'] != $_G['uid'] ? 1 : 0, 0, $post['authorid'], $_G['cache']['usergroups'][$post['groupid']]['allowmediacode'] && $_G['forum']['allowmediacode'], $post['pid'], $_G['setting']['lazyload'], $post['dbdateline']); if ($post['first']) { $_G['relatedlinks'] = ''; $relatedtype = !$_G['forum_thread']['isgroup'] ? 'forum' : 'group'; if (!$_G['setting']['relatedlinkstatus']) { $_G['relatedlinks'] = get_related_link($relatedtype); } else { $post['message'] = parse_related_link($post['message'], $relatedtype); } } } $_G['forum_firstpid'] = intval($_G['forum_firstpid']); $post['custominfo'] = viewthread_custominfo($post); $post['mobiletype'] = getstatus($post['status'], 4) ? base_convert(getstatus($post['status'], 10) . getstatus($post['status'], 9) . getstatus($post['status'], 8), 2, 10) : 0; return $post; }