Adding ability to show and hide menu items

This commit is contained in:
Rob Harrington
2014-11-28 14:38:28 +11:00
parent eb2a6f0ef5
commit 76acd706ea
7 changed files with 133 additions and 14 deletions

View File

@@ -45,3 +45,11 @@ angular.module("admin.enterprises")
count++ if shipping_method.selected
count
, 0
$scope.$watch "Enterprise.is_primary_producer", (newValue, oldValue) ->
if newValue
$scope.menu.hide_item_by_name('Shipping Methods')
$scope.menu.hide_item_by_name('Payment Methods')
else if !newValue
$scope.menu.show_item_by_name('Shipping Methods')
$scope.menu.show_item_by_name('Payment Methods')

View File

@@ -4,18 +4,18 @@ angular.module("admin.enterprises")
$scope.menu = SideMenu
$scope.select = SideMenu.select
SideMenu.setItems [
$scope.menu.setItems [
{ name: 'Primary Details' }
{ name: 'Address' }
{ name: 'Contact' }
{ name: 'Social' }
{ name: 'About' }
{ name: "Business Details"}
{ name: 'Business Details' }
{ name: 'Images' }
{ name: "Shipping Methods"}
{ name: "Payment Methods"}
{ name: "Enterprise Fees"}
{ name: "Preferences"}
{ name: "Shipping Methods" }
{ name: "Payment Methods" }
{ name: "Enterprise Fees" }
{ name: "Preferences" }
]
$scope.select(0)

View File

@@ -6,10 +6,23 @@ angular.module("admin.side_menu")
setItems: (items) =>
@items = items
item.visible = true for item in @items
select: (index) =>
@selected.selected = false if @selected
@selected = @items[index]
@selected.selected = true
if index < @items.length
@selected.selected = false if @selected
@selected = @items[index]
@selected.selected = true
find_by_name: (name) =>
for item in @items when item.name is name
return item
null
hide_item_by_name: (name) =>
item = @find_by_name(name)
item.visible = false if item
show_item_by_name: (name) =>
item = @find_by_name(name)
item.visible = true if item