📄 pw_home.php
字号:
<?php
!function_exists('readover') && exit('Forbidden');
Class HOME {
function update($type=''){//更新缓存数据
global $db,$num,$timestamp;
if($type == 'all'){
$query = $db->query("SELECT name,title,config FROM pw_home WHERE ifopen='1'");
} elseif($type){
$query = $db->query("SELECT name,title,config FROM pw_home WHERE name=".pwEscape($type));
} else{
$query = $db->query("SELECT name,title,config FROM pw_home WHERE ifopen='1' AND lastupdate+upstep<".pwEscape($timestamp)."ORDER BY lastupdate ASC LIMIT $num");
}
while($rt = $db->fetch_array($query)){
$config = unserialize($rt['config']);
if(substr($rt['name'],0,7)=='forums_'){
$this->forums($rt['name'],$rt['title'],$config);
} elseif(method_exists($this,$rt['name'])){
$this->$rt['name']($rt['name'],$rt['title'],$config);
}
}
}
function eye($name,$title,$config){// 社区幻灯眼模块
global $db,$timestamp,$imgpath;
/** 默认配置 **/
$config['nums']<1 && $config['nums'] = 5;
if(!in_array($config['order'],array('hits','replies','dig'))){
$config['order'] = 'hits';
}
$flashpics = '';
$flashlinks = '';
$flashtitles = '';
$extra = '';
if($config['tids']){
$tids = explode(',',$config['tids']);
foreach($tids as $tid){
$pw_tmsgs = GetTtable($tid);
$rt = $db->get_one("SELECT t.tid,t.subject,tm.aid FROM pw_threads t LEFT JOIN $pw_tmsgs tm USING(tid) WHERE t.tid=".pwEscape($tid)."AND tm.aid!=''");
if(!$rt) continue;
$aid = unserialize($rt['aid']);
foreach($aid as $key=>$value){
if($value['type']=='img'){
$value['attachurl'] = geturl($value['attachurl'],'lf');
$flashpics .= $extra.$value['attachurl'][0];
$flashlinks .= $extra."read.php?tid=$tid";
$flashtitles .= $extra.$rt['subject'];
$extra = '|';
$config['nums']--;break;
}
}
}
}
if($config['nums']>0){
if($GLOBALS['db_tlist']){
@extract($db->get_one("SELECT MAX(tid) as mtid FROM pw_threads"));
$pw_tmsgs = GetTtable($mtid);
} else{
$pw_tmsgs = 'pw_tmsgs';
}
$sql = $config['time']>0 ? " AND t.postdate>".pwEscape($timestamp-86400*$config['time']) : '';
$query = $db->query("SELECT t.tid,t.subject,tm.aid FROM pw_threads t LEFT JOIN $pw_tmsgs tm ON t.tid=tm.tid LEFT JOIN pw_forums f ON t.fid=f.fid WHERE 1 $sql AND t.ifupload='1' AND tm.aid!='' AND f.password='' AND f.allowvisit='' AND f.f_type<>'hidden' ORDER BY $config[order] LIMIT $config[nums]");
while($rt = $db->fetch_array($query)){
$aid = unserialize($rt['aid']);
foreach($aid as $key=>$value){
if($value['type']=='img'){
$value['attachurl'] = geturl($value['attachurl'],'lf');
$flashpics .= $extra.$value['attachurl'][0];
$flashlinks .= $extra."read.php?tid=$rt[tid]";
$flashtitles .= $extra.$rt['subject'];
$extra = '|';break;
}
}
}
}
$html = "<div id=\"eye\"><h5 class=\"h\"><span class=\"fr gray f10\"></span>$title </h5><div class=\"tac\" style=\"padding-top:10px\">
<SCRIPT type=text/javascript>
var focus_width=306;
var focus_height=190;
var text_height=20;
var swf_height = focus_height+text_height;
var pics='$flashpics';
var links='$flashlinks';
var texts='$flashtitles';
document.write('<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" codebase=\"http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0\" width=\"'+ focus_width +'\" height=\"'+ swf_height +'\" wmode=\"transparent\">');
document.write('<param name=\"allowScriptAccess\" value=\"sameDomain\"><param name=\"movie\" value=\"$imgpath/pic.swf\"><param name=\"quality\" value=\"high\"><param name=\"bgcolor\" value=\"#ffffff\">');
document.write('<param name=\"menu\" value=\"false\"><param name=wmode value=\"opaque\">');
document.write('<param name=\"FlashVars\" value=\"pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'\">');
document.write('<embed src=\"$imgpath/pic.swf\" wmode=\"opaque\" FlashVars=\"pics='+pics+'&links='+links+'&texts='+texts+'&borderwidth='+focus_width+'&borderheight='+focus_height+'&textheight='+text_height+'\" menu=\"false\" bgcolor=\"#ffffff\" quality=\"high\" width=\"'+ focus_width +'\" height=\"'+ focus_height +'\" allowScriptAccess=\"sameDomain\" type=\"application/x-shockwave-flash\" pluginspage=\"http://www.macromedia.com/go/getflashplayer\" />');
document.write('</object>');
</SCRIPT></div></div>";
$html = addslashes($html);
$db->update("UPDATE pw_home SET ".pwSqlSingle(array('lastupdate'=>$timestamp,'cache'=>$html))."WHERE name=".pwEscape($name));
}
function tags($name,$title,$config){//热门tag模块
global $db,$timestamp;
/** 默认配置 **/
$config['nums']<1 && $config['nums'] = 25;
$tagdb = $config['tags'] ? explode(',',$config['tags']) : array();
$query = $db->query("SELECT tagname FROM pw_tags ORDER BY num DESC LIMIT $config[nums]");
while($rt = $db->fetch_array($query)){
if(!in_array($rt['tagname'],$tagdb)){
$tagdb[] = $rt['tagname'];
}
}
$html = "<div id=\"tags\" class=\"tags\"><h5 class=\"h\">$title</h5><ul>";
foreach($tagdb as $tag){
$html .= "<li><a href=\"job.php?action=tag&tagname=".rawurlencode($tag)."\" target=\"_blank\">$tag</a></li>";
}
$html .= "</ul></div><div class=\"c\"></div>";
$db->update("UPDATE pw_home SET ".pwSqlSingle(array('lastupdate'=>$timestamp,'cache'=>$html),false)."WHERE name=".pwEscape($name));
}
function recommend($name,$title,$config){// 推荐帖子
global $db,$timestamp,$imgpath;
/** 默认配置 **/
$config['nums']<1 && $config['nums'] = 15;
!$config['pic'] && $config['pic'] = "hack/home/image/none.bmp";
if(!in_array($config['order'],array('hits','replies','dig'))){
$config['order'] = 'dig';
}
$read = array();
$tids = $this->checktids($config['tids']);
if($tids){
$query = $db->query("SELECT tid,subject FROM pw_threads WHERE tid IN($tids)");
while($rt = $db->fetch_array($query)){
$read[] = $rt;
}
}
$config['nums'] -= count($read);
if($config['nums']>0){
$sql = $config['time']>0 ? " AND t.postdate>".pwEscape($timestamp-86400*$config['time']) : '';
$query = $db->query("SELECT t.tid,t.subject FROM pw_threads t LEFT JOIN pw_forums f ON t.fid=f.fid WHERE 1 $sql AND f.password='' AND f.allowvisit='' AND f.f_type<>'hidden' ORDER BY t.$config[order] LIMIT $config[nums]");
while($rt = $db->fetch_array($query)){
$read[] = $rt;
}
}
$readone = $read[0];
unset($read[0]);
$pw_tmsgs = GetTtable($readone['tid']);
$rs = $db->get_one("SELECT content FROM $pw_tmsgs WHERE tid=".pwEscape($readone['tid'],false));
$readone['content'] = substrs($rs['content'],60);
$html = "<h5 class=\"h\">$title </h5><div><dl class=\"dlA\"><dd class=\"pic\"><img src=\"$config[pic]\" /></dd><dt class=\"h2A\"><a href=\"read.php?tid=$readone[tid]\" class=\"cl1\">$readone[subject]</a></dt><dd class=\"txt\">$readone[content]<div class=\"tar\"><a href=\"read.php?tid=$readone[tid]\">(".getLangInfo('other','home_detail').")</a></div></dd><dd class=\"c\"></dd></dl></div><div class=\"c\"></div><div><ul class=\"listA\">";
foreach($read as $value){
$html .= "<li><a href=\"read.php?tid=$value[tid]\">$value[subject]</a></li>";
}
$html .= "</ul></div><div class=\"c\"></div>";
$db->update("UPDATE pw_home SET ".pwSqlSingle(array('lastupdate'=>$timestamp,'cache'=>$html),false)."WHERE name='recommend'");
}
function hottopic($name,$title,$config){//热门帖子
global $db,$timestamp;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -