StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'] . '/lib/navigation'); StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'] . '/lib/phplib'); StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'] . '/lib/raumzeit'); // Classes in /app StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'] . '/app/models'); StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'] . '/app/models', 'Studip'); // Special treatment for the Wysiwyg namespace StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'] . '/app/models/Wysiwyg', 'Studip\\Wysiwyg'); // Messy file names StudipAutoloader::addClassLookups(array('email_validation_class' => $GLOBALS['STUDIP_BASE_PATH'] . '/lib/phplib/email_validation.class.php', 'cssClassSwitcher' => $GLOBALS['STUDIP_BASE_PATH'] . '/lib/classes/cssClassSwitcher.inc.php', 'MediaProxy' => $GLOBALS['STUDIP_BASE_PATH'] . '/app/models/media_proxy.php', 'MyRealmModel' => $GLOBALS['STUDIP_BASE_PATH'] . '/app/models/my_realm.php', 'StudygroupModel' => $GLOBALS['STUDIP_BASE_PATH'] . '/app/models/studygroup.php', 'StudipPlugin' => $GLOBALS['STUDIP_BASE_PATH'] . '/lib/plugins/core/StudIPPlugin.class.php', 'AbstractStudipPortalPlugin' => $GLOBALS['STUDIP_BASE_PATH'] . '/lib/plugins/core/AbstractStudIPPortalPlugin.class.php', 'AbstractStudipSystemPlugin' => $GLOBALS['STUDIP_BASE_PATH'] . '/lib/plugins/core/AbstractStudIPSystemPlugin.class.php', 'AbstractStudipHomepagePlugin' => $GLOBALS['STUDIP_BASE_PATH'] . '/lib/plugins/core/AbstractStudIPHomepagePlugin.class.php', 'AbstractStudipAdministrationPlugin' => $GLOBALS['STUDIP_BASE_PATH'] . '/lib/plugins/core/AbstractStudIPAdministrationPlugin.class.php')); // Trails $trails_classes = array('Trails_Dispatcher', 'Trails_Response', 'Trails_Controller', 'Trails_Inflector', 'Trails_Flash', 'Trails_Exception', 'Trails_DoubleRenderError', 'Trails_MissingFile', 'Trails_RoutingError', 'Trails_UnknownAction', 'Trails_UnknownController', 'Trails_SessionRequiredException'); StudipAutoloader::addClassLookup($trails_classes, $GLOBALS['STUDIP_BASE_PATH'] . '/vendor/trails/trails.php'); StudipAutoloader::addClassLookup('StudipController', $GLOBALS['STUDIP_BASE_PATH'] . '/app/controllers/studip_controller.php'); StudipAutoloader::addClassLookup('AuthenticatedController', $GLOBALS['STUDIP_BASE_PATH'] . '/app/controllers/authenticated_controller.php'); StudipAutoloader::addClassLookup('PluginController', $GLOBALS['STUDIP_BASE_PATH'] . '/app/controllers/plugin_controller.php'); // Vendor StudipAutoloader::addClassLookups(array('PasswordHash' => $GLOBALS['STUDIP_BASE_PATH'] . '/vendor/phpass/PasswordHash.php', 'TCPDF' => $GLOBALS['STUDIP_BASE_PATH'] . '/vendor/tcpdf/tcpdf.php')); StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'] . '/vendor/mishal-iless/lib/ILess', 'ILess'); // sample the request time and number of db queries every tenth time register_shutdown_function(function ($timer) { $timer('core.request_time', 0.1); $query_count = DBManager::get()->query_count; Metrics::gauge('core.database.queries', $query_count, 0.1); }, Metrics::startTimer()); require 'lib/phplib/page_open.php'; StudipFileloader::load('config_local.inc.php', $GLOBALS, compact('STUDIP_BASE_PATH')); require 'config.inc.php'; require_once 'lib/functions.php'; require_once 'lib/language.inc.php'; require_once 'lib/visual.inc.php';
<?php namespace { StudipAutoloader::addAutoloadPath($GLOBALS['STUDIP_BASE_PATH'] . '/vendor/oauth-php/library'); StudipAutoloader::addClassLookup('DocBlock', 'vendor/docblock-parser/docblock-parser.php'); // Set base url for URLHelper class URLHelper::setBaseUrl($GLOBALS['CANONICAL_RELATIVE_PATH_STUDIP']); } namespace RESTAPI { use Studip, OAuthStore; // Define api version const VERSION = '2'; $router = Router::getInstance(); // Register JSON content renderer $router->registerRenderer(new Renderer\JSONRenderer(), true); // If in development mode, register debug content renderer if (defined('Studip\\ENV') && Studip\ENV === 'development') { $router->registerRenderer(new Renderer\DebugRenderer()); } OAuthStore::instance('PDO', array('dsn' => 'mysql:host=' . $GLOBALS['DB_STUDIP_HOST'] . ';dbname=' . $GLOBALS['DB_STUDIP_DATABASE'], 'username' => $GLOBALS['DB_STUDIP_USER'], 'password' => $GLOBALS['DB_STUDIP_PASSWORD'])); // Register default consumers Consumer\Base::addType('http', 'RESTAPI\\Consumer\\HTTP'); Consumer\Base::addType('studip', 'RESTAPI\\Consumer\\Studip'); Consumer\Base::addType('oauth', 'RESTAPI\\Consumer\\OAuth'); // $router->registerConsumer('oauth', new Consumer\OAuth); // $router->registerConsumer('basic', new Consumer\HTTP); // $router->registerConsumer('studip', new Consumer\Studip); }