diff --git a/app/assets/images/icons/set-table.svg b/app/assets/images/icons/set-table.svg new file mode 100644 index 00000000..ec5063f3 --- /dev/null +++ b/app/assets/images/icons/set-table.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/assets/images/icons/table-current.svg b/app/assets/images/icons/table-current.svg new file mode 100644 index 00000000..671a2528 --- /dev/null +++ b/app/assets/images/icons/table-current.svg @@ -0,0 +1,53 @@ + +image/svg+xml \ No newline at end of file diff --git a/app/assets/images/icons/table-green.svg b/app/assets/images/icons/table-green.svg new file mode 100644 index 00000000..c9a3d611 --- /dev/null +++ b/app/assets/images/icons/table-green.svg @@ -0,0 +1,53 @@ + +image/svg+xml \ No newline at end of file diff --git a/app/assets/images/icons/table-white.svg b/app/assets/images/icons/table-white.svg new file mode 100644 index 00000000..b156ae3a --- /dev/null +++ b/app/assets/images/icons/table-white.svg @@ -0,0 +1,53 @@ + +image/svg+xml \ No newline at end of file diff --git a/app/assets/images/icons/table.svg b/app/assets/images/icons/table.svg new file mode 100644 index 00000000..189fb885 --- /dev/null +++ b/app/assets/images/icons/table.svg @@ -0,0 +1,53 @@ + +image/svg+xml \ No newline at end of file diff --git a/app/assets/javascripts/shared-ember-helpers/translation.js.coffee b/app/assets/javascripts/shared-ember-helpers/translation.js.coffee index 3c9e3e6e..6c53e898 100644 --- a/app/assets/javascripts/shared-ember-helpers/translation.js.coffee +++ b/app/assets/javascripts/shared-ember-helpers/translation.js.coffee @@ -2,6 +2,6 @@ Ember.Handlebars.helper 't', (path, params..., options)-> toptions = options.hash if params.length and typeof(params[0].serialize) is 'function' $.extend toptions, params[0].serialize() - text = t(path, options.hash) - tag = if options.hash.bare then text else "#{text}" + text = t(path, toptions) + tag = if options.hash.bare then text else "#{text}" tag.htmlSafe() diff --git a/app/assets/javascripts/supplier/app/controllers/application_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/application_controller.js.coffee index fb96570c..f6a71dcf 100644 --- a/app/assets/javascripts/supplier/app/controllers/application_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/application_controller.js.coffee @@ -4,16 +4,16 @@ App.ApplicationController = Ember.Controller.extend #success = (supplier)=> ## A supplier record with id current and with the content of the returned supplier is created ## at the moment remove the dummy supplier, this should be resolved by Ember eventually - #if error_supplier = @store.all('supplier').findBy('id', 'current') + #if error_supplier = @store.peekAll('supplier').findBy('id', 'current') #error_supplier.eraseRecord() #@set 'supplier', supplier #error = (emberError)=> - #if error_supplier = @store.all('supplier').findBy('id', 'current') + #if error_supplier = @store.peekAll('supplier').findBy('id', 'current') #error_supplier.eraseRecord() #@set 'supplier', null - #@store.find('supplier', 'current').then success, error - # @set 'supplier', @store.find('supplier', supplier_id) + #@store.findRecord('supplier', 'current').then success, error + # @set 'supplier', @store.findRecord('supplier', supplier_id) #current_employee: (-> @get('employee') ).property('employee') actions: signOut: -> diff --git a/app/assets/javascripts/supplier/app/controllers/index_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/index_controller.js.coffee index ffb4b21f..339a9850 100644 --- a/app/assets/javascripts/supplier/app/controllers/index_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/index_controller.js.coffee @@ -2,9 +2,9 @@ App.IndexController = Ember.Controller.extend needs: ['application'] show_lists: true show_orders: true - lists: (-> @store.all('list')).property() - orders: (-> @store.all('order')).property() - sections: (-> @store.all('section')).property() + lists: (-> @store.peekAll('list')).property() + orders: (-> @store.peekAll('order')).property() + sections: (-> @store.peekAll('section')).property() active_section: Ember.computed.alias 'globals.active_section' active_lists: (-> if section_id = @get('active_section.id') diff --git a/app/assets/javascripts/supplier/app/controllers/lists_index_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/lists_index_controller.js.coffee index 7056ab86..e6eab2c5 100644 --- a/app/assets/javascripts/supplier/app/controllers/lists_index_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/lists_index_controller.js.coffee @@ -2,12 +2,12 @@ App.ListsIndexController = Ember.Controller.extend loading: true dateChanged: (-> @set 'loading', true - lists = if @get('date') then @store.find('list', date: @get('date')) else @store.find('list') + lists = if @get('date') then @store.findAll('list', date: @get('date')) else @store.findAll('list') lists.then => @set('loading', false) @set 'model', lists ).observes('date') lists: (-> - return @store.all('list') unless date = @get('date') + return @store.peekAll('list') unless date = @get('date') @store.filter('list', (l)-> return false unless list_date = l.get('created_at') list_date = list_date.toISOString().substring(0,10) if typeof(list_date) is 'object' diff --git a/app/assets/javascripts/supplier/app/controllers/menu_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/menu_controller.js.coffee index 7b36db94..017643be 100644 --- a/app/assets/javascripts/supplier/app/controllers/menu_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/menu_controller.js.coffee @@ -1,7 +1,7 @@ App.MenuController = Ember.Controller.extend needs: ['application'] product_code_filter: '' - product_categories: (-> @store.all('product_category')).property() + product_categories: (-> @store.peekAll('product_category')).property() filter: null sorted_product_categories: (-> list = @get('product_categories') diff --git a/app/assets/javascripts/supplier/app/controllers/modals/add_section_element_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/modals/add_section_element_controller.js.coffee index 6110ecbd..e1a5974e 100644 --- a/app/assets/javascripts/supplier/app/controllers/modals/add_section_element_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/modals/add_section_element_controller.js.coffee @@ -1,6 +1,6 @@ App.modals.AddSectionElementController = @App.modals.BaseController.extend title_path: 'section_element.modal.title' - svg_elements: (-> @store.find 'svg_element').property() + svg_elements: (-> @store.findAll 'svg_element').property() actions: addSectionElement: (svg_element)-> section_element = @store.createRecord 'section-element' diff --git a/app/assets/javascripts/supplier/app/controllers/modals/product_category_move_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/modals/product_category_move_controller.js.coffee index fd7c4131..9e34c769 100644 --- a/app/assets/javascripts/supplier/app/controllers/modals/product_category_move_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/modals/product_category_move_controller.js.coffee @@ -18,7 +18,8 @@ App.modals.ProductCategoryMoveController = App.modals.BaseController.extend @send 'close' product_categories: (-> - @store.all('product_category').filter( (pc) => pc.id isnt @get('model.id')).sortBy('position') + # do not return self, since place below should not include self option + @store.peekAll('product_category').rejectBy('id', @get('model.id')).sortBy('position') ).property('model.id') sortableUpdate: (ids)-> diff --git a/app/assets/javascripts/supplier/app/controllers/modals/select_employee_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/modals/select_employee_controller.js.coffee index d09ddf39..88809706 100644 --- a/app/assets/javascripts/supplier/app/controllers/modals/select_employee_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/modals/select_employee_controller.js.coffee @@ -2,7 +2,7 @@ App.modals.SelectEmployeeController = App.modals.BaseController.extend employee: null title_path: 'employee.select_modal.title' employees: (-> @get('all_employees').filterBy('active') ).property('all_employees.@each.active') - all_employees: (-> @store.all('employee')).property() + all_employees: (-> @store.peekAll('employee')).property() actions: selectEmployee: (employee)-> @set 'employee', employee diff --git a/app/assets/javascripts/supplier/app/controllers/orders_display_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/orders_display_controller.js.coffee index 21a2b69d..5954624f 100644 --- a/app/assets/javascripts/supplier/app/controllers/orders_display_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/orders_display_controller.js.coffee @@ -1,7 +1,7 @@ App.OrdersDisplayController = Ember.Controller.extend needs: ['application'] active_section: null - sections: (-> @store.all('section') ).property() + sections: (-> @store.peekAll('section') ).property() orders: Ember.computed 'model.[]', 'active_section.id', -> orders = @get('model').filterBy('needs_supplier_attention') orders = orders.filterBy('section.id', id) if id = @get('active_section.id') diff --git a/app/assets/javascripts/supplier/app/controllers/schedule_controller.js.coffee b/app/assets/javascripts/supplier/app/controllers/schedule_controller.js.coffee index b0746e75..c70f4490 100644 --- a/app/assets/javascripts/supplier/app/controllers/schedule_controller.js.coffee +++ b/app/assets/javascripts/supplier/app/controllers/schedule_controller.js.coffee @@ -1,6 +1,6 @@ App.ScheduleController = Ember.Controller.extend event_changed: (event)-> - @store.find('employee-shift', event.id).then (employee_shift)-> + @store.findRecord('employee-shift', event.id).then (employee_shift)-> employee_shift.set 'start_from', event.start employee_shift.set 'end_on', event.end employee_shift.save() diff --git a/app/assets/javascripts/supplier/app/modifications/controller_modifications.js.coffee b/app/assets/javascripts/supplier/app/modifications/controller_modifications.js.coffee index db5304f9..0cb6efeb 100644 --- a/app/assets/javascripts/supplier/app/modifications/controller_modifications.js.coffee +++ b/app/assets/javascripts/supplier/app/modifications/controller_modifications.js.coffee @@ -10,7 +10,7 @@ ControllerExtensions = Ember.Mixin.create options.model ||= Ember.Object.create() @send "openModal", name, options - all_sections: (-> @store.all('section')).property() + all_sections: (-> @store.peekAll('section')).property() #current_employee: (-> @get('controllers.application.employee') ).property('controllers.application.employee') Ember.Controller.reopen ControllerExtensions diff --git a/app/assets/javascripts/supplier/app/modifications/model_extensions.js.coffee b/app/assets/javascripts/supplier/app/modifications/model_extensions.js.coffee index 70fc6d78..6b12eec5 100644 --- a/app/assets/javascripts/supplier/app/modifications/model_extensions.js.coffee +++ b/app/assets/javascripts/supplier/app/modifications/model_extensions.js.coffee @@ -14,7 +14,7 @@ DS.Model.reopen DS.Model.reopenClass findCached: (id)-> return null unless id - @store.all(@typeKey).findProperty('id', id) + @store.peekRecord(@typeKey, id) updateOrAdd: (attributes)-> if cached = @findCached(attributes.id) @@ -23,12 +23,12 @@ DS.Model.reopenClass relation = relation[0] if relation.kind == 'belongsTo' if id = attributes["#{relation.name}_id"] - @store.find(relation.name, id).then (relation_object)-> + @store.findAll(relation.name, id).then (relation_object)-> cached.set relation.name, relation_object cached.setProperties attributes cached else - #@store.find(@, attributes.id) + #@store.findRecord(@, attributes.id) @pushByAttriburtes(attributes) pushByAttriburtes: (attributes, options = {})-> #store = @all().get('store') @@ -58,7 +58,7 @@ DS.Model.reopenClass #relation = relation[0] #if relation.kind == 'belongsTo' and id = attributes["#{relation.name}_id"] #attributes[relation.name] = id - #promises.push @store.find(relation.name, id) + #promises.push @store.findRecord(relation.name, id) #association_names.push relation.name #Ember.RSVP.all(promises).then (records)-> #for record, i in records diff --git a/app/assets/javascripts/supplier/app/router.js.coffee b/app/assets/javascripts/supplier/app/router.js.coffee index 41c64ae1..a4121975 100644 --- a/app/assets/javascripts/supplier/app/router.js.coffee +++ b/app/assets/javascripts/supplier/app/router.js.coffee @@ -20,7 +20,7 @@ App.Router.map -> @route 'menu' @route 'settings' @route 'schedule' - @route 'my_account' + @route 'my-account' @route 'my-schedule' @route 'empty' #@resource 'lists', queryParams: ['state'] diff --git a/app/assets/javascripts/supplier/app/routes/application_route.js.coffee.erb b/app/assets/javascripts/supplier/app/routes/application_route.js.coffee.erb index fb5d687d..7b208b2a 100644 --- a/app/assets/javascripts/supplier/app/routes/application_route.js.coffee.erb +++ b/app/assets/javascripts/supplier/app/routes/application_route.js.coffee.erb @@ -3,18 +3,18 @@ App.ApplicationRoute = Ember.Route.extend # Preload only active lists and orders @supplier = @store.push 'supplier', supplier_object @employee = @store.push 'employee', employee_object - #@product_categories = @store.find 'product_category' - #@sections = @store.find 'section' + #@product_categories = @store.findAll 'product_category' + #@sections = @store.findAll 'section' #Ember.RSVP.all([@product_categories, @sections]).then (results)=> @supplier.reload().then => - @store.find('list', state: 'active') #.then (lists) -> lists.invoke('get', 'table') - #@lists = @store.all 'list' - # product_categories = controller.set 'product_categories', @store.all('product_category') - #@store.find 'order', state: 'active' included in list + @store.findAll('list', state: 'active') #.then (lists) -> lists.invoke('get', 'table') + #@lists = @store.peekAll 'list' + # product_categories = controller.set 'product_categories', @store.peekAll('product_category') + #@store.findAll 'order', state: 'active' included in list setupController: (controller)-> controller.set 'globals.current_supplier', @supplier controller.set 'globals.current_employee', @employee - # @set 'supplier', @store.find('supplier', supplier_id) + # @set 'supplier', @store.findRecord('supplier', supplier_id) #controller.set 'sections', @sections #controller.set 'product_categories', @product_categories @@ -79,7 +79,7 @@ App.ApplicationRoute = Ember.Route.extend cancel: options.cancel ok: options.ok newOrder: (order_id)-> - @store.findById('order', order_id).then (order)=> + @store.peekRecord('order', order_id).then (order)=> controller = @controllerFor('application') return if @get('globals.active_section.id') and order.get('section.id') isnt @get('globals.active_section.id') $('body').addClass('new-order') @@ -122,7 +122,7 @@ App.ApplicationRoute = Ember.Route.extend @store.pushPayload('list', data) # Fix broken reference. TODO: remove this when single source of # truth is working - #@store.findById('list', data.list.id).then (list)-> + #@store.peekRecord('list', data.list.id).then (list)-> # list.get('table').then (table)->table.set('active_list', list) list_changed_table: (data) -> @store.pushPayload('list', lists: [data.list]) list_closed: (data) -> list.isClosed() if list = @store.getById('list', data.id) diff --git a/app/assets/javascripts/supplier/app/routes/employees_route.js.coffee b/app/assets/javascripts/supplier/app/routes/employees_route.js.coffee index 0d9a8596..7cf0579a 100644 --- a/app/assets/javascripts/supplier/app/routes/employees_route.js.coffee +++ b/app/assets/javascripts/supplier/app/routes/employees_route.js.coffee @@ -1,5 +1,5 @@ App.EmployeesRoute = Ember.Route.extend - model: -> @store.all 'employee' + model: -> @store.peekAll 'employee' actions: newEmployee: -> employee = @store.createRecord('employee') diff --git a/app/assets/javascripts/supplier/app/routes/index_route.js.coffee b/app/assets/javascripts/supplier/app/routes/index_route.js.coffee index 75158ff9..63bdf776 100644 --- a/app/assets/javascripts/supplier/app/routes/index_route.js.coffee +++ b/app/assets/javascripts/supplier/app/routes/index_route.js.coffee @@ -7,15 +7,15 @@ # #lists: @store.filter 'list', (l)-> l.get('state') == 'active' # DOES NOT WORK!!!! (yet) # # use filter to create a scope on all the records # #lists: @store.filter 'list', -> true - # lists: @store.all 'list' - # # mayby @store.all 'list' will work better!!!! (2014-04-24 a more experienced benjamin :) + # lists: @store.peekAll 'list' + # # mayby @store.peekAll 'list' will work better!!!! (2014-04-24 a more experienced benjamin :) # #orders: @store.filter 'order', -> true - # orders: @store.all 'order' - # sections: @store.all 'section' + # orders: @store.peekAll 'order' + # sections: @store.peekAll 'section' # setupController: (controller, model)-> # controller.set('model', model) # #$('#section_selector').on 'change', (-> controller.set('sectionId', $(this).val())) - # #controller.set 'lists', @store.all('list') + # #controller.set 'lists', @store.peekAll('list') # #controller.set 'lists', App.List.all() #.filterProperty('state', 'active') # #controller.set 'orders', App.Order.all() # #controller.set 'lists', model.get('lists') diff --git a/app/assets/javascripts/supplier/app/routes/lists_index_route.js.coffee b/app/assets/javascripts/supplier/app/routes/lists_index_route.js.coffee index 2ae0e8d3..cd2efce2 100644 --- a/app/assets/javascripts/supplier/app/routes/lists_index_route.js.coffee +++ b/app/assets/javascripts/supplier/app/routes/lists_index_route.js.coffee @@ -1,4 +1,4 @@ App.ListsIndexRoute = Ember.Route.extend - #model: -> @store.find 'list' + #model: -> @store.findAll 'list' setupController: (controller, model)-> controller.set 'date', (new Date()).toISOString().substr(0,10) unless controller.get('date') diff --git a/app/assets/javascripts/supplier/app/routes/orders_display_route.js.coffee b/app/assets/javascripts/supplier/app/routes/orders_display_route.js.coffee index 70d82868..990749ce 100644 --- a/app/assets/javascripts/supplier/app/routes/orders_display_route.js.coffee +++ b/app/assets/javascripts/supplier/app/routes/orders_display_route.js.coffee @@ -1,2 +1,2 @@ App.OrdersDisplayRoute = Ember.Route.extend - model: -> @store.all('order') + model: -> @store.peekAll('order') diff --git a/app/assets/javascripts/supplier/app/routes/section_route.js.coffee b/app/assets/javascripts/supplier/app/routes/section_route.js.coffee index be30ba83..b7d19892 100644 --- a/app/assets/javascripts/supplier/app/routes/section_route.js.coffee +++ b/app/assets/javascripts/supplier/app/routes/section_route.js.coffee @@ -1,4 +1,4 @@ App.SectionRoute = Ember.Route.extend - model: (params) -> @store.findById 'section', params.section_id + model: (params) -> @store.peekRecord 'section', params.section_id renderTemplate: -> @render 'section' diff --git a/app/assets/javascripts/supplier/app/routes/sections_route.js.coffee b/app/assets/javascripts/supplier/app/routes/sections_route.js.coffee index 61a041de..9a0dd9d9 100644 --- a/app/assets/javascripts/supplier/app/routes/sections_route.js.coffee +++ b/app/assets/javascripts/supplier/app/routes/sections_route.js.coffee @@ -1,8 +1,8 @@ App.SectionsRoute = Ember.Route.extend beforeModel: -> - @store.find 'section-element' - @store.find 'section-area' - model: -> @store.all 'section' + @store.findAll 'section-element' + @store.findAll 'section-area' + model: -> @store.peekAll 'section' # setupController: (controller, collection) -> # controller.set 'content', collection diff --git a/app/assets/javascripts/supplier/app/routes/tables_index_route.js.coffee b/app/assets/javascripts/supplier/app/routes/tables_index_route.js.coffee index ce01ba00..b4065acb 100644 --- a/app/assets/javascripts/supplier/app/routes/tables_index_route.js.coffee +++ b/app/assets/javascripts/supplier/app/routes/tables_index_route.js.coffee @@ -1,2 +1,2 @@ App.TablesIndexRoute = Ember.Route.extend - model: -> @store.all('table') + model: -> @store.peekAll('table') diff --git a/app/assets/javascripts/supplier/app/templates/components/dropdown-link.emblem b/app/assets/javascripts/supplier/app/templates/components/dropdown-link.emblem index cd049aeb..3c16cc49 100644 --- a/app/assets/javascripts/supplier/app/templates/components/dropdown-link.emblem +++ b/app/assets/javascripts/supplier/app/templates/components/dropdown-link.emblem @@ -3,6 +3,5 @@ if gravatar else span.dropdown-trigger.button.tiny.dropdown span.dropdown-trigger-text= view.title - /span.dropdown-trigger-icon .dropdown-list-container = yield diff --git a/app/assets/javascripts/supplier/app/templates/global/_side_menu.emblem b/app/assets/javascripts/supplier/app/templates/global/_side_menu.emblem index 261c9aae..8a8edc95 100644 --- a/app/assets/javascripts/supplier/app/templates/global/_side_menu.emblem +++ b/app/assets/javascripts/supplier/app/templates/global/_side_menu.emblem @@ -3,32 +3,37 @@ li.title: h3= globals.current_supplier.name li = link-to 'index' - span.fa.fa-list-alt + span.icon.dashboard = t 'dashboard.title' li = link-to 'menu' - span.fa.fa-coffee + span.icon.menu = t 'top_menu.menu' li = link-to 'sections' - span.fa.fa-th-large + span.icon.sections = t 'models.plural.section' li = link-to 'tables' - span.fa.fa-square-o + span.icon.tables = t 'models.plural.table' li - = link-to 'employees' - span.fa.fa-users - = t 'models.plural.employee' + = link-to 'lists' + span.icon.lists + = t 'models.plural.list' + can "manage" "employees" + li + = link-to 'employees' + span.icon.employees + = t 'models.plural.employee' li = link-to 'schedule' - span.fa.fa-calendar + span.icon.schedule = t 'top_menu.schedule' can "manage" globals.current_supplier li =link-to 'settings' class="supplier-settings-link" - span.settings-icon + span.icon.settings span= t 'supplier.settings' if globals.current_supplier.open li: a.supplier-close-shop{action "markSupplierClosed"}= t 'supplier.close_for_orders' diff --git a/app/assets/javascripts/supplier/app/templates/global/_top_menu.emblem b/app/assets/javascripts/supplier/app/templates/global/_top_menu.emblem index 76193ff5..b2e6fe88 100644 --- a/app/assets/javascripts/supplier/app/templates/global/_top_menu.emblem +++ b/app/assets/javascripts/supplier/app/templates/global/_top_menu.emblem @@ -6,32 +6,34 @@ header.top-menu = link-to 'index' class="top-menu-root" = image_tag "icons/logo-small.png" = link-to "menu" class="top-menu-menu" + span.icon.menu = t 'top_menu.menu' = link-to "sections" class="top-menu-sections" + span.icon.sections = t 'models.plural.section' = link-to "tables" class="top-menu-tables" + span.icon.tables = t 'models.plural.table' = link-to "lists" class="top-menu-lists" + span.icon.lists = t 'models.plural.list' - = link-to "employees" class="top-menu-employees" - = t 'models.plural.employee' + can "manage" "employees" + = link-to "employees" class="top-menu-employees" + span.icon.employees + = t 'models.plural.employee' = link-to "schedule" class="top-menu-schedule" + span.icon.schedule = t 'top_menu.schedule' = dropdown-link gravatar=globals.current_employee.email class="current-employee-nav" ul li - li= link-to 'my_account': span.current-employee-my-account-icon= t 'current_employee.my_account.link' + li= link-to 'my-account': span.current-employee-my-account-icon= t 'current_employee.my_account.link' li= link-to 'my-schedule': span.current-employee-my-schedule-icon= t 'current_employee.my_schedule.link' li: a{action "signOut"}: span.sign-out-icon= t 'supplier.sign_out' if globals.current_supplier.open - /a.supplier-is-closed-indication.is-open{ action "markSupplierClosed" }: span.fa.fa-beer.fa-2x a.supplier-availability.currently-open{ action "markSupplierClosed" }: span Open else a.supplier-availability.currently-closed{ action "markSupplierOpen" }: span Closed - /a.supplier-is-closed-indication.is-closed{ action "markSupplierOpen" } - /span.fa-stack.fa-lg - /i.fa.fa-beer.fa-stack-1x - /i.fa.fa-ban.fa-stack-2x.text-alert .supplier-name= globals.current_supplier.name .extra-info{action "showSupplierStatusInfo"} .supplier-info-row diff --git a/app/assets/javascripts/supplier/app/templates/my_account.emblem b/app/assets/javascripts/supplier/app/templates/my-account.emblem similarity index 100% rename from app/assets/javascripts/supplier/app/templates/my_account.emblem rename to app/assets/javascripts/supplier/app/templates/my-account.emblem diff --git a/app/assets/javascripts/supplier/app/templates/schedule.emblem b/app/assets/javascripts/supplier/app/templates/schedule.emblem index 752bdeac..a0c199f0 100644 --- a/app/assets/javascripts/supplier/app/templates/schedule.emblem +++ b/app/assets/javascripts/supplier/app/templates/schedule.emblem @@ -1,2 +1,3 @@ .row: .small-12.columns + h2= t 'schedule.title' globals.current_supplier #schedule-placeholder diff --git a/app/assets/javascripts/supplier/app/templates/section.emblem b/app/assets/javascripts/supplier/app/templates/section.emblem index c83943ad..63c565b9 100644 --- a/app/assets/javascripts/supplier/app/templates/section.emblem +++ b/app/assets/javascripts/supplier/app/templates/section.emblem @@ -18,8 +18,8 @@ ul li: a{action "addTables"}: span.section-add-tables-icon=t 'section.add_tables.button_label' li: a{action "arrangeTables"}: span.section-arrange-tables-icon=t 'section.arrange_tables.modal.title' - li: a{action "addSectionElement"}: span.section-add-section-element-icon= t 'section_element.add_button' - li: a{action "addSectionArea"}: span.section-add-section-area-icon= t 'section_area.add_button' + li: a{action "addSectionElement"}: span.icon.section-elements= t 'section_element.add_button' + li: a{action "addSectionArea"}: span.icon.section-areas= t 'section_area.add_button' li= qr-codes-link section=content: span.qr-icon= t 'table.print_qr_codes' li: a.section-destroy{action "destroySection"}: span.section-remove-icon=t 'helpers.links.destroy' a.section-normal-mode-button{ action "finishEditable" }: span diff --git a/app/assets/javascripts/supplier/app/views/my-schedule.js.coffee b/app/assets/javascripts/supplier/app/views/my-schedule.js.coffee index 0cdb0b71..c49ce825 100644 --- a/app/assets/javascripts/supplier/app/views/my-schedule.js.coffee +++ b/app/assets/javascripts/supplier/app/views/my-schedule.js.coffee @@ -8,7 +8,7 @@ App.MyScheduleView = Ember.View.extend header: left: 'prev,next,today' center: 'title' - right: 'month,agendaWeek,agendaDay' + right: 'agendaDay,agendaWeek,month' selectable: false #selectHelper: true #select: (start, end)=> diff --git a/app/assets/javascripts/supplier/app/views/schedule.js.coffee b/app/assets/javascripts/supplier/app/views/schedule.js.coffee index 0baeef26..440c9acd 100644 --- a/app/assets/javascripts/supplier/app/views/schedule.js.coffee +++ b/app/assets/javascripts/supplier/app/views/schedule.js.coffee @@ -4,14 +4,40 @@ App.ScheduleView = Ember.View.extend placeholder = @$('#schedule-placeholder') controller = @get('controller') events = @get('globals.current_supplier.employee_shifts').filter((employee_shift) -> employee_shift.get('employee.active') ).map( (employee_shift)->employee_shift.get('calendar_event') ) - placeholder.fullCalendar + editable = !!controller.get('globals.current_employee.manager') + fullCalendarOptions = header: left: 'prev,next,today' center: 'title' - right: 'month,agendaWeek,agendaDay' - selectable: true - selectHelper: true - select: (start, end)=> + right: 'agendaDay,agendaWeek,month' + selectable: editable + selectHelper: editable + editable: editable + defaultView: 'agendaWeek' + events: events + timezone: 'UTC' + eventDrop: controller.event_changed.bind(controller) + eventResize: controller.event_changed.bind(controller) + dayClick: (date, jsEvent, view)-> + jsEvent.preventDefault() + if view.type is 'month' + placeholder.fullCalendar('changeView', 'agendaDay') + placeholder.fullCalendar('gotoDate', date) + false + eventClick: (event)-> + return unless editable + controller.editEvent event.id, + save: (shift)-> + placeholder.fullCalendar('removeEvents', [event.id]) + placeholder.fullCalendar('renderEvent', shift.get('calendar_event'), true) + destroy: (shift)-> + placeholder.fullCalendar('removeEvents', [event.id]) + timeFormat: 'H(:mm)' + axisFormat: 'H:mm' + lang: moment.locale() + if editable + fullCalendarOptions.select = (start, end, jsEvent, view) => + return if view.type is 'month' format = 'dddd h:mm' controller.modal 'select_employee', ok: -> @@ -22,22 +48,5 @@ App.ScheduleView = Ember.View.extend shift.save().then -> placeholder.fullCalendar('renderEvent', shift.get('calendar_event'), true) header: t('employee_shift.time_window', start: start.format(format), end: end.format(format)) - editable: true - defaultView: 'agendaWeek' - events: events - timezone: 'UTC' - eventDrop: controller.event_changed.bind(controller) - eventResize: controller.event_changed.bind(controller) - eventClick: (event)-> - controller.editEvent event.id, - save: (shift)-> - placeholder.fullCalendar('removeEvents', [event.id]) - placeholder.fullCalendar('renderEvent', shift.get('calendar_event'), true) - destroy: (shift)-> - placeholder.fullCalendar('removeEvents', [event.id]) - timeFormat: 'H(:mm)' - axisFormat: 'H:mm' - lang: moment.locale() - - + placeholder.fullCalendar fullCalendarOptions diff --git a/app/assets/javascripts/supplier/app/views/side_menu_item.js.coffee b/app/assets/javascripts/supplier/app/views/side_menu_item.js.coffee index c1f27970..4b9ad3f6 100644 --- a/app/assets/javascripts/supplier/app/views/side_menu_item.js.coffee +++ b/app/assets/javascripts/supplier/app/views/side_menu_item.js.coffee @@ -1,14 +1,14 @@ -App.SideMenuItemView = Ember.View.extend - classNames: 'menu-list-item' - classNameBindings: ['active'] - click: -> - if @route_param - @get('controller').transitionToRoute(@route, @route_param) - else - @get('controller').transitionToRoute(@route) - active: (-> - if @get('controller.currentPath') == @route then 'active' else '' - ).property('controller.currentPath') - init: -> - @templateName = "side_menu/#{@route}" - @_super() +#App.SideMenuItemView = Ember.View.extend + #classNames: 'menu-list-item' + #classNameBindings: ['active'] + #click: -> + #if @route_param + #@get('controller').transitionToRoute(@route, @route_param) + #else + #@get('controller').transitionToRoute(@route) + #active: (-> + #if @get('controller.currentPath') == @route then 'active' else '' + #).property('controller.currentPath') + #init: -> + #@templateName = "side_menu/#{@route}" + #@_super() diff --git a/app/assets/javascripts/translations.js.coffee.erb b/app/assets/javascripts/translations.js.coffee.erb index 2e668c6f..d3dce2a4 100644 --- a/app/assets/javascripts/translations.js.coffee.erb +++ b/app/assets/javascripts/translations.js.coffee.erb @@ -14,6 +14,7 @@ errors: <%= I18n.t('errors', locale: :nl).to_json %> date: <%= {day_name: Hash[Date::DAYNAMES.map(&:downcase).zip(I18n.t('date.day_names', locale: :nl))]}.to_json %> + @day_minutes_to_time = (minutes)-> return "" unless minutes [("0" + Math.floor(minutes/60)).substr(-2,2), ("0" + Math.floor(minutes%60)).substr(-2,2)].join(":") diff --git a/app/assets/javascripts/user/app/templates/global/_side_menu.emblem b/app/assets/javascripts/user/app/templates/global/_side_menu.emblem index cb6b681e..e5e738fa 100644 --- a/app/assets/javascripts/user/app/templates/global/_side_menu.emblem +++ b/app/assets/javascripts/user/app/templates/global/_side_menu.emblem @@ -28,7 +28,7 @@ span= t 'models.plural.list' li =link-to 'settings' - span.settings-icon + span.icon.settings span= t 'settings.title' li =link-to 'about' class="side-menu-about" diff --git a/app/assets/stylesheets/supplier/foundation1/_ember_dropdown.sass b/app/assets/stylesheets/supplier/foundation1/_ember_dropdown.sass index a814325f..064e471a 100644 --- a/app/assets/stylesheets/supplier/foundation1/_ember_dropdown.sass +++ b/app/assets/stylesheets/supplier/foundation1/_ember_dropdown.sass @@ -11,7 +11,7 @@ @extend .fa-lg @extend .fa-caret-left margin-right: 6px - + .dropdown-list-container $border-size: 1px $arrow-size: 7px @@ -63,6 +63,9 @@ padding: 4px 7px &:hover background-color: #ddd + &.active + color: $current-color + background-color: #444 span.section-add-tables-icon @extend .fa @extend .fa-plus-square @@ -77,17 +80,9 @@ @extend .fa, .fa-trash-o span padding-left: 7px - span.section-add-section-element-icon - @extend .fa, .fa-image - span - padding-left: 7px - span.section-add-section-area-icon - @extend .fa, .fa-square - span - padding-left: 7px - span.settings-icon - @extend .fa, .fa-gear + span.icon span + // translation span padding-left: 7px span.sign-out-icon @extend .fa, .fa-sign-out diff --git a/app/assets/stylesheets/supplier/foundation1/_qicons.sass b/app/assets/stylesheets/supplier/foundation1/_qicons.sass index 8ee22e9a..8b2280b4 100644 --- a/app/assets/stylesheets/supplier/foundation1/_qicons.sass +++ b/app/assets/stylesheets/supplier/foundation1/_qicons.sass @@ -1,43 +1,48 @@ -@import font-awesome span.icon @extend .fa - @extend .fa-lg + //@extend .fa-lg + &.dashboard + @extend .fa-list-alt + &.menu + @extend .fa-coffee &.needs-help @extend .fa-bell &.needs-payment @extend .fa-money + &.sections + @extend .fa-th-large + &.tables + //@extend .fa-pause + width: 16px + height: 16px + background-image: image-url("icons/table-white.svg") + &.lists + @extend .fa-sticky-note-o + &.employees + @extend .fa-users + &.schedule + @extend .fa-calendar + &.settings + @extend .fa-gears + + &.section-areas + @extend .fa-object-group + &.section-elements + @extend .fa-image +// CUSTOM ICONS +.top-menu + .icon.tables + background-image: image-url("icons/table-green.svg") +.active + span.icon + &.tables + background-image: image-url("icons/table-current.svg") +.side-menu + .icon +// STACK FIXES .fa-stack .revoke color: #b94a48 - -.button-icon - display: inline-block - width: 2em - height: 2em - line-height: 2em - vertical-align: middle - background-repeat: no-repeat - background-position: center center -.mark-order-active .button-icon - background-image: image-url('supplier/order-check.png') -.mark-order-delivered .button-icon - background-image: image-url('supplier/order-doublecheck.png') - -//.fa-shifted-stack - @extend .fa-stack -//.fa-shifted-stack - position: relative - display: inline-block - width: 2.5em - height: 2em - //line-height: 2em - vertical-align: middle - .fa - position: absolute - width: 100% - left: 20% - &:first-child - left: -10% .fa-shifted-stack .fa-shifted:last-child margin-left: -1.15rem button, .button diff --git a/app/assets/stylesheets/supplier/foundation1/application.sass b/app/assets/stylesheets/supplier/foundation1/application.sass index 9f37ca61..744813b2 100644 --- a/app/assets/stylesheets/supplier/foundation1/application.sass +++ b/app/assets/stylesheets/supplier/foundation1/application.sass @@ -2,7 +2,9 @@ //= require_directory ../base1-shared //= require pickdate //= require fullcalendar +// bourbon for animation @import bourbon +@import font-awesome @import ./qconstants @import ./foundation_and_overrides @import ./mixins diff --git a/app/assets/stylesheets/supplier/foundation1/components/_nav_main.sass b/app/assets/stylesheets/supplier/foundation1/components/_nav_main.sass index f65e7855..89a5e06c 100644 --- a/app/assets/stylesheets/supplier/foundation1/components/_nav_main.sass +++ b/app/assets/stylesheets/supplier/foundation1/components/_nav_main.sass @@ -21,33 +21,40 @@ header.top-menu float: left @media #{$medium-up} padding-left: 14px + a + span.icon + display: none + @media #{$large-up} + a + span.icon + display: inline-block + margin-right: 4px a padding-left: 16px - .menu-list-item - margin-left: 20px - cursor: pointer - border: 0.08em solid #eee - padding: 5px - border-radius: 0.1em - display: inline-block - line-height: 1em - margin-top: 10px - color: #999 - &.active - color: yellow - border-color: yellow - &.callout - color: #f70 - border-color: #f70 - @media #{$medium-only} - margin-left: 8px - @media #{$small-only} - margin-left: 5px - .supplier-is-closed-indication - float: right - margin-right: 8px - &.is-open - line-height: 60px + &.active + text-decoration: underline + font-weight: bold + color: $current-color + @media #{$small-only} + span + display: none + &.icon + display: inline-block + &.active + span.icon + color: $current-color + .top-menu-root + display: inline-block + line-height: normal + padding: 4px + //margin-left: 14px + border-radius: 4px + &.active + background-color: $current-color + img + display: inline-block + margin: 0 + padding: 0 .supplier-name display: inline-block float: right diff --git a/app/assets/stylesheets/supplier/foundation1/components/_nav_side.sass b/app/assets/stylesheets/supplier/foundation1/components/_nav_side.sass index e837ce20..bc809bab 100644 --- a/app/assets/stylesheets/supplier/foundation1/components/_nav_side.sass +++ b/app/assets/stylesheets/supplier/foundation1/components/_nav_side.sass @@ -23,9 +23,8 @@ .title border-bottom: 1px solid #aaa margin-bottom: 4px - .settings-icon + .icon.settings margin-right: 18px - @extend .fa, .fa-gears .about-mozo-icon margin-right: 18px @extend .fa, .fa-info-circle @@ -34,6 +33,8 @@ margin-right: 18px .fa margin-right: 18px + a.active + color: $current-color .supplier-close-shop +alert($bg: $alert-color, $radius: true) padding: 3px diff --git a/app/controllers/suppliers/suppliers_controller.rb b/app/controllers/suppliers/suppliers_controller.rb index a442bfc7..0c5bbf11 100644 --- a/app/controllers/suppliers/suppliers_controller.rb +++ b/app/controllers/suppliers/suppliers_controller.rb @@ -18,7 +18,7 @@ module Suppliers def switch_to @switch_supplier = Supplier.find(params[:id]) session[:supplier_id] = params[:id] if @switch_supplier.employee_ids.include? current_employee.id - redirect_to supplier_root_path(anchor: '/my_account') + redirect_to supplier_root_path(anchor: '/my-account') end def mark_as_open diff --git a/config/locales/models.en.yml b/config/locales/models.en.yml index d20a9da7..11459e3d 100644 --- a/config/locales/models.en.yml +++ b/config/locales/models.en.yml @@ -5,7 +5,7 @@ en: supplier: Restaurant new_supplier: New restaurant table: Table - list: Tap + list: Tab product: Product order: Order product_category: Product category @@ -23,7 +23,7 @@ en: supplier: Restaurants new_supplier: New restaurants table: Tables - list: Taps + list: Tabs product: Products order: Orders product_category: Product categories @@ -68,7 +68,7 @@ en: height: Length created_at: Created supplier: - name: Name + name: ${models.supplier} name email: 'Email' password: 'Password' password_confirmation: 'Confirmation' diff --git a/config/locales/models.nl.yml b/config/locales/models.nl.yml index 19fc4159..aca1a5d7 100644 --- a/config/locales/models.nl.yml +++ b/config/locales/models.nl.yml @@ -67,7 +67,7 @@ nl: height: Lengte created_at: Aangemaakt supplier: - name: Naam + name: ${models.supplier} naam email: 'E-mail' password: 'Wachtwoord' password_confirmation: 'Bevestiging' diff --git a/config/locales/supplier.en.yml b/config/locales/supplier.en.yml index e0418909..f4fae662 100644 --- a/config/locales/supplier.en.yml +++ b/config/locales/supplier.en.yml @@ -245,3 +245,5 @@ en: title: My schedule link: My schedule + schedule: + title: Schedule for %{name} diff --git a/docker-compose.yml b/docker-compose.yml index 8a0b8509..cc2dfbe4 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -12,6 +12,8 @@ counters: volumes: - ./config:/usr/src/app/config command: development + links: + - db faye: build: faye net: host