1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-11-30 11:24:21 +01:00
fab-manager/app/assets/javascripts/controllers/main_nav.coffee.erb

127 lines
2.8 KiB
Plaintext

'use strict'
##
# Navigation controller. List the links availables in the left navigation pane and their icon.
##
Application.Controllers.controller "MainNavController", ["$scope", "$location", "$cookies", ($scope, $location, $cookies) ->
## Common links (public application)
$scope.navLinks = [
{
state: 'app.public.home'
linkText: 'home'
linkIcon: 'home'
}
{
state: 'app.public.machines_list'
linkText: 'reserve_a_machine'
linkIcon: 'cogs'
}
{
state: 'app.public.trainings_list'
linkText: 'trainings_registrations'
linkIcon: 'graduation-cap'
}
{
state: 'app.public.events_list'
linkText: 'events_registrations'
linkIcon: 'tags'
}
{
state: 'app.public.calendar'
linkText: 'public_calendar'
linkIcon: 'calendar'
}
{
state: 'app.public.projects_list'
linkText: 'projects_gallery'
linkIcon: 'th'
}
]
unless Fablab.withoutPlans
$scope.navLinks.push({
state: 'app.public.plans'
linkText: 'subscriptions'
linkIcon: 'credit-card'
})
unless Fablab.withoutSpaces
$scope.navLinks.splice(5, 0, {
state: 'app.public.spaces_list'
linkText: 'reserve_a_space'
linkIcon: 'rocket'
})
Fablab.adminNavLinks = Fablab.adminNavLinks || []
adminNavLinks = [
{
state: 'app.admin.trainings'
linkText: 'trainings_monitoring'
linkIcon: 'graduation-cap'
}
{
state: 'app.admin.calendar'
linkText: 'manage_the_calendar'
linkIcon: 'calendar'
}
{
state: 'app.admin.members'
linkText: 'manage_the_users'
linkIcon: 'users'
}
{
state: 'app.admin.invoices'
linkText: 'manage_the_invoices'
linkIcon: 'file-pdf-o'
}
{
state: 'app.admin.pricing'
linkText: 'subscriptions_and_prices'
linkIcon: 'money'
}
{
state: 'app.admin.events'
linkText: 'manage_the_events'
linkIcon: 'tags'
}
{
state: 'app.public.machines_list'
linkText: 'manage_the_machines'
linkIcon: 'cogs'
}
{
state: 'app.admin.project_elements'
linkText: 'manage_the_projects_elements'
linkIcon: 'tasks'
}
{
state: 'app.admin.statistics'
linkText: 'statistics'
linkIcon: 'bar-chart-o'
}
{
state: 'app.admin.settings'
linkText: 'customization'
linkIcon: 'gear'
}
{
state: 'app.admin.open_api_clients'
linkText: 'open_api_clients'
linkIcon: 'cloud'
}
].concat(Fablab.adminNavLinks)
$scope.adminNavLinks = adminNavLinks
unless Fablab.withoutSpaces
$scope.adminNavLinks.splice(8, 0, {
state: 'app.public.spaces_list'
linkText: 'manage_the_spaces'
linkIcon: 'rocket'
})
]