/** * TODO: Good candidate for traits method in PHP 5.4 with PostRedirectGet plugin * * @param string $redirect * @param bool $redirectToUrl * @return Response * @throws \Zend\Mvc\Exception\RuntimeException */ protected function redirect($redirect, $redirectToUrl) { $controller = $this->getController(); $params = []; $options = []; $reuseMatchedParams = false; if (null === $redirect) { $routeMatch = $controller->getEvent()->getRouteMatch(); $redirect = $routeMatch->getMatchedRouteName(); //null indicates to redirect for self. $reuseMatchedParams = true; } if (method_exists($controller, 'getPluginManager')) { // get the redirect plugin from the plugin manager $redirector = $controller->getPluginManager()->get('Redirect'); } else { /* * If the user wants to redirect to a route, the redirector has to come * from the plugin manager -- otherwise no router will be injected */ if ($redirectToUrl === false) { throw new RuntimeException('Could not redirect to a route without a router'); } $redirector = new Redirect(); } if ($redirectToUrl === false) { $response = $redirector->toRoute($redirect, $params, $options, $reuseMatchedParams); $response->setStatusCode(303); return $response; } $response = $redirector->toUrl($redirect); $response->setStatusCode(303); return $response; }
/** * Método para verificar la conexión de la bd */ public function test() { if (!Input::isAjax()) { Flash::error('Acceso incorrecto para la verificación del sistema.'); return Redirect::toRoute('module: dashboard', 'controller: index'); } if (!Input::hasPost('development') or !Input::hasPost('production')) { Flash::error('Oops!. No hemos recibido algún parámetro de configuración.'); } else { if (Input::hasPost('development')) { Sistema::testConnection(Input::post('development'), 'development', true); } if (Input::hasPost('production')) { Sistema::testConnection(Input::post('production'), 'production', true); } } View::ajax(); }