diff --git a/archivebox/templates/admin/base.html b/archivebox/templates/admin/base.html index 5d4d4cc5..897a26d5 100644 --- a/archivebox/templates/admin/base.html +++ b/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() })