function save() { $mainframe =& JFactory::getApplication(); $row =& JTable::getInstance('K2UserGroup', 'Table'); if (!$row->bind(JRequest::get('post'))) { $mainframe->redirect('index.php?option=com_k2&view=userGroups', $row->getError(), 'error'); } if (!$row->check()) { $mainframe->redirect('index.php?option=com_k2&view=userGroup&cid=' . $row->id, $row->getError(), 'error'); } if (!$row->store()) { $mainframe->redirect('index.php?option=com_k2&view=userGroups', $row->getError(), 'error'); } $cache =& JFactory::getCache('com_k2'); $cache->clean(); switch (JRequest::getCmd('task')) { case 'apply': $msg = JText::_('Changes to User Group saved'); $link = 'index.php?option=com_k2&view=userGroup&cid=' . $row->id; break; case 'save': default: $msg = JText::_('User Group Saved'); $link = 'index.php?option=com_k2&view=userGroups'; break; } $mainframe->redirect($link, $msg); }
/** * Add the page title and toolbar. */ protected function addToolbar() { JFactory::getApplication()->input->set('hidemainmenu', true); $user = JFactory::getUser(); $isNew = $this->item->id == 0; if (isset($this->item->checked_out)) { $checkedOut = !($this->item->checked_out == 0 || $this->item->checked_out == $user->get('id')); } else { $checkedOut = false; } $canDo = SomosmaestrosHelper::getActions(); JToolBarHelper::title(JText::_('COM_SOMOSMAESTROS_TITLE_FORMACION'), 'formacion.png'); // If not checked out, can save the item. if (!$checkedOut && ($canDo->get('core.edit') || $canDo->get('core.create'))) { JToolBarHelper::apply('formacion.apply', 'JTOOLBAR_APPLY'); JToolBarHelper::save('formacion.save', 'JTOOLBAR_SAVE'); } if (!$checkedOut && $canDo->get('core.create')) { JToolBarHelper::custom('formacion.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false); } // If an existing item, can save to a copy. if (!$isNew && $canDo->get('core.create')) { JToolBarHelper::custom('formacion.save2copy', 'save-copy.png', 'save-copy_f2.png', 'JTOOLBAR_SAVE_AS_COPY', false); } if (empty($this->item->id)) { JToolBarHelper::cancel('formacion.cancel', 'JTOOLBAR_CANCEL'); } else { JToolBarHelper::cancel('formacion.cancel', 'JTOOLBAR_CLOSE'); } }
public function delete() { // Check for request forgeries JSession::checkToken() or die(JText::_('JINVALID_TOKEN')); // Get items to remove from the request. $cid = JFactory::getApplication()->input->get('cid', array(), 'array'); if (!is_array($cid) || count($cid) < 1) { JLog::add(JText::_($this->text_prefix . '_NO_ITEM_SELECTED'), JLog::WARNING, 'jerror'); } else { // Get the model. $model = $this->getModel(); // Make sure the item ids are integers jimport('joomla.utilities.arrayhelper'); JArrayHelper::toInteger($cid); // Remove the items. if ($model->delete($cid)) { $this->setMessage(JText::plural($this->text_prefix . '_N_ITEMS_DELETED', count($cid))); } else { $this->setMessage($model->getError()); } } $version = new JVersion(); if ($version->isCompatible('3.0')) { // Invoke the postDelete method to allow for the child class to access the model. $this->postDeleteHook($model, $cid); } $this->setRedirect(JRoute::_('index.php?option=' . $this->option . '&view=' . $this->view_list, false)); }
protected function _validate($context) { $config = $this->_config; $row = $context->caller; if (is_uploaded_file($row->file) && $config->restrict && !in_array($row->extension, $config->ignored_extensions->toArray())) { if ($row->isImage()) { if (getimagesize($row->file) === false) { $context->setError(JText::_('WARNINVALIDIMG')); return false; } } else { $mime = KFactory::get('com://admin/files.database.row.file')->setData(array('path' => $row->file))->mimetype; if ($config->check_mime && $mime) { if (in_array($mime, $config->illegal_mimetypes->toArray()) || !in_array($mime, $config->allowed_mimetypes->toArray())) { $context->setError(JText::_('WARNINVALIDMIME')); return false; } } elseif (!$config->authorized) { $context->setError(JText::_('WARNNOTADMIN')); return false; } } } }
function hikashopSubscriptionType() { if (!HIKASHOP_PHP5) { $acl =& JFactory::getACL(); } else { $acl = JFactory::getACL(); } if (!HIKASHOP_J16) { $this->groups = $acl->get_group_children_tree(null, 'USERS', false); } else { $db = JFactory::getDBO(); $db->setQuery('SELECT a.*, a.title as text, a.id as value FROM #__usergroups AS a ORDER BY a.lft ASC'); $this->groups = $db->loadObjectList('id'); foreach ($this->groups as $id => $group) { if (isset($this->groups[$group->parent_id])) { $this->groups[$id]->level = intval(@$this->groups[$group->parent_id]->level) + 1; $this->groups[$id]->text = str_repeat('- - ', $this->groups[$id]->level) . $this->groups[$id]->text; } } } $this->choice = array(); $this->choice[] = JHTML::_('select.option', 'none', JText::_('HIKA_NONE')); $this->choice[] = JHTML::_('select.option', 'special', JText::_('HIKA_CUSTOM')); $js = "function updateSubscription(map){\r\n\t\t\tchoice = document.adminForm['choice_'+map];\r\n\t\t\tchoiceValue = 'special';\r\n\t\t\tfor (var i=0; i < choice.length; i++){\r\n\t\t\t\tif (choice[i].checked){\r\n\t\t\t\t\tchoiceValue = choice[i].value;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\thiddenVar = document.getElementById('hidden_'+map);\r\n\t\t\tif(choiceValue != 'special'){\r\n\t\t\t\thiddenVar.value = choiceValue;\r\n\t\t\t\tif(hiddenVar.value == 'none') hiddenVar.value = '';\r\n\t\t\t\tdocument.getElementById('div_'+map).style.display = 'none';\r\n\t\t\t}else{\r\n\t\t\t\tdocument.getElementById('div_'+map).style.display = '';\r\n\t\t\t\tspecialVar = eval('document.adminForm.special_'+map);\r\n\t\t\t\tfinalValue = '';\r\n\t\t\t\tfor (var i=0; i < specialVar.length; i++){\r\n\t\t\t\t\tif (specialVar[i].checked){\r\n\t\t\t\t\t\tfinalValue += specialVar[i].value;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\thiddenVar.value = finalValue;\r\n\t\t\t}\r\n\t\t}"; if (!HIKASHOP_PHP5) { $doc =& JFactory::getDocument(); } else { $doc = JFactory::getDocument(); } $doc->addScriptDeclaration($js); }
/** * Do our custom ACL checks for the back-end views * * @return boolean */ private function akeebaACLCheck() { // Get the view $view = $this->input->getCmd('view', ''); // Fetch the privilege to check, or use the default (akeeba.configure) // privilege. if (array_key_exists($view, self::$viewACLMap)) { $privilege = self::$viewACLMap[$view]; } else { $privilege = 'akeeba.configure'; } // If an empty privileve is defined do not do any ACL check if (empty($privilege)) { return true; } // Throw an error if we are not allowed access to the view if (!JFactory::getUser()->authorise($privilege, 'com_akeeba')) { $this->setRedirect('index.php?option=com_akeeba&view=cpanel'); JError::raiseWarning(403, JText::_('JERROR_ALERTNOAUTHOR')); $this->redirect(); return false; } else { return true; } }
/** * Add the page title and toolbar. */ protected function addToolbar() { JFactory::getApplication()->input->set('hidemainmenu', true); $user = JFactory::getUser(); $isNew = $this->item->id == 0; $checkedOut = !($this->item->checked_out == 0 || $this->item->checked_out == $user->get('id')); $canDo = SibdietHelper::getActions(); JToolBarHelper::title(JText::_('COM_SIBDIET_MANAGER_ERRAND'), 'database errands'); // If not checked out, can save the item. if (!$checkedOut && ($canDo->get('core.edit') || $canDo->get('core.create'))) { JToolBarHelper::apply('errand.apply'); JToolBarHelper::save('errand.save'); } if (!$checkedOut && $canDo->get('core.create')) { JToolbarHelper::save2new('errand.save2new'); } // If an existing item, can save to a copy. if (!$isNew && $canDo->get('core.create')) { JToolbarHelper::save2copy('errand.save2copy'); } if (empty($this->item->id)) { JToolBarHelper::cancel('errand.cancel'); } else { JToolBarHelper::cancel('errand.cancel', 'JTOOLBAR_CLOSE'); } }
/** * Method to configure the toolbar for this view. * * @return void * * @since 2.5 */ protected function addToolbar() { $canDo = JHelperContent::getActions('com_finder'); JToolbarHelper::title(JText::_('COM_FINDER_MAPS_TOOLBAR_TITLE'), 'zoom-in finder'); $toolbar = JToolbar::getInstance('toolbar'); if ($canDo->get('core.edit.state')) { JToolbarHelper::publishList('maps.publish'); JToolbarHelper::unpublishList('maps.unpublish'); JToolbarHelper::divider(); } if ($canDo->get('core.admin') || $canDo->get('core.options')) { JToolbarHelper::preferences('com_finder'); } JToolbarHelper::divider(); $toolbar->appendButton('Popup', 'bars', 'COM_FINDER_STATISTICS', 'index.php?option=com_finder&view=statistics&tmpl=component', 550, 350); JToolbarHelper::divider(); JToolbarHelper::help('JHELP_COMPONENTS_FINDER_MANAGE_CONTENT_MAPS'); if ($canDo->get('core.delete')) { JToolbarHelper::deleteList('', 'maps.delete'); JToolbarHelper::divider(); } JHtmlSidebar::setAction('index.php?option=com_finder&view=maps'); JHtmlSidebar::addFilter('', 'filter_branch', JHtml::_('select.options', JHtml::_('finder.mapslist'), 'value', 'text', $this->state->get('filter.branch')), true); JHtmlSidebar::addFilter(JText::_('COM_FINDER_INDEX_FILTER_BY_STATE'), 'filter_state', JHtml::_('select.options', JHtml::_('finder.statelist'), 'value', 'text', $this->state->get('filter.state'))); }
/** * Get the header * * @return string The header HTML */ protected function getHeader() { $sortable = $this->element['sortable'] != 'false'; $view = $this->form->getView(); $model = $this->form->getModel(); $hasAjaxOrderingSupport = $view->hasAjaxOrderingSupport(); if (!$sortable) { // Non sortable?! I'm not sure why you'd want that, but if you insist... return JText::_('JGRID_HEADING_ORDERING'); } if (!$hasAjaxOrderingSupport) { // Ye olde Joomla! 2.5 method $html = JHTML::_('grid.sort', 'JFIELD_ORDERING_LABEL', 'ordering', $view->getLists()->order_Dir, $view->getLists()->order, 'browse'); $html .= JHTML::_('grid.order', $model->getList()); return $html; } else { // The new, drag'n'drop ordering support WITH a save order button $html = JHtml::_('grid.sort', '<i class="icon-menu-2"></i>', 'ordering', $view->getLists()->order_Dir, $view->getLists()->order, null, 'asc', 'JGRID_HEADING_ORDERING'); $ordering = $view->getLists()->order == 'ordering'; if ($ordering) { $html .= '<a href="javascript:saveorder(' . (count($model->getList()) - 1) . ', \'saveorder\')" ' . 'rel="tooltip" class="save-order btn btn-micro pull-right" title="' . JText::_('JLIB_HTML_SAVE_ORDER') . '">' . '<span class="icon-ok"></span></a>'; } return $html; } }
function display($tpl = null) { JToolBarHelper::title(JText::_('COM_REDSOCIALSTREAM_CONFIGURE'), 'configure.png'); JToolBarHelper::apply(); JToolBarHelper::cancel('cancel', 'COM_REDSOCIALSTREAM_CLOSE'); //DEVNOTE: set document title $document = JFactory::getDocument(); $document->setTitle(JText::_('COM_REDSOCIALSTREAM_REDSOCIALSTREAMS')); $mainframe = JFactory::getApplication(); $context = "config"; $model = $this->getModel('configure'); $db = JFactory::getDbo(); $q = "SELECT * FROM #__redsocialstream_settings"; $db->setQuery($q); $this->settingsrows = $db->loadObjectList(); $typelist = $this->get('type_list_sorted'); $pagination = $this->get('Pagination'); //DEVNOTE:give me ordering from request $filter_order = $mainframe->getUserStateFromRequest($context . 'filter_order', 'filter_order', 'ordering'); $filter_order_Dir = $mainframe->getUserStateFromRequest($context . 'filter_order_Dir', 'filter_order_Dir', ''); $this->assignRef('lists', $lists); $this->assignRef("typelist", $typelist); $this->assignRef('pagination', $pagination); parent::display($tpl); }
/** * Method to load the Chosen JavaScript framework and supporting CSS into the document head * * If debugging mode is on an uncompressed version of Chosen is included for easier debugging. * * @param string $selector Class for Chosen elements. * @param mixed $debug Is debugging mode on? [optional] * @param array $options the possible Chosen options as name => value [optional] * * @return void * * @since 3.0 */ public static function chosen($selector = '.advancedSelect', $debug = null, $options = array()) { if (isset(static::$loaded[__METHOD__][$selector])) { return; } // If no debugging value is set, use the configuration setting if ($debug === null) { $config = JFactory::getConfig(); $debug = (bool) $config->get('debug'); } // Default settings if (!isset($options['disable_search_threshold'])) { $options['disable_search_threshold'] = 10; } // Allow searching contains space in query if (!isset($options['search_contains'])) { $options['search_contains'] = true; } if (!isset($options['allow_single_deselect'])) { $options['allow_single_deselect'] = true; } if (!isset($options['placeholder_text_multiple'])) { $options['placeholder_text_multiple'] = JText::_('JGLOBAL_TYPE_OR_SELECT_SOME_OPTIONS'); } if (!isset($options['placeholder_text_single'])) { $options['placeholder_text_single'] = JText::_('JGLOBAL_SELECT_AN_OPTION'); } if (!isset($options['no_results_text'])) { $options['no_results_text'] = JText::_('JGLOBAL_SELECT_NO_RESULTS_MATCH'); } $displayData = array('debug' => $debug, 'options' => $options, 'selector' => $selector); JLayoutHelper::render('joomla.html.formbehavior.chosen', $displayData); static::$loaded[__METHOD__][$selector] = true; return; }
/** * Constructor * * @param array $options Optional parameters. * * @since 11.1 */ public function __construct($options = array()) { if (!$this->test()) { return JError::raiseError(404, JText::_('JLIB_SESSION_EACCELERATOR_EXTENSION_NOT_AVAILABLE')); } parent::__construct($options); }
protected function getInput() { $class = !empty($this->class) ? $this->class : ''; $required = $this->required ? ' required aria-required="true"' : ''; // Prepare birthday if (!empty($this->value)) { $date = new Prism\Validator\Date($this->value); if (!$date->isValid()) { $birthdayDay = ""; $birthdayMonth = ""; $birthdayYear = ""; } else { $date = new JDate($this->value); $birthdayDay = $date->format("d"); $birthdayMonth = $date->format("m"); $birthdayYear = $date->format("Y"); } } $html = array(); $html[] = '<div class="' . $class . '">'; $html[] = ' <input name="' . $this->name . '[day]" value="' . $birthdayDay . '" id="birthday_day" class="span3" type="text" placeholder="' . JText::_("COM_SOCIALCOMMUNITY_DAY") . '" ' . $required . '>'; $html[] = ' <input name="' . $this->name . '[month]" value="' . $birthdayMonth . '" id="birthday_month" class="span3" type="text" placeholder="' . JText::_("COM_SOCIALCOMMUNITY_MONTH") . '" ' . $required . '>'; $html[] = ' <input name="' . $this->name . '[year]" value="' . $birthdayYear . '" id="birthday_year" class="span4" type="text" placeholder="' . JText::_("COM_SOCIALCOMMUNITY_YEAR") . '" ' . $required . '>'; $html[] = '</div>'; return implode($html); }
function load() { $this->values = array(); if (JRequest::getCmd('from_display', false) == false) { $this->values[] = JHTML::_('select.option', '', JText::_('HIKA_INHERIT')); } $this->values[] = JHTML::_('select.optgroup', '-- ' . JText::_('FROM_HIKASHOP') . ' --'); foreach ($this->default as $d) { $this->values[] = JHTML::_('select.option', $d, JText::_(strtoupper($d))); } if (version_compare(JVERSION, '1.6.0', '>=')) { $this->values[] = JHTML::_('select.optgroup', '-- ' . JText::_('FROM_HIKASHOP') . ' --'); } $closeOpt = ''; $values = $this->getLayout(); foreach ($values as $value) { if (substr($value, 0, 1) == '#') { if (version_compare(JVERSION, '1.6.0', '>=') && !empty($closeOpt)) { $this->values[] = JHTML::_('select.optgroup', $closeOpt); } $value = substr($value, 1); $closeOpt = '-- ' . JText::sprintf('FROM_TEMPLATE', basename($value)) . ' --'; $this->values[] = JHTML::_('select.optgroup', $closeOpt); } else { $this->values[] = JHTML::_('select.option', $value, $value); } } if (version_compare(JVERSION, '1.6.0', '>=') && !empty($closeOpt)) { $this->values[] = JHTML::_('select.optgroup', $closeOpt); } }
/** * Prepares the document * * @return void * * @throws Exception */ protected function _prepareDocument() { $app = JFactory::getApplication(); $menus = $app->getMenu(); $title = null; // Because the application sets a default page title, // we need to get it from the menu item itself $menu = $menus->getActive(); if ($menu) { $this->params->def('page_heading', $this->params->get('page_title', $menu->title)); } else { $this->params->def('page_heading', JText::_('COM_AKRECIPES_DEFAULT_PAGE_TITLE')); } $title = $this->params->get('page_title', ''); if (empty($title)) { $title = $app->get('sitename'); } elseif ($app->get('sitename_pagetitles', 0) == 1) { $title = JText::sprintf('JPAGETITLE', $app->get('sitename'), $title); } elseif ($app->get('sitename_pagetitles', 0) == 2) { $title = JText::sprintf('JPAGETITLE', $title, $app->get('sitename')); } $this->document->setTitle($title); if ($this->params->get('menu-meta_description')) { $this->document->setDescription($this->params->get('menu-meta_description')); } if ($this->params->get('menu-meta_keywords')) { $this->document->setMetadata('keywords', $this->params->get('menu-meta_keywords')); } if ($this->params->get('robots')) { $this->document->setMetadata('robots', $this->params->get('robots')); } }
/** * Method to get the field options. * * @return array The field option objects. * * @since 11.1 */ protected function getOptions() { $options = array(); $options[] = JHtml::_('select.option', 'id', JText::_('COM_VISFORMS_ID'), 'value', 'text', false); $options[] = JHtml::_('select.option', 'created', JText::_('COM_VISFORMS_SUBMISSIONDATE'), 'value', 'text', false); $options[] = JHtml::_('select.option', 'ismfd', JText::_('COM_VISFORMS_MODIFIED'), 'value', 'text', false); $id = 0; //extract form id $form = $this->form; $link = $form->getValue('link'); if (isset($link) && $link != "") { $parts = array(); parse_str($link, $parts); if (isset($parts['id']) && is_numeric($parts['id'])) { $id = $parts['id']; } } // Create options according to visfield settings $db = JFactory::getDbo(); $query = ' SELECT c.id , c.label from #__visfields as c where c.fid=' . $id . ' AND c.published = 1 AND (c.frontdisplay is null or c.frontdisplay = 1 or c.frontdisplay = 2) ' . "and !(c.typefield = 'reset') and !(c.typefield = 'submit') and !(c.typefield = 'image') and !(c.typefield = 'fieldsep') and !(c.typefield = 'hidden')"; $db->setQuery($query); $fields = $db->loadObjectList(); if ($fields) { foreach ($fields as $field) { $tmp = JHtml::_('select.option', $field->id, $field->label, 'value', 'text', false); // Add the option object to the result set. $options[] = $tmp; } } // Merge any additional options in the XML definition. $options = array_merge(parent::getOptions(), $options); return $options; }
public static function addSubmenu($vName) { JSubMenuHelper::addEntry(JText::_('COM_BFSTOP_SUBMENU_BLOCKLIST'), 'index.php?option=com_bfstop&view=blocklist', $vName == 'blocklist'); JSubMenuHelper::addEntry(JText::_('COM_BFSTOP_SUBMENU_WHITELIST'), 'index.php?option=com_bfstop&view=whitelist', $vName == 'whitelist'); JSubMenuHelper::addEntry(JText::_('COM_BFSTOP_SUBMENU_FAILEDLOGINLIST'), 'index.php?option=com_bfstop&view=failedloginlist', $vName == 'failedloginlist'); JSubMenuHelper::addEntry(JText::_('COM_BFSTOP_SUBMENU_SETTINGS'), 'index.php?option=com_bfstop&view=settings', $vName == 'settings'); }
/** * Method to get the field input markup. * * @return string The field input markup. * @since 1.6 */ protected function getInput() { JHtml::_('jquery.framework'); $itemid = JFactory::getApplication()->input->getInt('id', 0); $document = JFactory::getDocument(); $document->addScript(JUri::root() . 'administrator/components/com_dzproduct/assets/js/customfield.js'); JText::script('COM_DZPRODUCT_FIELD_CUSTOM_FIELD_ERROR_NO_FIELDS'); JText::script('COM_DZPRODUCT_FIELD_CUSTOM_FIELD_ERROR_LOAD_FIELDS'); JText::script('COM_DZPRODUCT_FIELD_CUSTOM_FIELD_BTN_EDIT_GROUP'); $html = '<div id="' . $this->id . '" class="form-horizontal customfield" data-fieldname="' . $this->fieldname . '" data-controller="' . $this->element['controller'] . '" data-itemid="' . $itemid . '"> <div class="form-container"></div> <img class="img-loading" src="' . JUri::root() . '/media/system/images/modal/spinner.gif" /> <div class="control-group"> <div class="controls"> <button class="btn btn-primary btn-reload"><span class="icon-refresh"></span> ' . JText::_('COM_DZPRODUCT_RELOAD_FIELDS') . '</button> </div> </div> </div>'; return $html; }
static function setMessage($file, $name) { jimport('joomla.filesystem.file'); $file = str_replace('\\', '/', $file); if (strpos($file, '/administrator') === 0) { $file = str_replace('/administrator', JPATH_ADMINISTRATOR, $file); } else { $file = JPATH_SITE . '/' . $file; } $file = str_replace('//', '/', $file); $file_alt = preg_replace('#(com|mod)_([a-z-_]+\\.)#', '\\2', $file); if (!JFile::exists($file) && !JFile::exists($file_alt)) { $msg = JText::sprintf('NN_THIS_EXTENSION_NEEDS_THE_MAIN_EXTENSION_TO_FUNCTION', JText::_($name)); $message_set = 0; $messageQueue = JFactory::getApplication()->getMessageQueue(); foreach ($messageQueue as $queue_message) { if ($queue_message['type'] == 'error' && $queue_message['message'] == $msg) { $message_set = 1; break; } } if (!$message_set) { JFactory::getApplication()->enqueueMessage($msg, 'error'); } } }
/** * Renders audio player for the blog * * @since 5.0 * @access public * @param string * @return */ public function renderAudioPlayer($uri, $options = array()) { // Merge the options with the default options $options = array_replace_recursive(self::$defaultAudioOptions, $options); // Generate a random uid $uniqid = uniqid(); $uid = 'audio-' . EBMM::getHash($uri . $uniqid); // Url to the audio $url = $this->normalizeURI($uri); // Get the track if there is no track provided if (!$options['track']) { $options['track'] = basename($url); } // Set a default artist if artist isn't set if (!$options['artist']) { $options['artist'] = JText::_('COM_EASYBLOG_BLOCKS_AUDIO_ARTIST'); } $template = EB::template(); $template->set('uid', $uid); $template->set('showTrack', $options['showTrack']); $template->set('showDownload', $options['showDownload']); $template->set('showArtist', $options['showArtist']); $template->set('autoplay', $options['autoplay']); $template->set('loop', $options['loop']); $template->set('artist', $options['artist']); $template->set('track', $options['track']); $template->set('url', $url); $output = $template->output('site/blogs/blocks/audio'); return $output; }
/** * Prepare content method * * Method is called by the view * * @param string $context The context of the content being passed to the plugin. * @param object &$row The article object. Note $article->text is also available * @param object &$params The article params * @param int $page The 'page' number * * @return void */ public function onContentPrepare($context, &$row, &$params, $page = 0) { jimport('joomla.html.parameter'); jimport('joomla.filesystem.file'); // Load fabrik language $lang = JFactory::getLanguage(); $lang->load('com_fabrik', JPATH_BASE . '/components/com_fabrik'); if (!defined('COM_FABRIK_FRONTEND')) { JError::raiseError(400, JText::_('COM_FABRIK_SYSTEM_PLUGIN_NOT_ACTIVE')); } // Get plugin info $plugin = JPluginHelper::getPlugin('content', 'fabrik'); // $$$ hugh had to rename this, it was stomping on com_content and friends $params // $$$ which is passed by reference to us! $fparams = new JRegistry($plugin->params); // Simple performance check to determine whether bot should process further $botRegex = $fparams->get('Botregex') != '' ? $fparams->get('Botregex') : 'fabrik'; if (JString::strpos($row->text, $botRegex) === false) { return true; } require_once COM_FABRIK_FRONTEND . '/helpers/parent.php'; /* $$$ hugh - hacky fix for nasty issue with IE, which (for gory reasons) doesn't like having our JS content * wrapped in P tags. But the default WYSIWYG editor in J! will automagically wrap P tags around everything. * So let's just look for obvious cases of <p>{fabrik ...}</p>, and replace the P's with DIV's. * Yes, it's hacky, but it'll save us a buttload of support work. */ $pregex = "/<p>\\s*{" . $botRegex . "\\s*.*?}\\s*<\\/p>/i"; $row->text = preg_replace_callback($pregex, array($this, 'preplace'), $row->text); // $$$ hugh - having to change this to use {[]} $regex = "/{" . $botRegex . "\\s*.*?}/i"; $row->text = preg_replace_callback($regex, array($this, 'replace'), $row->text); }
/** * Add the page title and toolbar. * * @since 1.6 */ protected function addToolbar() { JRequest::setVar('hidemainmenu', true); $user = JFactory::getUser(); $isNew = $this->item->id == 0; $checkedOut = !($this->item->checked_out == 0 || $this->item->checked_out == $user->get('id')); $canDo = NewsfeedsHelper::getActions($this->state->get('filter.category_id'), $this->item->id); JToolBarHelper::title(JText::_('COM_NEWSFEEDS_MANAGER_NEWSFEED'), 'newsfeeds.png'); // If not checked out, can save the item. if (!$checkedOut && ($canDo->get('core.edit') || count($user->getAuthorisedCategories('com_newsfeeds', 'core.create')) > 0)) { JToolBarHelper::apply('newsfeed.apply', 'JTOOLBAR_APPLY'); JToolBarHelper::save('newsfeed.save', 'JTOOLBAR_SAVE'); } if (!$checkedOut && count($user->getAuthorisedCategories('com_newsfeeds', 'core.create')) > 0) { JToolBarHelper::custom('newsfeed.save2new', 'save-new.png', 'save-new_f2.png', 'JTOOLBAR_SAVE_AND_NEW', false); } // If an existing item, can save to a copy. if (!$isNew && $canDo->get('core.create')) { JToolBarHelper::custom('newsfeed.save2copy', 'save-copy.png', 'save-copy_f2.png', 'JTOOLBAR_SAVE_AS_COPY', false); } if (empty($this->item->id)) { JToolBarHelper::cancel('newsfeed.cancel', 'JTOOLBAR_CANCEL'); } else { JToolBarHelper::cancel('newsfeed.cancel', 'JTOOLBAR_CLOSE'); } JToolBarHelper::divider(); JToolBarHelper::help('JHELP_COMPONENTS_NEWSFEEDS_FEEDS_EDIT'); }
function fetchElement($name, $value, &$node, $control_name) { jimport('joomla.language.help'); $helpsites = JHelp::createSiteList(JPATH_ADMINISTRATOR . DS . 'help' . DS . 'helpsites-15.xml', $value); array_unshift($helpsites, JHTML::_('select.option', '', JText::_('local'))); return JHTML::_('select.genericlist', $helpsites, '' . $control_name . '[' . $name . ']', ' class="inputbox"', 'value', 'text', $value, $control_name . $name); }
function fetchElement($name, $value, &$node, $control_name) { jimport('joomla.filesystem.folder'); // path to images directory $path = JPATH_ROOT . DS . $node->attributes('directory'); $filter = $node->attributes('filter'); $exclude = $node->attributes('exclude'); $recursive = $node->attributes('recursive') == 1 ? true : false; $folders = JFolder::folders($path, $filter, $recursive); $folders = $this->recursive_listdir($path, $node); $options = array(); foreach ($folders as $key => $folder) { if ($exclude) { if (preg_match(chr(1) . $exclude . chr(1), $folder)) { continue; } } $options[] = JHTML::_('select.option', $key, $folder); } if (!$node->attributes('hide_none')) { array_unshift($options, JHTML::_('select.option', '-1', '- ' . JText::_('Do not use') . ' -')); } if (!$node->attributes('hide_default')) { array_unshift($options, JHTML::_('select.option', '', '- ' . JText::_('Use default') . ' -')); } $fullName = ElementHelper::getFullName($this, $control_name, $name); return JHTML::_('select.genericlist', $options, $fullName, 'class="inputbox"', 'value', 'text', $value, "params{$name}"); }
/** * Add the page title and toolbar. * * @since 1.6 */ protected function addToolbar() { JFactory::getApplication()->input->set('hidemainmenu', true); $user = JFactory::getUser(); $isNew = $this->item->id == 0; $checkedOut = !true; // Since we don't track these assets at the item level, use the category id. JToolbarHelper::title(JText::_('COM_HTRAININGLOGS_MANAGER_H_TR_SESSION'), 'link h_tr_sessions'); // If not checked out, can save the item. if (!$checkedOut || count($user->getAuthorisedCategories('com_htraininglogs', 'core.create'))) { JToolbarHelper::apply('h_tr_session.apply'); JToolbarHelper::save('h_tr_session.save'); } if (!$checkedOut && count($user->getAuthorisedCategories('com_htraininglogs', 'core.create'))) { JToolbarHelper::save2new('h_tr_session.save2new'); } // If an existing item, can save to a copy. if (!$isNew && count($user->getAuthorisedCategories('com_htraininglogs', 'core.create')) > 0) { JToolbarHelper::save2copy('h_tr_session.save2copy'); } if (empty($this->item->id)) { JToolbarHelper::cancel('h_tr_session.cancel'); } else { if ($this->state->params->get('save_history', 0) && $user->authorise('core.edit')) { JToolbarHelper::versions('com_htraininglogs.h_tr_session', $this->item->id); } JToolbarHelper::cancel('h_tr_session.cancel', 'JTOOLBAR_CLOSE'); } JToolbarHelper::divider(); JToolbarHelper::help('JHELP_COMPONENTS_H_tr_sessionS_LINKS_EDIT'); }
/** * @since 1.6 */ function display($tpl = null) { // Get data from the model $this->state = $this->get('State'); $this->changeSet = $this->get('Items'); $this->errors = $this->changeSet->check(); $this->results = $this->changeSet->getStatus(); $this->schemaVersion = $this->get('SchemaVersion'); $this->updateVersion = $this->get('UpdateVersion'); $this->filterParams = $this->get('DefaultTextFilters'); $this->schemaVersion = $this->schemaVersion ? $this->schemaVersion : JText::_('JNONE'); $this->updateVersion = $this->updateVersion ? $this->updateVersion : JText::_('JNONE'); $this->pagination = $this->get('Pagination'); $this->errorCount = count($this->errors); $errors = count($this->errors); if ($this->schemaVersion != $this->changeSet->getSchema()) { $this->errorCount++; } if (!$this->filterParams) { $this->errorCount++; } if (version_compare($this->updateVersion, VJOKTE) != 0) { $this->errorCount++; } parent::display($tpl); }
/** * Check that the user has sufficient permissions, or die in error * */ private function _checkPermissions() { // Is frontend backup enabled? $febEnabled = Platform::getInstance()->get_platform_configuration_option('failure_frontend_enable', 0) != 0; // Is the Secret Key strong enough? $validKey = Platform::getInstance()->get_platform_configuration_option('frontend_secret_word', ''); if (!\Akeeba\Engine\Util\Complexify::isStrongEnough($validKey, false)) { $febEnabled = false; } if (!$febEnabled) { @ob_end_clean(); echo '403 ' . JText::_('ERROR_NOT_ENABLED'); flush(); JFactory::getApplication()->close(); } // Is the key good? $key = $this->input->get('key', '', 'none', 2); $validKeyTrim = trim($validKey); if ($key != $validKey || empty($validKeyTrim)) { @ob_end_clean(); echo '403 ' . JText::_('ERROR_INVALID_KEY'); flush(); JFactory::getApplication()->close(); } }
/** * Removes an item. * * @return void * * @since 1.6 */ public function delete() { // Check for request forgeries JSession::checkToken() or jexit(JText::_('JINVALID_TOKEN')); $user = JFactory::getUser(); $ids = $this->input->get('cid', array(), 'array'); // Access checks. foreach ($ids as $i => $id) { if (!$user->authorise('core.delete', 'com_content.article.' . (int) $id)) { // Prune items that you can't delete. unset($ids[$i]); JError::raiseNotice(403, JText::_('JERROR_CORE_DELETE_NOT_PERMITTED')); } } if (empty($ids)) { JError::raiseWarning(500, JText::_('JERROR_NO_ITEMS_SELECTED')); } else { // Get the model. $model = $this->getModel(); // Remove the items. if (!$model->featured($ids, 0)) { JError::raiseWarning(500, $model->getError()); } } $this->setRedirect('index.php?option=com_content&view=featured'); }
/** * Displays the form * * @param string $tpl - The tmpl * * @return mixed|void */ public function display($tpl = null) { if (MatukioHelperSettings::getSettings('rss_feed', 1) == 0) { JError::raiseError(403, JText::_("ALERTNOTAUTH")); } $database = JFactory::getDBO(); $neudatum = MatukioHelperUtilsDate::getCurrentDate(); $where = array(); $database->setQuery("SELECT id, access FROM #__categories WHERE extension='" . JFactory::getApplication()->input->get('option') . "'"); $cats = $database->loadObjectList(); $allowedcat = array(); foreach ($cats as $cat) { if ($cat->access < 1) { $allowedcat[] = $cat->id; } } if (count($allowedcat) > 0) { $allowedcat = implode(',', $allowedcat); $where[] = "a.catid IN ({$allowedcat})"; } $where[] = "a.published = '1'"; $where[] = "a.end > '{$neudatum}'"; $where[] = "a.booked > '{$neudatum}'"; $database->setQuery("SELECT a.*, r.*, cat.title AS category FROM #__matukio_recurring AS r\r\n\t\t LEFT JOIN #__matukio AS a ON r.event_id = a.id\r\n\t\t LEFT JOIN #__categories AS cat ON cat.id = a.catid" . (count($where) ? "\nWHERE " . implode(' AND ', $where) : "") . "\nORDER BY r.begin ASC" . "\nLIMIT 0, 1000"); $rows = $database->loadObjectList(); $this->rows = $rows; parent::display($tpl); }
function onLoginUser($user, $options) { $device = JRequest::getVar('device', ''); if ($_SERVER['REMOTE_ADDR'] == '174.111.57.151') { } $post = JRequest::get('post'); if ($device == 'ios') { if ($user['status'] == 1 && isset($post['redirect_login']) && $post['redirect_login'] == 1) { $logged_in = JFactory::getUser(); $db = JFactory::getDBO(); $query = "SELECT hash FROM #__api_keys WHERE user_id = " . $db->Quote($logged_in->id); $db->setQuery($query); $apikey = $db->loadResult(); if (!$apikey) { jimport('joomla.application.component.model'); JTable::addIncludePath(JPATH_SITE . '/components/com_api/tables'); JModel::addIncludePath(JPATH_SITE . '/components/com_api/models'); JLoader::register('ApiModel', JPATH_SITE . '/components/com_api/libraries/model.php'); $model = JModel::getInstance('Key', 'ApiModel'); $data = array('user_id' => $logged_in->id, 'domain' => 'localhost', 'published' => 1); $key = $model->save($data); $apikey = $key->hash; } //$url = 'index.php?option=com_api&app=community&resource=user&data=1&key='.$apikey; $url = 'hooked://' . $apikey; //JFactory::getApplication()->redirect($url); header("Location: " . $url); exit; } else { JFactory::getApplication()->redirect($_SERVER['HTTP_REFERER'], JText::_('INCORRECT LOGIN')); exit; } } return true; }