From 5b1aec1fe19341f1042d70484b336d8fd3e288aa Mon Sep 17 00:00:00 2001 From: Florian Azizian <florian.azizian@maarch.org> Date: Tue, 25 Feb 2014 15:36:11 +0000 Subject: [PATCH] =?UTF-8?q?FIX=20#1196=20Possibilit=C3=A9=20de=20choisir?= =?UTF-8?q?=20le=20nombre=20de=20niveau=20=C3=A0=20construire=20dans=20l'a?= =?UTF-8?q?rborescence=20du=20classement?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/tests/class/DataObjectController.php | 53 +++++++++++++++---- 1 file changed, 43 insertions(+), 10 deletions(-) diff --git a/core/trunk/core/tests/class/DataObjectController.php b/core/trunk/core/tests/class/DataObjectController.php index b1558eb59a5..498a3ff8a59 100644 --- a/core/trunk/core/tests/class/DataObjectController.php +++ b/core/trunk/core/tests/class/DataObjectController.php @@ -224,7 +224,8 @@ class DataObjectController public function read( $objectName, $key, - $readChildren=true + $readChildren=true, + $levelToShow='full' ) { $dataObjectDocument = new DataObjectDocument(); $this->dataObjectDocuments[] = $dataObjectDocument; @@ -238,7 +239,8 @@ class DataObjectController $dataObjectDocument, $dataObjectDocument, $key, - $readChildren + $readChildren, + $levelToShow ); return $dataObjectDocument->documentElement; } @@ -510,7 +512,8 @@ class DataObjectController $parentObject, $dataObjectDocument, $key=false, - $readChildren=true + $readChildren=true, + $levelToShow='full' ) { try { if($dataAccessService = @@ -547,7 +550,8 @@ class DataObjectController $this->readChildDataObjects( $objectElement, $newObject, - $dataObjectDocument + $dataObjectDocument, + $levelToShow ); } } @@ -560,11 +564,13 @@ class DataObjectController public function readChildDataObjects( $objectElement, $dataObject, - $dataObjectDocument + $dataObjectDocument, + $levelToShow='full' ) { // Get list of childElements $objectContents = $this->getObjectContents($objectElement); $l = count($objectContents); + $decompte = $levelToShow; for($i=0; $i<$l; $i++) { $objectNode = $objectContents[$i]; if(!$objectNode->isReadable()) continue; @@ -574,11 +580,38 @@ class DataObjectController $relation = $this->getRelation($objectNode, $dataObject); if(!$relation) continue; //echo "<br/>Read child of " . $objectElement->getName() . " named " . $refNode->getName(); - $this->readDataObject( - $refNode, - $dataObject, - $dataObjectDocument - ); + if((string)$levelToShow=='full'){ + $this->readDataObject( + $refNode, + $dataObject, + $dataObjectDocument + ); + + }else{ + if($decompte==1){ + $this->readDataObject( + $refNode, + $dataObject, + $dataObjectDocument, + false, + false + ); + + }elseif($decompte==0){ + //on affiche rien + }else{ + $decompte--; + $this->readDataObject( + $refNode, + $dataObject, + $dataObjectDocument, + false, + true, + $decompte + ); + + } + } } } -- GitLab