묻고답하기

질문의 요지는 레벨아이콘 출력 애드온을 수정하여

특정회원을 레벨아이콘이 아닌 다른 아이콘을 출력하고싶습니다.

예를들면 1~99레벨 아이콘이 아닌 관리자 아이콘을 넣고자 하는것이 목적입니다.


현재는 point_level_icon.lib 파일 레벨아이콘 위치를 구하는 부분 하단에

$oMemberModel = &getModel('member');

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

if ($member_info->user_id=="staff")

{         $level_icon = "./modules/point/icons/default/100.gif";     }

else

이렇게 회원 아이디를 넣는 방법으로 추가해서 사용하고 있습니다.


그런데 스텝이 여러명이고 자주 바뀌는터라, 바뀔때마다 자꾸 이 파일을 수정하려니 미치겠어요 ㅠㅠㅠㅠㅠㅠㅠ

그래서 애드온자체를 수정해서 좀 편하게 해보고 싶습니다. 제발..... ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ



일단 아래의 내용을 info에 적당히 추가해주었습니다.

  <extra_vars>

        <var name="staff">

            <title xml:lang="ko">회원 ID</title>

            <description xml:lang="ko">선택하신 회원에 적용 됩니다.

             회원 ID를 여러개 쓰려면

            ,(콤마)로 연결하여 입력하세요.

            (예 : 아이디1,아이디2,아이디3)

            </description>

        </var>

   </extra_vars>



그리고 point_level_icon.lib 에 다음과 같이 추가하였습니다. (하지만...전혀 동작하지 않음)


<?php

    /**

     * @brief 포인트 아이콘 변경을 위한 함수.

     **/

    function pointLevelIconTrans($matches) {

        $member_srl = $matches[3];

        if($member_srl<1) return $matches[0];


        if(!isset($GLOBALS['_pointLevelIcon'][$member_srl])) {

            // 포인트 설정을 구해옴

            if(!$GLOBALS['_pointConfig']) {

                $oModuleModel = &getModel('module');

                $GLOBALS['_pointConfig'] = $oModuleModel->getModuleConfig('point');

            }

            $config = $GLOBALS['_pointConfig'];


            // 포인트 모델을 구해 놓음

            if(!$GLOBALS['_pointModel']) $GLOBALS['_pointModel'] = getModel('point');

            $oPointModel = &$GLOBALS['_pointModel'];


            // 포인트를 구함

            $point = $oPointModel->getPoint($member_srl);


            // 레벨을 구함

            $level = $oPointModel->getLevel($point, $config->level_step);

            $text = $matches[5];


            // 레벨 아이콘의 위치를 구함

            $level_icon = sprintf('%smodules/point/icons/%s/%d.gif', Context::getRequestUri(), $config->level_icon, $level);

$oMemberModel = &getModel('member');

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

$tmp_ids = explode(",", $addon_info->staff);

if(in_array($member_info->user_id, $tmp_ids))

{         $level_icon = "./modules/point/icons/default/100.gif";     }

else


            // 최고 레벨이 아니면 다음 레벨로 가기 위한 per을 구함 :: 주석과 실제 내용이 맞지 않아 실제 내용을 수정

            if($level < $config->max_level) {

                $next_point = $config->level_step[$level+1];

                $present_point = $config->level_step[$level];

                if($next_point > 0) { 

                    $per = (int)(($point - $present_point) / ($next_point - $present_point)*100);

                    $per = $per.'%';

                }

            }


            $title = sprintf('%s:%s%s%s, %s:%s/%s', Context::getLang('point'), $point, $config->point_name, $per?' ('.$per.')':'', Context::getLang('level'), $level, $config->max_level);

            $alt = sprintf('[%s:%s]', Context::getLang('level'), $level);


            $GLOBALS['_pointLevelIcon'][$member_srl] = sprintf('<img src="%s" alt="%s" title="%s" style="vertical-align:middle; margin-right:3px;" />', $level_icon, $alt, $title);

        }

        $text = $GLOBALS['_pointLevelIcon'][$member_srl];


        $orig_text = preg_replace('/'.preg_quote($matches[5],'/').'<\/'.$matches[6].'>$/', '', $matches[0]);

        return $orig_text.$text.$matches[5].'</'.$matches[6].'>';

    }

?>


부디 조언부탁드립니다.

글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
ekrnfkdi out of memory로 고생하고있습니다 ㅜㅜ [1] file 2015.01.05 by 꾸링
EntryPoint 왜 답변해주시는분이 없을까요 .. [10] 2015.01.05 by 꾸링
taingee 도메인 연결시 페이지가 꺠집니다. [2] file 2015.01.05 by 꾸링
banaba 모바일 스케치5 게시판 제목글은 먹히는데 본문 글은 안도네요 [6] 2015.01.05 by banaba
쿨럭이 메뉴에 링크된 active 효과에 대한 문의 ㅠ.ㅠ [1] file 2015.01.05 by 쿨럭이
그링고 완전 초보 질문드립니다.ㅠㅠ 제발 도와주세요 [7] file 2015.01.05 by RTRPRSS
홍찬 레이아웃에서 텍스트에 링크걸명 보라색 선뜨는거요 [2] file 2015.01.05 by RTRPRSS
띠링띠링 레이아웃이 안바껴요.. [1] 2015.01.05 by 키스투엑스이
비상9 [질문] EasyXE ver. 1.0beta 메뉴겹침 [1] file 2015.01.05 by 키스투엑스이
자자게이 메뉴 밑에 태그는 어떻게 넣는건가요??  
해빛 게시판에 글쓴이의 아이피가 127.0.0.1로 되네요? 아이피가 제대로 나타나게 하려면? [9] file 2015.01.04 by 2-COIN
김성걸310 글작성자 아이피가 127.0.0.1 [1] 2015.01.04 by 2-COIN
추억팔이 익명게시판 스팸...닉네임 확인하는 방법 [4] file 2015.01.04 by 추억팔이
추억팔이 이상한 파일들이 생기는데 뭔가요~?? file  
newi 네이버 아이디 로그인후 문제 ??? [2] 2015.01.04 by 키스투엑스이
틱택톡 모바일 컨텐츠 위젯 더보기 목록 다는법  
수비니겨 아마존 aws (ec2) 관련 질문입니다.. [2] 2015.01.04 by 2-COIN
일산사람1 MySQL version이 안맞는 경우 file  
홍찬 이런소스가 있습니다.  
몽실아빠 SEO 모듈 레이아웃의 위젯의 게시글링크 문제. [7] 2015.01.04 by 몽실아빠