웹마스터 팁

게시판 설정에 보면은

관리자 메일이라고 있습니다

해당 글이 관리자에게 발송되는 기능이죠

그런데 이게 음.... 한번 설정해 두면 누가 받고 있는지 모르고....

그리고 특정한 사람한테도 또 받게 해두기 싫고 머 그런 생각에서

열심히 수정해서 나름 성공 시킨것을 공유 하려고 합니다

 

0. 관리자메일 부분에 아무 메일이나 하나 넣어 두세요

1. 등록할 확장변수 2개

 - 확장변수 이름이나 순서는 상관 없습니다 하지만 입력항목 이름은 꼬옥 아래와 같이 해주세요(소스 수정 하시면 변경 하셔도 됩니다)

 확장변수.png

 

2.  /modules/board/board.controller.php 수정

 

                // 문제가 없고 모듈 설정에 관리자 메일이 등록되어 있으면 메일 발송
                if($output->toBool() && $this->module_info->admin_mail) {

 

....................... 이부분에 소스를 넣어 시면 됩니다

 

                    $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();
                    }
                }
            }

 

3. 입력할 소스

 

                // 문제가 없고 모듈 설정에 관리자 메일이 등록되어 있으면 메일 발송
                if($output->toBool() && $this->module_info->admin_mail) {

                    $oMail = new Mail();
                    $oMail->setTitle($obj->title);

     //확장변수 이용 메일 발송 시작

     $extra_keys = $oDocumentModel->getExtraKeys($obj->module_srl);

     /**
     ** 확장변수를 이용한 선택적 메일발송
     ** 0. 관리자 메일 1건 이상의 메일 기재
     ** 1. 확장변수 이름이 <메일발송-수신> 인 항목을 발송함
     ** 2. 다중선택 방식으로 기재함(수신인을 선택하며 소스단에서 변경하여 메일 발송)
     **  - 다중선택시 문자열 구분을 < |@| > 하므로 < , > 변경함
     ** 3. 변경된 수신인을 $this->module_info->admin_mail 항목으로 변경(메일이 발송되게 됨!!)
     **/

      if(count($extra_keys)) {
       foreach($extra_keys as $idx => $extra_item) {
        if($extra_keys[$idx]->name == '메일발송-수신') $value1 = trim($obj->{'extra_vars'.$idx});
        if($extra_keys[$idx]->name == '메일발송-참조') $value2 = trim($obj->{'+ 'extra_vars'.$idx});
       }
      }

     /**
     ** 해당문자열을 < |@| > 을 < , > 변경
     **/

      $value1 = str_replace("|@|",",",$value1);
      $value2 = str_replace("|@|",",",$value2);

 

      $value_1 = str_replace("홍길동1","aaaa@aaa.net",$value1);
      $value_1 = str_replace("홍길동2","aaaa@aaa.net",$value_1);
     

      $value_2 = str_replace("홍길동1","aaaa@aaa.net",$value2);
      $value_2 = str_replace("홍길동2","aaaa@aaa.net",$value_2);
      

      $content_plus = "받는 사람 : ".$value1."<br />참조 : ".$value2."<br />--------------------------------------------------------------------------------------------------------------------<br />";

      $t_content = $obj->content;
      $obj->content = $content_plus;
      $obj->content .= $t_content;
    
      $this->module_info->admin_mail = $value_1.",".$value_2;

     //모든 게시판
     $oMail->setContent( sprintf("<a href=\"%s\"><a href=\"%s\"><img src='http://creamhouse.wo.tc/xe/files/go.gif'></a></a><br/>\r\n<div style='font-size: 12px; padding-left: 15px;'>%s</div>", 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();
                    }
                }
            }

 

 

대략 이런겁니다 (설명이 안되어서 ㅡ.ㅢ;ㅣㅣ)

 

특정 확장변수를 체크해서 그 확장변수가 있으면

그 확장변수의 내용에 있는 이름들을 가져와서

미리 지정된 이름이랑 매칭해서 메일을 보내게 됩니다 ㅡㅡa

음 쉽게 설명 하려고 했는데 ㅡ.ㅡ;; 잘 됐나 모르겠네요...

그럼 (__)

 

전 이제 메일 쓰면 파일까지 자동으로 나타나게 하는거 연구 하려고 하는데

미리 구현 하신분 게시면 도움을

제목 글쓴이 날짜
외부 이미지 저장 애드온 [7] file samsara 2013.03.26
XE 1.5.X , 1.7.X 용 nginx rewrite [4] Root 2013.03.24
nginx에서 짧은 주소가 동작하지 않는 경우 해결 [3] Gunmania 2013.03.24
재미있는 조건문 팁 두 가지. [2] 엘카 2013.03.23
팝업모듈에서 jQuery 충돌 해결 - 팝업창이 안뜰때. [5] file 똑디 2013.03.22
요약 책갈피 경량판 sns 링크 버튼 디자인 보완 [1] file 웹플러스7 2013.03.21
팝업모듈 사용시 슬라이드js와 충돌문제 [2] 꿈틀잉 2013.03.21
Sketchbook5 레이아웃과 관리자메뉴 충돌 해결 [2] file YJSoft 2013.03.20
회원가입 확장 모듈 1.7.X 및 모바일에서 사용가능하도록 [10] file hhgyu 2013.03.18
외부이미지 저장 애드온을 본문을 읽으면 작동하도록 하자!! 1.7.3적용 [18] 하얀마법 2013.03.16
1.7 버전의 새로워진 사이트맵(메뉴편집)에 적응해보자! [8] file EnuX 2013.03.15
팝업 모듈에서, 사이트 전체에 팝업 띄우는 방법 모르시는 분들을 위해 ^^; [2] sejin7940 2013.03.13
xe 속도 엄청 빨라집니다. [4] 투투투쓰리 2013.03.12
지식인 모듈 기본스킨에서 카테고리 선택 안 해도 질문이 등록되는 버그 수정법 sejin7940 2013.03.12
데이타베이스 복제를 하면 속도가 8%정도 빨라짐 가을풍경 2013.03.03
회원가입시 유저가 비공개 설정하기 [1] file 모앱 2013.03.03
XE 루트로 접속하기 (이동 필요없음) [12] 모앱 2013.03.03
제로보드 4 -> xe 신버전으로 마이그레이션 경험담 [4] file 윤안젤로 2013.02.28
XE 루트로 옮기기 완벽 가이드 [/xe/ 로부터 벗어나자!] ver 1.1 [107] file LI-NA 2013.02.26
RSS 게시판 업데이터 모듈이 SSL 부분적용시 동작하지 않는 문제 해결하기 [25] Gunmania 2013.02.25