Path: blob/master/src/aphront/site/PhabricatorPlatformSite.php
13419 views
<?php12final class PhabricatorPlatformSite extends PhabricatorSite {34public function getDescription() {5return pht('Serves the core platform and applications.');6}78public function getPriority() {9return 1000;10}1112public function newSiteForRequest(AphrontRequest $request) {13// If no base URI has been configured yet, match this site so the user14// can follow setup instructions.15$base_uri = PhabricatorEnv::getEnvConfig('phabricator.base-uri');16if (!strlen($base_uri)) {17return new PhabricatorPlatformSite();18}1920$uris = array();21$uris[] = $base_uri;22$uris[] = PhabricatorEnv::getEnvConfig('phabricator.production-uri');2324$allowed = PhabricatorEnv::getEnvConfig('phabricator.allowed-uris');25if ($allowed) {26foreach ($allowed as $uri) {27$uris[] = $uri;28}29}3031$host = $request->getHost();32if ($this->isHostMatch($host, $uris)) {33return new PhabricatorPlatformSite();34}3536return null;37}3839public function getRoutingMaps() {40$applications = PhabricatorApplication::getAllInstalledApplications();4142$maps = array();43foreach ($applications as $application) {44$maps[] = $this->newRoutingMap()45->setApplication($application)46->setRoutes($application->getRoutes());47}4849return $maps;50}5152public function new404Controller(AphrontRequest $request) {53return new PhabricatorPlatform404Controller();54}5556}575859