Strategery_InfiniteScroll2 - Version 2.1.0

Version Notes

Automatic load next page of current product list.
Support for Magento 1.3 up to 1.7

Download this release

Release Info

Developer Magento Core Team
Extension Strategery_InfiniteScroll2
Version 2.1.0
Comparing to
See all releases


Code changes from version 2.0.6 to 2.1.0

app/code/community/Strategery/Infinitescroll2/Helper/Data.php DELETED
@@ -1,99 +0,0 @@
1
- <?php
2
-
3
- /**
4
- * InfiniteScroll - Magento Integration
5
- *
6
- * NOTICE OF LICENSE
7
- *
8
- * This source file is subject to the Academic Free License (AFL 3.0),
9
- * available through the world-wide-web at this URL:
10
- * http://opensource.org/licenses/afl-3.0.php
11
- *
12
- * @category Strategery
13
- * @package Strategery_Infinitescroll2
14
- * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
15
- * @copyright Copyright (c) 2011 Strategery Inc. (http://usestrategery.com)
16
- *
17
- * @author Gabriel Somoza (me@gabrielsomoza.com)
18
- * @link http://gabrielsomoza.com/
19
- */
20
- class Strategery_Infinitescroll2_Helper_Data extends Mage_Core_Helper_Abstract {
21
-
22
- protected $_optionsMap;
23
-
24
- public function __construct() {
25
- $this->_optionsMap = array(
26
- 'loading' => array
27
- (
28
- 'data' => '',
29
- 'type' => 'object',
30
- 'sub-items' => array
31
- (
32
- 'finishedMsg'=>array('data' => 'design/done_text', 'type' => 'string'),
33
- 'img'=>array('data' => 'design/loading_img', 'type' => 'string'),
34
- 'msgText'=>array('data' => 'design/loading_text', 'type' => 'string'),
35
- 'selector'=>array('data' => 'selectors/loading', 'type' => 'string-JSIE8FIX'),
36
- )
37
- ),
38
- 'navSelector' => array('data' => 'selectors/navigation', 'type' => 'string'),
39
- 'nextSelector' => array('data' => 'selectors/next', 'type' => 'string'),
40
- 'itemSelector' => array('data' => 'selectors/items', 'type' => 'string'),
41
- 'debug' => array('data' => 'general/debug', 'type' => 'boolean'),
42
- 'animate' => array('data' => 'design/animate', 'type' => 'boolean'),
43
- 'extraScrollPx' => array('data' => 'design/extra_scroll_px', 'type' => 'integer'),
44
- 'doneText' => array('data' => 'design/done_text', 'type' => 'string'),
45
- 'bufferPx' => array('data' => 'design/buffer_px', 'type' => 'integer'),
46
- 'callback' => array('data' => 'callbacks/processed_callback', 'type' => 'function'),
47
- 'behavior' => array('data' => 'magento', 'type'=>'literal-JSIE8FIX')
48
- );
49
- }
50
-
51
- public function getConfigData($node) {
52
- return Mage::getStoreConfig('infinitescroll2/' . $node);
53
- }
54
-
55
- public function getJsConfig($optionsMap=false) {
56
- if(!$optionsMap){
57
- $optionsMap=$this->_optionsMap;
58
- }
59
- $result='';
60
- foreach ($optionsMap as $jsOption => $config) {
61
- $colon=',';
62
- $jsIE8Fix=strpos($config['type'],'-JSIE8FIX');
63
- if($jsIE8Fix!==false){
64
- $colon='';
65
- $config['type']=substr($config['type'],0,$jsIE8Fix);
66
- }
67
- if ($value = $this->getConfigData($config['data']) || $config['type']=='object' || $config['type']=='literal') {
68
- switch ($config['type']) {
69
- case 'string':
70
- $value = '"' . $this->getConfigData($config['data']) . '"'; // wrap in double quotes
71
- break;
72
- case 'boolean':
73
- $value = $value == 1 ? 'true' : 'false';
74
- break;
75
- case 'object':
76
- $value='""';
77
- if(is_array($config['sub-items']))
78
- {
79
- $value="{\n";
80
- foreach($config['sub-items'] as $name=>$subItem)
81
- {
82
- $value .= $this->getJsConfig(array($name=>$subItem));
83
- }
84
- $value.='}';
85
- }
86
- break;
87
- case 'literal':
88
- $value = '"' . $config['data'] . '"';
89
- break;
90
- default:
91
- // nothing
92
- }
93
- $result .= "'{$jsOption}': {$value}$colon\n";
94
- }
95
- }
96
- return $result;
97
- }
98
-
99
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/code/community/Strategery/Infinitescroll2/controllers/JsController.php DELETED
@@ -1,25 +0,0 @@
1
- <?php
2
- /**
3
- * InfiniteScroll - Magento Integration
4
- *
5
- * NOTICE OF LICENSE
6
- *
7
- * This source file is subject to the Academic Free License (AFL 3.0),
8
- * available through the world-wide-web at this URL:
9
- * http://opensource.org/licenses/afl-3.0.php
10
- *
11
- * @category Strategery
12
- * @package Strategery_Infinitescroll2
13
- * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
14
- * @copyright Copyright (c) 2011 Strategery Inc. (http://usestrategery.com)
15
- *
16
- * @author Gabriel Somoza (me@gabrielsomoza.com)
17
- * @link http://gabrielsomoza.com/
18
- */
19
- class Strategery_Infinitescroll2_JsController extends Mage_Core_Controller_Front_Action {
20
- public function indexAction() {
21
- $this->getResponse()->setHeader('Content-Type', 'text/javascript');
22
- $this->loadLayout();
23
- $this->renderLayout();
24
- }
25
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/code/community/Strategery/Infinitescroll2/etc/config.xml DELETED
@@ -1,101 +0,0 @@
1
- <?xml version="1.0"?>
2
- <!--
3
- /**
4
- * InfiniteScroll - Magento Integration
5
- *
6
- * NOTICE OF LICENSE
7
- *
8
- * This source file is subject to the Academic Free License (AFL 3.0),
9
- * available through the world-wide-web at this URL:
10
- * http://opensource.org/licenses/afl-3.0.php
11
- *
12
- * @category Strategery
13
- * @package Strategery_Infinitescroll2
14
- * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
15
- * @copyright Copyright (c) 2011 Strategery Inc. (http://usestrategery.com)
16
- *
17
- * @author Gabriel Somoza (me@gabrielsomoza.com)
18
- * @link http://gabrielsomoza.com/
19
- */
20
- -->
21
- <config>
22
- <modules>
23
- <Strategery_Infinitescroll2>
24
- <version>2.0.6</version>
25
- </Strategery_Infinitescroll2>
26
- </modules>
27
- <global>
28
- <helpers>
29
- <infinitescroll2>
30
- <class>Strategery_Infinitescroll2_Helper</class>
31
- </infinitescroll2>
32
- </helpers>
33
- </global>
34
- <frontend>
35
- <routers>
36
- <infinitescroll2>
37
- <use>standard</use>
38
- <args>
39
- <module>Strategery_Infinitescroll2</module>
40
- <frontName>infinitescroll2</frontName>
41
- </args>
42
- </infinitescroll2>
43
- </routers>
44
- <layout>
45
- <updates>
46
- <infinitescroll2>
47
- <file>strategery-infinitescroll2.xml</file>
48
- </infinitescroll2>
49
- </updates>
50
- </layout>
51
- </frontend>
52
- <default>
53
- <infinitescroll2>
54
- <general>
55
- <enabled>1</enabled>
56
- <debug>0</debug>
57
- </general>
58
- <selectors>
59
- <content>div.category-products</content>
60
- <navigation>div.toolbar:last</navigation>
61
- <next>div.pages a.next:first</next>
62
- <items>ul.products-grid</items>
63
- <loading>div.category-products</loading>
64
- </selectors>
65
- <design>
66
- <loading_img>http://www.infinite-scroll.com/loading.gif</loading_img>
67
- <loading_text><![CDATA[<em>Loading the next set of posts...</em>]]></loading_text>
68
- <done_text><![CDATA[<em>Congratulations, you've reached the end of the internet.</em>]]></done_text>
69
- <animate>0</animate>
70
- <local_mode>0</local_mode>
71
- <extra_scroll_px>150</extra_scroll_px>
72
- <buffer_px>150</buffer_px>
73
- </design>
74
- <callbacks>
75
- <processed_callback><![CDATA[function(elements){decorateGeneric($$('ul.products-grid'),['odd','even','first','last']);}]]></processed_callback>
76
- </callbacks>
77
- </infinitescroll2>
78
- </default>
79
- <adminhtml>
80
- <acl>
81
- <resources>
82
- <admin>
83
- <children>
84
- <system>
85
- <children>
86
- <config>
87
- <children>
88
- <infinitescroll2 translate="title" module="infinitescroll2">
89
- <title>Infinite Scroll</title>
90
- <sort_order>50</sort_order>
91
- </infinitescroll2>
92
- </children>
93
- </config>
94
- </children>
95
- </system>
96
- </children>
97
- </admin>
98
- </resources>
99
- </acl>
100
- </adminhtml>
101
- </config>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/code/community/Strategery/Infinitescroll2/etc/system.xml DELETED
@@ -1,210 +0,0 @@
1
- <?xml version="1.0"?>
2
- <!--
3
- /**
4
- * InfiniteScroll - Magento Integration
5
- *
6
- * NOTICE OF LICENSE
7
- *
8
- * This source file is subject to the Academic Free License (AFL 3.0),
9
- * available through the world-wide-web at this URL:
10
- * http://opensource.org/licenses/afl-3.0.php
11
- *
12
- * @category Strategery
13
- * @package Strategery_Infinitescroll2
14
- * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
15
- * @copyright Copyright (c) 2011 Strategery Inc. (http://usestrategery.com)
16
- *
17
- * @author Gabriel Somoza (me@gabrielsomoza.com)
18
- * @link http://gabrielsomoza.com/
19
- */
20
- -->
21
- <config>
22
- <sections>
23
- <infinitescroll2 translate="label" module="infinitescroll2">
24
- <label>Infinite Scroll</label>
25
- <tab>catalog</tab>
26
- <frontend_type>text</frontend_type>
27
- <sort_order>120</sort_order>
28
- <show_in_default>1</show_in_default>
29
- <show_in_website>1</show_in_website>
30
- <show_in_store>1</show_in_store>
31
- <groups>
32
- <general translate="label">
33
- <label>General</label>
34
- <frontend_type>text</frontend_type>
35
- <sort_order>1</sort_order>
36
- <show_in_default>1</show_in_default>
37
- <show_in_website>1</show_in_website>
38
- <show_in_store>1</show_in_store>
39
- <fields>
40
- <enabled>
41
- <label>Enabled</label>
42
- <frontend_type>select</frontend_type>
43
- <source_model>adminhtml/system_config_source_yesno</source_model>
44
- <sort_order>0</sort_order>
45
- <show_in_default>1</show_in_default>
46
- <show_in_website>1</show_in_website>
47
- <show_in_store>1</show_in_store>
48
- </enabled>
49
- <debug>
50
- <label>Debug Mode</label>
51
- <frontend_type>select</frontend_type>
52
- <source_model>adminhtml/system_config_source_yesno</source_model>
53
- <sort_order>1</sort_order>
54
- <show_in_default>1</show_in_default>
55
- <show_in_website>1</show_in_website>
56
- <show_in_store>1</show_in_store>
57
- </debug>
58
- </fields>
59
- </general>
60
- <selectors translate="label">
61
- <label>Selectors</label>
62
- <frontend_type>text</frontend_type>
63
- <sort_order>2</sort_order>
64
- <show_in_default>1</show_in_default>
65
- <show_in_website>1</show_in_website>
66
- <show_in_store>1</show_in_store>
67
- <fields>
68
- <content>
69
- <label>Content</label>
70
- <sort_order>1</sort_order>
71
- <show_in_default>1</show_in_default>
72
- <show_in_website>1</show_in_website>
73
- <show_in_store>1</show_in_store>
74
- <comment>Selector for the element that surrounds the items you will be loading more of.</comment>
75
- </content>
76
- <navigation>
77
- <label>Navigation</label>
78
- <sort_order>2</sort_order>
79
- <show_in_default>1</show_in_default>
80
- <show_in_website>1</show_in_website>
81
- <show_in_store>1</show_in_store>
82
- <comment>Selector for the paged navigation.</comment>
83
- </navigation>
84
- <next>
85
- <label>Next</label>
86
- <sort_order>3</sort_order>
87
- <show_in_default>1</show_in_default>
88
- <show_in_website>1</show_in_website>
89
- <show_in_store>1</show_in_store>
90
- <comment>Selector for the link to the next page.</comment>
91
- </next>
92
- <items>
93
- <label>Items</label>
94
- <sort_order>4</sort_order>
95
- <show_in_default>1</show_in_default>
96
- <show_in_website>1</show_in_website>
97
- <show_in_store>1</show_in_store>
98
- <comment>Selector for all items you'll retrieve.</comment>
99
- </items>
100
- <loading>
101
- <label>Loading</label>
102
- <sort_order>5</sort_order>
103
- <show_in_default>1</show_in_default>
104
- <show_in_website>1</show_in_website>
105
- <show_in_store>1</show_in_store>
106
- <comment>Selector for loading message and bar.</comment>
107
- </loading>
108
- </fields>
109
- </selectors>
110
- <design translate="label">
111
- <label>Design</label>
112
- <frontend_type>text</frontend_type>
113
- <sort_order>3</sort_order>
114
- <show_in_default>1</show_in_default>
115
- <show_in_website>1</show_in_website>
116
- <show_in_store>1</show_in_store>
117
- <fields>
118
- <loading_img>
119
- <label>Loading Image</label>
120
- <sort_order>1</sort_order>
121
- <show_in_default>1</show_in_default>
122
- <show_in_website>1</show_in_website>
123
- <show_in_store>1</show_in_store>
124
- </loading_img>
125
- <loading_text>
126
- <label>Loading Text</label>
127
- <sort_order>2</sort_order>
128
- <show_in_default>1</show_in_default>
129
- <show_in_website>1</show_in_website>
130
- <show_in_store>1</show_in_store>
131
- </loading_text>
132
- <done_text>
133
- <label>Done Text</label>
134
- <sort_order>3</sort_order>
135
- <show_in_default>1</show_in_default>
136
- <show_in_website>1</show_in_website>
137
- <show_in_store>1</show_in_store>
138
- </done_text>
139
- <animate>
140
- <label>Animate</label>
141
- <frontend_type>select</frontend_type>
142
- <source_model>adminhtml/system_config_source_yesno</source_model>
143
- <sort_order>4</sort_order>
144
- <show_in_default>1</show_in_default>
145
- <show_in_website>1</show_in_website>
146
- <show_in_store>1</show_in_store>
147
- <comment>Automatically scroll the page when new content loads.</comment>
148
- </animate>
149
- <hide_toolbar>
150
- <label>Hide Toolbar</label>
151
- <frontend_type>select</frontend_type>
152
- <source_model>adminhtml/system_config_source_yesno</source_model>
153
- <sort_order>4</sort_order>
154
- <show_in_default>1</show_in_default>
155
- <show_in_website>1</show_in_website>
156
- <show_in_store>1</show_in_store>
157
- </hide_toolbar>
158
- <local_mode>
159
- <label>Local Mode</label>
160
- <frontend_type>select</frontend_type>
161
- <source_model>adminhtml/system_config_source_yesno</source_model>
162
- <sort_order>5</sort_order>
163
- <show_in_default>1</show_in_default>
164
- <show_in_website>1</show_in_website>
165
- <show_in_store>1</show_in_store>
166
- <comment>Instead of watching the entire window scrolling, watch only the element this plugin was called on (set in Selectors->Content).</comment>
167
- </local_mode>
168
- <extra_scroll_px>
169
- <label>Extra Scroll (px)</label>
170
- <validate>validate-digits</validate>
171
- <sort_order>6</sort_order>
172
- <show_in_default>1</show_in_default>
173
- <show_in_website>1</show_in_website>
174
- <show_in_store>1</show_in_store>
175
- <comment>Number of pixels the page will scroll in addition to the height of the loaded DIV. Animate must be 'yes' in order for this to take effect.</comment>
176
- </extra_scroll_px>
177
- <buffer_px>
178
- <label>Buffer (px)</label>
179
- <validate>validate-digits</validate>
180
- <sort_order>7</sort_order>
181
- <show_in_default>1</show_in_default>
182
- <show_in_website>1</show_in_website>
183
- <show_in_store>1</show_in_store>
184
- <comment>Set an offset before page end from which the content will start to load. A high number will load the next page a long time before the user reaches the bottom of the screen.</comment>
185
- </buffer_px>
186
- </fields>
187
- </design>
188
- <callbacks translate="label">
189
- <label>Callbacks</label>
190
- <frontend_type>text</frontend_type>
191
- <sort_order>4</sort_order>
192
- <show_in_default>1</show_in_default>
193
- <show_in_website>1</show_in_website>
194
- <show_in_store>1</show_in_store>
195
- <fields>
196
- <processed_callback>
197
- <label>Processed Callback</label>
198
- <frontend_type>textarea</frontend_type>
199
- <sort_order>1</sort_order>
200
- <show_in_default>1</show_in_default>
201
- <show_in_website>1</show_in_website>
202
- <show_in_store>1</show_in_store>
203
- <comment><![CDATA[This function will be called right after appending new elements to the container and setting up animations. Default: function(){}]]></comment>
204
- </processed_callback>
205
- </fields>
206
- </callbacks>
207
- </groups>
208
- </infinitescroll2>
209
- </sections>
210
- </config>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/{etc/modules/Strategery_Infinitescroll2.xml → design/frontend/base/default/template/strategery/infinitescroll2/js.phtml} RENAMED
@@ -1,6 +1,5 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <!--
3
- /*
4
  * InfiniteScroll - Magento Integration
5
  *
6
  * NOTICE OF LICENSE
@@ -17,12 +16,10 @@
17
  * @author Gabriel Somoza (me@gabrielsomoza.com)
18
  * @link http://gabrielsomoza.com/
19
  */
20
- -->
21
- <config>
22
- <modules>
23
- <Strategery_Infinitescroll2>
24
- <codePool>community</codePool>
25
- <active>true</active>
26
- </Strategery_Infinitescroll2>
27
- </modules>
28
- </config>
1
+ <?php
2
+ /**
 
3
  * InfiniteScroll - Magento Integration
4
  *
5
  * NOTICE OF LICENSE
16
  * @author Gabriel Somoza (me@gabrielsomoza.com)
17
  * @link http://gabrielsomoza.com/
18
  */
19
+ $helper = $this->helper('infinitescroll2');
20
+ ?>
21
+ jQuery(document).ready(function ($) {
22
+ $('<?php echo $helper->getConfigData('selectors/content') ?>').infinitescroll({
23
+ <?php echo $helper->getJsConfig(); ?>
24
+ });
25
+ });
 
 
app/design/frontend/base/default/template/strategery/infinitescroll2/toolbar.phtml ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * InfiniteScroll - Magento Integration
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Academic Free License (AFL 3.0),
8
+ * available through the world-wide-web at this URL:
9
+ * http://opensource.org/licenses/afl-3.0.php
10
+ *
11
+ * @category Strategery
12
+ * @package Strategery_Infinitescroll2
13
+ * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
14
+ * @copyright Copyright (c) 2011 Strategery Inc. (http://usestrategery.com)
15
+ *
16
+ * @author Gabriel Somoza (me@gabrielsomoza.com)
17
+ * @link http://gabrielsomoza.com/
18
+ *
19
+ * Update 2.0.0
20
+ * @author Damian A. Pastorini (admin@dwdesigner.com)
21
+ * @link http://www.dwdesigner.com/
22
+ */
23
+ ?>
24
+ <?php if(Mage::getVersion()>1.3): ?>
25
+ <?php if($this->getCollection()->getSize()): ?>
26
+ <div class="toolbar" style="display:none;">
27
+ <?php echo $this->getPagerHtml() ?>
28
+ </div>
29
+ <?php endif ?>
30
+ <?php else: ?>
31
+ <?php if($this->getCollection()->getSize() && $this->getLastPageNum()>1): ?>
32
+ <table class="pager" cellspacing="0" style="display:none;">
33
+ <tr>
34
+ <td class="pages">
35
+ <strong><?php echo $this->__('Page:') ?></strong>
36
+ <ol>
37
+ <?php if (!$this->isFirstPage()): ?>
38
+ <li><a href="<?php echo $this->getPreviousPageUrl() ?>"><img src="<?php echo $this->getSkinUrl('images/pager_arrow_left.gif') ?>" alt="<?php echo $this->__('Previous') ?>" /></a></li>
39
+ <?php endif ?>
40
+ <?php foreach ($this->getPages() as $_page): ?>
41
+ <?php if ($this->isPageCurrent($_page)): ?>
42
+ <li><span class="on"><?php echo $_page ?></span></li>
43
+ <?php else: ?>
44
+ <li><a href="<?php echo $this->getPageUrl($_page) ?>"><?php echo $_page ?></a></li>
45
+ <?php endif ?>
46
+ <?php endforeach;; ?>
47
+ <?php if (!$this->isLastPage()): ?>
48
+ <li><a href="<?php echo $this->getNextPageUrl() ?>"><img src="<?php echo $this->getSkinUrl('images/pager_arrow_right.gif') ?>" alt="<?php echo $this->__('Next') ?>" /></a></li>
49
+ <?php endif ?>
50
+ </ol>
51
+ </td>
52
+ </tr>
53
+ </table>
54
+ <?php endif ?>
55
+ <?php endif; ?>
app/design/frontend/default/default/layout/strategery-infinitescroll2.xml DELETED
@@ -1,87 +0,0 @@
1
- <?xml version="1.0"?>
2
- <!--
3
- /**
4
- * InfiniteScroll - Magento Integration
5
- *
6
- * NOTICE OF LICENSE
7
- *
8
- * This source file is subject to the Academic Free License (AFL 3.0),
9
- * available through the world-wide-web at this URL:
10
- * http://opensource.org/licenses/afl-3.0.php
11
- *
12
- * @category Strategery
13
- * @package Strategery_Infinitescroll2
14
- * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
15
- * @copyright Copyright (c) 2011 Strategery Inc. (http://usestrategery.com)
16
- *
17
- * @author Gabriel Somoza (me@gabrielsomoza.com)
18
- * @link http://gabrielsomoza.com/
19
- */
20
- -->
21
- <layout version="0.1.0">
22
- <infinitescroll2_js_index>
23
- <reference name="root">
24
- <action method="setTemplate" ifconfig="infinitescroll2/general/enabled">
25
- <template>strategery/infinitescroll2/js.phtml</template>
26
- </action>
27
- </reference>
28
- </infinitescroll2_js_index>
29
-
30
- <catalog_category_default>
31
- <reference name="head">
32
- <action method="addItem" ifconfig="infinitescroll2/general/enabled">
33
- <type>js</type>
34
- <name>jquery/jquery.latest.min.js</name>
35
- </action>
36
- <action method="addItem" ifconfig="infinitescroll2/general/enabled">
37
- <type>js</type>
38
- <name>jquery/infinitescroll2/jquery.infinitescroll2.js</name>
39
- </action>
40
- <action method="addItem" ifconfig="infinitescroll2/general/enabled">
41
- <type>js</type>
42
- <name>jquery/infinitescroll2/behaviors/infinitescroll2-magento.js</name>
43
- </action>
44
- </reference>
45
- <reference name="before_body_end">
46
- <block type="core/text" name="infinitescroll2_config">
47
- <action method="setText">
48
- <text><![CDATA[<script type="text/javascript" src="/infinitescroll2/js"></script>]]></text>
49
- </action>
50
- </block>
51
- </reference>
52
- <reference name="product_list_toolbar">
53
- <action method="setTemplate" ifconfig="infinitescroll2/design/hide_toolbar">
54
- <template>strategery/infinitescroll2/toolbar.phtml</template>
55
- </action>
56
- </reference>
57
- </catalog_category_default>
58
-
59
- <catalog_category_layered>
60
- <reference name="head">
61
- <action method="addItem" ifconfig="infinitescroll2/general/enabled">
62
- <type>js</type>
63
- <name>jquery/jquery.latest.min.js</name>
64
- </action>
65
- <action method="addItem" ifconfig="infinitescroll2/general/enabled">
66
- <type>js</type>
67
- <name>jquery/infinitescroll2/jquery.infinitescroll2.js</name>
68
- </action>
69
- <action method="addItem" ifconfig="infinitescroll2/general/enabled">
70
- <type>js</type>
71
- <name>jquery/infinitescroll2/behaviors/infinitescroll2-magento.js</name>
72
- </action>
73
- </reference>
74
- <reference name="before_body_end">
75
- <block type="core/text" name="infinitescroll2_config">
76
- <action method="setText">
77
- <text><![CDATA[<script type="text/javascript" src="/infinitescroll2/js"></script>]]></text>
78
- </action>
79
- </block>
80
- </reference>
81
- <reference name="product_list_toolbar">
82
- <action method="setTemplate" ifconfig="infinitescroll2/design/hide_toolbar">
83
- <template>strategery/infinitescroll2/toolbar.phtml</template>
84
- </action>
85
- </reference>
86
- </catalog_category_layered>
87
- </layout>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/design/frontend/default/default/template/strategery/infinitescroll2/js.phtml CHANGED
@@ -16,9 +16,10 @@
16
  * @author Gabriel Somoza (me@gabrielsomoza.com)
17
  * @link http://gabrielsomoza.com/
18
  */
19
- $helper = $this->helper('infinitescroll2'); ?>
 
20
  jQuery(document).ready(function ($) {
21
- $('<?php echo $helper->getConfigData('selectors/content') ?>').infinitescroll2({
22
  <?php echo $helper->getJsConfig(); ?>
23
  });
24
  });
16
  * @author Gabriel Somoza (me@gabrielsomoza.com)
17
  * @link http://gabrielsomoza.com/
18
  */
19
+ $helper = $this->helper('infinitescroll2');
20
+ ?>
21
  jQuery(document).ready(function ($) {
22
+ $('<?php echo $helper->getConfigData('selectors/content') ?>').infinitescroll({
23
  <?php echo $helper->getJsConfig(); ?>
24
  });
25
  });
app/design/frontend/default/default/template/strategery/infinitescroll2/toolbar.phtml CHANGED
@@ -15,6 +15,10 @@
15
  *
16
  * @author Gabriel Somoza (me@gabrielsomoza.com)
17
  * @link http://gabrielsomoza.com/
 
 
 
 
18
  */
19
  ?>
20
  <?php if(Mage::getVersion()>1.3): ?>
15
  *
16
  * @author Gabriel Somoza (me@gabrielsomoza.com)
17
  * @link http://gabrielsomoza.com/
18
+ *
19
+ * Update 2.0.0
20
+ * @author Damian A. Pastorini (admin@dwdesigner.com)
21
+ * @link http://www.dwdesigner.com/
22
  */
23
  ?>
24
  <?php if(Mage::getVersion()>1.3): ?>
js/jquery/infinitescroll2/behaviors/{infinitescroll2-magento.js → infinitescroll-magento.js} RENAMED
@@ -19,7 +19,7 @@
19
  Behavior for Magento
20
  --------------------------------
21
  INFINITE SCROLL:
22
- + https://github.com/paulirish/infinitescroll2/
23
  + version 2.0b2.110617
24
  + Copyright 2011 Paul Irish & Luke Shumard
25
  + Licensed under the MIT license
@@ -27,7 +27,7 @@
27
  */
28
  (function($){
29
  $(document).ready(function(){
30
- $.extend($.infinitescroll2.prototype,{
31
  _loadcallback_magento: function infscr_loadcallback_magento (box,data) {
32
  var opts = this.options,
33
  callback = this.options.callback, // GLOBAL OBJECT FOR CALLBACK
19
  Behavior for Magento
20
  --------------------------------
21
  INFINITE SCROLL:
22
+ + https://github.com/paulirish/infinitescroll/
23
  + version 2.0b2.110617
24
  + Copyright 2011 Paul Irish & Luke Shumard
25
  + Licensed under the MIT license
27
  */
28
  (function($){
29
  $(document).ready(function(){
30
+ $.extend($.infinitescroll.prototype,{
31
  _loadcallback_magento: function infscr_loadcallback_magento (box,data) {
32
  var opts = this.options,
33
  callback = this.options.callback, // GLOBAL OBJECT FOR CALLBACK
js/jquery/infinitescroll2/{jquery.infinitescroll2.js → jquery.infinitescroll.js} RENAMED
@@ -13,14 +13,14 @@
13
 
14
  (function (window, $, undefined) {
15
 
16
- $.infinitescroll2 = function infscr(options, callback, element) {
17
 
18
  this.element = $(element);
19
  this._create(options, callback);
20
 
21
  };
22
 
23
- $.infinitescroll2.defaults = {
24
  loading: {
25
  finished: undefined,
26
  finishedMsg: "<em>Congratulations, you've reached the end of the internet.</em>",
@@ -60,7 +60,7 @@
60
  };
61
 
62
 
63
- $.infinitescroll2.prototype = {
64
 
65
  /*
66
  ----------------------------
@@ -109,7 +109,7 @@
109
  // If selectors from options aren't valid, return false
110
  if (!this._validate(options)) { return false; }
111
  // Define options and shorthand
112
- var opts = this.options = $.extend(true, {}, $.infinitescroll2.defaults, options),
113
  // get the relative URL - everything past the domain name.
114
  relurl = /(.*?\/\/).*?(\/.*)/,
115
  path = $(opts.nextSelector).attr('href');
@@ -487,9 +487,11 @@
487
 
488
  // if we're dealing with a table we can't use DIVs
489
  box = $(opts.contentSelector).is('table') ? $('<tbody/>') : $('<div/>');
490
-
491
  desturl = path.join(opts.state.currPage);
492
-
 
 
493
  method = (opts.dataType == 'html' || opts.dataType == 'json') ? opts.dataType : 'html+callback';
494
  if (opts.appendCallback && opts.dataType == 'html') method += '+callback'
495
 
@@ -600,7 +602,7 @@
600
 
601
  */
602
 
603
- $.fn.infinitescroll2 = function infscr_init(options, callback) {
604
 
605
 
606
  var thisCall = typeof options;
@@ -614,7 +616,7 @@
614
 
615
  this.each(function () {
616
 
617
- var instance = $.data(this, 'infinitescroll2');
618
 
619
  if (!instance) {
620
  // not setup yet
@@ -638,7 +640,7 @@
638
 
639
  this.each(function () {
640
 
641
- var instance = $.data(this, 'infinitescroll2');
642
 
643
  if (instance) {
644
 
@@ -648,7 +650,7 @@
648
  } else {
649
 
650
  // initialize new instance
651
- $.data(this, 'infinitescroll2', new $.infinitescroll2(options, callback, this));
652
 
653
  }
654
 
13
 
14
  (function (window, $, undefined) {
15
 
16
+ $.infinitescroll = function infscr(options, callback, element) {
17
 
18
  this.element = $(element);
19
  this._create(options, callback);
20
 
21
  };
22
 
23
+ $.infinitescroll.defaults = {
24
  loading: {
25
  finished: undefined,
26
  finishedMsg: "<em>Congratulations, you've reached the end of the internet.</em>",
60
  };
61
 
62
 
63
+ $.infinitescroll.prototype = {
64
 
65
  /*
66
  ----------------------------
109
  // If selectors from options aren't valid, return false
110
  if (!this._validate(options)) { return false; }
111
  // Define options and shorthand
112
+ var opts = this.options = $.extend(true, {}, $.infinitescroll.defaults, options),
113
  // get the relative URL - everything past the domain name.
114
  relurl = /(.*?\/\/).*?(\/.*)/,
115
  path = $(opts.nextSelector).attr('href');
487
 
488
  // if we're dealing with a table we can't use DIVs
489
  box = $(opts.contentSelector).is('table') ? $('<tbody/>') : $('<div/>');
490
+
491
  desturl = path.join(opts.state.currPage);
492
+
493
+ desturl += '&scrollCall=1';
494
+
495
  method = (opts.dataType == 'html' || opts.dataType == 'json') ? opts.dataType : 'html+callback';
496
  if (opts.appendCallback && opts.dataType == 'html') method += '+callback'
497
 
602
 
603
  */
604
 
605
+ $.fn.infinitescroll = function infscr_init(options, callback) {
606
 
607
 
608
  var thisCall = typeof options;
616
 
617
  this.each(function () {
618
 
619
+ var instance = $.data(this, 'infinitescroll');
620
 
621
  if (!instance) {
622
  // not setup yet
640
 
641
  this.each(function () {
642
 
643
+ var instance = $.data(this, 'infinitescroll');
644
 
645
  if (instance) {
646
 
650
  } else {
651
 
652
  // initialize new instance
653
+ $.data(this, 'infinitescroll', new $.infinitescroll(options, callback, this));
654
 
655
  }
656
 
js/jquery/infinitescroll2/{jquery.infinitescroll2.min.js → jquery.infinitescroll.min.js} RENAMED
@@ -2,7 +2,7 @@
2
  --------------------------------
3
  Infinite Scroll
4
  --------------------------------
5
- + https://github.com/paulirish/infinitescroll2
6
  + version 2.0b2.110713
7
  + Copyright 2011 Paul Irish & Luke Shumard
8
  + Licensed under the MIT license
@@ -11,11 +11,11 @@
11
 
12
  */
13
 
14
- (function(window,$,undefined){$.infinitescroll2=function infscr(options,callback,element){this.element=$(element);this._create(options,callback);};$.infinitescroll2.defaults={loading:{finished:undefined,finishedMsg:"<em>Congratulations, you've reached the end of the internet.</em>",img:"http://www.infinite-scroll.com/loading.gif",msg:null,msgText:"<em>Loading the next set of posts...</em>",selector:null,speed:'fast',start:undefined},state:{isDuringAjax:false,isInvalidPage:false,isDestroyed:false,isDone:false,isPaused:false,currPage:1},callback:undefined,debug:false,behavior:undefined,binder:$(window),nextSelector:"div.navigation a:first",navSelector:"div.navigation",contentSelector:null,extraScrollPx:150,itemSelector:"div.post",animate:false,pathParse:undefined,dataType:'html',appendCallback:true,bufferPx:40,errorCallback:function(){},infid:0,pixelsFromNavToBottom:undefined,path:undefined};$.infinitescroll2.prototype={_binding:function infscr_binding(binding){var instance=this,opts=instance.options;if(!!opts.behavior&&this['_binding_'+opts.behavior]!==undefined){this['_binding_'+opts.behavior].call(this);return;}
15
  if(binding!=='bind'&&binding!=='unbind'){this._debug('Binding value '+binding+' not valid')
16
  return false;}
17
  if(binding=='unbind'){(this.options.binder).unbind('smartscroll.infscr.'+instance.options.infid);}else{(this.options.binder)[binding]('smartscroll.infscr.'+instance.options.infid,function(){instance.scroll();});};this._debug('Binding',binding);},_create:function infscr_create(options,callback){if(!this._validate(options)){return false;}
18
- var opts=this.options=$.extend(true,{},$.infinitescroll2.defaults,options),relurl=/(.*?\/\/).*?(\/.*)/,path=$(opts.nextSelector).attr('href');opts.contentSelector=opts.contentSelector||this.element;opts.loading.selector=opts.loading.selector||opts.contentSelector;if(!path){this._debug('Navigation selector not found');return;}
19
  opts.path=this._determinepath(path);opts.loading.msg=$('<div id="infscr-loading"><img alt="Loading..." src="'+opts.loading.img+'" /><div>'+opts.loading.msgText+'</div></div>');(new Image()).src=opts.loading.img;opts.pixelsFromNavToBottom=$(document).height()-$(opts.navSelector).offset().top;opts.loading.start=opts.loading.start||function(){$(opts.navSelector).hide();opts.loading.msg.appendTo(opts.loading.selector).show(opts.loading.speed,function(){beginAjax(opts);});};opts.loading.finished=opts.loading.finished||function(){opts.loading.msg.fadeOut('normal');};opts.callback=function(instance,data){if(!!opts.behavior&&instance['_callback_'+opts.behavior]!==undefined){instance['_callback_'+opts.behavior].call($(opts.contentSelector)[0],data);}
20
  if(callback){callback.call($(opts.contentSelector)[0],data);}};this._setup();},_debug:function infscr_debug(){if(this.options.debug){return window.console&&console.log.call(console,arguments);}},_determinepath:function infscr_determinepath(path){var opts=this.options;if(!!opts.behavior&&this['_determinepath_'+opts.behavior]!==undefined){this['_determinepath_'+opts.behavior].call(this,path);return;}
21
  if(!!opts.pathParse){this._debug('pathParse manual');return opts.pathParse;}else if(path.match(/^(.*?)\b2\b(.*?$)/)){path=path.match(/^(.*?)\b2\b(.*?$)/).slice(1);}else if(path.match(/^(.*?)2(.*?$)/)){if(path.match(/^(.*?page=)2(\/.*|$)/)){path=path.match(/^(.*?page=)2(\/.*|$)/).slice(1);return path;}
@@ -40,8 +40,8 @@ return true;}},bind:function infscr_bind(){this._binding('bind');},destroy:funct
40
  switch(method){case'html+callback':instance._debug('Using HTML via .load() method');box.load(desturl+' '+opts.itemSelector,null,function infscr_ajax_callback(responseText){instance._loadcallback(box,responseText);});break;case'html':case'json':instance._debug('Using '+(method.toUpperCase())+' via $.ajax() method');$.ajax({url:desturl,dataType:opts.dataType,complete:function infscr_ajax_callback(jqXHR,textStatus){condition=(typeof(jqXHR.isResolved)!=='undefined')?(jqXHR.isResolved()):(textStatus==="success"||textStatus==="notmodified");(condition)?instance._loadcallback(box,jqXHR.responseText):instance._error('end');}});break;}};if(!!opts.behavior&&this['retrieve_'+opts.behavior]!==undefined){this['retrieve_'+opts.behavior].call(this,pageNum);return;}
41
  if(opts.state.isDestroyed){this._debug('Instance is destroyed');return false;};opts.state.isDuringAjax=true;opts.loading.start.call($(opts.contentSelector)[0],opts);},scroll:function infscr_scroll(){var opts=this.options,state=opts.state;if(!!opts.behavior&&this['scroll_'+opts.behavior]!==undefined){this['scroll_'+opts.behavior].call(this);return;}
42
  if(state.isDuringAjax||state.isInvalidPage||state.isDone||state.isDestroyed||state.isPaused)return;if(!this._nearbottom())return;this.retrieve();},toggle:function infscr_toggle(){this._pausing();},unbind:function infscr_unbind(){this._binding('unbind');},update:function infscr_options(key){if($.isPlainObject(key)){this.options=$.extend(true,this.options,key);}}}
43
- $.fn.infinitescroll2=function infscr_init(options,callback){var thisCall=typeof options;switch(thisCall){case'string':var args=Array.prototype.slice.call(arguments,1);this.each(function(){var instance=$.data(this,'infinitescroll2');if(!instance){return false;}
44
  if(!$.isFunction(instance[options])||options.charAt(0)==="_"){return false;}
45
- instance[options].apply(instance,args);});break;case'object':this.each(function(){var instance=$.data(this,'infinitescroll2');if(instance){instance.update(options);}else{$.data(this,'infinitescroll2',new $.infinitescroll2(options,callback,this));}});break;}
46
  return this;};var event=$.event,scrollTimeout;event.special.smartscroll={setup:function(){$(this).bind("scroll",event.special.smartscroll.handler);},teardown:function(){$(this).unbind("scroll",event.special.smartscroll.handler);},handler:function(event,execAsap){var context=this,args=arguments;event.type="smartscroll";if(scrollTimeout){clearTimeout(scrollTimeout);}
47
  scrollTimeout=setTimeout(function(){$.event.handle.apply(context,args);},execAsap==="execAsap"?0:100);}};$.fn.smartscroll=function(fn){return fn?this.bind("smartscroll",fn):this.trigger("smartscroll",["execAsap"]);};})(window,jQuery);
2
  --------------------------------
3
  Infinite Scroll
4
  --------------------------------
5
+ + https://github.com/paulirish/infinitescroll
6
  + version 2.0b2.110713
7
  + Copyright 2011 Paul Irish & Luke Shumard
8
  + Licensed under the MIT license
11
 
12
  */
13
 
14
+ (function(window,$,undefined){$.infinitescroll=function infscr(options,callback,element){this.element=$(element);this._create(options,callback);};$.infinitescroll.defaults={loading:{finished:undefined,finishedMsg:"<em>Congratulations, you've reached the end of the internet.</em>",img:"http://www.infinite-scroll.com/loading.gif",msg:null,msgText:"<em>Loading the next set of posts...</em>",selector:null,speed:'fast',start:undefined},state:{isDuringAjax:false,isInvalidPage:false,isDestroyed:false,isDone:false,isPaused:false,currPage:1},callback:undefined,debug:false,behavior:undefined,binder:$(window),nextSelector:"div.navigation a:first",navSelector:"div.navigation",contentSelector:null,extraScrollPx:150,itemSelector:"div.post",animate:false,pathParse:undefined,dataType:'html',appendCallback:true,bufferPx:40,errorCallback:function(){},infid:0,pixelsFromNavToBottom:undefined,path:undefined};$.infinitescroll.prototype={_binding:function infscr_binding(binding){var instance=this,opts=instance.options;if(!!opts.behavior&&this['_binding_'+opts.behavior]!==undefined){this['_binding_'+opts.behavior].call(this);return;}
15
  if(binding!=='bind'&&binding!=='unbind'){this._debug('Binding value '+binding+' not valid')
16
  return false;}
17
  if(binding=='unbind'){(this.options.binder).unbind('smartscroll.infscr.'+instance.options.infid);}else{(this.options.binder)[binding]('smartscroll.infscr.'+instance.options.infid,function(){instance.scroll();});};this._debug('Binding',binding);},_create:function infscr_create(options,callback){if(!this._validate(options)){return false;}
18
+ var opts=this.options=$.extend(true,{},$.infinitescroll.defaults,options),relurl=/(.*?\/\/).*?(\/.*)/,path=$(opts.nextSelector).attr('href');opts.contentSelector=opts.contentSelector||this.element;opts.loading.selector=opts.loading.selector||opts.contentSelector;if(!path){this._debug('Navigation selector not found');return;}
19
  opts.path=this._determinepath(path);opts.loading.msg=$('<div id="infscr-loading"><img alt="Loading..." src="'+opts.loading.img+'" /><div>'+opts.loading.msgText+'</div></div>');(new Image()).src=opts.loading.img;opts.pixelsFromNavToBottom=$(document).height()-$(opts.navSelector).offset().top;opts.loading.start=opts.loading.start||function(){$(opts.navSelector).hide();opts.loading.msg.appendTo(opts.loading.selector).show(opts.loading.speed,function(){beginAjax(opts);});};opts.loading.finished=opts.loading.finished||function(){opts.loading.msg.fadeOut('normal');};opts.callback=function(instance,data){if(!!opts.behavior&&instance['_callback_'+opts.behavior]!==undefined){instance['_callback_'+opts.behavior].call($(opts.contentSelector)[0],data);}
20
  if(callback){callback.call($(opts.contentSelector)[0],data);}};this._setup();},_debug:function infscr_debug(){if(this.options.debug){return window.console&&console.log.call(console,arguments);}},_determinepath:function infscr_determinepath(path){var opts=this.options;if(!!opts.behavior&&this['_determinepath_'+opts.behavior]!==undefined){this['_determinepath_'+opts.behavior].call(this,path);return;}
21
  if(!!opts.pathParse){this._debug('pathParse manual');return opts.pathParse;}else if(path.match(/^(.*?)\b2\b(.*?$)/)){path=path.match(/^(.*?)\b2\b(.*?$)/).slice(1);}else if(path.match(/^(.*?)2(.*?$)/)){if(path.match(/^(.*?page=)2(\/.*|$)/)){path=path.match(/^(.*?page=)2(\/.*|$)/).slice(1);return path;}
40
  switch(method){case'html+callback':instance._debug('Using HTML via .load() method');box.load(desturl+' '+opts.itemSelector,null,function infscr_ajax_callback(responseText){instance._loadcallback(box,responseText);});break;case'html':case'json':instance._debug('Using '+(method.toUpperCase())+' via $.ajax() method');$.ajax({url:desturl,dataType:opts.dataType,complete:function infscr_ajax_callback(jqXHR,textStatus){condition=(typeof(jqXHR.isResolved)!=='undefined')?(jqXHR.isResolved()):(textStatus==="success"||textStatus==="notmodified");(condition)?instance._loadcallback(box,jqXHR.responseText):instance._error('end');}});break;}};if(!!opts.behavior&&this['retrieve_'+opts.behavior]!==undefined){this['retrieve_'+opts.behavior].call(this,pageNum);return;}
41
  if(opts.state.isDestroyed){this._debug('Instance is destroyed');return false;};opts.state.isDuringAjax=true;opts.loading.start.call($(opts.contentSelector)[0],opts);},scroll:function infscr_scroll(){var opts=this.options,state=opts.state;if(!!opts.behavior&&this['scroll_'+opts.behavior]!==undefined){this['scroll_'+opts.behavior].call(this);return;}
42
  if(state.isDuringAjax||state.isInvalidPage||state.isDone||state.isDestroyed||state.isPaused)return;if(!this._nearbottom())return;this.retrieve();},toggle:function infscr_toggle(){this._pausing();},unbind:function infscr_unbind(){this._binding('unbind');},update:function infscr_options(key){if($.isPlainObject(key)){this.options=$.extend(true,this.options,key);}}}
43
+ $.fn.infinitescroll=function infscr_init(options,callback){var thisCall=typeof options;switch(thisCall){case'string':var args=Array.prototype.slice.call(arguments,1);this.each(function(){var instance=$.data(this,'infinitescroll');if(!instance){return false;}
44
  if(!$.isFunction(instance[options])||options.charAt(0)==="_"){return false;}
45
+ instance[options].apply(instance,args);});break;case'object':this.each(function(){var instance=$.data(this,'infinitescroll');if(instance){instance.update(options);}else{$.data(this,'infinitescroll',new $.infinitescroll(options,callback,this));}});break;}
46
  return this;};var event=$.event,scrollTimeout;event.special.smartscroll={setup:function(){$(this).bind("scroll",event.special.smartscroll.handler);},teardown:function(){$(this).unbind("scroll",event.special.smartscroll.handler);},handler:function(event,execAsap){var context=this,args=arguments;event.type="smartscroll";if(scrollTimeout){clearTimeout(scrollTimeout);}
47
  scrollTimeout=setTimeout(function(){$.event.handle.apply(context,args);},execAsap==="execAsap"?0:100);}};$.fn.smartscroll=function(fn){return fn?this.bind("smartscroll",fn):this.trigger("smartscroll",["execAsap"]);};})(window,jQuery);
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Strategery_InfiniteScroll2</name>
4
- <version>2.0.6</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/afl-3.0.php">Academic Free License (AFL 3.0)</license>
7
  <channel>community</channel>
@@ -20,11 +20,11 @@ Configuration:&#xD;
20
  If you have a different theme other than the default, you will need to configure the plugin by going to&#xD;
21
  System / Configuration / Catalog / Infinite Scroll.</description>
22
  <notes>Automatic load next page of current product list.&#xD;
23
- Support for Magento 1.3 up to 1.6</notes>
24
- <authors><author><name>Damian A. Pastorini</name><user>auto-converted</user><email>contact@usestrategery.com</email></author></authors>
25
- <date>2012-02-16</date>
26
- <time>18:43:12</time>
27
- <contents><target name="mageetc"><dir name="modules"><file name="Strategery_Infinitescroll2.xml" hash="8724cb82b6d47b9996610029e302e5d4"/></dir></target><target name="magecommunity"><dir name="Strategery"><dir name="Infinitescroll2"><dir name="Helper"><file name="Data.php" hash="4470842fcf897b74be24aff876023a0b"/></dir><dir name="controllers"><file name="JsController.php" hash="8c189f93e5a8b67c7a7f87b130d30168"/></dir><dir name="etc"><file name="config.xml" hash="bb37828f76ce44ff6a6433abf14d33c0"/><file name="system.xml" hash="89d5b7e732f3896070dd7bd50dc1d065"/></dir></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="default"><dir name="default"><dir name="layout"><file name="strategery-infinitescroll2.xml" hash="277105374408a1080222344bb3852da1"/></dir><dir name="template"><dir name="strategery"><dir name="infinitescroll2"><file name="js.phtml" hash="470d8461cb86160d579cbe77867b339f"/><file name="toolbar.phtml" hash="a12d9ac5473b4b1ffd54f459888c6731"/></dir></dir></dir></dir></dir></dir></target><target name="mage"><dir name="js"><dir name="jquery"><dir name="infinitescroll2"><dir name="behaviors"><file name="infinitescroll2-magento.js" hash="0e95c970a3ff3a53b2516291e99f6294"/></dir><file name="jquery.infinitescroll2.js" hash="b551e60e1a986980022cf1d3d2aeb7d2"/><file name="jquery.infinitescroll2.min.js" hash="4877dc6f7c304b960c4a5e42855bd781"/></dir><file name="jquery.latest.min.js" hash="7ffe78e450bedfa8878241c3abc5edba"/></dir></dir></target></contents>
28
  <compatible/>
29
  <dependencies/>
30
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Strategery_InfiniteScroll2</name>
4
+ <version>2.1.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/afl-3.0.php">Academic Free License (AFL 3.0)</license>
7
  <channel>community</channel>
20
  If you have a different theme other than the default, you will need to configure the plugin by going to&#xD;
21
  System / Configuration / Catalog / Infinite Scroll.</description>
22
  <notes>Automatic load next page of current product list.&#xD;
23
+ Support for Magento 1.3 up to 1.7</notes>
24
+ <authors><author><name>Damian Alberto Pastorini</name><user>auto-converted</user><email>damian.pastorini@usestrategery.com</email></author></authors>
25
+ <date>2012-06-06</date>
26
+ <time>17:19:46</time>
27
+ <contents><target name="mageetc"><dir name="modules"><file name="Strategery_Infinitescroll.xml" hash=""/></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="strategery-infinitescroll.xml" hash=""/></dir><dir name="template"><dir name="strategery"><dir name="infinitescroll2"><file name="js.phtml" hash="e45eb017f11a203291c8c1a66eb7f606"/><file name="toolbar.phtml" hash="d16882d540e2c23501f84a64e33c67e2"/></dir></dir></dir></dir></dir><dir name="default"><dir name="default"><dir name="layout"><file name="strategery-infinitescroll.xml" hash=""/></dir><dir name="template"><dir name="strategery"><dir name="infinitescroll2"><file name="js.phtml" hash="e45eb017f11a203291c8c1a66eb7f606"/><file name="toolbar.phtml" hash="d16882d540e2c23501f84a64e33c67e2"/></dir></dir></dir></dir></dir></dir></target><target name="mage"><dir name="js"><dir name="jquery"><dir name="infinitescroll2"><dir name="behaviors"><file name="infinitescroll-magento.js" hash="de9f632d8480e67a36f884aa79d08949"/></dir><file name="jquery.infinitescroll.js" hash="50dd89bf91ee4a0eb886826cf8bbf319"/><file name="jquery.infinitescroll.min.js" hash="7cb38aca89caf614b2c3894f01d19727"/></dir><file name="jquery.latest.min.js" hash="7ffe78e450bedfa8878241c3abc5edba"/></dir></dir></target></contents>
28
  <compatible/>
29
  <dependencies/>
30
  </package>