Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- javascript:
- var _a = {
- "en" : {
- "Subject" : "Subject",
- "Attacker" : "Attacker",
- "Origin" : "Origin",
- "Defender" : "Defender",
- "Destination" : "Destination"
- }
- };
- var worldLetters = window.location.host.split(/\W+/)[0].substring(0, 2);
- var lang = (worldLetters && _a[worldLetters]) || "en";
- function _(thing){
- return (_a[lang] && _a[lang][thing]) || (_a["en"] && _a["en"][thing]) || thing;
- }
- function getQuery(name) {
- name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
- var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
- results = regex.exec(location.search);
- return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
- }
- function getQueryFromHaystack(haystack, name){
- name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
- var regex = new RegExp("[\\?&]" + name + "=([^&#]*)"),
- results = regex.exec(haystack);
- return results == null ? "" : decodeURIComponent(results[1].replace(/\+/g, " "));
- }
- function onReport(doc, href){
- var response = {};
- //targetPlayer, targetCoords, targetId, sendPlayer, sendCoords, sendId
- var repTable = $("tbody:has(> tr > th:contains('" + _("Subject") + "'))", doc);
- response.sendPlayer = $("th:not(:contains('" + _("Attacker") + "'))", $("tr:has(> th:contains('" + _("Attacker") + "'))", repTable)).text().trim();
- response.sendId = $("td:not(:contains('" + _("Origin") + "')) span", $("tbody tr:has(td:contains('" + _("Origin") + "'))", repTable)).attr("data-id");
- response.sendCoords = $("td:not(:contains('" + _("Origin") + "')) span", $("tbody tr:has(td:contains('" + _("Origin") + "'))", repTable)).text().split("(")[1].split(")")[0];
- response.targetPlayer = $("th:not(:contains('" + _("Defender") + "'))", $("tr:has(> th:contains('" + _("Defender") + "'))", repTable)).text().trim();
- response.targetId = $("td:not(:contains('" + _("Destination") + "')) span", $("tbody tr:has(td:contains('" + _("Destination") + "'))", repTable)).attr("data-id");
- response.targetCoords = $("td:not(:contains('" + _("Destination") + "')) span", $("tbody tr:has(td:contains('" + _("Destination") + "'))", repTable)).text().split("(")[1].split(")")[0];
- response.reportId = getQueryFromHaystack(href, "view");
- return response;
- }
- function def(doc, href, nafaTemplates){
- if (getQuery("screen") === "report"){
- if (getQuery("view") === ""){
- var output = ($("#NAFASave", doc).length > 0) ? $("#NAFASave", doc) : $("<tr><td colspan='3'><textarea style='width:99%;height:100px' /></td></tr>");
- output.get(0).id = "NAFASave";
- var toOut = "[table]\n"
- toOut += "[**]Player[||]Coords[||]";
- for (var i=0; i<nafaTemplates.length; i++){
- toOut += i + "[||]";
- }
- toOut += "Same[||]RP[/**]\n";
- $("#report_list tbody tr:has(img) .quickedit-content", doc).each(function(index){
- var loc = $("a", this).attr("href");
- if (loc.substring(0, 1) === "/") loc = href.replace(/\/[^/]*$/, "") + loc;
- var a = jQuery.ajax(loc, {type: "GET", dataType:"html", async:false});
- var b = a.responseText;
- var c = $("<div></div>");
- c.get(0).id = "NAFAReportThing";
- c.html(b);
- var response = onReport(c, loc);
- if (response){
- toOut += "[*][player]" + response.targetPlayer + "[/player][|] " + response.targetCoords + " [|]";
- for (var i=0; i<nafaTemplates.length; i++){
- toOut += "[url=" + loc.replace(/\?.*/, "") + "?village=" + response.sendId + "&target=" + response.targetId + "&screen=place&nafatemplate=" + i + "]Send[/url][|]";
- }
- toOut += "[url=" + loc.replace(/\?.*/, "") + "?village=" + response.sendId + "&target=" + response.targetId + "&screen=place&try=confirm&type=same&report_id=" + response.reportId + "]Send[/url][|]";
- toOut += "[url=" + loc.replace(/\?.*/, "") + "?village=" + response.sendId + "&target=" + response.targetId + "&screen=place]Send[/url]\n";
- }
- });
- toOut += "[/table]";
- $("textarea", output).val(toOut);
- $("#report_list tr:contains('Subject')", doc).before(output);
- } else {
- var response = onReport(doc, href);
- if (response){
- var output = ($("#NAFASave", doc).length > 0) ? $("#NAFASave", doc) : $("<tr><td colspan='2'><textarea style='width:99%;height:100px' /></td></tr>");
- output.get(0).id = "NAFASave";
- loc = window.location.href;
- var toOut = "[table]\n";
- toOut += "[**]Player[||]Coords[||]";
- for (var i=0; i<nafaTemplates.length; i++){
- toOut += i + "[||]";
- }
- toOut += "Same[||]RP[/**]\n";
- toOut += "[*][player]" + response.targetPlayer + "[/player][|] " + response.targetCoords + " [|]";
- for (var i=0; i<nafaTemplates.length; i++){
- toOut += "[url=" + loc.replace(/\?.*/, "") + "?village=" + response.sendId + "&target=" + response.targetId + "&screen=place&nafatemplate=" + i + "]Send[/url][|]";
- }
- toOut += "[url=" + loc.replace(/\?.*/, "") + "?village=" + response.sendId + "&target=" + response.targetId + "&screen=place&try=confirm&type=same&report_id=" + response.reportId + "]Send[/url][|]";
- toOut += "[url=" + loc.replace(/\?.*/, "") + "?village=" + response.sendId + "&target=" + response.targetId + "&screen=place]Send[/url]\n";
- toOut += "[/table]";
- $("textarea", output).val(toOut);
- $("table tr:has(> td:contains('" + _("Battle time") + "'))", doc).after(output);
- } else {
- var output = ($("#NAFASave", doc).length > 0) ? $("#NAFASave", doc) : $("<tr><td colspan='2'><span></span></td></tr>");
- $("span", output).css("color", "F00").text("An error has occurred! This report cannot be converted to a table.");
- $("table tr:has(> td:contains('" + _("Battle time") + "'))", doc).after(output);
- }
- }
- } else if (getQuery("screen") == "place"){
- var nafaTemplate = 0;
- if (getQuery("nafatemplate") !== "") nafaTemplate = parseInt(getQuery("nafatemplate"));
- nafaTemplate = nafaTemplates[nafaTemplate] || nafaTemplates;
- if (nafaTemplate["scout"]) nafaTemplate["spy"] = nafaTemplate["scout"];
- if (nafaTemplate["lc"]) nafaTemplate["light"] = nafaTemplate["lc"];
- nafaTemplate["spy"] && $("#unit_input_spy").val(nafaTemplate["spy"]);
- nafaTemplate["spear"] && $("#unit_input_spear").val(nafaTemplate["spear"]);
- nafaTemplate["sword"] && $("#unit_input_sword").val(nafaTemplate["sword"]);
- nafaTemplate["axe"] && $("#unit_input_axe").val(nafaTemplate["axe"]);
- nafaTemplate["archer"] && $("#unit_input_archer").val(nafaTemplate["archer"]);
- nafaTemplate["light"] && $("#unit_input_light").val(nafaTemplate["light"]);
- nafaTemplate["ma"] && $("#unit_input_marcher").val(nafaTemplate["ma"]);
- nafaTemplate["heavy"] && $("#unit_input_heavy").val(nafaTemplate["heavy"]);
- nafaTemplate["ram"] && $("#unit_input_ram").val(nafaTemplate["ram"]);
- nafaTemplate["catapult"] && $("#unit_input_catapult").val(nafaTemplate["catapult"]);
- !nafaTemplate["spy"] && $("#unit_input_spy").val("");
- !nafaTemplate["spear"] && $("#unit_input_spear").val("");
- !nafaTemplate["sword"] && $("#unit_input_sword").val("");
- !nafaTemplate["axe"] && $("#unit_input_axe").val("");
- !nafaTemplate["archer"] && $("#unit_input_archer").val("");
- !nafaTemplate["light"] && $("#unit_input_light").val("");
- !nafaTemplate["ma"] && $("#unit_input_marcher").val("");
- !nafaTemplate["heavy"] && $("#unit_input_heavy").val("");
- !nafaTemplate["ram"] && $("#unit_input_ram").val("");
- !nafaTemplate["catapult"] && $("#unit_input_catapult").val("");
- $('#unit_input_spear').focus();
- }
- }
- /*nafaTemplates = [{spy:1, light:5}];
- def(document, window.location.href, nafaTemplates);*/
Advertisement
Add Comment
Please, Sign In to add comment