Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- * czas uruchomienia aplikacji (Application Time Start) - potrzebne przy testowaniu
- */
- define('ATS', array_sum(explode(' ',microtime())));
- /**
- * separator katalogow
- */
- define('DS', DIRECTORY_SEPARATOR);
- /**
- * z ktĂłrej konfiguracji aplikacja ma skorzystac: config-[CONFIG_TYPE].php lub 'auto'
- *
- * auto : wartość dobierz automatycznie
- * - w pierwszej kolejności bada czy istnieje config-docelowy (jesli tak używa: config-docelowy.php)
- * - jesli nie to czy DOCUMENT_ROOT zawiera "work" (jesli tak uĹĽywa: config-roboczy.php)
- * - jesli nie to uzywa config-testowy (jesli tak uĹĽywa: config-testowy.php)
- * - jeśli nie - przerywa ładowanie aplikacji z odpowiednim komunikatem
- *
- * roboczy : uĹĽyj konfiguracji roboczej (domowej)
- * testowy : użyj konfiguracji testowej (na ogólno dostępnym serwerze testowym)
- * docelowy : uĹĽyj konfiguracji docelowej (przy uruchomieniu serwisu)
- */
- $CONFIG_TYPE = 'docelowy';
- //$CONFIG_TYPE = 'wchodarcewicz';
- //$CONFIG_TYPE = 'testowy';
- //$CONFIG_TYPE = 'docelowy';
- /**
- * sciezki projektu
- */
- $aSciezki = array();
- /**
- * WAŻNE!
- *
- * te ścieżki można zmienić tylko w tym miejscu (nie w configu!), jednakże należy tego dokonywać
- * w wyjątkowych syutacjach (np. zupełnie inne środowisko z innym układem katalogów,
- * jeśli z jakis przyczyn potrzebujemy zmienić nazwe kluczowych katalogów)
- *
- *
- * PROJECT_DIR - katalog bazowy projektu (ustalany wg. bieĹĽÄ…cego pliku)
- * APPLICATION_DIR - katalog plikow aplikacji - nie widocznych przez www
- * LIBRARY_DIR - katalog bibliotek dedykowanych dla aplikacji
- * CONFIGURATION_DIR - katalog z konfiguracjÄ… projektu
- */
- $aSciezki['PROJECT_DIR'] = dirname(dirname(__FILE__));
- $aSciezki['APPLICATION_DIR'] = $aSciezki['PROJECT_DIR'].DS.'application';
- $aSciezki['LIBRARY_DIR'] = $aSciezki['PROJECT_DIR'].DS.'library';
- $aSciezki['LIBRARY_LIB_DIR'] = $aSciezki['LIBRARY_DIR'].DS.'lib';
- $aSciezki['CONFIGURATION_DIR'] = $aSciezki['PROJECT_DIR'].DS.'configuration';
- $aSciezki['APPLICATION_MODULES_DIR'] = $aSciezki['APPLICATION_DIR'].DS.'modules';
- $aSciezki['APPLICATION_PROJECT_DIR'] = $aSciezki['APPLICATION_DIR'].DS.'project';
- /**
- * test poprawności ścieżek
- */
- foreach($aSciezki as $nazwa => $wartosc){
- if(! is_readable($wartosc) ){
- die('Nie można odczytać ścieżki `'.$nazwa.'`!');
- }
- }
- /**
- * te ścieżki można nadpisać w konfiguracji serwera (np. config-roboczy.php)
- * dlatego teĹĽ sÄ… poza testem poprawnosci (sa sprawdzane dopiero w bootstrap)
- *
- * TMP_DIR - katalog plikĂłw tymczasowych
- * ZEND_FRAMEWORK_DIR - katalog gdzie mieści się framework
- * UPLOAD_DIR - katalog uploadu plikĂłw
- * WWW_DIR - katalog dostepny przez www (jpg, css, js itd.).
- */
- $aSciezki['WWW_DIR'] = $aSciezki['PROJECT_DIR'].DS.'www';
- $aSciezki['TMP_DIR'] = dirname($aSciezki['PROJECT_DIR']).DS.'tmp';
- //$aSciezki['ZEND_FRAMEWORK_DIR'] = '/var/www/lib/zend/1.8.4';
- $aSciezki['ZEND_FRAMEWORK_DIR'] = '/var/www/lib/zend/1.10.8';
- //$aSciezki['ZEND_FRAMEWORK_DIR'] = '/work/wchodarcewicz/__lib/ZendFramework-1.9.4-minimal/library';
- $aSciezki['UPLOAD_DIR'] = '/var/www/html/treco/source/www/upload/';
- /**
- * funkcje ogĂłlne (nie powiazane w zaden bezposredni sposob z frameworkiem)
- */
- require $aSciezki['LIBRARY_LIB_DIR'].DS.'funkcje.php';
- /**
- * czy wlaczyc tryb administracyjny aplikacji
- */
- if( is_file($aSciezki['CONFIGURATION_DIR'].DS.'service_off.php') ){
- require $aSciezki['CONFIGURATION_DIR'].DS.'service_off.php';
- }
- else {
- require $aSciezki['APPLICATION_DIR'].DS.'Bootstrap.php';
- // sprawdzenie czy skrypt jest wywołany jest przez shell'a
- if(isset($_SERVER['HTTP_HOST'])){
- Bootstrap::run($CONFIG_TYPE, $aSciezki);
- }
- }
- if(isset($_SERVER['HTTP_HOST'])){
- unset($aSciezki);
- unset($CONFIG_TYPE);
- }
- //echo xdebug_time_index(), "\n";
- //echo get_microtime_float()-ATS."<Br />";
- //echo memory_get_usage();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement