public static function generate(array $params) { $action = is_array($params) ? array_shift($params) : null; Lib\Display::setLayout('admin'); $user = self::_checkLogin(); if ($user) { self::$_user = $user; Lib\Display::addKey('user', $user); $message = null; $force = false; if (Lib\Url::GetBool('created')) { $message = ['message' => 'Bracket was created successfully!', 'type' => 'success']; $force = true; } if (Lib\Url::GetBool('edited')) { $message = ['message' => 'Bracket was updated successfully!', 'type' => 'success']; $force = true; } // If there's an action, check for that page controller and use it if ($action && class_exists('Controller\\Admin\\' . $action, true)) { call_user_func(['Controller\\Admin\\' . $action, 'generate'], $params); } else { // Show the rollup page self::_main($message, $force); } } }
protected static function _checkLogin() { $user = Api\User::getCurrentUser(); $readonly = Lib\Url::GetBool('readonly', null); if (!$user && !$readonly && stripos($_SERVER['HTTP_USER_AGENT'], 'google') === false) { header('Location: /user/login/?redirect=' . urlencode($_GET['q'])); exit; } // Setup a default user if we're in readonly if (!$user) { $user = new stdClass(); $user->id = 0; } // Seed the test bucket with the user's ID Lib\TestBucket::initialize($user->id); return $user; }