1
0
mirror of https://github.com/laravel/valet.git synced 2026-02-05 16:40:05 +01:00

add Bedrock driver

This commit is contained in:
Evan Mattson
2016-05-09 22:48:25 -04:00
parent e714082d50
commit 954de429b6
3 changed files with 64 additions and 0 deletions

View File

@@ -47,6 +47,7 @@ public static function assign($sitePath, $siteName, $uri)
$drivers[] = 'LaravelValetDriver';
$drivers[] = 'WordPressValetDriver';
$drivers[] = 'BedrockValetDriver';
$drivers[] = 'SymfonyValetDriver';
$drivers[] = 'CraftValetDriver';
$drivers[] = 'StatamicValetDriver';

View File

@@ -18,6 +18,7 @@
require_once __DIR__.'/StatamicV1ValetDriver.php';
require_once __DIR__.'/SymfonyValetDriver.php';
require_once __DIR__.'/WordPressValetDriver.php';
require_once __DIR__.'/BedrockValetDriver.php';
require_once __DIR__.'/ContaoValetDriver.php';
require_once __DIR__.'/KatanaValetDriver.php';
require_once __DIR__.'/CakeValetDriver.php';

View File

@@ -0,0 +1,62 @@
<?php
class BedrockValetDriver extends BasicValetDriver
{
/**
* Determine if the driver serves the request.
*
* @param string $sitePath
* @param string $siteName
* @param string $uri
* @return void
*/
public function serves($sitePath, $siteName, $uri)
{
return file_exists($sitePath.'/web/app/mu-plugins/bedrock-autoloader.php')
|| (
is_dir($sitePath.'/web/app/')
&& file_exists($sitePath.'/web/wp-config.php')
&& file_exists($sitePath.'/config/application.php')
);
}
/**
* Determine if the incoming request is for a static file.
*
* @param string $sitePath
* @param string $siteName
* @param string $uri
* @return string|false
*/
public function isStaticFile($sitePath, $siteName, $uri)
{
$staticFilePath = $sitePath.'/web'.$uri;
if (file_exists($staticFilePath) && ! is_dir($staticFilePath)) {
return $staticFilePath;
}
return false;
}
/**
* Get the fully resolved path to the application's front controller.
*
* @param string $sitePath
* @param string $siteName
* @param string $uri
* @return string
*/
public function frontControllerPath($sitePath, $siteName, $uri)
{
$_SERVER['PHP_SELF'] = $uri;
if (0 === strpos($uri, '/wp/')) {
return is_dir($sitePath.'/web'.$uri)
? $sitePath.'/web'.$uri.'/index.php'
: $sitePath.'/web'.$uri;
}
return $sitePath.'/web/index.php';
}
}