Skip to content

Instantly share code, notes, and snippets.

@jannejava
Last active June 14, 2018 16:44
Show Gist options
  • Save jannejava/671f8e7c414906b5fef67c1ad61a5e4e to your computer and use it in GitHub Desktop.
Save jannejava/671f8e7c414906b5fef67c1ad61a5e4e to your computer and use it in GitHub Desktop.
<?php
class MyValetDriver extends ValetDriver
{
protected $cacheUri = '/images/';
protected $cachePath = '/image-cache';
/**
* Determine if the driver serves the request.
*
* @param string $sitePath
* @param string $siteName
* @param string $uri
* @return bool
*/
public function serves($sitePath, $siteName, $uri)
{
// Look for a identifier for our special project
if (file_exists($sitePath.'/vendor/eastwest/image-cache/composer.json')) {
return true;
}
return false;
}
/**
* 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)
{
// Does the request URI beginns with '/images/
if (strpos($uri, $this->cacheUri) === 0) {
$cacheUri = str_replace($this->cacheUri, $this->cachePath, $uri);
// cached file does exist, show it
if (file_exists($staticFilePath = $sitePath.'/public/'.$cacheUri)) {
return $staticFilePath;
}
}
// Is an other static file?
if (file_exists($staticFilePath = $sitePath.'/public/'.$uri)) {
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)
{
return $sitePath.'/public/index.php';
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment