mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-01-24 20:36:49 +00:00
Notes for the tabs controller
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
Darkswarm.controller "TabsCtrl", ($scope, $rootScope, $location) ->
|
||||
$scope.active = (tab)->
|
||||
$location.path() == tab
|
||||
|
||||
$scope.tabs = ["contact", "about", "groups", "producers"]
|
||||
for tab in $scope.tabs
|
||||
$scope[tab] =
|
||||
active: false #$scope.active("/" + tab)
|
||||
path: "/" + tab
|
||||
|
||||
$scope.$watch ->
|
||||
$location.path()
|
||||
, (path)->
|
||||
for tab in $scope.tabs
|
||||
$scope[tab].active = $scope.active($scope[tab].path)
|
||||
|
||||
#$scope.select = (tab)->
|
||||
#$location.path tab.path
|
||||
#
|
||||
#
|
||||
|
||||
# directive -> ng-click -> scope method (not isolated) -> toggle active | change location
|
||||
# watch active expression -> change tab appearance
|
||||
|
||||
#select = ->
|
||||
#$location.path(tab.path)
|
||||
|
||||
#active expression:
|
||||
#"$location.path() == tab.path"
|
||||
|
||||
|
||||
# directive -> ng-click -> set active (on isolated scope)
|
||||
# ng-class -> change tab appearance
|
||||
# two-way binding active attr <-> tab.active
|
||||
|
||||
# directive attr (select) -> scope.selectExpression
|
||||
# scope.select -> $parse ...
|
||||
#
|
||||
# in Directive
|
||||
# scope.select = $parse(attrs.select)
|
||||
# $scope.select($scope)
|
||||
#
|
||||
# 1: remove reverse binding on tab.active
|
||||
# 2: put $parse(attrs.select) onto tab
|
||||
# 3: override TabsetController/select to run tab.select() against original tab.$parent
|
||||
Reference in New Issue
Block a user