// default mode = "quick" static Pair transpileOnServer(S snippetID) { ret transpileOnServer(snippetID, "quick"); } static Pair transpileOnServer(long snippetID) { ret transpileOnServer(fsI(snippetID)); } static Pair transpileOnServer(long snippetID, S mode) { ret transpileOnServer(fsI(snippetID), mode); } // mode = "quick", "medium", "fresh" // result = pair(ok, answer) static Pair transpileOnServer(S snippetID, S mode) ctex { print("Transpiling " + formatSnippetID(snippetID)); S url = tb_mainServer() + "/tb/transpile.php"; S modeStr = "&quick=1"; if (eq(mode, "medium")) modeStr += "&medium=1"; if (eq(mode, "fresh")) modeStr += "&fresh=1"; S query = "id=" + parseSnippetID(snippetID) + modeStr + standardCredentials(); S result = loadPage(url + "?" + query); print(result); Matcher m = regexp("URL=/(dexcompile\\.php.*?)'", result); if (!m.find()) ret pair(false, result); url = tb_mainServer() + "/" + m.group(1) + standardCredentials(); result = loadPage(url); bool ok = result.contains("SUCCESS"); ret pair(ok, result); }