/**
  *
  * Ajax request set/get data
  */
 public function request()
 {
     $data = new JRegistry();
     $dataFromRequest = JRequest::getVar('data', '');
     $data->loadObject(json_decode($dataFromRequest));
     if ($data->get('requestTask', '') == 'brankNewData') {
         JSNFactory::localimport('libraries.joomlashine.mode.rawmode');
         $jsnrawmode = JSNRawmode::getInstance($data->toArray());
         $jsnrawmode->renderComponent();
         echo $jsnrawmode->getHTML('component');
         jexit();
     }
     $params = $data->get('params', array());
     if (is_object($params)) {
         $params = (array) $params;
     }
     if ($data->get('prefix_params', false)) {
         $prefixId = 0;
         $_params = array();
         foreach ($params as $key => $val) {
             $suffixs = explode('_', $key);
             $number = (int) $suffixs[count($suffixs) - 1];
             if (!$prefixId) {
                 $prefixId = $number;
             }
             $_params[str_replace('_' . $number, '', $key)] = $val;
         }
         $params = $_params;
     }
     $jsnConfig = JSNFactory::getConfig();
     // Execute saveParams event if option is supported ext
     JSNPaExtensionsHelper::executeExtMethod(str_ireplace('com_', '', $data->get('option')), 'saveParams', array('data' => $data, 'jsnConfig' => $jsnConfig, 'params' => $params));
     switch ($data->get('requestType', 'only')) {
         case 'only':
             $jsnConfig->menuitem($data->get('Itemid', ''), $params);
             break;
         case 'globally':
             //Set global config
             $jsnConfig->extension($data->get('option', ''), $params);
             foreach ($params as $k => $param) {
                 $params[$k] = '';
             }
             //Set for menu article layout
             $allMenuitems = $this->getModel('menuitem')->getAllItems(array('option' => $data->get('option', $data->get('option')), 'view' => $data->get('view', 'article'), 'layout' => $data->get('layout', '')));
             foreach ($allMenuitems as $item) {
                 $jsnConfig->menuitem($item->id, $params);
             }
             break;
     }
     jexit('success');
 }
Exemple #2
0
 private function _getTableMapping($name)
 {
     // Support Virtuemart.
     // 		$vmLang = '';
     // 		if(file_exists(JPATH_ROOT . DS . 'administrator' . DS . 'components' . DS . 'com_virtuemart' . DS . 'helpers' . DS . 'config.php')){
     // 			require_once JPATH_ROOT . DS . 'administrator' . DS . 'components' . DS . 'com_virtuemart' . DS . 'helpers' . DS . 'config.php';
     // 			$langs =  (array) VmConfig::get('active_languages');
     // 			jimport('joomla.language.helper');
     // 			$languages = JLanguageHelper::getLanguages('lang_code');
     // 			$vmLang = JFactory::getLanguage()->getTag();
     // 			if ( ! $vmLang ) {
     // 				// use user default
     // 				$lang =JFactory::getLanguage();
     // 				$vmLang = $lang->getTag();
     // 			}
     // 			if(!in_array($vmLang, $langs)) {
     // 				$params = JComponentHelper::getParams('com_languages');
     // 				$vmLang = $params->get('site', 'en-GB');//use default joomla
     // 			}
     // 		}
     // 		$vmLang = $vmLang ? '_' .  strtolower(strtr($vmLang,'-','_')) : '';
     // ------------------------
     $mappings = array('menus' => array('fields' => array('title' => '{title}', 'description' => '{type_name}'), 'link' => 'index.php?option=com_menus&task=item.edit&id={id}'), 'users' => array('name' => '#__users', 'lookup' => array('name', 'username'), 'fields' => array('title' => '{name}', 'description' => '{username} - {email}'), 'link' => 'index.php?option=com_users&task=user.edit&id={id}'), 'categories' => array('name' => '#__categories', 'lookup' => array('title'), 'link' => 'index.php?option=com_categories&task=category.edit&id={id}&extension={extension}', 'conditions' => 'extension=\'com_content\''), 'articles' => array('name' => '#__content', 'lookup' => array('title'), 'fields' => array('title' => '{title}', 'description' => "{introtext}"), 'link' => 'index.php?option=com_content&task=article.edit&id={id}'), 'modules' => array('name' => '#__modules', 'lookup' => array('title'), 'fields' => array('title' => '{title}', 'description' => ''), 'link' => 'index.php?option=com_modules&task=module.edit&id={id}'), 'plugins' => array('name' => '#__extensions', 'lookup' => array('name'), 'conditions' => 'type=\'plugin\'', 'fields' => array('title' => '{name}', 'description' => ''), 'link' => 'index.php?option=com_plugins&task=plugin.edit&extension_id={extension_id}'), 'templates' => array('name' => '#__template_styles', 'lookup' => array('title'), 'fields' => array('title' => '{title}', 'description' => ''), 'link' => 'index.php?option=com_templates&task=style.edit&id={id}'), 'com_banners' => array('name' => '#__banners', 'lookup' => array('name'), 'fields' => array('title' => '{name}', 'description' => '{description}'), 'link' => 'index.php?option=com_banners&task=banner.edit&id={id}'), 'com_banners_categories' => array('name' => '#__categories', 'lookup' => array('title'), 'link' => 'index.php?option=com_categories&task=category.edit&id={id}&extension=com_banners', 'conditions' => 'extension=\'com_banners\''), 'com_banners_clients' => array('name' => '#__banner_clients', 'lookup' => array('name'), 'fields' => array('title' => '{name}', 'description' => '{contact} - {email}'), 'link' => 'index.php?option=com_banners&task=client.edit&id={id}'), 'com_contacts' => array('name' => '#__contact_details', 'lookup' => array('name'), 'fields' => array('title' => '{name}', 'description' => '{misc}'), 'link' => 'index.php?option=com_contacts&task=contact.edit&id={id}'), 'com_contacts_categories' => array('name' => '#__categories', 'lookup' => array('title'), 'link' => 'index.php?option=com_categories&task=category.edit&id={id}&extension=com_contacts', 'conditions' => 'extension=\'com_contacts\''), 'com_messages' => array('name' => '#__messages', 'lookup' => array('subject'), 'fields' => array('title' => '{subject}', 'description' => '{message}'), 'link' => 'index.php?option=com_messages&view=message&message_id={message_id}'), 'com_newsfeeds' => array('name' => '#__newsfeeds', 'lookup' => array('name'), 'fields' => array('title' => '{name}', 'description' => ''), 'link' => 'index.php?option=com_newsfeeds&task=newsfeeds.edit&id={id}'), 'com_newsfeeds_categories' => array('name' => '#__categories', 'lookup' => array('title'), 'link' => 'index.php?option=com_categories&task=category.edit&id={id}&extension=com_newsfeeds', 'conditions' => 'extension=\'com_newsfeeds\''), 'com_weblinks' => array('name' => '#__weblinks', 'lookup' => array('title'), 'link' => 'index.php?option=com_weblinks&task=weblink.edit&id={id}'), 'com_weblinks_categories' => array('name' => '#__categories', 'lookup' => array('title'), 'link' => 'index.php?option=com_categories&task=category.edit&id={id}&extension=com_weblinks', 'conditions' => 'extension=\'com_weblinks\''));
     $supportedExtList = JPluginHelper::getPlugin('jsnpoweradmin');
     if (count($supportedExtList)) {
         foreach ($supportedExtList as $supportedExt) {
             $_mappings = JSNPaExtensionsHelper::executeExtMethod($supportedExt->name, 'getTableMapping');
             if (count($_mappings)) {
                 foreach ($_mappings as $k => $m) {
                     $mappings[$k] = $m;
                 }
             }
         }
     }
     $params = JSNConfigHelper::get('com_poweradmin');
     if (intval($params->get('search_trashed', 0)) == 0) {
         $mappings['categories']['conditions'] .= ' AND published!=-2';
         $mappings['articles']['conditions'] = 'state!=-2';
         $mappings['com_banners']['conditions'] = 'state!=-2';
         $mappings['com_banners_categories']['conditions'] .= ' AND published!=-2';
         $mappings['com_banners_clients']['conditions'] = 'state!=-2';
         $mappings['com_contacts']['conditions'] = 'published!=-2';
         $mappings['com_contacts_categories']['conditions'] .= ' AND published!=-2';
         $mappings['com_newsfeeds']['conditions'] = 'published!=-2';
         $mappings['com_newsfeeds_categories']['conditions'] .= ' AND published!=-2';
         $mappings['com_weblinks']['conditions'] = 'state!=-2';
         $mappings['com_weblinks_categories']['conditions'] .= ' AND published!=-2';
     }
     return !isset($mappings[$name]) ? null : $mappings[$name];
 }