!function(){var t=t=>parseInt(new URLSearchParams(t).get("id"));class e{constructor(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.dom=(new DOMParser).parseFromString(t,"text/html"),this.trs=this.dom.querySelectorAll("#in_a_day_ranking_table tbody tr"),this.filters=e}isValidRow(t){return!!t&&((!this.filters.playerID||t.playerID===this.filters.playerID)&&!(this.filters.tribes&&Array.isArray(this.filters.tribes)&&!this.filters.tribes.some((e=>e===t.tribe))))}parseRow(e){if(!e||!e instanceof HTMLTableRowElement)return;let n={};return n.rank=parseInt(e.children[0].innerText.trim()),n.name=e.children[1].innerText.trim(),n.playerID=t(e.children[1].querySelector("a").getAttribute("href")),n.tribe=e.children[2].innerText.trim(),n.tribeID=0,n.tribe&&(n.tribeID=t(e.children[2].querySelector("a").getAttribute("href"))),n.score=parseInt(e.children[3].innerText.trim().replace(/\./g,"")),n.date=e.children[4].innerText.trim(),n}parse(){const t=[];for(let e=1;e0&&void 0!==arguments[0]?arguments[0]:{};return fetch(n,{method:"POST",body:JSON.stringify({query:t,variables:e}),headers:{"Content-Type":"application/json"}}).then((t=>t.json())).then((t=>{let{data:e,errors:n}=t;if(n&&Array.isArray(n)&&n.length>0)throw new Error(n[0].message);return new Promise((t=>t(e)))}))};const r={pl_PL:{date:"Data",newTribe:"Nowe plemię",oldTribe:"Poprzednie plemię",joinedAt:"Dołączył",dailyGrowth:"Dzienny przyrost",bestRank:"Najlepszy ranking",mostPoints:"Najwięcej punktów",mostVillages:"Najwięcej wiosek",oldName:"Poprzedni nick",newName:"Nowy nick",playerServers:"Serwery gracza",inADayBestScores:"Dzienne rankingi",unitsDefeatedWhileAttacking:"Jako atakujący",unitsDefeatedWhileDefending:"Jako obrońca",unitsDefeatedWhileSupporting:"Jako wspierający",resourcesPlundered:"Sfarmione surowce",villagesPlundered:"Splądrowane wioski",resourcesGathered:"Zebrane surowce",villagesConquered:"Podbite wioski",exportedVillages:"Wyeksportowane wioski",tribeChanges:"Zmiany plemion",action:{linkToTWHelp:"Akta gracza (TWHelp)",showTribeChanges:"Pokaż zmiany plemion",showEnnoblements:"Pokaż przejęcia",exportVillages:"Wyeksportuj wioski",showHistory:"Pokaż historię"}},en_DK:{date:"Date",newTribe:"New tribe",oldTribe:"Old tribe",joinedAt:"Joined at",dailyGrowth:"Daily growth",bestRank:"Best rank",mostPoints:"Most points",mostVillages:"Most villages",oldName:"Old name",newName:"New name",playerServers:"Player's servers",inADayBestScores:"'In a day' best scores",unitsDefeatedWhileAttacking:"Units defeated while attacking",unitsDefeatedWhileDefending:"Units defeated while defending",unitsDefeatedWhileSupporting:"Units defeated while supporting",resourcesPlundered:"Resources plundered",villagesPlundered:"Villages plundered",resourcesGathered:"Resources gathered",villagesConquered:"Villages conquered",exportedVillages:"Exported villages",tribeChanges:"Tribe changes",action:{linkToTWHelp:"User file (TWHelp)",showTribeChanges:"Show tribe changes",showEnnoblements:"Show ennoblements",exportVillages:"Export villages",showHistory:"Show history"}},de_DE:{date:"Datum",newTribe:"Neuer Stamm",oldTribe:"Alter Stamm",joinedAt:"Beigetreten am",dailyGrowth:"Tägl. Wachstum",bestRank:"Bester Rang",mostPoints:"Meiste Punkte",mostVillages:"Meiste Dörfer",oldName:"Alter Name",newName:"Neuer Name",playerServers:"Spieler Server",inADayBestScores:"'An einem Tag' Bestwerte",unitsDefeatedWhileAttacking:"Besiegte Gegner als Angreifer",unitsDefeatedWhileDefending:"Besiegte Gegner als Verteidiger",unitsDefeatedWhileSupporting:"Besiegte Gegner als Unterstützer",resourcesPlundered:"Geplünderte Rohstoffe",villagesPlundered:"Geplünderte Dörfer",resourcesGathered:"Gesammelte Rohstoffe",villagesConquered:"Eroberte Dörfer",exportedVillages:"Exportierte Dörfer",tribeChanges:"Stammeswechsel",action:{linkToTWHelp:"Spielerakte (TWHelp)",showTribeChanges:"Zeige Stammeswechsel",showEnnoblements:"Zeige Adelungen",exportVillages:"Dörfer exportieren",showHistory:"Zeige Verlauf"}}};const o={pl_PL:{title:"Dzisiejsze zmiany w statystykach",points:"Punkty",rank:"Ranking",villages:"Liczba wiosek",members:"Liczba członków",oda:"Pokonani przeciwnicy jako agresor",odaRank:"RA",odd:"Pokonani przeciwnicy jako obrońca",oddRank:"RO",ods:"Pokonani przeciwnicy jako wspierający",odsRank:"RW",od:"Pokonani przeciwnicy",odRank:"Pokonani przeciwnicy razem ranking"},en_DK:{title:"Today's stat changes",points:"Points",rank:"Rank",villages:"Villages",members:"Members",oda:"ODA",odaRank:"ODA Rank",odd:"ODD",oddRank:"ODD Rank",ods:"ODS",odsRank:"ODS Rank",od:"OD",odRank:"OD Rank"},de_DE:{title:"Heutige Werte Änderungen",points:"Punkte",rank:"Rang",villages:"Dörfer",members:"Mitglieder",oda:"BGA",odaRank:"BGA Rang",odd:"BGD",oddRank:"BGD Rang",ods:"BGS",odsRank:"BGS Rang",od:"BP",odRank:"BP Rang"}};const i=o[window.game_data.locale]||o.en_DK,l=t=>t>0?"color: #000; background-color: #0f0":t<0?"color: #000; background-color: #f00":"color: #000; background-color: #808080";const c=".popup_box",s=function(){let{html:t,id:e,title:n}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};Dialog.show(e,"

".concat(n,"

")+t);const a=document.querySelector(c);a&&(a.style.width="auto",a.style.maxWidth="1000px")},d={pl_PL:{date:"Data",newOwner:"Nowy właściciel",oldOwner:"Poprzedni właściciel",village:"Wioska",title:"Przejęcia"},en_DK:{date:"Date",newOwner:"New owner",oldOwner:"Old owner",village:"Village",title:"Ennoblements"},de_DE:{date:"Datum",newOwner:"Neuer Besitzer",oldOwner:"Alter Besitzer",village:"Dorf",title:"Adelungen"}};const g="data-page",h=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;if(!t instanceof HTMLElement)throw new Error("Expected HTMLElement as the first argument");if(e=parseInt(e),"number"!=typeof e||isNaN(e))throw new Error("Expected number or string as the second argument");t.setAttribute(g,e+"")},p=t=>!t instanceof HTMLElement?0:parseInt(t.getAttribute(g)),m=(t,e)=>{if("number"!=typeof t)throw new Error("Expected number as the first argument");if("number"!=typeof e)throw new Error("Expected number as the second argument");return t>0?Math.ceil(t/e):1},y=function(){let{total:t,limit:e,marginRight:n=3,currentPage:a=0}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};const r=m(t,e),o=[];for(let t=1;t<=r;t++)t===a?o.push('>').concat(t,"<")):o.push('').concat(t,""));return o},u=(t,e)=>new Date(t).toLocaleDateString(void 0,e||{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}),b=t=>window.location.origin+TribalWars.buildURL("",{screen:"info_ally",id:t}),f=t=>window.location.origin+TribalWars.buildURL("",{screen:"info_village",id:t}),w=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:500;const a="K"+String(n)[0]+String(e)[0];return"".concat(t," (").concat(e,"|").concat(n,") ").concat(a)},k="ennoblementsPagination",D=d[window.game_data.locale]||d.en_DK,v=(t,e)=>{return t?'').concat(t.name," (").concat(e?'').concat(e.tag,""):"-",")"):"-";var n};function S(t){if(null===t||!0===t||!1===t)return NaN;var e=Number(t);return isNaN(e)?e:e<0?Math.ceil(e):Math.floor(e)}function A(t,e){if(e.length1?"s":"")+" required, but only "+e.length+" present")}function P(t){A(1,arguments);var e=Object.prototype.toString.call(t);return t instanceof Date||"object"==typeof t&&"[object Date]"===e?new Date(t.getTime()):"number"==typeof t||"[object Number]"===e?new Date(t):("string"!=typeof t&&"[object String]"!==e||"undefined"==typeof console||(console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule"),console.warn((new Error).stack)),new Date(NaN))}function T(t,e){A(2,arguments);var n=P(t),a=S(e);return isNaN(a)?new Date(NaN):a?(n.setDate(n.getDate()+a),n):n}function E(t,e){A(2,arguments);var n=S(e);return T(t,-n)}const L={pl_PL:{title:"Historia",date:"Data",tribe:"Plemię",points:"Punkty",rank:"Ranking",villages:"Liczba wiosek",members:"Liczba członków",oda:"Pokonani przeciwnicy jako agresor",odd:"Pokonani przeciwnicy jako obrońca",ods:"Pokonani przeciwnicy jako wspierający",od:"Pokonani przeciwnicy"},en_DK:{title:"History",date:"Date",tribe:"Tribe",points:"Points",villages:"Villages",members:"Members",oda:"ODA",odd:"ODD",ods:"ODS",od:"OD"},de_DE:{title:"Verlauf",date:"Datum",tribe:"Stamm",points:"Punkte",villages:"Dörfer",members:"Mitglieder",oda:"BGA",odd:"BGV",ods:"BGS",od:"BP"}};const R="historyPagination",N=L[window.game_data.locale]||L.en_DK,O=t=>t>0?"+"+t:t;var _=t=>{const e=t.split(/[_-]/);let n="";for(let t=1;t0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"https://".concat(t,".").concat(x,"/server/").concat(e)},$=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"";return"".concat(j(t,e),"/").concat(a,"/").concat(n)},M=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;return $(t,e,n,"player")},C=(t,e)=>{localStorage.setItem(t,JSON.stringify(e))},H=["name"];function q(t,e){if(null==t)return{};var n,a,r=function(t,e){if(null==t)return{};var n,a,r={},o=Object.keys(t);for(a=0;a=0||(r[n]=t[n]);return r}(t,e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(t);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(t,n)&&(r[n]=t[n])}return r}const z=window.location.host.split(".")[0],I=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return t.substr(0,2)}(z);let V=t(window.location.search);const W=parseInt(game_data.player.id);!isNaN(V)&&V||(V=W);const B="kichiyaki_extended_player_profile"+V,G="tribeChangesPagination",F=document.querySelector("#player_info > tbody"),U=V===W?F:document.querySelector("#content_value > table > tbody > tr > td:nth-child(1) > table:nth-child(2) > tbody"),K=document.querySelector(V===W?"#content_value > table:nth-child(7) > tbody > tr > td:nth-child(2)":"#content_value > table > tbody > tr > td:nth-child(2)"),J=r[window.game_data.locale]||r.en_DK,Z=()=>function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const n=localStorage.getItem(t);let a=e;return n&&(a=JSON.parse(n)),a}(B),Q=async function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{name:a}=n,r=q(n,H);try{const n=await fetch(TribalWars.buildURL("",{screen:"ranking",mode:"in_a_day",type:t,name:a||""})),o=await n.text();if(!o)throw new Error;const i=new e(o,r).parse();if(0===i.length)throw new Error;return i[0]}catch(t){return{rank:0,playerID:0,score:0,tribeID:0,tribe:"",date:new Date}}},X=async()=>{const t=await a({query:"\n query player($server: String!, $id: Int!, $limit: Int, $sort: [String!], $filter: DailyPlayerStatsFilter) {\n player(server: $server, id: $id) {\n id\n name\n bestRank\n bestRankAt\n mostPoints\n mostPointsAt\n mostVillages\n mostVillagesAt\n servers\n joinedAt\n nameChanges {\n oldName\n newName\n changeDate\n }\n dailyGrowth\n }\n dailyPlayerStats(server: $server, limit: $limit, sort: $sort, filter: $filter) {\n items {\n rank\n rankAtt\n rankDef\n rankSup\n rankTotal\n points\n scoreAtt\n scoreAtt\n scoreDef\n scoreSup\n scoreTotal\n villages\n }\n }\n }\n",variables:{server:z,id:V,limit:1,sort:["createDate DESC"],filter:{playerID:[V]}}});if(t.player){const e={},n={name:t.player.name,playerID:t.player.id};for(let t of["kill_att","kill_def","kill_sup","loot_res","loot_vil","scavenge","conquer"])e[_(t.replace("kill_",""))]=await Q(t,n);t.player.inADay=e}return function(){C(B,arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}(t),t},Y=t=>{let{player:e,dailyPlayerStats:n}=t;[{title:J.joinedAt+":",data:u(e.joinedAt),id:"joined_at"},{title:J.dailyGrowth+":",data:e.dailyGrowth.toLocaleString(),id:"dg"},{title:J.bestRank+":",data:e.bestRank+" "+"(".concat(u(e.bestRankAt),")"),id:"best_rank"},{title:J.mostPoints+":",data:e.mostPoints.toLocaleString()+" "+"(".concat(u(e.mostPointsAt),")"),id:"most_points"},{title:J.mostVillages+":",data:e.mostVillages+" "+"(".concat(u(e.mostVillagesAt),")"),id:"most_villages"}].forEach((t=>{(t=>{let{title:e,data:n,id:a}=t,r=document.querySelector("#"+a);r||(r=document.createElement("tr"),r.id=a,r.appendChild(document.createElement("td")),r.appendChild(document.createElement("td")),F.append(r)),r.children[0].innerHTML=e,r.children[1].innerHTML=n})(t)})),(t=>{let e=document.querySelector("#inADayRanks");e||(e=document.createElement("div"),e.id="inADayRanks",e.width="100%",K.prepend(e)),e.innerHTML='\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n '.concat(J.inADayBestScores,"\n
\n ").concat(J.unitsDefeatedWhileAttacking,"\n \n ").concat(t.inADay.att.score.toLocaleString()," (").concat(t.inADay.att.rank,".)\n
\n ").concat(J.unitsDefeatedWhileDefending,"\n \n ").concat(t.inADay.def.score.toLocaleString()," (").concat(t.inADay.def.rank,".)\n
\n ").concat(J.unitsDefeatedWhileSupporting,"\n \n ").concat(t.inADay.sup.score.toLocaleString()," (").concat(t.inADay.sup.rank,".)\n
\n ").concat(J.resourcesPlundered,"\n \n ").concat(t.inADay.lootRes.score.toLocaleString()," (").concat(t.inADay.lootRes.rank,".)\n
\n ").concat(J.villagesPlundered,"\n \n ").concat(t.inADay.lootVil.score.toLocaleString()," (").concat(t.inADay.lootVil.rank,".)\n
\n ").concat(J.resourcesGathered,"\n \n ").concat(t.inADay.scavenge.score.toLocaleString()," (").concat(t.inADay.scavenge.rank,".)\n
\n ").concat(J.villagesConquered,"\n \n ").concat(t.inADay.conquer.score.toLocaleString()," (").concat(t.inADay.conquer.rank,".)\n
\n ")})(e),n&&n.items.length>0&&((t,e)=>{let n=t.querySelector("#todaysStats");n||(n=document.createElement("div"),n.id="todaysStats",n.width="100%",t.prepend(n));const a=!(null==e.rankSup);n.innerHTML='\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ").concat(a?"":"\n \n \n "),"\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n ").concat(a?"\n \n \n \n \n \n \n "):"","\n \n \n \n \n \n \n \n \n \n
\n '.concat(i.title,"\n
\n ").concat(i.points,':\n \n ').concat(Math.abs(e.points).toLocaleString(),"\n
\n ").concat(i.rank,':\n \n ').concat(Math.abs(e.rank),"\n
\n ").concat(i.villages,':\n \n ').concat(Math.abs(e.villages).toLocaleString(),"\n
\n ".concat(i.members,':\n \n ').concat(Math.abs(e.members),"\n
\n ").concat(i.oda,':\n \n ').concat(Math.abs(e.scoreAtt).toLocaleString(),"\n
\n ").concat(i.odaRank,':\n \n ').concat(Math.abs(e.rankAtt),"\n
\n ").concat(i.odd,':\n \n ').concat(Math.abs(e.scoreDef).toLocaleString(),"\n
\n ").concat(i.oddRank,':\n \n ').concat(Math.abs(e.rankDef),"\n
\n ".concat(i.ods,':\n \n ').concat(Math.abs(e.scoreSup).toLocaleString(),"\n
\n ").concat(i.odsRank,':\n \n ').concat(Math.abs(e.rankSup),"\n
\n ").concat(i.od,':\n \n ').concat(Math.abs(e.scoreTotal).toLocaleString(),"\n
\n ").concat(i.odRank,':\n \n ').concat(Math.abs(e.rankTotal),"\n
\n ")})(K,n.items[0]),e.nameChanges.length>0&&(t=>{let e=document.querySelector("#playerOtherNames");e||(e=document.createElement("div"),e.id="playerOtherNames",e.width="100%",K.prepend(e)),e.innerHTML='\n \n \n \n \n \n \n \n ").concat(t.nameChanges.map((t=>"\n \n \n \n \n \n "))).join(""),"\n \n
\n '.concat(J.oldName,"\n \n ").concat(J.newName,"\n \n ").concat(J.date,"\n
\n ".concat(t.oldName,"\n \n ").concat(t.newName,"\n \n ").concat(u(t.changeDate,{year:"numeric",month:"2-digit",day:"2-digit"}),"\n
\n ")})(e),e.servers.length>0&&(t=>{let e=document.querySelector("#playerServers");e||(e=document.createElement("table"),e.id="playerServers",e.classList.add("vis"),e.width="100%",e.innerHTML="\n \n \n \n ".concat(J.playerServers,"\n \n \n \n \n \n \n \n "),K.prepend(e)),e.querySelector("td").innerHTML=t.servers.sort().map((e=>'').concat(e,""))).join("")})(e)},tt=async t=>{t.preventDefault();const e=p(t.target);if(!isNaN(e)){((t,e,n)=>{const a=y({total:n.total,limit:15,currentPage:e}),r='\n
\n ').concat(a.join(""),'\n
\n \n \n \n \n \n \n \n ").concat(n.items.map((t=>{let e=""+"");return t.newTribe?e+='"):e+="",t.oldTribe?e+='"):e+="",e+""})).join(""),"\n \n
\n ').concat(J.date,"\n \n ").concat(J.newTribe,"\n \n ").concat(J.oldTribe,"\n
".concat(u(t.createdAt),"').concat(t.newTribe.tag,"-').concat(t.oldTribe.tag,"-
\n ");s({e:t,title:J.tribeChanges,id:"tribeChanges",html:r}),document.querySelectorAll("#tribeChangesPagination a").forEach((t=>{t.addEventListener("click",tt)}))})(t,e,(await a({query:"\n query tribeChanges($server: String!, $limit: Int, $offset: Int, $sort: [String!], $filter: TribeChangeFilter!) {\n tribeChanges(server: $server, limit: $limit, offset: $offset, sort: $sort, filter: $filter) {\n total\n items {\n oldTribe {\n id\n tag\n }\n newTribe {\n id\n tag\n }\n createdAt\n }\n }\n }\n",variables:{filter:{playerID:[V]},sort:["createdAt DESC"],offset:15*(e-1),limit:15,server:z}})).tribeChanges)}},et=async t=>{t.preventDefault();const e=p(t.target);if(!isNaN(e))try{const n={playerID:[V]},{playerHistory:r,dailyPlayerStats:o}=await a({query:"\nquery playerHistoryAndPlayerDailyStats($server: String!,\n $playerHistoryFilter: PlayerHistoryFilter!,\n $dailyPlayerStatsFilter: DailyPlayerStatsFilter!,\n $limit: Int,\n $offset: Int,\n $sort: [String!]) {\n playerHistory(server: $server, limit: $limit, offset: $offset, sort: $sort, filter: $playerHistoryFilter) {\n total\n items {\n totalVillages\n points\n rank\n scoreAtt\n rankAtt\n scoreDef\n rankDef\n scoreSup\n rankSup\n scoreTotal\n rankTotal\n tribe {\n id\n tag\n }\n createDate\n }\n }\n dailyPlayerStats(server: $server, limit: $limit, offset: $offset, sort: $sort, filter: $dailyPlayerStatsFilter) {\n items {\n points\n scoreAtt\n scoreAtt\n scoreDef\n scoreSup\n scoreTotal\n villages\n createDate\n }\n }\n}\n",variables:{server:z,playerHistoryFilter:n,offset:15*(e-1),limit:15,sort:["createDate DESC"],dailyPlayerStatsFilter:n}});!function(t,e,n){let{currentPage:a=1,limit:r=0,onPageChange:o=(()=>{}),tribe:i=!1}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};const l=y({total:e.total,limit:r,currentPage:a}),c='\n
\n ').concat(l.join(""),'\n
\n \n \n \n \n ").concat(i?"":""),"\n \n \n ").concat(i?""):"","\n \n \n \n ").concat(i?"":""),"\n \n ").concat(e.items.map((t=>{const e=E(new Date(t.createDate),1).toISOString().split(".")[0]+"Z",a=n.items.find((t=>t.createDate===e));let r=""+"");return!i&&t.tribe?r+='"):i||(r+=""),r+='\n \n \n ").concat(i?'\n \n "):"",'\n \n \n \n ").concat(i?"":'\n \n "),"\n ")+"",r})).join(""),"\n \n
\n ').concat(N.date,"\n ".concat(N.tribe,"\n ").concat(N.points,"\n \n ").concat(N.villages,"\n ".concat(N.members,"\n ").concat(N.od,"\n \n ").concat(N.oda,"\n \n ").concat(N.odd,"\n ".concat(N.ods,"
".concat(u(t.createDate,{year:"numeric",month:"2-digit",day:"2-digit"}),"').concat(t.tribe.tag,"-\n ').concat(t.points.toLocaleString()," (").concat(t.rank,')\n \n ').concat(t.totalVillages.toLocaleString(),"\n \n ').concat(t.totalMembers,"\n \n ').concat(t.scoreTotal.toLocaleString()," (").concat(t.rankTotal,')\n \n ').concat(t.scoreAtt.toLocaleString()," (").concat(t.rankAtt,')\n \n ').concat(t.scoreDef.toLocaleString()," (").concat(t.rankDef,")\n \n ').concat(t.scoreSup.toLocaleString()," (").concat(t.rankSup,")\n
\n ");s({e:t,title:N.title,id:"history",html:c}),document.querySelectorAll("#historyPagination a").forEach((t=>{t.addEventListener("click",o)}))}(t,r,o,{currentPage:e,limit:15,onPageChange:et,tribe:!1})}catch(t){console.log("cannot load player history",t)}},nt=async t=>{t.preventDefault();const e=p(t.target);if(!isNaN(e)){!function(t,e){let{limit:n=0,currentPage:a=1,onPageChange:r=(()=>{})}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const o=y({total:e.total,limit:n,currentPage:a}),i='\n
\n ').concat(o.join(""),'\n
\n \n \n \n \n \n \n \n \n ").concat(e.items.map((t=>{let e=""+"");return t.village?e+='"):e+="",e+=v(t.newOwner,t.newOwnerTribe),e+=v(t.oldOwner,t.oldOwnerTribe),e+""})).join(""),"\n \n
\n ').concat(D.date,"\n \n ").concat(D.village,"\n \n ").concat(D.newOwner,"\n \n ").concat(D.oldOwner,"\n
".concat(u(t.ennobledAt),"').concat(w(t.village.name,t.village.x,t.village.y),"-
\n ");s({e:t,title:D.title,id:"ennoblements",html:i}),document.querySelectorAll("#ennoblementsPagination a").forEach((t=>{t.addEventListener("click",r)}))}(t,(await a({query:"\n query ennoblements($server: String!, $limit: Int, $offset: Int, $sort: [String!], $filter: EnnoblementFilter!) {\n ennoblements(server: $server, limit: $limit, offset: $offset, sort: $sort, filter: $filter) {\n total\n items {\n village {\n id\n name\n x\n y\n }\n oldOwner {\n id\n name\n }\n oldOwnerTribe {\n id\n tag\n }\n newOwner {\n id\n name\n }\n newOwnerTribe {\n id\n tag\n }\n ennobledAt\n }\n }\n }\n",variables:{filter:{or:{oldOwnerID:[V],newOwnerID:[V]}},offset:15*(e-1),limit:15,sort:["ennobledAt DESC"],server:z}})).ennoblements,{currentPage:e,limit:15,onPageChange:nt})}},at=t=>{t.preventDefault(),Dialog.show(J.exportedVillages,""))},rt=t=>{const e=document.createElement("td");e.colSpan="2",e.append(t);const n=document.createElement("tr");return n.appendChild(e),n};!async function(){try{(()=>{const t=document.createElement("a");t.href=M(I,z,V),t.innerHTML=J.action.linkToTWHelp,U.appendChild(rt(t));const e=document.createElement("a");e.href="#",h(e,"1"),e.innerHTML=J.action.showTribeChanges,e.addEventListener("click",tt),U.appendChild(rt(e));const n=document.createElement("a");n.href="#",h(n,"1"),n.innerHTML=J.action.showHistory,n.addEventListener("click",et),U.appendChild(rt(n));const a=document.createElement("a");a.href="#",h(a,"1"),a.innerHTML=J.action.showEnnoblements,a.addEventListener("click",nt),U.appendChild(rt(a));const r=document.createElement("a");r.href="#",r.innerHTML=J.action.exportVillages,r.addEventListener("click",at),U.appendChild(rt(r))})();const t=Z();t&&t.player&&Y(t);const e=await X();e&&Y(e)}catch(t){console.log("extended player profile",t)}}()}();