XE타운에서는 첨부파일이 이미지면 자동첨부가 되어서 제목옆에 '디스켓','그림' 아이콘이 뜹니다.

제 사이트에서는 '디스켓' 아이콘만 뜹니다. (new아이콘은 뜸)

 

검색을 해보니 https://xetown.com/qna/159845 이런글을 보았는데

제가 사용하는 Pjaxboard스킨과 기본스킨인 default, XEDITON 스킨에서도 동일하게 '그림'아이콘은 뜨질 않는걸보면

스케치북스킨에서만 지원하는 기능인건가... 아니면..

혹시 제가 빼먹거나한 설정이 있는건지.. 궁금합니다.

 

 

 

p.s 해당 아이콘이 있는 /modules/document/tpl/icons 에서 보니 movie.gif 도 있는걸 보면

    동영상관련해서도 아이콘표시가 가능한거 같기도한데.. 

    멀티미디어컨텐츠 컴포넌트로 유튜브영상을 첨부해봐도 따로 아이콘이 표시되진 않는....

   (자동으로 영상썸네일을 추출해서 파일첨부가 되는건지.. 디스켓 아이콘이 표시되네요)

 

 

 

 

  • profile

    modules/document/document.item.php 1000줄 전후에 getExtraImages 함수가 있는데, 무슨 이유에서인지 이미지와 동영상을 감지하는 부분은 주석처리가 되어 있어요. 이 주석을 제거하면 아마 아이콘이 뜰 거예요.

  • profile profile
       $content = $this->get('content');
    
    // Check image files
    preg_match_all('!<img([^>]*?)>!is', $content, $matches);
    $cnt = count($matches[0]);
    for($i=0;$i<$cnt;$i++) {
    if(preg_match('/editor_component=/',$matches[0][$i])&&!preg_match('/image_(gallery|link)/i',$matches[0][$i])) continue;
    $buffs[] = "image";
    $check_files = true;
    break;
    }
    
    // Check video files
    if(preg_match('!<embed([^>]*?)>!is', $content) || preg_match('/editor_component=("|\')*multimedia_link/i', $content) ) {
    $buffs[] = "movie";
    $check_files = true;
    }

     

    이 부분 말씀해주신거같아서 주석을 해제해봤는데 변화가 없어요.

    일단 알수없는 이유로 코어에서 주석처리를 해놨다고하니 괜히 건드리지 말아야겠어요 ㅎㅎㅎ

  • profile ?
    아마 속도 때문에 빠진 것 같네요. 매 번 본문을 읽어서 이미지나 동영상이 있는지 체크해야 하니까요.
    하필이면 에디터 컴포넌트가 <img> 태그 형태로 삽입되어서, 이게 에디터 컴포넌트인지 진짜 이미지인지 식별해야 하네요.

    documents 테이블에 has_image, has_movie와 같은 별도의 칼럼이 있었다면 좋았을 것 같은데, 개발 초기 단계에서는 고려하지 못했었던 모양입니다.
  • ? profile
    아하~ 이해했습니다.
    궁금증 해결~!