remove filters buttons

stable
Juanfran 2014-08-13 10:22:25 +02:00
parent b74dc16bf7
commit 33c98f2aef
2 changed files with 52 additions and 13 deletions

View File

@ -90,6 +90,9 @@ BacklogFiltersDirective = ($log, $location) ->
$el.find("h2 a.subfilter").addClass("hidden")
initializeSelectedFilters = (filters) ->
showCategories()
selectedFilters = []
for name, values of filters
for val in values
selectedFilters.push(val) if val.selected
@ -125,6 +128,8 @@ BacklogFiltersDirective = ($log, $location) ->
if type == currentFiltersType
renderFilters(_.reject(filters, "selected"))
$ctrl.loadUserstories()
selectSubjectFilter = debounce 400, (value) ->
return if value is undefined
if value.length == 0

View File

@ -99,6 +99,26 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
@scope.sprintsById = groupBy(sprints, (x) -> x.id)
return sprints
resetFilters: ->
@scope.$apply =>
selectedTags = _.filter(@scope.filters.tags, "selected")
selectedStatuses = _.filter(@scope.filters.statuses, "selected")
@scope.filtersSubject = ""
_.forEach [selectedTags, selectedStatuses], (filterGrp) =>
_.forEach filterGrp, (item) =>
filters = @scope.filters[item.type]
filter = _.find(filters, {id: taiga.toString(item.id)})
filter.selected = false
@.unselectFilter(item.type, item.id)
@.loadUserstories()
# @.filterVisibleUserstories()
# @rootscope.$broadcast("filters:loaded", @scope.filters)
loadUserstories: ->
@scope.urlFilters = @.getUrlFilters()
@ -318,7 +338,7 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
if not searchdata[name]?
searchdata[name] = {}
for val in value.split(",")
for val in taiga.toString(value).split(",")
searchdata[name][val] = true
isSelected = (type, id) ->
@ -357,7 +377,6 @@ class BacklogController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.F
return obj
return @scope.filters
## Template actions
@ -494,6 +513,24 @@ BacklogDirective = ($repo, $rootscope) ->
toggleText(target.find(".text"), ["Hide Tags", "Show Tags"]) # TODO: i18n
showHideFilter = ($scope, $el, $ctrl) ->
sidebar = $el.find("sidebar.filters-bar")
sidebar.one "transitionend", () ->
setTimeout ( ->
$rootscope.$broadcast("resize")
$('.burndown').css("visibility", "visible")
), 150
target = angular.element("#show-filters-button")
$('.burndown').css("visibility", "hidden")
sidebar.toggleClass("active")
target.toggleClass("active")
toggleText(target.find(".text"), ["Remove Filters", "Show Filters"]) # TODO: i18n
if !sidebar.hasClass("active")
$ctrl.resetFilters()
#########################
## Filters Link
#########################
@ -503,18 +540,8 @@ BacklogDirective = ($repo, $rootscope) ->
$el.on "click", "#show-filters-button", (event) ->
event.preventDefault()
sidebar = $el.find("sidebar.filters-bar")
sidebar.one "transitionend", () ->
setTimeout ( ->
$rootscope.$broadcast("resize")
$('.burndown').css("visibility", "visible")
), 150
showHideFilter($scope, $el, $ctrl)
target = angular.element(event.currentTarget)
$('.burndown').css("visibility", "hidden")
sidebar.toggleClass("active")
target.toggleClass("active")
toggleText(target.find(".text"), ["Hide Filters", "Show Filters"]) # TODO: i18n
link = ($scope, $el, $attrs, $rootscope) ->
$ctrl = $el.controller()
@ -525,6 +552,13 @@ BacklogDirective = ($repo, $rootscope) ->
$el.find(".backlog-table-body").disableSelection()
filters = $ctrl.getUrlFilters()
if filters.statuses ||
filters.tags ||
filters.subject
showHideFilter($scope, $el, $ctrl)
$scope.$on "$destroy", ->
$el.off()