diff options
author | rvelices <rv-github@modusoptimus.com> | 2014-06-26 20:23:50 +0000 |
---|---|---|
committer | rvelices <rv-github@modusoptimus.com> | 2014-06-26 20:23:50 +0000 |
commit | ec03d115a998e057667fb5800e574e961b2bbe31 (patch) | |
tree | 8861ad0afb74a75b7a6add3249d9ac42b031b233 /admin | |
parent | 979ca7435b3986c3c8aa7adf10685568df83b342 (diff) |
moved around 100k of javascript from synchronous loading to async... (a lot more could be done...)
git-svn-id: http://piwigo.org/svn/trunk@28806 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to '')
5 files changed, 72 insertions, 64 deletions
diff --git a/admin/themes/default/js/batchManagerGlobal.js b/admin/themes/default/js/batchManagerGlobal.js new file mode 100644 index 000000000..c83f134f7 --- /dev/null +++ b/admin/themes/default/js/batchManagerGlobal.js @@ -0,0 +1,51 @@ + +/* Shift-click: select all photos between the click and the shift+click */ +jQuery(document).ready(function() { + var last_clicked=0, + last_clickedstatus=true; + jQuery.fn.enableShiftClick = function() { + var inputs = [], + count=0; + this.find('input[type=checkbox]').each(function() { + var pos=count; + inputs[count++]=this; + $(this).bind("shclick", function (dummy,event) { + if (event.shiftKey) { + var first = last_clicked; + var last = pos; + if (first > last) { + first=pos; + last=last_clicked; + } + + for (var i=first; i<=last;i++) { + input = $(inputs[i]); + $(input).prop('checked', last_clickedstatus); + if (last_clickedstatus) + { + $(input).siblings("span.wrap2").addClass("thumbSelected"); + } + else + { + $(input).siblings("span.wrap2").removeClass("thumbSelected"); + } + } + } + else { + last_clicked = pos; + last_clickedstatus = this.checked; + } + return true; + }); + $(this).click(function(event) { $(this).triggerHandler("shclick",event)}); + }); + } + $('ul.thumbnails').enableShiftClick(); +}); + +jQuery('[data-datepicker]').pwgDatepicker({ + showTimepicker: true, + cancelButton: lang.Cancel +}); + +jQuery("a.preview-box").colorbox(); diff --git a/admin/themes/default/template/batch_manager_global.tpl b/admin/themes/default/template/batch_manager_global.tpl index 6425f49e9..bc5738a40 100644 --- a/admin/themes/default/template/batch_manager_global.tpl +++ b/admin/themes/default/template/batch_manager_global.tpl @@ -1,6 +1,5 @@ -{include file='include/tag_selection.inc.tpl'} -{include file='include/datepicker.inc.tpl'} -{include file='include/colorbox.inc.tpl'} +{include file='include/datepicker.inc.tpl' load_mode='async'} +{include file='include/colorbox.inc.tpl' load_mode='async'} {include file='include/add_album.inc.tpl'} {combine_script id='common' load='footer' path='admin/themes/default/js/common.js'} @@ -14,63 +13,18 @@ {combine_script id='jquery.selectize' load='footer' path='themes/default/js/plugins/selectize.min.js'} {combine_css id='jquery.selectize' path="themes/default/js/plugins/selectize.`$selectizeTheme`.css"} -{combine_script id='jquery.progressBar' load='footer' path='themes/default/js/plugins/jquery.progressbar.min.js'} -{combine_script id='jquery.ajaxmanager' load='footer' path='themes/default/js/plugins/jquery.ajaxmanager.js'} +{combine_script id='jquery.progressBar' load='async' path='themes/default/js/plugins/jquery.progressbar.min.js'} +{combine_script id='jquery.ajaxmanager' load='async' path='themes/default/js/plugins/jquery.ajaxmanager.js'} -{footer_script}{literal} -/* Shift-click: select all photos between the click and the shift+click */ -jQuery(document).ready(function() { - var last_clicked=0; - var last_clickedstatus=true; - jQuery.fn.enableShiftClick = function() { - var inputs = []; - var count=0; - this.find('input[type=checkbox]').each(function() { - var pos=count; - inputs[count++]=this; - $(this).bind("shclick", function (dummy,event) { - if (event.shiftKey) { - var first = last_clicked; - var last = pos; - if (first > last) { - first=pos; - last=last_clicked; - } - - for (var i=first; i<=last;i++) { - input = $(inputs[i]); - $(input).prop('checked', last_clickedstatus); - if (last_clickedstatus) - { - $(input).siblings("span.wrap2").addClass("thumbSelected"); - } - else - { - $(input).siblings("span.wrap2").removeClass("thumbSelected"); - } - } - } - else { - last_clicked = pos; - last_clickedstatus = this.checked; - } - return true; - }); - $(this).click(function(event) { $(this).triggerHandler("shclick",event)}); - }); - } - $('ul.thumbnails').enableShiftClick(); -}); -{/literal} +{combine_script id='batchManagerGlobal' load='async' require='jquery,datepicker,jquery.colorbox,addAlbum' path='admin/themes/default/js/batchManagerGlobal.js'} -jQuery(document).ready(function() {ldelim} - jQuery('[data-datepicker]').pwgDatepicker({ - showTimepicker: true, - cancelButton: '{'Cancel'|translate}' - }); +{footer_script} +var lang = { + Cancel: '{'Cancel'|translate|escape:'javascript'}' +}; + +jQuery(document).ready(function() { - jQuery("a.preview-box").colorbox(); - {* <!-- TAGS --> *} var tagsCache = new TagsCache({ serverKey: '{$CACHE_KEYS.tags}', diff --git a/admin/themes/default/template/include/add_album.inc.tpl b/admin/themes/default/template/include/add_album.inc.tpl index 0d3cd9533..d31cd2da9 100644 --- a/admin/themes/default/template/include/add_album.inc.tpl +++ b/admin/themes/default/template/include/add_album.inc.tpl @@ -1,10 +1,11 @@ -{include file='include/colorbox.inc.tpl'} +{if empty($load_mode)}{$load_mode='footer'}{/if} +{include file='include/colorbox.inc.tpl' load_mode=$load_mode} {assign var="selectizeTheme" value=($themeconf.name=='roma')|ternary:'dark':'default'} {combine_script id='jquery.selectize' load='footer' path='themes/default/js/plugins/selectize.min.js'} {combine_css id='jquery.selectize' path="themes/default/js/plugins/selectize.`$selectizeTheme`.css"} -{combine_script id='addAlbum.js' load='footer' require='jquery.colorbox' path='admin/themes/default/js/addAlbum.js'} +{combine_script id='addAlbum' load=$load_mode path='admin/themes/default/js/addAlbum.js'} <div style="display:none"> <div id="addAlbumForm"> diff --git a/admin/themes/default/template/include/colorbox.inc.tpl b/admin/themes/default/template/include/colorbox.inc.tpl index 01a28a089..be91064e4 100644 --- a/admin/themes/default/template/include/colorbox.inc.tpl +++ b/admin/themes/default/template/include/colorbox.inc.tpl @@ -1,2 +1,3 @@ -{combine_script id='jquery.colorbox' load='footer' require='jquery' path='themes/default/js/plugins/jquery.colorbox.min.js'} +{if empty($load_mode)}{$load_mode='footer'}{/if} +{combine_script id='jquery.colorbox' load=$load_mode require='jquery' path='themes/default/js/plugins/jquery.colorbox.min.js'} {combine_css id='jquery.colorbox' path="themes/default/js/plugins/colorbox/style2/colorbox.css"} diff --git a/admin/themes/default/template/include/datepicker.inc.tpl b/admin/themes/default/template/include/datepicker.inc.tpl index 2b4d20179..2d901762d 100644 --- a/admin/themes/default/template/include/datepicker.inc.tpl +++ b/admin/themes/default/template/include/datepicker.inc.tpl @@ -1,14 +1,15 @@ -{combine_script id='jquery.ui.timepicker-addon' load='footer' require='jquery.ui.datepicker,jquery.ui.slider' path="themes/default/js/ui/jquery.ui.timepicker-addon.js"} -{combine_script id='datepicker.js' load='footer' require='jquery.ui.timepicker-addon' path='admin/themes/default/js/datepicker.js'} +{if empty($load_mode)}{$load_mode='footer'}{/if} +{combine_script id='jquery.ui.timepicker-addon' load=$load_mode require='jquery.ui.datepicker,jquery.ui.slider' path="themes/default/js/ui/jquery.ui.timepicker-addon.js"} +{combine_script id='datepicker' load=$load_mode require='jquery.ui.timepicker-addon' path='admin/themes/default/js/datepicker.js'} {assign var="datepicker_language" value="themes/default/js/ui/i18n/jquery.ui.datepicker-`$lang_info.code`.js"} {if "PHPWG_ROOT_PATH"|@constant|@cat:$datepicker_language|@file_exists} -{combine_script id="jquery.ui.datepicker-$lang_info.code" load='footer' require='jquery.ui.datepicker' path=$datepicker_language} +{combine_script id="jquery.ui.datepicker-$lang_info.code" load=$load_mode require='jquery.ui.datepicker' path=$datepicker_language} {/if} {assign var="timepicker_language" value="themes/default/js/ui/i18n/jquery.ui.timepicker-`$lang_info.code`.js"} {if "PHPWG_ROOT_PATH"|@constant|@cat:$datepicker_language|@file_exists} -{combine_script id="jquery.ui.timepicker-$lang_info.code" load='footer' require='jquery.ui.timepicker-addon' path=$timepicker_language} +{combine_script id="jquery.ui.timepicker-$lang_info.code" load=$load_mode require='jquery.ui.timepicker-addon' path=$timepicker_language} {/if} {combine_css path="themes/default/js/ui/theme/jquery.ui.theme.css"} |