diff options
| author | mo <mo.khan@gmail.com> | 2017-09-03 14:47:12 -0600 |
|---|---|---|
| committer | mo <mo.khan@gmail.com> | 2017-09-03 14:47:12 -0600 |
| commit | 58acf6c7c0bff3e051e55c30c8c8405ac198a640 (patch) | |
| tree | 282e5eb6166eaba6689c1244dba4b68bdec79939 /app/assets/javascripts | |
| parent | 4d6fd17c8f1d7ee0ecb46e8323b61e4006bf39a4 (diff) | |
attach behaviours to document immediately.
Diffstat (limited to 'app/assets/javascripts')
| -rw-r--r-- | app/assets/javascripts/application.js | 2 | ||||
| -rw-r--r-- | app/assets/javascripts/infrastructure/auto_view_setup.js.coffee | 2 | ||||
| -rw-r--r-- | app/assets/javascripts/infrastructure/behaviour.js.coffee | 13 | ||||
| -rw-r--r-- | app/assets/javascripts/infrastructure/infinite_scroll.js.coffee | 5 | ||||
| -rw-r--r-- | app/assets/javascripts/views/auto_view.js.coffee (renamed from app/assets/javascripts/infrastructure/auto_view.js.coffee) | 3 | ||||
| -rw-r--r-- | app/assets/javascripts/views/cakes/show_page.js.coffee | 2 |
6 files changed, 11 insertions, 16 deletions
diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 88e4080e..c6f5fd22 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -16,5 +16,3 @@ //= require backbone-model-file-upload //= require cakeside //= require_self - -CakeSide.Behaviour.install(); diff --git a/app/assets/javascripts/infrastructure/auto_view_setup.js.coffee b/app/assets/javascripts/infrastructure/auto_view_setup.js.coffee index c0d71fe2..3a462068 100644 --- a/app/assets/javascripts/infrastructure/auto_view_setup.js.coffee +++ b/app/assets/javascripts/infrastructure/auto_view_setup.js.coffee @@ -1,7 +1,7 @@ #= require ./behaviour class CakeSide.AutoViewSetup extends CakeSide.Behaviour - @on "load" + @on "ready" execute: -> for element in $('[data-autoview]') diff --git a/app/assets/javascripts/infrastructure/behaviour.js.coffee b/app/assets/javascripts/infrastructure/behaviour.js.coffee index a5354e25..d9d8f123 100644 --- a/app/assets/javascripts/infrastructure/behaviour.js.coffee +++ b/app/assets/javascripts/infrastructure/behaviour.js.coffee @@ -1,12 +1,5 @@ class CakeSide.Behaviour - @events: {} - @on: (event) -> - @events[event] ?= [] - @events[event].push(@) - - @install: -> - for event of @events - window.addEventListener event, () => - for behaviour in @events[event] - new behaviour().execute() + behaviour = new this() + $(document).on event, () => + behaviour.execute() diff --git a/app/assets/javascripts/infrastructure/infinite_scroll.js.coffee b/app/assets/javascripts/infrastructure/infinite_scroll.js.coffee index ab7d2b61..256cd2b8 100644 --- a/app/assets/javascripts/infrastructure/infinite_scroll.js.coffee +++ b/app/assets/javascripts/infrastructure/infinite_scroll.js.coffee @@ -1,11 +1,14 @@ #= require ./behaviour class CakeSide.InfiniteScroll extends CakeSide.Behaviour + PERCENTAGE=0.8 @on "scroll" execute: -> $moreButton = $('[data-infinite-scroll]') return if $moreButton.length == 0 - if $(window).scrollTop() >= ($(document).height() - $(window).height())*0.8 + top = $(window).scrollTop() + height = ($(document).height() - $(window).height()) + if top >= height * PERCENTAGE $moreButton.trigger('click') diff --git a/app/assets/javascripts/infrastructure/auto_view.js.coffee b/app/assets/javascripts/views/auto_view.js.coffee index 4966221a..0826045f 100644 --- a/app/assets/javascripts/infrastructure/auto_view.js.coffee +++ b/app/assets/javascripts/views/auto_view.js.coffee @@ -20,4 +20,5 @@ class CakeSide.AutoView extends Backbone.View @views[name] ?= [] @views[name].push(view) - render: -> { } + render: -> + @ diff --git a/app/assets/javascripts/views/cakes/show_page.js.coffee b/app/assets/javascripts/views/cakes/show_page.js.coffee index c83a3c45..fc9b0b19 100644 --- a/app/assets/javascripts/views/cakes/show_page.js.coffee +++ b/app/assets/javascripts/views/cakes/show_page.js.coffee @@ -1,4 +1,4 @@ -#= require infrastructure/auto_view +#= require views/auto_view class CakeSide.Views.Cakes.ShowPage extends CakeSide.AutoView @viewName "cakes#show" |
