/** * Add the page title and toolbar. * * @return void * * @since 1.6 */ protected function initToolbar() { $bar = JToolBar::getInstance('toolbar'); $edition = defined('JSN_MOBILIZE_EDITION') ? JSN_MOBILIZE_EDITION : "free"; if (strtolower($edition) == "free") { $dataListForm = JSNMobilizeHelper::getProfiles(); $countForm = 1 - count($dataListForm) > 0 ? 1 - count($dataListForm) : 0; $msg = JText::sprintf('JSN_MOBILIZE_YOU_HAVE_REACHED_THE_LIMITATION_OF_1_PROFILE_IN_FREE_EDITION', (int) $countForm) . ' <a class="jsn-link-action" href="index.php?option=com_mobilize&view=upgrade">' . JText::_("JSN_MOBILIZE_UPGRADE_EDITION") . '</a>'; if (count($dataListForm) < 1) { JToolBarHelper::addNew('profile.add', 'JTOOLBAR_NEW'); JFactory::getApplication()->enqueueMessage($msg); } else { $bar->appendButton('Custom', '<button class="btn btn-small btn-success disabled jsn-popup-upgrade" onclick="return false;"><i class="icon-new icon-white"></i>' . JText::_('JTOOLBAR_NEW') . '</button>'); $session = JFactory::getSession(); $seesionQueue = $session->get('application.queue'); if ($seesionQueue[0]['type'] != "error") { JError::raiseNotice(100, $msg); } } } else { JToolBarHelper::addNew('profile.add', 'JTOOLBAR_NEW'); } JToolBarHelper::editList('profile.edit', 'JTOOLBAR_EDIT'); !JSNVersion::isJoomlaCompatible('2.5') or JToolBarHelper::divider(); JToolBarHelper::publish('profiles.publish', 'JSN_MOBILIZE_PUBLISH', true); JToolBarHelper::unpublish('profiles.unpublish', 'JSN_MOBILIZE_UNPUBLISH', true); !JSNVersion::isJoomlaCompatible('2.5') or JToolBarHelper::divider(); JToolBarHelper::deleteList('JSN_MOBILIZE_CONFIRM_DELETE', 'profiles.delete', 'JTOOLBAR_DELETE'); !JSNVersion::isJoomlaCompatible('2.5') or JToolBarHelper::divider(); JSNMobilizeHelper::initToolbar('JSN_MOBILIZE_PROFILES_MANAGER', 'mobilize-profiles'); }
/** * Override save method to save form fields to database * * @param array $data Data form * * @return boolean */ public function save($data) { $post = $_POST; $checkCreate = true; if (empty($data['profile_id']) || $data['profile_id'] == 0) { $edition = defined('JSN_MOBILIZE_EDITION') ? JSN_MOBILIZE_EDITION : "free"; if (strtolower($edition) == "free") { $dataListForm = JSNMobilizeHelper::getProfiles(); if (count($dataListForm) >= 1) { $checkCreate = false; } } } if ($checkCreate) { if (empty($data['profile_id'])) { $db = $this->getDbo(); $db->setQuery("UPDATE #__jsn_mobilize_profiles SET `ordering` = ordering+1"); $db->execute(); } if ($result = parent::save($data)) { $this->saveDataDesign($post); $this->saveOSSupport($post); } $db = JFactory::getDbo(); $query = $db->getQuery(true); $query = "REPLACE INTO `#__jsn_mobilize_config` (name, value) VALUES ('tmp_config','')"; $db->setQuery($query); if (!$db->execute()) { JError::raiseWarning(500, $db->getErrorMsg()); } return $result; } else { $msg = JText::sprintf('JSN_MOBILIZE_YOU_HAVE_REACHED_THE_LIMITATION_OF_1_PROFILE_IN_FREE_EDITION', 0) . ' <a class="jsn-link-action" href="index.php?option=com_mobilize&view=upgrade">' . JText::_("JSN_MOBILIZE_UPGRADE_EDITION") . '</a>'; $this->setError($msg); return false; } }
/** * Setup menu button for Joomla 3.0. * * @return void */ public static function menuToolbar() { $subMenuItemLists = JSNMobilizeHelper::getProfiles(5); // Build options $options[] = array('title' => JText::_('JSN_MOBILIZE_SUBMENU_PROFILES'), 'link' => 'index.php?option=com_mobilize&view=profiles', 'class' => 'parent primary', 'sub_menu_link' => 'index.php?option=com_mobilize&view=profile&task=profile.edit&profile_id={$profile_id}', 'sub_menu_field_title' => 'profile_title', 'sub_menu_link_add_title' => 'Create new profiles', 'sub_menu_link_add' => 'index.php?option=com_mobilize&view=profile&layout=edit', 'data_sub_menu' => $subMenuItemLists, 'icon' => 'jsn-icon-finder'); $options[] = array('class' => 'separator'); $options[] = array('title' => JText::_('JSN_MOBILIZE_SUBMENU_CONFIGURATION'), 'link' => 'index.php?option=com_mobilize&view=configuration'); $options[] = array('title' => JText::_('JSN_MOBILIZE_SUBMENU_ABOUT'), 'link' => 'index.php?option=com_mobilize&view=about'); // Generate HTML code for sub-menu $html = JSNHtmlGenerate::menuToolbar($options); return $html; }