Exemplo n.º 1
0
 /**
  * Cleanes and saves the submitted event to the database
  *
  * TODO: Check if the user is allowed to post events assigned to this category/venue
  *
  * @since 0.4
  */
 function saveevent()
 {
     // Check for request forgeries
     JRequest::checkToken() or die('Invalid Token');
     //get image
     $file = JRequest::getVar('userfile', '', 'files', 'array');
     $post = JRequest::get('post', 4);
     $isNew = $post['id'] ? false : true;
     $model = $this->getModel('editevent');
     $this->addModelPath(JPATH_BASE . DS . 'administrator' . DS . 'components' . DS . 'com_redevent' . DS . 'models');
     $model_wait = $this->getModel('waitinglist');
     if ($row = $model->store($post, $file)) {
         JPluginHelper::importPlugin('redevent');
         $dispatcher =& JDispatcher::getInstance();
         $res = $dispatcher->trigger('onEventEdited', array($row->id, $isNew));
         $cache =& JFactory::getCache('com_redevent');
         $cache->clean();
         $msg = 'saved';
         //			$link = JRequest::getString('referer', RedeventHelperRoute::getMyeventsRoute(), 'post');
     } else {
         $msg = $model->getError();
         //			$link = JRequest::getString('referer', RedeventHelperRoute::getMyeventsRoute(), 'post');
         RedeventError::raiseWarning(0, $model->getError());
     }
     $model->checkin();
     switch (JRequest::getWord('referer')) {
         case 'myevents':
             $link = JRoute::_(RedeventHelperRoute::getMyeventsRoute(), false);
             break;
         default:
             if ($row && $row->published) {
                 $link = JRoute::_(RedeventHelperRoute::getDetailsRoute($row->id, $row->xref ? $row->xref : null), false);
             } else {
                 $link = JRoute::_(RedeventHelperRoute::getMyeventsRoute(), false);
             }
     }
     $this->setRedirect($link, $msg);
 }
Exemplo n.º 2
0
 /**
  * Creates the MyItems View
  *
  * @since 1.0
  */
 function display($tpl = null)
 {
     $mainframe =& JFactory::getApplication();
     $user =& JFactory::getUser();
     if (!$user->get('id')) {
         $mainframe->redirect('index.php', JText::_('COM_REDEVENT_Only_logged_users_can_access_this_page'), 'error');
     }
     //initialize variables
     $document =& JFactory::getDocument();
     $elsettings =& redEVENTHelper::config();
     $pathway =& $mainframe->getPathWay();
     $params =& $mainframe->getParams();
     $uri =& JFactory::getURI();
     $acl =& UserACl::getInstance();
     $menu =& JSite::getMenu();
     $item = $menu->getActive();
     //add css file
     if (!$params->get('custom_css')) {
         $document->addStyleSheet($this->baseurl . '/components/com_redevent/assets/css/redevent.css');
     } else {
         $document->addStyleSheet($params->get('custom_css'));
     }
     $document->addCustomTag('<!--[if IE]><style type="text/css">.floattext{zoom:1;}, * html #eventlist dd { height: 1%; }</style><![endif]-->');
     JHTML::_('behavior.mootools');
     $js = " window.addEvent('domready', function(){\n\t\t\t            \$\$('.deletelink').addEvent('click', function(event){\n\t\t\t                  if (confirm('" . JText::_('COM_REDEVENT_CONFIRM_DELETE_DATE') . "')) {\n\t                      \treturn true;\n\t\t                    }\n\t\t                    else {\n\t\t                    \tif (event.preventDefault) {\n\t\t                    \t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tevent.returnValue = false;\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t\treturn false;\n\t                    \t}\n\t\t\t            });\t\t            \n\t\t        }); ";
     $document->addScriptDeclaration($js);
     // get variables
     $limitstart = JRequest::getVar('limitstart', 0, '', 'int');
     $limit = $mainframe->getUserStateFromRequest('com_redevent.myevents.limit', 'limit', $params->def('display_num', 5), 'int');
     $filter_event = $mainframe->getUserStateFromRequest('com_redevent.myevents.filter_event', 'filter_event', 0, 'int');
     $task = JRequest::getWord('task');
     $pop = JRequest::getBool('pop');
     //get data from model
     $events =& $this->get('Events');
     $venues =& $this->get('Venues');
     $attending =& $this->get('Attending');
     $groups =& $this->get('Groups');
     //paginations
     $events_pageNav =& $this->get('EventsPagination');
     $venues_pageNav =& $this->get('VenuesPagination');
     $attending_pageNav =& $this->get('AttendingPagination');
     //params
     $params->def('page_title', $item ? $item->title : 'COM_REDEVENT_VIEW_MYEVENTS_TITLE');
     if ($pop) {
         //If printpopup set true
         $params->set('popup', 1);
     }
     //Set Page title
     $pagetitle = $params->get('page_title', JText::_('COM_REDEVENT_MY_EVENTS'));
     $this->document->setTitle($pagetitle);
     //create select lists
     $lists = $this->_buildSortLists();
     if ($lists['filter']) {
         $uri->setVar('filter', $lists['filter']);
         $uri->setVar('filter_type', JRequest::getString('filter_type'));
     } else {
         $uri->delVar('filter');
         $uri->delVar('filter_type');
     }
     // events filter
     $hasManagedEvents = false;
     $options = array(JHTML::_('select.option', 0, JText::_('COM_REDEVENT_select_event')));
     if ($ev = $this->get('EventsOptions')) {
         $hasManagedEvents = count($ev);
         $options = array_merge($options, $ev);
     }
     $lists['filter_event'] = JHTML::_('select.genericlist', $options, 'filter_event', 'onchange="document.getElementById(\'adminForm\').submit();"', 'value', 'text', $filter_event);
     $this->assign('action', JRoute::_(RedeventHelperRoute::getMyeventsRoute()));
     $this->assignRef('events', $events);
     $this->assignRef('venues', $venues);
     $this->assignRef('attending', $attending);
     $this->assignRef('groups', $groups);
     $this->assignRef('task', $task);
     $this->assignRef('print_link', $print_link);
     $this->assignRef('params', $params);
     $this->assignRef('dellink', $dellink);
     $this->assignRef('events_pageNav', $events_pageNav);
     $this->assignRef('venues_pageNav', $venues_pageNav);
     $this->assignRef('attending_pageNav', $attending_pageNav);
     $this->assignRef('elsettings', $elsettings);
     $this->assignRef('pagetitle', $pagetitle);
     $this->assignRef('lists', $lists);
     $this->assignRef('acl', $acl);
     $this->assignRef('hasManagedEvents', $hasManagedEvents);
     $this->assignRef('canAddXref', $acl->canAddXref());
     $this->assignRef('canAddEvent', $acl->canAddEvent());
     $this->assignRef('canAddVenue', $acl->canAddVenue());
     $cols = explode(',', $params->get('lists_columns', 'date, title, venue, city, category'));
     $cols = redEVENTHelper::validateColumns($cols);
     $this->assign('columns', $cols);
     parent::display($tpl);
 }