Example #1
0
 /**
  * Gets items from a collection with a query
  * that uses the model's state
  * and implements caching (if enabled)
  */
 public function getItems($refresh = false)
 {
     $items = array();
     $raw_items = parent::getItems($refresh);
     $filter_configured = $this->getState('filter.configured');
     if (is_bool($filter_configured)) {
         foreach ($raw_items as $raw_item) {
             $is_configured = $raw_item->getClass()->isConfigured();
             if ($is_configured && !empty($filter_configured)) {
                 $items[] = $raw_item;
             } elseif (!$is_configured && empty($filter_configured)) {
                 $items[] = $raw_item;
             }
         }
     } else {
         $items = $raw_items;
     }
     return $items;
 }