묻고답하기

쪽지 보내기 기능을 특정 그룹만 사용가능하도록 바꾸고 싶어요!! 


member_communication 에서 손을 봐주면 될 것도 같은 데 ... 


어느부분을 수정해주고 또 어떻게 수정해줘야할까요? ㅠㅠ 


아이디가입후 쪽지로 광고하는 무리들이 급증해서 질문드립니다!! 


<?php

    if(!defined("__ZBXE__")) exit();


    /**

     * @file member_communication.addon.php

     * @author NHN (developers@xpressengine.com)

     * @brief 사용자의 커뮤니케이션 기능을 활성화

     *

     * - 새로운 쪽지가 왔을 경우 팝업으로 띄움

     * - MemberModel::getMemberMenu 호출시 대상이 회원일 경우 쪽지 보내기 기능 추가합니다.

     * - MemberModel::getMemberMenu 호출시 친구 등록 메뉴를 추가합니다.

     **/


    // 비로그인 사용자면 중지

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

    if(!$logged_info) return;


    /**

     * 기능 수행 : 팝업 및 회원정보 보기에서 쪽지/친구 메뉴 추가. 시작할때 새쪽지가 왔는지 검사

     **/

    if($called_position == 'before_module_init' && $this->module != 'member') {


        // 커뮤니케이션 모듈의 언어파일을 읽음

        Context::loadLang('./modules/communication/lang');


        // 회원 로그인 정보중에서 쪽지등의 메뉴를 추가

        $oMemberController = &getController('member');

        $oMemberController->addMemberMenu('dispCommunicationMessages', 'cmd_view_message_box');


        // 새로운 쪽지에 대한 플래그가 있으면 쪽지 보기 팝업 띄움

        $flag_path = './files/member_extra_info/new_message_flags/'.getNumberingPath($logged_info->member_srl);

        $flag_file = sprintf('%s%s', $flag_path, $logged_info->member_srl);


        if(file_exists($flag_file)) {

            $new_message_count = FileHandler::readFile($flag_file);

            FileHandler::removeFile($flag_file);

            Context::loadLang('./addons/member_communication/lang');


            $script =  sprintf('<script type="text/javascript"> jQuery(function() { if(confirm("%s")) { popopen("%s"); } }); </script>', sprintf(Context::getLang('alert_new_message_arrived'), $new_message_count), Context::getRequestUri().'?module=communication&act=dispCommunicationNewMessage');


            Context::addHtmlHeader( $script );

        }


    /**

     * 기능 수행 : 사용자 이름을 클릭시 요청되는 팝업메뉴의 메뉴에 쪽지 발송, 친구추가등의 링크 추가

     **/

    } elseif($called_position == 'before_module_proc' && $this->act == 'getMemberMenu') {


        $oMemberController = &getController('member');

        $member_srl = Context::get('target_srl');

        $mid = Context::get('cur_mid');


        // communication 모델 객체 생성

        $oCommunicationModel = &getModel('communication');


        // 자신이라면 쪽지함 보기 기능 추가

        if($logged_info->member_srl == $member_srl) {


            // 자신의 쪽지함 보기 기능 추가

            $oMemberController->addMemberPopupMenu(getUrl('','mid',$mid,'act','dispCommunicationMessages'), 'cmd_view_message_box', './modules/communication/tpl/images/icon_message_box.gif', 'self');


        // 아니라면 쪽지 발송, 친구 등록 추가

        } else {

            // 대상 회원의 정보를 가져옴

            $oMemberModel = &getModel('member'); 

            $target_member_info = $oMemberModel->getMemberInfoByMemberSrl($member_srl);

            if(!$target_member_info->member_srl) return;


            // 로그인된 사용자 정보를 구함

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


            // 쪽지 발송 메뉴를 만듬

            if( $logged_info->is_admin == 'Y' || $target_member_info->allow_message =='Y' || ($target_member_info->allow_message == 'F' && $oCommunicationModel->isFriend($member_srl)))

                $oMemberController->addMemberPopupMenu(getUrl('','module','communication','act','dispCommunicationSendMessage','receiver_srl',$member_srl), 'cmd_send_message', './modules/communication/tpl/images/icon_write_message.gif', 'popup');


       }

    }

?>


글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
우리아기 메모박스 에서 현제접속자 누루면  
감자상 이 스킨 이름좀알려주세요 [1] 2009.08.30 by mc뷰
싱글킨 에디터가 깨져서 나오는데.. 원인을 혹시 아시는분있으시면 도와주세요. [2] 2009.08.30 by 난다날아
나그네 주저... 첨부파일 사라짐.. 정녕 해결방법이 없는 건가요? T.T [4] 2009.08.30 by 나그네
puser 페이지수정문의점요...  
꼼장어 홈페이지 접근 불가..... [1] 2009.08.31 by puser
int21 비밀번호찾기에서 NULL값만 나오네여... [2] 2009.08.31 by int21
위젯 최근게시물 출력을 어떻게 하나요?  
쌈꾼 작성글보기가 2개로 보이네요.  
j500024 쓰기파일write.php에서 뷰파일view.php 설정어떻게하는지 도와주세요.  
미야 자유게시판이 왜 플래닛홈으로 대체 된건가요? [2] 2009.08.31 by khongchi
이경민 제로보드 관리자 로그인시 계속 첫화면이 나옵니다.  
그린 레이아웃 스킨을 다운받아서 적용했는데 에러가 뜹니다.  
위젯 밑에 최근게시물 다는 방법 질문했는데.. [2] 2009.08.31 by 보라생이
복고열전 모듈을 설치하면 설치한 파일들은 어느 파일로 복사가 되나요? [2] 2009.08.31 by 복고열전
이돌이 문서가 올려진 게시판을 찾을수가 없어요  
궁금이 캘린더(Calendar) 위젯에서 영문으로 바꾸었을때 나타나는 요일을 약자로 표기하려면 어떻게 해야 하나요? [1] 2009.08.31 by 궁금이2
단순분 위에 ''질문/답변 게시판'' 형태 질문이니다. [2] 2009.08.31 by 단순문
히로보 첨부파일만 다른서버에 저장하는 방법  
오륙칠 서브메뉴 색상변경 및 메뉴별 배경음악 문의 [1] file 2009.08.31 by 궁금이2