From 0398b64350063a87a5c95f694bd1fbe6eaa8f598 Mon Sep 17 00:00:00 2001 From: Kijin Sung Date: Wed, 9 Oct 2024 00:07:48 +0900 Subject: [PATCH] Display uploaded file name and link in extra vars section --- modules/document/document.controller.php | 16 ++++++++-------- modules/extravar/models/Value.php | 19 ++++++++++++++++++- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index 48fc96f9a..e7055a5ad 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -1256,14 +1256,6 @@ class DocumentController extends Document $value = $ev_output->get('file_srl'); } - // Leave current file unchanged - elseif (!$value) - { - if (isset($old_extra_vars[$idx]->value)) - { - $value = $old_extra_vars[$idx]->value; - } - } // Delete current file elseif (isset($obj->{'_delete_extra_vars'.$idx}) && $obj->{'_delete_extra_vars'.$idx} === 'Y') { @@ -1277,6 +1269,14 @@ class DocumentController extends Document } } } + // Leave current file unchanged + elseif (!$value) + { + if (isset($old_extra_vars[$idx]->value)) + { + $value = $old_extra_vars[$idx]->value; + } + } } } $extra_vars[$extra_item->name] = $value; diff --git a/modules/extravar/models/Value.php b/modules/extravar/models/Value.php index ce24392d4..9ee69fb5b 100644 --- a/modules/extravar/models/Value.php +++ b/modules/extravar/models/Value.php @@ -5,6 +5,8 @@ namespace Rhymix\Modules\Extravar\Models; use BaseObject; use Context; use FileController; +use FileHandler; +use FileModel; use ModuleModel; use Rhymix\Framework\DateTime; use Rhymix\Framework\i18n; @@ -450,7 +452,22 @@ class Value case 'timezone': return DateTime::getTimezoneList()[$value] ?? ''; case 'file': - return $value; + if ($value) + { + $file = FileModel::getFile($value); + if ($file) + { + return sprintf('%s (%s)', $file->download_url, $file->source_filename, FileHandler::filesize($file->file_size)); + } + else + { + return ''; + } + } + else + { + return ''; + } default: return $value; }