//是否安全校验,1不校验 2为必校验,推荐 $key = $jieqiPayset[JIEQI_PAY_TYPE]['paykey']; //私钥值。即商户登录15173快钱系统后设定的 商户密钥 $pid_15173account = $jieqiPayset[JIEQI_PAY_TYPE]['pid_15173account']; //代理/合作伙伴商户编号 $attach = "15173支付"; //注意正确的参数串拼凑顺序 $text = "bargainor_id=" . $merchant_id . "&sp_billno=" . $orderid . "&pay_type=" . $_REQUEST['paytype'] . "&return_url=" . $merchant_url . "&attach=" . $attach . "&key=" . $key; //md5加密 $mac = strtoupper(md5($text)); //对参数串进行私钥加密取得值 //echo $text; //exit(); include_once JIEQI_ROOT_PATH . '/header.php'; include_once JIEQI_ROOT_PATH . '/lib/template/template.php'; $jieqiTpl =& JieqiTpl::getInstance(); $jieqiTpl->assign('url_pay', $jieqiPayset[JIEQI_PAY_TYPE]['payurl']); $jieqiTpl->assign('buyname', $_SESSION['jieqiUserName']); $jieqiTpl->assign('egold', $_REQUEST['egold']); $jieqiTpl->assign('egoldname', JIEQI_EGOLD_NAME); $jieqiTpl->assign('money', sprintf('%0.2f', $money / 100)); $jieqiTpl->assign('merchant_id', $merchant_id); $jieqiTpl->assign('orderid', $orderid); $jieqiTpl->assign('paytype', $_REQUEST['paytype']); //$jieqiPayset[JIEQI_PAY_TYPE]['paytype'] $jieqiTpl->assign('amount', $amount); $jieqiTpl->assign('attach', $attach); $jieqiTpl->assign('currency', $currency); $jieqiTpl->assign('merchant_url', $merchant_url); $jieqiTpl->assign('notify_url', $jieqiPayset[JIEQI_PAY_TYPE]['paynotify']); $jieqiTpl->assign('commodity_info', $commodity_info);
function makefulltext($dynamic = false, $show = false, $vid = 0) { if (JIEQI_MODULE_VTYPE == '' || JIEQI_MODULE_VTYPE == 'Free') { return true; } global $jieqiConfigs; global $jieqiSort; global $jieqiTpl; global $jieqi_file_postfix; if (!isset($jieqiSort['article'])) { jieqi_getconfigs('article', 'sort'); } if (!in_array($jieqiConfigs['article']['htmlfile'], array('.html', '.htm', '.shtml'))) { $jieqiConfigs['article']['htmlfile'] = '.html'; } if (!is_object($jieqiTpl)) { include_once JIEQI_ROOT_PATH . '/lib/template/template.php'; $jieqiTpl =& JieqiTpl::getInstance(); } if (!$this->isload) { $this->loadOPF(); } //生成index.html $articlename = jieqi_htmlstr($this->metas['dc:Title']); $jieqiTpl->assign('dynamic_url', ARTICLE_DYNAMIC_URL); $jieqiTpl->assign('static_url', ARTICLE_STATIC_URL); $jieqiTpl->assign('article_title', $articlename); $jieqiTpl->assign('book_title', '<a name="articletitle">' . $articlename . '</a>'); $jieqiTpl->assign('copy_info', JIEQI_META_COPYRIGHT); $jieqiTpl->assign('sortid', intval($this->metas['dc:Sortid'])); if (!empty($jieqiSort['article'][$this->metas['dc:Sortid']]['caption'])) { $jieqiTpl->assign('sortname', $jieqiSort['article'][$this->metas['dc:Sortid']]['caption']); } $jieqiTpl->assign('articleid', $this->id); $jieqiTpl->assign('chapterid', 0); $jieqiTpl->assign('authorid', intval($this->metas['dc:Creatorid'])); $jieqiTpl->assign('author', jieqi_htmlstr($this->metas['dc:Creator'])); $jieqiTpl->assign('fullflag', intval($this->metas['dc:Fullflag'])); $jieqiTpl->assign('keywords', jieqi_htmlstr($this->metas['dc:Subject'])); $jieqiTpl->assign('intro', jieqi_htmlstr($this->metas['dc:Description'])); $jieqiTpl->assign('posterid', intval($this->metas['dc:Contributorid'])); $jieqiTpl->assign('poster', jieqi_htmlstr($this->metas['dc:Contributor'])); $jieqiTpl->assign('typeid', intval($this->metas['dc:Typeid'])); $jieqiTpl->assign('permission', intval($this->metas['dc:Permission'])); $jieqiTpl->assign('firstflag', intval($this->metas['dc:Firstflag'])); $jieqiTpl->assign('imgflag', intval($this->metas['dc:Imgflag'])); $jieqiTpl->assign('power', intval($this->metas['dc:Power'])); $articletype = intval($this->metas['dc:Articletype']); $jieqiTpl->assign('articletype', $articletype); if (($articletype & 1) > 0) { $jieqiTpl->assign('hasebook', 1); } else { $jieqiTpl->assign('hasebook', 0); } if (($articletype & 2) > 0) { $jieqiTpl->assign('hasobook', 1); } else { $jieqiTpl->assign('hasobook', 0); } if (($articletype & 4) > 0) { $jieqiTpl->assign('hastbook', 1); } else { $jieqiTpl->assign('hastbook', 0); } $jieqiTpl->assign('new_url', JIEQI_LOCAL_URL); //目录阅读 $jieqiTpl->assign('url_indexpage', jieqi_uploadurl($jieqiConfigs['article']['htmldir'], $jieqiConfigs['article']['htmlurl'], 'article', ARTICLE_STATIC_URL) . jieqi_getsubdir($this->id) . '/' . $this->id . '/index' . $jieqiConfigs['article']['htmlfile']); //全文阅读 $jieqiTpl->assign('url_fullpage', jieqi_uploadurl($jieqiConfigs['article']['fulldir'], $jieqiConfigs['article']['fullurl'], 'article', ARTICLE_STATIC_URL) . jieqi_getsubdir($this->id) . '/' . $this->id . $jieqiConfigs['article']['htmlfile']); //打包下载 $jieqiTpl->assign('url_download', jieqi_uploadurl($jieqiConfigs['article']['zipdir'], $jieqiConfigs['article']['zipurl'], 'article', ARTICLE_STATIC_URL) . jieqi_getsubdir($this->id) . '/' . $this->id . $jieqi_file_postfix['zip']); //自己页面 if ($show) { $jieqiTpl->assign('url_thispage', ARTICLE_STATIC_URL . '/reader.php?aid=' . $this->id); } else { $jieqiTpl->assign('url_thispage', $this->getDir('fulldir', false) . '/' . $this->id . $jieqiConfigs['article']['htmlfile']); } $indexrows = array(); $idx = 0; $i = 0; if (isset($jieqiConfigs['article']['indexcols']) && $jieqiConfigs['article']['indexcols'] > 0) { $cols = $jieqiConfigs['article']['indexcols']; } else { $cols = 4; } $chapters = array(); $n = 0; $txtdir = $this->getDir('txtdir', true, false); $vname = ''; if ($vid > 0) { $cstart = false; } else { $cstart = true; } foreach ($this->chapters as $k => $chapter) { //分卷 $chapterid = $this->getCid($this->chapters[$k]['href']); if ($vid > 0) { if ($chapterid == $vid) { $cstart = true; } elseif ($cstart == true && $chapter['content-type'] == 'volume') { $cstart = false; } if (!$cstart) { continue; } } if ($chapter['content-type'] == 'volume') { if ($i > 0) { $idx++; } $i = 0; $indexrows[$idx]['ctype'] = 'volume'; $indexrows[$idx]['vurl'] = ''; $indexrows[$idx]['vname'] = $chapter['id']; $idx++; if ($chapter['id'] != $vname) { $vname = $chapter['id']; } } else { $i++; $indexrows[$idx]['ctype'] = 'chapter'; $indexrows[$idx]['cname' . $i] = $chapter['id']; $indexrows[$idx]['curl' . $i] = '#' . $chapterid; if ($i == $cols) { $idx++; $i = 0; } if (!empty($vname)) { $tmpvar = $vname . ' '; } else { $tmpvar = ''; } $chapters[$n]['title'] = '<a name="' . $chapterid . '">' . $tmpvar . $chapter['id'] . '</a>'; if (file_exists($txtdir . '/' . $chapterid . $jieqi_file_postfix['txt'])) { $chapters[$n]['content'] = jieqi_htmlstr(jieqi_readfile($txtdir . '/' . $chapterid . $jieqi_file_postfix['txt'])); //使链接可点击 $patterns = array("/([^]_a-z0-9-=\"'\\/])([a-z]+?):\\/\\/([a-z0-9\\/\\-_+=.~!%@?#%&;:\$\\│]+)/i", "/([^]_a-z0-9-=\"'\\/])www\\.([a-z0-9\\-]+)\\.([a-z0-9\\/\\-_+=.~!%@?#%&;:\$\\│]+)/i", "/([^]_a-z0-9-=\"'\\/])ftp\\.([a-z0-9\\-]+)\\.([a-z0-9\\/\\-_+=.~!%@?#%&;:\$\\│]+)/i", "/([^]_a-z0-9-=\"'\\/:\\.])([a-z0-9\\-_\\.]+?)@([a-z0-9\\/\\-_+=.~!%@?#%&;:\$\\│]+)/i"); $replacements = array("\\1<a href=\"\\2://\\3\" target=\"_blank\">\\2://\\3</a>", "\\1<a href=\"http://www.\\2.\\3\" target=\"_blank\">www.\\2.\\3</a>", "\\1<a href=\"ftp://ftp.\\2.\\3\" target=\"_blank\">ftp.\\2.\\3</a>", "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>"); $chapters[$n]['content'] = preg_replace($patterns, $replacements, $chapters[$n]['content']); } else { $chapters[$n]['content'] = ''; } $attachurl = jieqi_uploadurl($jieqiConfigs['article']['attachdir'], $jieqiConfigs['article']['attachurl'], 'article') . jieqi_getsubdir($this->id) . '/' . $this->id . '/' . $chapterid; if (!$jieqiConfigs['article']['packdbattach']) { //检查附件(从文件) $attachdir = jieqi_uploadpath($jieqiConfigs['article']['attachdir'], 'article') . jieqi_getsubdir($this->id) . '/' . $this->id . '/' . $chapterid; if (is_dir($attachdir)) { $attachimage = ''; $attachfile = ''; $files = array(); $dirhandle = @opendir($attachdir); while ($file = @readdir($dirhandle)) { if ($file != '.' && $file != '..') { $files[] = $file; } } @closedir($dirhandle); sort($files); foreach ($files as $file) { if (is_file($attachdir . '/' . $file)) { $url = $attachurl . '/' . $file; if (eregi("\\.(gif|jpg|jpeg|png|bmp)\$", $file)) { $attachimage .= '<div class="divimage" id="' . $file . '" title="' . $url . '"><a style="cursor: pointer;" onclick="imgclickshow(\'' . $file . '\', \'' . $url . '\')">' . $url . '</a>(' . ceil(filesize($attachdir . '/' . $file) / 1024) . 'K)</div>'; } else { $attachfile .= '<strong>file:</strong><a href="' . $url . '">' . $url . '</a>(' . ceil(filesize($attachdir . '/' . $file) / 1024) . 'K)<br /><br />'; } } } if (!empty($attachimage) || !empty($attachfile)) { if (!empty($chapters[$n]['content'])) { $chapters[$n]['content'] .= '<br /><br />'; } $chapters[$n]['content'] .= $attachimage . $attachfile; } } } else { //检查附件,从数据库 global $package_query; $sql = "SELECT attachment FROM " . jieqi_dbprefix('article_chapter') . " WHERE chapterid=" . intval($chapterid); $res = $package_query->execute($sql); $row = $package_query->db->fetchArray($res); $attachary = array(); if (!empty($row['attachment'])) { $attachary = unserialize($row['attachment']); } if (is_array($attachary) && count($attachary) > 0) { $attachimage = ''; $attachfile = ''; foreach ($attachary as $attachvar) { $url = $attachurl . '/' . $attachvar['attachid'] . '.' . $attachvar['postfix']; if ($attachvar['class'] == 'image') { $attachimage .= '<strong>image:</strong><a href="' . $url . '" target="_blank">' . $url . '</a>(' . ceil($attachvar['size'] / 1024) . 'K)<br /><br />'; } else { $attachfile .= '<strong>file:</strong><a href="' . $url . '">' . $url . '</a>(' . ceil($attachvar['size'] / 1024) . 'K)<br /><br />'; } } if (!empty($attachimage) || !empty($attachfile)) { if (!empty($chapters[$n]['content'])) { $chapters[$n]['content'] .= '<br /><br />'; } $chapters[$n]['content'] .= $attachimage . $attachfile; } } } $n++; } } $jieqiTpl->assign_by_ref('indexrows', $indexrows); $jieqiTpl->assign_by_ref('chapters', $chapters); $jieqiTpl->assign('articlesubdir', jieqi_getsubdir($this->id)); $jieqiTpl->assign('url_articleinfo', jieqi_geturl('article', 'article', $this->id, 'info')); $jieqiTpl->assign('url_bookroom', ARTICLE_DYNAMIC_URL . '/'); $jieqiTpl->setCaching(0); if ($show) { $jieqiTpl->display($GLOBALS['jieqiModules']['article']['path'] . '/templates/fulltext.html'); } else { $htmldir = $this->getDir('fulldir', false); $jieqiTpl->assign('jieqi_charset', JIEQI_SYSTEM_CHARSET); jieqi_writefile($htmldir . '/' . $this->id . $jieqiConfigs['article']['htmlfile'], $jieqiTpl->fetch($GLOBALS['jieqiModules']['article']['path'] . '/templates/fulltext.html')); } }
function makestaticinfo($article_id) { global $jieqiConfigs; global $jieqiSort; global $jieqiTpl; global $jieqiBlocks; global $jieqi_file_postfix; global $jieqiOption; if (!is_object($jieqiTpl)) { $jieqiTpl =& JieqiTpl::getInstance(); } if (empty($article_id) || !is_numeric($article_id)) { return false; } $article_handler =& JieqiArticleHandler::getInstance('JieqiArticleHandler'); $article = $article_handler->get($article_id); if (!$article) { return false; } //包含区块参数(定制) jieqi_getconfigs(JIEQI_MODULE_NAME, 'sort'); jieqi_getconfigs(JIEQI_MODULE_NAME, 'configs'); $jieqi_pagetitle = $article->getVar('articlename'); if ($article->getVar('lastvolume') != '') { $jieqi_pagetitle .= '-' . $article->getVar('lastvolume'); } $jieqi_pagetitle .= '-' . $article->getVar('lastchapter') . '-' . JIEQI_SITE_NAME; $jieqiTpl->assign('jieqi_pagetitle', $jieqi_pagetitle); $article_static_url = empty($jieqiConfigs['article']['staticurl']) ? $GLOBALS['jieqiModules']['article']['url'] : $jieqiConfigs['article']['staticurl']; $article_dynamic_url = empty($jieqiConfigs['article']['dynamicurl']) ? $GLOBALS['jieqiModules']['article']['url'] : $jieqiConfigs['article']['dynamicurl']; $jieqiTpl->assign('article_static_url', $article_static_url); $jieqiTpl->assign('article_dynamic_url', $article_dynamic_url); $jieqiTpl->assign('articlename', $article->getVar('articlename')); $jieqiTpl->assign('postdate', date('Y-m-d', $article->getVar('postdate'))); $jieqiTpl->assign('lastupdate', date('Y-m-d', $article->getVar('lastupdate'))); if ($article->getVar('authorid') > 0) { $jieqiTpl->assign('author', '<a href="' . jieqi_geturl('system', 'user', $article->getVar('authorid')) . '" target="_blank">' . $article->getVar('author') . '</a>'); } else { $jieqiTpl->assign('author', $article->getVar('author')); } if ($article->getVar('agentid') > 0) { $jieqiTpl->assign('agent', '<a href="' . jieqi_geturl('system', 'user', $article->getVar('agentid')) . '" target="_blank">' . $article->getVar('agent') . '</a>'); } else { $jieqiTpl->assign('agent', $article->getVar('agent')); } $jieqiTpl->assign('sortid', $article->getVar('sortid')); $jieqiTpl->assign('sort', $jieqiSort['article'][$article->getVar('sortid')]['caption']); $jieqiTpl->assign('intro', $article->getVar('intro')); $jieqiTpl->assign('notice', $article->getVar('notice')); $imgflag = $article->getVar('imgflag'); //小图 if (($imgflag & 1) > 0) { $jieqiTpl->assign('hasimage', 1); $jieqiTpl->assign('url_simage', jieqi_uploadurl($jieqiConfigs['article']['imagedir'], $jieqiConfigs['article']['imageurl'], 'article', $article_static_url) . jieqi_getsubdir($article->getVar('articleid')) . '/' . $article->getVar('articleid') . '/' . $article->getVar('articleid') . 's' . $jieqiConfigs['article']['imagetype']); } else { $jieqiTpl->assign('hasimage', 0); $jieqiTpl->assign('url_simage', ''); } //大图 if (($imgflag & 2) > 0) { $jieqiTpl->assign('url_limage', jieqi_uploadurl($jieqiConfigs['article']['imagedir'], $jieqiConfigs['article']['imageurl'], 'article', $article_static_url) . jieqi_getsubdir($article->getVar('articleid')) . '/' . $article->getVar('articleid') . '/' . $article->getVar('articleid') . 'l' . $jieqiConfigs['article']['imagetype']); } elseif (($imgflag & 1) > 0) { $jieqiTpl->assign('url_limage', jieqi_uploadurl($jieqiConfigs['article']['imagedir'], $jieqiConfigs['article']['imageurl'], 'article', $article_static_url) . jieqi_getsubdir($article->getVar('articleid')) . '/' . $article->getVar('articleid') . '/' . $article->getVar('articleid') . 's' . $jieqiConfigs['article']['imagetype']); } else { $jieqiTpl->assign('url_limage', ''); } $lastchapter = $article->getVar('lastchapter'); if ($lastchapter != '') { if ($article->getVar('lastvolume') != '') { $lastchapter = $article->getVar('lastvolume') . ' ' . $lastchapter; } $jieqiTpl->assign('url_lastchapter', jieqi_geturl('article', 'chapter', $article->getVar('lastchapterid'), $article->getVar('articleid'))); } else { $jieqiTpl->assign('url_lastchapter', ''); } //显示多个最新章节 if (is_numeric($jieqiConfigs['article']['infochapternum']) && intval($jieqiConfigs['article']['infochapternum']) > 0) { $jieqiConfigs['article']['infochapternum'] = intval($jieqiConfigs['article']['infochapternum']); include_once $GLOBALS['jieqiModules']['article']['path'] . '/class/chapter.php'; $chapter_handler =& JieqiChapterHandler::getInstance('JieqiChapterHandler'); $criteria = new CriteriaCompo(new Criteria('articleid', $article->getVar('articleid'), '=')); $criteria->setSort('chapterorder'); $criteria->setOrder('DESC'); $criteria->setLimit($jieqiConfigs['article']['infochapternum'] + ceil($jieqiConfigs['article']['infochapternum'] / 4)); $chapter_handler->queryObjects($criteria); $chapterrows = array(); $k = 0; $volumename = $article->getVar('lastvolume'); while ($chapter = $chapter_handler->getObject()) { if ($chapter->getVar('chaptertype') == 1) { $volumename = $chapter->getVar('chaptername'); } else { $chapterrows[$k]['volumename'] = $volumename; $chapterrows[$k]['chaptername'] = $chapter->getVar('chaptername'); if ($chapterrows[$k]['volumename'] != '') { $chapterrows[$k]['chapter'] = $chapterrows[$k]['volumename'] . ' ' . $chapterrows[$k]['chaptername']; } else { $chapterrows[$k]['chapter'] = $chapterrows[$k]['chaptername']; } $chapterrows[$k]['chapterid'] = $chapter->getVar('chapterid'); $chapterrows[$k]['url_chapter'] = jieqi_geturl('article', 'chapter', $chapter->getVar('chapterid'), $article->getVar('articleid')); $k++; if ($k >= $jieqiConfigs['article']['infochapternum']) { break; } } } $jieqiTpl->assign_by_ref('chapterrows', $chapterrows); } $jieqiTpl->assign('lastchapter', $lastchapter); $jieqiTpl->assign('size', $article->getVar('size')); $jieqiTpl->assign('size_k', ceil($article->getVar('size') / 1024)); $jieqiTpl->assign('size_c', ceil($article->getVar('size') / 2)); $jieqiTpl->assign('dayvisit', $article->getVar('dayvisit')); $jieqiTpl->assign('weekvisit', $article->getVar('weekvisit')); $jieqiTpl->assign('monthvisit', $article->getVar('monthvisit')); $jieqiTpl->assign('allvisit', $article->getVar('allvisit')); $jieqiTpl->assign('dayvote', $article->getVar('dayvote')); $jieqiTpl->assign('weekvote', $article->getVar('weekvote')); $jieqiTpl->assign('monthvote', $article->getVar('monthvote')); $jieqiTpl->assign('allvote', $article->getVar('allvote')); $jieqiTpl->assign('goodnum', $article->getVar('goodnum')); $jieqiTpl->assign('badnum', $article->getVar('badnum')); jieqi_getconfigs('article', 'option', 'jieqiOption'); $tmpvar = $article->getVar('fullflag'); if (isset($jieqiOption['article']['fullflag']['items'][$tmpvar])) { $jieqiTpl->assign('fullflag', $jieqiOption['article']['fullflag']['items'][$tmpvar]); } else { $jieqiTpl->assign('fullflag', $jieqiOption['article']['fullflag']['items'][$jieqiOption['article']['fullflag']['default']]); } $tmpvar = $article->getVar('permission'); if (isset($jieqiOption['article']['permission']['items'][$tmpvar])) { $jieqiTpl->assign('permission', $jieqiOption['article']['permission']['items'][$tmpvar]); } else { $jieqiTpl->assign('permission', $jieqiOption['article']['permission']['items'][$jieqiOption['article']['permission']['default']]); } $tmpvar = $article->getVar('firstflag'); if (isset($jieqiOption['article']['firstflag']['items'][$tmpvar])) { $jieqiTpl->assign('firstflag', $jieqiOption['article']['firstflag']['items'][$tmpvar]); } else { $jieqiTpl->assign('firstflag', $jieqiOption['article']['firstflag']['items'][$jieqiOption['article']['firstflag']['default']]); } //管理 $jieqiTpl->assign('url_manage', $article_static_url . '/articlemanage.php?id=' . $article->getVar('articleid')); //举报 $tmpstr = sprintf($jieqiLang['article']['article_report_reason'], jieqi_geturl('article', 'article', $article->getVar('articleid'), 'info')); $jieqiTpl->assign('url_report', $article_dynamic_url . '/newmessage.php?tosys=1&title=' . urlencode(sprintf($jieqiLang['article']['article_report_title'], $article->getVar('articlename', 'n'))) . '&content=' . urlencode($tmpstr)); //采集 $setting = unserialize($article->getVar('setting', 'n')); $url_collect = $article_static_url . '/collect.php?toid=' . $article->getVar('articleid', 'n'); if (is_numeric($setting['fromarticle'])) { $url_collect .= '&fromid=' . $setting['fromarticle']; } if (is_numeric($setting['fromsite'])) { $url_collect .= '&siteid=' . $setting['fromsite']; } $jieqiTpl->assign('url_collect', $url_collect); //文章序号 $jieqiTpl->assign('articleid', $article->getVar('articleid')); //点击阅读,全文阅读 if ($article->getVar('chapters', 'n') > 0) { $jieqiTpl->assign('url_read', jieqi_geturl('article', 'article', $article->getVar('articleid'), 'index')); if ($jieqiConfigs['article']['makefull'] == 0 || JIEQI_CHAR_SET != JIEQI_SYSTEM_CHARSET) { $jieqiTpl->assign('url_fullpage', $article_static_url . '/reader.php?aid=' . $article->getVar('articleid')); } else { $jieqiTpl->assign('url_fullpage', jieqi_uploadurl($jieqiConfigs['article']['fulldir'], $jieqiConfigs['article']['fullurl'], 'article', $article_static_url) . jieqi_getsubdir($article->getVar('articleid')) . '/' . $article->getVar('articleid') . $jieqiConfigs['article']['htmlfile']); } } else { $jieqiTpl->assign('url_read', '#'); $jieqiTpl->assign('url_fullpage', '#'); } //放入书架 $jieqiTpl->assign('url_bookcase', $article_dynamic_url . '/addbookcase.php?bid=' . $article->getVar('articleid')); //推荐本书 $jieqiTpl->assign('url_uservote', $article_dynamic_url . '/uservote.php?id=' . $article->getVar('articleid')); //作家专栏 if ($article->getVar('authorid') > 0) { $jieqiTpl->assign('url_authorpage', $article_dynamic_url . '/authorpage.php?id=' . $article->getVar('authorid')); } else { $jieqiTpl->assign('url_authorpage', '#'); } //打包下载 if ($article->getVar('chapters', 'n') > 0) { if ($jieqiConfigs['article']['makehtml'] == 0) { $jieqiTpl->assign('url_download', '#'); } else { $jieqiTpl->assign('url_download', jieqi_uploadurl($jieqiConfigs['article']['zipdir'], $jieqiConfigs['article']['zipurl'], 'article', $article_static_url) . jieqi_getsubdir($article->getVar('articleid')) . '/' . $article->getVar('articleid') . $jieqi_file_postfix['zip']); } } else { $jieqiTpl->assign('url_download', '#'); } //电子书部分 $articletype = intval($article->getVar('articletype')); if (($articletype & 1) > 0) { $hasebook = 1; } else { $hasebook = 0; } if (($articletype & 2) > 0) { $hasobook = 1; } else { $hasobook = 0; } if (($articletype & 4) > 0) { $hastbook = 1; } else { $hastbook = 0; } if ($hasobook == 1) { include_once $GLOBALS['jieqiModules']['obook']['path'] . '/class/obook.php'; $obook_handler =& JieqiObookHandler::getInstance('JieqiObookHandler'); $criteria = new CriteriaCompo(); $criteria->add(new Criteria('articleid', $article->getVar('articleid'), '=')); $obook_handler->queryObjects($criteria); $obook = $obook_handler->getObject(); if (is_object($obook) && $obook->getVar('display') == 0 && $obook->getVar('size') > 0) { $jieqiTpl->assign('obook_obookid', $obook->getVar('obookid')); $jieqiTpl->assign('obook_lastvolume', $obook->getVar('lastvolume')); $jieqiTpl->assign('obook_lastvolumeid', $obook->getVar('lastvolumeid')); $jieqiTpl->assign('obook_lastchapter', $obook->getVar('lastchapter')); $jieqiTpl->assign('obook_lastchapterid', $obook->getVar('lastchapterid')); $jieqiTpl->assign('obook_lastupdate', date(JIEQI_DATE_FORMAT, $obook->getVar('lastupdate'))); $jieqiTpl->assign('obook_size', $obook->getVar('size')); $jieqiTpl->assign('obook_publishid', $obook->getVar('publishid')); } else { $hasobook = 0; } } $jieqiTpl->assign('articletype', $articletype); $jieqiTpl->assign('hasebook', $hasebook); $jieqiTpl->assign('hasobook', $hasobook); $jieqiTpl->assign('hastbook', $hastbook); $jieqiTpl->assign('url_goodreview', $article_dynamic_url . '/review.php?aid=' . $article->getVar('articleid') . '&type=good'); $jieqiTpl->assign('url_allreview', $article_dynamic_url . '/review.php?aid=' . $article->getVar('articleid') . '&type=all'); $jieqiTpl->assign('url_review', $article_dynamic_url . '/review.php?aid=' . $article->getVar('articleid')); if (!empty($_SESSION['jieqiUserId'])) { $jieqiTpl->assign('enablepost', 1); } else { $jieqiTpl->assign('enablepost', 0); } $jieqiTpl->setCaching(0); $jieqiTpl->assign('jieqi_contents', $jieqiTpl->fetch($GLOBALS['jieqiModules']['article']['path'] . '/templates/staticinfo.html')); ob_start(); include JIEQI_ROOT_PATH . '/footer.php'; $pagecontent = ob_get_contents(); ob_end_clean(); if (!empty($jieqiConfigs['article']['fakeprefix'])) { $dirname = JIEQI_ROOT_PATH . '/' . $jieqiConfigs['article']['fakeprefix'] . 'info'; } else { $dirname = JIEQI_ROOT_PATH . '/files/article/info'; } if (!file_exists($dirname)) { jieqi_createdir($dirname); } $dirname = $dirname . jieqi_getsubdir($article->getVar('articleid', 'n')); if (!file_exists($dirname)) { jieqi_createdir($dirname); } $dirname .= '/' . $article->getVar('articleid', 'n') . $jieqiConfigs['article']['fakefile']; jieqi_writefile($dirname, $pagecontent); return true; }
/** * 用户登录后处理 * * @param object $jieqiUsers 用户对象 * @access public * @return bool */ function jieqi_loginprocess($jieqiUsers, $usecookie = 0) { global $jieqiConfigs; global $jieqiHonors; global $jieqiGroups; if (!isset($jieqiConfigs['system'])) { jieqi_getconfigs('system', 'configs'); } include_once JIEQI_ROOT_PATH . '/class/users.php'; $users_handler =& JieqiUsersHandler::getInstance('JieqiUsersHandler'); //更新在线用户表 include_once JIEQI_ROOT_PATH . '/class/online.php'; $online_handler =& JieqiOnlineHandler::getInstance('JieqiOnlineHandler'); $criteria = new CriteriaCompo(new Criteria('uid', $jieqiUsers->getVar('uid', 'n'))); $criteria->setSort('updatetime'); $criteria->setOrder('DESC'); $online_handler->queryObjects($criteria); $online = $online_handler->getObject(); //读cookie信息 $jieqi_user_info = array(); if (!empty($_COOKIE['jieqiUserInfo'])) { $jieqi_user_info = jieqi_strtosary($_COOKIE['jieqiUserInfo']); } else { $jieqi_user_info = array(); } $jieqi_visit_info = array(); if (!empty($_COOKIE['jieqiVisitInfo'])) { $jieqi_visit_info = jieqi_strtosary($_COOKIE['jieqiVisitInfo']); } else { $jieqi_visit_info = array(); } if (is_object($online)) { $ip = jieqi_userip(); if (JIEQI_SESSION_EXPRIE > 0) { $exprie_time = JIEQI_SESSION_EXPRIE; } else { $exprie_time = @ini_get('session.gc_maxlifetime'); } if (empty($exprie_time)) { $exprie_time = 1800; } if (defined('JIEQI_DENY_RELOGIN') && JIEQI_DENY_RELOGIN == 1 && JIEQI_NOW_TIME - $online->getVar('updatetime') < $exprie_time && $online->getVar('ip', 'n') != $ip && $jieqi_visit_info['jieqiUserId'] != $jieqiUsers->getVar('uid')) { return -8; } $tmpvar = strlen($jieqiUsers->getVar('name', 'q')) > 0 ? $jieqiUsers->getVar('name', 'q') : $jieqiUsers->getVar('uname', 'q'); $sql = "UPDATE " . jieqi_dbprefix('system_online') . " SET uid=" . $jieqiUsers->getVar('uid', 'q') . ", sid='" . jieqi_dbslashes(session_id()) . "', uname='" . $jieqiUsers->getVar('uname', 'q') . "', name='" . $tmpvar . "', pass='******'pass', 'q') . "',email='" . $jieqiUsers->getVar('email', 'q') . "', groupid=" . $jieqiUsers->getVar('groupid', 'q') . ", updatetime=" . JIEQI_NOW_TIME . ", ip='" . jieqi_dbslashes($ip) . "' WHERE uid=" . $jieqiUsers->getVar('uid', 'q') . " OR sid='" . jieqi_dbslashes(session_id()) . "'"; $online_handler->db->query($sql); } else { include_once JIEQI_ROOT_PATH . '/include/visitorinfo.php'; $online = $online_handler->create(); $online->setVar('uid', $jieqiUsers->getVar('uid', 'n')); $online->setVar('siteid', JIEQI_SITE_ID); $online->setVar('sid', session_id()); $online->setVar('uname', $jieqiUsers->getVar('uname', 'n')); $tmpvar = strlen($jieqiUsers->getVar('name', 'n')) > 0 ? $jieqiUsers->getVar('name', 'n') : $jieqiUsers->getVar('uname', 'n'); $online->setVar('name', $tmpvar); $online->setVar('pass', $jieqiUsers->getVar('pass', 'n')); $online->setVar('email', $jieqiUsers->getVar('email', 'n')); $online->setVar('groupid', $jieqiUsers->getVar('groupid', 'n')); $tmpvar = JIEQI_NOW_TIME; $online->setVar('logintime', $tmpvar); $online->setVar('updatetime', $tmpvar); $online->setVar('operate', ''); $tmpvar = VisitorInfo::getIp(); $online->setVar('ip', $tmpvar); $online->setVar('browser', VisitorInfo::getBrowser()); $online->setVar('os', VisitorInfo::getOS()); $location = VisitorInfo::getIpLocation($tmpvar); if (JIEQI_SYSTEM_CHARSET == 'big5') { include_once JIEQI_ROOT_PATH . '/include/changecode.php'; $location = jieqi_gb2big5($location); } $online->setVar('location', $location); $online->setVar('state', '0'); $online->setVar('flag', '0'); $online_handler->insert($online); } //删除过期的在线用户 unset($criteria); $criteria = new CriteriaCompo(new Criteria('updatetime', JIEQI_NOW_TIME - $jieqiConfigs['system']['onlinetime'], '<')); $online_handler->delete($criteria); //检查短消息 include_once JIEQI_ROOT_PATH . '/class/message.php'; $message_handler = JieqiMessageHandler::getInstance('JieqiMessageHandler'); $criteria = new CriteriaCompo(new Criteria('toid', $jieqiUsers->getVar('uid'), '=')); $criteria->add(new Criteria('isread', 0, '=')); $criteria->add(new Criteria('todel', 0, '=')); $newmsgnum = $message_handler->getCount($criteria); unset($criteria); //有短消息 //用户信息 $previewlogin = intval($jieqiUsers->getVar('lastlogin')); $jieqiUsers->setVar('lastlogin', JIEQI_NOW_TIME); $userset = unserialize($jieqiUsers->getVar('setting', 'n')); if (!isset($userset['lastip']) || $userset['lastip'] != jieqi_userip()) { $userset['lastip'] = jieqi_userip(); } if (!isset($userset['logindate']) || $userset['logindate'] != date('Y-m-d')) { $userset['logindate'] = date('Y-m-d'); //增加登陆积分 $jieqiUsers->setVar('experience', $jieqiUsers->getVar('experience') + $jieqiConfigs['system']['scorelogin']); $jieqiUsers->setVar('score', $jieqiUsers->getVar('score') + $jieqiConfigs['system']['scorelogin']); } //如果换月了,清空月积分 //if(date('Y-m', $previewlogin) != date('Y-m', JIEQI_NOW_TIME)) $jieqiUsers->setVar('monthscore', 0); $jieqiUsers->setVar('setting', serialize($userset)); $jieqiUsers->unsetNew(); $users_handler->insert($jieqiUsers); header('P3P: CP="CURa ADMa DEVa PSAo PSDo OUR BUS UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"'); //设置SESSION jieqi_setusersession($jieqiUsers); if ($newmsgnum > 0) { $_SESSION['jieqiNewMessage'] = $newmsgnum; } //后台登录状态 $jieqi_online_info = empty($_COOKIE['jieqiOnlineInfo']) ? array() : jieqi_strtosary($_COOKIE['jieqiOnlineInfo']); if (isset($jieqi_online_info['jieqiAdminLogin']) && $jieqi_online_info['jieqiAdminLogin'] == 1) { $_SESSION['jieqiAdminLogin'] = 1; } $jieqi_user_info['jieqiUserId'] = $_SESSION['jieqiUserId']; $jieqi_user_info['jieqiUserUname'] = $_SESSION['jieqiUserUname']; $jieqi_user_info['jieqiUserName'] = $_SESSION['jieqiUserName']; $jieqi_user_info['jieqiUserGroup'] = $_SESSION['jieqiUserGroup']; $jieqi_user_info['jieqiUserGroupName'] = $jieqiGroups[$_SESSION['jieqiUserGroup']]; $jieqi_user_info['jieqiUserVip'] = $_SESSION['jieqiUserVip']; $jieqi_user_info['jieqiUserHonorId'] = $_SESSION['jieqiUserHonorId']; $jieqi_user_info['jieqiUserHonor'] = $_SESSION['jieqiUserHonor']; if ($newmsgnum > 0) { $jieqi_user_info['jieqiNewMessage'] = $newmsgnum; } if ($usecookie) { $jieqi_user_info['jieqiUserPassword'] = $jieqiUsers->getVar('pass', 'n'); } include_once JIEQI_ROOT_PATH . '/include/changecode.php'; if (JIEQI_SYSTEM_CHARSET == 'gbk') { $jieqi_user_info['jieqiUserUname_un'] = jieqi_gb2unicode($_SESSION['jieqiUserUname']); $jieqi_user_info['jieqiUserName_un'] = jieqi_gb2unicode($_SESSION['jieqiUserName']); $jieqi_user_info['jieqiUserHonor_un'] = jieqi_gb2unicode($_SESSION['jieqiUserHonor']); $jieqi_user_info['jieqiUserGroupName_un'] = jieqi_gb2unicode($jieqiGroups[$_SESSION['jieqiUserGroup']]); } else { $jieqi_user_info['jieqiUserUname_un'] = jieqi_big52unicode($_SESSION['jieqiUserUname']); $jieqi_user_info['jieqiUserName_un'] = jieqi_big52unicode($_SESSION['jieqiUserName']); $jieqi_user_info['jieqiUserHonor_un'] = jieqi_big52unicode($_SESSION['jieqiUserHonor']); $jieqi_user_info['jieqiUserGroupName_un'] = jieqi_gb2unicode($jieqiGroups[$_SESSION['jieqiUserGroup']]); } $jieqi_user_info['jieqiUserLogin'] = JIEQI_NOW_TIME; if ($usecookie < 0) { $usecookie = 0; } elseif ($usecookie == 1) { $usecookie = 315360000; } if ($usecookie) { $cookietime = JIEQI_NOW_TIME + $usecookie; } else { $cookietime = 0; } @setcookie('jieqiUserInfo', jieqi_sarytostr($jieqi_user_info), $cookietime, '/', JIEQI_COOKIE_DOMAIN, 0); $jieqi_visit_info['jieqiUserLogin'] = $jieqi_user_info['jieqiUserLogin']; $jieqi_visit_info['jieqiUserId'] = $jieqi_user_info['jieqiUserId']; @setcookie('jieqiVisitInfo', jieqi_sarytostr($jieqi_visit_info), JIEQI_NOW_TIME + 99999999, '/', JIEQI_COOKIE_DOMAIN, 0); //更新在线用户 include_once JIEQI_ROOT_PATH . '/lib/template/template.php'; $jieqiTpl =& JieqiTpl::getInstance(); $jieqiTpl->clear_cache(JIEQI_ROOT_PATH . '/templates/online.html'); return 0; }
/** * 构造函数,初始参数赋值 * * @param array * @access private * @return void */ function JieqiBlock(&$vars) { global $jieqiModules; global $jieqiTpl; $this->blockvars = $vars; if (empty($this->module)) { $this->module = empty($this->blockvars['module']) ? 'system' : $this->blockvars['module']; } if (empty($this->blockvars['template'])) { $this->blockvars['template'] = $this->template; } if (!empty($this->blockvars['template'])) { $this->blockvars['tlpfile'] = $jieqiModules[$this->module]['path'] . '/templates/blocks/' . $this->blockvars['template']; } else { $this->blockvars['tlpfile'] = ''; } if ($this->cachetime == 0) { $this->cachetime = JIEQI_CACHE_LIFETIME; } if (empty($this->blockvars['cachetime'])) { $this->blockvars['cachetime'] = $this->cachetime; } if (empty($this->blockvars['overtime'])) { $this->blockvars['overtime'] = 0; } if (empty($this->blockvars['cacheid'])) { $this->blockvars['cacheid'] = NULL; } if (empty($this->blockvars['compileid'])) { $this->blockvars['compileid'] = NULL; } if (!empty($this->blockvars['template'])) { $this->template = $this->blockvars['template']; } if (!is_object($jieqiTpl) && !empty($this->blockvars['tlpfile'])) { include_once JIEQI_ROOT_PATH . '/lib/template/template.php'; $jieqiTpl =& JieqiTpl::getInstance(); } }
function makestatictoplist($sort = '', $class = '', $thispage = 0, $maxpage = 0) { global $jieqiConfigs; global $jieqiSort; global $jieqiTpl; global $jieqiBlocks; if (!is_object($jieqiTpl)) { $jieqiTpl =& JieqiTpl::getInstance(); } //排序方式 if (empty($sort)) { $sort = 'lastupdate'; } //类别 if (empty($class) || !is_numeric($class)) { $class = 0; } //页码 if (empty($thispage) || !is_numeric($thispage)) { $thispage = 1; } //是否缓存 $content_used_cache = false; $jieqiTpl->setCaching(0); $article_static_url = empty($jieqiConfigs['article']['staticurl']) ? $GLOBALS['jieqiModules']['article']['url'] : $jieqiConfigs['article']['staticurl']; $article_dynamic_url = empty($jieqiConfigs['article']['dynamicurl']) ? $GLOBALS['jieqiModules']['article']['url'] : $jieqiConfigs['article']['dynamicurl']; $jieqiTpl->assign('article_static_url', $article_static_url); $jieqiTpl->assign('article_dynamic_url', $article_dynamic_url); //是否使用伪静态页面 $jieqiTpl->assign('fakefile', $jieqiConfigs['article']['fakefile']); $jieqiTpl->assign('fakeinfo', $jieqiConfigs['article']['fakeinfo']); $jieqiTpl->assign('fakesort', $jieqiConfigs['article']['fakesort']); $jieqiTpl->assign('fakeinitial', $jieqiConfigs['article']['fakeinitial']); $jieqiTpl->assign('faketoplist', $jieqiConfigs['article']['faketoplist']); $article_handler =& JieqiArticleHandler::getInstance('JieqiArticleHandler'); $criteria = new CriteriaCompo(new Criteria('display', '0', '=')); $criteria->add(new Criteria('size', '0', '>')); //类别 jieqi_getconfigs('article', 'sort'); if (!empty($class) && is_numeric($class)) { $criteria->add(new Criteria('sortid', $class, '=')); $classinfo = ' - ' . $jieqiSort['article'][$class]['caption']; } else { $class = 0; $classinfo = ''; } $tmpvar = explode('-', date('Y-m-d', JIEQI_NOW_TIME)); $daystart = mktime(0, 0, 0, (int) $tmpvar[1], (int) $tmpvar[2], (int) $tmpvar[0]); $monthstart = mktime(0, 0, 0, (int) $tmpvar[1], 1, (int) $tmpvar[0]); $tmpvar = date('w', JIEQI_NOW_TIME); if ($tmpvar == 0) { $tmpvar = 7; } //星期天是0,国人习惯作为作为一星期的最后一天 $weekstart = $daystart; if ($tmpvar > 1) { $weekstart -= ($tmpvar - 1) * 86400; } switch ($sort) { case 'allvisit': $criteria->setSort('allvisit'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_allvisit_title'], $classinfo)); break; case 'monthvisit': $criteria->add(new Criteria('lastvisit', $monthstart, '>=')); $criteria->setSort('monthvisit'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_monthvisit_title'], $classinfo)); break; case 'weekvisit': $criteria->add(new Criteria('lastvisit', $weekstart, '>=')); $criteria->setSort('weekvisit'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_weekvisit_title'], $classinfo)); break; case 'dayvisit': $criteria->add(new Criteria('lastvisit', $daystart, '>=')); $criteria->setSort('dayvisit'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_dayvisit_title'], $classinfo)); break; case 'allauthorvisit': $criteria->add(new Criteria('authorid', '0', '>')); $criteria->setSort('allvisit'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_avall_title'], $classinfo)); break; case 'monthauthorvisit': $criteria->add(new Criteria('lastvisit', $monthstart, '>=')); $criteria->add(new Criteria('authorid', '0', '>')); $criteria->setSort('monthvisit'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_avmonth_title'], $classinfo)); break; case 'weekauthorvisit': $criteria->add(new Criteria('lastvisit', $weekstart, '>=')); $criteria->add(new Criteria('authorid', '0', '>')); $criteria->setSort('weekvisit'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_avweek_title'], $classinfo)); break; case 'dayauthorvisit': $criteria->add(new Criteria('lastvisit', $daystart, '>=')); $criteria->add(new Criteria('authorid', '0', '>')); $criteria->setSort('dayvisit'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_avday_title'], $classinfo)); break; case 'allvote': $criteria->setSort('allvote'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_voteall_title'], $classinfo)); break; case 'monthvote': $criteria->add(new Criteria('lastvote', $monthstart, '>=')); $criteria->setSort('monthvote'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_votemonth_title'], $classinfo)); break; case 'weekvote': $criteria->add(new Criteria('lastvote', $weekstart, '>=')); $criteria->setSort('weekvote'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_voteweek_title'], $classinfo)); break; case 'dayvote': $criteria->add(new Criteria('lastvote', $daystart, '>=')); $criteria->setSort('dayvote'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_voteday_titile'], $classinfo)); break; case 'postdate': $criteria->setSort('postdate'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_postdate_title'], $classinfo)); break; case 'toptime': $criteria->setSort('toptime'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_toptime_title'], $classinfo)); break; case 'goodnum': $criteria->setSort('goodnum'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_goodnum_title'], $classinfo)); break; case 'size': $criteria->setSort('size'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_size_title'], $classinfo)); break; case 'authorupdate': $criteria->setSort('lastupdate'); $criteria->add(new Criteria('authorid', '0', '>')); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_authorupdate_title'], $classinfo)); break; case 'masterupdate': $criteria->setSort('lastupdate'); $criteria->add(new Criteria('authorid', '0', '=')); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_masterupdate_title'], $classinfo)); break; case 'lastupdate': default: $_REQUEST['sort'] = 'lastupdate'; $criteria->setSort('lastupdate'); $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['top_lastupdate_title'], $classinfo)); break; } $criteria->setOrder('DESC'); $criteria->setLimit($jieqiConfigs['article']['pagenum']); $criteria->setStart(($thispage - 1) * $jieqiConfigs['article']['pagenum']); $article_handler->queryObjects($criteria); $articlerows = array(); $k = 0; while ($v = $article_handler->getObject()) { $articlerows[$k] = jieqi_article_vars($v); $k++; } $jieqiTpl->assign_by_ref('articlerows', $articlerows); //处理页面跳转 $toplistrows = $article_handler->getCount($criteria); $truemaxpage = ceil($toplistrows / $jieqiConfigs['article']['pagenum']); $maxpage = intval($maxpage); if (!empty($maxpage) && $maxpage < $truemaxpage) { $toplistrows = $maxpage * $jieqiConfigs['article']['pagenum']; } else { $maxpage = $truemaxpage; } $jumppage = new JieqiPage($toplistrows, $jieqiConfigs['article']['pagenum'], $thispage, 10, $jieqiConfigs['article']['fakefile']); if (!empty($jieqiConfigs['article']['fakeprefix'])) { $dirname = '/' . $jieqiConfigs['article']['fakeprefix'] . 'top' . $sort; } else { $dirname = '/files/article/top' . $sort; } $jumppage->setlink($article_dynamic_url . $dirname); $jieqiTpl->assign('url_jumppage', $jumppage->whole_bar()); $jieqiTpl->assign('jieqi_contents', $jieqiTpl->fetch($GLOBALS['jieqiModules']['article']['path'] . '/templates/toplist.html')); ob_start(); include JIEQI_ROOT_PATH . '/footer.php'; $pagecontent = ob_get_contents(); ob_end_clean(); $dirname = JIEQI_ROOT_PATH . $dirname; if (!file_exists($dirname)) { jieqi_createdir($dirname); } $dirname = $dirname . jieqi_getsubdir($thispage); if (!file_exists($dirname)) { jieqi_createdir($dirname); } $dirname .= '/' . $thispage . $jieqiConfigs['article']['fakefile']; jieqi_writefile($dirname, $pagecontent); return $maxpage; }
function makestaticindex($class, $initial, $fullflag, $thispage, $maxpage = 0) { global $jieqiConfigs; global $jieqiSort; global $jieqiTpl; global $jieqiBlocks; if (!is_object($jieqiTpl)) { $jieqiTpl =& JieqiTpl::getInstance(); } //文章类别 if (empty($class) || !is_numeric($class)) { $class = 0; } //页码 if (empty($thispage) || !is_numeric($thispage)) { $thispage = 1; } if (empty($fullflag)) { $fullflag = 0; } else { $fullflag = 1; } //cache名称 $cache_id = $fullflag; if (isset($initial) && trim(strval($initial)) != '') { if ($initial == '~' || $initial == '0') { $cache_id .= '_i0'; } else { $cache_id .= '_i' . $initial; } } else { $cache_id .= '_s' . $class; } $pagecacheid = $cache_id; $cache_id .= '_p' . $thispage; if (!empty($class)) { $jieqi_pagetitle = $jieqiSort['article'][$class]['caption'] . '>>' . JIEQI_SITE_NAME; $jieqiTpl->assign('jieqi_pagetitle', $jieqi_pagetitle); } $jieqiTpl->setCaching(0); $article_static_url = empty($jieqiConfigs['article']['staticurl']) ? $GLOBALS['jieqiModules']['article']['url'] : $jieqiConfigs['article']['staticurl']; $article_dynamic_url = empty($jieqiConfigs['article']['dynamicurl']) ? $GLOBALS['jieqiModules']['article']['url'] : $jieqiConfigs['article']['dynamicurl']; $jieqiTpl->assign('article_static_url', $article_static_url); $jieqiTpl->assign('article_dynamic_url', $article_dynamic_url); //是否使用伪静态页面 $jieqiTpl->assign('fakefile', $jieqiConfigs['article']['fakefile']); $jieqiTpl->assign('fakeinfo', $jieqiConfigs['article']['fakeinfo']); $jieqiTpl->assign('fakesort', $jieqiConfigs['article']['fakesort']); $jieqiTpl->assign('fakeinitial', $jieqiConfigs['article']['fakeinitial']); $jieqiTpl->assign('faketoplist', $jieqiConfigs['article']['faketoplist']); $article_handler =& JieqiArticleHandler::getInstance('JieqiArticleHandler'); $criteria = new CriteriaCompo(new Criteria('display', '0', '=')); $criteria->add(new Criteria('size', '0', '>')); if (!empty($fullflag)) { $criteria->add(new Criteria('fullflag', '1', '=')); $fulltitle = $jieqiLang['article']['list_full_title']; } else { $fulltitle = ''; } if (!empty($initial)) { $criteria->add(new Criteria('initial', strtoupper($initial), '=')); if ($initial == '1') { $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['list_numeric_title'], $fulltitle)); } elseif ($initial == '~') { $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['list_other_title'], $fulltitle)); } else { $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['list_char_title'], $initial, $fulltitle)); } $criteria->setSort('articlename'); $criteria->setOrder('ASC'); } elseif (!empty($class)) { $criteria->add(new Criteria('sortid', $class, '=')); $jieqiTpl->assign('articletitle', $jieqiSort['article'][$class]['caption'] . $fulltitle); $criteria->setSort('lastupdate'); $criteria->setOrder('DESC'); } else { $jieqiTpl->assign('articletitle', sprintf($jieqiLang['article']['list_all_title'], $fulltitle)); $criteria->setSort('lastupdate'); $criteria->setOrder('DESC'); } $criteria->setLimit($jieqiConfigs['article']['pagenum']); $criteria->setStart(($thispage - 1) * $jieqiConfigs['article']['pagenum']); $article_handler->queryObjects($criteria); $articlerows = array(); $k = 0; while ($v = $article_handler->getObject()) { $articlerows[$k] = jieqi_article_vars($v); $k++; } $jieqiTpl->assign_by_ref('articlerows', $articlerows); $jieqiTpl->assign('url_initial', $article_dynamic_url . '/index.php?initial='); //处理页面跳转 $toplistrows = $article_handler->getCount($criteria); $truemaxpage = ceil($toplistrows / $jieqiConfigs['article']['pagenum']); $maxpage = intval($maxpage); if (!empty($maxpage) && $maxpage < $truemaxpage) { $toplistrows = $maxpage * $jieqiConfigs['article']['pagenum']; } else { $maxpage = $truemaxpage; } if (!empty($initial)) { $jumppage = new JieqiPage($toplistrows, $jieqiConfigs['article']['pagenum'], $thispage, 10, $jieqiConfigs['article']['fakefile']); if ($initial == '~') { $tmpvar = '0'; } else { $tmpvar = $initial; } if (!empty($jieqiConfigs['article']['fakeprefix'])) { $dirname = '/' . $jieqiConfigs['article']['fakeprefix'] . 'initial' . $tmpvar; } else { $dirname = '/files/article/initial' . $tmpvar; } $jumppage->setlink($article_dynamic_url . $dirname); } else { $jumppage = new JieqiPage($toplistrows, $jieqiConfigs['article']['pagenum'], $thispage, 10, $jieqiConfigs['article']['fakefile']); if (!empty($class)) { $tmpvar = $class; } else { $tmpvar = ''; } if (!empty($jieqiConfigs['article']['fakeprefix'])) { $dirname = '/' . $jieqiConfigs['article']['fakeprefix'] . 'sort' . $tmpvar; } else { $dirname = '/files/article/sort' . $tmpvar; } $jumppage->setlink($article_dynamic_url . $dirname); } $jieqiTpl->assign('url_jumppage', $jumppage->whole_bar()); $jieqiTpl->assign('jieqi_contents', $jieqiTpl->fetch($GLOBALS['jieqiModules']['article']['path'] . '/templates/articlelist.html')); ob_start(); include JIEQI_ROOT_PATH . '/footer.php'; $pagecontent = ob_get_contents(); ob_end_clean(); $dirname = JIEQI_ROOT_PATH . $dirname; if (!file_exists($dirname)) { jieqi_createdir($dirname); } $dirname = $dirname . jieqi_getsubdir($thispage); if (!file_exists($dirname)) { jieqi_createdir($dirname); } $dirname .= '/' . $thispage . $jieqiConfigs['article']['fakefile']; jieqi_writefile($dirname, $pagecontent); return $maxpage; }
function my_msgwin($title, $content, $icon = '') { include_once JIEQI_ROOT_PATH . '/lib/template/template.php'; $title = jieqi_htmlstr($title); $jieqiTpl =& JieqiTpl::getInstance(); $jieqiTpl->assign(array('jieqi_themeurl' => JIEQI_URL . '/themes/' . JIEQI_THEME_SET . '/', 'jieqi_themecss' => JIEQI_URL . '/themes/' . JIEQI_THEME_SET . '/style.css', 'pagetitle' => $title, 'title' => $title, 'content' => $content, 'copyright' => $jieqiLang['pay']['copy_right'] . '© <a href="' . JIEQI_URL . '/">' . JIEQI_SITE_NAME . '</a>')); $jieqiTpl->setCaching(0); $jieqiTpl->display('msgwin.html'); jieqi_freeresource(); }
function makestaticreview($article_id) { global $jieqiConfigs; global $jieqiTpl; global $article_dynamic_url; global $article_static_url; if (!is_object($jieqiTpl)) { $jieqiTpl =& JieqiTpl::getInstance(); } if (empty($article_id) || !is_numeric($article_id)) { return false; } $review_handler =& JieqiReviewHandler::getInstance('JieqiReviewHandler'); $criteria = new CriteriaCompo(new Criteria('ownerid', $article_id)); $criteria->setSort('topflag DESC, topicid'); $criteria->setOrder('DESC'); $criteria->setLimit($jieqiConfigs['article']['reviewnew']); $criteria->setStart(0); $review_handler->queryObjects($criteria); $reviewrows = array(); $k = 0; while ($v = $review_handler->getObject()) { $start = 3; if ($v->getVar('topflag') == 1) { $reviewrows[$k]['topflag'] = 1; $start += 4; } else { $reviewrows[$k]['topflag'] = 0; } if ($v->getVar('goodflag') == 1) { $reviewrows[$k]['goodflag'] = 1; $start += 4; } else { $reviewrows[$k]['goodflag'] = 0; } if ($jieqiConfigs['article']['reviewenter'] == '0') { $reviewrows[$k]['content'] = jieqi_htmlstr(jieqi_limitwidth(str_replace(array("\r", "\n"), array('', ' '), $v->getVar('reviewtext', 'n')), $jieqiConfigs['article']['reviewwidth'], $start)); } else { $reviewrows[$k]['content'] = jieqi_htmlstr(jieqi_limitwidth($v->getVar('reviewtext', 'n'), $jieqiConfigs['article']['reviewwidth'], $start)); } $reviewrows[$k]['postdate'] = date(JIEQI_DATE_FORMAT . ' ' . JIEQI_TIME_FORMAT, $v->getVar('postdate')); $reviewrows[$k]['userid'] = $v->getVar('userid'); $reviewrows[$k]['username'] = $v->getVar('username'); $k++; } $jieqiTpl->assign_by_ref('reviewrows', $reviewrows); $jieqiTpl->assign('url_goodreview', $article_dynamic_url . '/review.php?aid=' . $article_id . '&type=good'); $jieqiTpl->assign('url_allreview', $article_dynamic_url . '/review.php?aid=' . $article_id . '&type=all'); $jieqiTpl->assign('url_review', $article_dynamic_url . '/review.php?aid=' . $article_id); $jieqiTpl->setCaching(0); $reviewjs = $jieqiTpl->fetch($GLOBALS['jieqiModules']['article']['path'] . '/templates/staticreview.html'); $reviewjs = "document.write('" . jieqi_setslashes(str_replace(array("\n", "\r"), "", $reviewjs), '"') . "');"; if (!empty($jieqiConfigs['article']['fakeprefix'])) { $dirname = JIEQI_ROOT_PATH . '/' . $jieqiConfigs['article']['fakeprefix'] . 'info'; } else { $dirname = JIEQI_ROOT_PATH . '/files/article/info'; } if (!file_exists($dirname)) { jieqi_createdir($dirname); } $dirname = $dirname . jieqi_getsubdir($article_id); if (!file_exists($dirname)) { jieqi_createdir($dirname); } $dirname .= '/' . $article_id . 'r.js'; jieqi_writefile($dirname, $reviewjs); return true; }