function getCsrfToken(e,n){jQuery.ajax({url:minerva_drupal_vars.host+minerva_drupal_vars.endpoints.token,method:"GET",success:function(n){console.log("getCsrfToken"),console.log("OK");var o=n;createCookie("token",o,"session"),e(o)},error:function(e){0==e.status&&null==e.responseJSON&&(e={status:503,statusText:"Service Unavailable [token]"}),n(e)}})}function checkConnect(e,n){getCsrfToken(function(o){jQuery.ajax({url:minerva_drupal_vars.host+minerva_drupal_vars.endpoints.connect,method:"GET",headers:{"Content-Type":"application/json","X-CSRF-Token":o},xhrFields:{withCredentials:!0},success:function(s){if(console.log("checkConnect"),0==s){var t=!1;console.log("not logged-in"),Cookies.remove("instance"),e(t,o)}else if(1==s){t=!0;console.log("1"),n(minerva_drupal_vars.wrong_response)}else{t=!0;var r={};r.userId=parseInt(s.current_user.uid),r.userName=s.current_user.name,r.token=s.csrf_token,r.logoutToken=s.logout_token,console.log("logged-in"),createCookie("instance",JSON.stringify(r),"session"),e(t,s.csrf_token)}},error:function(e){0==e.status&&null==e.responseJSON&&(e={status:503,statusText:"Service Unavailable [connect]"}),n(e)}})},function(e){n(e)})}function login(e,n,o){checkConnect(function(s,t){s?n():(Cookies.remove("instance"),jQuery.ajax({url:minerva_drupal_vars.host+minerva_drupal_vars.endpoints.login,method:"POST",data:JSON.stringify(e),headers:{"Content-Type":"application/json","X-CSRF-Token":t},xhrFields:{withCredentials:!0},success:function(o){console.log("login"),console.log("OK");var s={};s.userId=parseInt(o.current_user.uid),s.userName=o.current_user.name,s.token=o.csrf_token,s.logoutToken=o.logout_token,s.basicAuth=formatBasicAuth(e),createCookie("instance",JSON.stringify(s),"session"),n(o.current_user.uid)},error:function(e){0==e.status&&null==e.responseJSON&&(e={status:503,statusText:"Service Unavailable [login]"}),o(e)}}))},function(e){o(e)})}function logout(e,n){checkConnect(function(o,s){if(o)if(is_defined(Cookies.get("instance"))){var t=JSON.parse(Cookies.get("instance"));jQuery.ajax({url:minerva_drupal_vars.host+minerva_drupal_vars.endpoints.logout+"&token="+t.logoutToken,method:"POST",headers:{"Content-Type":"application/json","X-CSRF-Token":s},xhrFields:{withCredentials:!0},success:function(){console.log("logout"),console.log("OK"),Cookies.remove("instance"),e()},error:function(e){0==e.status&&null==e.responseJSON&&(e={status:503,statusText:"Service Unavailable [logout]"}),n(e)}})}else n({status:"none",responseText:minerva_drupal_vars.wrong_logout});else console.log("logout"),console.log("not logged-in"),Cookies.remove("instance"),e()},function(e){n(e)})}function userInfo(e,n,o){getCsrfToken(function(s){jQuery.ajax({url:minerva_drupal_vars.host+minerva_drupal_vars.endpoints.user_info.replace("{uid}",e),method:"GET",headers:{"Content-Type":"application/json","X-CSRF-Token":s},xhrFields:{withCredentials:!0},success:function(e){console.log("userInfo"),console.log("OK"),n(e)},error:function(e){0==e.status&&null==e.responseJSON&&(e={status:503,statusText:"Service Unavailable [user_info]"}),o(e)}})},function(e){o(e)})}function userId(e,n){getCsrfToken(function(o){jQuery.ajax({url:minerva_drupal_vars.host+minerva_drupal_vars.endpoints.user_id,method:"POST",headers:{"Content-Type":"application/json","X-CSRF-Token":o},xhrFields:{withCredentials:!0},success:function(n){var o=n.match(/user\/[0-9]*/)[0],s=parseInt(o.split("/")[1]);console.log("userId"),console.log("OK"),e(s)},error:function(e){0==e.status&&null==e.responseJSON&&(e={status:503,statusText:"Service Unavailable [user_id]"}),n(e)}})},function(e){n(e)})}function createNode(e,n,o,s){jQuery.ajax({url:minerva_drupal_vars.host+minerva_drupal_vars.endpoints.save,method:"POST",data:JSON.stringify(e),headers:{"Content-Type":"application/json","X-CSRF-Token":n},xhrFields:{withCredentials:!0},success:function(e){console.log("createNode"),console.log("OK"),o(e)},error:function(e){0==e.status&&null==e.responseJSON&&(e={status:503,statusText:"Service Unavailable [save]"}),s(e)}})}jQuery(document).ready(function(e){});