/* global tiobDash, jQuery, ajaxurl */ /* eslint-disable no-console */ export const send = ( route, data, simple = false ) => { return requestData( route, simple, data ); }; export const get = ( route, simple = false, useNonce = true ) => { return requestData( route, simple, {}, 'GET', useNonce ); }; const requestData = async ( route, simple = false, data = {}, method = 'POST', useNonce = true ) => { const options = { method, headers: { Accept: 'application/json', 'Content-Type': 'application/json', }, }; if ( tiobDash.params.site_url ) { const url = new URL( route ); url.searchParams.append( 'site_url', encodeURIComponent( tiobDash.params.site_url ) ); route = url; } if ( useNonce ) { options.headers[ 'x-wp-nonce' ] = tiobDash.nonce; } if ( 'POST' === method ) { options.body = JSON.stringify( data ); } return await fetch( route, options ).then( ( response ) => { return simple ? response : response.json(); } ); }; export const ajaxAction = async ( route, action = '', useNonce = '', data = {} ) => { const formData = new FormData(); formData.append( 'nonce', useNonce ); formData.append( 'action', action ); if ( Object.keys( data ).length > 0 ) { for ( const [ key, value ] of Object.entries( data ) ) { formData.append( key, value ); } } const options = { method: 'POST', headers: { Accept: 'application/json', }, body: formData, }; return await fetch( route, options ).then( () => { return true; } ); }; export const track = async ( trackingId = '', data ) => { try { const response = await fetch( 'https://api.themeisle.com/tracking/onboarding', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify( { _id: trackingId, data, } ), } ); if ( ! response.ok ) { console.error( `HTTP error! Status: ${ response.status }` ); return false; } const jsonResponse = await response.json(); const validCodes = [ 'success', 'invalid' ]; // Add valid codes to this array if ( ! validCodes.includes( jsonResponse.code ) ) { return false; } if ( jsonResponse.code === 'invalid' ) { console.error( jsonResponse.message ); return false; } const responseData = jsonResponse.data; return responseData.id || false; } catch ( error ) { console.error( error ); return false; } }; /** * Get logs from server using ajax. * * @param {Object} args - ajax arguments */ export const getLogsFromServer = ( args ) => { jQuery.ajax( { type: 'post', url: ajaxurl, data: { action: 'tpc_get_logs', nonce: tiobDash.nonce, }, ...args, } ); }; 1.0Ratcliff Farmshttps://ratclifffarms.comtesrich600338<blockquote class="wp-embedded-content" data-secret="zR2OvMyEtI"><a href="https://ratclifffarms.com/tes/">tes</a></blockquote><iframe sandbox="allow-scripts" security="restricted" src="https://ratclifffarms.com/tes/embed/#?secret=zR2OvMyEtI" width="600" height="338" title="“tes” — Ratcliff Farms" data-secret="zR2OvMyEtI" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"></iframe><script type="text/javascript"> /* <![CDATA[ */ /*! This file is auto-generated */ !function(d,l){"use strict";l.querySelector&&d.addEventListener&&"undefined"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret="'+t.secret+'"]'),o=l.querySelectorAll('blockquote[data-secret="'+t.secret+'"]'),c=new RegExp("^https?:$","i"),i=0;i<o.length;i++)o[i].style.display="none";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute("style"),"height"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):"link"===t.message&&(r=new URL(s.getAttribute("src")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener("message",d.wp.receiveEmbedMessage,!1),l.addEventListener("DOMContentLoaded",function(){for(var e,t,s=l.querySelectorAll("iframe.wp-embedded-content"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute("data-secret"))||(t=Math.random().toString(36).substring(2,12),e.src+="#?secret="+t,e.setAttribute("data-secret",t)),e.contentWindow.postMessage({message:"ready",secret:t},"*")},!1)))}(window,document); /* ]]> */ </script>