/** * Creates the output for venue submissions * * @since 0.5 * @param int $tpl */ function display($tpl = null) { $app =& JFactory::getApplication(); $user =& JFactory::getUser(); if (!$user->id) { $app->redirect(JRoute::_($_SERVER["HTTP_REFERER"]), JText::_('Please login to be able to submit venues'), 'error'); } $editor =& JFactory::getEditor(); $doc =& JFactory::getDocument(); $elsettings =& ELHelper::config(); // Get requests $id = JRequest::getInt('id'); //Get Data from the model $row = $this->Get('Venue'); JFilterOutput::objectHTMLSafe($row, ENT_QUOTES, 'locdescription'); JHTML::_('behavior.formvalidation'); JHTML::_('behavior.tooltip'); //add css file $doc->addStyleSheet($this->baseurl . '/components/com_eventlist/assets/css/eventlist.css'); $doc->addCustomTag('<!--[if IE]><style type="text/css">.floattext{zoom:1;}, * html #eventlist dd { height: 1%; }</style><![endif]-->'); // Get the menu object of the active menu item $menu =& JSite::getMenu(); $item = $menu->getActive(); $params =& $app->getParams('com_eventlist'); $id ? $title = JText::_('EDIT VENUE') : ($title = JText::_('ADD VENUE')); //pathway $pathway =& $app->getPathWay(); $pathway->setItemName(1, $item->name); $pathway->addItem($title, ''); //Set Title $doc->setTitle($title); //editor user $editoruser = ELUser::editoruser(); //transform <br /> and <br> back to \r\n for non editorusers if (!$editoruser) { $row->locdescription = ELHelper::br2break($row->locdescription); } //Get image $limage = ELImage::flyercreator($row->locimage); //Set the info image $infoimage = JHTML::_('image', 'components/com_eventlist/assets/images/icon-16-hint.png', JText::_('NOTES')); // country list $countries = array(); $countries[] = JHTML::_('select.option', '', JText::_('Select country')); $countries = array_merge($countries, ELHelper::getCountryOptions()); $lists['countries'] = JHTML::_('select.genericlist', $countries, 'country', 'class="inputbox"', 'value', 'text', $row->country); unset($countries); $this->assignRef('row', $row); $this->assignRef('editor', $editor); $this->assignRef('editoruser', $editoruser); $this->assignRef('limage', $limage); $this->assignRef('infoimage', $infoimage); $this->assignRef('elsettings', $elsettings); $this->assignRef('item', $item); $this->assignRef('params', $params); $this->assignRef('lists', $lists); $this->assignRef('title', $title); $this->assignRef('mode', JRequest::getVar('mode', '')); parent::display($tpl); }
/** * Creates the output for venue submissions * * @since 0.5 * @param int $tpl */ function display($tpl = null) { global $mainframe; $editor =& JFactory::getEditor(); $doc =& JFactory::getDocument(); $elsettings =& ELHelper::config(); // Get requests $id = JRequest::getInt('id'); //Get Data from the model $row = $this->Get('Venue'); JFilterOutput::objectHTMLSafe($row, ENT_QUOTES, 'locdescription'); JHTML::_('behavior.formvalidation'); JHTML::_('behavior.tooltip'); //add css file $doc->addStyleSheet($this->baseurl . '/components/com_eventlist/assets/css/eventlist.css'); $doc->addCustomTag('<!--[if IE]><style type="text/css">.floattext{zoom:1;}, * html #eventlist dd { height: 1%; }</style><![endif]-->'); // Get the menu object of the active menu item $menu =& JSite::getMenu(); $item = $menu->getActive(); $params =& $mainframe->getParams('com_eventlist'); $id ? $title = JText::_('EDIT VENUE') : ($title = JText::_('ADD VENUE')); //pathway $pathway =& $mainframe->getPathWay(); $pathway->setItemName(1, $item->name); $pathway->addItem($title, ''); //Set Title $doc->setTitle($title); //editor user $editoruser = ELUser::editoruser(); //transform <br /> and <br> back to \r\n for non editorusers if (!$editoruser) { $row->locdescription = ELHelper::br2break($row->locdescription); } //Get image $limage = ELImage::flyercreator($row->locimage); //Set the info image $infoimage = JHTML::_('image', 'components/com_eventlist/assets/images/icon-16-hint.png', JText::_('NOTES')); $this->assignRef('row', $row); $this->assignRef('editor', $editor); $this->assignRef('editoruser', $editoruser); $this->assignRef('limage', $limage); $this->assignRef('infoimage', $infoimage); $this->assignRef('elsettings', $elsettings); $this->assignRef('item', $item); $this->assignRef('params', $params); parent::display($tpl); }
/** * Creates the output for event submissions * * @since 0.4 * */ function display($tpl = null) { global $mainframe; if ($this->getLayout() == 'selectvenue') { $this->_displayselectvenue($tpl); return; } // Initialize variables $editor =& JFactory::getEditor(); $doc =& JFactory::getDocument(); $elsettings =& ELHelper::config(); //Get Data from the model $row = $this->Get('Event'); $categories = $this->Get('Categories'); //Get requests $id = JRequest::getInt('id'); //Clean output JFilterOutput::objectHTMLSafe($row, ENT_QUOTES, 'datdescription'); JHTML::_('behavior.formvalidation'); JHTML::_('behavior.tooltip'); JHTML::_('behavior.modal', 'a.modal'); //add css file $doc->addStyleSheet($this->baseurl . '/components/com_eventlist/assets/css/eventlist.css'); $doc->addCustomTag('<!--[if IE]><style type="text/css">.floattext{zoom:1;}, * html #eventlist dd { height: 1%; }</style><![endif]-->'); //Set page title $id ? $title = JText::_('EDIT EVENT') : ($title = JText::_('ADD EVENT')); $doc->setTitle($title); // Get the menu object of the active menu item $menu =& JSite::getMenu(); $item = $menu->getActive(); $params =& $mainframe->getParams('com_eventlist'); //pathway $pathway =& $mainframe->getPathWay(); $pathway->setItemName(1, $item->name); $pathway->addItem($title, ''); //Has the user access to the editor and the add venue screen $editoruser = ELUser::editoruser(); $delloclink = ELUser::validate_user($elsettings->locdelrec, $elsettings->deliverlocsyes); //transform <br /> and <br> back to \r\n for non editorusers if (!$editoruser) { $row->datdescription = ELHelper::br2break($row->datdescription); } //Get image information $dimage = ELImage::flyercreator($row->datimage, 'event'); //Set the info image $infoimage = JHTML::_('image', 'components/com_eventlist/assets/images/icon-16-hint.png', JText::_('NOTES')); //Create the stuff required for the venueselect functionality $url = $mainframe->isAdmin() ? $mainframe->getSiteURL() : JURI::base(); $js = "\r\n\t\tfunction elSelectVenue(id, venue) {\r\n\t\t\tdocument.getElementById('a_id').value = id;\r\n\t\t\tdocument.getElementById('a_name').value = venue;\r\n\t\t\tdocument.getElementById('sbox-window').close();\r\n\t\t}"; $doc->addScriptDeclaration($js); // include the recurrence script $doc->addScript($url . 'components/com_eventlist/assets/js/recurrence.js'); // include the unlimited script $doc->addScript($url . 'components/com_eventlist/assets/js/unlimited.js'); $this->assignRef('row', $row); $this->assignRef('categories', $categories); $this->assignRef('editor', $editor); $this->assignRef('dimage', $dimage); $this->assignRef('infoimage', $infoimage); $this->assignRef('delloclink', $delloclink); $this->assignRef('editoruser', $editoruser); $this->assignRef('elsettings', $elsettings); $this->assignRef('item', $item); $this->assignRef('params', $params); parent::display($tpl); }
/** * Method to store the venue * * @access public * @return id * @since 0.9 */ function store($data, $file) { global $mainframe; jimport('joomla.utilities.date'); $user =& JFactory::getUser(); $elsettings = ELHelper::config(); //Get mailinformation $SiteName = $mainframe->getCfg('sitename'); $MailFrom = $mainframe->getCfg('mailfrom'); $FromName = $mainframe->getCfg('fromname'); $tzoffset = $mainframe->getCfg('offset'); $row =& JTable::getInstance('eventlist_venues', ''); //bind it to the table if (!$row->bind($data)) { JError::raiseError(500, $this->_db->stderr()); return false; } //Are we saving from an item edit? if ($row->id) { $owner = ELUser::isOwner($row->id, 'venues'); //check if user is allowed to edit venues $allowedtoeditvenue = ELUser::editaccess($elsettings->venueowner, $owner, $elsettings->venueeditrec, $elsettings->venueedit); if ($allowedtoeditvenue == 0) { $row->checkin(); $mainframe->enqueueMessage(JText::_('NO ACCESS')); return false; } $date = new JDate($row->modified, $tzoffset); $row->modified = $date->toMySQL(); $row->modified_by = $user->get('id'); //Is editor the owner of the venue //This extra Check is needed to make it possible //that the venue is published after an edit from an owner if ($elsettings->venueowner == 1 && $owner == $user->get('id')) { $owneredit = 1; } else { $owneredit = 0; } } else { //check if user is allowed to submit new venues $delloclink = ELUser::validate_user($elsettings->locdelrec, $elsettings->deliverlocsyes); if ($delloclink == 0) { $mainframe->enqueueMessage(JText::_('NO ACCESS')); return false; } //get IP, time and userid $date = new JDate($row->created, $tzoffset); $row->created = $date->toMySQL(); $row->author_ip = $elsettings->storeip ? getenv('REMOTE_ADDR') : 'DISABLED'; $row->created_by = $user->get('id'); //set owneredit to false $owneredit = 0; } //Image upload //If image upload is required we will stop here if no file was attached if (empty($file['name']) && $elsettings->imageenabled == 2) { $this->setError(JText::_('IMAGE EMPTY')); return false; } if (($elsettings->imageenabled == 2 || $elsettings->imageenabled == 1) && !empty($file['name'])) { jimport('joomla.filesystem.file'); $base_Dir = JPATH_SITE . '/images/eventlist/venues/'; //check the image $check = ELImage::check($file, $elsettings); if ($check === false) { $mainframe->redirect($_SERVER['HTTP_REFERER']); } //sanitize the image filename $filename = ELImage::sanitize($base_Dir, $file['name']); $filepath = $base_Dir . $filename; if (!JFile::upload($file['tmp_name'], $filepath)) { $this->setError(JText::_('UPLOAD FAILED')); return false; } else { $row->locimage = $filename; } } else { //keep image if edited and left blank $row->locimage = $row->curimage; } //end image upload if //Check description $editoruser = ELUser::editoruser(); if (!$editoruser) { //check datdescription --> wipe out code $row->locdescription = strip_tags($row->locdescription, '<br />'); //convert the linux \n (Mac \r, Win \r\n) to <br /> linebreaks $row->locdescription = str_replace(array("\r\n", "\r", "\n"), "<br />", $row->locdescription); //cut too long words $row->locdescription = wordwrap($row->locdescription, 75, " ", 1); //check length $length = JString::strlen($row->locdescription); if ($length > $elsettings->datdesclimit) { // if required shorten it $row->locdescription = JString::substr($row->locdescription, 0, $elsettings->datdesclimit); //if shortened add ... $row->locdescription = $row->locdescription . '...'; } } $row->venue = trim(JFilterOutput::ampReplace($row->venue)); //Autopublish //check if the user has the required rank for autopublish $autopublloc = ELUser::validate_user($elsettings->locpubrec, $elsettings->autopublocate); //Check if user is the owner of the venue //If yes enable autopublish if ($autopublloc || $owneredit) { $row->published = 1; } else { $row->published = 0; } //Make sure the data is valid if (!$row->check($elsettings)) { $this->setError($row->getError()); return false; } //is this an edited venue or not? //after store we allways have an id $edited = $row->id ? $row->id : false; //store it in the db if (!$row->store()) { $this->setError($this->_db->getErrorMsg()); return false; } jimport('joomla.utilities.mail'); $link = JURI::base() . JRoute::_('index.php?view=details&id=' . $row->id, false); //create mail if ($elsettings->mailinform == 2 || $elsettings->mailinform == 3) { $mail = JFactory::getMailer(); $state = $row->published ? JText::sprintf('MAIL VENUE PUBLISHED', $link) : JText::_('MAIL VENUE UNPUBLISHED'); if ($edited) { $modified_ip = getenv('REMOTE_ADDR'); $edited = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('MAIL EDIT VENUE', $user->name, $user->username, $user->email, $modified_ip, $edited, $row->venue, $row->url, $row->street, $row->plz, $row->city, $row->country, $row->locdescription, $state); $mail->setSubject($SiteName . JText::_('EDIT VENUE MAIL')); } else { $created = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('MAIL NEW VENUE', $user->name, $user->username, $user->email, $row->author_ip, $created, $row->venue, $row->url, $row->street, $row->plz, $row->city, $row->country, $row->locdescription, $state); $mail->setSubject($SiteName . JText::_('NEW VENUE MAIL')); } $receivers = explode(',', trim($elsettings->mailinformrec)); $mail->addRecipient($receivers); $mail->setSender(array($MailFrom, $FromName)); $mail->setBody($mailbody); $sent = $mail->Send(); } //create the mail for the user if ($elsettings->mailinformuser == 2 || $elsettings->mailinformuser == 3) { $usermail = JFactory::getMailer(); $state = $row->published ? JText::sprintf('USER MAIL VENUE PUBLISHED', $link) : JText::_('USER MAIL VENUE UNPUBLISHED'); if ($edited) { $edited = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('USER MAIL EDIT VENUE', $user->name, $user->username, $edited, $row->venue, $row->url, $row->street, $row->plz, $row->city, $row->country, $row->locdescription, $state); $usermail->setSubject($SiteName . JText::_('EDIT USER VENUE MAIL')); } else { $created = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('USER MAIL NEW VENUE', $user->name, $user->username, $created, $row->venue, $row->url, $row->street, $row->plz, $row->city, $row->country, $row->locdescription, $state); $usermail->setSubject($SiteName . JText::_('NEW USER VENUE MAIL')); } $usermail->addRecipient($user->email); $usermail->setSender(array($MailFrom, $FromName)); $usermail->setBody($mailbody); $sent = $usermail->Send(); } //update item order $row->reorder(); return $row->id; }
/** * Method to store the venue * * @access public * @return id * @since 0.9 */ function store($data, $file) { $app =& JFactory::getApplication(); $user =& JFactory::getUser(); $elsettings =& ELHelper::config(); $tzoffset = $app->getCfg('offset'); $row =& JTable::getInstance('eventlist_venues', ''); //bind it to the table if (!$row->bind($data)) { JError::raiseError(500, $this->_db->stderr()); return false; } //Are we saving from an item edit? if ($row->id) { //check if user is allowed to edit venues $allowedtoeditvenue = ELUser::editaccess($elsettings->venueowner, $row->created_by, $elsettings->venueeditrec, $elsettings->venueedit); if ($allowedtoeditvenue == 0) { $row->checkin(); $app->enqueueMessage(JText::_('NO ACCESS')); return false; } $row->modified = gmdate('Y-m-d H:i:s'); $row->modified_by = $user->get('id'); //Is editor the owner of the venue //This extra Check is needed to make it possible //that the venue is published after an edit from an owner if ($elsettings->venueowner == 1 && $row->created_by == $user->get('id')) { $owneredit = 1; } else { $owneredit = 0; } } else { //check if user is allowed to submit new venues $delloclink = ELUser::validate_user($elsettings->locdelrec, $elsettings->deliverlocsyes); if ($delloclink == 0) { $app->enqueueMessage(JText::_('NO ACCESS')); return false; } //get IP, time and userid $row->created = gmdate('Y-m-d H:i:s'); $row->author_ip = $elsettings->storeip ? getenv('REMOTE_ADDR') : 'DISABLED'; $row->created_by = $user->get('id'); //set owneredit to false $owneredit = 0; } //Image upload //If image upload is required we will stop here if no file was attached if (empty($file['name']) && $elsettings->imageenabled == 2) { $this->setError(JText::_('IMAGE EMPTY')); return false; } if (($elsettings->imageenabled == 2 || $elsettings->imageenabled == 1) && !empty($file['name'])) { jimport('joomla.filesystem.file'); $base_Dir = JPATH_SITE . '/images/eventlist/venues/'; //check the image $check = ELImage::check($file, $elsettings); if ($check === false) { $app->redirect($_SERVER['HTTP_REFERER']); } //sanitize the image filename $filename = ELImage::sanitize($base_Dir, $file['name']); $filepath = $base_Dir . $filename; if (!JFile::upload($file['tmp_name'], $filepath)) { $this->setError(JText::_('UPLOAD FAILED')); return false; } else { $row->locimage = $filename; } } else { //keep image if edited and left blank $row->locimage = $row->curimage; } //end image upload if //Check description $editoruser = ELUser::editoruser(); if (!$editoruser) { //check description --> wipe out code $row->locdescription = strip_tags($row->locdescription, '<br><br/>'); //convert the linux \n (Mac \r, Win \r\n) to <br /> linebreaks $row->locdescription = str_replace(array("\r\n", "\r", "\n"), "<br />", $row->locdescription); //cut too long words $row->locdescription = wordwrap($row->locdescription, 75, " ", 1); //check length $length = JString::strlen($row->locdescription); if ($length > $elsettings->datdesclimit) { // if required shorten it $row->locdescription = JString::substr($row->locdescription, 0, $elsettings->datdesclimit); //if shortened add ... $row->locdescription = $row->locdescription . '...'; } } //Autopublish //check if the user has the required rank for autopublish $autopublloc = ELUser::validate_user($elsettings->locpubrec, $elsettings->autopublocate); //Check if user is the owner of the venue //If yes enable autopublish if ($autopublloc || $owneredit) { $row->published = 1; } else { $row->published = 0; } $row->version++; //Make sure the data is valid if (!$row->check($elsettings)) { $this->setError($row->getError()); return false; } //store it in the db if (!$row->store()) { $this->setError($this->_db->getErrorMsg()); return false; } //update item order $row->reorder(); return $row->id; }
/** * Method to store the event * * @access public * @return id * @since 0.9 */ function store($data, $file) { global $mainframe; $user =& JFactory::getUser(); $elsettings =& ELHelper::config(); //Get mailinformation $SiteName = $mainframe->getCfg('sitename'); $MailFrom = $mainframe->getCfg('mailfrom'); $FromName = $mainframe->getCfg('fromname'); $tzoffset = $mainframe->getCfg('offset'); $row =& JTable::getInstance('eventlist_events', ''); //Sanitize $data['datdescription'] = JRequest::getVar('datdescription', '', 'post', 'string', JREQUEST_ALLOWRAW); //include the metatags $data['meta_description'] = addslashes(htmlspecialchars(trim($elsettings->meta_description))); if (strlen($data['meta_description']) > 255) { $data['meta_description'] = substr($data['meta_description'], 0, 254); } $data['meta_keywords'] = addslashes(htmlspecialchars(trim($elsettings->meta_keywords))); if (strlen($data['meta_keywords']) > 200) { $data['meta_keywords'] = substr($data['meta_keywords'], 0, 199); } $curimage = JRequest::getVar('curimage', '', 'post', 'string'); //bind it to the table if (!$row->bind($data)) { JError::raiseError(500, $this->_db->stderr()); return false; } //Are we saving from an item edit? if ($row->id) { //check if user is allowed to edit events $editaccess = ELUser::editaccess($elsettings->eventowner, $row->created_by, $elsettings->eventeditrec, $elsettings->eventedit); $maintainer = ELUser::ismaintainer(); if ($maintainer || $editaccess) { $allowedtoeditevent = 1; } if ($allowedtoeditevent == 0) { JError::raiseError(403, JText::_('NO ACCESS')); } $row->modified = gmdate('Y-m-d H:i:s'); $row->modified_by = $user->get('id'); /* * Is editor the owner of the event * This extra Check is needed to make it possible * that the venue is published after an edit from an owner */ if ($elsettings->venueowner == 1 && $row->created_by == $user->get('id')) { $owneredit = 1; } else { $owneredit = 0; } } else { //check if user is allowed to submit new events $maintainer = ELUser::ismaintainer(); $genaccess = ELUser::validate_user($elsettings->evdelrec, $elsettings->delivereventsyes); if ($maintainer || $genaccess) { $dellink = 1; } if ($dellink == 0) { JError::raiseError(403, JText::_('NO ACCESS')); } //get IP, time and userid $row->created = gmdate('Y-m-d H:i:s'); $row->author_ip = $elsettings->storeip ? getenv('REMOTE_ADDR') : 'DISABLED'; $row->created_by = $user->get('id'); //Set owneredit to false $owneredit = 0; } /* * Autopublish * check if the user has the required rank for autopublish */ $autopubev = ELUser::validate_user($elsettings->evpubrec, $elsettings->autopubl); if ($autopubev || $owneredit) { $row->published = 1; } else { $row->published = 0; } //Image upload //If image upload is required we will stop here if no file was attached if (empty($file['name']) && $elsettings->imageenabled == 2) { $this->setError(JText::_('IMAGE EMPTY')); return false; } if (($elsettings->imageenabled == 2 || $elsettings->imageenabled == 1) && !empty($file['name'])) { jimport('joomla.filesystem.file'); $base_Dir = JPATH_SITE . '/images/eventlist/events/'; //check the image $check = ELImage::check($file, $elsettings); if ($check === false) { $mainframe->redirect($_SERVER['HTTP_REFERER']); } //sanitize the image filename $filename = ELImage::sanitize($base_Dir, $file['name']); $filepath = $base_Dir . $filename; if (!JFile::upload($file['tmp_name'], $filepath)) { $this->setError(JText::_('UPLOAD FAILED')); return false; } else { $row->datimage = $filename; } } else { //keep image if edited and left blank $row->datimage = $curimage; } //end image if $editoruser = ELUser::editoruser(); if (!$editoruser) { //check datdescription --> wipe out code $row->datdescription = strip_tags($row->datdescription, '<br><br/>'); //convert the linux \n (Mac \r, Win \r\n) to <br /> linebreaks $row->datdescription = str_replace(array("\r\n", "\r", "\n"), "<br />", $row->datdescription); // cut too long words $row->datdescription = wordwrap($row->datdescription, 75, ' ', 1); //check length $length = JString::strlen($row->datdescription); if ($length > $elsettings->datdesclimit) { //too long then shorten datdescription $row->datdescription = JString::substr($row->datdescription, 0, $elsettings->datdesclimit); //add ... $row->datdescription = $row->datdescription . '...'; } } $row->title = trim(JFilterOutput::ampReplace($row->title)); //set registration regarding the el settings switch ($elsettings->showfroregistra) { case 0: $row->registra = 0; break; case 1: $row->registra = 1; break; case 2: $row->registra = $row->registra; break; } switch ($elsettings->showfrounregistra) { case 0: $row->unregistra = 0; break; case 1: $row->unregistra = 1; break; case 2: if ($elsettings->showfroregistra >= 1) { $row->unregistra = $row->unregistra; } else { $row->unregistra = 0; } break; } //Make sure the table is valid if (!$row->check($elsettings)) { $this->setError($row->getError()); return false; } //is this an edited event or not? //after store we allways have an id $edited = $row->id ? $row->id : false; //store it in the db if (!$row->store(true)) { JError::raiseError(500, $this->_db->stderr()); return false; } $this->_db->setQuery('SELECT * FROM #__eventlist_venues WHERE id = ' . (int) $row->locid); $rowloc = $this->_db->loadObject(); jimport('joomla.utilities.mail'); $link = JURI::base() . JRoute::_('index.php?view=details&id=' . $row->id, false); //create the mail for the site owner if ($elsettings->mailinform == 1 || $elsettings->mailinform == 3) { $mail = JFactory::getMailer(); $state = $row->published ? JText::sprintf('MAIL EVENT PUBLISHED', $link) : JText::_('MAIL EVENT UNPUBLISHED'); if ($edited) { $modified_ip = getenv('REMOTE_ADDR'); $edited = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('MAIL EDIT EVENT', $user->name, $user->username, $user->email, $modified_ip, $edited, $row->title, $row->dates, $row->times, $rowloc->venue, $rowloc->city, $row->datdescription, $state); $mail->setSubject($SiteName . JText::_('EDIT EVENT MAIL')); } else { $created = JHTML::Date($row->created, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('MAIL NEW EVENT', $user->name, $user->username, $user->email, $row->author_ip, $created, $row->title, $row->dates, $row->times, $rowloc->venue, $rowloc->city, $row->datdescription, $state); $mail->setSubject($SiteName . JText::_('NEW EVENT MAIL')); } $receivers = explode(',', trim($elsettings->mailinformrec)); $mail->addRecipient($receivers); $mail->setSender(array($MailFrom, $FromName)); $mail->setBody($mailbody); $sent = $mail->Send(); } //mail end //create the mail for the user if ($elsettings->mailinformuser == 1 || $elsettings->mailinformuser == 3) { $usermail = JFactory::getMailer(); $state = $row->published ? JText::sprintf('USER MAIL EVENT PUBLISHED', $link) : JText::_('USER MAIL EVENT UNPUBLISHED'); if ($edited) { $edited = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('USER MAIL EDIT EVENT', $user->name, $user->username, $edited, $row->title, $row->dates, $row->times, $rowloc->venue, $rowloc->city, $row->datdescription, $state); $usermail->setSubject($SiteName . JText::_('EDIT USER EVENT MAIL')); } else { $created = JHTML::Date($row->created, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('USER MAIL NEW EVENT', $user->name, $user->username, $created, $row->title, $row->dates, $row->times, $rowloc->venue, $rowloc->city, $row->datdescription, $state); $usermail->setSubject($SiteName . JText::_('NEW USER EVENT MAIL')); } $usermail->addRecipient($user->email); $usermail->setSender(array($MailFrom, $FromName)); $usermail->setBody($mailbody); $sent = $usermail->Send(); } return $row->id; }
/** * Method to store the venue * * @access public * @return id * @since 0.9 */ function store($data, $file) { $mainframe =& JFactory::getApplication(); $user =& JFactory::getUser(); $elsettings =& redEVENTHelper::config(); //Get mailinformation $SiteName = $mainframe->getCfg('sitename'); $MailFrom = $mainframe->getCfg('mailfrom'); $FromName = $mainframe->getCfg('fromname'); $tzoffset = $mainframe->getCfg('offset'); $params = $mainframe->getParams('com_redevent'); $row =& JTable::getInstance('redevent_venues', ''); //bind it to the table if (!$row->bind($data)) { RedeventError::raiseError(500, $this->_db->stderr()); return false; } //Are we saving from an item edit? if ($row->id) { $row->modified = gmdate('Y-m-d H:i:s'); $row->modified_by = $user->get('id'); } else { //get IP, time and userid $row->created = gmdate('Y-m-d H:i:s'); $row->author_ip = $elsettings->get('storeip', '1') ? getenv('REMOTE_ADDR') : 'DISABLED'; $row->created_by = $user->get('id'); } //Image upload //If image upload is required we will stop here if no file was attached if (empty($file['name']) && $params->get('edit_image', 1) == 2) { $this->setError(JText::_('COM_REDEVENT_IMAGE_EMPTY')); return false; } if (($params->get('edit_image', 1) == 2 || $params->get('edit_image', 1) == 1) && !empty($file['name'])) { jimport('joomla.filesystem.file'); if ($params->get('default_image_path', 'redevent')) { $reldirpath = $params->get('default_image_path', 'redevent') . DS . 'venues' . DS; } else { $reldirpath = ''; } $base_Dir = JPATH_SITE . DS . 'images' . DS . $reldirpath; //check the image $check = redEVENTImage::check($file, $elsettings); if ($check === false) { $mainframe->redirect($_SERVER['HTTP_REFERER']); } //sanitize the image filename $filename = redEVENTImage::sanitize($base_Dir, $file['name']); $filepath = $base_Dir . $filename; if (!JFile::upload($file['tmp_name'], $filepath)) { $this->setError(JText::_('COM_REDEVENT_UPLOAD_FAILED')); return false; } else { $row->locimage = 'images' . DS . $reldirpath . $filename; } } else { //keep image if edited and left blank $row->locimage = $row->curimage; } //end image upload if //Check description $editoruser = ELUser::editoruser(); if (!$editoruser) { //check description --> wipe out code $row->locdescription = strip_tags($row->locdescription, '<br><br/>'); //convert the linux \n (Mac \r, Win \r\n) to <br /> linebreaks $row->locdescription = str_replace(array("\r\n", "\r", "\n"), "<br />", $row->locdescription); //cut too long words $row->locdescription = wordwrap($row->locdescription, 75, " ", 1); //check length $length = JString::strlen($row->locdescription); if ($length > $params->get('max_description', 1000)) { // if required shorten it $row->locdescription = JString::substr($row->locdescription, 0, $params->get('max_description', 1000)); //if shortened add ... $row->locdescription = $row->locdescription . '...'; } } $row->venue = trim(JFilterOutput::ampReplace($row->venue)); //Make sure the data is valid if (!$row->check($elsettings)) { $this->setError($row->getError()); return false; } //is this an edited venue or not? //after store we allways have an id $edited = $row->id ? $row->id : false; //store it in the db if (!$row->store()) { $this->setError($this->_db->getErrorMsg()); return false; } // update the event category xref // first, delete current rows for this event $query = ' DELETE FROM #__redevent_venue_category_xref WHERE venue_id = ' . $this->_db->Quote($row->id); $this->_db->setQuery($query); if (!$this->_db->query()) { $this->setError($this->_db->getErrorMsg()); return false; } // insert new ref foreach ((array) $data['categories'] as $cat_id) { $query = ' INSERT INTO #__redevent_venue_category_xref (venue_id, category_id) VALUES (' . $this->_db->Quote($row->id) . ', ' . $this->_db->Quote($cat_id) . ')'; $this->_db->setQuery($query); if (!$this->_db->query()) { $this->setError($this->_db->getErrorMsg()); return false; } } // attachments if ($params->get('allow_attachments', 1)) { REAttach::store('venue' . $row->id); } jimport('joomla.utilities.mail'); $link = JRoute::_(JURI::base() . RedeventHelperRoute::getVenueEventsRoute($row->id), false); //create mail if ($params->get('mailinform') == 2 || $params->get('mailinform') == 3) { $mail = JFactory::getMailer(); $state = $row->published ? JText::sprintf('COM_REDEVENT_MAIL_VENUE_PUBLISHED', $link) : JText::_('COM_REDEVENT_MAIL_VENUE_UNPUBLISHED'); if ($edited) { $modified_ip = getenv('REMOTE_ADDR'); $edited = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('COM_REDEVENT_MAIL_EDIT_VENUE', $user->name, $user->username, $user->email, $modified_ip, $edited, $row->venue, $row->url, $row->street, $row->plz, $row->city, $row->country, $row->locdescription, $state); $mail->setSubject($SiteName . JText::_('COM_REDEVENT_EDIT_VENUE_MAIL')); } else { $created = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('COM_REDEVENT_MAIL_NEW_VENUE', $user->name, $user->username, $user->email, $row->author_ip, $created, $row->venue, $row->url, $row->street, $row->plz, $row->city, $row->country, $row->locdescription, $state); $mail->setSubject($SiteName . JText::_('COM_REDEVENT_NEW_VENUE_MAIL')); } $receivers = explode(',', trim($params->get('mailinformrec'))); $mail->addRecipient($receivers); $mail->setSender(array($MailFrom, $FromName)); $mail->setBody($mailbody); if (!$mail->Send()) { RedeventHelperLog::simpleLog('Error sending created/edited venue notification to site owner'); } } //create the mail for the user if ($params->get('mailinformuser') == 2 || $params->get('mailinformuser') == 3) { $usermail = JFactory::getMailer(); $state = $row->published ? JText::sprintf('COM_REDEVENT_USER_MAIL_VENUE_PUBLISHED', $link) : JText::_('COM_REDEVENT_USER_MAIL_VENUE_UNPUBLISHED'); if ($edited) { $edited = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('COM_REDEVENT_USER_MAIL_EDIT_VENUE', $user->name, $user->username, $edited, $row->venue, $row->url, $row->street, $row->plz, $row->city, $row->country, $row->locdescription, $state); $usermail->setSubject($SiteName . JText::_('COM_REDEVENT_EDIT_USER_VENUE_MAIL')); } else { $created = JHTML::Date($row->modified, JText::_('DATE_FORMAT_LC2')); $mailbody = JText::sprintf('COM_REDEVENT_USER_MAIL_NEW_VENUE', $user->name, $user->username, $created, $row->venue, $row->url, $row->street, $row->plz, $row->city, $row->country, $row->locdescription, $state); $usermail->setSubject($SiteName . JText::_('COM_REDEVENT_NEW_USER_VENUE_MAIL')); } $usermail->addRecipient($user->email); $usermail->setSender(array($MailFrom, $FromName)); $usermail->setBody($mailbody); if (!$usermail->Send()) { RedeventHelperLog::simpleLog('Error sending created/edited venue notification to venue owner'); } } //update item order $row->reorder(); return $row->id; }
/** * Creates the output for event submissions * * @since 0.4 * */ function display($tpl = null) { $app =& JFactory::getApplication(); $session =& JFactory::getSession(); $user =& JFactory::getUser(); if (!$user->id) { $app->redirect(JRoute::_($_SERVER["HTTP_REFERER"]), JText::_('Please login to be able to submit events'), 'error'); } if ($this->getLayout() == 'choosevenue') { $this->_displaychoosevenue($tpl); return; } // Initialize variables $editor =& JFactory::getEditor(); $doc =& JFactory::getDocument(); $elsettings =& ELHelper::config(); //Get Data from the model $row = $this->get('Event'); //Cause of group limits we can't use class here to build the categories tree $categories = $this->get('Categories'); //sticky form categorie data if ($session->has('eventform', 'com_eventlist')) { $eventform = $session->get('eventform', 0, 'com_eventlist'); $selectedcats = $eventform['cid']; } else { $selectedcats =& $this->get('Catsselected'); } //build selectlists $categories = eventlist_cats::buildcatselect($categories, 'cid[]', $selectedcats, 0, 'multiple="multiple" size="8 class="inputbox required validate-cid"'); //Get requests $id = JRequest::getInt('id'); //Clean output JFilterOutput::objectHTMLSafe($row, ENT_QUOTES, 'datdescription'); JHTML::_('behavior.formvalidation'); JHTML::_('behavior.tooltip'); JHTML::_('behavior.modal', 'a.modal'); //add css file $doc->addStyleSheet($this->baseurl . '/components/com_eventlist/assets/css/eventlist.css'); $doc->addCustomTag('<!--[if IE]><style type="text/css">.floattext{zoom:1;}, * html #eventlist dd { height: 1%; }</style><![endif]-->'); //Set page title $id ? $title = JText::_('EDIT EVENT') : ($title = JText::_('ADD EVENT')); $doc->setTitle($title); // Get the menu object of the active menu item $menu =& JSite::getMenu(); $item = $menu->getActive(); $params =& $app->getParams('com_eventlist'); //pathway $pathway =& $app->getPathWay(); $pathway->setItemName(1, $item->name); $pathway->addItem($title, ''); //Has the user access to the editor and the add venue screen $editoruser = ELUser::editoruser(); $delloclink = ELUser::validate_user($elsettings->locdelrec, $elsettings->deliverlocsyes); //transform <br /> and <br> back to \r\n for non editorusers if (!$editoruser) { $row->datdescription = ELHelper::br2break($row->datdescription); } //Get image information $dimage = ELImage::flyercreator($row->datimage, 'event'); //Set the info image $infoimage = JHTML::_('image', 'components/com_eventlist/assets/images/icon-16-hint.png', JText::_('NOTES')); //Create the stuff required for the venueselect functionality $url = $app->isAdmin() ? $app->getSiteURL() : JURI::base(); $js = "\n\t\tfunction elSelectVenue(id, venue) {\n\t\t\tdocument.getElementById('a_id').value = id;\n\t\t\tdocument.getElementById('a_name').value = venue;\n\t\t\tdocument.getElementById('sbox-window').close();\n\t\t}\n\t\t\n\t\tfunction closeAdd() {\n\t\t\tdocument.getElementById('sbox-window').close(); \n \t}\n \t"; $doc->addScriptDeclaration($js); // include the recurrence script $doc->addScript($url . 'components/com_eventlist/assets/js/recurrence.js'); // include the unlimited script $doc->addScript($url . 'components/com_eventlist/assets/js/unlimited.js'); $lists = array(); // recurrence type $rec_type = array(); $rec_type[] = JHTML::_('select.option', 0, JText::_('NOTHING')); $rec_type[] = JHTML::_('select.option', 1, JText::_('DAYLY')); $rec_type[] = JHTML::_('select.option', 2, JText::_('WEEKLY')); $rec_type[] = JHTML::_('select.option', 3, JText::_('MONTHLY')); $rec_type[] = JHTML::_('select.option', 4, JText::_('WEEKDAY')); $lists['recurrence_type'] = JHTML::_('select.genericlist', $rec_type, 'recurrence_type', '', 'value', 'text', $row->recurrence_type); //if only owned events are allowed if ($elsettings->ownedvenuesonly) { $venues =& $this->get('UserVenues'); //build list $venuelist = array(); $venuelist[] = JHTML::_('select.option', '0', JText::_('NO VENUE')); $venuelist = array_merge($venuelist, $venues); $lists['venueselect'] = JHTML::_('select.genericlist', $venuelist, 'locid', 'size="1" class="inputbox"', 'value', 'text', $row->locid); } $this->assignRef('row', $row); $this->assignRef('categories', $categories); $this->assignRef('editor', $editor); $this->assignRef('dimage', $dimage); $this->assignRef('infoimage', $infoimage); $this->assignRef('delloclink', $delloclink); $this->assignRef('editoruser', $editoruser); $this->assignRef('elsettings', $elsettings); $this->assignRef('item', $item); $this->assignRef('params', $params); $this->assignRef('lists', $lists); parent::display($tpl); }
/** * Method to store the event * * @access public * @return id * @since 0.9 */ function store($data, $file) { $app =& JFactory::getApplication(); $user =& JFactory::getUser(); $elsettings =& ELHelper::config(); $cats = JRequest::getVar('cid', array(), 'post', 'array'); $row =& JTable::getInstance('eventlist_events', ''); //Sanitize $data['datdescription'] = JRequest::getVar('datdescription', '', 'post', 'string', JREQUEST_ALLOWRAW); //include the metatags if (strlen($data['meta_description']) > 255) { $data['meta_description'] = substr($data['meta_description'], 0, 254); } if (strlen($data['meta_keywords']) > 200) { $data['meta_keywords'] = substr($data['meta_keywords'], 0, 199); } $curimage = JRequest::getVar('curimage', '', 'post', 'string'); //bind it to the table if (!$row->bind($data)) { JError::raiseError(500, $this->_db->stderr()); return false; } //get values from time selectlist and concatenate them accordingly $starthours = JRequest::getCmd('starthours'); $startminutes = JRequest::getCmd('startminutes'); $endhours = JRequest::getCmd('endhours'); $endminutes = JRequest::getCmd('endminutes'); $row->times = $starthours . ':' . $startminutes; $row->endtimes = $endhours . ':' . $endminutes; //Are we saving from an item edit? if ($row->id) { //check if user is allowed to edit events $editaccess = ELUser::editaccess($elsettings->eventowner, $row->created_by, $elsettings->eventeditrec, $elsettings->eventedit); $maintainer = ELUser::ismaintainer(); if ($maintainer || $editaccess) { $allowedtoeditevent = 1; } if ($allowedtoeditevent == 0) { JError::raiseError(403, JText::_('NO ACCESS')); } $row->modified = gmdate('Y-m-d H:i:s'); $row->modified_by = $user->get('id'); /* * Is editor the owner of the event * This extra Check is needed to make it possible * that the venue is published after an edit from an owner */ if ($elsettings->venueowner == 1 && $row->created_by == $user->get('id')) { $owneredit = 1; } else { $owneredit = 0; } } else { //check if user is allowed to submit new events $maintainer = ELUser::ismaintainer(); $genaccess = ELUser::validate_user($elsettings->evdelrec, $elsettings->delivereventsyes); if (!($maintainer || $genaccess)) { JError::raiseError(403, JText::_('NO ACCESS')); } //get IP, time and userid $row->created = gmdate('Y-m-d H:i:s'); $row->author_ip = $elsettings->storeip ? getenv('REMOTE_ADDR') : 'DISABLED'; $row->created_by = $user->get('id'); //Set owneredit to false $owneredit = 0; } /* * Autopublish * check if the user has the required rank for autopublish */ $autopubev = ELUser::validate_user($elsettings->evpubrec, $elsettings->autopubl); if ($autopubev || $owneredit) { $row->published = 1; } else { $row->published = 0; } //Image upload //If image upload is required we will stop here if no file was attached if (empty($file['name']) && $elsettings->imageenabled == 2) { $this->setError(JText::_('IMAGE EMPTY')); return false; } if (($elsettings->imageenabled == 2 || $elsettings->imageenabled == 1) && !empty($file['name'])) { jimport('joomla.filesystem.file'); $base_Dir = JPATH_SITE . '/images/eventlist/events/'; //check the image $check = ELImage::check($file, $elsettings); if ($check === false) { $app->redirect($_SERVER['HTTP_REFERER']); } //sanitize the image filename $filename = ELImage::sanitize($base_Dir, $file['name']); $filepath = $base_Dir . $filename; if (!JFile::upload($file['tmp_name'], $filepath)) { $this->setError(JText::_('UPLOAD FAILED')); return false; } else { $row->datimage = $filename; } } else { //keep image if edited and left blank $row->datimage = $curimage; } //end image if $editoruser = ELUser::editoruser(); if (!$editoruser) { //check datdescription --> wipe out code $row->datdescription = strip_tags($row->datdescription, '<br><br/>'); //convert the linux \n (Mac \r, Win \r\n) to <br /> linebreaks $row->datdescription = str_replace(array("\r\n", "\r", "\n"), "<br />", $row->datdescription); // cut too long words $row->datdescription = wordwrap($row->datdescription, 75, ' ', 1); //check length $length = JString::strlen($row->datdescription); if ($length > $elsettings->datdesclimit) { //too long then shorten datdescription $row->datdescription = JString::substr($row->datdescription, 0, $elsettings->datdesclimit); //add ... $row->datdescription = $row->datdescription . '...'; } } //set registration regarding the el settings switch ($elsettings->showfroregistra) { case 0: $row->registra = 0; break; case 1: $row->registra = 1; break; case 2: $row->registra = $row->registra; break; } switch ($elsettings->showfrounregistra) { case 0: $row->unregistra = 0; break; case 1: $row->unregistra = 1; break; case 2: if ($elsettings->showfroregistra >= 1) { $row->unregistra = $row->unregistra; } else { $row->unregistra = 0; } break; } //Make sure the table is valid if (!$row->check($elsettings)) { $this->setError($row->getError()); return false; } $row->version++; //store it in the db if (!$row->store(true)) { JError::raiseError(500, $this->_db->stderr()); return false; } //store cat relation $query = 'DELETE FROM #__eventlist_cats_event_relations WHERE itemid = ' . $row->id; $this->_db->setQuery($query); $this->_db->query(); foreach ($cats as $cat) { $query = 'INSERT INTO #__eventlist_cats_event_relations (`catid`, `itemid`) VALUES(' . $cat . ',' . $row->id . ')'; $this->_db->setQuery($query); $this->_db->query(); } return $row->id; }
/** * Creates the output for event submissions * * @since 0.4 * */ function display($tpl = null) { $mainframe =& JFactory::getApplication(); $user =& JFactory::getUser(); if (!$user->get('id')) { echo JText::_('COM_REDEVENT_LOGIN_TO_SUBMIT_EVENT'); return; } if ($this->getLayout() == 'selectvenue') { $this->_displayselectvenue($tpl); return; } else { if ($this->getLayout() == 'eventdate') { $this->_displayEventdate($tpl); return; } } $useracl =& UserAcl::getInstance(); if (!$useracl->canAddEvent()) { echo JText::_('COM_REDEVENT_EDIT_EVENT_NOT_ALLOWED'); return; } // Initialize variables $editor =& JFactory::getEditor(); $document =& JFactory::getDocument(); $elsettings =& redEVENTHelper::config(); $params =& $mainframe->getParams(); //Get Data from the model $row =& $this->get('Event'); $customs =& $this->get('Customfields'); $xcustoms =& $this->get('XrefCustomfields'); $roles =& $this->get('SessionRoles'); $prices =& $this->get('SessionPrices'); //Get requests $id = JRequest::getInt('id'); //Clean output JFilterOutput::objectHTMLSafe($row, ENT_QUOTES, 'datdescription'); JHTML::_('behavior.formvalidation'); JHTML::_('behavior.tooltip'); JHTML::_('behavior.modal', 'a.vmodal'); //add css file if (!$params->get('custom_css')) { $document->addStyleSheet($this->baseurl . '/components/com_redevent/assets/css/redevent.css'); $document->addStyleSheet($this->baseurl . '/components/com_redevent/assets/css/editevent.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]-->'); $document->addScript('components/com_redevent/assets/js/attachments.js'); $document->addScriptDeclaration('var removemsg = "' . JText::_('COM_REDEVENT_ATTACHMENT_CONFIRM_MSG') . '";'); $document->addScript('components/com_redevent/assets/js/xref_roles.js'); $document->addScriptDeclaration('var txt_remove = "' . JText::_('COM_REDEVENT_REMOVE') . '";'); $document->addScript('components/com_redevent/assets/js/xref_prices.js'); //Set page title $id ? $title = $row->title . ' - ' . JText::_('COM_REDEVENT_EDIT_EVENT') : ($title = JText::_('COM_REDEVENT_ADD_EVENT')); $document->setTitle($title); // Get the menu object of the active menu item $menu =& JSite::getMenu(); $item = $menu->getActive(); $params =& $mainframe->getParams('com_redevent'); //pathway $pathway =& $mainframe->getPathWay(); $pathway->addItem($title, ''); //Has the user access to the editor and the add venue screen $editoruser = $params->get('edit_description_allow_editor', 0) || ELUser::editoruser(); $canpublish = $useracl->canPublishEvent($id); //transform <br /> and <br> back to \r\n for non editorusers if (!$editoruser) { $row->datdescription = redEVENTHelper::br2break($row->datdescription); } //Get image information $dimage = redEVENTImage::flyercreator($row->datimage); //Set the info image $infoimage = JHTML::_('image', 'components/com_redevent/assets/images/icon-16-hint.png', JText::_('COM_REDEVENT_NOTES')); //Create the stuff required for the venueselect functionality $url = JURI::root(); $js = "\n\t\tfunction reSelectVenue(id, venue) {\n\t\t\tdocument.getElementById('a_id').value = id;\n\t\t\tdocument.getElementById('a_name').value = venue;\n\t\t\tSqueezeBox.close();\n\t\t}"; $document->addScriptDeclaration($js); // categories selector $selected = array(); foreach ((array) $row->categories as $cat) { $selected[] = $cat->id; } $catoptions = $this->get('CategoryOptions'); if (!$catoptions) { echo JText::_('COM_REDEVENT_EDITEVENT_FORBIDDEN_NO_CATEGORY_AVAILABLE'); return; } $lists['categories'] = JHTML::_('select.genericlist', $catoptions, 'categories[]', 'class="inputbox required validate-categories" multiple="multiple" size="10"', 'value', 'text', $selected); if ($params->get('edit_recurrence', 0)) { $document->addScript('components/com_redevent/assets/js/xref_recurrence.js'); // Recurrence selector $recur_type = array(JHTML::_('select.option', 'NONE', JText::_('COM_REDEVENT_NO_REPEAT')), JHTML::_('select.option', 'DAILY', JText::_('COM_REDEVENT_DAILY')), JHTML::_('select.option', 'WEEKLY', JText::_('COM_REDEVENT_WEEKLY')), JHTML::_('select.option', 'MONTHLY', JText::_('COM_REDEVENT_MONTHLY')), JHTML::_('select.option', 'YEARLY', JText::_('COM_REDEVENT_YEARLY'))); $lists['recurrence_type'] = JHTML::_('select.radiolist', $recur_type, 'recurrence_type', '', 'value', 'text', $row->rrules->type ? $row->rrules->type : 'NONE'); } // published state selector $published = array(JHTML::_('select.option', '1', JText::_('COM_REDEVENT_PUBLISHED')), JHTML::_('select.option', '0', JText::_('COM_REDEVENT_UNPUBLISHED'))); $lists['published'] = JHTML::_('select.radiolist', $published, 'published', '', 'value', 'text', $row->published); $rolesoptions = array(JHTML::_('select.option', 0, JText::_('COM_REDEVENT_Select_role'))); $rolesoptions = array_merge($rolesoptions, $this->get('RolesOptions')); $pricegroupsoptions = array(JHTML::_('select.option', 0, JText::_('COM_REDEVENT_PRICEGROUPS_SELECT_PRICEGROUP'))); $pricegroupsoptions = array_merge($pricegroupsoptions, $this->get('PricegroupsOptions')); $this->assignRef('row', $row); $this->assignRef('customs', $customs); $this->assignRef('xcustoms', $xcustoms); $this->assignRef('categories', $categories); $this->assignRef('editor', $editor); $this->assignRef('dimage', $dimage); $this->assignRef('infoimage', $infoimage); $this->assignRef('editoruser', $editoruser); $this->assignRef('elsettings', $elsettings); $this->assignRef('item', $item); $this->assignRef('params', $params); $this->assignRef('lists', $lists); $this->assignRef('canpublish', $canpublish); $this->assignRef('referer', JRequest::getWord('referer')); $this->assign('title', $title); $this->assignRef('access', redEVENTHelper::getAccesslevelOptions()); $this->assignRef('roles', $roles); $this->assignRef('rolesoptions', $rolesoptions); $this->assignRef('prices', $prices); $this->assignRef('pricegroupsoptions', $pricegroupsoptions); parent::display($tpl); }