Laravelista\Ekko\Ekko::areActiveRoutes PHP Method

areActiveRoutes() public method

Compares given array of route names with current route name.
public areActiveRoutes ( array $routeNames, string $output = "active" ) : boolean
$routeNames array
$output string
return boolean
    public function areActiveRoutes(array $routeNames, $output = "active")
    {
        foreach ($routeNames as $routeName) {
            if ($this->isActiveRoute($routeName, true)) {
                return $output;
            }
        }
        return null;
    }

Usage Example

Example #1
0
 /** @test */
 public function it_detects_active_routes_by_name()
 {
     $router = m::mock(\Illuminate\Routing\Router::class);
     $router->shouldReceive('currentRouteName')->times(8)->andReturn('users.index');
     $url = m::mock(\Illuminate\Routing\UrlGenerator::class);
     $ekko = new Ekko($router, $url);
     $this->assertEquals("active", $ekko->areActiveRoutes(['users.index']));
     $this->assertEquals("hello", $ekko->areActiveRoutes(['users.index'], 'hello'));
     $this->assertEquals(null, $ekko->areActiveRoutes(['clients.index']));
     $this->assertEquals(null, $ekko->areActiveRoutes(['clients.index'], 'hello'));
     // Wildcard support
     $this->assertEquals("active", $ekko->areActiveRoutes(['users.*']));
     $this->assertEquals("hello", $ekko->areActiveRoutes(['users.*'], 'hello'));
     $this->assertEquals(null, $ekko->areActiveRoutes(['clients.*']));
     $this->assertEquals(null, $ekko->areActiveRoutes(['clients.*'], 'hello'));
 }