toolbar.js (3659B)
1 ( function( window, wp ){ 2 3 var link_id = 'edit_seedprod_custom_link'; 4 5 var url_string = window.location; 6 var url = new URL(url_string); 7 var post_id = url.searchParams.get("post"); 8 9 var active_seedprod_btn = jQuery(".active-seed-prod-buttons").html(); 10 jQuery(".active-seed-prod-buttons").remove(); 11 12 var link_html = active_seedprod_btn; 13 14 var post_ID = jQuery("#post_ID").val(); 15 var seedprod_template_type = jQuery("._seedprod_template_type").val(); 16 var seedprod_label = jQuery("._seedprod_label").val(); 17 var seedprod_template_edit_url = jQuery("._seedprod_template_edit_url").val(); 18 var seedprod_true = jQuery("._seedprod_true").val(); 19 20 var seedprod_template_edit_url_ = ''; 21 var admin_url = localizedVars.admin_url; 22 var seedprod_plugin_url = localizedVars.plugin_url; 23 24 25 26 27 28 if(seedprod_template_type=="template"){ 29 seedprod_template_edit_url_ = `${admin_url}?page=${seedprod_label}_${seedprod_template_type}&id=${post_ID}#/template/${post_ID}`; 30 }else{ 31 seedprod_template_edit_url_ = `${admin_url}?page=${seedprod_label}_${seedprod_template_type}&id=${post_ID}#/setup/${post_ID}`; 32 } 33 34 //${seedprod_template_edit_url_} 35 36 var seedprod_html = ` 37 <div class="${seedprod_true}"> 38 <span class="seedprod-off"> 39 <a href="#edit" id="edit_seedprod_custom_link" class="edit_seedprod_custom_link button button-primary button-large"> 40 <img src="${seedprod_plugin_url}public/svg/admin-bar-icon.svg" style="margin-right:7px; margin-top:5px"> Edit with SeedProd 41 </a> 42 </span> 43 <span class="seedprod-on"> 44 <a href="#back" class="back_to_wp_editor button">Back to WordPress Editor</a> 45 </span> 46 </div>`; 47 48 // check if gutenberg's editor root element is present. 49 var editorEl = document.getElementById( 'editor' ); 50 if( !editorEl ){ // do nothing if there's no gutenberg root element on page. 51 return; 52 } 53 54 var unsubscribe = wp.data.subscribe( function () { 55 setTimeout( function () { 56 if ( !document.getElementById( link_id ) ) { 57 var toolbalEl = editorEl.querySelector( '.edit-post-header-toolbar__left' ); 58 if( toolbalEl instanceof HTMLElement ){ 59 toolbalEl.insertAdjacentHTML( 'beforeend', seedprod_html ); 60 } 61 } 62 }, 1 ) 63 } ); 64 // unsubscribe is a function - it's not used right now 65 // but in case you'll need to stop this link from being reappeared at any point you can just call unsubscribe(); 66 67 68 /* 69 jQuery(document).ready(function(){ 70 jQuery(document).on("click", '.back_to_wp_editor', function(event) { 71 72 wp.data.dispatch( 'core/block-editor' ).resetBlocks([]); 73 jQuery('.block-editor-block-list__layout').show(); 74 jQuery(".managed_by_seedprod").hide(); 75 76 var ajax_url = localizedVars.ajax_url; 77 var post_id = jQuery("#post_ID").val(); 78 79 var formData = new FormData(); 80 formData.append('action', 'seedprod_pro_remove_post'); 81 formData.append('post_id', post_id); 82 83 jQuery.ajax({ // JQuery Ajax 84 type: 'POST', 85 url: ajax_url, 86 data: formData, 87 cache: false, 88 processData : false, 89 contentType: false, 90 success: function(data) { 91 console.log("removed seedprod settings"); 92 }, 93 }); 94 95 96 97 }); 98 }); 99 */ 100 101 102 103 } )( window, wp )