public function preRequest(SS_HTTPRequest $request, Session $session, DataModel $model) { // Ensures routes etc are setup // We need to inject the presented session temporarily, as there is no current controller set FluentSession::with_session($session, function () { Fluent::init(); }); }
/** * Allows session to be temporarily injected into default_session prior to * the existence of a controller */ public static function with_session(Session $session, $callback) { self::$old_session = self::$default_session; self::$default_session = $session; try { $callback(); } catch (Exception $ex) { self::$default_session = self::$old_session; throw $ex; } self::$default_session = self::$old_session; }