Example #1
0
 /**
  * Enrutamiento interno
  * @example
  * Redirect::intern("module: modulo", "controller: nombre", "action: accion", "parameters: 1/2")
  */
 public static function internal()
 {
     static $cyclic = 0;
     $url = Util::getParams(func_get_args());
     $default = array('controller' => 'index', 'action' => 'index');
     $url['parameters'] = isset($url['parameters']) ? explode('/', $url['parameters']) : array();
     if (isset($url['module'])) {
         $vars = $url + $default;
         $vars['controller_path'] = $vars['module'] . '/' . $vars['controller'];
     } elseif (isset($url['controller'])) {
         $vars = $url + $default;
         $vars['controller_path'] = $vars['controller'];
     } else {
         $vars = $url;
     }
     if (++$cyclic > 1000) {
         throw new KumbiaException('Se ha detectado un enrutamiento cíclico. Esto puede causar problemas de estabilidad');
     }
     Router::to($vars, TRUE);
 }
Example #2
0
 /**
  * Enruta el controlador actual a otro módulo, controlador, o a otra acción
  * @deprecated Se mantiene por legacy temporalmente
  * @example
  * Redirect::route_to("module: modulo", "controller: nombre", "action: accion", "parameters: 1/2")
  */
 public static function route_to()
 {
     static $cyclic = 0;
     $url = Util::getParams(func_get_args());
     if (isset($url['module'])) {
         $vars['module'] = $url['module'];
         $vars['controller'] = 'index';
         $vars['action'] = 'index';
         $vars['parameters'] = array();
         $vars['controller_path'] = $url['module'] . '/index';
     }
     if (isset($url['controller'])) {
         $vars['controller'] = $url['controller'];
         $vars['action'] = 'index';
         $vars['parameters'] = array();
         $vars['controller_path'] = isset($url['module']) ? $url['module'] . '/' . $url['controller'] : $url['controller'];
     }
     if (isset($url['action'])) {
         $vars['action'] = $url['action'];
         $vars['parameters'] = array();
     }
     if (isset($url['parameters'])) {
         $vars['parameters'] = explode('/', $url['parameters']);
     } elseif (isset($url['id'])) {
         // Deprecated
         $vars['parameters'] = array($url['id']);
     } else {
         $vars['parameters'] = array();
     }
     if (++$cyclic > 1000) {
         throw new KumbiaException('Se ha detectado un enrutamiento cíclico. Esto puede causar problemas de estabilidad');
     }
     Router::to($vars, TRUE);
 }