Merge pull request #355 from taigaio/issue/2211/issue-click-does-not-work-with-filters
prevent location search if the url has the same parametersstable
commit
202ffeda79
|
@ -28,6 +28,10 @@ locationFactory = ($location, $route, $rootscope) ->
|
||||||
un()
|
un()
|
||||||
|
|
||||||
return $location
|
return $location
|
||||||
|
|
||||||
|
$location.isInCurrentRouteParams = (name, value) ->
|
||||||
|
return $route.current.params[name] == value
|
||||||
|
|
||||||
return $location
|
return $location
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -62,7 +62,7 @@ taiga.PageMixin = PageMixin
|
||||||
#############################################################################
|
#############################################################################
|
||||||
## Filters Mixin
|
## Filters Mixin
|
||||||
#############################################################################
|
#############################################################################
|
||||||
# This mixin requires @location ($tgLocation) and @scope
|
# This mixin requires @location ($tgLocation), and @scope
|
||||||
|
|
||||||
class FiltersMixin
|
class FiltersMixin
|
||||||
selectFilter: (name, value, load=false) ->
|
selectFilter: (name, value, load=false) ->
|
||||||
|
@ -73,16 +73,19 @@ class FiltersMixin
|
||||||
existing = _.compact(existing)
|
existing = _.compact(existing)
|
||||||
value = joinStr(",", _.uniq(existing))
|
value = joinStr(",", _.uniq(existing))
|
||||||
|
|
||||||
location = if load then @location else @location.noreload(@scope)
|
if !@location.isInCurrentRouteParams(name, value)
|
||||||
location.search(name, value)
|
location = if load then @location else @location.noreload(@scope)
|
||||||
|
location.search(name, value)
|
||||||
|
|
||||||
replaceFilter: (name, value, load=false) ->
|
replaceFilter: (name, value, load=false) ->
|
||||||
location = if load then @location else @location.noreload(@scope)
|
if !@location.isInCurrentRouteParams(name, value)
|
||||||
location.search(name, value)
|
location = if load then @location else @location.noreload(@scope)
|
||||||
|
location.search(name, value)
|
||||||
|
|
||||||
replaceAllFilters: (filters, load=false) ->
|
replaceAllFilters: (filters, load=false) ->
|
||||||
location = if load then @location else @location.noreload(@scope)
|
if !@location.isInCurrentRouteParams(name, value)
|
||||||
location.search(filters)
|
location = if load then @location else @location.noreload(@scope)
|
||||||
|
location.search(filters)
|
||||||
|
|
||||||
unselectFilter: (name, value, load=false) ->
|
unselectFilter: (name, value, load=false) ->
|
||||||
params = @location.search()
|
params = @location.search()
|
||||||
|
|
Loading…
Reference in New Issue