비추천이 일정횟수 이상일때 블라이드 기능 (2017-11-19 18:03 수정) > 그누보드5 팁자료실

그누보드5 팁자료실

비추천이 일정횟수 이상일때 블라이드 기능 (2017-11-19 18:03 수정) 정보

비추천이 일정횟수 이상일때 블라이드 기능 (2017-11-19 18:03 수정)

본문

본 강좌의 내용이 최신내용이 아닐수 있습니다

최초 강좌 게시후 업데이트는 게시글 본문 위 링크를 통해서 진행됩니다

가급적 이곳도 업데이트를 하려고 하지만, 꼭 같이 반영되지는 않습니다

본 강좌 적용시 위 링크의 강좌내용과 비교해서 선택적으로 사용하시기 바랍니다

 

 

게시판 설정에서 비추천 기능을 사용할 때만 작동하며
게시판 추가필드  wr_5 에  블라인드 기준이 되는 비추천수를 사용합니다.

블라인드 되면 링크  제거됨 , 관리자일때는 링크 사용 가능


1. 그누보드5 / skin / board / basic / list.skin.php 
                <a href="<?php echo $list[$i]['href'] ?>">
                    <?php echo $list[$i]['subject'] ?>
                    <?php if ($list[$i]['comment_cnt']) { ?><span class="sound_only">댓글</span><?php echo $list[$i]['comment_cnt']; ?><span class="sound_only">개</span><?php } ?>
                </a>
                <?php
                // if ($list[$i]['link']['count']) { echo '['.$list[$i]['link']['count']}.']'; }
                // if ($list[$i]['file']['count']) { echo '<'.$list[$i]['file']['count'].'>'; }
                if (isset($list[$i]['icon_new'])) echo $list[$i]['icon_new'];
                if (isset($list[$i]['icon_hot'])) echo $list[$i]['icon_hot'];
                if (isset($list[$i]['icon_file'])) echo $list[$i]['icon_file'];
                if (isset($list[$i]['icon_link'])) echo $list[$i]['icon_link'];
                if (isset($list[$i]['icon_secret'])) echo $list[$i]['icon_secret'];

를 다음과 같이 변경

                <?php
                // 신고글 관련 시작
                if ($board['bo_use_nogood']) {
                    $siren = "";
                    if ($board['bo_5_subj'] != "블라인드 비추천수")
                        sql_query("update ".$g5['board_table']." set bo_5_subj='블라인드 비추천수' where bo_table='".$bo_table."'", false); 
                    if ($board['bo_5']=="") {
                        sql_query("update ".$g5['board_table']." set bo_5='5' where bo_table='".$bo_table."'", false); 
                    }
                    
                    //echo $list[$i]['wr_nogood']."<br>";
                    //echo $board['bo_5']."<br>";
                    if ($list[$i]['wr_nogood'] >= $board['bo_5']){ //  신고횟수 지정
                        $siren = "Y";
                    }
                }
                
                if ($siren=="Y") { 
                    if ($is_admin) { echo "<a href='". $list[$i]['href'] ."'>"; }
                    echo "🚨 <span style='color:#bababa;text-decoration: line-through;'>".$list[$i]['subject']."";
                    if ($list[$i]['comment_cnt']) { ?><span class="sound_only">댓글</span><?php echo $list[$i]['comment_cnt']; ?><span class="sound_only">개</span><?php }
                    echo $list[$i]['icon_secret'];
                    echo "</span>";
                    if ($is_admin) { echo "</a>"; }
                } else { //신고글 아닐때
                ?>
                <a href="<?php echo $list[$i]['href'] ?>">
                    <?php echo $list[$i]['subject'] ?>
                    <?php if ($list[$i]['comment_cnt']) { ?><span class="sound_only">댓글</span><?php echo $list[$i]['comment_cnt']; ?><span class="sound_only">개</span><?php } ?>
                </a>

                <?php
                // if ($list[$i]['link']['count']) { echo '['.$list[$i]['link']['count']}.']'; }
                // if ($list[$i]['file']['count']) { echo '<'.$list[$i]['file']['count'].'>'; }

                if (isset($list[$i]['icon_new'])) echo $list[$i]['icon_new'];
                if (isset($list[$i]['icon_hot'])) echo $list[$i]['icon_hot'];
                if (isset($list[$i]['icon_file'])) echo $list[$i]['icon_file'];
                if (isset($list[$i]['icon_link'])) echo $list[$i]['icon_link'];
                if (isset($list[$i]['icon_secret'])) echo $list[$i]['icon_secret'];
                
                } // 신고글 관련 끝 
                ?>


2. 그누보드5 / skin / board / basic / view.skin.php

        <?php
        // 파일 출력
        $v_img_count = count($view['file']);
        if($v_img_count) {
            echo "<div id=\"bo_v_img\">\n";
            for ($i=0; $i<=count($view['file']); $i++) {
                if ($view['file'][$i]['view']) {
                    //echo $view['file'][$i]['view'];
                    echo get_view_thumbnail($view['file'][$i]['view']);
                }
            }
            echo "</div>\n";
        }
         ?>
        <!-- 본문 내용 시작 { -->
        <div id="bo_v_con"><?php echo get_view_thumbnail($view['content']); ?></div>
        <?php//echo $view['rich_content']; // 과 같은 코드를 사용할 경우 ?>
        <!-- } 본문 내용 끝 -->

를 다음의 내용으로 변경

        <?php
        // 신고글 관련 시작
        
        //echo "bo_use_nogood = ". $board['bo_use_nogood']."<br>";
        //echo "wr_nogood = " .$view['wr_nogood']."<br>";
        //echo "bo_5 = ". $board['bo_5']."<br>";
        
        if ($board['bo_use_nogood']) {
            if ($view['wr_nogood'] >= $board['bo_5']){ //  신고횟수 지정
                $siren = "Y";
            }
        }
        
        if ($siren=="Y") { 
        ?>
        
        <script>
        function SirenFunction(idMyDiv){
             var objDiv = document.getElementById(idMyDiv);
             if(objDiv.style.display=="block"){ objDiv.style.display = "none"; }
              else{ objDiv.style.display = "block"; }
        }
        </script>
        
        <style>
            .sir_singo_msg{color:#934545;margin-bottom:30px}
            .sir_singo_msg button {cursor:pointer;font-family:Arial,'돋움',Dotum;border:none;padding:0;background:#fff; outline:0}
            .sir_singo_msg .blind_view{font-size:1.14em;font-weight:bold;color:#ff4343;margin-top:-3px;text-decoration:underline}
            .singo_view { display:none; }
        </style>
        
        <div class="con_inner">
            <div class="sir_singo_msg">
                신고가 접수되어 자동으로 블라인드 된 글입니다.<br>
                원글을 보시려면 <a href="#" onclick="SirenFunction('SirenDiv'); return false;" class="blind_view">여기를</a> 클릭하세요
            </div>
            <div class="singo_view" id="SirenDiv">
                <?php
                // 파일 출력
                $v_img_count = count($view['file']);
                if($v_img_count) {
                    echo "<div id=\"bo_v_img\">\n";
        
                    for ($i=0; $i<=count($view['file']); $i++) {
                        if ($view['file'][$i]['view']) {
                            //echo $view['file'][$i]['view'];
                            echo get_view_thumbnail($view['file'][$i]['view']);
                        }
                    }
        
                    echo "</div>\n";
                }
                ?>
    
                <!-- 본문 내용 시작 { -->
                <div id="bo_v_con"><?php echo get_view_thumbnail($view['content']); ?></div>
                <?php//echo $view['rich_content']; // 과 같은 코드를 사용할 경우 ?>
                <!-- } 본문 내용 끝 -->
            </div>
         </div>
        <?php 
        } else {  //신고글 아닐때 
        ?>
        <?php
        // 파일 출력
        $v_img_count = count($view['file']);
        if($v_img_count) {
            echo "<div id=\"bo_v_img\">\n";

            for ($i=0; $i<=count($view['file']); $i++) {
                if ($view['file'][$i]['view']) {
                    //echo $view['file'][$i]['view'];
                    echo get_view_thumbnail($view['file'][$i]['view']);
                }
            }

            echo "</div>\n";
        }
         ?>

        <!-- 본문 내용 시작 { -->
        <div id="bo_v_con"><?php echo get_view_thumbnail($view['content']); ?></div>
        <?php//echo $view['rich_content']; // 과 같은 코드를 사용할 경우 ?>
        <!-- } 본문 내용 끝 -->
        <?php 
        }  // 신고글 관련 끝
        ?>
        <script>
        jQuery(function($) {
            $(".con_inner").on("click", "a", function(e){
        
                if( $(this).hasClass("view_image") ){
                    return;
                }
        
                var target = $(this).attr("target"),
                    href = $(this).attr("href"),
                    regex = /(\S*#\[[^\]]+\])|(\S*#\S+)/gi;
        
                if( target != 'self' && href && !regex.test(href) ){
                    e.preventDefault();
                    window.open( href );
                }
            });
        });
        </script>


참고자료
https://sir.kr/g5_tip/252

추천
2

댓글 8개

전체 126 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT