From 98f6d5630f6be4f955e308a5c1a91749f8cf7300 Mon Sep 17 00:00:00 2001 From: NunoSempere Date: Sat, 17 Jun 2023 00:29:27 -0600 Subject: alerts v2, formatting --- plugins/style/style.c | 2 +- plugins/style/style.h | 2 +- plugins/style/style.js | 102 ++++++++++++++++++++++++------------------------- 3 files changed, 52 insertions(+), 54 deletions(-) (limited to 'plugins/style') diff --git a/plugins/style/style.c b/plugins/style/style.c index 34f7f35..7f0d3e4 100644 --- a/plugins/style/style.c +++ b/plugins/style/style.c @@ -1,7 +1,7 @@ #include #include #include -#define STYLE_N 3640 + 1 +#define STYLE_N 3858 + 1 void read_style_js(char* string) { diff --git a/plugins/style/style.h b/plugins/style/style.h index 75dd3ee..3a2cdc9 100644 --- a/plugins/style/style.h +++ b/plugins/style/style.h @@ -1,7 +1,7 @@ #ifndef STYLE #define STYLE -#define STYLE_N 3640 + 1 +#define STYLE_N 3858 + 1 void read_style_js(char* string); diff --git a/plugins/style/style.js b/plugins/style/style.js index cc98fa9..4f917ad 100644 --- a/plugins/style/style.js +++ b/plugins/style/style.js @@ -73,63 +73,61 @@ if(styles != null){ // Replace default alert with new function // whose style can be changed! -window.alert = function(message) { - // Check if the alert dialog already exists - var alertDiv = document.getElementById('customAlert'); +window.alert = (message) => { + let alertDiv = document.getElementById('customAlert'); if (!alertDiv) { - // Create the alert dialog - alertDiv = document.createElement('div'); - alertDiv.id = 'customAlert'; - alertDiv.className = 'custom-alert hidden'; - - var contentDiv = document.createElement('div'); - contentDiv.className = 'custom-alert-content'; - - var alertMessage = document.createElement('p'); - alertMessage.id = 'alertMessage'; - - var okButton = document.createElement('button'); - okButton.id = 'alertOkButton'; - okButton.textContent = 'OK'; - okButton.onclick = function() { - alertDiv.classList.add('hidden'); + const html = ` +
+
+

+ +
+
+ + `; + document.body.insertAdjacentHTML('beforeend', html); + alertDiv = document.getElementById('customAlert'); + document.getElementById('alertOkButton').onclick = () => { + alertDiv.classList.remove('visible'); + document.removeEventListener('keydown', dismissAlert); }; - - contentDiv.appendChild(alertMessage); - contentDiv.appendChild(okButton); - alertDiv.appendChild(contentDiv); - document.body.appendChild(alertDiv); - - // Inject CSS - var style = document.createElement('style'); - style.innerHTML = ` - .custom-alert { - position: fixed; - z-index: 999; - left: 0; - top: 0; - width: 100%; - height: 100%; - overflow: auto; - background-color: rgba(0,0,0,0.4); - } - .custom-alert-content { - background-color: #fefefe; - margin: 15% auto; - padding: 20px; - border: 1px solid #888; - width: 80%; + } + + const dismissAlert = (event) => { + if (event.key === 'Enter' /*&& event.ctrlKey*/ && alertDiv.classList.contains('visible')) { + alertDiv.classList.remove('visible'); + document.removeEventListener('keydown', dismissAlert); } - .hidden { - display: none; - }`; - document.head.appendChild(style); } - - // Show the alert dialog + + document.addEventListener('keydown', dismissAlert); document.getElementById('alertMessage').textContent = message; - alertDiv.classList.remove('hidden'); -} + alertDiv.classList.add('visible'); +} + // alert("Hello world!") document.body.style.visibility = "visible" -- cgit v1.2.3