Extra Form
PHP PHP 7.4
CMS Rhymix 2.1

안녕하세요.

 

이미지 프로세스 모듈에서 다운로드 그룹을 설정하고 확인을 눌러도 반응이 없어 손으로 적용해주려고합니다.

 

rx_module_config 에서

O:8:"stdClass":38:{s:10:"resize_use";s:1:"Y";s:12:"resize_width";s:4:"1600";s:14:"original_store";s:1:"Y";s:14:"resize_quality";i:75;s:13:"minimum_width";s:3:"300";s:13:"watermark_use";s:1:"Y";s:9:"magic_use";s:1:"N";s:9:"watermark";s:37:"./modules/imageprocess/stamp/logo.png";s:13:"water_quality";i:92;s:14:"water_position";s:2:"RT";s:9:"store_mid";s:4:"1577";s:9:"water_mid";s:4:"1577";s:10:"target_mid";s:4:"1577";s:10:"store_path";s:23:"/home/www/ori_file";s:10:"down_group";s:0:"";s:7:"xmargin";s:2:"30";s:7:"ymargin";s:2:"30";s:3:"ext";s:3:"jpg";s:8:"logo_ext";s:7:"jpg;png";s:10:"rotate_use";s:1:"Y";s:8:"exif_del";s:1:"Y";s:9:"exif_save";s:1:"N";s:12:"textlogo_use";s:1:"N";s:18:"logo_minimum_width";i:300;s:10:"logo_point";i:20;s:10:"resize_ext";s:3:"jpg";s:12:"target_width";s:1:"Y";s:7:"logo_fg";s:7:"#FFFFFF";s:7:"logo_bg";s:7:"#000000";s:10:"logo_style";s:6:"shadow";s:13:"text_position";s:5:"south";s:8:"textlogo";s:37:"Photo by %nick_name%(%email_address%)";s:7:"version";s:5:"4.1.1";s:12:"nowatergroup";s:0:"";s:13:"noresizegroup";s:0:"";s:10:"magic_path";s:9:"/usr/bin/";s:16:"magic_conversion";N;s:12:"magic_target";N;}

 

 

"down_group";s:0:"";

이 부분을 그룹을 지정하는 방법이 있을까요?

그룹 번호는 1 2 3 입니다.

  • Lv23
    저기 저 상태에서는 바로 수정하기가 까다로울거예요,.
    s:숫자 저 부분이 글자수 아니면 값을 바이트수를 의미하는 부분이 따로 기입되고 그 뒤에 실제 값이 들어가는데 보면 아시다 시피 되게 복잡하게 구조가 만들어져서 들어가요.
    글자수인것 같이 되어있어서 글자수로 맞춰서 넣는다고 하더라도 정상작동 확인이 안되요.

    그래서 저런건 실제 설정에서 그룹설정에 문제가 있는 부분을 디버깅해서 고쳐야 합니다.
  • Lv23 Lv12
    아 손으로는 수정이 힘들고 코드를 고쳐야하나보네요. 감사합니다.
    사이트 내 아주 중요한 기능인데 급 문제가 생겨버려서 난감하네요 ㅠㅠ
  • Lv5
    원하는 문자열 부분만 고치면 안됩니다. 가장 안전한 방법은 PHP에서 unserialize() 한 뒤에, 원하는 부분을 수정한 뒤에 다시 serialize() 해서 DB에 업데이트 하는 방법입니다.
  • Lv5 Lv12

    우선 급한데로

    // 원본화일의 다운로드 권한설정
    /* function getGrantDown($args)
    {
    $logged_info=Context::get('logged_info');
    if(!$logged_info) return false;
    if($logged_info->is_admin == 'Y') return true;
    if($logged_info->member_srl == $args->member_srl) return true;
    foreach($args->down_group as $group) if(array_key_exists($group,$logged_info->group_list)) return true;
    return false;
    }
    */

    이 부분을 수정해서 누구나 원본 다운로드 가능하게 설정해 버렸습니다.

     

        function getGrantDown($args) 
        {
            $logged_info = Context::get('logged_info');

            if (!$logged_info) {
                return false;
            }
            return true;
        }


    답변 감사합니다!

  • Lv36

    1 2 3을 어떤 형태로 넣어야 하는지는 확인하셨나요? "1,2,3"이라고 쉼표로 구분해야 하는지, 아니면 array(1,2,3) 이렇게 배열로 만들어야 하는지... 자료구조가 복잡해질수록 수동으로 serialize하기는 점점 힘들어집니다...

  • Lv36 Lv12
    그러네요 원작자가 배열을 어떻게 했느냐에 따라서 작동이 안될 수도 있겠네요. 답변 감사합니다.