묻고답하기

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 남기남
thdwjdtjr 스케치북에서 게시물 이동이 되질 않습니다.  
나이너 게시판에 밴드 아이콘은 입력이 안되는건가요? file  
thdwjdtjr 헤시태그와 태그는 어느 때 어떤 식으로 작성하여야 하는지요 ???? [2] 2015.10.31 by thdwjdtjr
가브리엘조 핀터레스트형태의 레이아웃/갤러리모듈 판매하는 곳  
도르르 .htaccess도메인 변경설정 및 업로드 용량 바꾸기문제 (급합니다. 서버에러났습니다ㅠ) [2] file 2015.10.31 by YJSoft
똑디 모바일에서 파일 첨부 가능하신가요?  
라디오스테이션 쉘 접근없이 백업을 진행하려면 어떻게 해야하나요?  
ray 회원가입시 홈페이지 중복검사를 하고 싶습니다. [2] 2015.10.31 by ray
500원짜리 게시판 사용자 정의 다국어 추가시 에러 [2] file 2015.10.30 by 500원짜리
이원희884 게시판이나 페이지에 글을 올리거나 수정하고 등록이 않됩니다.  
김윤하fa53c XE 모바일에서 글쓸때 이미지 첨부가 안나와요.  
123_1 글 보호 기능에서 글 수정은 가능하게 하는 방법 없을까요? [2] 2015.10.30 by 123_1
똑디 XE 설치 - 서버환경 문의 [9] 2015.10.30 by 기진곰
안정배 [XE4 게시판] 글을 Xepres Engine 최신 버전에 옮기는 방법 문의  
xe사용자권한 구글애드센스 문의좀요  
가을풍경 xe 1.8.13 에서 ckeditor  바로 지접  복사 붙여넣기가 안돼는데 ....  
초보에염 통합검색시 게시판 별로 볼 수 있도록 하는 방법 있나요 ?  
전갈자리남 애스센스 관련 [3] 2015.10.30 by 기진곰
Ystory 쇼핑몰 재고 문의 입니다.  
키노 사이드메뉴바 크기 조절을 어떻게 해야 할까요? [1] file 2015.10.30 by DoorWeb
xe사용자권한 구글 애드센스 삽입좀하렬고하는데 ,,,가르쳐주세요 ㅠㅠ  
건즈 로그인을 안해도 검색 가능하도록 하고 싶습니다. 뭐가 문제인가요?  
ilkuang 페이스북 Socialxe 로그인 시 프로필 이미지를 못가져오는 문제 file  
wulrara 관리자 권한에 대한 질의 [2] file 2015.10.30 by sports21
제로보드신세계잼 카메론 bx 슬라이드 모바일 관련 질문입니다. [1] 2015.10.30 by treasurej
키쨩 게시판 댓글창을 삭제하고싶은대 어떻게삭제하나요 ?  
ING 설정 기본URL 주소 변경시 페이지 경로 오류  
키쨩 뒤에주소 안보게할수없나요 ? [1] 2015.10.29 by DoorWeb
레인포드 xe 스쿨보고 따라하는 중 메뉴바 서브매뉴 관련 [4] 2015.10.29 by 레인포드
thdwjdtjr 게시판에서 회원 닉네임 클릭시 팝업창이 안뜨게할 수 없나요 [6] 2015.10.29 by thdwjdtjr