aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorflop25 <flop25@piwigo.org>2013-01-17 18:38:54 +0000
committerflop25 <flop25@piwigo.org>2013-01-17 18:38:54 +0000
commit63198af4992a825e4e1ccd6daba30c798be71d8a (patch)
tree4a8fb38f82b02dfd919d0c481999f0e446a42f0d
parentb91d2f7772db73eb3be07cd269ebacd31c8a7b1f (diff)
bug:2820 & bug:2684
much better code : ability to pass max_requests to the js file like error_icon git-svn-id: http://piwigo.org/svn/trunk@20212 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to '')
-rw-r--r--themes/default/js/thumbnails.loader.js5
-rw-r--r--themes/default/template/comment_list.tpl2
-rw-r--r--themes/default/template/mainpage_categories.tpl44
-rw-r--r--themes/default/template/thumbnails.tpl44
4 files changed, 17 insertions, 78 deletions
diff --git a/themes/default/js/thumbnails.loader.js b/themes/default/js/thumbnails.loader.js
index b383b7276..3d54dd825 100644
--- a/themes/default/js/thumbnails.loader.js
+++ b/themes/default/js/thumbnails.loader.js
@@ -1,7 +1,10 @@
+if ( typeof( max_requests ) == "undefined" )
+ max_requests = 3;
+
var thumbnails_queue = jQuery.manageAjax.create('queued', {
queue: true,
cacheResponse: false,
- maxRequests: 3,
+ maxRequests: max_requests,
preventDoubleRequests: false
});
diff --git a/themes/default/template/comment_list.tpl b/themes/default/template/comment_list.tpl
index f70a1a075..64b6ee2b5 100644
--- a/themes/default/template/comment_list.tpl
+++ b/themes/default/template/comment_list.tpl
@@ -9,7 +9,7 @@
}
{/html_style}{/strip}
{/if}
-{footer_script}var error_icon = "{$ROOT_URL}{$themeconf.icon_dir}/errors_small.png"{/footer_script}
+{footer_script}var error_icon = "{$ROOT_URL}{$themeconf.icon_dir}/errors_small.png";{/footer_script}
<div class="loader" style="display: none; position: fixed; right: 0;bottom: 0;"><img src="{$ROOT_URL}{$themeconf.img_dir}/ajax_loader.gif"></div>
<ul class="commentsList">
{foreach from=$comments item=comment name=comment_loop}
diff --git a/themes/default/template/mainpage_categories.tpl b/themes/default/template/mainpage_categories.tpl
index 8657b921b..096067703 100644
--- a/themes/default/template/mainpage_categories.tpl
+++ b/themes/default/template/mainpage_categories.tpl
@@ -7,49 +7,17 @@
height: {$derivative_params->max_height()+5}px;
}
{/html_style}{/strip}
+{footer_script}
+ var error_icon = "{$ROOT_URL}{$themeconf.icon_dir}/errors_small.png";
+ var max_requests = "{$maxRequests}";
+{/footer_script}
<div class="loader" style="display: none; position: fixed; right: 0;bottom: 0;"><img src="{$ROOT_URL}{$themeconf.img_dir}/ajax_loader.gif"></div>
<ul class="thumbnailCategories">
{foreach from=$category_thumbnails item=cat name=cat_loop}
{assign var=derivative value=$pwg->derivative($derivative_params, $cat.representative.src_image)}
-{if !$derivative->is_cached() and !$js_loaded}
+{if !$derivative->is_cached()}
{combine_script id='jquery.ajaxmanager' path='themes/default/js/plugins/jquery.ajaxmanager.js' load='footer'}
-{*combine_script id='thumbnails.loader' path='themes/default/js/thumbnails.loader.js' require='jquery.ajaxmanager' load='footer'*}
-{footer_script}{literal}
-var thumbnails_queue = jQuery.manageAjax.create('queued', {
- queue: true,
- cacheResponse: false,
- maxRequests: {/literal}{$maxRequests}{literal},
- preventDoubleRequests: false
-});
-
-function add_thumbnail_to_queue(img, loop) {
- thumbnails_queue.add({
- type: 'GET',
- url: img.data('src'),
- data: { ajaxload: 'true' },
- dataType: 'json',
- beforeSend: function(){jQuery('.loader').show()},
- success: function(result) {
- img.attr('src', result.url);
- jQuery('.loader').hide();
- },
- error: function() {
- if (loop < 3)
- add_thumbnail_to_queue(img, ++loop); // Retry 3 times
- img.attr('src', {/literal}"{$ROOT_URL}{$themeconf.icon_dir}/errors_small.png"{literal});
- jQuery('.loader').hide();
- }
- });
-}
-
-function pwg_ajax_thumbnails_loader() {
- jQuery('img[data-src]').each(function() {
- add_thumbnail_to_queue(jQuery(this), 0);
- });
-}
-jQuery(document).ready(pwg_ajax_thumbnails_loader);
-{/literal}{/footer_script}
-{assign var=js_loaded value=true}
+{combine_script id='thumbnails.loader' path='themes/default/js/thumbnails.loader.js' require='jquery.ajaxmanager' load='footer'}
{/if}
<li class="{if $smarty.foreach.cat_loop.index is odd}odd{else}even{/if}">
<div class="thumbnailCategory">
diff --git a/themes/default/template/thumbnails.tpl b/themes/default/template/thumbnails.tpl
index efb9fba65..82a3ac9f1 100644
--- a/themes/default/template/thumbnails.tpl
+++ b/themes/default/template/thumbnails.tpl
@@ -21,47 +21,15 @@
{/if}
{/if}
{/html_style}
+{footer_script}
+ var error_icon = "{$ROOT_URL}{$themeconf.icon_dir}/errors_small.png";
+ var max_requests = "{$maxRequests}";
+{/footer_script}
{foreach from=$thumbnails item=thumbnail}
{assign var=derivative value=$pwg->derivative($derivative_params, $thumbnail.src_image)}
-{if !$derivative->is_cached() and !$js_loaded}
+{if !$derivative->is_cached()}
{combine_script id='jquery.ajaxmanager' path='themes/default/js/plugins/jquery.ajaxmanager.js' load='footer'}
-{*combine_script id='thumbnails.loader' path='themes/default/js/thumbnails.loader.js' require='jquery.ajaxmanager' load='footer'*}
-{footer_script}{literal}
-var thumbnails_queue = jQuery.manageAjax.create('queued', {
- queue: true,
- cacheResponse: false,
- maxRequests: {/literal}{$maxRequests}{literal},
- preventDoubleRequests: false
-});
-
-function add_thumbnail_to_queue(img, loop) {
- thumbnails_queue.add({
- type: 'GET',
- url: img.data('src'),
- data: { ajaxload: 'true' },
- dataType: 'json',
- beforeSend: function(){jQuery('.loader').show()},
- success: function(result) {
- img.attr('src', result.url);
- jQuery('.loader').hide();
- },
- error: function() {
- if (loop < 3)
- add_thumbnail_to_queue(img, ++loop); // Retry 3 times
- img.attr('src', {/literal}"{$ROOT_URL}{$themeconf.icon_dir}/errors_small.png"{literal});
- jQuery('.loader').hide();
- }
- });
-}
-
-function pwg_ajax_thumbnails_loader() {
- jQuery('img[data-src]').each(function() {
- add_thumbnail_to_queue(jQuery(this), 0);
- });
-}
-jQuery(document).ready(pwg_ajax_thumbnails_loader);
-{/literal}{/footer_script}
-{assign var=js_loaded value=true}
+{combine_script id='thumbnails.loader' path='themes/default/js/thumbnails.loader.js' require='jquery.ajaxmanager' load='footer'}
{/if}
<li>
<span class="wrap1">