오늘 여기에서 막혀서 하루종일 암것도 못 했네요.. -_-..

게시판에는 첨부파일에 이미지가 없어도, 링크를 따라온 이미지를 썸네일 이미지로 잘 표시해 주는데..
위젯이 그 기능을 못해서.. 어디를 수정해야 될 까 한참을 찾아봤는데.. 답이 안 나옵니다.. 흑흑..

먼저 [xe\modules\document\document.item.php]

        function getThumbnail($width = 80, $height = 0, $thumbnail_type = '') {
            // 존재하지 않는 문서일 경우 return false
            if(!$this->document_srl) return;
            // 높이 지정이 별도로 없으면 정사각형으로 생성
            if(!$height) $height = $width;
            // 첨부파일이 없거나 내용중 이미지가 없으면 return false;
            if(!$this->get('uploaded_count') && !preg_match("!<img!is", $this->get('content'))) return;
            // 문서 모듈의 기본 설정에서 Thumbnail의 생성 방법을 구함
            if(!in_array($thumbnail_type, array('crop','ratio'))) {
                $config = $GLOBALS['__document_config__'];
                if(!$config) {
                    $oDocumentModel = &getModel('document');
                    $config = $oDocumentModel->getDocumentConfig();
                    $GLOBALS['__document_config__'] = $config;
                }
                $thumbnail_type = $config->thumbnail_type;
            }
            // 섬네일 정보 정의
            $thumbnail_path = sprintf('files/cache/thumbnails/%s',getNumberingPath($this->document_srl, 3));
            $thumbnail_file = sprintf('%s%dx%d.%s.jpg', $thumbnail_path, $width, $height, $thumbnail_type);
            $thumbnail_url  = Context::getRequestUri().$thumbnail_file;
            // 섬네일 파일이 있을 경우 파일의 크기가 0 이면 return false 아니면 경로 return
            if(file_exists($thumbnail_file)) {
                if(filesize($thumbnail_file)<1) return false;
                else return $thumbnail_url;
            }
            // 대상 파일
            $source_file = null;
            $is_tmp_file = false;
            // 첨부된 파일중 이미지 파일이 있으면 찾음
            if($this->get('uploaded_count')) {
                $oFileModel = &getModel('file');
                $file_list = $oFileModel->getFiles($this->document_srl);
                if(count($file_list)) {
                    foreach($file_list as $file) {
                        if($file->direct_download!='Y') continue;
                        if(!preg_match("/\.(jpg|png|jpeg|gif|bmp)$/i",$file->source_filename)) continue;
                        $source_file = $file->uploaded_filename;
                        if(!file_exists($source_file)) $source_file = null;
                        else break;
                    }
                }
            }
            // 첨부된 파일이 없으면 내용중 이미지 파일을 구함
            if(!$source_file) {
                $content = $this->get('content');
                $target_src = null;
                preg_match_all("!src=(\"|')([^\"' ]*?)(\"|')!is", $content, $matches, PREG_SET_ORDER);
                $cnt = count($matches);
                for($i=0;$i<$cnt;$i++) {
                    $target_src = trim($matches[$i][2]);
                    if(!preg_match("/\.(jpg|png|jpeg|gif|bmp)$/i",$target_src)) continue;
                    if(preg_match('/\/(common|modules|widgets|addons|layouts)\//i', $target_src)) continue;
                    else {
                        if(!preg_match('/^(http|https):\/\//i',$target_src)) $target_src = Context::getRequestUri().$target_src;
                        $tmp_file = sprintf('./files/cache/tmp/%d', md5(rand(111111,999999).$this->document_srl));
                        if(!is_dir('./files/cache/tmp')) FileHandler::makeDir('./files/cache/tmp');
                        FileHandler::getRemoteFile($target_src, $tmp_file);
                        if(!file_exists($tmp_file)) continue;
                        else {
                            list($_w, $_h, $_t, $_a) = @getimagesize($tmp_file);
                            if($_w<$width || $_h<$height) continue;
                            $source_file = $tmp_file;
                            $is_tmp_file = true;
                            break;
                        }
                    }
                }
            }
 
소스를 보시면 밑에부분에.. //첨부된 파일이 없으면 내용중 이미지 파일을 구함
하는 소스가 있어용..


위젯을 살펴보면.. [xe\widgets\contentextended\contentextended.class.php]

        function getThumbnail(){
            return $this->get('thumbnail');
        } 
 
이렇게 너무나도 간단한데.. 도통 get('thumbnail')이 어떻게 동작하는건지 모르겠네요.. -_-..

요부분 혹시 아시는분은 팁좀 부탁드립니다.. 흑흑.. ㅠㅠ