解决方案 »

  1.   

    buildthumb.inc.php内的内容,好像也有用处呢
    <?php
    if(!defined('IN_DISCUZ')) {
        exit('Access Denied');
    }
    class plugin_chs_tiebalist {   
        function common() {}
    }
    class plugin_chs_tiebalist_forum extends plugin_chs_tiebalist { 
        function forumdisplay_thread_subject_output(){   
            global $_G;
            $setting=&$_G['cache']['plugin']['chs_tiebalist'];
            if (!$setting['enabled']) return;
            $fid = intval($_G['fid']);
            $forumselected=unserialize($setting['forumselected']);
            if(!in_array($fid,$forumselected)) return;
            
            if ($_G['forum']['picstyle'] == 0||$_G['cookie']['forumdefstyle']==1){
                global $_G;
                $threadlist = array();
                $threadlist = $_G['forum_threadlist'];
                $tiebalist = array();
                $messagelength=$setting['messagelength']?$setting['messagelength']:100;
                $picturenum=$setting['$picturenum']?$setting['$picturenum']:3;
                include libfile('function/post');
                require_once('thumbbuilder.class.php');
                $oTB=new ThumbBuilder();
                foreach($threadlist as $key => $value){
                    $position=($value['special']==2)?2:1;//商品主题的首帖在第二楼,回复从第3楼开始
                    $firstpost=C::t('forum_post')->fetch_all_by_tid_position('tid:'.$value['tid'],$value['tid'],$position);
                    if (count($firstpost)>0&&$firstpost[0]['invisible']>=0){
                        $post=&$firstpost[0];
                        $message=messagecutstr($post['message'],$messagelength);
                        $tiebalist[$key] = '<p>'.$message.'</p>';
                        $attachs=C::t('forum_attachment_n')->fetch_all_by_id('pid:'.$post['pid'],'pid',$post['pid'],false,true,false,false,$picturenum);
                        $aids=array_keys($attachs);
                        if ($aids){
                            $imagelist=$oTB->GetThreadCovers($value['tid'],$aids);
                            if (count($imagelist)>0) {
                                $tiebalist[$key].='<ul id="thumblist_'.$value['tid'].'" class="thumblist cl">';
                                foreach($imagelist as $ii=>$image){
                                    $attach=$attachs[$image['aid']];
                                    $forumimg=($attach['remote'] ? $_G['setting']['ftp']['attachurl'] : $_G['setting']['attachurl']).'forum/'.$attach['attachment'];
                                    $tiebalist[$key].='<li data="'.$forumimg.'" onclick="showpicture('.$value['tid'].','.$ii.');return false;"><img src="'.$image['thumbfile'].'"/></li>';
                                }
                                $tiebalist[$key].='</ul>';
                                $tiebalist[$key].=
                                '<div id="picturebox_'.$value['tid'].'" class="picturedisplay" style="display:none;">
                                    <div class="picturecontrol">
                                        <a class="icon_close" onclick="closepicture('.$value['tid'].');return false;">收起</a>
                                        <span>|</span>
                                        <a class="icon_viewpost" href="forum.php?mod=viewthread&tid='.$value['tid'].'&extra=page%3D1">查看帖子</a>
                                        <span>|</span>
                                        <a class="icon_turnleft" onclick="turnimg('.$value['tid'].',1);return false;">左转</a>
                                        <span>|</span>
                                        <a class="icon_turnright" onclick="turnimg('.$value['tid'].',0);return false;">右转</a>
                                    </div>
                                    <div class="picturewrap" >
                                        <a onclick="closepicture('.$value['tid'].');return false;"><img class="picture" src="" /></a>
                                        <div class="goprevious"></div>
                                        <div class="gonext"></div>
                                    </div>
                                </div>';  
                            }
                        }
                    }
                }
                return $tiebalist;
            }
        }
        function  forumdisplay_threadlist_bottom() {
    global $_G;
            $setting=&$_G['cache']['plugin']['chs_tiebalist'];
            if (!$setting['enabled']) return;
            $fid = intval($_G['fid']);
            $forumselected=unserialize($setting['forumselected']);
            if(!in_array($fid,$forumselected)) return;
    $echo = '<link rel="stylesheet" type="text/css" href="source/plugin/chs_tiebalist/template/css/tiebalist.css" />';
    $echo .= '<script src="source/plugin/chs_tiebalist/template/js/tiebalist.js"  type="text/javascript"></script>';
            $picturemaxwidth=$setting['picturemaxwidth']?$setting['picturemaxwidth']:600;
            $echo .='<script type="text/javascript">var picturemaxwidth='.$picturemaxwidth.';</script>';
    return $echo;
    }
        function post_chs_tiebalist_message($params) {
    global $_G, $tid, $pid, $modthread, $isfirstpost;
            $setting=&$_G['cache']['plugin']['chs_tiebalist'];
            if (!$setting['enabled']) return;
            $fid = intval($_G['fid']);
            $forumselected=unserialize($setting['forumselected']);
            if(!in_array($fid,$forumselected)) return;
    list($msg, $url_forward, $values, $extraparam) = $params['param'];
    if (($msg == 'post_newthread_succeed')||($msg == 'post_newthread_mod_succeed')) {
    $pid = $modthread->pid;
    $this->create_covers($pid,$tid);
    dshowmessage($msg, $url_forward, $values, $extraparam);
    }else if (($msg == 'post_edit_succeed')&&$isfirstpost) {
    $tid=$_G['tid'];
    $this->create_covers($pid,$tid);
    dshowmessage($msg, $url_forward, $values, $extraparam);
    }
        }
        private function create_covers($pid,$tid){
    global $_G;
            $setting=&$_G['cache']['plugin']['chs_tiebalist'];
            $picturenum=$setting['$picturenum']?$setting['$picturenum']:3;
    //获取帖子的图片
    $attachs=C::t('forum_attachment_n')->fetch_all_by_id('pid:'.$pid,'pid',$pid,false,true,false,false,$picturenum);
    $images=array();
    foreach($attachs as $attach){
    $images[$attach['aid']]=($attach['remote'] ? $_G['setting']['ftp']['attachdir'] : $_G['setting']['attachdir']).'forum/'.$attach['attachment'];
    }
    if ($images){
    require_once("thumbbuilder.class.php");
    $oTB=new ThumbBuilder();
    $oTB->CreateThreadCovers($tid,$images);
    }
    }
    }?>