diff --git a/wire/modules/Inputfield/InputfieldFile/InputfieldFile.js b/wire/modules/Inputfield/InputfieldFile/InputfieldFile.js
index 7c15c375..fcacc4a1 100755
--- a/wire/modules/Inputfield/InputfieldFile/InputfieldFile.js
+++ b/wire/modules/Inputfield/InputfieldFile/InputfieldFile.js
@@ -440,12 +440,14 @@ $(document).ready(function() {
/**
* Progressive enchanchment for browsers that support html5 File API
*
- * #PageIDIndictator.size indicates PageEdit, which we're limiting AjaxUpload to since only ProcessPageEdit has the ajax handler
+ * #PageIDIndictator.length indicates PageEdit, which we're limiting AjaxUpload to since only ProcessPageEdit has the ajax handler
*
*/
+ var allowAjax = false;
if (window.File && window.FileList && window.FileReader
&& ($("#PageIDIndicator").length > 0 || $('.InputfieldAllowAjaxUpload').length > 0)) {
InitHTML5('');
+ allowAjax = true;
} else {
InitOldSchool();
}
@@ -454,6 +456,7 @@ $(document).ready(function() {
var resizeActive = false;
var windowResize = function() {
+ if(!allowAjax) return;
$(".AjaxUploadDropHere").each(function() {
var $t = $(this);
if($t.parent().width() <= minContainerWidth) {
@@ -464,18 +467,20 @@ $(document).ready(function() {
});
resizeActive = false;
}
-
- $(window).resize(function() {
- if(resizeActive) return;
- resizeActive = true;
- setTimeout(windowResize, 1000);
- }).resize();
+
+ if(allowAjax) {
+ $(window).resize(function() {
+ if(resizeActive) return;
+ resizeActive = true;
+ setTimeout(windowResize, 1000);
+ }).resize();
+ }
//$(document).on('reloaded', '.InputfieldFileMultiple, .InputfieldFileSingle', function(event) {
$(document).on('reloaded', '.InputfieldHasFileList', function(event) {
initSortable($(this).find(".InputfieldFileList"));
InitHTML5($(this));
- windowResize();
+ if(allowAjax) windowResize();
});
});
diff --git a/wire/modules/Inputfield/InputfieldFile/InputfieldFile.min.js b/wire/modules/Inputfield/InputfieldFile/InputfieldFile.min.js
index 599b4db6..cd1a78a2 100644
--- a/wire/modules/Inputfield/InputfieldFile/InputfieldFile.min.js
+++ b/wire/modules/Inputfield/InputfieldFile/InputfieldFile.min.js
@@ -1 +1 @@
-$(document).ready(function(){$(document).on("change",".InputfieldFileDelete input",function(){a($(this))}).on("dblclick",".InputfieldFileDelete",function(){var i=$(this).find("input");var h=$(this).parents(".InputfieldFileList").find(".InputfieldFileDelete input");if(i.is(":checked")){h.removeAttr("checked").change()}else{h.attr("checked","checked").change()}return false});function a(j){var h=j.parents(".InputfieldFileInfo");var i=j.closest(".InputfieldFile").hasClass("InputfieldItemListCollapse");if(j.is(":checked")){h.addClass("ui-state-error");if(!i){h.siblings(".InputfieldFileData").slideUp("fast")}}else{h.removeClass("ui-state-error");if(!i){h.siblings(".InputfieldFileData").slideDown("fast")}}}function c(h){h.each(function(){var j=$(this);var k=j.children("li").length;if(j.closest(".InputfieldRenderValueMode").length){return}var i=j.closest(".Inputfield");if(k<2){if(k==0){i.addClass("InputfieldFileEmpty").removeClass("InputfieldFileMultiple InputfieldFileSingle")}else{i.addClass("InputfieldFileSingle").removeClass("InputfieldFileEmpty InputfieldFileMultiple")}return}else{j.closest(".Inputfield").removeClass("InputfieldFileSingle InputfieldFileEmpty").addClass("InputfieldFileMultiple")}j.sortable({start:function(m,l){l.item.children(".InputfieldFileInfo").addClass("ui-state-highlight")},stop:function(m,l){$(this).children("li").each(function(o){$(this).find(".InputfieldFileSort").val(o)});l.item.children(".InputfieldFileInfo").removeClass("ui-state-highlight");i.addClass("InputfieldFileJustSorted InputfieldStateChanged");setTimeout(function(){i.removeClass("InputfieldFileJustSorted")},500)}})}).find(".ui-widget-header, .ui-state-default").hover(function(){$(this).addClass("ui-state-hover")},function(){$(this).removeClass("ui-state-hover")})}function d(){$("body").addClass("ie-no-drop");$(document).on("change",".InputfieldFileUpload input[type=file]",function(){var k=$(this);var r=k.closest(".InputMask");if(k.val().length>1){r.addClass("ui-state-disabled")}else{r.removeClass("ui-state-disabled")}if(r.next(".InputMask").length>0){return}var h=k.closest(".InputfieldFile");var m=k.closest(".InputfieldFileUpload");var l=h.find(".InputfieldFileList");var q=parseInt(m.find(".InputfieldFileMaxFiles").val());var j=l.children("li").length+m.find("input[type=file]").length+1;if(q>0&&j>=q){}else{m.find(".InputMask").not(":last").each(function(){var s=$(this);if(s.find("input[type=file]").val()<1){s.remove()}});var p=r.clone().removeClass("ui-state-disabled");var o=p.find("input[type=file]");o.attr("id",o.attr("id")+"-");o.val("");p.insertAfter(r);p.css("margin-left","0.5em").removeClass("ui-state-active")}var i=k.val();var n=i.lastIndexOf("/");if(n===-1){n=i.lastIndexOf("\\")}i=i.substring(n+1);r.find(".ui-button-text").text(i).prepend("");r.removeClass("ui-state-active")})}function e(i){if(i.length>0){var h=i.find(".InputfieldFileUpload")}else{var h=$(".InputfieldFileUpload")}h.closest(".InputfieldContent").each(function(k){if($(this).hasClass("InputfieldFileInit")){return}j($(this),k);$(this).addClass("InputfieldFileInit")});function j(r,z){var q=r.parents("form");var k=r.closest(".InputfieldRepeaterItem");var n=k.length?k.attr("data-editUrl"):q.attr("action");n+=(n.indexOf("?")>-1?"&":"?")+"InputfieldFileAjax=1";var D=q.find("input._post_token");var p=D.attr("name");var u=D.val();var B=r.find(".InputfieldFileUpload");var m=B.data("fieldname");m=m.slice(0,-2);var C=B.data("extensions").toLowerCase();var y=B.data("maxfilesize");var t=r.find("input[type=file]").get(0);var s=r.get(0);var l=r.find(".InputfieldFileList");if(l.size()<1){l=$("
");r.prepend(l);r.parent(".Inputfield").addClass("InputfieldFileEmpty")}var A=l.get(0);var v=parseInt(r.find(".InputfieldFileMaxFiles").val());l.children().addClass("InputfieldFileItemExisting");r.find(".AjaxUploadDropHere").show();var w=null;function o(G){var J=$(''),I=$(''),H=$(''),K,L,N,M;I.append(H);J.append(I);N=new XMLHttpRequest();N.upload.addEventListener("progress",function(O){if(O.lengthComputable){var P=(O.loaded/O.total)*100;H.width(P+"%");if(P>4){H.html(""+parseInt(P)+"%")}$("body").addClass("pw-uploading")}else{}},false);N.addEventListener("load",function(){N.getAllResponseHeaders();var U=$.parseJSON(N.responseText);if(U.error!==undefined){U=[U]}for(var S=0;S0){R.slideUp("fast",function(){R.remove()})}}var Z=r.find("input[type=file]");if(Z.val()){Z.replaceWith(Z.clone(true))}var W=$(P.markup);W.hide();if(P.overwrite){var Y=W.find(".InputfieldFileName").text();var aa=null;l.children(".InputfieldFileItemExisting").each(function(){if(aa===null&&$(this).find(".InputfieldFileName").text()==Y){aa=$(this)}});if(aa!==null){var V=W.find(".InputfieldFileInfo");var O=W.find(".InputfieldFileLink");var Q=aa.find(".InputfieldFileInfo");var X=aa.find(".InputfieldFileLink");Q.html(V.html()+"");X.html(O.html());aa.addClass("InputfieldFileItemExisting");aa.effect("highlight",500)}else{l.append(W);W.slideDown();W.addClass("InputfieldFileItemExisting")}}else{l.append(W);W.slideDown()}}}J.remove();if(w){clearTimeout(w)}w=setTimeout(function(){$("body").removeClass("pw-uploading");if(v!=1&&!l.is(".ui-sortable")){c(l)}l.trigger("AjaxUploadDone")},500)},false);N.open("POST",n,true);N.setRequestHeader("X-FILENAME",encodeURIComponent(G.name));N.setRequestHeader("X-FIELDNAME",m);N.setRequestHeader("Content-Type","application/octet-stream");N.setRequestHeader("X-"+p,u);N.setRequestHeader("X-REQUESTED-WITH","XMLHttpRequest");N.send(G);M=" "+G.name+' • '+parseInt(G.size/1024,10)+" kb";J.find("p.ui-widget-header").html(M);l.append(J);var E=l.closest(".Inputfield");E.addClass("InputfieldStateChanged");var F=E.find(".InputfieldFileItem").length;if(F==1){E.removeClass("InputfieldFileEmpty").removeClass("InputfieldFileMultiple").addClass("InputfieldFileSingle")}else{if(F>1){E.removeClass("InputfieldFileEmpty").removeClass("InputfieldFileSingle").addClass("InputfieldFileMultiple")}}}function x(G){function H(J,K){return'"}if(typeof G!=="undefined"){for(var F=0,E=G.length;Fy&&y>2000000){l.append(H(G[F].name,"Filesize "+parseInt(G[F].size/1024,10)+" kb is too big. Maximum allowed is "+parseInt(y/1024,10)+" kb"))}else{o(G[F])}}if(v==1){break}}}else{A.innerHTML="No support for the File API in this web browser"}}t.addEventListener("change",function(E){x(this.files);E.preventDefault();E.stopPropagation();this.value=""},false);s.addEventListener("dragleave",function(){$(this).removeClass("ui-state-hover");$(this).closest(".Inputfield").removeClass("pw-drag-in-file")},false);s.addEventListener("dragenter",function(){$(this).addClass("ui-state-hover");$(this).closest(".Inputfield").addClass("pw-drag-in-file")},false);s.addEventListener("dragover",function(E){if(!$(this).is("ui-state-hover")){$(this).addClass("ui-state-hover");$(this).closest(".Inputfield").addClass("pw-drag-in-file")}E.preventDefault();E.stopPropagation()},false);s.addEventListener("drop",function(E){x(E.dataTransfer.files);$(this).removeClass("ui-state-hover").closest(".Inputfield").removeClass("pw-drag-in-file");E.preventDefault();E.stopPropagation()},false)}}c($(".InputfieldFileList"));if(window.File&&window.FileList&&window.FileReader&&($("#PageIDIndicator").length>0||$(".InputfieldAllowAjaxUpload").length>0)){e("")}else{d()}var g=767;var f=false;var b=function(){$(".AjaxUploadDropHere").each(function(){var h=$(this);if(h.parent().width()<=g){h.hide()}else{h.show()}});f=false};$(window).resize(function(){if(f){return}f=true;setTimeout(b,1000)}).resize();$(document).on("reloaded",".InputfieldHasFileList",function(h){c($(this).find(".InputfieldFileList"));e($(this));b()})});
\ No newline at end of file
+$(document).ready(function(){$(document).on("change",".InputfieldFileDelete input",function(){a($(this))}).on("dblclick",".InputfieldFileDelete",function(){var j=$(this).find("input");var i=$(this).parents(".InputfieldFileList").find(".InputfieldFileDelete input");if(j.is(":checked")){i.removeAttr("checked").change()}else{i.attr("checked","checked").change()}return false});function a(k){var i=k.parents(".InputfieldFileInfo");var j=k.closest(".InputfieldFile").hasClass("InputfieldItemListCollapse");if(k.is(":checked")){i.addClass("ui-state-error");if(!j){i.siblings(".InputfieldFileData").slideUp("fast")}}else{i.removeClass("ui-state-error");if(!j){i.siblings(".InputfieldFileData").slideDown("fast")}}}function c(i){i.each(function(){var k=$(this);var l=k.children("li").length;if(k.closest(".InputfieldRenderValueMode").length){return}var j=k.closest(".Inputfield");if(l<2){if(l==0){j.addClass("InputfieldFileEmpty").removeClass("InputfieldFileMultiple InputfieldFileSingle")}else{j.addClass("InputfieldFileSingle").removeClass("InputfieldFileEmpty InputfieldFileMultiple")}return}else{k.closest(".Inputfield").removeClass("InputfieldFileSingle InputfieldFileEmpty").addClass("InputfieldFileMultiple")}k.sortable({start:function(n,m){m.item.children(".InputfieldFileInfo").addClass("ui-state-highlight")},stop:function(n,m){$(this).children("li").each(function(o){$(this).find(".InputfieldFileSort").val(o)});m.item.children(".InputfieldFileInfo").removeClass("ui-state-highlight");j.addClass("InputfieldFileJustSorted InputfieldStateChanged");setTimeout(function(){j.removeClass("InputfieldFileJustSorted")},500)}})}).find(".ui-widget-header, .ui-state-default").hover(function(){$(this).addClass("ui-state-hover")},function(){$(this).removeClass("ui-state-hover")})}function d(){$("body").addClass("ie-no-drop");$(document).on("change",".InputfieldFileUpload input[type=file]",function(){var l=$(this);var s=l.closest(".InputMask");if(l.val().length>1){s.addClass("ui-state-disabled")}else{s.removeClass("ui-state-disabled")}if(s.next(".InputMask").length>0){return}var i=l.closest(".InputfieldFile");var n=l.closest(".InputfieldFileUpload");var m=i.find(".InputfieldFileList");var r=parseInt(n.find(".InputfieldFileMaxFiles").val());var k=m.children("li").length+n.find("input[type=file]").length+1;if(r>0&&k>=r){}else{n.find(".InputMask").not(":last").each(function(){var t=$(this);if(t.find("input[type=file]").val()<1){t.remove()}});var q=s.clone().removeClass("ui-state-disabled");var p=q.find("input[type=file]");p.attr("id",p.attr("id")+"-");p.val("");q.insertAfter(s);q.css("margin-left","0.5em").removeClass("ui-state-active")}var j=l.val();var o=j.lastIndexOf("/");if(o===-1){o=j.lastIndexOf("\\")}j=j.substring(o+1);s.find(".ui-button-text").text(j).prepend("");s.removeClass("ui-state-active")})}function f(j){if(j.length>0){var i=j.find(".InputfieldFileUpload")}else{var i=$(".InputfieldFileUpload")}i.closest(".InputfieldContent").each(function(l){if($(this).hasClass("InputfieldFileInit")){return}k($(this),l);$(this).addClass("InputfieldFileInit")});function k(s,A){var r=s.parents("form");var l=s.closest(".InputfieldRepeaterItem");var o=l.length?l.attr("data-editUrl"):r.attr("action");o+=(o.indexOf("?")>-1?"&":"?")+"InputfieldFileAjax=1";var E=r.find("input._post_token");var q=E.attr("name");var v=E.val();var C=s.find(".InputfieldFileUpload");var n=C.data("fieldname");n=n.slice(0,-2);var D=C.data("extensions").toLowerCase();var z=C.data("maxfilesize");var u=s.find("input[type=file]").get(0);var t=s.get(0);var m=s.find(".InputfieldFileList");if(m.size()<1){m=$("");s.prepend(m);s.parent(".Inputfield").addClass("InputfieldFileEmpty")}var B=m.get(0);var w=parseInt(s.find(".InputfieldFileMaxFiles").val());m.children().addClass("InputfieldFileItemExisting");s.find(".AjaxUploadDropHere").show();var x=null;function p(H){var K=$(''),J=$(''),I=$(''),L,M,O,N;J.append(I);K.append(J);O=new XMLHttpRequest();O.upload.addEventListener("progress",function(P){if(P.lengthComputable){var Q=(P.loaded/P.total)*100;I.width(Q+"%");if(Q>4){I.html(""+parseInt(Q)+"%")}$("body").addClass("pw-uploading")}else{}},false);O.addEventListener("load",function(){O.getAllResponseHeaders();var V=$.parseJSON(O.responseText);if(V.error!==undefined){V=[V]}for(var T=0;T0){S.slideUp("fast",function(){S.remove()})}}var aa=s.find("input[type=file]");if(aa.val()){aa.replaceWith(aa.clone(true))}var X=$(Q.markup);X.hide();if(Q.overwrite){var Z=X.find(".InputfieldFileName").text();var ab=null;m.children(".InputfieldFileItemExisting").each(function(){if(ab===null&&$(this).find(".InputfieldFileName").text()==Z){ab=$(this)}});if(ab!==null){var W=X.find(".InputfieldFileInfo");var P=X.find(".InputfieldFileLink");var R=ab.find(".InputfieldFileInfo");var Y=ab.find(".InputfieldFileLink");R.html(W.html()+"");Y.html(P.html());ab.addClass("InputfieldFileItemExisting");ab.effect("highlight",500)}else{m.append(X);X.slideDown();X.addClass("InputfieldFileItemExisting")}}else{m.append(X);X.slideDown()}}}K.remove();if(x){clearTimeout(x)}x=setTimeout(function(){$("body").removeClass("pw-uploading");if(w!=1&&!m.is(".ui-sortable")){c(m)}m.trigger("AjaxUploadDone")},500)},false);O.open("POST",o,true);O.setRequestHeader("X-FILENAME",encodeURIComponent(H.name));O.setRequestHeader("X-FIELDNAME",n);O.setRequestHeader("Content-Type","application/octet-stream");O.setRequestHeader("X-"+q,v);O.setRequestHeader("X-REQUESTED-WITH","XMLHttpRequest");O.send(H);N=" "+H.name+' • '+parseInt(H.size/1024,10)+" kb";K.find("p.ui-widget-header").html(N);m.append(K);var F=m.closest(".Inputfield");F.addClass("InputfieldStateChanged");var G=F.find(".InputfieldFileItem").length;if(G==1){F.removeClass("InputfieldFileEmpty").removeClass("InputfieldFileMultiple").addClass("InputfieldFileSingle")}else{if(G>1){F.removeClass("InputfieldFileEmpty").removeClass("InputfieldFileSingle").addClass("InputfieldFileMultiple")}}}function y(H){function I(K,L){return'"}if(typeof H!=="undefined"){for(var G=0,F=H.length;Gz&&z>2000000){m.append(I(H[G].name,"Filesize "+parseInt(H[G].size/1024,10)+" kb is too big. Maximum allowed is "+parseInt(z/1024,10)+" kb"))}else{p(H[G])}}if(w==1){break}}}else{B.innerHTML="No support for the File API in this web browser"}}u.addEventListener("change",function(F){y(this.files);F.preventDefault();F.stopPropagation();this.value=""},false);t.addEventListener("dragleave",function(){$(this).removeClass("ui-state-hover");$(this).closest(".Inputfield").removeClass("pw-drag-in-file")},false);t.addEventListener("dragenter",function(){$(this).addClass("ui-state-hover");$(this).closest(".Inputfield").addClass("pw-drag-in-file")},false);t.addEventListener("dragover",function(F){if(!$(this).is("ui-state-hover")){$(this).addClass("ui-state-hover");$(this).closest(".Inputfield").addClass("pw-drag-in-file")}F.preventDefault();F.stopPropagation()},false);t.addEventListener("drop",function(F){y(F.dataTransfer.files);$(this).removeClass("ui-state-hover").closest(".Inputfield").removeClass("pw-drag-in-file");F.preventDefault();F.stopPropagation()},false)}}c($(".InputfieldFileList"));var e=false;if(window.File&&window.FileList&&window.FileReader&&($("#PageIDIndicator").length>0||$(".InputfieldAllowAjaxUpload").length>0)){f("");e=true}else{d()}var h=767;var g=false;var b=function(){if(!e){return}$(".AjaxUploadDropHere").each(function(){var i=$(this);if(i.parent().width()<=h){i.hide()}else{i.show()}});g=false};if(e){$(window).resize(function(){if(g){return}g=true;setTimeout(b,1000)}).resize()}$(document).on("reloaded",".InputfieldHasFileList",function(i){c($(this).find(".InputfieldFileList"));f($(this));if(e){b()}})});
\ No newline at end of file