Ejemplo n.º 1
0
 public function _getEvents(&$params)
 {
     $sources = RokMiniEvents_SourceLoader::getAvailableSources(ROKMINIEVENTS_ROOT . "/lib/RokMiniEvents/Source");
     $this->setTimes($params);
     $events = array();
     foreach ($sources as $source) {
         if ((bool) $params->get($source->name, true)) {
             $newevents = $source->source->getEvents($params);
             if (is_array($newevents)) {
                 $events = array_merge($events, $newevents);
             }
         }
     }
     foreach ($events as $event) {
         $event->setFormats($params->get('dayformat'), $params->get('monthformat'), $params->get('yearformat'), $params->get('timeformat'));
     }
     if ($params->get('sortorder', 'ascending') == 'ascending') {
         $cmp = array('RokMiniEvents', 'sortAscending');
     } else {
         $cmp = array('RokMiniEvents', 'sortDescending');
     }
     usort($events, $cmp);
     if (!empty($events) && ($limit = $params->get('limit_count', 0)) > 0) {
         $event_chunks = array_chunk($events, $limit);
         $events = $event_chunks[0];
     }
     if (count($events) <= (int) $params->get('events_pane')) {
         $params->set('timeline', 'none');
     }
     return $events;
 }
 public function onContentPrepareForm($form, $data)
 {
     $app = JFactory::getApplication();
     if (!$app->isAdmin()) {
         return;
     }
     $option = JRequest::getWord('option');
     $layout = JRequest::getWord('layout');
     $task = JRequest::getWord('task');
     $module = $this->getModuleType($data);
     if ($option == 'com_modules' && $layout == 'edit' && $module == 'mod_rokminievents') {
         JForm::addFieldPath(JPATH_ROOT . '/modules/mod_rokminievents/fields');
         //Find Sources
         $sources = RokMiniEvents_SourceLoader::getAvailableSources(self::$SOURCE_DIR);
         foreach ($sources as $source_name => $source) {
             if (file_exists($source->paramspath) && is_readable($source->paramspath)) {
                 $form->loadFile($source->paramspath, false);
                 JForm::addFieldPath(dirname($source->paramspath) . "/" . $source->name);
                 //$this->element_dirs[] = dirname($source->paramspath) . "/" . $source->name;
                 $language =& JFactory::getLanguage();
                 $language->load('com_' . $source->name, JPATH_ADMINISTRATOR);
                 $language->load($source->name, dirname($source->paramspath), $language->getTag(), true);
             }
         }
         $subfieldform = RokSubfieldForm::getInstance($form);
         if (!empty($data) && isset($data->params)) {
             $subfieldform->setOriginalParams($data->params);
         }
         if ($task == 'save' || $task == 'apply') {
             $subfieldform->makeSubfieldsVisable();
         }
     }
 }