require_once 'controllers/BaseController.php'; require_once 'output/MediTerraOutput.php'; // initialize Twig autoloader Twig_Autoloader::register(); // initialize dispatcher $dispatcher = new sfEventDispatcher(); // initialize request $request = new sfWebRequest($dispatcher); $controller_name = $request->getParameter('controller'); if (empty($controller_name) || !in_array($controller_name, array('BlobController', 'TableController', 'QueueController'))) { $controller_name = 'IndexController'; } require_once dirname(__FILE__) . '/../controllers/' . $controller_name . '.php'; $controller = new $controller_name(); $content = $controller->execute($dispatcher, $request, $config); } catch (Exception $e) { if ($config['debug']) { throw $e; } else { $content = $e->getMessage(); } } if (!is_null($content)) { // get the template path $template_file = MediTerraOutput::getTemplatePath($config['template']); // create response $response = new sfWebResponse($dispatcher); $response->setContent(MediTerraOutput::decorate($content, $template_file)); // send response $response->send(); }