예제 #1
0
 public static function setup($rootDir)
 {
     // configure environment
     umask(0);
     Tester\Environment::setup();
     class_alias('Tester\\Assert', 'Assert');
     date_default_timezone_set('Europe/Prague');
     // create temporary directory
     define('TEMP_DIR', $rootDir . '/tmp/' . (isset($_SERVER['argv']) ? md5(serialize($_SERVER['argv'])) : getmypid()));
     Tester\Helpers::purge(TEMP_DIR);
     @chmod(TEMP_DIR, 0777);
     Nette\Diagnostics\Debugger::$logDirectory = TEMP_DIR;
     $_SERVER = array_intersect_key($_SERVER, array_flip(array('PHP_SELF', 'SCRIPT_NAME', 'SERVER_ADDR', 'SERVER_SOFTWARE', 'HTTP_HOST', 'DOCUMENT_ROOT', 'OS', 'argc', 'argv')));
     $_SERVER['REQUEST_TIME'] = 1234567890;
     $_ENV = $_GET = $_POST = $_FILES = array();
     if (extension_loaded('xdebug')) {
         xdebug_disable();
         Tester\CodeCoverage\Collector::start($rootDir . '/coverage.dat');
     }
 }
<?php

/**
 * My Application bootstrap file.
 */
use Nette\Diagnostics\Debugger, Nette\Application\Routers\Route;
// Load Nette Framework
require LIBS_DIR . '/Nette/loader.php';
// Enable Nette Debugger for error visualisation & logging
Debugger::$logDirectory = __DIR__ . '/../log';
Debugger::$strictMode = TRUE;
Debugger::enable();
// Configure application
$configurator = new Nette\Config\Configurator();
$configurator->setTempDirectory(__DIR__ . '/../temp');
// Enable RobotLoader - this will load all classes automatically
$configurator->createRobotLoader()->addDirectory(APP_DIR)->addDirectory(LIBS_DIR)->register();
// Create Dependency Injection container from config.neon file
$configurator->addConfig(__DIR__ . '/config/config.neon');
$container = $configurator->createContainer();
// Opens already started session
if ($container->session->exists()) {
    $container->session->start();
}
// Setup router
$router = $container->router;
if (MobileDetection::isMobile()) {
    // mobile routing
    $router[] = new Route('index.php', 'Mobile:Homepage:default', Route::ONE_WAY);
    $router[] = new Route('<presenter>/<action>[/<id>]', 'Mobile:Homepage:default');
} else {
예제 #3
0
파일: index.php 프로젝트: Ginny/examples
<?php

// Nette Framework Microblog example

use Nette\Diagnostics\Debugger;


// load libraries
require __DIR__ . '/../../../Nette/loader.php';
require __DIR__ . '/data/TemplateRouter.php';


// enable Debugger
Debugger::$logDirectory = __DIR__ . '/data/log';
Debugger::$strictMode = TRUE;
Debugger::enable();


// enable template router
$context = Nette\Environment::getContext();
$context->params['tempDir'] = __DIR__ . '/data/temp';
$context->application->router[] = new TemplateRouter('data/templates');


// add access to database
$context->addService('database', function() {
	return new Nette\Database\Connection('sqlite2:data/blog.sdb');
});


// run the application!
예제 #4
0
파일: bootstrap.php 프로젝트: bazo/Tatami
<?php

/**
 * Tatami bootstrap file.
 *
 * @copyright  Copyright (c) 2011 Martin Bazik
 * @package    Tatami
 */
use Nette\Diagnostics\Debugger, Nette\Application\Routers\SimpleRouter, Nette\Application\Routers\Route, Tatami\Events\Event;
// Load Nette Framework
$params['libsDir'] = __DIR__ . '/../libs';
require $params['libsDir'] . '/Nette/loader.php';
$params['logDir'] = __DIR__ . '/../log';
Debugger::$logDirectory = $params['logDir'];
Debugger::$strictMode = TRUE;
//Debugger::$productionMode = false;
Debugger::enable('188.167.64.246');
$params['assetsDir'] = __DIR__ . '/assets';
$configurator = new Nette\Configurator();
$configurator->container->params += $params;
$configurator->container->params['tempDir'] = __DIR__ . '/../temp';
//check if generated config exists
try {
    $configurator->loadConfig($params['appDir'] . '/config/config.neon');
} catch (\Nette\FileNotFoundException $e) {
    //if not, read the default config and install application
    $configurator->loadConfig($params['appDir'] . '/config/config-default.neon');
}
$router = new \Tatami\Routing\TatamiRouter();
$configurator->getContainer()->addService('router', $router);
$application = $configurator->container->application;