gif to mp4 모듈의 함수 애드온에서 이용 문의
CMS/프레임워크 | Rhymix 2.0 |
---|---|
개발 언어 | PHP 7.2 |
일단 애드온에서
$oGifConvertModel = getModel('z_gifconvert');
$file_list = $oGifConvertModel->getFileList(Context::get('document_srl'));
debugPrint($file_list);
위와 같이 작성해서 fille_list 를 찍어봤습니다.
아래와 같이 나옵니다.
01. Array
(
[gifs] => Array
(
[0] => files/attach/images/14608/551/180/ddf5889fbb63fa192eba257ac0a48993.gif
)
[data] => Array
(
[0] => stdClass Object
(
[file_srl] => 180552
[upload_target_srl] => 180551
[upload_target_type] => doc
[sid] => 41d9c48bf2ba6ba380c81f6e79e1fb2a
[module_srl] => 14608
[member_srl] => 62989
[download_count] => 0
[direct_download] => Y
[source_filename] => 갤럭시S22울트라_01.jpg
[uploaded_filename] => ./files/attach/images/14608/551/180/603f4719c222e9331247859415927c7c.jpg
[thumbnail_filename] =>
[file_size] => 30208
[mime_type] => image/jpeg
[original_type] =>
[width] => 658
[height] => 434
[duration] =>
[comment] =>
[isvalid] => Y
[cover_image] => N
[regdate] => 20210711205720
[ipaddress] => 1.11.222.22
)
[1] => stdClass Object
(
[file_srl] => 180553
[upload_target_srl] => 180551
[upload_target_type] => doc
[sid] => 0385013e2bb3ca807b4d0767d6090030
[module_srl] => 14608
[member_srl] => 62989
[download_count] => 0
[direct_download] => Y
[source_filename] => 갤럭시S22울트라_02.gif
[uploaded_filename] => ./files/attach/images/14608/551/180/ddf5889fbb63fa192eba257ac0a48993.gif
[thumbnail_filename] =>
[file_size] => 13076
[mime_type] => image/gif
[original_type] =>
[width] => 640
[height] => 353
[duration] =>
[comment] =>
[isvalid] => Y
[cover_image] => N
[regdate] => 20210711205730
[ipaddress] => 1.11.222.22
)
[2] => stdClass Object
(
[file_srl] => 180554
[upload_target_srl] => 180551
[upload_target_type] => doc
[sid] => 160837fcf30b80d2664793887af7eb67
[module_srl] => 14608
[member_srl] => 62989
[download_count] => 0
[direct_download] => Y
[source_filename] => 갤럭시S22울트라_03.jpg
[uploaded_filename] => ./files/attach/images/14608/551/180/a98f03a784b00f16de160b4faba65df6.jpg
[thumbnail_filename] =>
[file_size] => 20367
[mime_type] => image/jpeg
[original_type] =>
[width] => 658
[height] => 365
[duration] =>
[comment] =>
[isvalid] => Y
[cover_image] => N
[regdate] => 20210711205736
[ipaddress] => 1.11.222.22
)
)
)
다시 모듈의 같은 파일(model) 의 아래쪽에 함수 중
function gifConvert($config, $obj, $val) {
}
함수가 있습니다.
애드온에서 저 함수를 실행하려고 한다면
$val 의 경우는 제가 가져온 $file_list 가 되는 것 같습니다.
$config는 어떤 값을 넣어야 하는지...
모듈의 파일에는 따로 getModuleConfig() 와 같은 함수가 보이지 않습니다.
그리고 $obj에는 어떤 값을 넣어야 하는지 모르겠습니다.
위 함수 안에 사용되는 $obj 관련된 것은
if($val->reg_type == 'cmt') $in_args->parent_srl = $obj->document_srl;
이부분이 유일합니다.
function gifConvert(??, ???, $file_list) {
}
$file_list 은 맞는 건지.. 그리고 ??, ??? 를 어떻게 넣을지 .....
물론 이렇게 코드를 작성하게 되면 글 열람할때 마다 컨버팅을 매번 시도하게 될겁니다. 커버팅이 된 파일들은 리턴되겠지만요...
댓글 10
실제로 컨버팅하는 부분은 아마 insertFile쪽일겁니다.
}
이부분이 컨커팅 부분일 겁니다.
gif to mp4 모듈을 사용해서 사용하고 계셧군요.
라이믹스에서는 내부적으로 파일을 첨부하게 되면 그 자동으로 컨버팅해주는 기능이 있어요. 그기능을 말씀하시는줄 알았습니다. 죄송해요 ㅠ_ㅠ 잘못이해했네요 -_-;;
기존글에서도 대부분 라이믹스 기준으로 설명드렸던 것 같은데.. gifConvert 쪽이라면 그 안에서 file_list 를 어떻게 활용하는지 알아봐야 답변이 가능할 것 같은데요..
아마 맞을 것 같네요
세가지 인자를 가지고 함수가 위 파일리스트의 파일을 모두 변환까지 처리해주는 것 같습니다.
$config 는 모듈 설정값을 사용하기 위함입니다.
보통 게시글 작성 게시글 수정에 대한 트리거에서 실행이 된다면 게시글 작성할때 발생되는 트리거의 인수값으로 수정된다고 보시면 되요.
만약 그 값이 아니라면 또 다른 포맷으로 가져오는데 일딴 $obj->document_srl 값이 있는거 봐서는 게시글 작성 혹은 수정시 트리거의 obj인수 받은 값으로 보여지네요.
그 포맷이 보통 게시글 작성할때 $args으로 받은 모든 게시글 값들을 가져옵니다.
자세한건 documentController 클래스의 updateDocument 랑 insertDocument 두개에서 after 트리거를 만들어주는 코드 triggerCall 어쩌구 함수실행되는 그 윗부분에서 만들어진 인자값들이 어떻게 만들어졌나 보시고 비슷하게 게시글 작성처럼 만들어주시면 될 것 같은데요.
$val을 최종 정리하는 것도 문제네요.
$oGifConvertModel->getFileList(Context::get('document_srl'));
에서 가져온 파일들은 모든 파일이 다 있는 것이니
저기서 gif에 해당하는 것만 정리해서 값을 가지게 해야 하는 것도 필요하겠고...
그 배열을 가지고 지금 함수를 반복해야 하는 것 같습니다.
참조하면 쉽게 이해할 수 있는 부분이 암호화 파일에 포함되어 어려운 상황이네요 ㅜㅡ