spaghetti 0.5.1 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0f8230177b8ac7b534ab47c1548491203e1d7afc
4
+ data.tar.gz: d908acc7a15bbcfc40ca150b6969e5defb6edec7
5
+ SHA512:
6
+ metadata.gz: d8dfc0e6b31ff4a286782fdf5e3f8cfdd9391a9e2e00fd38b22e9b1998fc2b26cba3bebc5c621da81420a281a8091ad23854b9a7edcf02157b96baac1074ddfa
7
+ data.tar.gz: 0da44dbf3a4741022fadeb026d10ed28352121ff7ce9a1608d541140eb76b393b9d9df44404067b1684926cf0e6b3bcfd2f8098643cd54b7e07005d925c32aab
@@ -1,5 +1,4 @@
1
1
  //= require jquery
2
- //= require jquery.ui.core
3
2
  //= require jquery.ui.widget
4
3
  //= require spaghetti/jquery.sausage
5
4
  //= require spaghetti/init
@@ -1,60 +1,67 @@
1
- $(function() {
2
- function nearBottomOfPage() {
3
- return $(window).scrollTop() > $(document).height() - $(window).height() - 200;
4
- }
5
-
6
- function triggerHooks(hook) {
7
- fn = hook + '_spaghetti';
8
- if (typeof window[fn] != 'undefined') {
9
- fireHook(fn);
10
- }
11
- }
12
-
13
- function fireHook(func){
14
- this[func].apply(this, Array.prototype.slice.call(arguments, 1));
15
- }
16
-
17
- $('.spaghetti-empty').each(function() {
18
- $(this).data('spaghetti-enabled', 0);
19
- $(this).removeClass('spaghetti-empty');
20
- $(this).addClass('spaghetti-loading');
21
- if($(this).data('spaghetti-url').indexOf("?") === -1){
22
- pageParameter = '?page=';
23
- }else{
24
- pageParameter = '&page=';
25
- }
26
- $.ajax({
27
- url: $(this).data('spaghetti-url') + pageParameter + $(this).data('spaghetti-next-page'),
28
- type: 'get',
29
- dataType: 'script',
30
- success: function() {
31
- triggerHooks('post');
1
+ (function() {
2
+ jQuery(function() {
3
+ $(window).scroll(function() {
4
+ var pageParameter;
5
+ if ($('.spaghetti').data('spaghetti-enabled') === 1) {
6
+ if ($(window).scrollTop() > ($(document).height() - $(window).height() - 200)) {
7
+ triggerHooks('pre');
8
+ $('.spaghetti').data('spaghetti-enabled', 0);
9
+ $('.spaghetti').addClass('spaghetti-loading');
10
+ if ($('.spaghetti').data('spaghetti-url').indexOf("?") === -1) {
11
+ pageParameter = '?page=';
12
+ }
13
+ } else {
14
+ pageParameter = '&page=';
15
+ }
16
+ return window.spaghetti.load($('.spaghetti'));
32
17
  }
33
18
  });
19
+ $(window).sausage();
20
+ return $('.spaghetti-empty').each(function() {
21
+ return window.spaghetti.load($(this));
22
+ });
34
23
  });
35
-
36
- $(window).scroll(function(){
37
- if ($('.spaghetti').data('spaghetti-enabled') == 1) {
38
- if(nearBottomOfPage()) {
39
- triggerHooks('pre');
40
- $('.spaghetti').data('spaghetti-enabled', 0);
41
- $('.spaghetti').addClass('spaghetti-loading');
42
- if($('.spaghetti').data('spaghetti-url').indexOf("?") === -1){
43
- pageParameter = '?page=';
44
- }else{
45
- pageParameter = '&page=';
46
- }
47
- $.ajax({
48
- url: $('.spaghetti').data('spaghetti-url') + pageParameter + $('.spaghetti').data('spaghetti-next-page'),
49
- type: 'get',
50
- dataType: 'script',
51
- success: function() {
52
- $(window).sausage('draw');
53
- triggerHooks('post');
54
- }
55
- });
24
+
25
+ window.spaghetti = {
26
+ triggerHooks: function(hook) {
27
+ var fn;
28
+ fn = hook + '_spaghetti';
29
+ if (typeof window[fn] !== 'undefined') {
30
+ this.fireHooks(fn);
56
31
  }
32
+ return this;
33
+ },
34
+ fireHooks: function(func) {
35
+ return window[func].apply(this, Array.prototype.slice.call(arguments, 1));
36
+ },
37
+ load: function(elm) {
38
+ var pageParameter;
39
+ elm.data('spaghetti-enabled', 0);
40
+ elm.addClass('spaghetti-loading');
41
+ elm.removeClass('spaghetti-empty');
42
+ if (elm.data('spaghetti-url').indexOf("?") === -1) {
43
+ pageParameter = '?page=';
44
+ } else {
45
+ pageParameter = '&page=';
46
+ }
47
+ $.ajax({
48
+ type: 'get',
49
+ url: elm.data('spaghetti-url') + pageParameter + elm.data('spaghetti-next-page'),
50
+ dataType: 'script',
51
+ success: function() {
52
+ $(window).sausage('draw');
53
+ window.spaghetti.triggerHooks('post');
54
+ return true;
55
+ }
56
+ });
57
+ return this;
58
+ },
59
+ reset: function(elm) {
60
+ elm.find('.spaghetti-items').html('');
61
+ elm.data('spaghetti-enabled', 1);
62
+ elm.data('spaghetti-next-page', 0);
63
+ return this.load(elm);
57
64
  }
58
- });
59
- $(window).sausage();
60
- });
65
+ };
66
+
67
+ }).call(this);
@@ -2,7 +2,7 @@ module SpaghettiHelpers
2
2
  def spaghetti name, path_or_items, options = {}
3
3
  output = ''.html_safe
4
4
  if path_or_items.class.name == 'String'
5
- output << "<div class=\"#{ name } spaghetti spaghetti-empty\" data-spaghetti-enabled=\"1\" data-spaghetti-url=\"#{ path_or_items }\" data-spaghetti-next-page=\"1\"><div class=\"#{ name }-items\"></div><div class=\"throbber\">#{ image_tag 'throbber.gif' }</div></div>".html_safe
5
+ output << "<div class=\"#{ name } spaghetti spaghetti-empty\" data-spaghetti-enabled=\"1\" data-spaghetti-url=\"#{ path_or_items }\" data-spaghetti-next-page=\"1\"><div class=\"#{ name }-items spaghetti-items\"></div><div class=\"throbber\">#{ image_tag 'throbber.gif' }</div></div>".html_safe
6
6
  else
7
7
  if path_or_items.any?
8
8
  if options[:partial]
@@ -1,2 +1,3 @@
1
+ require "jquery-ui-rails"
1
2
  require "spaghetti/version"
2
- require "spaghetti/engine"
3
+ require "spaghetti/engine"
@@ -1,3 +1,3 @@
1
1
  module Spaghetti
2
- VERSION = "0.5.1"
2
+ VERSION = "0.6.0"
3
3
  end
@@ -12,10 +12,12 @@ Gem::Specification.new do |gem|
12
12
  gem.description = %q{Spaghetti - Rails Endless Page}
13
13
  gem.summary = %q{Spaghetti - Rails Endless Page}
14
14
  gem.homepage = "http://github.com/rayasocialmedia/spaghetti"
15
- gem.add_dependency 'jquery-rails', '>= 2.1'
16
- gem.add_dependency 'jquery-ui-rails', '4.0.1'
17
15
  gem.files = `git ls-files`.split($/)
18
16
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
19
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
20
18
  gem.require_paths = ["lib"]
19
+
20
+ gem.add_dependency 'rails', '>= 3.1', '< 4.1'
21
+ gem.add_dependency 'jquery-rails'
22
+ gem.add_dependency 'jquery-ui-rails'
21
23
  end
metadata CHANGED
@@ -1,48 +1,63 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spaghetti
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
5
- prerelease:
4
+ version: 0.6.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Omar Abdel-Wahab
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-07-06 00:00:00.000000000 Z
11
+ date: 2013-10-05 00:00:00.000000000 Z
13
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '3.1'
20
+ - - <
21
+ - !ruby/object:Gem::Version
22
+ version: '4.1'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '3.1'
30
+ - - <
31
+ - !ruby/object:Gem::Version
32
+ version: '4.1'
14
33
  - !ruby/object:Gem::Dependency
15
34
  name: jquery-rails
16
35
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
36
  requirements:
19
- - - ! '>='
37
+ - - '>='
20
38
  - !ruby/object:Gem::Version
21
- version: '2.1'
39
+ version: '0'
22
40
  type: :runtime
23
41
  prerelease: false
24
42
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
43
  requirements:
27
- - - ! '>='
44
+ - - '>='
28
45
  - !ruby/object:Gem::Version
29
- version: '2.1'
46
+ version: '0'
30
47
  - !ruby/object:Gem::Dependency
31
48
  name: jquery-ui-rails
32
49
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
50
  requirements:
35
- - - '='
51
+ - - '>='
36
52
  - !ruby/object:Gem::Version
37
- version: 4.0.1
53
+ version: '0'
38
54
  type: :runtime
39
55
  prerelease: false
40
56
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
57
  requirements:
43
- - - '='
58
+ - - '>='
44
59
  - !ruby/object:Gem::Version
45
- version: 4.0.1
60
+ version: '0'
46
61
  description: Spaghetti - Rails Endless Page
47
62
  email:
48
63
  - owahab@gmail.com
@@ -68,26 +83,25 @@ files:
68
83
  - spaghetti.gemspec
69
84
  homepage: http://github.com/rayasocialmedia/spaghetti
70
85
  licenses: []
86
+ metadata: {}
71
87
  post_install_message:
72
88
  rdoc_options: []
73
89
  require_paths:
74
90
  - lib
75
91
  required_ruby_version: !ruby/object:Gem::Requirement
76
- none: false
77
92
  requirements:
78
- - - ! '>='
93
+ - - '>='
79
94
  - !ruby/object:Gem::Version
80
95
  version: '0'
81
96
  required_rubygems_version: !ruby/object:Gem::Requirement
82
- none: false
83
97
  requirements:
84
- - - ! '>='
98
+ - - '>='
85
99
  - !ruby/object:Gem::Version
86
100
  version: '0'
87
101
  requirements: []
88
102
  rubyforge_project:
89
- rubygems_version: 1.8.23
103
+ rubygems_version: 2.0.3
90
104
  signing_key:
91
- specification_version: 3
105
+ specification_version: 4
92
106
  summary: Spaghetti - Rails Endless Page
93
107
  test_files: []