Diff: STRATO-apps/wordpress_03/app/wp-content/plugins/tutor-pro/addons/google-meet/assets/js/scripts.js

Keine Baseline-Datei – Diff nur gegen leer.
Zur Liste
1 -
1 + (()=>{"use strict";var t={};/************************************************************************/// The module cache
2 + var e={};// The require function
3 + function r(o){// Check if module is in cache
4 + var a=e[o];if(a!==undefined){return a.exports}// Create a new module (and put it into the cache)
5 + var n=e[o]={exports:{}};// Execute the module function
6 + t[o](n,n.exports,r);// Return the exports of the module
7 + return n.exports}/************************************************************************/// webpack/runtime/rspack_version
8 + (()=>{r.rv=()=>"1.5.7"})();// webpack/runtime/rspack_unique_id
9 + (()=>{r.ruid="bundler=rspack@1.5.7"})();/************************************************************************/;// CONCATENATED MODULE: ./node_modules/@swc/helpers/esm/_async_to_generator.js
10 + function o(t,e,r,o,a,n,i){try{var s=t[n](i);var u=s.value}catch(t){r(t);return}if(s.done)e(u);else Promise.resolve(u).then(o,a)}function a(t){return function(){var e=this,r=arguments;return new Promise(function(a,n){var i=t.apply(e,r);function s(t){o(i,a,n,s,u,"next",t)}function u(t){o(i,a,n,s,u,"throw",t)}s(undefined)})}};// CONCATENATED MODULE: ./assets/react/lib/ajax-handler.js
11 + function n(t){return a(function*(){try{var e=yield fetch(window._tutorobject.ajaxurl,{method:"POST",body:t});return e}catch(t){tutor_toast(__("Operation failed","tutor-pro"),t,"error")}})()};// CONCATENATED MODULE: ./addons/google-meet/assets/react/scripts.js
12 + /**
13 + * Google meet scripts for create, update & delete meetings
14 + *
15 + * @since v2.1.0
16 + */window.jQuery(document).ready(function(t){var{__,sprintf:e}=wp.i18n;// Listen click event on meta-box
17 + var r=document.getElementById("tutor-google-meet-meta-box-wrapper");var o=document.getElementById("tutor-common-confirmation-modal");var i=__("Something went wrong, please refresh the page & try again!","tutor-pro");var s=document.getElementById("tutor-course-content-builder-root");var u="tutor-gm-create-new-meeting";var l="tutor-gm-update-meeting";/**
18 + * Listen edit/delete event & act accordingly
19 + */if(r){r.onclick=t=>{var e=t.target;// Handle delete event.
20 + if(e.classList.contains("tutor-google-meet-list-delete")){t.preventDefault();c(e)}/**
21 + * On the frontend meeting inside tutor-google-meet-list-delete class
22 + * there is icon and span tag. So if clicked on icon or span
23 + * set target to delete.
24 + */if(e.classList.contains("tutor-gm-delete")){t.preventDefault();e=e.closest("a.tutor-google-meet-list-delete");c(e)}// Handle create
25 + if(e.classList.contains(u)||e.classList.contains(l)){t.preventDefault();try{v(e)}catch(t){tutor_toast(__("Failed","tutor-pro"),i,"warning")}}if(e.hasAttribute("type")&&e.getAttribute("type")==="checkbox"){if(e.hasAttribute("checked")){e.removeAttribute("checked")}else{e.setAttribute("checked","checked")}}return};// Handle attendees checkbox
26 + t(document.body).on("change",'#tutor-google-meet-meta-box-wrapper input[type="checkbox"]',function(){if(t(this).is(":checked")){t(this).closest(".tutor-modal").find("input[name=attendees]").val("Yes")}else{t(this).closest(".tutor-modal").find("input[name=attendees]").val("No")}})}// Prepare topics event to delete.
27 + if(s){s.onclick=t=>{var e=t.target;// Handle delete event.
28 + if(e.classList.contains("tutor-google-meet-list-delete")){t.preventDefault();c(e)}// Handle create/update.
29 + if(e.classList.contains(u)||e.classList.contains(l)){t.preventDefault();try{v(e)}catch(t){tutor_toast(__("Failed","tutor-pro"),i,"warning")}}return};// Handle attendees checkbox
30 + t(document.body).on("change",'#tutor-course-content-builder-root input[type="checkbox"]',function(){if(t(this).is(":checked")){t(this).closest(".tutor-modal").find("input[name=attendees]").val("Yes")}else{t(this).closest(".tutor-modal").find("input[name=attendees]").val("No")}})}function c(t){var e=t.dataset.eventId;var r=t.dataset.meetingPostId;var a=t.dataset.itemReference;o.querySelector("[name=id]").value=r;o.querySelector("[name=event-id]").value=e;o.querySelector("[name=item-reference]").value=a}/**
31 + * Handle meeting delete event
32 + */if(o){var d=o.querySelector("button[data-tutor-modal-submit]");d.onclick=e=>a(function*(){e.preventDefault();var r=e.target;var a=new FormData;var i=o.querySelector("[name=item-reference]").value;a.set("event-id",o.querySelector("[name=event-id]").value);a.set("post-id",o.querySelector("[name=id]").value);a.set("action","tutor_google_meet_delete");a.set(window.tutor_get_nonce_data(true).key,window.tutor_get_nonce_data(true).value);r.setAttribute("disabled",true);r.classList.add("is-loading");var s=yield n(a);if(s.ok){var u=yield s.json();if(u.status_code===200||u.status_code===201){tutor_toast(__("Success","tutor-pro"),u.message,"success");if(_tutorobject.current_page==="google-meet"){window.location.reload();return}}else{tutor_toast(__("Failed","tutor-pro"),u.message,"warning")}r.classList.remove("is-loading");r.removeAttribute("disabled");o.classList.remove("tutor-is-active");t("body").removeClass("tutor-modal-open");window.dispatchEvent(new Event(_tutorobject.content_change_event))}else{tutor_toast(__("Error","tutor-pro"),__("Something went wrong, please try after refreshing page","tutor-pro"),"error");r.classList.remove("is-loading");r.removeAttribute("disabled")}})()}/**
33 + * Manage AJAX request for meeting create or update
34 + *
35 + * @param {*} wrapper selector, where form fields exists, all
36 + * form fields having name will be selected.
37 + *
38 + * @param {*} additionalFields additional fields, array of objects. If need to set
39 + * additional fields in form data.
40 + * @returns void
41 + */function v(r){return a(function*(r){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];var a=r.closest(".tutor-modal");var i=a.getAttribute("id");var s=a.querySelectorAll("[name]");var u=new FormData;var l=[];s.forEach(t=>{// Exclude attendees from validation.
42 + if(t.value===""&&t.name!=="attendees"){/* Translators: %s template name. */l.push(e(__("%s is required","tutor-pro"),t.name))}// Fallback if attendees value not set.
43 + if(t.name==="attendees"){u.set(t.name,t.value===""?"Yes":t.value)}else{u.set(t.name,t.value)}});u.set("action","tutor_google_meet_new_meeting");// Set additional fields.
44 + o.forEach(t=>{u.set(t.name,t.value)});r.classList.add("is-loading");r.setAttribute("disabled",true);// Validate request before post.
45 + if(l.length){l.forEach(t=>{tutor_toast(__("Validation Error","tutor-pro"),m(t.replace(/_/g," ")),"warning")});r.removeAttribute("disabled");r.classList.remove("is-loading");return}var c=yield n(u);if(c.ok){var d=yield c.json();if(d.status_code===200||d.status_code===201){// If it is create form then reset after successful submit.
46 + if(i==="tutor-google-meet-create-modal"||a.classList.contains("tutor-gm-topic-create-modal")){// Show success message.
47 + tutor_toast(__("Success","tutor-pro"),d.message,"success")}else{// Show success message.
48 + tutor_toast(__("Success","tutor-pro"),d.message,"success");// Reload if it is listing page.
49 + if(_tutorobject.current_page==="google-meet"){window.location.reload();return}}a.classList.remove("tutor-is-active");// Close the meeting editor modal
50 + t("body").removeClass("tutor-modal-open");window.dispatchEvent(new Event(_tutorobject.content_change_event))}else{tutor_toast(__("Failed","tutor-pro"),d.message,"warning")}}else{tutor_toast(__("Failed","tutor-pro"),__("Something went wrong, please try again!","tutor-pro"),"warning")}r.classList.remove("is-loading");r.removeAttribute("disabled")}).apply(this,arguments)}/**
51 + * Upper case the fist letter from string
52 + *
53 + * @param string text
54 + * @returns string
55 + */function m(t){var e=t.substr(0,1);return e.toUpperCase()+t.substr(1)}function g(e,r){var o=e.getBoundingClientRect();// use 'setTimeout' to prevent effect overridden by other scripts
56 + setTimeout(function(){var a=t("body").scrollTop();r.dpDiv.css({top:o.top+e.offsetHeight+a})},0)}// Init timepicker
57 + function f(){t(".tutor-google-meet-timepicker").timepicker({timeFormat:"hh:mm TT",beforeShow:function t(t,e){g(t,e)}})}function _(){// Reassign date and timepicker.
58 + t(".tutor-google-meet-timepicker").timepicker({timeFormat:"hh:mm TT",beforeShow:function t(t,e){g(t,e)}})}f();window.addEventListener(_tutorobject.content_change_event,f);/**
59 + * Drag and Drop files -> Upload JSON (SET API)
60 + */var p=document.querySelectorAll(".tutor-google-meet-credential-form .drag-drop-zone input[type=file]");if(p.length>0){p.forEach(t=>{var e=t.closest(".drag-drop-zone");["dragover","dragleave","dragend"].forEach(t=>{if(t==="dragover"){e.addEventListener(t,t=>{t.preventDefault();e.classList.add("dragover")})}else{e.addEventListener(t,t=>{e.classList.remove("dragover")})}});e.addEventListener("drop",r=>{r.preventDefault();var o=r.dataTransfer.files;h(o,t,e);e.classList.remove("dragover")});t.addEventListener("change",r=>{var o=r.target.files;h(o,t,e)})})}// Show file info
61 + var h=(t,e,r)=>{if(t.length){e.files=t;r.classList.add("file-attached");r.querySelector(".file-info").innerHTML="<strong>File attached</strong> - ".concat(t[0].name)}else{r.classList.remove("file-attached");r.querySelector(".file-info").innerHTML=""}};// Handle credential upload.
62 + var y=document.getElementById("tutor-google-meet-credential-upload");var w=document.getElementById("tutor-google-meet-choose-label");var b=document.querySelector(".tutor-google-meet-credential-form .drag-drop-zone");if(w){w.onclick=t=>{y.click()}}if(y){y.onchange=t=>{var e=t.target.files[0];L(e)}}if(b){b.addEventListener("drop",t=>{t.preventDefault();var e=t.dataTransfer.files[0];L(e)})}function L(t){return a(function*(){var e=new FormData;var r=document.querySelector(".file-info");e.set("file",t);e.set("action","tutor_pro_google_meet_credential_upload");e.set(window.tutor_get_nonce_data(true).key,window.tutor_get_nonce_data(true).value);try{if(t.type==="application/json"){w.classList.add("is-loading");var o=yield n(e);if(o.ok){var a=yield o.json();if(a.success){tutor_toast(__("Success","tutor-pro"),a.data,"success");window.location.reload()}else{tutor_toast(__("Error","tutor-pro"),a.data,"warning")}w.classList.remove("is-loading")}}else{w.classList.remove("is-loading");tutor_toast(__("Error","tutor-pro"),__("Invalid file type!","tutor-pro"),"warning");y.value="";if(r){r.innerHTML=""}}}catch(t){tutor_toast(__("Error","tutor-pro"),__("Something went wrong, please try again!","tutor-pro"),"warning")}})()}// Handle settings event.
63 + var E=document.getElementById("tutor-google-meet-settings");if(E){E.onchange=t=>a(function*(){var e=false;var r=t.target;// If search then return.
64 + if(r.hasAttribute("type")&&r.getAttribute("type")==="search"){return}// Check if user selecting same timezone.
65 + if(r.hasAttribute("data-value")){e=true;var o=t.target.dataset.value;var a=r.value;if(o===a){return}}var s=new FormData(E);try{var u=yield n(s);if(u.ok){var l=yield u.json();if(l.success){tutor_toast(__("Success","tutor-pro"),l.data,"success");if(e){r.setAttribute("data-value",r.value)}}else{tutor_toast(__("Failed","tutor-pro"),l.data,"error")}}else{tutor_toast(__("Error","tutor-pro"),__(u.statusText),"error")}}catch(t){tutor_toast(__("Error","tutor-pro"),i,"error")}})()}var S=document.getElementById("tutor-meet-confirmation-form");if(S){S.onsubmit=t=>a(function*(){t.preventDefault();var e=new FormData(S);var r=S.querySelector("[data-tutor-modal-submit]");r.classList.add("is-loading");r.setAttribute("disabled",true);try{var o=yield n(e);var a=yield o.json();var{success:i,data:s}=a;if(i){tutor_toast(__("Success","tutor-pro"),s,"success");location.reload()}else{tutor_toast(__("Failed","tutor-pro"),s,"error")}}catch(t){tutor_toast(__("Failed","tutor-pro"),__("Something went wrong, please try again","tutor-pro"),"error")}finally{r.classList.remove("is-loading");r.removeAttribute("disabled")}})()}})})();