아래와 같이 트리거를 등록했습니다.

 

array('member.doLogin', 'boardcopy', 'controller', 'triggerLoginMember', 'after')

로그인 후 logged_info 에 특정값을 추가하려고 하는데요.

아래와 같이 처리했는데 Context::get('logged_info') 로 출력해보면 추가가 안되어 있네요.

logged_info 에 값을 추가하는 방법 없을까요?

 

function triggerLoginMember(&$obj)
 {
     $member_srl = intval($obj->member_srl);
     if(!$member_srl)
     {
         return;
     }
     // 로그인 정보에 복제된 게시판 정보 추가
    ....
     if($boardcopy_info)
     {
         $obj->boardcopy = $boardcopy_info;

         Context::set('logged_info', $obj);
     }
 }

 

 

 

  • ?
    logged_info 객체(?) 자체가 세션에 저장되는게 아니므로,
    저 함수에서 logged_info 를 set 하더라도, set 한 값을 다른 페이지에서 사용할 수 없을겁니다.

    저는 애드온에서...

    $logged_info = Context::get('logged_info');
    $logged_info->boardcopy = $data;
    Context::set('logged_info', $logged_info);

    로 사용하고 있습니다.
    모듈단에서 지원할만한 기능을 만든게 아니라서 애드온에서 처리했습니다만,
    질문자님이 필요하시다면, moduleInit 쪽의 트리거를 생성하셔서 처리하시면 될 것 같습니다.
  • ? profile
    답변 감사합니다.
    세션으로 처리했습니다^^