fictioneer/js/admin.min.js

1 line
20 KiB
JavaScript
Raw Permalink Normal View History

2024-12-06 17:38:32 +01:00
function fcn_purgeSchema(e){const t=_$(`a[data-id="${e}"]`),a=t.closest(".row-actions");t.closest("tr").classList.add("no-schema"),a.remove(),FcnUtils.aPost({action:"fictioneer_ajax_purge_schema",nonce:document.getElementById("fictioneer_admin_nonce").value,post_id:e}).then((e=>{e.success||console.log(e.data)})).catch((e=>{console.log(e)}))}function fcn_purgeAllSchemas(e=0,t=null,a=0){const n=_$$("[data-action-purge-all-schemas]");null===t&&n.forEach((e=>{FcnUtils.toggleInProgress(e,!0)})),FcnUtils.aPost({action:"fictioneer_ajax_purge_all_schemas",offset:e,nonce:document.getElementById("fictioneer_admin_nonce").value}).then((e=>{if(e.data.finished)n.forEach((e=>{FcnUtils.toggleInProgress(e,!1)})),_$$("tr").forEach((e=>{e.classList.add("no-schema")}));else{const t=parseInt(a/Math.max(e.data.total,1)*100),o=t>0?` ${t} %`:"";n.forEach((e=>{e.innerHTML=e.dataset.disableWith+o})),fcn_purgeAllSchemas(e.data.next_offset,e.data.total,a+e.data.processed)}})).catch((e=>{console.log(e)}))}function fcn_delete_epub(e){FcnUtils.aPost({action:"fictioneer_ajax_delete_epub",name:e,nonce:document.getElementById("fictioneer_admin_nonce").value}).then((t=>{t.success?document.querySelector(`[data-action="delete-epub"][data-name="${e}"]`).closest("tr").remove():console.log(t)})).catch((e=>{console.log(e)}))}function fcn_ogMediaUpload(e){e.preventDefault();var t=wp.media({multiple:!1,library:{type:"image"}}).open().on("select",(function(){const e=t.state().get("selection").first().toJSON();_$$$("fictioneer-seo-og-image").value=e.id,_$$$("fictioneer-seo-og-display").setAttribute("src",e.url),_$$$("fictioneer-button-seo-og-image-remove").classList.remove("hidden"),_$(".og-source").classList.add("hidden")}))}function fcn_update_seo_title_chars(){const e=_$$$("fictioneer-seo-title");_$$$("fictioneer-seo-title-chars").innerHTML=`(${e.value.length}/70)`}function fcn_remove_seo_og_image(e){e.preventDefault();const t=_$$$("fictioneer-seo-og-display").dataset.placeholder;_$$$("fictioneer-seo-og-image").value="",_$$$("fictioneer-seo-og-display").setAttribute("src",t),_$$$("fictioneer-button-seo-og-image-remove").classList.add("hidden")}function fcn_confirmIt(e){const t=e.currentTarget.dataset.dialogMessage,a=e.currentTarget.dataset.dialogConfirm;if(!t||!a)return;const n=prompt(t);n?n.toLowerCase()!=a.toLowerCase()&&e.preventDefault():e.preventDefault()}function fcn_fetchUserData(){FcnUtils.aGet({action:"fictioneer_ajax_get_user_data",fcn_fast_ajax:1}).then((e=>{if(e.success){const t=e.data;t.lastLoaded=Date.now(),FcnUtils.setUserData(t)}})).catch((e=>{localStorage.removeItem("fcnUserData"),console.error(e)}))}function fcn_imageMediaUpload(e){e.preventDefault();const t=e.currentTarget.closest('[data-target="fcn-meta-field-image"]');var a=wp.media({multiple:!1,library:{type:"image"}}).open().on("select",(()=>{const e=a.state().get("selection").first().toJSON();t.querySelector('[data-target="fcn-meta-field-image-id"]').value=e.id,t.querySelector(".fictioneer-meta-field__image-display").style.backgroundImage=`url("${e.url}")`,t.querySelector(".fictioneer-meta-field__image-upload").classList.add("hidden"),t.querySelector(".fictioneer-meta-field__image-actions").classList.remove("hidden")}))}function fcn_ebookMediaUpload(e){e.preventDefault();const t=e.currentTarget.closest('[data-target="fcn-meta-field-ebook"]');var a=wp.media({multiple:!1,library:{type:["application/pdf","text/plain","application/rtf","application/x-mobipocket-ebook","application/epub+zip"]}}).open().on("select",(()=>{const e=a.state().get("selection").first().toJSON();t.querySelector('[data-target*="id"]').value=e.id,t.querySelector('[data-target*="name"]').textContent=e.title,t.querySelector('[data-target*="size"]').textContent=e.filesizeHumanReadable,t.querySelector('[data-target*="filename"]').textContent=e.filename,t.querySelector('[data-target*="filename"]').href=e.url,t.querySelector('[data-target*="upload"]').classList.add("hidden"),t.querySelectorAll('[data-target*="replace"], [data-target*="remove"], [data-target*="display"]').forEach((e=>e.classList.remove("hidden")))}))}functio