// source --> https://karavanyzlin.cz/wp-content/plugins/wp-upg/js/upg_load_more.js?ver=2.18 
//Toggle submission form
jQuery(document).ready(function() {
  jQuery("#upg_submit_form").click(function(e) {
    jQuery("#upg_toggle_form").slideToggle("slow");
  });
});

//Load more button
jQuery(document).ready(function() {
  var paged = 1;

  jQuery(".upg_load_more").click(function(e) {
    e.preventDefault();
    post_id = jQuery(this).attr("data-post_id");
    gallery_layout = jQuery(this).attr("gallery_layout");
    popup = jQuery(this).attr("popup");
    max_paged = jQuery(this).attr("data-paged");
    reset = jQuery(this).attr("data-reset");

    if (reset == "true") {
      paged = 1;
      jQuery("#upg_main_loop").empty();
    }

    jQuery.ajax({
      type: "post",
      dataType: "json",
      url: myAjax.ajaxurl,
      data: {
        action: "upg_load_more",
        post_id: post_id,
        paged: paged,
        gallery_layout: gallery_layout,
        popup: popup
      },
      beforeSend: function() {
        //alert("about to send");
        jQuery("#upg_load_more").slideUp();
        jQuery("#upg_loader").show();
      },
      success: function(response) {
        jQuery("#upg_main_loop").append(response.msg);
        paged++;

        //alert(max_paged + "--" + paged);
      },
      complete: function(data) {
        // Hide image container
        jQuery("#upg_loader").hide();
        jQuery("#upg_load_more").slideDown();
        jQuery("#upg_no_record").hide();
        // alert("response complete");
        if (paged > max_paged) jQuery("#upg_load_more").slideUp();
      }
    });
  });
});
// source --> https://karavanyzlin.cz/wp-content/plugins/wp-upg/js/upg_ajax_post.js?ver=2.18 
jQuery(document).ready(function () {

    jQuery('.upg_ajax_post').on('submit', function (e) {
        e.preventDefault();
        //post_id = jQuery(this).attr("data-post_id")
        //nonce = jQuery(this).attr("data-nonce")
        var form = jQuery('#upg-request-form')[0];
        var formData = new FormData(form);
        var i = 0;
        var progress = true;
        //alert("start");

        jQuery.ajax({
            type: "post",
            dataType: "json",
            url: myAjax.ajaxurl,
            enctype: 'multipart/form-data',
            processData: false,
            contentType: false,
            data: formData,
            xhr: function () {
                var jqXHR = null;
                if (window.ActiveXObject) {
                    jqXHR = new window.ActiveXObject("Microsoft.XMLHTTP");
                }
                else {
                    jqXHR = new window.XMLHttpRequest();
                }

                //Upload progress
                jqXHR.upload.addEventListener("progress", function (evt) {
                    if (evt.lengthComputable) {
                        var percentComplete = Math.round((evt.loaded * 100) / evt.total);
                        //Do something with upload progress
                        //console.log('Uploaded percent', percentComplete);
                        document.getElementById("upg_progress").style.width = percentComplete + "%"; // width
                        document.getElementById("upg_progress").innerHTML = percentComplete + "%";

                        if (percentComplete > 90) {
                            setInterval(function () {
                                if (i < 100 && progress) {
                                    document.getElementById("upg_progress_process").style.width = i + "%";
                                    document.getElementById("upg_progress_process").innerHTML = i + "%";
                                    i++;
                                }
                                else {
                                    clearInterval(this);
                                }
                            }, 1000);
                        }

                    }
                }, false);
                //Download progress
                jqXHR.addEventListener("progress", function (evt) {
                    if (evt.lengthComputable) {
                        var percentComplete = Math.round((evt.loaded * 100) / evt.total);
                        //Do something with download progress
                        //console.log('Downloaded percent', percentComplete);
                    }
                }, false);
                return jqXHR;
            },
            beforeSend: function () {
                //console.log("Send to UPG");
                jQuery("#upg_form").slideUp();
                jQuery("#upg_loader").show();
                i = 0;
                progress = true;
            },


            success: function (response) {

                if (response.type == "success") {
                    jQuery('.upg_response').show();
                    jQuery('.upg_response').empty();
                    jQuery('.upg_response').append(response.msg);
                    jQuery('#load_more_reset').click();
                    //jQuery('.upg_response').append(response);

                    console.log(response);


                }
                else {
                    //console.log("Blank Response");
                    jQuery('.upg_response').append(response.msg);
                }
            },
            complete: function (data) {
                // Hide image container
                //console.log("Submission completed");
                jQuery("#upg_loader").hide();
                jQuery('#upg_after_response').show();
                i = 0;
                progress = false;

            },
            error: function (jqXHR, textStatus, errorThrown) {
                console.log("Error occurred");
                jQuery('.upg_response').show();
                jQuery('.upg_response').empty();
                jQuery('.upg_response').append("<div class='upg_error'>Error: " + errorThrown + "</div>");

            }
        })

    })

    jQuery(".upg_send_again").click(function (e) {
        e.preventDefault();
        //alert("hello");
        jQuery('#upg_after_response').hide();
        jQuery("#upg_form").slideDown();
        jQuery('.upg_response').empty();
        //jQuery('.upg_response').hide();

        document.getElementById("upg_progress").style.width = "0%"; // width
        document.getElementById("upg_progress_process").style.width = "0%";
        document.getElementById("upg_progress").innerHTML = "0%";
        document.getElementById("upg_progress_process").innerHTML = "0%";

    })

});