%PDF- %PDF-
Direktori : /home1/lightco1/www/components/com_virtuemart/controllers/ |
Current File : //home1/lightco1/www/components/com_virtuemart/controllers/plugin.php |
<?php defined ('_JEXEC') or die('Restricted access'); /** * * plugin controller * * @package VirtueMart * @subpackage Core * @author Max Milbers * @link http://www.virtuemart.net * @copyright Copyright (c) 2011 VirtueMart Team. All rights reserved. * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL, see LICENSE.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: plugin.php 2641 2010-11-09 19:25:13Z milbo $ */ jimport ('joomla.application.component.controller'); /** * VirtueMart default administrator controller * * @package VirtueMart */ class VirtuemartControllerPlugin extends JControllerLegacy { /** * Method to render the plugin datas * this is an entry point to plugin to easy renders json or html * * * @access public */ function display($cachable = false, $urlparams = false) { if (!$type = vRequest::getCmd ('vmtype', NULL)) { $type = vRequest::getCmd ('type', 'vmcustom'); } $typeWhiteList = array('vmcustom', 'vmcalculation', 'vmuserfield', 'vmpayment', 'vmshipment'); if (!in_array ($type, $typeWhiteList)) { return FALSE; } $name = vRequest::getCmd ('name', 'none'); $nameBlackList = array('plgVmValidateCouponCode', 'plgVmRemoveCoupon', 'none'); if (in_array ($name, $nameBlackList)) { echo 'You got logged'; return FALSE; } JPluginHelper::importPlugin ($type, $name); $dispatcher = JDispatcher::getInstance (); // if you want only one render simple in the plugin use jExit(); // or $render is an array of code to echo as html or json Objects! $render = NULL; $dispatcher->trigger ('plgVmOnSelfCallFE', array($type, $name, &$render)); if ($render) { // Get the document object. $document = JFactory::getDocument (); if (vRequest::getCmd ('cache') == 'no') { JResponse::setHeader ('Cache-Control', 'no-cache, must-revalidate'); JResponse::setHeader ('Expires', 'Mon, 6 Jul 2000 10:00:00 GMT'); } $format = vRequest::getCmd ('format', 'json'); if ($format == 'json') { $document->setMimeEncoding ('application/json'); // Change the suggested filename. JResponse::setHeader ('Content-Disposition', 'attachment;filename="' . $type . '.json"'); echo json_encode ($render); jExit(); } else { echo $render; jExit(); } } else { } } }