Пример #1
0
 function xajaxDispatch()
 {
     # MVC initalization script
     if (!defined('MVC_FRAMEWORK')) {
         require dirname(dirname(__FILE__)) . DS . 'com_jreviews' . DS . 'jreviews' . DS . 'framework.php';
     }
     $objResponse = new xajaxResponse();
     # Debug
     if (S2_DEBUG == 0) {
         error_reporting(0);
     }
     # Function parameters
     $args = func_get_args();
     $controllerName = (string) array_shift($args);
     $action = (string) array_shift($args);
     $app = isset($args[0]) && is_string($args[0]) ? array_shift($args) : 'jreviews';
     App::import('Controller', $controllerName, $app);
     # remove admin path from controller name
     $controllerClass = inflector::camelize(str_replace(MVC_ADMIN . _DS, '', $controllerName)) . 'Controller';
     $controller = new $controllerClass($app);
     $controller->app = $app;
     $controller->passedArgs = array();
     if (isset($args[0])) {
         $post = S2Dispatcher::parseParamsAjax($args[0]);
         if (isset($post['data'])) {
             // pass form inputs to controller variable
             $rawData = $post['data'];
             $data = Sanitize::clean($post['data']);
             $data['__raw'] = $rawData;
             $controller->data = $data;
         }
         $controller->passedArgs = $post;
         $controller->params = $post;
     }
     $controller->name = $controllerName;
     $controller->action = $action;
     $controller->autoLayout = false;
     $controller->autoRender = false;
     $controller->xajaxRequest = true;
     $controller->__initComponents();
     if (method_exists($controller, 'beforeFilter')) {
         $controller->beforeFilter();
     }
     $objResponse->loadCommands($controller->{$action}($args));
     return $objResponse;
 }
Пример #2
0
 function xajaxDispatch()
 {
     $objResponse = new xajaxResponse();
     # Debug
     if (Configure::read('System.debug', 0) === 0) {
         error_reporting(0);
     }
     # Function parameters
     $args = func_get_args();
     $controllerName = (string) array_shift($args);
     $action = (string) array_shift($args);
     $app = isset($args[0]) && is_string($args[0]) ? array_shift($args) : 'jreviews';
     $Router =& S2Router::getInstance();
     $Router->app = $app;
     App::import('Controller', $controllerName, $app);
     # remove admin path from controller name
     $controllerClass = inflector::camelize(str_replace(MVC_ADMIN . _DS, '', $controllerName)) . 'Controller';
     $controller = new $controllerClass($app);
     $controller->passedArgs = array();
     $controller->params = array();
     if (isset($args[0])) {
         $post = S2Dispatcher::parseParamsAjax($args[0]);
         if (isset($post['data'])) {
             // pass form inputs to controller variable
             $rawData = $post['data'];
             $data = Sanitize::clean($post['data']);
             $data['__raw'] = $rawData;
             $controller->data = $data;
         }
         $controller->passedArgs = $post;
         $controller->params = $post;
     }
     $controller->name = $controllerName;
     $controller->action = $action;
     $controller->autoLayout = false;
     $controller->autoRender = false;
     $controller->xajaxRequest = true;
     $controller->__initComponents();
     $controller->beforeFilter();
     $objResponse->loadCommands($controller->{$action}($args));
     return $objResponse;
 }