Skip to content

Commit

Permalink
nipick
Browse files Browse the repository at this point in the history
  • Loading branch information
freekmurze committed Nov 27, 2018
1 parent 85c9a13 commit 8c28dea
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 16 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@

All notable changes to `laravel-query-builder` will be documented in this file

## 1.12.0 - 2018-11-27

- allow differently named columns

## 1.11.2 - 2018-10-30

- fix exception when using filters with nested arrays (#117)
Expand Down
28 changes: 14 additions & 14 deletions src/Filter.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,42 +17,42 @@ class Filter
protected $property;

/** @var string */
protected $propertyColumnName;
protected $columnName;

public function __construct(string $property, $filterClass, $propertyColumnName = null)
public function __construct(string $property, $filterClass, $columnName = null)
{
$this->property = $property;

$this->filterClass = $filterClass;

$this->propertyColumnName = $propertyColumnName ?? $property;
$this->columnName = $columnName ?? $property;
}

public function filter(Builder $builder, $value)
{
$filterClass = $this->resolveFilterClass();

($filterClass)($builder, $value, $this->propertyColumnName);
($filterClass)($builder, $value, $this->columnName);
}

public static function exact(string $property, $propertyColumnName = null) : self
public static function exact(string $property, $columnName = null) : self
{
return new static($property, FiltersExact::class, $propertyColumnName);
return new static($property, FiltersExact::class, $columnName);
}

public static function partial(string $property, $propertyColumnName = null) : self
public static function partial(string $property, $columnName = null) : self
{
return new static($property, FiltersPartial::class, $propertyColumnName);
return new static($property, FiltersPartial::class, $columnName);
}

public static function scope(string $property, $propertyColumnName = null) : self
public static function scope(string $property, $columnName = null) : self
{
return new static($property, FiltersScope::class, $propertyColumnName);
return new static($property, FiltersScope::class, $columnName);
}

public static function custom(string $property, $filterClass, $propertyColumnName = null) : self
public static function custom(string $property, $filterClass, $columnName = null) : self
{
return new static($property, $filterClass, $propertyColumnName);
return new static($property, $filterClass, $columnName);
}

public function getProperty(): string
Expand All @@ -65,9 +65,9 @@ public function isForProperty(string $property): bool
return $this->property === $property;
}

public function getPropertyColumnName(): string
public function getcolumnName(): string
{
return $this->propertyColumnName;
return $this->columnName;
}

private function resolveFilterClass(): CustomFilter
Expand Down
4 changes: 2 additions & 2 deletions tests/FilterTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -304,15 +304,15 @@ public function it_can_take_an_argument_for_custom_column_name_resolution()
$filter = Filter::custom('property_name', FiltersExact::class, 'property_column_name');

$this->assertInstanceOf(Filter::class, $filter);
$this->assertClassHasAttribute('propertyColumnName', get_class($filter));
$this->assertClassHasAttribute('columnName', get_class($filter));
}

/** @test */
public function it_sets_property_column_name_to_property_name_by_default()
{
$filter = Filter::custom('property_name', FiltersExact::class);

$this->assertEquals($filter->getProperty(), $filter->getPropertyColumnName());
$this->assertEquals($filter->getProperty(), $filter->getcolumnName());
}

/** @test */
Expand Down

0 comments on commit 8c28dea

Please sign in to comment.