From 1385a3dc03e4b68b31a41bdea43fe8703438b684 Mon Sep 17 00:00:00 2001 From: Benjamin Dalsass Date: Tue, 31 Oct 2023 10:18:21 +0100 Subject: [PATCH] =?UTF-8?q?N=C2=B06774=20-=20Risque=20d'erreur=20de=20char?= =?UTF-8?q?gement=20des=20relations=20dans=20le=20portail=20en=20visualisa?= =?UTF-8?q?tion?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FieldRenderer/BsLinkedSetFieldRenderer.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/sources/Renderer/Bootstrap/FieldRenderer/BsLinkedSetFieldRenderer.php b/sources/Renderer/Bootstrap/FieldRenderer/BsLinkedSetFieldRenderer.php index 408744c69..336607432 100644 --- a/sources/Renderer/Bootstrap/FieldRenderer/BsLinkedSetFieldRenderer.php +++ b/sources/Renderer/Bootstrap/FieldRenderer/BsLinkedSetFieldRenderer.php @@ -57,7 +57,13 @@ class BsLinkedSetFieldRenderer extends BsFieldRenderer // Retrieve link and remote attributes $aAttributesToDisplay = $this->oField->GetAttributesToDisplay(); $aLnkAttributesToDisplay = $this->oField->GetLnkAttributesToDisplay(); - $iLinkAttributesToDisplayCount = count($this->oField->GetLnkAttributesToDisplay()) + 1; + + // we sort the table on the first non link column + $iSortColumnIndex = count($this->oField->GetLnkAttributesToDisplay()); + // if we are in edition mode, we skip the first column (selection checkbox column) + if(!$this->oField->GetReadOnly()){ + $iSortColumnIndex++; + } // Vars to build the table $sAttributesToDisplayAsJson = json_encode($aAttributesToDisplay); @@ -275,7 +281,7 @@ EOF // We would just have to override / complete the necessary elements var buildTable_{$this->oField->GetGlobalId()} = function() { - var iDefaultOrderColumnIndex = {$iLinkAttributesToDisplayCount}; + var iDefaultOrderColumnIndex = {$iSortColumnIndex}; // Instantiates datatables oTable_{$this->oField->GetGlobalId()} = $('#{$sTableId}').DataTable({