diff --git a/html/js/app.js b/html/js/app.js
index bcbd55149..96771d3f2 100644
--- a/html/js/app.js
+++ b/html/js/app.js
@@ -697,10 +697,12 @@ $(document).ready(function() {
},
updateEditorTheme() {
var link = $('link[href^="css/external/prism-custom-"]')[0];
- if (this.$vuetify.theme.dark) {
- link.href = "css/external/prism-custom-dark-v1.29.0.css";
- } else {
- link.href = "css/external/prism-custom-light-v1.29.0.css";
+ if (link) {
+ if (this.$vuetify.theme.dark) {
+ link.href = "css/external/prism-custom-dark-v1.29.0.css";
+ } else {
+ link.href = "css/external/prism-custom-light-v1.29.0.css";
+ }
}
},
subscribe(kind, fn) {
diff --git a/html/js/i18n.js b/html/js/i18n.js
index 50d8ff88c..e8e24a703 100644
--- a/html/js/i18n.js
+++ b/html/js/i18n.js
@@ -121,6 +121,8 @@ const i18n = {
betweenOp: 'Between',
blog: 'Blog',
bulkAction: 'Bulk Action:',
+ bulkActionStarted: 'Updating {total} detections. This may take awhile.',
+ bulkActionDeleteStarted: 'Deleting {total} detections. This may take awhile.',
bulkError: '',
bulkSuccessUpdate: 'Bulk update successfully updated {modified} of {total} events. ({time})',
bulkSuccessDelete: 'Bulk delete successfully deleted {modified} of {total} events. ({time})',
diff --git a/html/js/routes/hunt.js b/html/js/routes/hunt.js
index e50ac4a2d..471847eab 100644
--- a/html/js/routes/hunt.js
+++ b/html/js/routes/hunt.js
@@ -2216,6 +2216,16 @@ const huntComponent = {
try {
await this.$root.papi.post('detection/bulk/' + this.selectedAction, payload);
+
+ let msg = this.i18n.bulkActionStarted;
+ if (this.selectedAction === 'delete') {
+ msg = this.i18n.bulkActionDeleteStarted;
+ }
+
+ msg = msg.replace('{total}', this.selectedCount.toLocaleString());
+
+ this.$root.showTip(msg);
+
this.selectAllState = false;
this.selectedCount = 0;
this.hunt(false);