묻고답하기

board.contraller.php에서 anymouse를 수정하면 된다고 해서 바꿨는데 안 되더라고요.....

 

--- 아래는 파일의 소스 코드입니다 ---

 

<?php
/* Copyright (C) NAVER <http://www.navercorp.com> */

/**
 * @class  boardController
 * @author NAVER (developers@xpressengine.com)
 * @brief  board module Controller class
 **/

class boardController extends board
{

    /**
     * @brief initialization
     **/
    function init()
    {
    }

    /**
     * @brief insert document
     **/
    function procBoardInsertDocument()
    {
        // check grant
        if($this->module_info->module != "board")
        {
            return new Object(-1, "msg_invalid_request");
        }
        if(!$this->grant->write_document)
        {
            return new Object(-1, 'msg_not_permitted');
        }
        $logged_info = Context::get('logged_info');

        // setup variables
        $obj = Context::getRequestVars();
        $obj->module_srl = $this->module_srl;
        if($obj->is_notice!='Y'||!$this->grant->manager) $obj->is_notice = 'N';
        $obj->commentStatus = $obj->comment_status;

        settype($obj->title, "string");
        if($obj->title == '') $obj->title = cut_str(trim(strip_tags(nl2br($obj->content))),20,'...');
        //setup dpcument title tp 'Untitled'
        if($obj->title == '') $obj->title = 'Untitled';

        // unset document style if the user is not the document manager
        if(!$this->grant->manager)
        {
            unset($obj->title_color);
            unset($obj->title_bold);
        }

        // generate document module model object
        $oDocumentModel = getModel('document');

        // generate document module의 controller object
        $oDocumentController = getController('document');

        // check if the document is existed
        $oDocument = $oDocumentModel->getDocument($obj->document_srl, $this->grant->manager);

        // update the document if it is existed
        $is_update = false;
        if($oDocument->isExists() && $oDocument->document_srl == $obj->document_srl)
        {
            $is_update = true;
        }

        // if use anonymous is true
        if($this->module_info->use_anonymous == 'Y')
        {
            $this->module_info->admin_mail = '';
            $obj->notify_message = 'N';
            if($is_update===false)
            {
                $obj->member_srl = -1*$logged_info->member_srl;
            }
            $obj->email_address = $obj->homepage = $obj->user_id = '';
            $obj->user_name = $obj->nick_name = '소녀';
            $bAnonymous = true;
            if($is_update===false)
            {
                $oDocument->add('member_srl', $obj->member_srl);
            }
        }
        else
        {
            $bAnonymous = false;
        }

        if($obj->is_secret == 'Y' || strtoupper($obj->status == 'SECRET'))
        {
            $use_status = explode('|@|', $this->module_info->use_status);
            if(!is_array($use_status) || !in_array('SECRET', $use_status))
            {
                unset($obj->is_secret);
                $obj->status = 'PUBLIC';
            }
        }

        // update the document if it is existed
        if($is_update)
        {
            if(!$oDocument->isGranted())
            {
                return new Object(-1,'msg_not_permitted');
            }

            if($this->module_info->protect_content=="Y" && $oDocument->get('comment_count')>0 && $this->grant->manager==false)
            {
                return new Object(-1,'msg_protect_content');
            }

            if(!$this->grant->manager)
            {
                // notice & document style same as before if not manager
                $obj->is_notice = $oDocument->get('is_notice');
                $obj->title_color = $oDocument->get('title_color');
                $obj->title_bold = $oDocument->get('title_bold');
            }
            
            // modify list_order if document status is temp
            if($oDocument->get('status') == 'TEMP')
            {
                $obj->last_update = $obj->regdate = date('YmdHis');
                $obj->update_order = $obj->list_order = (getNextSequence() * -1);
            }

            $output = $oDocumentController->updateDocument($oDocument, $obj);
            $msg_code = 'success_updated';

        // insert a new document otherwise
        } else {
            $output = $oDocumentController->insertDocument($obj, $bAnonymous);
            $msg_code = 'success_registed';
            $obj->document_srl = $output->get('document_srl');

            // send an email to admin user
            if($output->toBool() && $this->module_info->admin_mail)
            {
                $oMail = new Mail();
                $oMail->setTitle($obj->title);
                $oMail->setContent( sprintf("From : <a href=\"%s\">%s</a><br/>\r\n%s", getFullUrl('','document_srl',$obj->document_srl), getFullUrl('','document_srl',$obj->document_srl), $obj->content));
                $oMail->setSender($obj->user_name, $obj->email_address);

                $target_mail = explode(',',$this->module_info->admin_mail);
                for($i=0;$i<count($target_mail);$i++)
                {
                    $email_address = trim($target_mail[$i]);
                    if(!$email_address) continue;
                    $oMail->setReceiptor($email_address, $email_address);
                    $oMail->send();
                }
            }
        }

        // if there is an error
        if(!$output->toBool())
        {
            return $output;
        }

        // return the results
        $this->add('mid', Context::get('mid'));
        $this->add('document_srl', $output->get('document_srl'));

        // alert a message
        $this->setMessage($msg_code);
    }

    /**
     * @brief delete the document
     **/
    function procBoardDeleteDocument()
    {
        // get the document_srl
        $document_srl = Context::get('document_srl');

        // if the document is not existed
        if(!$document_srl)
        {
            return $this->doError('msg_invalid_document');
        }

        $oDocumentModel = &getModel('document');
        $oDocument = $oDocumentModel->getDocument($document_srl);
        // check protect content
        if($this->module_info->protect_content=="Y" && $oDocument->get('comment_count')>0 && $this->grant->manager==false)
        {
            return new Object(-1, 'msg_protect_content');
        }

        // generate document module controller object
        $oDocumentController = getController('document');

        // delete the document
        $output = $oDocumentController->deleteDocument($document_srl, $this->grant->manager);
        if(!$output->toBool())
        {
            return $output;
        }

        // alert an message
        $this->add('mid', Context::get('mid'));
        $this->add('page', $output->get('page'));
        $this->setMessage('success_deleted');
    }

    /**
     * @brief vote
     **/
    function procBoardVoteDocument()
    {
        // generate document module controller object
        $oDocumentController = getController('document');

        $document_srl = Context::get('document_srl');
        return $oDocumentController->updateVotedCount($document_srl);
    }

    /**
     * @brief insert comments
     **/
    function procBoardInsertComment()
    {
        // check grant
        if(!$this->grant->write_comment)
        {
            return new Object(-1, 'msg_not_permitted');
        }
        $logged_info = Context::get('logged_info');

        // get the relevant data for inserting comment
        $obj = Context::getRequestVars();
        $obj->module_srl = $this->module_srl;

        if(!$this->module_info->use_status) $this->module_info->use_status = 'PUBLIC';
        if(!is_array($this->module_info->use_status))
        {
            $this->module_info->use_status = explode('|@|', $this->module_info->use_status);
        }

        if(in_array('SECRET', $this->module_info->use_status))
        {
            $this->module_info->secret = 'Y';
        }
        else
        {
            unset($obj->is_secret);
            $this->module_info->secret = 'N';
        }

        // check if the doument is existed
        $oDocumentModel = getModel('document');
        $oDocument = $oDocumentModel->getDocument($obj->document_srl);
        if(!$oDocument->isExists())
        {
            return new Object(-1,'msg_not_founded');
        }

        // For anonymous use, remove writer's information and notifying information
        if($this->module_info->use_anonymous == 'Y')
        {
            $this->module_info->admin_mail = '';
            $obj->notify_message = 'N';
            $obj->member_srl = -1*$logged_info->member_srl;
            $obj->email_address = $obj->homepage = $obj->user_id = '';
            $obj->user_name = $obj->nick_name = '소녀';
            $bAnonymous = true;
        }
        else
        {
            $bAnonymous = false;
        }

        // generate comment  module model object
        $oCommentModel = getModel('comment');

        // generate comment module controller object
        $oCommentController = getController('comment');

        // check the comment is existed
        // if the comment is not existed, then generate a new sequence
        if(!$obj->comment_srl)
        {
            $obj->comment_srl = getNextSequence();
        } else {
            $comment = $oCommentModel->getComment($obj->comment_srl, $this->grant->manager);
        }

        // if comment_srl is not existed, then insert the comment
        if($comment->comment_srl != $obj->comment_srl)
        {

            // parent_srl is existed
            if($obj->parent_srl)
            {
                $parent_comment = $oCommentModel->getComment($obj->parent_srl);
                if(!$parent_comment->comment_srl)
                {
                    return new Object(-1, 'msg_invalid_request');
                }

                $output = $oCommentController->insertComment($obj, $bAnonymous);

            // parent_srl is not existed
            } else {
                $output = $oCommentController->insertComment($obj, $bAnonymous);
            }
        // update the comment if it is not existed
        } else {
            // check the grant
            if(!$comment->isGranted())
            {
                return new Object(-1,'msg_not_permitted');
            }

            $obj->parent_srl = $comment->parent_srl;
            $output = $oCommentController->updateComment($obj, $this->grant->manager);
            $comment_srl = $obj->comment_srl;
        }

        if(!$output->toBool())
        {
            return $output;
        }

        $this->setMessage('success_registed');
        $this->add('mid', Context::get('mid'));
        $this->add('document_srl', $obj->document_srl);
        $this->add('comment_srl', $obj->comment_srl);
    }

    /**
     * @brief delete the comment
     **/
    function procBoardDeleteComment()
    {
        // get the comment_srl
        $comment_srl = Context::get('comment_srl');
        if(!$comment_srl)
        {
            return $this->doError('msg_invalid_request');
        }

        // generate comment  controller object
        $oCommentController = getController('comment');

        $output = $oCommentController->deleteComment($comment_srl, $this->grant->manager);
        if(!$output->toBool())
        {
            return $output;
        }

        $this->add('mid', Context::get('mid'));
        $this->add('page', Context::get('page'));
        $this->add('document_srl', $output->get('document_srl'));
        $this->setMessage('success_deleted');
    }

    /**
     * @brief delete the tracjback
     **/
    function procBoardDeleteTrackback()
    {
        $trackback_srl = Context::get('trackback_srl');

        // generate trackback module controller object
        $oTrackbackController = getController('trackback');

        if(!$oTrackbackController) return;

        $output = $oTrackbackController->deleteTrackback($trackback_srl, $this->grant->manager);
        if(!$output->toBool())
        {
            return $output;
        }

        $this->add('mid', Context::get('mid'));
        $this->add('page', Context::get('page'));
        $this->add('document_srl', $output->get('document_srl'));
        $this->setMessage('success_deleted');
    }

    /**
     * @brief check the password for document and comment
     **/
    function procBoardVerificationPassword()
    {
        // get the id number of the document and the comment
        $password = Context::get('password');
        $document_srl = Context::get('document_srl');
        $comment_srl = Context::get('comment_srl');

        $oMemberModel = getModel('member');

        // if the comment exists
        if($comment_srl)
        {
            // get the comment information
            $oCommentModel = getModel('comment');
            $oComment = $oCommentModel->getComment($comment_srl);
            if(!$oComment->isExists())
            {
                return new Object(-1, 'msg_invalid_request');
            }

            // compare the comment password and the user input password
            if(!$oMemberModel->isValidPassword($oComment->get('password'),$password))
            {
                return new Object(-1, 'msg_invalid_password');
            }

            $oComment->setGrant();
        } else {
             // get the document information
            $oDocumentModel = getModel('document');
            $oDocument = $oDocumentModel->getDocument($document_srl);
            if(!$oDocument->isExists())
            {
                return new Object(-1, 'msg_invalid_request');
            }

            // compare the document password and the user input password
            if(!$oMemberModel->isValidPassword($oDocument->get('password'),$password))
            {
                return new Object(-1, 'msg_invalid_password');
            }

            $oDocument->setGrant();
        }
    }

    /**
     * @brief the trigger for displaying 'view document' link when click the user ID
     **/
    function triggerMemberMenu(&$obj)
    {
        $member_srl = Context::get('target_srl');
        $mid = Context::get('cur_mid');

        if(!$member_srl || !$mid)
        {
            return new Object();
        }

        $logged_info = Context::get('logged_info');

        // get the module information
        $oModuleModel = getModel('module');
        $columnList = array('module');
        $cur_module_info = $oModuleModel->getModuleInfoByMid($mid, 0, $columnList);

        if($cur_module_info->module != 'board')
        {
            return new Object();
        }

        // get the member information
        if($member_srl == $logged_info->member_srl)
        {
            $member_info = $logged_info;
        } else {
            $oMemberModel = getModel('member');
            $member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl);
        }

        if(!$member_info->user_id)
        {
            return new Object();
        }

        //search
        $url = getUrl('','mid',$mid,'search_target','nick_name','search_keyword',$member_info->nick_name);
        $oMemberController = getController('member');
        $oMemberController->addMemberPopupMenu($url, 'cmd_view_own_document', '');

        return new Object();
    }
}

-------

어떻게 하면 바꿀 수 있을까요?

글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
화이팅 xe 모바일웹 단체문자  
퍼즐조각 xe 코어를 업데이트했다가......... [2] 2015.11.12 by 댑펑
멈치멈치 \ 자동으로 생기는 문제 [2] 2015.11.12 by Jay
홍디자인 쉬운설치 오류 file  
기만1988 포인트를 구입 할수 있는 모듈은 없나요? [1] 2015.11.12 by sejin7940
angel 로그인 유지 없애기.. [1] 2015.11.12 by 우리아기
XESTUDIO ajax를 사용해서 댓글 새로고침없이 작성하게 하기 [1] 2015.11.12 by kdp
lamb91 MySql과 MariaDB 동시 운영 가능한지요?  
likehaze 하단메뉴중 li가 넘어갑니다.. [2] 2015.11.12 by likehaze
DOD 업로드 파일타입에 따라 표시여부 결정ㅠㅠ [1] 2015.11.12 by DOD
say_oow 확장변수 셀렉트박스 질문..  
나이너 게시판에 사진첨부하면 작게 나와요.. [5] file 2015.11.12 by newi
룬츠 답글 닉네임 안 보이게 하는 방법? [1] 2015.11.12 by sejin7940
시네라리아 xe 업데이트 후 오류 [2] 2015.11.12 by 시네라리아
sage하늘 대메뉴, 서브메뉴. 글자크기 변경 질문합니다! [5] 2015.11.11 by DoorWeb
은지비 레이어 팝업 에드온 에서 링크 걸고싶은데요  
소보로빵 누리고 쇼핑몰 중 가상계좌 입금미통보 문제  
마하수리 저장된 댓글 불러오기  
sage하늘 게시판이 목록화면이 이상합니다. file  
우랑탕탕이 댓글에 있는 첨부파일 고장  
l****2f648 xe 현재버전 게시판 말머리 다는법  
피코스스 포인트 히스토리 내용 상세 file  
조예린 서버호스팅 시 DB id와 비번 설정하는 방법 [3] 2015.11.11 by EISOFT
퍼즐조각 특정회원만 PC에서 로그인이 안 되는 문제........ [5] 2015.11.11 by EISOFT
ING XEDITION 게시판 댓글 아이콘변경 [1] file 2015.11.11 by 우리아기
이두바끈 xe 업데이트하다가 Forbidden에러가 났습니다. file  
펑펑 위젯 엄청난 오류 발견!!! [1] 2015.11.10 by 워프101
앙기모찌 레이아웃 제작비용 질문 [3] 2015.11.10 by 워프101
맹구학생 위젯페이지 생성후 [1] 2015.11.10 by 워프101
퍼즐조각 모바일 버전이 PC처럼 나와요 ㅠㅠ [1] 2015.11.10 by 워프101