%PDF- %PDF-
Direktori : /home1/lightco1/www/administrator/components/com_virtuemart/controllers/ |
Current File : //home1/lightco1/www/administrator/components/com_virtuemart/controllers/translate.php |
<?php /** * * Translate controller * * @package VirtueMart * @subpackage Translate * @author Patrick Kohl * @link http://www.virtuemart.net * @copyright Copyright (c) 2004 - 2011 VirtueMart Team. All rights reserved. * @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL 2, see COPYRIGHT.php * VirtueMart is free software. This version may have been modified pursuant * to the GNU General Public License, and as distributed it includes or * is derivative of works licensed under the GNU General Public License or * other free or open source software licenses. * @version $Id: translate.php */ // Check to ensure this file is included in Joomla! defined('_JEXEC') or die('Restricted access'); if(!class_exists('VmController'))require(VMPATH_ADMIN.DS.'helpers'.DS.'vmcontroller.php'); /** * Translate Controller * * @package VirtueMart * @subpackage Translate * @author Patrick Kohl */ class VirtuemartControllerTranslate extends VmController { var $check = null; var $fields = null; function __construct() { parent::__construct(); } /** * Paste the table in json format * */ public function paste() { // TODO Test user ? $json= array(); $json['fields'] = 'error' ; $json['msg'] = 'Invalid Token'; $json['structure'] = 'empty' ; if (!vRequest::vmCheckToken(-1)) { echo json_encode($json) ; jexit( ); } $lang = vRequest::getvar('lg'); $langs = VmConfig::get('active_languages',array()) ; $language=JFactory::getLanguage(); if (!in_array($lang, $langs) ) { $json['msg'] = 'Invalid language ! '.$lang; $json['langs'] = $langs ; echo json_encode($json) ; jexit( ); } $lang = strtolower( $lang); // Remove tag if defaut or // if ($language->getDefault() == $lang ) $dblang =''; $dblang= strtr($lang,'-','_'); VmConfig::$vmlang = $dblang; $id = vRequest::getInt('id',0); $viewKey = vRequest::getCmd('editView'); // TODO temp trick for vendor if ($viewKey == 'vendor') $id = 1 ; $tables = array ('category' =>'categories','product' =>'products','manufacturer' =>'manufacturers','manufacturercategories' =>'manufacturercategories','vendor' =>'vendors', 'paymentmethod' =>'paymentmethods', 'shipmentmethod' =>'shipmentmethods'); if ( !array_key_exists($viewKey, $tables) ) { $json['msg'] ="Invalid view ". $viewKey; echo json_encode($json); jExit(); } $tableName = '#__virtuemart_'.$tables[$viewKey].'_'.$dblang; $m = VmModel::getModel('coupon'); $table = $m->getTable($tables[$viewKey]); //Todo create method to load lang fields only $table->load($id); $vs = $table->loadFieldValues(); $lf = $table->getTranslatableFields(); $json['fields'] = array(); foreach($lf as $v){ if(isset($vs[$v])){ $json['fields'][$v] = $vs[$v]; } } //if ($json['fields'] = $db->loadAssoc()) { if ($table->getLoaded()) { $json['structure'] = 'filled' ; $json['msg'] = vmText::_('COM_VIRTUEMART_SELECTED_LANG').':'.$lang; } else { $db =JFactory::getDBO(); $json['structure'] = 'empty' ; $db->setQuery('SHOW COLUMNS FROM '.$tableName); $tableDescribe = $db->loadAssocList(); array_shift($tableDescribe); $fields=array(); foreach ($tableDescribe as $key =>$val) $fields[$val['Field']] = $val['Field'] ; $json['fields'] = $fields; $json['msg'] = vmText::sprintf('COM_VIRTUEMART_LANG_IS_EMPTY',$lang ,vmText::_('COM_VIRTUEMART_'.strtoupper( $viewKey)) ) ; } echo vmJsApi::safe_json_encode($json); jExit(); } } //pure php no tag