1
0
Fork 0
mirror of https://github.com/archtechx/tenancy.git synced 2025-12-12 22:34:03 +00:00
tenancy/src/Features/CrossDomainRedirect.php
Samuel Štancl 60665517a0
[v3] Rename tenant redirect macro (#389)
* [v3] Rename tenant redirect macro

* update tests
2020-05-03 17:59:59 +02:00

25 lines
729 B
PHP

<?php
declare(strict_types=1);
namespace Stancl\Tenancy\Features;
use Illuminate\Http\RedirectResponse;
use Stancl\Tenancy\Contracts\Feature;
use Stancl\Tenancy\TenantManager;
class CrossDomainRedirect implements Feature
{
public function bootstrap(TenantManager $tenantManager): void
{
RedirectResponse::macro('domain', function (string $domain) {
// replace first occurance of hostname fragment with $domain
$url = $this->getTargetUrl();
$hostname = parse_url($url, PHP_URL_HOST);
$position = strpos($url, $hostname);
$this->setTargetUrl(substr_replace($url, $domain, $position, strlen($hostname)));
return $this;
});
}
}