Ejemplo n.º 1
0
 /**
  * Set document content for List view
  *
  * @param   array             $items          List of items
  * @param   SimpleXMLElement  $configuration  Configuration for displaying object
  *
  * @return void
  */
 public function setForRenderList($items, $configuration)
 {
     // Get resource list from configuration
     $this->loadResourceFromConfiguration($configuration);
     $listResourcesKeys = array_keys($this->resources['listItem']);
     if (!empty($items)) {
         // Filter out all fields that are not in resource list and apply appropriate transform rules
         foreach ($items as $itemValue) {
             $item = JArrayHelper::fromObject($itemValue);
             foreach ($item as $key => $value) {
                 if (!in_array($key, $listResourcesKeys)) {
                     unset($item[$key]);
                     continue;
                 } else {
                     $item[$this->assignGlobalValueToResource($key)] = $this->assignValueToResource($this->resources['listItem'][$key], $item);
                 }
             }
             $embedItem = new RApiHalDocumentResource('item', $item);
             $embedItem = $this->setDataValueToResource($embedItem, $this->resources, $itemValue, 'listItem');
             $this->hal->setEmbedded('item', $embedItem);
         }
     }
 }