public function save() { if (!COwnerHelper::isCommunityAdmin()) { echo JText::_('CC RESTRICTED ACCESS'); return; } $mainframe =& JFactory::getApplication(); $post = JRequest::get('post'); $table =& JTable::getInstance('Memberlist', 'CTable'); $table->bind($post); $date =& JFactory::getDate(); $table->created = $date->toMySQL(); $table->store(); if (empty($table->title)) { $mainframe->redirect(CRoute::_('index.php?option=com_community&view=memberlist', false), JText::_('CC MEMBERLIST TITLE EMPTY'), 'error'); } if (empty($table->description)) { $mainframe->redirect(CRoute::_('index.php?option=com_community&view=memberlist', false), JText::_('CC MEMBERLIST DESCRIPTION EMPTY'), 'error'); } $total = JRequest::getVar('totalfilters', '', 'POST'); for ($i = 0; $i < $total; $i++) { $filter = JRequest::getVar('filter' . $i, '', 'POST'); if (!empty($filter)) { $filters = explode(',', $filter, 4); $field = explode('=', $filters[0], 2); $condition = explode('=', $filters[1], 2); $type = explode('=', $filters[2], 2); $value = explode('=', $filters[3], 2); $criteria =& JTable::getInstance('MemberlistCriteria', 'CTable'); $criteria->listid = $table->id; $criteria->field = $field[1]; $criteria->value = $value[1]; $criteria->condition = $condition[1]; $criteria->type = $type[1]; $criteria->store(); } } // Create the menu. CFactory::load('helpers', 'menu'); $menu =& JTable::getInstance('Menu', 'JTable'); $menu->menutype = JRequest::getWord('menutype', '', 'POST'); $menu->name = $table->title; $menu->alias = JFilterOutput::stringURLSafe($table->title); $menu->link = 'index.php?option=com_community&view=memberlist&listid=' . $table->id; $menu->published = 1; $menu->type = 'component'; $menu->ordering = $menu->getNextOrder('menutype="' . $menu->menutype . '"'); $menu->componentid = CMenuHelper::getComponentId(); $menu->access = JRequest::getWord('access', '', 'POST'); $menu->store(); $mainframe->redirect(CRoute::_('index.php?option=com_community&view=memberlist&listid=' . $table->id, false), JText::_('CC MEMBERLIST CREATED')); }
public function save() { if (!COwnerHelper::isCommunityAdmin()) { echo JText::_('COM_COMMUNITY_RESTRICTED_ACCESS'); return; } $mainframe = JFactory::getApplication(); $jinput = $mainframe->input; $post = JRequest::get('post'); $table = JTable::getInstance('Memberlist', 'CTable'); $table->bind($post); $date = JFactory::getDate(); $table->created = $date->toSql(); $table->store(); if (empty($table->title)) { $mainframe->redirect(CRoute::_('index.php?option=com_community&view=memberlist', false), JText::_('COM_COMMUNITY_MEMBERLIST_TITLE_EMPTY'), 'error'); } if (empty($table->description)) { $mainframe->redirect(CRoute::_('index.php?option=com_community&view=memberlist', false), JText::_('COM_COMMUNITY_MEMBERLIST_DESCRIPTION_EMPTY'), 'error'); } $total = $jinput->post->get('totalfilters', '', 'NONE'); for ($i = 0; $i < $total; $i++) { $filter = $jinput->post->get('filter' . $i, '', 'NONE'); if (!empty($filter)) { $filters = explode(',', $filter, 4); $field = explode('=', $filters[0], 2); $condition = explode('=', $filters[1], 2); $type = explode('=', $filters[2], 2); $value = explode('=', $filters[3], 2); $criteria = JTable::getInstance('MemberlistCriteria', 'CTable'); $criteria->listid = $table->id; $criteria->field = $field[1]; $criteria->value = $value[1]; $criteria->condition = $condition[1]; $criteria->type = $type[1]; $criteria->store(); } } // Create the menu. //CFactory::load( 'helpers' , 'menu' ); $menu = JTable::getInstance('Menu', 'JTable'); $menu->menutype = JRequest::getWord('menutype', '', 'POST'); //$menu->name = $table->title; $menu->alias = JFilterOutput::stringURLSafe($table->title); $menu->link = 'index.php?option=com_community&view=memberlist&listid=' . $table->id; $menu->published = 1; $menu->type = 'component'; //$menu->ordering = $menu->getNextOrder( 'menutype="' . $menu->menutype . '"'); //$menu->componentid = CMenuHelper::getComponentId(); $menu->access = JRequest::getInt('access', '', 'POST'); //rule: set default value for access level: public if ($menu->access == '') { $menu->access = 1; } //joomla 1.6 has different field in jos_menu $menu->component_id = CMenuHelper::getComponentId(); $menu->path = $table->title; $menu->title = $table->title; $menu->level = 1; $menu->store(); $id = CMenuHelper::getMenuIdByTitle($table->title); CMenuHelper::alterMenuTable($id); $mainframe->redirect(CRoute::_('index.php?option=com_community&view=memberlist&listid=' . $table->id, false), JText::_('COM_COMMUNITY_MEMBERLIST_CREATED')); }