declare const _romhackplaza_admin_scripts: any; document.addEventListener( "DOMContentLoaded", ( event ) => { let nb_params = 0; function add_arg( e: Event ) { nb_params += 1; let html_content = document.createElement("div"); html_content.id = "arg_" + ( nb_params - 1 ).toString(); let name_content = document.createElement( "input" ); name_content.type = "text"; name_content.name = "arg_name_" + ( nb_params - 1 ).toString(); name_content.id = "arg_name_" + ( nb_params - 1 ).toString(); name_content.setAttribute( 'required', "required" ); let value_content = document.createElement( "input" ); value_content.type = "text"; value_content.name = "arg_value_" + ( nb_params - 1 ).toString(); value_content.id = "arg_value_" + ( nb_params - 1 ).toString(); value_content.setAttribute( 'required', "required" ); html_content.appendChild( name_content ); html_content.appendChild( value_content ); html_content.appendChild( document.createElement( "hr" ) ) document.getElementById( "arguments" )?.appendChild( html_content ); } function _execute_script( e: Event ){ e.preventDefault(); // @ts-ignore let select = document.getElementById( "script_select" ).value ?? "none"; if( select == null || select == "none" || select == "" ) return; const XML: XMLHttpRequest = new XMLHttpRequest(); XML.open( 'POST', _romhackplaza_admin_scripts.execute_url ); let form_data = new FormData(); for( let i = 0; i < nb_params; i++ ){ // @ts-ignore let name = document.getElementById( 'arg_name_' + i.toString() ).value; // @ts-ignore let value = document.getElementById( 'arg_value_' + i.toString()).value; form_data.append( name, value ); } form_data.append( "script", select ); form_data.append( "_wpnonce", _romhackplaza_admin_scripts.execute_nonce ); form_data.append( "action", "load_admin_script" ); XML.onreadystatechange = function(){ if(XML.readyState === XMLHttpRequest.DONE && XML.status === 200){ document.getElementById( 'script-response')!.innerHTML = XML.responseText; } } XML.send( form_data ); } document.getElementById( 'add_args' )?.addEventListener( 'click', add_arg ); document.getElementById( 'script-loader' )?.addEventListener( 'submit', _execute_script ); })