diff --git a/plg_fieldtypes_files/fields/image.php b/plg_fieldtypes_files/fields/image.php index a5b2a20..c947cc5 100644 --- a/plg_fieldtypes_files/fields/image.php +++ b/plg_fieldtypes_files/fields/image.php @@ -121,8 +121,10 @@ protected function getLayoutData() $params['filename'] = $this->filename; $params['site_root'] = trim(Uri::root(true), '/'); $params['site_root'] .= (Factory::getApplication()->isSite()) ? '/' : '/administrator/'; + $params['image_root'] = trim(Uri::root(true), '/') . '/'; Factory::getDocument()->addScriptOptions($this->id, $params); + return $data; } } \ No newline at end of file diff --git a/plg_fieldtypes_files/fields/images.php b/plg_fieldtypes_files/fields/images.php index 6be3eeb..8bb6e7b 100644 --- a/plg_fieldtypes_files/fields/images.php +++ b/plg_fieldtypes_files/fields/images.php @@ -155,6 +155,7 @@ protected function getLayoutData() $params['limit'] = $this->limit; $params['site_root'] = trim(Uri::root(true), '/'); $params['site_root'] .= (Factory::getApplication()->isSite()) ? '/' : '/administrator/'; + $params['image_root'] = trim(Uri::root(true), '/') . '/'; Factory::getDocument()->addScriptOptions($this->id, $params); diff --git a/plg_fieldtypes_files/media/js/image.js b/plg_fieldtypes_files/media/js/image.js index 475f094..b37b83f 100644 --- a/plg_fieldtypes_files/media/js/image.js +++ b/plg_fieldtypes_files/media/js/image.js @@ -89,7 +89,7 @@ }, success: function (response) { if (response.success) { - $(image).attr('src', params.site_root + response.data); + $(image).attr('src', params.image_root + response.data); } else { $(image).attr('src', ''); @@ -125,7 +125,7 @@ }, success: function (response) { if (response.success) { - $(image).attr('src', params.site_root + response.data); + $(image).attr('src', params.image_root + response.data); } else { $(image).attr('src', ''); @@ -161,7 +161,7 @@ }, success: function (response) { if (response.success) { - $(image).attr('src', params.site_root + response.data); + $(image).attr('src', params.image_root + response.data); } else { $(image).attr('src', ''); diff --git a/plg_fieldtypes_files/media/js/image.min.js b/plg_fieldtypes_files/media/js/image.min.js index 62d1d62..6ccfe09 100644 --- a/plg_fieldtypes_files/media/js/image.min.js +++ b/plg_fieldtypes_files/media/js/image.min.js @@ -1 +1 @@ -(function(a){a(document).ready(function(){a("[data-input-image]").each(function(){var j=a(this),c=j.attr("id"),d=j.find(".form"),k=d.find('input[type="file"]'),e=d.find(".loading"),f=d.find("img");var g=Joomla.getOptions(c,""),h=a("#"+g.folder_field),b=a(h).val();if(g.folder_field==""||h.length==0||b==""){a(j).remove()}else{setInterval(function(){a(d).height(Math.round((a(j).width()/4)*3))},10);l()}k.on("change",function(m){if(!d.hasClass("disable")){i(m.target.files)}});j.on("drag dragstart dragend dragover dragenter dragleave drop",function(m){m.preventDefault();m.stopPropagation()}).on("dragover dragenter",function(){if(!d.hasClass("disable")){d.addClass("dragend")}}).on("dragleave dragend drop",function(){if(!d.hasClass("disable")){d.removeClass("dragend")}}).on("drop",function(m){if(!d.hasClass("disable")){i(m.originalEvent.dataTransfer.files)}});function i(n){var m=new FormData();m.append("type","image");m.append("folder",b);m.append("filename",g.filename);m.append("noimage",g.noimage);m.append("files[]",n[0]);a.ajax({type:"POST",dataType:"json",url:g.site_root+"index.php?option=com_ajax&plugin=files&group=fieldtypes&format=json&task=uploadFile",processData:false,contentType:false,cache:false,global:false,async:false,data:m,beforeSend:function(){a(f).attr("src","");a(e).show()},complete:function(){a(e).hide()},success:function(o){if(o.success){a(f).attr("src",g.site_root+o.data)}else{a(f).attr("src","")}},error:function(o){console.error(o.status+": "+o.statusText)}})}function l(){a.ajax({type:"POST",dataType:"json",url:g.site_root+"index.php?option=com_ajax&plugin=files&group=fieldtypes&format=json&task=getFile",cache:false,global:false,async:false,data:{type:"image",folder:b,filename:g.filename,noimage:g.noimage},beforeSend:function(){a(f).attr("src","");a(e).show()},complete:function(){a(e).hide()},success:function(m){if(m.success){a(f).attr("src",g.site_root+m.data)}else{a(f).attr("src","")}},error:function(m){console.error(m.status+": "+m.statusText)}})}a(d).find("a.remove").on("click",function(){a.ajax({type:"POST",dataType:"json",url:g.site_root+"index.php?option=com_ajax&plugin=files&group=fieldtypes&format=json&task=deleteFile",cache:false,global:false,async:false,data:{type:"image",folder:b,filename:g.filename,noimage:g.noimage},beforeSend:function(){a(f).attr("src","");a(e).show()},complete:function(){a(e).hide()},success:function(m){if(m.success){a(f).attr("src",g.site_root+m.data)}else{a(f).attr("src","")}},error:function(m){console.error(m.status+": "+m.statusText)}})})})})})(jQuery); \ No newline at end of file +(function(a){a(document).ready(function(){a("[data-input-image]").each(function(){var j=a(this),c=j.attr("id"),d=j.find(".form"),k=d.find('input[type="file"]'),e=d.find(".loading"),f=d.find("img");var g=Joomla.getOptions(c,""),h=a("#"+g.folder_field),b=a(h).val();if(g.folder_field==""||h.length==0||b==""){a(j).remove()}else{setInterval(function(){a(d).height(Math.round((a(j).width()/4)*3))},10);l()}k.on("change",function(m){if(!d.hasClass("disable")){i(m.target.files)}});j.on("drag dragstart dragend dragover dragenter dragleave drop",function(m){m.preventDefault();m.stopPropagation()}).on("dragover dragenter",function(){if(!d.hasClass("disable")){d.addClass("dragend")}}).on("dragleave dragend drop",function(){if(!d.hasClass("disable")){d.removeClass("dragend")}}).on("drop",function(m){if(!d.hasClass("disable")){i(m.originalEvent.dataTransfer.files)}});function i(n){var m=new FormData();m.append("type","image");m.append("folder",b);m.append("filename",g.filename);m.append("noimage",g.noimage);m.append("files[]",n[0]);a.ajax({type:"POST",dataType:"json",url:g.site_root+"index.php?option=com_ajax&plugin=files&group=fieldtypes&format=json&task=uploadFile",processData:false,contentType:false,cache:false,global:false,async:false,data:m,beforeSend:function(){a(f).attr("src","");a(e).show()},complete:function(){a(e).hide()},success:function(o){if(o.success){a(f).attr("src",g.image_root+o.data)}else{a(f).attr("src","")}},error:function(o){console.error(o.status+": "+o.statusText)}})}function l(){a.ajax({type:"POST",dataType:"json",url:g.site_root+"index.php?option=com_ajax&plugin=files&group=fieldtypes&format=json&task=getFile",cache:false,global:false,async:false,data:{type:"image",folder:b,filename:g.filename,noimage:g.noimage},beforeSend:function(){a(f).attr("src","");a(e).show()},complete:function(){a(e).hide()},success:function(m){if(m.success){a(f).attr("src",g.image_root+m.data)}else{a(f).attr("src","")}},error:function(m){console.error(m.status+": "+m.statusText)}})}a(d).find("a.remove").on("click",function(){a.ajax({type:"POST",dataType:"json",url:g.site_root+"index.php?option=com_ajax&plugin=files&group=fieldtypes&format=json&task=deleteFile",cache:false,global:false,async:false,data:{type:"image",folder:b,filename:g.filename,noimage:g.noimage},beforeSend:function(){a(f).attr("src","");a(e).show()},complete:function(){a(e).hide()},success:function(m){if(m.success){a(f).attr("src",g.image_root+m.data)}else{a(f).attr("src","")}},error:function(m){console.error(m.status+": "+m.statusText)}})})})})})(jQuery); \ No newline at end of file