Exemple #1
0
 /**
  * Display dashboard
  *
  * @return array
  */
 public function indexAction()
 {
     $data = array();
     $data['version'] = Version::VERSION;
     $data['versionIsLatest'] = Version::isLatest();
     $data['versionLatest'] = Version::getLatest();
     $documents = new Collection();
     $contentStats = array();
     $contentStats['online_documents'] = array('count' => count($documents->getAvailableDocuments()), 'label' => 'Online documents', 'route' => 'content');
     $contentStats['total_documents'] = array('count' => count($documents->select()->toArray()), 'label' => 'Total documents', 'route' => 'content');
     $data['contentStats'] = $contentStats;
     $visitorModel = new Visitor();
     $data['userStats'] = array('total_visitors' => array('count' => $visitorModel->getTotalVisitors(), 'label' => 'Total visitors', 'route' => 'statistics'), 'total_visits' => array('count' => $visitorModel->getTotalPageViews(), 'label' => 'Total page views', 'route' => 'statistics'));
     $coreConfig = $this->getServiceLocator()->get('CoreConfig');
     $widgets = @unserialize($coreConfig->getValue('dashboard_widgets'));
     $data['dashboardSortable'] = !empty($widgets['sortable']) ? Json::encode($widgets['sortable']) : '{}';
     $data['dashboardWelcome'] = !empty($widgets['welcome']);
     $data['customeWidgets'] = array();
     $this->events()->trigger(__CLASS__, 'dashboard', $this, array('widgets' => &$data['customeWidgets']));
     return $data;
 }
Exemple #2
0
 /**
  * Load Document data
  *
  * @return string
  */
 public function createDocument()
 {
     $documents = new Document\Collection();
     $rows = $documents->fetchAll($documents->select(function ($select) {
         $select->order('sort_order ASC');
         $select->order('created_at ASC');
     }));
     if (empty($rows)) {
         return '';
     }
     $documentArray = array();
     foreach ($rows as $row) {
         $documentArray[] = Document\Model::fromArray((array) $row);
     }
     $propertiyCollection = new Property\Collection();
     foreach ($documentArray as $document) {
         $array = array();
         $properties = $propertiyCollection->load(null, null, $document->getId())->getProperties();
         foreach ($properties as $property) {
             $value = $property->getValueModel()->getValue();
             $property->getValueModel()->setValue(base64_encode($value));
             $array[] = $property->getValueModel();
         }
         $document->setProperties($array);
     }
     return $documents->toXml($documentArray, 'documents');
 }