mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-04-28 14:52:24 +09:00
동영상 섬네일, GIF로 취급 기능 추가
이미지, 동영상 첨부시 구분할 수 있도록 그 섬네일에 play 아이콘 추가 모듈별 파일 설정시 파일 모듈의 업로드 기본, 이미지, 동영상 설정을 각각 달리 적용할 수 있도록 기본 설정 제어 옵션 분리
This commit is contained in:
parent
c2025c4bde
commit
cdbc2d7a82
14 changed files with 644 additions and 430 deletions
|
|
@ -179,90 +179,43 @@ class fileModel extends file
|
|||
*/
|
||||
function getFileConfig($module_srl = null)
|
||||
{
|
||||
// Get configurations (using module model object)
|
||||
$oModuleModel = getModel('module');
|
||||
|
||||
$file_module_config = $oModuleModel->getModuleConfig('file');
|
||||
|
||||
if($module_srl) $file_config = $oModuleModel->getModulePartConfig('file',$module_srl);
|
||||
if(!$file_config) $file_config = $file_module_config;
|
||||
|
||||
$config = new stdClass();
|
||||
|
||||
if($file_config)
|
||||
$config = $oModuleModel->getModuleConfig('file') ?: new stdClass;
|
||||
if($module_srl)
|
||||
{
|
||||
$config->use_default_file_config = $file_config->use_default_file_config;
|
||||
$config->allowed_filesize = $file_config->allowed_filesize;
|
||||
$config->allowed_attach_size = $file_config->allowed_attach_size;
|
||||
$config->allowed_filetypes = $file_config->allowed_filetypes;
|
||||
$config->allowed_extensions = $file_config->allowed_extensions;
|
||||
$config->inline_download_format = $file_config->inline_download_format;
|
||||
$config->max_image_width = $file_config->max_image_width;
|
||||
$config->max_image_height = $file_config->max_image_height;
|
||||
$config->max_image_size_action = $file_config->max_image_size_action;
|
||||
$config->max_image_size_quality = $file_config->max_image_size_quality;
|
||||
$config->max_image_size_admin = $file_config->max_image_size_admin;
|
||||
$config->image_autoconv = $file_config->image_autoconv;
|
||||
$config->image_autoconv_quality = $file_config->image_autoconv_quality;
|
||||
$config->image_autorotate = $file_config->image_autorotate;
|
||||
$config->image_autorotate_quality = $file_config->image_autorotate_quality;
|
||||
$config->ffmpeg_command = $file_config->ffmpeg_command;
|
||||
$config->download_grant = $file_config->download_grant;
|
||||
$config->allow_outlink = $file_config->allow_outlink;
|
||||
$config->allow_outlink_site = $file_config->allow_outlink_site;
|
||||
$config->allow_outlink_format = $file_config->allow_outlink_format;
|
||||
$config->save_changelog = $file_config->save_changelog;
|
||||
$module_config = $oModuleModel->getModulePartConfig('file', $module_srl);
|
||||
foreach((array)$module_config as $key => $value)
|
||||
{
|
||||
$config->$key = $value;
|
||||
}
|
||||
}
|
||||
|
||||
// Property for all files comes first than each property
|
||||
if(!$config->allowed_filesize) $config->allowed_filesize = $file_module_config->allowed_filesize;
|
||||
if(!$config->allowed_attach_size) $config->allowed_attach_size = $file_module_config->allowed_attach_size;
|
||||
if(!$config->allowed_filetypes) $config->allowed_filetypes = $file_module_config->allowed_filetypes;
|
||||
if(!$config->allowed_extensions) $config->allowed_extensions = $file_module_config->allowed_extensions;
|
||||
if(!$config->allow_outlink) $config->allow_outlink = $file_module_config->allow_outlink;
|
||||
if(!$config->allow_outlink_site) $config->allow_outlink_site = $file_module_config->allow_outlink_site;
|
||||
if(!$config->allow_outlink_format) $config->allow_outlink_format = $file_module_config->allow_outlink_format;
|
||||
if(!$config->download_grant) $config->download_grant = $file_module_config->download_grant;
|
||||
if(!$config->max_image_width) $config->max_image_width = $file_module_config->max_image_width;
|
||||
if(!$config->max_image_height) $config->max_image_height = $file_module_config->max_image_height;
|
||||
if(!$config->max_image_size_action) $config->max_image_size_action = $file_module_config->max_image_size_action;
|
||||
if(!$config->max_image_size_quality) $config->max_image_size_quality = $file_module_config->max_image_size_quality;
|
||||
if(!$config->max_image_size_admin) $config->max_image_size_admin = $file_module_config->max_image_size_admin;
|
||||
if(!$config->image_autoconv) $config->image_autoconv = $file_module_config->image_autoconv;
|
||||
if(!$config->image_autoconv_quality) $config->image_autoconv_quality = $file_module_config->image_autoconv_quality;
|
||||
if(!$config->image_autorotate) $config->image_autorotate = $file_module_config->image_autorotate;
|
||||
if(!$config->image_autorotate_quality) $config->image_autorotate_quality = $file_module_config->image_autorotate_quality;
|
||||
if(!$config->ffmpeg_command) $config->ffmpeg_command = $file_module_config->ffmpeg_command;
|
||||
if(!$config->save_changelog) $config->save_changelog = $file_module_config->save_changelog;
|
||||
|
||||
// Default setting if not exists
|
||||
if(!$config->allowed_filesize) $config->allowed_filesize = '2';
|
||||
if(!$config->allowed_attach_size) $config->allowed_attach_size = '3';
|
||||
if(!$config->allowed_filetypes) $config->allowed_filetypes = '*.*';
|
||||
if(!$config->allow_outlink) $config->allow_outlink = 'Y';
|
||||
if(!$config->download_grant) $config->download_grant = array();
|
||||
if(!$config->inline_download_format) $config->inline_download_format = array();
|
||||
if(!$config->max_image_size_quality) $config->max_image_size_quality = 75;
|
||||
if(!$config->image_autoconv) $config->image_autoconv = array();
|
||||
if(!$config->image_autoconv_quality) $config->image_autoconv_quality = 75;
|
||||
if(!$config->image_autorotate_quality) $config->image_autorotate_quality = 75;
|
||||
$config->allowed_filesize = $config->allowed_filesize ?? '2';
|
||||
$config->allowed_attach_size = $config->allowed_attach_size ?? '3';
|
||||
$config->allow_outlink = $config->allow_outlink ?? 'Y';
|
||||
$config->download_grant = $config->download_grant ?? [];
|
||||
$config->inline_download_format = $config->inline_download_format ?? [];
|
||||
$config->image_autoconv = $config->image_autoconv ?? [];
|
||||
$config->image_quality_adjustment = $config->image_quality_adjustment ?? 100;
|
||||
$config->video_mp4_gif_time = $config->video_mp4_gif_time ?? 0;
|
||||
$config->ffmpeg_command = $config->ffmpeg_command ?? '/usr/bin/ffmpeg';
|
||||
$config->ffprobe_command = $config->ffprobe_command ?? '/usr/bin/ffmpeg';
|
||||
|
||||
// Format allowed_filetypes
|
||||
if($config->allowed_filetypes && !isset($config->allowed_extensions))
|
||||
$config->allowed_filetypes = $config->allowed_filetypes ?? '*.*';
|
||||
if(!isset($config->allowed_extensions))
|
||||
{
|
||||
$config->allowed_extensions = [];
|
||||
$config->allowed_filetypes = trim($config->allowed_filetypes);
|
||||
if($config->allowed_filetypes === '*.*')
|
||||
{
|
||||
$config->allowed_extensions = array();
|
||||
}
|
||||
else
|
||||
if($config->allowed_filetypes !== '*.*')
|
||||
{
|
||||
$config->allowed_extensions = array_map(function($ext) {
|
||||
return strtolower(substr(strrchr(trim($ext), '.'), 1));
|
||||
}, explode(';', $config->allowed_filetypes));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return $config;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue