Просмотр исходного кода

select single snapshot row automatically when hotlinking to admin actions

Nick Sweeting 1 год назад
Родитель
Сommit
2b4b6e5b3a
1 измененных файлов с 12 добавлено и 0 удалено
  1. 12 0
      archivebox/templates/admin/base.html

+ 12 - 0
archivebox/templates/admin/base.html

@@ -277,10 +277,22 @@
                         $(this).parents('.card').removeClass('selected-card')
                 })
             };
+            function selectSnapshotIfHotlinked() {
+                // if we arrive at the index with a url like ??id__startswith=...
+                // we were hotlinked here with the intention of making it easy for the user to perform some
+                // actions on the given snapshot. therefore we should preselect the snapshot to save them a click
+                if (window.location.search.startsWith('?id__startswith=') || window.location.search.startsWith('?id__exact=')) {
+                    const result_checkboxes = [...document.querySelectorAll('#result_list .action-checkbox input[type=checkbox]')]
+                    if (result_checkboxes.length === 1) {
+                        result_checkboxes[0].click()
+                    }
+                }
+            }
             $(document).ready(function() {
                 fix_actions()
                 setupSnapshotGridListToggle()
                 setTimeOffset()
+                selectSnapshotIfHotlinked()
             })
         </script>
     </body>