MediaWiki:CreatureList.js
Revision as of 06:10, 7 August 2019 by Nussnougat (talk | contribs)
Note: After saving, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Internet Explorer: Hold Ctrl while clicking Refresh, or press Ctrl-F5
- Opera: Go to Menu → Settings (Opera → Preferences on a Mac) and then to Privacy & security → Clear browsing data → Cached images and files.
function drawTable(mobs) { var output = $("#creatures-list"); var html = "<div><a href='/index.php/Data:CreatureForm'><button>Add</button></a></div>"; html += "<table class='vvwiki-table'><tr><th>Name</th><th>HP</th><th>Damage</th><th>Maturity</th><th>Planets</th><th></th></tr>"; mobs.creatures.forEach(function(mob) { var url = "/index.php/Creatures:"+mob["name"]; var planets = mob["planets"]; var planetURLs = ""; planets.forEach(function(planet) { planetURLs += "<a href='index.php/Story:"+planet+"'>"+planet+"</a> "; }); var editURL = "/index.php/Data:CreatureForm?id="+mob["_id"]; html += "<tr>"; html += "<td><b><a href='"+url+"'>"+mob["name"]+"</a></b></td>"; html += "<td>"+mob["hp"]+"</td>"; html += "<td>"+mob["min_damage"]+" - "+mob["max_damage"]+"</td>"; html += "<td>"+mob["maturity"]+"</td>"; html += "<td>"+planetURLs+"</td>"; html += "<td><a href='"+editURL+"'>Edit</a></td>"; html += "</tr>" }); var paging = "<tr><td colspan='10'>"; mobs.pages.forEach(function(section) { var link = ""; if (section.is_current) { link = " [" + section.page + "] "; } else { var path = "/index.php/Creatures?page="+section.start+"&count="+section.count; link = " <a href='"+path+"'>"+section.page+"</a> "; } paging += link; }) paging += "</td></tr>"; html += paging; html += "</table>"; output.html(html); } function query(page, count) { $("#loader-creatures-list").show(); $.ajax({ type: "GET", dataType: "json", url: "/vv-api/get-creatures.php?page="+page+"&count="+count, success: function(data) { $("#loader-creatures-list").hide(); drawTable(data.result); }, error: function(status, exec) { $("#loader-creatures-list").hide(); $("#creatures-list").html("<i>Error retrieving mob data!</i>"); } }); } $(document).ready(function() { if ($("#creatures-list") != null) { var url = new URL(window.location.href); var page = url.searchParams.get("page"); var count = url.searchParams.get("count"); if (page == null) page = 0; if (count == null) count = 10; query(page, count); } });