tables: support custom sortKey

pull/15/head
justcool393 2022-11-26 09:55:51 -06:00
parent bd3ed67c2d
commit 883fbfc13b
2 changed files with 12 additions and 5 deletions

View File

@ -8,7 +8,14 @@ function sort_table(n) {
const ele = rows[i]; const ele = rows[i];
let x = rows[i].getElementsByTagName("TD")[n]; let x = rows[i].getElementsByTagName("TD")[n];
x = x.getElementsByTagName('a')[0] || x; x = x.getElementsByTagName('a')[0] || x;
const attr = x.dataset.time ? parseInt(x.dataset.time) : parseInt(x.innerHTML.replace(/,/g, '')); var attr;
if ('sortKey' in x.dataset) {
attr = x.dataset.sortKey;
} else if ('time' in x.dataset) {
attr = parseInt(x.dataset.time);
} else {
attr = parseInt(x.innerHTML.replace(/,/g, ''));
}
items.push({ ele, attr }); items.push({ ele, attr });
} }
if (sortAscending[n]) { if (sortAscending[n]) {

View File

@ -14,7 +14,7 @@
{% endif %} {% endif %}
<th onclick="sort_table(5)">Added on</th> <th onclick="sort_table(5)">Added on</th>
{% if FEATURES['ASSET_SUBMISSIONS'] %} {% if FEATURES['ASSET_SUBMISSIONS'] %}
<th>Original File</th> <th>Original File</th>
{% endif %} {% endif %}
</tr> </tr>
</thead> </thead>
@ -22,14 +22,14 @@
{% for marsey in marseys %} {% for marsey in marseys %}
<tr> <tr>
<td>{{loop.index}}</td> <td>{{loop.index}}</td>
<td>{{marsey.name}}</td> <td data-sort-key="{{marsey.name}}">{{marsey.name}}</td>
<td><img class="marsey" loading="lazy" data-bs-toggle="tooltip" alt=":#{{marsey.name}}:" title=":{{marsey.name}}:" src="/e/{{marsey.name}}.webp"></td> <td><img class="marsey" loading="lazy" data-bs-toggle="tooltip" alt=":#{{marsey.name}}:" title=":{{marsey.name}}:" src="/e/{{marsey.name}}.webp"></td>
<td>{{marsey.count}}</td> <td>{{marsey.count}}</td>
{% if FEATURES['ASSET_SUBMISSIONS'] %} {% if FEATURES['ASSET_SUBMISSIONS'] %}
{% set user = marsey.user %} {% set user = marsey.user %}
<td>{% include "user_in_table.html" %}</td> <td data-sort-key="{{user.username}}">{% include "user_in_table.html" %}</td>
{% endif %} {% endif %}
<td {% if marsey.created_utc != None %}data-time="{{marsey.created_utc}}"{% endif %}></td> <td data-sort-key="{{marsey.created_utc}}" {% if marsey.created_utc != None %}data-time="{{marsey.created_utc}}"{% endif %}></td>
{% if FEATURES['ASSET_SUBMISSIONS'] %} {% if FEATURES['ASSET_SUBMISSIONS'] %}
<td> <td>
{% if marsey.og %} {% if marsey.og %}