Support PNG and SVG icon sets for document icons

This commit is contained in:
Kijin Sung 2021-07-01 15:09:18 +09:00
parent f2ff393592
commit 21e99aa7a2
2 changed files with 41 additions and 7 deletions

View file

@ -56,6 +56,34 @@ class documentAdminController extends document
$config->view_count_option = Context::get('view_count_option');
$config->icons = Context::get('icons');
$config->micons = Context::get('micons');
// Get icon skin type
$config->icons_type = 'gif';
$config->micons_type = 'gif';
$icons_path = rtrim($this->module_path . 'tpl/icons/' . $config->icons, '/');
if (!file_exists($icons_path . '/new.gif'))
{
if (file_exists($icons_path . '/new.png'))
{
$config->icons_type = 'png';
}
elseif (file_exists($icons_path . '/new.svg'))
{
$config->icons_type = 'svg';
}
}
$micons_path = rtrim($this->module_path . 'tpl/icons/' . $config->micons, '/');
if (!file_exists($micons_path . '/new.gif'))
{
if (file_exists($micons_path . '/new.png'))
{
$config->micons_type = 'png';
}
elseif (file_exists($micons_path . '/new.svg'))
{
$config->micons_type = 'svg';
}
}
// Insert by creating the module Controller object
$oModuleController = getController('module');

View file

@ -1350,29 +1350,35 @@ class documentItem extends BaseObject
return;
}
$icons = $this->getExtraImages($time_check);
if(!count($icons))
{
return;
}
$documentConfig = DocumentModel::getDocumentConfig();
if(Mobile::isFromMobilePhone())
{
$iconSkin = $documentConfig->micons ?? null;
$iconType = $documentConfig->micons_type ?? 'gif';
}
else
{
$iconSkin = $documentConfig->icons ?? null;
$iconType = $documentConfig->icons_type ?? 'gif';
}
if($iconSkin == null)
{
$iconSkin = 'default';
$iconType = 'gif';
}
$path = sprintf('%s%s',getUrl(), "modules/document/tpl/icons/$iconSkin/");
$buffs = $this->getExtraImages($time_check);
if(!count($buffs)) return;
$path = sprintf('%s%s', \RX_BASEURL, "modules/document/tpl/icons/$iconSkin/");
$buff = array();
foreach($buffs as $key => $val)
foreach($icons as $icon)
{
$buff[] = sprintf('<img src="%s%s.gif" alt="%s" title="%s" style="margin-right:2px;" />', $path, $val, $val, $val);
$buff[] = sprintf('<img src="%s%s.%s" alt="%s" title="%s" style="margin-right:2px;" />', $path, $icon, $iconType, $icon, $icon);
}
return implode('', $buff);
}