azerothcore-armory/static/guild.hbs
2025-08-27 19:42:09 +02:00

103 lines
2.3 KiB
Handlebars

<link rel="stylesheet" type="text/css" href="{{websiteRoot}}/css/guild.css">
<style>
.guild-emblem {
background: url("{{websiteRoot}}/img/guild-emblems/circle.png") no-repeat center;
}
</style>
{{> datatables}}
{{> emblems}}
<a href="{{websiteRoot}}/">Back to Armory</a>
<br><br>
<div id="guild-header">
<div class="emblem-container">
<div class="guild-emblem circle">
<div class="images"></div>
<canvas class="circle" width="128" height="96"></canvas>
</div>
</div>
<div class="info">
<div class="char-name title is-size-3">&lt;{{name}}&gt;</div>
<div class="is-size-5">
<div>
Guild Master: <a href="{{websiteRoot}}/character/{{realm}}/{{leader}}">{{leader}}</a>
</div>
<div>
{{membersCount}} members
</div>
{{#eq faction 1}}
<div class="faction">
<img class="logo" src="{{websiteRoot}}/img/PlusManz-Alliance.png">
<span>Alliance</span>
</div>
{{else}}
<div class="faction">
<img class="logo" src="{{websiteRoot}}/img/PlusManz-Horde.png">
<span>Horde</span>
</div>
{{/eq}}
</div>
</div>
</div>
<br>
<table id="members" class="stripe hover row-border">
<thead>
<tr>
<th>Name</th>
<th>Rank</th>
<th>Level</th>
<th>Class</th>
<th>Race</th>
<th>Online</th>
</tr>
</thead>
<tbody></tbody>
</table>
<script type="application/javascript">
$(window).on("load", () => {
createGuildEmblem({{{ JSONstringify emblem }}}, $(".emblem-container .guild-emblem")[0]);
dt = $("#members").DataTable({
processing: true,
serverSide: true,
searchDelay: 800,
ajax: {
url: `{{websiteRoot}}/guild/{{{realm}}}/{{id}}/members`,
},
columnDefs: [
{
targets: 0,
render: (name) => `<a href="{{websiteRoot}}/character/{{realm}}/${name}">${name}</a>`,
},
{
targets: 1,
render: (rank, type, row, meta) => meta.settings.json.ranks[rank],
},
{
searchable: false,
targets: 3,
render: data => `<img src="{{aowow}}/static/images/wow/icons/medium/class_${data}.jpg">`,
},
{
searchable: false,
targets: 4,
render: data => `<img src="{{aowow}}/static/images/wow/icons/medium/race_${data}.jpg">`,
},
{
searchable: false,
targets: 5,
render: online => online ? "🟢" : "🔴",
},
],
responsive: {
details: true,
},
order: [[1, "asc"]],
});
});
</script>