diff options
| author | mo <mo.khan@gmail.com> | 2017-09-03 14:49:50 -0600 |
|---|---|---|
| committer | mo <mo.khan@gmail.com> | 2017-09-03 14:49:50 -0600 |
| commit | 506614e7fb40851e05df2dc6a50e0b80871391b2 (patch) | |
| tree | afdc7bf8be9152014b31ad79e518cb4b62598720 /app/assets/javascripts/initializers | |
| parent | 58acf6c7c0bff3e051e55c30c8c8405ac198a640 (diff) | |
infrastructure -> initializers
Diffstat (limited to 'app/assets/javascripts/initializers')
3 files changed, 27 insertions, 0 deletions
diff --git a/app/assets/javascripts/initializers/auto_view_setup.js.coffee b/app/assets/javascripts/initializers/auto_view_setup.js.coffee new file mode 100644 index 00000000..3a462068 --- /dev/null +++ b/app/assets/javascripts/initializers/auto_view_setup.js.coffee @@ -0,0 +1,8 @@ +#= require ./behaviour + +class CakeSide.AutoViewSetup extends CakeSide.Behaviour + @on "ready" + + execute: -> + for element in $('[data-autoview]') + CakeSide.AutoView.install(element) diff --git a/app/assets/javascripts/initializers/behaviour.js.coffee b/app/assets/javascripts/initializers/behaviour.js.coffee new file mode 100644 index 00000000..d9d8f123 --- /dev/null +++ b/app/assets/javascripts/initializers/behaviour.js.coffee @@ -0,0 +1,5 @@ +class CakeSide.Behaviour + @on: (event) -> + behaviour = new this() + $(document).on event, () => + behaviour.execute() diff --git a/app/assets/javascripts/initializers/infinite_scroll.js.coffee b/app/assets/javascripts/initializers/infinite_scroll.js.coffee new file mode 100644 index 00000000..256cd2b8 --- /dev/null +++ b/app/assets/javascripts/initializers/infinite_scroll.js.coffee @@ -0,0 +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 + + top = $(window).scrollTop() + height = ($(document).height() - $(window).height()) + if top >= height * PERCENTAGE + $moreButton.trigger('click') |
