mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
39 lines
1.5 KiB
CoffeeScript
39 lines
1.5 KiB
CoffeeScript
Darkswarm.controller "EnterprisesCtrl", ($scope, $rootScope, Enterprises, Search, $document, HashNavigation, FilterSelectorsService, EnterpriseModal, visibleFilter, taxonsFilter, shippingFilter, showHubProfilesFilter, enterpriseMatchesNameQueryFilter, distanceWithinKmFilter) ->
|
|
$scope.Enterprises = Enterprises
|
|
$scope.totalActive = FilterSelectorsService.totalActive
|
|
$scope.clearAll = FilterSelectorsService.clearAll
|
|
$scope.filterText = FilterSelectorsService.filterText
|
|
$scope.FilterSelectorsService = FilterSelectorsService
|
|
$scope.query = Search.search()
|
|
$scope.openModal = EnterpriseModal.open
|
|
$scope.activeTaxons = []
|
|
$scope.show_profiles = false
|
|
$scope.filtersActive = false
|
|
$scope.distanceMatchesShown = false
|
|
|
|
|
|
$scope.$watch "query", (query)->
|
|
Enterprises.evaluateQuery query
|
|
Search.search query
|
|
$rootScope.$broadcast 'enterprisesChanged'
|
|
$scope.distanceMatchesShown = false
|
|
|
|
|
|
$rootScope.$on "enterprisesChanged", ->
|
|
$scope.filterEnterprises()
|
|
|
|
|
|
$rootScope.$on "$locationChangeSuccess", (newRoute, oldRoute) ->
|
|
if HashNavigation.active "hubs"
|
|
$document.scrollTo $("#hubs"), 100, 200
|
|
|
|
|
|
$scope.filterEnterprises = ->
|
|
es = Enterprises.hubs
|
|
$scope.nameMatches = enterpriseMatchesNameQueryFilter(es, true)
|
|
$scope.distanceMatches = enterpriseMatchesNameQueryFilter(es, false)
|
|
$scope.distanceMatches = distanceWithinKmFilter($scope.distanceMatches, 50)
|
|
|
|
|
|
$scope.showDistanceMatches = ->
|
|
$scope.distanceMatchesShown = true |