function setUpOnce() { if (!Controller::has_extension('AjaxControllerExtension')) { Controller::add_extension('AjaxControllerExtension'); } parent::setUpOnce(); }
public function setUp() { parent::setUp(); Controller::add_extension('ShopTestControllerExtension'); $this->accountpage = $this->objFromFixture("AccountPage", "accountpage"); $this->controller = new AccountPage_Controller($this->accountpage); $this->controller->init(); }
public function setUpOnce() { if (!ShoppingCart_Controller::has_extension('ShoppingCartAjax')) { ShoppingCart_Controller::add_extension('ShoppingCartAjax'); } if (!VariationForm::has_extension('ShoppingCartAjax')) { VariationForm::add_extension('ShoppingCartAjax'); } if (!Controller::has_extension('AjaxControllerExtension')) { Controller::add_extension('AjaxControllerExtension'); } parent::setUpOnce(); }
public static function activate($code = null) { switch ($code) { case null: self::$google_analytics_code = null; break; case 'SiteConfig': SiteConfig::add_extension('GoogleAnalyticsLiteConfig'); break; default: self::$google_analytics_code = $code; } Controller::add_extension('GoogleLiteLogger'); }
/** * Activate the GoogleLogger * * @param $code mixed: * String the Google Analytics code to be used in the JS snippet or * String 'SiteConfig' for using the SiteConfig to configure this value or * Null if you hardcode the JS snippet into your template. The JS snippet will not be included through Requirements * **/ public static function activate($code = null) { switch ($code) { case null: self::$google_analytics_code = null; break; case 'SiteConfig': SiteConfig::add_extension('GoogleConfig'); break; default: self::$google_analytics_code = $code; } Controller::add_extension('GoogleLogger'); if (substr(GoogleAnalyzer::get_sapphire_version(), 0, 3) == '2.3') { Director::add_callback(array("GoogleLogger", "onAfterInit23")); } }
/** * Get the Debug Bar instance * * @global array $databaseConfig * @return DebugBar\StandardDebugBar */ public static function getDebugBar() { if (self::$debugbar !== null) { return self::$debugbar; } if (!Director::isDev() || self::IsDisabled() || self::VendorNotInstalled() || self::NotLocalIp() || Director::is_cli() || self::IsDevUrl() || self::IsAdminUrl() && !self::config()->enabled_in_admin) { self::$debugbar = false; // No need to check again return; } // Add the controller extension programmaticaly because it might not be added properly through yml Controller::add_extension('DebugBarControllerExtension'); // Add a custom logger that logs everything under the Messages tab SS_Log::add_writer(new DebugBarLogWriter(), SS_Log::DEBUG, '<='); self::$debugbar = $debugbar = new DebugBar\DebugBar(); if (isset($_REQUEST['showqueries'])) { self::setShowQueries(true); echo "The queries above have been run before we started DebugBar"; echo '<hr>'; unset($_REQUEST['showqueries']); } $debugbar->addCollector(new DebugBar\DataCollector\PhpInfoCollector()); $debugbar->addCollector(new DebugBar\DataCollector\MessagesCollector()); $debugbar->addCollector(new DebugBar\DataCollector\TimeDataCollector()); $debugbar->addCollector(new DebugBar\DataCollector\MemoryCollector()); // On 3.1, PDO does not exist if (method_exists('DB', 'get_conn')) { if (!DB::get_conn()) { global $databaseConfig; if ($databaseConfig) { DB::connect($databaseConfig); } } $connector = DB::get_connector(); if (!self::config()->force_proxy && $connector instanceof PDOConnector) { // Use a little bit of magic to replace the pdo instance $refObject = new ReflectionObject($connector); $refProperty = $refObject->getProperty('pdoConnection'); $refProperty->setAccessible(true); $traceablePdo = new DebugBar\DataCollector\PDO\TraceablePDO($refProperty->getValue($connector)); $refProperty->setValue($connector, $traceablePdo); $debugbar->addCollector(new DebugBar\DataCollector\PDO\PDOCollector($traceablePdo)); } else { DB::set_conn($db = new DebugBarDatabaseNewProxy(DB::get_conn())); $db->setShowQueries(self::getShowQueries()); $debugbar->addCollector(new DebugBarDatabaseCollector($db)); } } else { if (!DB::getConn()) { global $databaseConfig; if ($databaseConfig) { DB::connect($databaseConfig); } } DB::setConn($db = new DebugBarDatabaseProxy(DB::getConn())); $db->setShowQueries(self::getShowQueries()); $debugbar->addCollector(new DebugBarDatabaseCollector($db)); } // Add some SilverStripe specific infos $debugbar->addCollector(new DebugBarSilverStripeCollector()); if (self::config()->enable_storage) { $debugbar->setStorage(new DebugBar\Storage\FileStorage(TEMP_FOLDER . '/debugbar')); } // Since we buffer everything, why not enable all dev options ? if (self::config()->auto_debug) { $_REQUEST['debug'] = true; $_REQUEST['debug_request'] = true; } if (isset($_REQUEST['debug']) || isset($_REQUEST['debug_request'])) { self::$bufferingEnabled = true; ob_start(); // We buffer everything until we have called an action } return $debugbar; }
<?php define('SS_NR_BASE', basename(dirname(__FILE__))); Config::inst()->update('NewRelicPerformanceReport', 'menu_icon', SS_NR_BASE . '/images/new-relic.png'); //Configure new relic monitoring if (extension_loaded('newrelic')) { //Bind to the controller class Controller::add_extension('NewRelicControllerHook'); //If we have an application name constant ensure New Relic knows what the name is if (defined('SS_NR_APPLICATION_NAME')) { newrelic_set_appname(SS_NR_APPLICATION_NAME); } //If we're in cli make sure New Relic is aware that we are if (Director::is_cli()) { newrelic_background_job(true); } //New Relic error binders if (Director::isLive() || defined('SS_NR_FORCE_ENABLE_LOGGING')) { SS_Log::add_writer(new NewRelicErrorLogger(), SS_Log::NOTICE); SS_Log::add_writer(new NewRelicErrorLogger(), SS_Log::WARN); SS_Log::add_writer(new NewRelicErrorLogger(), SS_Log::ERR); } }
<?php SiteConfig::add_extension('SSTweaksSiteConfig'); SiteTree::add_extension('SSTweaksSiteTree'); Controller::add_extension('SSTweaksController');
<?php global $project; $project = 'app_config'; global $database; // Use _ss_environment.php file for configuration require_once "conf/ConfigureFromEnv.php"; Config::inst()->update('Email', 'admin_email', ADMIN_EMAIL); Config::inst()->update('MySQLDatabase', 'connection_charset', 'utf8'); Config::inst()->update('GDBackend', 'default_quality', 100); Controller::add_extension('AppControllerExtension'); Config::inst()->update('RootURLController', 'default_homepage_link', 'home'); Config::inst()->update('Security', 'default_login_dest', DEFAULT_LOGIN_DESTINATION); // hash links will not be rewritten, to allow "Back to Top Button" and smooth scrolling on OnePagers Config::inst()->update('SSViewer', 'rewrite_hash_links', false); // Locale LocaleGeoip::set_available_languages(array('en_US' => 'ENGLISH', 'de_DE' => 'GERMAN')); // Country -> Locale Map (benötigt für die GeoIP erkennung und das mapping in die entsprechende Sprache) LocaleGeoip::set_country_locale_code_map(array('US' => 'en_US', 'DE' => 'de_DE')); LocaleGeoip::set_default_locale_code('en_US'); // apt-get install geoip-bin php5-geoip Geoip::set_default_country_code('US');
<?php if (Director::isLive()) { Controller::add_extension('SS_MinifiedResponseExtension'); Requirements::set_backend(new Minify_Requirements_Backend()); if (defined('MINIFY_CACHE_BACKEND') && defined('MINIFY_CACHE_LIFETIME')) { $backend = unserialize(MINIFY_CACHE_BACKEND); SS_Cache::add_backend('MINIFY_CACHE_BACKEND', $backend['Type'], $backend['Options']); SS_Cache::set_cache_lifetime('MINIFY_CACHE_BACKEND', MINIFY_CACHE_LIFETIME, 100); SS_Cache::pick_backend('MINIFY_CACHE_BACKEND', 'MINIFY_CACHE', 100); } }
<?php // Extentions SiteConfig::add_extension('Ext_Commerce_SiteConfig'); Image::add_extension('Ext_Commerce_Image'); Controller::add_extension('Ext_Commerce_Controller'); Group::add_extension('Ext_Commerce_Group'); Member::add_extension('Ext_Commerce_Member'); if (class_exists('Users_Account_Controller')) { Users_Account_Controller::add_extension('Ext_Commerce_UsersController'); } // If subsites is installed if (class_exists('Subsite')) { Product::add_extension('Ext_Subsites_CommerceObject'); ProductCategory::add_extension('Ext_Subsites_CommerceObject'); Order::add_extension('Ext_Subsites_CommerceObject'); CatalogueAdmin::add_extension('SubsiteMenuExtension'); LocaliseAdmin::add_extension('SubsiteMenuExtension'); OrderAdmin::add_extension('SubsiteMenuExtension'); } LeftAndMain::add_extension('Ext_Commerce_LeftAndMain'); // Setup google sitemaps if (class_exists("GoogleSitemap")) { GoogleSitemap::register_dataobject('Product'); GoogleSitemap::register_dataobject('ProductCategory'); }