diff --git a/app/routes/auth.php b/app/routes/auth.php index 1eeef9f1..09cc7fa4 100644 --- a/app/routes/auth.php +++ b/app/routes/auth.php @@ -4,6 +4,7 @@ Route::group(['before' => 'has_setting:app_name', 'namespace' => 'CachetHQ\Cache // Login routes Route::get('/auth/login', [ 'before' => 'guest', + 'after' => 'sslfix', 'as' => 'login', 'uses' => 'AuthController@showLogin', ]); diff --git a/src/Http/After/SslFixFilter.php b/src/Http/After/SslFixFilter.php new file mode 100644 index 00000000..3db91b2e --- /dev/null +++ b/src/Http/After/SslFixFilter.php @@ -0,0 +1,27 @@ +getOriginalContent(); + $output = str_replace('action="http://', 'action="//', $output); + + $response->setContent($output); + } +} diff --git a/src/Providers/RoutingServiceProvider.php b/src/Providers/RoutingServiceProvider.php index 27bc55f0..19351d01 100644 --- a/src/Providers/RoutingServiceProvider.php +++ b/src/Providers/RoutingServiceProvider.php @@ -49,6 +49,7 @@ class RoutingServiceProvider extends ServiceProvider // Cachet's after filters $this->app->router->filter('allowed_domains', 'CachetHQ\Cachet\Http\After\AllowedDomainsFilter'); $this->app->router->filter('cors', 'CachetHQ\Cachet\Http\After\CorsFilter'); + $this->app->router->filter('sslfix', 'CachetHQ\Cachet\Http\After\SslFixFilter'); } /**