diff options
| author | Simon Rettberg | 2025-12-15 12:27:01 +0100 |
|---|---|---|
| committer | Simon Rettberg | 2025-12-15 12:27:01 +0100 |
| commit | c297799dd52fb9250b284d261185d78a9a8f6540 (patch) | |
| tree | 4dba121bba9f97e07905222ee07cfdeca2de12fd | |
| parent | Add tests using PHPUnit (diff) | |
| download | slx-admin-c297799dd52fb9250b284d261185d78a9a8f6540.tar.gz slx-admin-c297799dd52fb9250b284d261185d78a9a8f6540.tar.xz slx-admin-c297799dd52fb9250b284d261185d78a9a8f6540.zip | |
[dozmod] Show expire time in expired image list
Also disable checkboxes after submitting deletion request
4 files changed, 12 insertions, 7 deletions
diff --git a/modules-available/dozmod/lang/de/template-tags.json b/modules-available/dozmod/lang/de/template-tags.json index 338e8e42..9760031f 100644 --- a/modules-available/dozmod/lang/de/template-tags.json +++ b/modules-available/dozmod/lang/de/template-tags.json @@ -37,6 +37,7 @@ "lang_emailNotifications": "EMail-Benachrichtigungen aktiviert", "lang_error": "Fehler", "lang_event": "Ereignis", + "lang_expired": "Abgelaufen", "lang_fileName": "Dateiname", "lang_fileSize": "Dateigr\u00f6\u00dfe", "lang_followingPlaceholdersUnused": "Folgende Platzhalter m\u00fcssen im Template verwendet werden", diff --git a/modules-available/dozmod/lang/en/template-tags.json b/modules-available/dozmod/lang/en/template-tags.json index b741e03d..27a765dc 100644 --- a/modules-available/dozmod/lang/en/template-tags.json +++ b/modules-available/dozmod/lang/en/template-tags.json @@ -37,6 +37,7 @@ "lang_emailNotifications": "E-Mail notifications enabled", "lang_error": "Error", "lang_event": "Event", + "lang_expired": "Expired", "lang_fileName": "File name", "lang_fileSize": "File size", "lang_followingPlaceholdersUnused": "The following placeholders are not being used", diff --git a/modules-available/dozmod/pages/expiredimages.inc.php b/modules-available/dozmod/pages/expiredimages.inc.php index ab563273..3b8554d8 100644 --- a/modules-available/dozmod/pages/expiredimages.inc.php +++ b/modules-available/dozmod/pages/expiredimages.inc.php @@ -12,8 +12,8 @@ class SubPage { $res = Database::simpleQuery("SELECT b.displayname, own.firstname, own.lastname, own.userid, - v.imageversionid, v.createtime, v.filesize, v.deletestate, - lat.expiretime AS latexptime, lat.deletestate AS latdelstate + v.imageversionid, v.createtime, v.expiretime, v.filesize, v.deletestate, + lat.expiretime AS latexptime, lat.deletestate AS latdelstate, lat.isvalid AS latvalid FROM sat.imageversion v INNER JOIN sat.imagebase b ON (b.imagebaseid = v.imagebaseid) INNER JOIN sat.user own ON (b.ownerid = own.userid) @@ -23,7 +23,7 @@ class SubPage $NOW = time(); $rows = array(); foreach ($res as $row) { - if ($row['latexptime'] > $NOW && $row['latdelstate'] === 'KEEP') { + if ($row['latexptime'] > $NOW && $row['latdelstate'] === 'KEEP' && $row['latvalid']) { $row['hasNewerClass'] = 'glyphicon-ok green'; $row['checked'] = 'checked'; } else { @@ -32,7 +32,8 @@ class SubPage if ($row['deletestate'] === 'WANT_DELETE') { $row['name_extra_class'] = 'slx-strike'; } - $row['version'] = date('d.m.Y H:i:s', $row['createtime']); + $row['version'] = date('d.m.Y H:i', $row['createtime']); + $row['expiretime_s'] = date('d.m.Y H:i', $row['expiretime']); $row['rawfilesize'] = $row['filesize']; $row['filesize'] = Util::readableFileSize($row['filesize']); $rows[] = $row; diff --git a/modules-available/dozmod/templates/images-delete.html b/modules-available/dozmod/templates/images-delete.html index 5bbebdc3..0028d58b 100644 --- a/modules-available/dozmod/templates/images-delete.html +++ b/modules-available/dozmod/templates/images-delete.html @@ -16,6 +16,7 @@ <tr> <th data-sort="string">{{lang_image}}</th> <th data-sort="int">{{lang_version}}</th> + <th data-sort="int">{{lang_expired}}</th> <th data-sort="string">{{lang_owner}}</th> <th><span class="glyphicon glyphicon-upload" title="{{lang_hasNewer}}"></span></th> <th data-sort="int">{{lang_size}}</th> @@ -34,12 +35,13 @@ <td class="text-left text-nowrap {{name_extra_class}}">{{displayname}}<br><span class="small">{{imageversionid}}</span> </td> <td class="text-left text-nowrap" data-sort-value="{{createtime}}">{{version}}</td> + <td class="text-left text-nowrap" data-sort-value="{{expiretime}}">{{expiretime_s}}</td> <td class="text-left text-nowrap"><a href="?do=dozmod&section=actionlog&action=showuser&uuid={{userid}}">{{lastname}}, {{firstname}}</a></td> <td class="text-left text-nowrap"><span class="glyphicon {{hasNewerClass}}"></span></td> <td class="text-left text-nowrap" data-sort-value="{{rawfilesize}}">{{filesize}}</td> <td> <div class="checkbox"> - <input type="checkbox" id="images[{{imageversionid}}]" class="del-check" + <input type="checkbox" id="images[{{imageversionid}}]" class="del-check disable-on-delete" name="images[{{imageversionid}}]" {{checked}}> <label for="images[{{imageversionid}}]"></label> </div> @@ -49,7 +51,7 @@ </tbody> </table> <button {{perm.expiredimages.delete.disabled}} id="expired-delete" - class="btn btn-danger pull-right" type="submit"> + class="btn btn-danger pull-right disable-on-delete" type="submit"> <span class="glyphicon glyphicon-trash"></span> {{lang_delButton}} </button> @@ -108,7 +110,7 @@ document.addEventListener("DOMContentLoaded", function () { var delform = $('#delform'); delform.submit(function (e) { e.preventDefault(); - $('#expired-delete').prop('disabled', true); + $('.disable-on-delete').prop('disabled', true); $.post('?do=dozmod', delform.serialize()).done(function (data) { $('#deloutput').text(data).css('display', ''); }).fail(function () { |
