script.min.js
14.3 KB
!function(){"use strict";!function(e){var t={},i={onReady:function(){this.setupDOM(),this.eventListeners(),this.initializeDependencies()},setupDOM:function(){t.changeSelectType=e(".zvc-hacking-select"),t.dateTimePicker=e("#datetimepicker"),t.goToAccordionEl=e(".vczapi-go-to-open-accordion"),t.reportsDatePicker=e("#reports_date"),t.zoomAccountDatepicker=e(".zoom_account_datepicker"),t.meetingListDTable=e("#zvc_users_list_table, #zvc_meetings_list_table"),t.meetingListTableCheck=e("#zvc_meetings_list_table"),t.usersListTable=e("#vczapi-get-host-users-wp"),t.meetingListTbl=t.meetingListTableCheck.find("input[type=checkbox]"),t.cover=e("#zvc-cover"),t.changeMeetingState=e(".vczapi-meeting-state-change"),t.show_on_meeting_delete_error=e(".show_on_meeting_delete_error"),t.toggleTriggerElement=e(".vczapi-toggle-trigger"),this.$manualHostID=e(".vczapi-admin-hostID-manually-add"),t.accordionElement=e(".vczapi-admin-accordion")},eventListeners:function(){t.toggleTriggerElement.on("click",this.togglePasswordText.bind(this)),t.accordionElement.on("click",".vczapi-admin-accordion--header",this.toggleAccordion.bind(this)),t.goToAccordionEl.on("click",this.expandAccordion.bind(this)),t.meetingListTableCheck.find("#checkall").on("click",this.meetingListTableCheck),e("#bulk_delete_meeting_listings").on("click",this.bulkDeleteMeetings),e(".zvc-meetings-form").find('input[name="password"]').on("keypress",this.meetingPassword),e(".delete-meeting").on("click",this.deleteMetting),e(".zvc-dismiss-message").on("click",this.dismissNotice.bind(this)),e(".check-api-connection").on("click",this.checkConnection.bind(this)),e(t.changeMeetingState).on("click",this.meetingStateChange.bind(this)),this.$manualHostID.on("click",this.showManualHostIDField.bind(this))},expandAccordion:function(t){t.preventDefault();let i=e(t.currentTarget),a=e(i.attr("href"));void 0!==a&&a.length>0&&(a.addClass("expanded"),e("html,body").animate({scrollTop:a.offset().top},1e3),a.focus())},toggleAccordion:function(t){t.preventDefault(),e(t.currentTarget).parent().toggleClass("expanded")},togglePasswordText:function(t){t.preventDefault();let i=e(t.currentTarget),a=e(i.data("element"));0===i.data("visible")?(a.attr("type","text"),i.data("visible",1),i.text("Hide")):(a.attr("type","password"),i.data("visible",0),i.text("Show"))},showManualHostIDField:function(t){t.preventDefault(),e(".vczapi-admin-post-type-host-selector").select2("destroy").remove(),e(".vczapi-manually-hostid-wrap").before('<input type="text" placeholder="'+zvc_ajax.lang.host_id_search+'" class="regular-text vczapi-search-host-id" name="userId" required>').remove()},datePickers:function(){if(t.dateTimePicker.length>0){var i=new Date,a=i.getMonth()+1,s=i.getDate(),n=i.getHours()+":"+i.getMinutes()+":"+i.getSeconds(),c=i.getFullYear()+"-"+(a<10?"0":"")+a+"-"+(s<10?"0":"")+s+" "+n,r=t.dateTimePicker.data("existingdate");r&&(c=r),t.dateTimePicker.datetimepicker({value:c,step:15,minDate:0,format:"Y-m-d H:i"})}t.reportsDatePicker.length>0&&t.reportsDatePicker.datepicker({changeMonth:!0,changeYear:!1,showButtonPanel:!0,dateFormat:"MM yy"}).focus((function(){var t=e(this);e(".ui-datepicker-calendar").detach(),e(".ui-datepicker-close").click((function(){var i=e("#ui-datepicker-div .ui-datepicker-month :selected").val(),a=e("#ui-datepicker-div .ui-datepicker-year").html();t.datepicker("setDate",new Date(a,i,1))}))})),e("#vczapi-check-recording-date").length>0&&e("#vczapi-check-recording-date").datepicker({changeMonth:!0,changeYear:!0,showButtonPanel:!0,dateFormat:"MM yy",beforeShow:function(t,i){setTimeout((function(){i.dpDiv.css({top:e("#vczapi-check-recording-date").offset().top+35,left:e("#vczapi-check-recording-date").offset().left})}),0)}}).focus((function(){var t=e(this);e(".ui-datepicker-calendar").detach(),e(".ui-datepicker-close").click((function(){var i=e("#ui-datepicker-div .ui-datepicker-month :selected").val(),a=e("#ui-datepicker-div .ui-datepicker-year :selected").val();t.datepicker("setDate",new Date(a,i,1))}))})),t.zoomAccountDatepicker.length>0&&t.zoomAccountDatepicker.datepicker({dateFormat:"yy-mm-dd"})},initializeDependencies:function(){t.changeSelectType.length>0&&t.changeSelectType.select2(),this.datePickers(),t.meetingListDTable.length>0&&t.meetingListDTable.dataTable({pageLength:25,columnDefs:[{targets:0,orderable:!1}]}),t.usersListTable.length>0&&t.usersListTable.dataTable({processing:!0,serverSide:!0,pageLength:25,ajax:{url:ajaxurl+"?action=get_assign_host_id"},columns:[{data:"id"},{data:"email"},{data:"name"},{data:"host_id"}],drawCallback:function(t){e(".vczapi-get-zoom-hosts").select2({ajax:{url:ajaxurl+"?action=vczapi_get_zoom_host_query",type:"GET",dataType:"json",delay:1e3,cache:!0},allowClear:!0,placeholder:"Filter a zoom user by email ID or host ID...",width:"100%"}).on("select2:select",(function(t){e(".vczapi-host-email-field-"+e(this).data("userid")).length>0?e(".vczapi-host-email-field-"+e(this).data("userid")).val(t.params.data.text):e('<input type="hidden" class="vczapi-host-email-field-'+e(this).data("userid")+'" name="zoom_host_email['+e(this).data("userid")+']" value="'+t.params.data.text+'" />').insertAfter(this)}))}}),e("#vczapi-select-wp-user-for-host").length>0&&e("#vczapi-select-wp-user-for-host").select2({ajax:{url:ajaxurl+"?action=vczapi_get_wp_users",type:"GET",dataType:"json"},placeholder:"Select a WordPress User",width:"300px"})},meetingListTableCheck:function(){e(this).is(":checked")?t.meetingListTbl.each((function(){e(this).prop("checked",!0)})):t.meetingListTbl.each((function(){e(this).prop("checked",!1)}))},bulkDeleteMeetings:function(){if(1!=confirm("Confirm bulk delete these Meeting?"))return!1;var i=[];t.meetingListTableCheck.find("input.checkthis").each((function(){e(this).is(":checked")&&i.push(e(this).val())}));var a=e(this).data("type");if(i){var s={meetings_id:i,type:a,action:"zvc_bulk_meetings_delete",security:zvc_ajax.zvc_security};t.cover.show(),e.post(zvc_ajax.ajaxurl,s).done((function(e){t.cover.fadeOut("slow"),1==e.error?t.show_on_meeting_delete_error.show().html("<p>"+e.msg+"</p>"):(t.show_on_meeting_delete_error.show().html("<p>"+e.msg+"</p>"),location.reload())}))}},meetingPassword:function(t){if(!/([a-zA-Z0-9])+/.test(String.fromCharCode(t.which)))return!1;var i=e(this).val(),a=e(this).data("maxlength");a>0&&e(this).val(i.substr(0,a))},deleteMetting:function(){var i=e(this).data("meetingid"),a=e(this).data("type");if(1!=confirm("Confirm Delete this Meeting?"))return!1;var s={meeting_id:i,type:a,action:"zvc_delete_meeting",security:zvc_ajax.zvc_security};t.cover.show(),e.post(zvc_ajax.ajaxurl,s).done((function(e){t.cover.fadeOut("slow"),1==e.error?t.show_on_meeting_delete_error.show().html("<p>"+e.msg+"</p>"):(t.show_on_meeting_delete_error.show().html("<p>"+e.msg+"</p>"),location.reload())}))},dismissNotice:function(t){t.preventDefault(),e(t.currentTarget).closest(".notice-success").hide(),e.post(zvc_ajax.ajaxurl,{action:"zoom_dimiss_notice"}).done((function(e){console.log(e)}))},checkConnection:function(i){i.preventDefault(),t.cover.show(),e.post(zvc_ajax.ajaxurl,{action:"check_connection",security:zvc_ajax.zvc_security}).done((function(e){t.cover.hide(),alert(e)}))},meetingStateChange:function(t){t.preventDefault();var i=e(t.currentTarget).data("state"),a=e(t.currentTarget).data("postid"),s={id:e(t.currentTarget).data("id"),state:i,type:e(t.currentTarget).data("type"),post_id:a||!1,action:"state_change",accss:zvc_ajax.zvc_security};if("resume"===i)this.changeState(s);else if("end"===i){if(!confirm(zvc_ajax.lang.confirm_end))return;this.changeState(s)}},changeState:function(t){e.post(zvc_ajax.ajaxurl,t).done((function(e){location.reload()}))}},a={init:function(){this.cacheDOM(),this.evntHandlers()},cacheDOM:function(){this.notificationWrapper=e(".vczapi-status-notification"),this.syncUserId=e(".vczapi-sync-user-id")},evntHandlers:function(){this.syncUserId.on("change",this.fetchMeetingsByUser.bind(this))},fetchMeetingsByUser:function(t){t.preventDefault();var i=this,a=e(this.syncUserId).val(),s={user_id:a,action:"vczapi_sync_user",type:"check"},n=e(".results");n.html("<p>"+vczapi_sync_i10n.before_sync+"</p>"),e.post(ajaxurl,s).done((function(t){if(t.success){var s='<div class="vczapi-sync-details">';s+="<p><strong>"+vczapi_sync_i10n.total_records_found+":</strong> "+t.data.total_records+"</p>",s+="<p><strong>"+vczapi_sync_i10n.total_not_synced_records+":</strong> "+_.size(t.data.meetings)+" (Only listing Scheduled Meetings)</p>",s+='<select class="vczapi-choose-meetings-to-sync-select2" name="sync-meeting-ids[]" multiple="multiple">',e(t.data.meetings).each((function(e,t){s+='<option value="'+t.id+'">'+t.topic+"</option>"})),s+="</select>",setTimeout((function(){e(".vczapi-choose-meetings-to-sync-select2").select2({maximumSelectionLength:10,placeholder:vczapi_sync_i10n.select2_placeholder})}),100),s+='<p><a href="javascript:void(0);" class="vczapi-sync-meeting button button-primary" data-userid="'+a+'">'+vczapi_sync_i10n.sync_btn+"</a></p>",s+="</div>",n.html(s),e(".vczapi-sync-meeting").on("click",i.syncMeeting.bind(i))}else n.html("<p>"+t.data+"</p>")}))},syncMeeting:function(t){t.preventDefault(),e(t.currentTarget).attr("disabled","disabled");var i=e(".vczapi-choose-meetings-to-sync-select2").val();_.size(i)>0?(this.notificationWrapper.show().html("<p>"+vczapi_sync_i10n.sync_start+"</p>").removeClass("vczapi-error"),this.doSync(0,i)):(this.notificationWrapper.show().html("<p>"+vczapi_sync_i10n.sync_error+"</p>").addClass("vczapi-error"),e(t.currentTarget).removeAttr("disabled"))},doSync:function(t,i){var s=this,n={action:"vczapi_sync_user",type:"sync",meeting_id:i[t]};e.post(ajaxurl,n).done((function(n){t++,s.notificationWrapper.show().append("<p> "+n.data.msg+"</p>"),t<_.size(i)?a.doSync(t,i):n.success?(s.notificationWrapper.show().append("<p>"+vczapi_sync_i10n.sync_completed+"</p>"),e(".vczapi-sync-meeting").removeAttr("disabled")):(s.notificationWrapper.show().append("<p>"+n.data.msg+"</p>"),e(".vczapi-sync-meeting").removeAttr("disabled"))}))}};const s={init:function(){this.cacheDOM(),this.evntHandlers()},cacheDOM:function(){this.meetingSelector=e("#vczapi-admin-meeting-ype"),this.hideOnWebinarSelector=e(".vczapi-admin-hide-on-webinar"),this.showOnWebinarSelector=e(".vczapi-admin-show-on-webinar")},evntHandlers:function(){this.meetingSelector.on("change",this.webinarElementsShow.bind(this))},webinarElementsShow:function(t){"2"===e(t.currentTarget).val()?(this.hideOnWebinarSelector.hide(),this.showOnWebinarSelector.show()):(this.hideOnWebinarSelector.show(),this.showOnWebinarSelector.hide())}},n={init:function(){this.cacheDOM(),void 0!==this.$wizardWrapper&&this.$wizardWrapper.length>0&&this.eventListeners()},cacheDOM:function(){this.$wizardOverlay=e(".vczapi-migrate-to-s2sOauth--overlay"),this.$wizardWrapper=e(".vczapi-migrate-to-s2sOauth"),this.$s2sOauthForm=e("#vczapi-s2sOauthCredentials-wizard-form"),this.$appSDKForm=e("#vczapi-s2soauth-app-sdk-form"),this.$messageWrapper=this.$wizardWrapper.find(".vczapi-migrate-to-s2sOauth--message")},eventListeners:function(){this.maybeTriggerMigrationWizard(),this.$wizardWrapper.find(".next-step").on("click",this.navigateToStep.bind(this)),this.$s2sOauthForm.on("submit",this.s2sOauthFormHandler.bind(this)),this.$appSDKForm.on("submit",this.appSDKFormHandler.bind(this)),e("body").on("click",this.maybeCloseWizard.bind(this))},maybeCloseWizard:function(t){const i=t.target;e(i)[0]===this.$wizardOverlay[0]&&this.$wizardOverlay.removeClass("expanded")},showMessage:function(e,t="text"){const i="show-message "+("success"===e?"success-message":"error-message");this.$wizardWrapper.find(".vczapi-migrate-to-s2sOauth--message").removeClass(["error-message","success-message"]),this.$wizardWrapper.find(".vczapi-migrate-to-s2sOauth--message").addClass(i).text(t)},s2sOauthFormHandler:function(t){t.preventDefault();const i=e(t.target).serialize();e.ajax({type:"POST",url:ajaxurl+"?action=vczapi_save_oauth_credentials",context:this,data:i,beforeSend:function(){this.$s2sOauthForm.find("input").prop("disabled",!0),this.$s2sOauthForm.addClass("submitting")},success:function(e){this.$s2sOauthForm.find("input").prop("disabled",!1),this.$s2sOauthForm.removeClass("submitting"),e.hasOwnProperty("success")&&e.success?(this.showMessage("success",e?.data.message),this.$wizardWrapper.find(".next-step").attr("disabled",!1)):this.showMessage("error",e?.data.message)},error:function(e,t,i){console.log("Error thrown",i)}})},appSDKFormHandler:function(t){t.preventDefault();const i=e(t.target).serialize();e.ajax({type:"POST",url:ajaxurl+"?action=vczapi_save_app_sdk_credentials",context:this,data:i,beforeSend:function(){this.$appSDKForm.find("input").prop("disabled",!0),this.$appSDKForm.addClass("submitting")},success:function(e){this.$appSDKForm.find("input").prop("disabled",!1),this.$appSDKForm.removeClass("submitting"),e.hasOwnProperty("success")&&e.success?(this.showMessage("success",e?.data.message),this.$wizardWrapper.find(".next-step").attr("disabled",!1)):this.showMessage("error",e?.data.message)},error:function(e,t,i){console.log("Error thrown",i)}})},maybeTriggerMigrationWizard:function(){let e=this.getSearchParameters();e.hasOwnProperty("page")&&"zoom-video-conferencing-settings"===e.page&&e.hasOwnProperty("migrate")&&"now"===e.migrate&&this.$wizardOverlay.addClass("expanded")},getSearchParameters:function(){let e=window.location.search.substring(1);return null!=e&&""!==e?this.transformToAssocArray(e):{}},transformToAssocArray:function(e){for(var t={},i=e.split("&"),a=0;a<i.length;a++){var s=i[a].split("=");t[s[0]]=s[1]}return t},navigateToStep:function(t){t.preventDefault();let i=e(t.currentTarget),a=i.data("step"),s=i.data("final_step");if(void 0===a)console.log("Error no steps defined");else{let e=this,t=e.$wizardWrapper.find(".step-"+a);if(t.length>0){let n=parseInt(a)+1;this.$wizardWrapper.find(".step.active").removeClass("active").fadeOut("slow",(function(){t.addClass("active").fadeIn("slow"),i.data("step",n),i.attr("disabled",!0),n>parseInt(s)&&i.hide(),e.$messageWrapper.removeClass("show-message")}))}else i.hide()}}},c={init:function(){e(".vczapi-dismiss-admin-notice").on("click",this.dismissNotice.bind(this))},dismissNotice:function(t){t.preventDefault();let i=e(t.target),a=i.data("id"),s=i.data("security");e.ajax({type:"POST",url:ajaxurl,data:{action:"vczapi_dismiss_admin_notice",option:a,security:s},beforeSend:function(){i.parents(".vczapi-notice").length>0&&i.parents(".vczapi-notice").fadeOut()},success:function(e){e.hasOwnProperty("success")&&e.success&&console.log(e)}})}};e((function(){n.init(),c.init(),i.onReady(),a.init(),s.init()}))}(jQuery)}();