From caf3076b124dca7a411be3477c6f7c4f8ff03f91 Mon Sep 17 00:00:00 2001 From: Lars Kaltefleiter Date: Thu, 10 Aug 2023 09:52:22 +0200 Subject: [PATCH] =?UTF-8?q?N=C2=B03441=20-=20Portal:=20Fix=20failure=20to?= =?UTF-8?q?=20open=20an=20object=20containing=20a=20link=20to=20an=20archi?= =?UTF-8?q?ved=20object=20(#523)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * N°3441 - Portal : cannot open an object containing a link to an archived object * N°3441 - Display fa-archive icon in portal * Update sources/Renderer/Bootstrap/FieldRenderer/BsSelectObjectFieldRenderer.php Co-authored-by: Molkobain * Update sources/Renderer/Bootstrap/FieldRenderer/BsSelectObjectFieldRenderer.php Co-authored-by: Molkobain * Update sources/Renderer/Bootstrap/FieldRenderer/BsSelectObjectFieldRenderer.php Co-authored-by: Molkobain --------- Co-authored-by: Molkobain --- .../FieldRenderer/BsSelectObjectFieldRenderer.php | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/sources/Renderer/Bootstrap/FieldRenderer/BsSelectObjectFieldRenderer.php b/sources/Renderer/Bootstrap/FieldRenderer/BsSelectObjectFieldRenderer.php index 3f59fec41..775b6f976 100644 --- a/sources/Renderer/Bootstrap/FieldRenderer/BsSelectObjectFieldRenderer.php +++ b/sources/Renderer/Bootstrap/FieldRenderer/BsSelectObjectFieldRenderer.php @@ -320,12 +320,19 @@ EOF if ($this->oField->GetCurrentValue() !== null && $this->oField->GetCurrentValue() !== 0 && $this->oField->GetCurrentValue() !== '') { // Note : AllowAllData set to true here instead of checking scope's flag because we are displaying a value that has been set and validated - $oFieldValue = MetaModel::GetObject($sFieldValueClass, $this->oField->GetCurrentValue(), true, true); + $oFieldValue = MetaModel::GetObjectWithArchive($sFieldValueClass, $this->oField->GetCurrentValue(), true, true); $sFieldHtmlValue = $oFieldValue->GetName(); - $sFieldUrl = ApplicationContext::MakeObjectUrl($sFieldValueClass, $this->oField->GetCurrentValue()); - if(!empty($sFieldUrl)) + if($oFieldValue->IsArchived()) { - $sFieldHtmlValue = ''.$sFieldHtmlValue.''; + $sFieldHtmlValue = '' . $sFieldHtmlValue; + } + else + { + $sFieldUrl = ApplicationContext::MakeObjectUrl($sFieldValueClass, $this->oField->GetCurrentValue()); + if (!empty($sFieldUrl)) + { + $sFieldHtmlValue = '' . $sFieldHtmlValue . ''; + } } } else