Пример #1
0
 public function testQueue()
 {
     $app = new App();
     $app->registerInstance($app);
     $app->register(Config::class);
     $app->register(Cache::class);
     $app->register(AwesomeRenderer::class);
     $renderer = $app->get(Renderer::class);
     $this->assertInstanceOf(AwesomeRenderer::class, $renderer);
     $this->assertEquals(AwesomeRenderer::class, $renderer->render());
     $this->assertInstanceOf(Config::class, $renderer->getConfig());
     $this->assertInstanceOf(App::class, $renderer->getApp());
     $cache = $app->get(Cache::class);
     $this->assertInstanceOf(Cache::class, $cache);
     $this->assertInstanceOf(Config::class, $cache->getConfig());
 }
Пример #2
0
(new Mobicms\Firewall\Firewall())->run($request->getClientIp());
// Register Response instance
$response = new Response('Content', Response::HTTP_OK, ['content-type' => 'text/html']);
App::registerInstance($response, 'response');
// Database initialization
$db = new \Mobicms\Database\PDOmysql(Config\Database::$dbHost, Config\Database::$dbName, Config\Database::$dbUser, Config\Database::$dbPass);
App::registerInstance($db, 'db');
// Starting the Session and register instance
$session = new Session(new NativeSessionStorage(new PdoSessionHandler($db, $request)));
$session->start();
App::registerInstance($session, 'session');
// User initialization
App::registerInstance(new \Mobicms\Checkpoint\Facade($db, $request, $response, $session), 'user');
// i18n initialization
$i18n = new Mobicms\i18n\Translate();
App::registerInstance($i18n, 'lng');
/**
 * Translate a message
 *
 * @param string $message
 * @param string $domain
 * @return string
 */
function _s($message, $domain = 'default')
{
    global $i18n;
    return $i18n->translateSystem($message, $domain);
}
/**
 * The plural version of _s()
 *
Пример #3
0
 * @version     v.1.0.0 2015-02-01
 */
defined('MOBICMS') or die('Error: restricted access');
$public_actions = ['reputation' => 'reputation.php'];
$personal_actions = ['option' => 'option.php', 'option/avatar' => 'option_avatar.php', 'option/avatar/animation' => 'option_avatar_animation.php', 'option/avatar/delete' => 'option_avatar_delete.php', 'option/avatar/gravatar' => 'option_avatar_gravatar.php', 'option/avatar/image' => 'option_avatar_image.php', 'option/edit' => 'option_edit.php', 'option/email' => 'option_email.php', 'option/language' => 'option_language.php', 'option/nickname' => 'option_nickname.php', 'option/password' => 'option_password.php', 'option/rank' => 'option_rank.php', 'option/settings' => 'option_settings.php', 'option/theme' => 'option_theme.php'];
App::lng()->setModule('profile');
$query = App::router()->getQuery();
$user = App::user()->get();
$include = __DIR__ . '/includes/';
if (isset($query[0])) {
    try {
        if (!ctype_digit($query[0]) || $query[0] < 1) {
            throw new Exception('Invalid data');
        }
        $profile = App::user()->findById($query[0]);
        App::registerInstance($profile, 'profile');
        if (isset($query[1])) {
            $act = implode('/', array_slice($query, 1));
            if (($user->rights == 9 || $user->rights == 7 && $user->rights > $profile->rights || App::user()->isValid() && $user->id == $profile->id) && isset($personal_actions[$act])) {
                $include .= $personal_actions[$act];
            } elseif (isset($public_actions[$act])) {
                $include .= $public_actions[$act];
            } else {
                $include = false;
            }
        } else {
            $include .= 'profile.php';
        }
    } catch (Exception $e) {
        //TODO: Сделать пересылку на ошибку несуществующего юзера
        echo _s('User does not exists');
Пример #4
0
}
// Register Loader instance
App::registerInstance($autoload, 'autoload');
// Register Request instance
$request = new Request($_GET, $_POST, [], $_COOKIE, $_FILES, $_SERVER);
App::registerInstance($request, 'request');
// Starting the Firewall
(new Mobicms\Firewall\Firewall())->run($request->getClientIp());
// Register Response instance
$response = new Response('Content', Response::HTTP_OK, ['content-type' => 'text/html']);
App::registerInstance($response, 'response');
// Database initialization
$db = new \Mobicms\Database\PDOmysql(Config\Database::$dbHost, Config\Database::$dbName, Config\Database::$dbUser, Config\Database::$dbPass);
App::registerInstance($db, 'db');
// Starting the Session and register instance
$session = new Session(new NativeSessionStorage(new PdoSessionHandler($db, $request)));
$session->start();
App::registerInstance($session, 'session');
// User initialization
App::registerInstance(new \Mobicms\Checkpoint\Facade($db, $request, $response, $session), 'user');
// i18n functions
require __DIR__ . DS . 'Mobicms/i18n/functions.php';
// Output buffering
ob_start();
// Shutdown handlers
register_shutdown_function(function () {
    App::response()->setContent(App::view()->render());
    App::response()->prepare(App::request())->send();
    session_register_shutdown();
    // This important!
});