<div class="card bg-light shadow my-3">
<div class="card-header text-secondary py-2 d-flex align-items-center">
<span class="icon me-3"><i class="fas fa-list"></i></span>
- <span class="h6 fw-bolder my-auto">Lists</span>
+ <span class="h6 fw-bolder my-auto">Maps</span>
<div class="input-group-sm ms-auto me-1">
Editor:
<div id="btnGroupEditor" class="btn-group btn-group-xs ms-1">
</div>
<div class="card-body p-0">
<table class="table table-sm table-hover mb-0" id="listMaps">
+ <thead><tr><th>Flags</th><th>Type</th><th>URL</th><th>Description</th></tr></thead>
+ <tbody/>
</table>
</div>
</div>
common.query("maps", {
success: function (json) {
const [{data}] = json;
- $listmaps.empty();
- const $tbody = $("<tbody>");
+ const $tbody = $listmaps.children("tbody").empty();
$.each(data, (i, item) => {
- let $td = '<td><span class="badge text-bg-secondary">Read</span></td>';
- if (!(item.editable === false || common.read_only)) {
- $td = $($td).append(' <span class="badge text-bg-success">Write</span>');
- }
- const $tr = $("<tr>").append($td);
+ const $td = $("<td>");
+
+ const badges = [
+ {text: "Not loaded", cls: "text-bg-warning", cond: !item.loaded},
+ {text: "Cached", cls: "text-bg-info", cond: item.cached},
+ {text: "Writable", cls: "text-bg-success", cond: !(item.editable === false || common.read_only)}
+ ];
+ badges.forEach((b) => {
+ if (b.cond) $td.append($(`<span class="badge me-1 ${b.cls}">${b.text}</span>`));
+ });
+
+ const $tr = $("<tr>").append($td).append($("<td>" + item.type + "</td>"));
const $span = $('<span class="map-link">' + item.uri + "</span>").data("item", item);
$span.wrap("<td>").parent().appendTo($tr);
$("<td>" + item.description + "</td>").appendTo($tr);
$tr.appendTo($tbody);
});
- $tbody.appendTo($listmaps);
$listmaps.closest(".card").show();
},
server: common.getServer()