From 89dbb354cad00df3e5863f0a859ae5e24ed6eb5f Mon Sep 17 00:00:00 2001 From: Carson Fleming Date: Mon, 30 Dec 2024 19:26:48 -0800 Subject: rudimentary js --- inbox_settings.php | 2 +- keys.js | 18 ++++++++++++++++++ skins/elastic/templates/keys.html | 11 +++++------ 3 files changed, 24 insertions(+), 7 deletions(-) create mode 100644 keys.js diff --git a/inbox_settings.php b/inbox_settings.php index d2eaff6..341ec1e 100644 --- a/inbox_settings.php +++ b/inbox_settings.php @@ -90,7 +90,7 @@ class inbox_settings extends rcube_plugin { // info the js needs access to $this->rcmail->output->add_gui_object('keyslist', $attrib['id']); - $this->rcmail->output->include_script('list.js'); + $this->rcmail->output->include_script('keys.js'); // $this->rcmail->output->add_label('inbox_settings.a', 'inbox_settings.b'); diff --git a/keys.js b/keys.js new file mode 100644 index 0000000..b9074a4 --- /dev/null +++ b/keys.js @@ -0,0 +1,18 @@ +window.rcmail && window.rcmail.addEventListener('init', function () { + if (rcmail.env.task === 'settings' + && rcmail.env.action === 'plugin.inbox_keys') { + if (rcmail.gui_objects.keyslist) { + rcmail.inbox_keys_list = new rcube_list_widget( + rcmail.gui_objects.keyslist, + {multiselect: true, draggable: false, keyboard: true}); + rcmail.inbox_keys_list + .addEventListener('select', + list => rcmail.enable_command( + 'plugin.inbox_keys_delete', list.get_selection().length > 0)) + .addEventListener('keypress', + list => rcmail.list_keypress(list, {del: 'plugin.inbox_keys_delete'})) + .init() + .focus(); + } + } +}); diff --git a/skins/elastic/templates/keys.html b/skins/elastic/templates/keys.html index 4cf7752..606cf88 100644 --- a/skins/elastic/templates/keys.html +++ b/skins/elastic/templates/keys.html @@ -12,19 +12,18 @@
+ role="listbox" data-list="keys_list" data-label-msg="listempty" + data-label-ext="listusebutton" data-create-command="inbox_settings.key_import" />
-- cgit v1.2.3