From a7d1b6225ee4f510f73ffa4ffd4ad330564ff917 Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Sun, 15 Nov 2020 17:40:21 +0100 Subject: [PATCH 01/10] Added popup support --- css/popup.css | 48 ++++++++++ popup.js | 250 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 298 insertions(+) create mode 100644 css/popup.css create mode 100644 popup.js diff --git a/css/popup.css b/css/popup.css new file mode 100644 index 0000000..074f82f --- /dev/null +++ b/css/popup.css @@ -0,0 +1,48 @@ +#layer_popup { + + z-index:50000; + background-color:rgba(0,0,0,0.4); + /*opacity:0.5;*/ + position:absolute; + width:100%; + height:100%; + overflow:auto; + + +} + +#container_popup { + + z-index:50001; + overflow:auto; + /* border: solid #fbfbfb 4px;*/ + position:absolute; + overflow:visible; + width:100%; + height:100%; + display: flex; + align-items: center; + justify-content: center; + +} + +.content_popup { + + /*position:absolute; + top: 0; + left: 50%; + transform: translate(-50%, 0%);*/ +/* position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%);*/ + z-index:50005; + margin-top:0px; + box-sizing: border-box; + -webkit-box-sizing:border-box; + -moz-box-sizing: border-box; + opacity:1; + -webkit-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); + -moz-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); + box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); +} diff --git a/popup.js b/popup.js new file mode 100644 index 0000000..987b7a7 --- /dev/null +++ b/popup.js @@ -0,0 +1,250 @@ +$=jQuery; + +(function( $ ){ + + $.fn.popUp = function (popup, width, pre_callback, post_callback, options) { + + var popup_container='body'; + + var after_show=false; + + var after_click=false; + + if(options!=undefined) + { + + if(options.hasOwnProperty("popup_container")) + { + + popup_container=options.popup_container; + + } + + if(options.hasOwnProperty("after_show")) + { + + after_show=options.after_show; + + } + + if(options.hasOwnProperty("after_click")) + { + + after_click=options.after_click; + + } + + + } + + //If scroll put in center scroll, if not scroll, put in simple center + + $(popup).hide(); + + $(this).on('click', function (e) { + + if(pre_callback!=undefined) + { + + r=pre_callback(popup, this); + + if(r!=undefined) + { + + if(r===false) + { + + return false; + + } + + } + + } + + body_height=$("body").height(); + + $('#layer_popup').height(body_height); + + //$('body').prepend('
'); + + $('body').prepend('
'); + + $('body').css('overflow', 'hidden'); + + //$('body').height(); + + + $(popup_container).prepend('
'); + + $(popup).appendTo('.content_popup'); + + if(width==undefined) + { + + $('.content_popup').width('80%'); + + } + else + { + + $('.content_popup').width(width); + + } + + popup_height=parseInt($(popup).height())+40; + + window_height=$(window).height(); + + $('.content_popup').wrap('
'); + + $('#container_popup').css('height', window_height); + + $('#container_popup').addClass('click_popup'); + $('#layer_popup').addClass('click_popup'); + + pos_scroll=$(document).scrollTop(); + + new_top=Math.round((window_height-popup_height)/2)+pos_scroll; + + $('#container_popup').css('top', pos_scroll); + + if (popup_height>window_height) + { + + + /*$('.content_popup').css('top', 0); + + $('.content_popup').css('transform', 'translate(-50%, 0%)');*/ + + $('.content_popup').css('margin-top', 0); + + + } + + $('#error_insert_name').html('') + /*pos=$(document).scrollTop(); + + $('.content_popup').css('top', pos); + + popup_height=$(popup).height();*/ + + /* + $("body").wrapInner($('
').css({ + height: layer_height, + overflow: "hidden" + }));*/ + + +/* old_height=$('body').height(); + + total_height=pos+popup_height+50; + + if(total_height>old_height) + { + + $('body').css('height', total_height); + + }*/ + + $('.close_popup').click(function () { + + $('#container_popup').click(); + + if(after_click) + { + + after_click(); + + } + + }); + + $('.click_popup').click(function (data) { + + if (data.target == this) { + + $(popup).hide(); + + $(popup).appendTo('body'); + + $('#layer_popup').remove(); + + $('#container_popup').remove(); + + //$("body > #height-helper").contents().unwrap(); + + $('#height-helper').remove(); + + $('body').css('height', '100%'); + + $('body').css('overflow', 'auto'); + + if(post_callback!=undefined) + { + + post_callback(); + + } + + $('.close_popup').unbind('click'); + + if(after_click) + { + + after_click(); + + } + + + } + + }); + + if(!after_show) + { + + $(popup).fadeIn(); + + } + else + { + + $(popup).fadeIn({'done': after_show(popup)}); + + } + + /* + $('.content_popup').click(function () { + + $(popup).hide(); + + $(popup).appendTo('body'); + + $('#layer_popup').remove(); + + $('.content_popup').remove(); + + $("body > #height-helper").contents().unwrap(); + + $('.close_popup').unbind('click'); + + });*/ + + + + + return false; + + /* + $(popup).click( function () { + + return false; + + });*/ + + }); + + } + +})( jQuery ); From 31d08f15d81d296e6a778337a2e5162fd51bfe47 Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Sun, 21 Feb 2021 18:04:53 +0100 Subject: [PATCH 02/10] Fix in posting --- posting2.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/posting2.js b/posting2.js index 7d5c89f..266261f 100644 --- a/posting2.js +++ b/posting2.js @@ -23,6 +23,23 @@ } + var xhr=false; + + if(!options.hasOwnProperty("upload")) { + + xhr = $.ajaxSettings.xhr(); + xhr.upload.onprogress = function (event) { + + if(event.lengthComputable) { + + $("#loaded_n_total").html("Uploaded "+event.loaded+" bytes of "+event.total); + var percent = (event.loaded / event.total) * 100; + $("#progressBar").val(Math.round(percent)); + $("#status").html(Math.round(percent)+"% uploaded... please wait"); + + } + }; + } $(this).on('submit', function (e) { From db37319c904703892164e1d1da70e57de774f587 Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Mon, 22 Feb 2021 02:08:33 +0100 Subject: [PATCH 03/10] Fixes in posting2 --- posting2.js | 123 ++++++++++++++++++++++++---------------------------- 1 file changed, 57 insertions(+), 66 deletions(-) diff --git a/posting2.js b/posting2.js index 266261f..99fa7c5 100644 --- a/posting2.js +++ b/posting2.js @@ -4,7 +4,7 @@ /* Add csrf token */ - /* options: url: url to post, loading: dom id, success: func, pre_callback, separated_data:boolean */ + /* options: url: url to post, loading: dom id, success: func, pre_callback, separated_data:boolean, upload: {progressbar: '#progressbar', 'total_loader': '#total_loader', 'status': '#status'} */ $.fn.sendPost = function (options) { @@ -25,20 +25,37 @@ var xhr=false; - if(!options.hasOwnProperty("upload")) { - - xhr = $.ajaxSettings.xhr(); - xhr.upload.onprogress = function (event) { - - if(event.lengthComputable) { - - $("#loaded_n_total").html("Uploaded "+event.loaded+" bytes of "+event.total); - var percent = (event.loaded / event.total) * 100; - $("#progressBar").val(Math.round(percent)); - $("#status").html(Math.round(percent)+"% uploaded... please wait"); + if(options.hasOwnProperty("upload")) { + + xhr=function() { + var myXhr = $.ajaxSettings.xhr(); + if(myXhr.upload){ + var progressbar=options.upload.progressbar; + var total_loader=options.upload.total_loader; + var status=options.upload.status; + + $(total_loader).html(''); + $(progressbar).attr('value', 0); + $(status).html(''); + + myXhr.upload.addEventListener('progress',function (event) { + + $(total_loader).html("Uploaded "+event.loaded+" bytes of "+event.total); + var percent = (event.loaded / event.total) * 100; + $(progressbar).attr('value', (Math.round(percent))); + $(status).html(Math.round(percent)+"% uploaded... please wait"); + + }, false); + + myXhr.addEventListener("load", function(event) { + + $(status).html("Done!!"); + + }, false); } - }; + return myXhr; + } } $(this).on('submit', function (e) { @@ -47,50 +64,20 @@ form=this; - /*if($(this).attr('enctype')) - {*/ - if(options.separated_data) - { - - data[options.separated_data]=new FormData($(this)[0]); - - } - else - { - - data=new FormData($(this)[0]); - - } - - - xhrFields={ - withCredentials: true - }; - - /*} + if(options.separated_data) + { + data[options.separated_data]=new FormData($(this)[0]); + } else { - - if(options.separated_data) - { + data=new FormData($(this)[0]); + } + + + xhrFields={ + withCredentials: true + }; - data[options.separated_data]=$(this).serializeArray(); - - } - else - { - - data=$(this).serializeArray().reduce(function(obj, item) { - obj[item.name] = item.value; - return obj; - }, {}); - - } - - xhrFields={ - }; - - }*/ if(!data.hasOwnProperty("csrf_token")) { @@ -101,11 +88,8 @@ //Hide form and show the time icon $(this).find('.error').hide(); - //$(this).hide(); - $(options.loading).show(); - /*$(this).find('input').prop("disabled", true); - $(this).find('select').prop("disabled", true);*/ + $(options.loading).show(); if(options.hasOwnProperty("pre_callback")) { @@ -115,20 +99,19 @@ //Ajax - $.ajax({ + ajax_post={ type: "POST", url: options.url, data: data, encoding: "UTF-8", xhrFields: xhrFields, cache:false, - contentType: false, + contentType:false, processData: false, success: function (data) { $(options.loading).hide(); - - + if(data.error) { if(!data.hasOwnProperty("error_csrf")) @@ -148,7 +131,7 @@ if(data.hasOwnProperty('error_form')) { for(i in data.error_form) { - + $(i).html(data.error_form[i]); $(i).show(); @@ -186,8 +169,6 @@ else { - - // If ok then post successful task. if(options.hasOwnProperty("success")) { @@ -214,7 +195,17 @@ }, dataType: 'json' - }); + }; + + //console.log(xhr); + + if(xhr!=false) { + + ajax_post.xhr=xhr; + + } + + $.ajax(ajax_post); return false; From 3423a8f57c12ba56f0fb362a76a5e1833efd0765 Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Sun, 21 Mar 2021 22:58:39 +0100 Subject: [PATCH 04/10] Fixes in popup --- css/popup.css | 53 ++++++++++++++++++++++++-- popup.js | 101 +++++++++++--------------------------------------- 2 files changed, 71 insertions(+), 83 deletions(-) diff --git a/css/popup.css b/css/popup.css index 074f82f..02dee18 100644 --- a/css/popup.css +++ b/css/popup.css @@ -1,7 +1,7 @@ #layer_popup { z-index:50000; - background-color:rgba(0,0,0,0.4); + /*background-color:rgba(0,0,0,0.4);*/ /*opacity:0.5;*/ position:absolute; width:100%; @@ -42,7 +42,54 @@ -webkit-box-sizing:border-box; -moz-box-sizing: border-box; opacity:1; - -webkit-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); + /*-webkit-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); -moz-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); - box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); + box-shadow: 0px 0px 160px 0px rgba(80,80,80,1);*/ + box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); + -webkit-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); + -moz-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); +} + +/* Css for animation loading */ +/* Use this html tag */ +/* Get from https://loading.io/css/ */ +/*
*/ + +.lds-facebook { + display: inline-block; + position: absolute; + left:50%; + top:50%; + width: 80px; + height: 80px; +} +.lds-facebook div { + display: inline-block; + position: absolute; + left: 8px; + width: 16px; + background: #000; + animation: lds-facebook 1.2s cubic-bezier(0, 0.5, 0.5, 1) infinite; +} +.lds-facebook div:nth-child(1) { + left: 8px; + animation-delay: -0.24s; +} +.lds-facebook div:nth-child(2) { + left: 32px; + animation-delay: -0.12s; +} +.lds-facebook div:nth-child(3) { + left: 56px; + animation-delay: 0; +} +@keyframes lds-facebook { + 0% { + top: 8px; + height: 64px; + } + 50%, 100% { + top: 24px; + height: 32px; + } } diff --git a/popup.js b/popup.js index 987b7a7..1012757 100644 --- a/popup.js +++ b/popup.js @@ -43,39 +43,16 @@ $=jQuery; $(this).on('click', function (e) { - if(pre_callback!=undefined) - { - - r=pre_callback(popup, this); - - if(r!=undefined) - { - - if(r===false) - { - - return false; - - } - - } - - } body_height=$("body").height(); $('#layer_popup').height(body_height); - - //$('body').prepend('
'); $('body').prepend('
'); $('body').css('overflow', 'hidden'); - - //$('body').height(); - - $(popup_container).prepend('
'); + content_popup=$(popup_container).prepend('
'); $(popup).appendTo('.content_popup'); @@ -111,41 +88,12 @@ $=jQuery; if (popup_height>window_height) { - - - /*$('.content_popup').css('top', 0); - - $('.content_popup').css('transform', 'translate(-50%, 0%)');*/ - - $('.content_popup').css('margin-top', 0); + $('.content_popup').css('margin-top', 0); } $('#error_insert_name').html('') - /*pos=$(document).scrollTop(); - - $('.content_popup').css('top', pos); - - popup_height=$(popup).height();*/ - - /* - $("body").wrapInner($('
').css({ - height: layer_height, - overflow: "hidden" - }));*/ - - -/* old_height=$('body').height(); - - total_height=pos+popup_height+50; - - if(total_height>old_height) - { - - $('body').css('height', total_height); - - }*/ $('.close_popup').click(function () { @@ -201,6 +149,25 @@ $=jQuery; }); + if(pre_callback!=undefined) + { + + r=pre_callback(popup, this); + + if(r!=undefined) + { + + if(r===false) + { + + return false; + + } + + } + + } + if(!after_show) { @@ -214,35 +181,9 @@ $=jQuery; } - /* - $('.content_popup').click(function () { - - $(popup).hide(); - - $(popup).appendTo('body'); - - $('#layer_popup').remove(); - - $('.content_popup').remove(); - - $("body > #height-helper").contents().unwrap(); - - $('.close_popup').unbind('click'); - - });*/ - - - return false; - /* - $(popup).click( function () { - - return false; - - });*/ - }); } From 412317d186d4fda7c9ea73ce7c4adf87fc16c537 Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Tue, 30 Mar 2021 01:05:25 +0200 Subject: [PATCH 05/10] Fix in popup --- popup.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/popup.js b/popup.js index 1012757..cec84e0 100644 --- a/popup.js +++ b/popup.js @@ -106,6 +106,8 @@ $=jQuery; } + return false; + }); $('.click_popup').click(function (data) { @@ -146,6 +148,13 @@ $=jQuery; } + else { + + return true; + + } + + return false; }); @@ -156,7 +165,7 @@ $=jQuery; if(r!=undefined) { - + if(r===false) { From 811a1691680c070c92096fa1cdc3a061d8745033 Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Tue, 13 Apr 2021 00:44:18 +0200 Subject: [PATCH 06/10] Fix in facebook loader --- popup.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/popup.js b/popup.js index cec84e0..27f7cc8 100644 --- a/popup.js +++ b/popup.js @@ -54,6 +54,8 @@ $=jQuery; content_popup=$(popup_container).prepend('
'); + $('.lds-facebook').show(); + $(popup).appendTo('.content_popup'); if(width==undefined) @@ -190,6 +192,8 @@ $=jQuery; } + $('.lds-facebook').hide(); + return false; From 2d5be8a0ff1cd7635ca7512e56e2d70b51b7a65c Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Tue, 20 Jul 2021 00:13:55 +0200 Subject: [PATCH 07/10] Fixes --- css/popup.css | 3 +++ posting2.js | 17 +++++++++++++++-- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/css/popup.css b/css/popup.css index 02dee18..4ac2663 100644 --- a/css/popup.css +++ b/css/popup.css @@ -45,6 +45,8 @@ /*-webkit-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); -moz-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); box-shadow: 0px 0px 160px 0px rgba(80,80,80,1);*/ +<<<<<<< HEAD +======= box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); -webkit-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); -moz-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); @@ -92,4 +94,5 @@ top: 24px; height: 32px; } +>>>>>>> 811a1691680c070c92096fa1cdc3a061d8745033 } diff --git a/posting2.js b/posting2.js index 99fa7c5..a2b4652 100644 --- a/posting2.js +++ b/posting2.js @@ -6,6 +6,8 @@ /* options: url: url to post, loading: dom id, success: func, pre_callback, separated_data:boolean, upload: {progressbar: '#progressbar', 'total_loader': '#total_loader', 'status': '#status'} */ + $.fn.options={}; + $.fn.sendPost = function (options) { @@ -23,6 +25,9 @@ } +<<<<<<< HEAD + this.options=options; +======= var xhr=false; if(options.hasOwnProperty("upload")) { @@ -57,8 +62,9 @@ return myXhr; } } +>>>>>>> 811a1691680c070c92096fa1cdc3a061d8745033 - $(this).on('submit', function (e) { + $(this).on('submit', {url: this.options.url}, function (e) { //Get data of form @@ -98,8 +104,13 @@ } //Ajax +<<<<<<< HEAD + + $.ajax({ +======= ajax_post={ +>>>>>>> 811a1691680c070c92096fa1cdc3a061d8745033 type: "POST", url: options.url, data: data, @@ -210,7 +221,9 @@ return false; }); - + + return this; + } })( jQuery ); From e966aa492ab9744a349faa0df708949e6286fd4a Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Tue, 20 Jul 2021 00:47:44 +0200 Subject: [PATCH 08/10] Fix in posting --- css/popup.css | 3 -- posting2.js | 122 ++++++++++++++++++++++---------------------------- 2 files changed, 53 insertions(+), 72 deletions(-) diff --git a/css/popup.css b/css/popup.css index 4ac2663..02dee18 100644 --- a/css/popup.css +++ b/css/popup.css @@ -45,8 +45,6 @@ /*-webkit-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); -moz-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); box-shadow: 0px 0px 160px 0px rgba(80,80,80,1);*/ -<<<<<<< HEAD -======= box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); -webkit-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); -moz-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); @@ -94,5 +92,4 @@ top: 24px; height: 32px; } ->>>>>>> 811a1691680c070c92096fa1cdc3a061d8745033 } diff --git a/posting2.js b/posting2.js index a2b4652..38aca56 100644 --- a/posting2.js +++ b/posting2.js @@ -4,7 +4,7 @@ /* Add csrf token */ - /* options: url: url to post, loading: dom id, success: func, pre_callback, separated_data:boolean, upload: {progressbar: '#progressbar', 'total_loader': '#total_loader', 'status': '#status'} */ + /* options: url: url to post, loading: dom id, success: func, pre_callback, separated_data:boolean */ $.fn.options={}; @@ -25,44 +25,7 @@ } -<<<<<<< HEAD this.options=options; -======= - var xhr=false; - - if(options.hasOwnProperty("upload")) { - - xhr=function() { - var myXhr = $.ajaxSettings.xhr(); - if(myXhr.upload){ - - var progressbar=options.upload.progressbar; - var total_loader=options.upload.total_loader; - var status=options.upload.status; - - $(total_loader).html(''); - $(progressbar).attr('value', 0); - $(status).html(''); - - myXhr.upload.addEventListener('progress',function (event) { - - $(total_loader).html("Uploaded "+event.loaded+" bytes of "+event.total); - var percent = (event.loaded / event.total) * 100; - $(progressbar).attr('value', (Math.round(percent))); - $(status).html(Math.round(percent)+"% uploaded... please wait"); - - }, false); - - myXhr.addEventListener("load", function(event) { - - $(status).html("Done!!"); - - }, false); - } - return myXhr; - } - } ->>>>>>> 811a1691680c070c92096fa1cdc3a061d8745033 $(this).on('submit', {url: this.options.url}, function (e) { @@ -70,20 +33,50 @@ form=this; - if(options.separated_data) - { - data[options.separated_data]=new FormData($(this)[0]); - } + /*if($(this).attr('enctype')) + {*/ + if(options.separated_data) + { + + data[options.separated_data]=new FormData($(this)[0]); + + } + else + { + + data=new FormData($(this)[0]); + + } + + + xhrFields={ + withCredentials: true + }; + + /*} else { - data=new FormData($(this)[0]); - } - - - xhrFields={ - withCredentials: true - }; + + if(options.separated_data) + { + data[options.separated_data]=$(this).serializeArray(); + + } + else + { + + data=$(this).serializeArray().reduce(function(obj, item) { + obj[item.name] = item.value; + return obj; + }, {}); + + } + + xhrFields={ + }; + + }*/ if(!data.hasOwnProperty("csrf_token")) { @@ -94,9 +87,12 @@ //Hide form and show the time icon $(this).find('.error').hide(); - + //$(this).hide(); $(options.loading).show(); + /*$(this).find('input').prop("disabled", true); + $(this).find('select').prop("disabled", true);*/ + if(options.hasOwnProperty("pre_callback")) { options.pre_callback(data); @@ -104,25 +100,21 @@ } //Ajax -<<<<<<< HEAD $.ajax({ -======= - - ajax_post={ ->>>>>>> 811a1691680c070c92096fa1cdc3a061d8745033 type: "POST", url: options.url, data: data, encoding: "UTF-8", xhrFields: xhrFields, cache:false, - contentType:false, + contentType: false, processData: false, success: function (data) { $(options.loading).hide(); - + + if(data.error) { if(!data.hasOwnProperty("error_csrf")) @@ -142,7 +134,7 @@ if(data.hasOwnProperty('error_form')) { for(i in data.error_form) { - + $(i).html(data.error_form[i]); $(i).show(); @@ -180,6 +172,8 @@ else { + + // If ok then post successful task. if(options.hasOwnProperty("success")) { @@ -206,17 +200,7 @@ }, dataType: 'json' - }; - - //console.log(xhr); - - if(xhr!=false) { - - ajax_post.xhr=xhr; - - } - - $.ajax(ajax_post); + }); return false; From 75de95acc3cb534ba342521841657805a786c4d1 Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Thu, 29 Jul 2021 01:54:10 +0200 Subject: [PATCH 09/10] Fixes in ajax --- ajax_list.js | 13 +++++++++++++ css/popup.css | 4 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/ajax_list.js b/ajax_list.js index 0f1508c..dcd0849 100644 --- a/ajax_list.js +++ b/ajax_list.js @@ -46,8 +46,21 @@ $=jQuery; } this.order_field=0; + + if(options.hasOwnProperty("order_field")) { + + this.order_field=options.order_field; + + } + this.order=0; + if(options.hasOwnProperty("order")) { + + this.order=options.order; + + } + arr_icon=['', '']; var func=this; diff --git a/css/popup.css b/css/popup.css index 02dee18..1ba2ae5 100644 --- a/css/popup.css +++ b/css/popup.css @@ -45,9 +45,9 @@ /*-webkit-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); -moz-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); box-shadow: 0px 0px 160px 0px rgba(80,80,80,1);*/ - box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); + /*box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); -webkit-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); - -moz-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); + -moz-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33);*/ } /* Css for animation loading */ From d5c3b254471d47ae7d5b0dace73505d9056cf42a Mon Sep 17 00:00:00 2001 From: absurdo Date: Fri, 8 Dec 2023 17:41:22 +0100 Subject: [PATCH 10/10] Fixes --- ajax_list.js | 21 ++--- css/popup.css | 9 ++- popup.js | 218 ++++++++++++++++++++++++++++++++++++++++++++++++++ posting2.js | 127 +++++++++++++++-------------- 4 files changed, 296 insertions(+), 79 deletions(-) diff --git a/ajax_list.js b/ajax_list.js index dcd0849..3217d92 100644 --- a/ajax_list.js +++ b/ajax_list.js @@ -46,21 +46,8 @@ $=jQuery; } this.order_field=0; - - if(options.hasOwnProperty("order_field")) { - - this.order_field=options.order_field; - - } - this.order=0; - if(options.hasOwnProperty("order")) { - - this.order=options.order; - - } - arr_icon=['', '']; var func=this; @@ -204,6 +191,14 @@ $=jQuery; }); + if(options.hasOwnProperty("after_list")) { + + after_list=options.after_list; + + after_list(); + + } + }, error: function (data) { diff --git a/css/popup.css b/css/popup.css index 1ba2ae5..0c40e78 100644 --- a/css/popup.css +++ b/css/popup.css @@ -32,8 +32,8 @@ top: 0; left: 50%; transform: translate(-50%, 0%);*/ -/* position: absolute; - top: 50%; + position: absolute; + /*top: 50%; left: 50%; transform: translate(-50%, -50%);*/ z-index:50005; @@ -45,9 +45,10 @@ /*-webkit-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); -moz-box-shadow: 0px 0px 160px 0px rgba(80,80,80,1); box-shadow: 0px 0px 160px 0px rgba(80,80,80,1);*/ - /*box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); + box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); -webkit-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); - -moz-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33);*/ + -moz-box-shadow: 0px 0px 5px 5px rgba(0,0,0,0.33); + position:absolute; } /* Css for animation loading */ diff --git a/popup.js b/popup.js index 27f7cc8..16a187d 100644 --- a/popup.js +++ b/popup.js @@ -202,3 +202,221 @@ $=jQuery; } })( jQuery ); + +$=jQuery; + +(function( $ ){ + + $.fn.simplePopUp=function (popup, width, pre_callback, post_callback, options) { + + var after_show=false; + + var after_click=false; + + if(options!=undefined) + { + + if(options.hasOwnProperty("popup_container")) + { + + popup_container=options.popup_container; + + } + + if(options.hasOwnProperty("after_show")) + { + + after_show=options.after_show; + + } + + if(options.hasOwnProperty("after_click")) + { + + after_click=options.after_click; + + } + + + } + + $(this).on('click', function (e) { + + //Show layer_popup + + body_height=$("body").height(); + + $('#layer_popup').height(body_height); + + $('body').prepend('
'); + + //$('body').css('overflow', 'hidden'); + + //Show popup + + $(popup).css('position', 'absolute'); + + $(popup).css('width', width); + + $(popup).addClass('content_popup'); + + /*var position=$(popup).offset(); + + var left=position.left; + var top=position.top; + + console.log($(popup).css('left'));*/ + + scr_width=$(window).width(); + + scr_height=$(window).height(); + + center_left=parseInt(scr_width/2)-parseInt(width/2); + + center_top=parseInt(scr_height/2)-parseInt($(popup).height()/2); + + $(popup).css('left', center_left); + $(popup).css('top', center_top); + + if(!after_show) + { + + $(popup).fadeIn(); + + } + else + { + + $(popup).fadeIn({'done': after_show(popup)}); + + } + + }); + + $('.close_popup').click(function () { + + if(after_click) + { + + after_click(); + + } + + $('#layer_popup').remove(); + + $(popup).hide(); + + return false; + + }); + + } + +})( jQuery ); + +//From https://www.w3schools.com/howto/howto_js_draggable.asp + +function dragElement(draggable, header) { + + elmnt=document.getElementById(draggable); + + var pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0; + if (document.getElementById(header)) { + // if present, the header is where you move the DIV from: + document.getElementById(header).onmousedown = dragMouseDown; + } else { + // otherwise, move the DIV from anywhere inside the DIV: + elmnt.onmousedown = dragMouseDown; + } + + function dragMouseDown(e) { + e = e || window.event; + e.preventDefault(); + // get the mouse cursor position at startup: + pos3 = e.clientX; + pos4 = e.clientY; + document.onmouseup = closeDragElement; + // call a function whenever the cursor moves: + document.onmousemove = elementDrag; + } + + function elementDrag(e) { + e = e || window.event; + e.preventDefault(); + // calculate the new cursor position: + pos1 = pos3 - e.clientX; + pos2 = pos4 - e.clientY; + pos3 = e.clientX; + pos4 = e.clientY; + // set the element's new position: + elmnt.style.top = (elmnt.offsetTop - pos2) + "px"; + elmnt.style.left = (elmnt.offsetLeft - pos1) + "px"; + } + + function closeDragElement() { + // stop moving when mouse button is released: + document.onmouseup = null; + document.onmousemove = null; + } +} + +(function( $ ){ + + $.fn.draggable = function (header) { + + var pos1 = 0, pos2 = 0, pos3 = 0, pos4 = 0; + + var popup=this; + + $(header).on('mousedown', function (e) { + + e = e || window.event; + + e.preventDefault(); + // get the mouse cursor position at startup: + pos3 = e.clientX; + pos4 = e.clientY; + + document.onmouseup = closeDragElement; + + // call a function whenever the cursor moves: + document.onmousemove = elementDrag; + + console.log('Moving...'); + + }); + + function elementDrag(e) { + + console.log('Moving windows...'); + + e = e || window.event; + e.preventDefault(); + // calculate the new cursor position: + pos1 = pos3 - e.clientX; + pos2 = pos4 - e.clientY; + pos3 = e.clientX; + pos4 = e.clientY; + // set the element's new position: + /*elmnt.style.top = (elmnt.offsetTop - pos2) + "px"; + elmnt.style.left = (elmnt.offsetLeft - pos1) + "px";*/ + + offset=$(popup).offset(); + + offset_top=parseInt(offset.top); + offset_left=parseInt(offset.left); + + $(popup).css('top', (offset_top - pos2) + "px"); + $(popup).css('left', (offset_left - pos1) + "px"); + + } + + function closeDragElement() { + // stop moving when mouse button is released: + document.onmouseup = null; + document.onmousemove = null; + } + + } + +})( jQuery ); diff --git a/posting2.js b/posting2.js index 38aca56..2403a0c 100644 --- a/posting2.js +++ b/posting2.js @@ -4,9 +4,7 @@ /* Add csrf token */ - /* options: url: url to post, loading: dom id, success: func, pre_callback, separated_data:boolean */ - - $.fn.options={}; + /* options: url: url to post, loading: dom id, success: func, error_data: func, pre_callback, separated_data:boolean, upload: {progressbar: '#progressbar', 'total_loader': '#total_loader', 'status': '#status'} */ $.fn.sendPost = function (options) { @@ -25,58 +23,61 @@ } - this.options=options; + var xhr=false; - $(this).on('submit', {url: this.options.url}, function (e) { + if(options.hasOwnProperty("upload")) { + + xhr=function() { + var myXhr = $.ajaxSettings.xhr(); + if(myXhr.upload){ + + var progressbar=options.upload.progressbar; + var total_loader=options.upload.total_loader; + var status=options.upload.status; + + $(total_loader).html(''); + $(progressbar).attr('value', 0); + $(status).html(''); + + myXhr.upload.addEventListener('progress',function (event) { + + $(total_loader).html("Uploaded "+event.loaded+" bytes of "+event.total); + var percent = (event.loaded / event.total) * 100; + $(progressbar).attr('value', (Math.round(percent))); + $(status).html(Math.round(percent)+"% uploaded... please wait"); + + }, false); + + myXhr.addEventListener("load", function(event) { + + $(status).html("File loaded successfully!!"); + + }, false); + } + return myXhr; + } + } + + $(this).on('submit', function (e) { //Get data of form form=this; - /*if($(this).attr('enctype')) - {*/ - if(options.separated_data) - { - - data[options.separated_data]=new FormData($(this)[0]); - - } - else - { - - data=new FormData($(this)[0]); - - } - - - xhrFields={ - withCredentials: true - }; - - /*} + if(options.separated_data) + { + data[options.separated_data]=new FormData($(this)[0]); + } else { - - if(options.separated_data) - { + data=new FormData($(this)[0]); + } + + + xhrFields={ + withCredentials: true + }; - data[options.separated_data]=$(this).serializeArray(); - - } - else - { - - data=$(this).serializeArray().reduce(function(obj, item) { - obj[item.name] = item.value; - return obj; - }, {}); - - } - - xhrFields={ - }; - - }*/ if(!data.hasOwnProperty("csrf_token")) { @@ -87,11 +88,8 @@ //Hide form and show the time icon $(this).find('.error').hide(); - //$(this).hide(); - $(options.loading).show(); - /*$(this).find('input').prop("disabled", true); - $(this).find('select').prop("disabled", true);*/ + $(options.loading).show(); if(options.hasOwnProperty("pre_callback")) { @@ -100,21 +98,20 @@ } //Ajax - - $.ajax({ + + ajax_post={ type: "POST", url: options.url, data: data, encoding: "UTF-8", xhrFields: xhrFields, cache:false, - contentType: false, + contentType:false, processData: false, success: function (data) { $(options.loading).hide(); - - + if(data.error) { if(!data.hasOwnProperty("error_csrf")) @@ -134,7 +131,7 @@ if(data.hasOwnProperty('error_form')) { for(i in data.error_form) { - + $(i).html(data.error_form[i]); $(i).show(); @@ -172,8 +169,6 @@ else { - - // If ok then post successful task. if(options.hasOwnProperty("success")) { @@ -200,14 +195,22 @@ }, dataType: 'json' - }); + }; + + //console.log(xhr); + + if(xhr!=false) { + + ajax_post.xhr=xhr; + + } + + $.ajax(ajax_post); return false; }); - - return this; - + } })( jQuery );