포럼

카르마님의 외부이미지 저장 애드온이 있습니다.

문서 저장시 외부 이미지를 복사하고 저장하면 로컬서버로 간편하게 저장이 됩니다.

링크가 깨지는 것을 예방할 수 있는 효과가 있습니다.


최근에 문서를 저장할 때가 아니라, 문서를 읽을 때 외부이미지 저장기능이 작동하면 좋겠다는 생각을 했습니다.


그런데 생각만큼 되지 않는군요.

제가 생각한 방식은 이렇습니다.


<?php
    if(!defined('__ZBXE__') && !defined('__XE__')) exit();
 
    /**
     * @outimage.addon.php
     * @author 카르마(http://www.wildgreen.co.kr)
     *
     **/
 
    require_once('./addons/auto_outimage/auto_outimage.func.php'); // 함수가져오기

    if(Context::get('module')=='admin') return; // 관리자 모듈에서는 실행않음

if($called_position == 'before_display_content') {

            $var = $this->variables;
            $document_srl = $var[document_srl];
            if(!$document_srl) return;
            $module_info = $oModuleModel->getModuleInfoByDocumentSrl($document_srl);
            $args->document_srl = $document_srl;
            $output =  executeQuery('document.getDocument', $args);
            $content = $output->data->content;
            //$oDocument = $oDocumentModel->getDocument($document_srl);
            // $content = $oDocument->getContent(false,false,false,false);
 
            $upload_target_srl = $document_srl;
            $oFileController = &getController('file');
 
            $contImg = extractImage($content);
            if(count($contImg)) {
                $replace = $content;
                foreach($contImg as $src) {
                    $ri_localfile = geRitLocalFile($src,$ri_avoid_domain,'N');
                    if(strcmp($src,$ri_localfile)==true)
                    {
                        $url = parse_url($ri_localfile);
                        $path_parts = pathinfo($url['path']);
                        $file_info['name']=$path_parts['basename'];
                        $file_info['tmp_name']=$ri_localfile;
                        $file_obj = $oFileController->insertFile($file_info,$module_info->module_srl,$upload_target_srl,0,true);
                        if(@$file_obj->variables['uploaded_filename']!=null) $replace = str_replace($src,$file_obj->variables['uploaded_filename'],$replace);
                        @unlink($ri_localfile);
                    }
                }
                $obj->module_srl = $module_info->module_srl;
                $obj->content = $replace;
                $obj->document_srl = $document_srl;
                executeQuery('addons.auto_outimage.updateDocument', $obj);
            }
        }  


?>


$called_position 에 대한 저의 이해가 떨어져서 인지, 작동이 안되네요.

문서저장 때와 문서읽을 때의 executeQuery 실행여부도 어떻게 확인해야 하는지 알수가 없네요.


애드온의 작동여부를 확인할 수 있는 디버깅 기법이 따로 있는지요?

지금 이 소스에서 어떤 문제가 있는지 고견을 부탁드립니다.

글쓴이 제목 최종 글
착한악마 XE에서 권한이 없을시 나오는 로그인!! [3] 2011.09.06 by snows96
백성찬 xe 1.5 [14] 2011.09.05 by Community
bell5 세션관리자 업데이트 문제 [4] 2011.09.05 by bell5
도라란 동영상을 마우스로 그냥 긁어올 경우 영상이 보이지 않는 경우 [3] 2011.09.04 by 도라란
Cody Error Message 표기, 1.5.0 버전에서 변경사항이 있나요? [1] 2011.09.04 by Cody
Yosida 게시글 휴지통에넣고 복원하면 첨부파일 사라지는 문제.. [2] 2011.09.04 by Yosida_sakura
독도2005 클라우드 웹폰트 서비스 오픈 [1] 2011.09.03 by 날개!
thisend XE를 사용하는 이유  
XE 쉬운설치 서버 복구를 완료하였습니다. [14] 2011.09.01 by bell5
중원군 관리자 페이지에서 메뉴 설정할때요!!  
도라란 이미지 프로세스 정상작동 되시나요? [2] 2011.09.01 by 도라란
정찬명 XE開発マニュアル日本語版公開。 [2] 2011.08.31 by 라르게덴
박종식853 갑자기 XE인스톨 화면이 첫화면으로 뜰때(캡쳐有) [1] file 2011.08.31 by 박종식853
oyume CSS 파일 이 빠져있는듯합니다.. 이유를 모르겠습니다. [1] 2011.08.30 by 웹 엔진
sejin7940 혹시 Zend Guard 써보신 분 계신가요? [8] 2011.08.29 by 비나무
씨지 게시판'스킨 관리'가 최고관리자만 되네요. 이번 업데이트 후에그런건지 [12] 2011.08.29 by 씨지
맑은여름 1.4.5.9 에서도 그룹추가 관련 에러는 고쳐지지 않았습니다. [4] file 2011.08.29 by 맑은여름
도라란 에디터, 무엇을 사용하시는지요? (파일 첨부가 주로 많은 사이트) [4] 2011.08.28 by 유샤인
씨지 DB에서 제목순 정렬 속도를 높이려면? [1] 2011.08.27 by 씨지
영구만세 첨부파일의 권한관리 [2] file 2011.08.26 by 영구만세