관리자권한설정을 한 회원 로그인시 관리자페이지 가기메뉴 출력 안되는 문제 > 시즌3 버그 & 건의

본문 바로가기

시즌3 버그 & 건의

관리자권한설정을 한 회원 로그인시 관리자페이지 가기메뉴 출력 안되는 문제

본문

이 문제와 관련하여 불꽃게이님이 질문답변란에 질문을 올렸는데 명확한 답변이 없어 소스를 뒤져 나름의 원인과 해결책을 찾아 올려 봅니다.

이윰님의 감수를 거쳐 버그로 판단이 되신다면 다음 패치에 반영을 건의 드립니다.

불꽃게이님 글 참조: http://www.eyoom.net/bbs/board.php?bo_table=qna&wr_id=1298

 

문제)

관리자 > 관리자권한설정 에서 추가된 회원 로그인시 내메뉴에 "관리자페이지" 가기 메뉴가 표시가 되지 않음

 

 

원인)

$is_auth 변수의 global지정 누락 또는 템플릿 변수 _is_auth 지정 오류

 

해결책)

1. eyoom/classes/Template_/tpl_plugin/function.eb_outlogin.phpglobal $is_auth 추가


function eb_outlogin($skin_dir='basic')
{
    global $config, $member, $g5, $urlencode, $is_auth, $is_admin, $is_member, $memo_not_read, $eyoomer, $respond, $tpl, $tpl_name, $eb, $levelinfo, $levelset;

 

2. 이미 eyoom/classes/Template_/tpl_plugin/function.eb_outlogin.php에서 


    $tpl->assign(array(
        "is_admin" => $is_admin,
        "is_auth" => $is_auth,
        "nick" => $nick,
        "point" => $point,
        "lvinfo" => $lvinfo,
        "lv" => $lv,
        "levelset" => $levelset,
        "respond" => $respond,
        "eyoomer" => $eyoomer,
        "profile_photo" => $profile_photo,
        "memo_not_read" => $memo_not_read,
        "outlogin_url" => $outlogin_url,
        "outlogin_action_url" => $outlogin_action_url,
    ));

와 같이 is_auth를 assign하였기 때문에 지정을 _is_auth가 아닌 is_auth로 skin내에서 지정

 

3. eyoom/theme/basic/skin_bs/outlogin/basic/outlogin.skin.2.html

3-1. global $is_auth를 추가하지 않았을 경우 지정방법(eyoom/classes/Template_/tpl_plugin/function.eb_outlogin.php를 수정하지 않을 경우임)


                    <!--{? _is_admin == 'super' || is_auth}-->
                    <li class="divider"></li>
                    <li><a href="{C.G5_ADMIN_URL}"><i class="fa fa-cogs"></i> 관리자페이지</a></li>
                    <!--{/}-->

 

3-2. global $is_auth를 추가하였을 경우 지정방법(eyoom/classes/Template_/tpl_plugin/function.eb_outlogin.php를 수정했을 경우임)


                    <!--{? _is_admin == 'super' || _is_auth}-->
                    <li class="divider"></li>
                    <li><a href="{C.G5_ADMIN_URL}"><i class="fa fa-cogs"></i> 관리자페이지</a></li>
                    <!--{/}-->

 

정리하면 

eyoom/classes/Template_/tpl_plugin/function.eb_outlogin.php 의 global $is_auth를 추가하고 skin파일은 수정하지 않고 사용하가나

eyoom/theme/basic/skin_bs/outlogin/basic/outlogin.skin.2.html 의 _is_auth를 is_auth로 수정하여 사용하면 됩니다.

 

본 내용과 관련하여 다른 의견이 있으시면 첨언 부탁합니다.

감사합니다.

 

댓글목록2

joosam님의 댓글

profile_image
오 이런게 있었군요...

축하합니다. 첫댓글 포인트 32포인트를 획득하였습니다.

정상나라님의 댓글의 댓글

전체 460 건 - 25 페이지
번호
제목
글쓴이
사이트 내 전체검색