From 08a8de0edc5260fa4a7699625969995929e21f9e Mon Sep 17 00:00:00 2001 From: Benjamin ter Kuile Date: Fri, 28 Aug 2015 20:29:30 +0200 Subject: [PATCH] End for day commit --- app/assets/javascripts/user/app/app.js.coffee | 2 +- .../user/app/components/list-order.js.coffee | 4 ++-- .../user/app/components/lists/index-entry.js.coffee | 7 +++++++ .../menu-product-categories-component.js.coffee | 2 +- .../user/app/components/menu/item.js.coffee | 12 ++++++++++++ .../components/menu/item/product_orders.js.coffee | 13 +++++++++++++ .../user/app/components/menu_item.js.coffee | 12 ------------ .../components/menu_item_list_needs_help.js.coffee | 2 +- .../menu_item_list_needs_payment.js.coffee | 2 +- .../components/menu_item_product_orders.js.coffee | 12 ------------ .../user/app/components/menu_item_scan_qr.js.coffee | 2 +- .../user/app/components/product-orders.js.coffee | 2 +- .../settings-locale.js.coffee} | 6 +++--- .../controllers/lists_index_controller.js.coffee | 2 +- .../user/app/controllers/table_controller.js.coffee | 3 ++- .../javascripts/user/app/models/product.js.coffee | 4 ++-- .../user/app/modules/pagination.js.coffee | 2 +- ...uct-orders.emblem => product-orders-list.emblem} | 0 .../lists/{list_entry.emblem => index-entry.emblem} | 0 .../user/app/templates/lists/index.emblem | 2 +- .../javascripts/user/app/templates/settings.emblem | 2 +- .../user/app/templates/settings/locale.emblem | 2 +- .../javascripts/user/app/templates/table.emblem | 4 +++- .../user/app/views/application_view.js.coffee | 4 ++-- .../user/app/views/list_index_view.js.coffee | 5 ----- .../javascripts/user/app/views/modal_view.js.coffee | 4 ++-- 26 files changed, 59 insertions(+), 53 deletions(-) create mode 100644 app/assets/javascripts/user/app/components/lists/index-entry.js.coffee create mode 100644 app/assets/javascripts/user/app/components/menu/item.js.coffee create mode 100644 app/assets/javascripts/user/app/components/menu/item/product_orders.js.coffee delete mode 100644 app/assets/javascripts/user/app/components/menu_item.js.coffee delete mode 100644 app/assets/javascripts/user/app/components/menu_item_product_orders.js.coffee rename app/assets/javascripts/user/app/{views/settings_locale_view.js.coffee => components/settings-locale.js.coffee} (59%) rename app/assets/javascripts/user/app/templates/components/{product-orders.emblem => product-orders-list.emblem} (100%) rename app/assets/javascripts/user/app/templates/lists/{list_entry.emblem => index-entry.emblem} (100%) delete mode 100644 app/assets/javascripts/user/app/views/list_index_view.js.coffee diff --git a/app/assets/javascripts/user/app/app.js.coffee b/app/assets/javascripts/user/app/app.js.coffee index d90218bc..65cbc0c7 100644 --- a/app/assets/javascripts/user/app/app.js.coffee +++ b/app/assets/javascripts/user/app/app.js.coffee @@ -23,7 +23,7 @@ Globals = Ember.Object.extend Ember.Application.initializer name: 'Globals' initialize: (container, application)-> - container.typeInjection('component', 'store', 'store:main') + container.typeInjection('component', 'store', 'service:store') application.register('global:variables', Globals, {singleton: true}) application.inject('controller', 'globals', 'global:variables') application.inject('component', 'globals', 'global:variables') diff --git a/app/assets/javascripts/user/app/components/list-order.js.coffee b/app/assets/javascripts/user/app/components/list-order.js.coffee index 52409c2f..956ba9f2 100644 --- a/app/assets/javascripts/user/app/components/list-order.js.coffee +++ b/app/assets/javascripts/user/app/components/list-order.js.coffee @@ -1,7 +1,7 @@ App.ListOrderComponent = Ember.Component.extend classNames: 'list-order-container' classNameBindings: ['order.state', 'contentWrapClass'] - #templateName: 'components/list-order' + #layoutName: 'components/list-order' contentWrapClass: (-> "order-row-#{@get('order.id')}").property('order.id') #click: -> #if @route_param @@ -12,6 +12,6 @@ App.ListOrderComponent = Ember.Component.extend #if @get('controller.currentPath') == @route then 'active' else '' #).property('controller.currentPath') #init: -> - #@templateName = "menu_item_#{@route}" + #@layoutName = "menu_item_#{@route}" #@_super() diff --git a/app/assets/javascripts/user/app/components/lists/index-entry.js.coffee b/app/assets/javascripts/user/app/components/lists/index-entry.js.coffee new file mode 100644 index 00000000..4b71e877 --- /dev/null +++ b/app/assets/javascripts/user/app/components/lists/index-entry.js.coffee @@ -0,0 +1,7 @@ +App.ListsIndexEntryComponent = Ember.Component.extend + layoutName: 'lists/index-entry' + classNames: ['lists-overview-entry'] + classNameBindings: ['content.active:active'] + click: -> + debugger + @get('controller').transitionToRoute 'list', @get('list') diff --git a/app/assets/javascripts/user/app/components/menu-product-categories-component.js.coffee b/app/assets/javascripts/user/app/components/menu-product-categories-component.js.coffee index 624a0d34..c8d63480 100644 --- a/app/assets/javascripts/user/app/components/menu-product-categories-component.js.coffee +++ b/app/assets/javascripts/user/app/components/menu-product-categories-component.js.coffee @@ -10,7 +10,7 @@ App.MenuProductCategoriesComponent = Ember.Component.extend return true if product_category.get('full_day') product_category.get('start_from') <= @get('clock.minute_of_day') and @get('clock.minute_of_day') <= product_category.get('end_on') list.sortBy('position') - ).property('product_categories.@each', 'clock.minute_of_day') + ).property('product_categories.[]', 'clock.minute_of_day') actions: toggleProductCategory: (product_category) -> product_category.toggleProperty('collapsed') diff --git a/app/assets/javascripts/user/app/components/menu/item.js.coffee b/app/assets/javascripts/user/app/components/menu/item.js.coffee new file mode 100644 index 00000000..03891330 --- /dev/null +++ b/app/assets/javascripts/user/app/components/menu/item.js.coffee @@ -0,0 +1,12 @@ +App.MenuItemComponent = Ember.Component.extend + classNames: 'menu-list-item' + classNameBindings: ['active'] + click: -> + if route_param = @get('route_param') + @get('targetObject').transitionToRoute(@get('route'), route_param) + else + @get('targetObject').transitionToRoute(@get('route')) + active: (-> + if @get('targetObject.currentPath') == @get('route') then 'active' else '' + ).property('targetObject.currentPath') + setTemplate: (-> @layoutName = "components/menu/#{@get('route')}").on('init') diff --git a/app/assets/javascripts/user/app/components/menu/item/product_orders.js.coffee b/app/assets/javascripts/user/app/components/menu/item/product_orders.js.coffee new file mode 100644 index 00000000..8ca1a6fd --- /dev/null +++ b/app/assets/javascripts/user/app/components/menu/item/product_orders.js.coffee @@ -0,0 +1,13 @@ +App.MenuItemProductOrdersComponent = Ember.Component.extend + all_product_orders: Ember.computed -> @store.peekAll('product-order') + product_orders: Ember.computed 'all_product_orders.[]', -> @get('all_product_orders').filterBy('isNew') + layoutName: 'components/menu/product_orders' + classNames: ['menu-list-item', 'menu-list-item-product-orders'] + classNameBindings: ['product_orders.length:show:hide', 'currentRoute:active'] + currentRoute: (-> @get('targetObject.currentRouteName') is 'product_orders' ).property('targetObject.currentRouteName') + orderTotals: Ember.computed.mapBy 'product_orders', 'total' + orderTotal: Ember.computed.sum 'orderTotals' + #orderTotal: Ember.computed 'product_orders.@each.total', -> + # debugger + click: -> + @get('targetObject').transitionToRoute 'product_orders' diff --git a/app/assets/javascripts/user/app/components/menu_item.js.coffee b/app/assets/javascripts/user/app/components/menu_item.js.coffee deleted file mode 100644 index 793281cd..00000000 --- a/app/assets/javascripts/user/app/components/menu_item.js.coffee +++ /dev/null @@ -1,12 +0,0 @@ -App.MenuItemComponent = Ember.Component.extend - classNames: 'menu-list-item' - classNameBindings: ['active'] - click: -> - if route_param = @get('route_param') - @get('reference_controller').transitionToRoute(@get('route'), route_param) - else - @get('reference_controller').transitionToRoute(@get('route')) - active: (-> - if @get('reference_controller.currentPath') == @get('route') then 'active' else '' - ).property('reference_controller.currentPath') - setTemplate: (-> @templateName = "components/menu/#{@get('route')}").on('init') diff --git a/app/assets/javascripts/user/app/components/menu_item_list_needs_help.js.coffee b/app/assets/javascripts/user/app/components/menu_item_list_needs_help.js.coffee index 36b4e37f..5585bf59 100644 --- a/app/assets/javascripts/user/app/components/menu_item_list_needs_help.js.coffee +++ b/app/assets/javascripts/user/app/components/menu_item_list_needs_help.js.coffee @@ -1,6 +1,6 @@ App.MenuItemListNeedsHelpComponent = Ember.Component.extend Ember.ViewTargetActionSupport, action: 'listNeedsHelp' - templateName: "components/menu/list_needs_help" + layoutName: "components/menu/list_needs_help" classNames: 'menu-list-item callout' classNameBindings: ['globals.list.needs_help:active'] click: -> diff --git a/app/assets/javascripts/user/app/components/menu_item_list_needs_payment.js.coffee b/app/assets/javascripts/user/app/components/menu_item_list_needs_payment.js.coffee index 2062ba1e..ccaf0f18 100644 --- a/app/assets/javascripts/user/app/components/menu_item_list_needs_payment.js.coffee +++ b/app/assets/javascripts/user/app/components/menu_item_list_needs_payment.js.coffee @@ -1,6 +1,6 @@ App.MenuItemListNeedsPaymentComponent = Ember.Component.extend Ember.ViewTargetActionSupport, action: 'listNeedsPayment' - templateName: "components/menu/list_needs_payment" + layoutName: "components/menu/list_needs_payment" classNames: 'menu-list-item callout' classNameBindings: ['controller.list.needs_payment:active'] click: -> diff --git a/app/assets/javascripts/user/app/components/menu_item_product_orders.js.coffee b/app/assets/javascripts/user/app/components/menu_item_product_orders.js.coffee deleted file mode 100644 index 85953597..00000000 --- a/app/assets/javascripts/user/app/components/menu_item_product_orders.js.coffee +++ /dev/null @@ -1,12 +0,0 @@ -App.MenuItemProductOrdersComponent = Ember.Component.extend - product_orders: (-> - debugger - ).property() - layoutName: 'components/menu/product_orders' - classNames: ['menu-list-item', 'menu-list-item-product-orders'] - classNameBindings: ['product_orders.length:show:hide', 'currentRoute:active'] - currentRoute: (-> @get('targetObject.currentRouteName') is 'product_orders' ).property('targetObject.currentRouteName') - orderTotal: Ember.computed 'product_orders.@each.total', -> - 3 - click: -> - @get('controller').transitionToRoute 'product_orders' diff --git a/app/assets/javascripts/user/app/components/menu_item_scan_qr.js.coffee b/app/assets/javascripts/user/app/components/menu_item_scan_qr.js.coffee index 4056981e..5f60dfdd 100644 --- a/app/assets/javascripts/user/app/components/menu_item_scan_qr.js.coffee +++ b/app/assets/javascripts/user/app/components/menu_item_scan_qr.js.coffee @@ -1,5 +1,5 @@ App.MenuItemScanQrComponent = Ember.Component.extend Ember.ViewTargetActionSupport, action: 'scanQr' - templateName: "components/menu/scan_qr" + layoutName: "components/menu/scan_qr" classNames: 'menu-list-item' click: -> @triggerAction() diff --git a/app/assets/javascripts/user/app/components/product-orders.js.coffee b/app/assets/javascripts/user/app/components/product-orders.js.coffee index e913ee9f..e6b7e6df 100644 --- a/app/assets/javascripts/user/app/components/product-orders.js.coffee +++ b/app/assets/javascripts/user/app/components/product-orders.js.coffee @@ -1,4 +1,4 @@ -App.ProductOrdersComponent = Ember.Component.extend +App.ProductOrdersListComponent = Ember.Component.extend orderTotal: (-> #Math.round(Math.random()*100) @get('product_orders').getEach('total').reduce(((sum, total) -> sum + total), 0) diff --git a/app/assets/javascripts/user/app/views/settings_locale_view.js.coffee b/app/assets/javascripts/user/app/components/settings-locale.js.coffee similarity index 59% rename from app/assets/javascripts/user/app/views/settings_locale_view.js.coffee rename to app/assets/javascripts/user/app/components/settings-locale.js.coffee index 070050ab..79e20e7d 100644 --- a/app/assets/javascripts/user/app/views/settings_locale_view.js.coffee +++ b/app/assets/javascripts/user/app/components/settings-locale.js.coffee @@ -1,10 +1,10 @@ -App.SettingsLocaleView = Ember.View.extend - templateName: 'settings/locale' +App.SettingsLocaleComponent = Ember.Component.extend + layoutName: 'settings/locale' classNames: 'settings-locale' classNameBindings: ['current'] current: (-> @get('locale') is $locale ).property('controller.locale') localeFlag: (-> - new Ember.Handlebars.SafeString "" + "".htmlSafe() ).property('locale') click: -> setLocale @get('locale') diff --git a/app/assets/javascripts/user/app/controllers/lists_index_controller.js.coffee b/app/assets/javascripts/user/app/controllers/lists_index_controller.js.coffee index 26338c27..4f822bf2 100644 --- a/app/assets/javascripts/user/app/controllers/lists_index_controller.js.coffee +++ b/app/assets/javascripts/user/app/controllers/lists_index_controller.js.coffee @@ -1,2 +1,2 @@ App.ListsIndexController = Ember.Controller.extend App.PaginationModule, - lists: (->@get('model').sortBy('created_at').reverse()).property('model.@each') + lists: (->@get('model').sortBy('created_at').reverse()).property('model.[]') diff --git a/app/assets/javascripts/user/app/controllers/table_controller.js.coffee b/app/assets/javascripts/user/app/controllers/table_controller.js.coffee index 9166af5d..4f29bb1a 100644 --- a/app/assets/javascripts/user/app/controllers/table_controller.js.coffee +++ b/app/assets/javascripts/user/app/controllers/table_controller.js.coffee @@ -16,7 +16,8 @@ App.TableController = Ember.Controller.extend return false if @get('globals.list') # if you already have an active list, do not join another if @get('model.occupied') then true else false # no point in joining tables that are not occupied ).property('globals.list.id', 'supplier.can_take_orders', 'model.occupied', 'model.id', 'globals.list.table.id') - unordered_product_orders: Ember.computed -> @store.peekAll('product_order').filterBy('id', null) + all_product_orders: Ember.computed -> @store.peekAll('product_order') + new_product_orders: Ember.computed 'all_product_orders.@each.isNew', -> @get('all_product_orders').filterBy('isNew') actions: joinOccupiedTable: -> Ember.$.post("#{$data_host}/user/join_occupied_table.json", table_id: @get('model.id')) diff --git a/app/assets/javascripts/user/app/models/product.js.coffee b/app/assets/javascripts/user/app/models/product.js.coffee index d9326656..b70d8293 100644 --- a/app/assets/javascripts/user/app/models/product.js.coffee +++ b/app/assets/javascripts/user/app/models/product.js.coffee @@ -18,9 +18,9 @@ App.Product = DS.Model.extend addOrderItem: (options = {})-> #if existing = @store.all('product_order').find((po)-> po.get('product') == product and not po.get('order')) if options.product_variant - existing = @get('product_orders').find( (po)-> !po.get('order') and po.get('product_variant') is options.product_variant ) + existing = @get('product_orders').find( (po)-> !po.get('isNew') and po.get('product_variant') is options.product_variant ) else - existing = @get('product_orders').find( (po)-> !po.get('order') ) + existing = @get('product_orders').find( (po)-> !po.get('isNew') ) if existing existing.increment() diff --git a/app/assets/javascripts/user/app/modules/pagination.js.coffee b/app/assets/javascripts/user/app/modules/pagination.js.coffee index 2e667626..fa23ead8 100644 --- a/app/assets/javascripts/user/app/modules/pagination.js.coffee +++ b/app/assets/javascripts/user/app/modules/pagination.js.coffee @@ -34,4 +34,4 @@ App.PaginationModule = Ember.Mixin.create page = @loadMore() @set 'lastKnownPage', page - hasMore: (-> @hasMoreFunc()).property('lastKnownPage','firstObject','@each','filtered.@each') + hasMore: (-> @hasMoreFunc()).property('lastKnownPage','firstObject','.[]','filtered.[]') diff --git a/app/assets/javascripts/user/app/templates/components/product-orders.emblem b/app/assets/javascripts/user/app/templates/components/product-orders-list.emblem similarity index 100% rename from app/assets/javascripts/user/app/templates/components/product-orders.emblem rename to app/assets/javascripts/user/app/templates/components/product-orders-list.emblem diff --git a/app/assets/javascripts/user/app/templates/lists/list_entry.emblem b/app/assets/javascripts/user/app/templates/lists/index-entry.emblem similarity index 100% rename from app/assets/javascripts/user/app/templates/lists/list_entry.emblem rename to app/assets/javascripts/user/app/templates/lists/index-entry.emblem diff --git a/app/assets/javascripts/user/app/templates/lists/index.emblem b/app/assets/javascripts/user/app/templates/lists/index.emblem index 34515fb6..ba6e8dd3 100644 --- a/app/assets/javascripts/user/app/templates/lists/index.emblem +++ b/app/assets/javascripts/user/app/templates/lists/index.emblem @@ -1,7 +1,7 @@ .row h2=t 'models.plural.list' each lists as |list| - = view "list-index" content=list + = list-index-entry list=list .clearfix if hasMore button{action "showMore"}=t 'lists.show_more' diff --git a/app/assets/javascripts/user/app/templates/settings.emblem b/app/assets/javascripts/user/app/templates/settings.emblem index bebe0619..93a7193e 100644 --- a/app/assets/javascripts/user/app/templates/settings.emblem +++ b/app/assets/javascripts/user/app/templates/settings.emblem @@ -4,7 +4,7 @@ .display-label=t 'settings.language' .display-field each locales as |locale| - = view 'settings-locale' locale=locale + = settings-locale locale=locale .display-row .display-label   .display-field: a.button href="./index.html"=t 'settings.reload_application' diff --git a/app/assets/javascripts/user/app/templates/settings/locale.emblem b/app/assets/javascripts/user/app/templates/settings/locale.emblem index 968a69f4..faef8963 100644 --- a/app/assets/javascripts/user/app/templates/settings/locale.emblem +++ b/app/assets/javascripts/user/app/templates/settings/locale.emblem @@ -1 +1 @@ -= view.localeFlag += localeFlag diff --git a/app/assets/javascripts/user/app/templates/table.emblem b/app/assets/javascripts/user/app/templates/table.emblem index c48dff2c..e5abc8de 100644 --- a/app/assets/javascripts/user/app/templates/table.emblem +++ b/app/assets/javascripts/user/app/templates/table.emblem @@ -13,6 +13,8 @@ button.join-table-button{action "joinOccupiedTable"}=t 'join_request.requestor.join_this_table' if tableCanTakeOrders .large-6.columns= menu-product-categories product_categories=supplier.product_categories orderProducts=true - .large-6.columns= product-orders table=model product_orders=unordered_product_orders reference_controller=controller + .large-6.columns= product-orders-list table=model product_orders=new_product_orders else .large12= menu-product-categories product_categories=supplier.product_categories orderProducts=false + each new_product_orders as |po| + .row: b=po.display diff --git a/app/assets/javascripts/user/app/views/application_view.js.coffee b/app/assets/javascripts/user/app/views/application_view.js.coffee index 497ee6df..55441434 100644 --- a/app/assets/javascripts/user/app/views/application_view.js.coffee +++ b/app/assets/javascripts/user/app/views/application_view.js.coffee @@ -1,5 +1,5 @@ -App.ApplicationView = Ember.View.extend - didInsertElement: -> +App.ApplicationView = Ember.Component.extend + didRender: -> # Side menu collapsing side_menu = @$('.side-menu') side_menu.addClass('closed').click -> side_menu.toggleClass('active').addClass('clicked').toggleClass('closed') diff --git a/app/assets/javascripts/user/app/views/list_index_view.js.coffee b/app/assets/javascripts/user/app/views/list_index_view.js.coffee deleted file mode 100644 index df0965c6..00000000 --- a/app/assets/javascripts/user/app/views/list_index_view.js.coffee +++ /dev/null @@ -1,5 +0,0 @@ -App.ListIndexView = Ember.View.extend - templateName: 'lists/list_entry' - classNames: ['lists-overview-entry'] - classNameBindings: ['content.active:active'] - click: -> @get('controller').transitionToRoute 'list', @get('content') diff --git a/app/assets/javascripts/user/app/views/modal_view.js.coffee b/app/assets/javascripts/user/app/views/modal_view.js.coffee index ad3745f0..62ead63c 100644 --- a/app/assets/javascripts/user/app/views/modal_view.js.coffee +++ b/app/assets/javascripts/user/app/views/modal_view.js.coffee @@ -1,7 +1,7 @@ -App.ModalView = Ember.View.extend +App.ModalView = Ember.Component.extend layoutName: 'modals/layout' didInsertElement: -> - sortable = $('.sortable') + sortable = @$('.sortable') controller = @get('controller') if sortable.length sortable.sortable