// Redirect to setup pages based on version checks if (Request::segment(1) != 'setup') { // Redirect to the installer if (!$installed) { Setup::start(); return Redirect::to('setup/install'); } else { if (Request::segment(2) != 'login') { if ($appVersion > $dbVersion) { Setup::start(); return Redirect::to('setup/update'); } else { // Run Google Analytics visitor tracking Service::analytics(); // Set global admin messages View::globals(); // Run cron tasks Cron::run(); } } } } else { if (Request::segment(2) == 'update' and $dbVersion > 0 and Auth::roles()->guest) { App::abort(503); // Service unavailable } else { if ($installed and $appVersion == $dbVersion and !Session::has('setup.stage')) { return Redirect::to('/'); } } }