From c4dfa9728740380635e66f32e69f00aaf6211420 Mon Sep 17 00:00:00 2001 From: aFolletete Date: Tue, 3 Jan 2012 15:56:44 +0000 Subject: [PATCH] [*] BO : add Loading information in back office --- admin-dev/themes/default/template/header.tpl | 2 + css/admin.css | 18 ++++ img/admin/ajax-loader-yellow.gif | Bin 0 -> 9427 bytes js/admin.js | 91 ++++++++++++------- translations/fr/admin.php | 1 + 5 files changed, 81 insertions(+), 31 deletions(-) create mode 100644 img/admin/ajax-loader-yellow.gif diff --git a/admin-dev/themes/default/template/header.tpl b/admin-dev/themes/default/template/header.tpl index 22e2457bb..870849725 100644 --- a/admin-dev/themes/default/template/header.tpl +++ b/admin-dev/themes/default/template/header.tpl @@ -94,6 +94,8 @@ {if $display_header} +
{l s='Loading...'}
+
{* begin HEADER *} diff --git a/css/admin.css b/css/admin.css index f86b512a9..fe8e11280 100644 --- a/css/admin.css +++ b/css/admin.css @@ -2195,3 +2195,21 @@ font-weight:normal; .infoCustomer dl { margin: 7px 0;} .infoCustomer dl dt {font-weight:bold; float:left; padding-right:5px;} .infoCustomer dl dd { margin:0; padding:0;} + + +#ajax_running { + display: none; + position: absolute; + top: 0; + left: 40%; + z-index: 10000; + background-color: #FFF1A8; + color: #000; + font-weight: bold; + font-size: 14px; + padding: 5px 20px; + border-radius: 0 0 3px 3px; + -webkit-border-bottom-left-radius: 3px; + -webkit-border-bottom-right-radius: 3px; + width: 300px; +} \ No newline at end of file diff --git a/img/admin/ajax-loader-yellow.gif b/img/admin/ajax-loader-yellow.gif new file mode 100644 index 0000000000000000000000000000000000000000..999a5e386c5536985aad6628297599ed6a612fa3 GIT binary patch literal 9427 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 HGyC&DTwc!K literal 0 HcmV?d00001 diff --git a/js/admin.js b/js/admin.js index 65d911c82..6c01757e7 100644 --- a/js/admin.js +++ b/js/admin.js @@ -23,6 +23,9 @@ * International Registered Trademark & Property of PrestaShop SA */ +var ajax_running_timeout = null; +var ajax_running_nb_queries = 0; + if (!id_language) var id_language = Number(1); @@ -410,11 +413,11 @@ if (helpboxes) if ($('input')) { //Display by rollover - $('input').mouseover(function() { - $(this).parent().find('.hint:first').css('display', 'block'); + $('input').mouseover(function() { + $(this).parent().find('.hint:first').css('display', 'block'); }); $('input').mouseout(function() { $(this).parent().find('.hint:first').css('display', 'none'); }); - + //display when you press the tab key $('input').keydown(function (e) { if ( e.keyCode === 9 ){ @@ -422,15 +425,15 @@ if (helpboxes) $('input').blur(function() { $(this).parent().find('.hint:first').css('display', 'none'); }); } }); - } + } if ($('select')) { //Display by rollover - $('select').mouseover(function() { - $(this).parent().find('.hint:first').css('display', 'block'); + $('select').mouseover(function() { + $(this).parent().find('.hint:first').css('display', 'block'); }); $('select').mouseout(function() { $(this).parent().find('.hint:first').css('display', 'none'); }); - + //display when you press the tab key $('select').keydown(function (e) { if ( e.keyCode === 9 ){ @@ -442,26 +445,26 @@ if (helpboxes) if ($('span.title_box')) { //Display by rollover - $('span.title_box').mouseover(function() { + $('span.title_box').mouseover(function() { //get reference to the hint box var parent = $(this).parent(); - var box = parent.find('.hint:first'); + var box = parent.find('.hint:first'); if (box.length > 0) { //gets parent position var left_position = parent.offset().left; - + //gets width of the box var box_width = box.width(); - + //gets width of the screen var document_width = $(document).width(); - + //changes position of the box if needed if (document_width < (left_position + box_width)) box.css('margin-left', '-' + box_width + 'px'); - + //shows the box box.css('display', 'block'); } @@ -473,7 +476,7 @@ if (helpboxes) /** * Deprecated - * + * * @param id_product * @param id_image */ @@ -894,20 +897,6 @@ function trackClickOnHelp(label, doc_version) }); } -$(document).ready(function() -{ - $('.isInvisible input, .isInvisible select, .isInvisible textarea').attr('disabled', true); - $('.isInvisible label.conf_title').addClass('isDisabled'); - - // Disable options fields for each row with a multishop default checkbox - $('.preference_default_multishop input[type=checkbox]').each(function(k, v) - { - var key = $(v).attr('name'); - var len = key.length; - checkMultishopDefaultValue(v, key.substr(17, len - 18)); - }); -}); - function checkMultishopDefaultValue(obj, key) { if ($(obj).attr('checked') || $('#'+key).hasClass('isInvisible')) @@ -924,7 +913,7 @@ function checkMultishopDefaultValue(obj, key) } /** * Update the product image list position buttons - * + * * @param DOM table imageTable */ function refreshImagePositions(imageTable) @@ -976,7 +965,7 @@ function showSuccessMessage(msg, delay) $("#ajax_confirmation") .html("
"+msg+"
").show().delay(delay).fadeOut("slow"); } - + /** display a warning message in a #ajax_confirmation container * @param string msg string to display */ @@ -989,11 +978,22 @@ function showErrorMessage(msg, delay) } $(document).ready(function(){ + $('.isInvisible input, .isInvisible select, .isInvisible textarea').attr('disabled', true); + $('.isInvisible label.conf_title').addClass('isDisabled'); + + // Disable options fields for each row with a multishop default checkbox + $('.preference_default_multishop input[type=checkbox]').each(function(k, v) + { + var key = $(v).attr('name'); + var len = key.length; + checkMultishopDefaultValue(v, key.substr(17, len - 18)); + }); + $(".copy2friendlyUrl").live('keyup',function(e){ if(!isArrowKey(e)) return copy2friendlyURL() }); - + // on live will make this binded for dynamic content $(".updateCurrentText").live('keyup change',function(e){ if(typeof e == KeyboardEvent) @@ -1024,6 +1024,29 @@ $(document).ready(function(){ else scroll.hide(); }); + + $('#ajax_running').ajaxStart(function() { + ajax_running_timeout = setTimeout(function() {showAjaxOverlay()}, 500); + }); + + $('#ajax_running').ajaxSend(function() { + ajax_running_nb_queries += 1; + }); + + $('#ajax_running').ajaxComplete(function() { + ajax_running_nb_queries -= 1; + if (ajax_running_nb_queries <= 0) + { + $(this).slideUp('fast'); + clearTimeout(ajax_running_timeout); + } + }); + + $('#ajax_running').ajaxError(function() { + ajax_running_nb_queries = 0; + $(this).slideUp('fast'); + clearTimeout(ajax_running_timeout); + }); }); // Delete all tags HTML @@ -1044,3 +1067,9 @@ function stripHTML(oldString) } return newString; } + +function showAjaxOverlay() +{ + $('#ajax_running').slideDown('fast'); + clearTimeout(ajax_running_timeout); +} \ No newline at end of file diff --git a/translations/fr/admin.php b/translations/fr/admin.php index 499baaae7..2ec4644a6 100644 --- a/translations/fr/admin.php +++ b/translations/fr/admin.php @@ -3078,6 +3078,7 @@ $_LANGADM['AdminControllere30d2e2e3e089445907ea440d5f0d901'] = 'Cliquez ici pour $_LANGADM['AdminControllera546b4ed60fa82d6e50475370c228979'] = 'Un nouveau message a été envoyé sur votre boutique.'; $_LANGADM['AdminControllerc3c0ad440e89fbca4e80ecb16691259c'] = 'Extrait :'; $_LANGADM['AdminController3c40bce8d041e25000f92477f7f8ab31'] = 'Cliquez ici pour voir ce message'; +$_LANGADM['AdminController8524de963f07201e5c086830d370797f'] = 'Chargement en cours...'; $_LANGADM['AdminController529a53abbdf42a64cb2d149c0aeced04'] = 'Dernières commandes'; $_LANGADM['AdminController050a0d11da7943317186f76a36b14a6c'] = 'Pas de nouvelle commande passée sur votre boutique'; $_LANGADM['AdminControllerad0750ccecf0c31c43ce46ea7e665ea5'] = 'Voir toutes les commandes';