From 15709350997a9ba242294c661a6b27bb9c5b4bb9 Mon Sep 17 00:00:00 2001 From: Piotr Sarnacki Date: Fri, 4 Sep 2015 09:03:50 +0200 Subject: [PATCH] Fix closing broadcast messages --- .../flash-display.coffee} | 19 +++++++++++-------- app/{views => components}/flash-item.coffee | 8 ++++---- app/templates/components/flash-display.hbs | 3 +++ app/templates/components/flash-item.hbs | 2 ++ app/templates/layouts/flash.hbs | 7 +------ app/templates/layouts/home.hbs | 2 +- app/templates/layouts/landing-page.hbs | 2 +- app/templates/layouts/profile.hbs | 4 ++-- app/templates/layouts/simple.hbs | 4 ++-- app/views/flash.coffee | 8 -------- 10 files changed, 27 insertions(+), 32 deletions(-) rename app/{controllers/flash.coffee => components/flash-display.coffee} (78%) rename app/{views => components}/flash-item.coffee (51%) create mode 100644 app/templates/components/flash-display.hbs create mode 100644 app/templates/components/flash-item.hbs delete mode 100644 app/views/flash.coffee diff --git a/app/controllers/flash.coffee b/app/components/flash-display.coffee similarity index 78% rename from app/controllers/flash.coffee rename to app/components/flash-display.coffee index 5d22d884..dcf379a0 100644 --- a/app/controllers/flash.coffee +++ b/app/components/flash-display.coffee @@ -1,10 +1,13 @@ `import Ember from 'ember'` `import LimitedArray from 'travis/utils/limited-array'` -`import Broadcast from 'travis/models/broadcast'` -Controller = Ember.Controller.extend - needs: ['currentUser'] - currentUserBinding: 'controllers.currentUser.model' +FlashDisplayComponent = Ember.Component.extend + auth: Ember.inject.service() + store: Ember.inject.service() + currentUserBinding: 'auth.currentUser' + + classNames: ['flash'] + tagName: 'ul' init: -> @_super.apply this, arguments @@ -28,7 +31,7 @@ Controller = Ember.Controller.extend broadcasts = Ember.ArrayProxy.create(content: []) if @get('currentUser.id') - @store.find('broadcast').then (result) -> + @get('store').find('broadcast').then (result) -> broadcasts.pushObjects(result.toArray()) broadcasts @@ -42,14 +45,14 @@ Controller = Ember.Controller.extend Ember.run.later(this, (-> @get('flashes.content').removeObject(msg)), 15000) close: (msg) -> - if msg instanceof Broadcast + if msg.constructor.modelName == "broadcast" msg.setSeen() @notifyPropertyChange('unseenBroadcasts') else @get('flashes').removeObject(msg) actions: - close: (msg) -> + closeMessage: (msg) -> @close(msg) -`export default Controller` +`export default FlashDisplayComponent` diff --git a/app/views/flash-item.coffee b/app/components/flash-item.coffee similarity index 51% rename from app/views/flash-item.coffee rename to app/components/flash-item.coffee index 9b8107f4..5f6df701 100644 --- a/app/views/flash-item.coffee +++ b/app/components/flash-item.coffee @@ -1,6 +1,6 @@ -`import BasicView from 'travis/views/basic'` +`import Ember from 'ember'` -View = BasicView.extend +FlashItemComponent = Ember.Component.extend tagName: 'li' classNameBindings: ['type'] @@ -10,6 +10,6 @@ View = BasicView.extend actions: close: -> - @get('controller').close(@get('flash')) + this.attrs.close(@get('flash')) -`export default View` +`export default FlashItemComponent` diff --git a/app/templates/components/flash-display.hbs b/app/templates/components/flash-display.hbs new file mode 100644 index 00000000..c61c8b3f --- /dev/null +++ b/app/templates/components/flash-display.hbs @@ -0,0 +1,3 @@ +{{#each flash in messages}} + {{flash-item flash=flash close=(action 'closeMessage')}} +{{/each}} diff --git a/app/templates/components/flash-item.hbs b/app/templates/components/flash-item.hbs new file mode 100644 index 00000000..f8d0528d --- /dev/null +++ b/app/templates/components/flash-item.hbs @@ -0,0 +1,2 @@ +

{{{flash.message}}}

+ diff --git a/app/templates/layouts/flash.hbs b/app/templates/layouts/flash.hbs index a155045a..8b137891 100644 --- a/app/templates/layouts/flash.hbs +++ b/app/templates/layouts/flash.hbs @@ -1,6 +1 @@ -{{#each flash in messages}} - {{#view "flash-item" flashBinding="flash"}} -

{{{flash.message}}}

- - {{/view}} -{{/each}} + diff --git a/app/templates/layouts/home.hbs b/app/templates/layouts/home.hbs index 10517cdc..98a3b537 100644 --- a/app/templates/layouts/home.hbs +++ b/app/templates/layouts/home.hbs @@ -4,7 +4,7 @@ {{render "top"}} - {{render "flash"}} + {{flash-display}}
diff --git a/app/templates/layouts/landing-page.hbs b/app/templates/layouts/landing-page.hbs index 4a57bd79..d0ff4bd8 100644 --- a/app/templates/layouts/landing-page.hbs +++ b/app/templates/layouts/landing-page.hbs @@ -2,7 +2,7 @@ {{render "top"}}
-{{render "flash"}} +{{flash-display}} {{yield}} diff --git a/app/templates/layouts/profile.hbs b/app/templates/layouts/profile.hbs index 027246bc..707b4192 100644 --- a/app/templates/layouts/profile.hbs +++ b/app/templates/layouts/profile.hbs @@ -6,7 +6,7 @@
- {{render "flash"}} + {{flash-display}}
{{yield}} @@ -17,4 +17,4 @@
{{render "footer"}} -
\ No newline at end of file + diff --git a/app/templates/layouts/simple.hbs b/app/templates/layouts/simple.hbs index f5aff6ac..bb8f9cbc 100644 --- a/app/templates/layouts/simple.hbs +++ b/app/templates/layouts/simple.hbs @@ -6,7 +6,7 @@
- {{render "flash"}} + {{flash-display}}
{{yield}}
@@ -15,4 +15,4 @@ \ No newline at end of file + diff --git a/app/views/flash.coffee b/app/views/flash.coffee deleted file mode 100644 index 1d7d4f01..00000000 --- a/app/views/flash.coffee +++ /dev/null @@ -1,8 +0,0 @@ -`import BasicView from 'travis/views/basic'` - -View = BasicView.extend - classNames: ['flash'] - tagName: 'ul' - templateName: 'layouts/flash' - -`export default View`