summaryrefslogtreecommitdiff
path: root/html/content/js/Forms/select.js
diff options
context:
space:
mode:
authorGeorge Halkiadakis <gchalkiadakis@sklavenitis.co.gr>2023-03-12 23:57:48 +0200
committerGeorge Halkiadakis <gchalkiadakis@sklavenitis.co.gr>2023-03-12 23:57:48 +0200
commit7aa203150fc1a2ec79c681c13f0d486d531746eb (patch)
treef09ba9f69ccd434e9c7fdeb41807fc8008784d8a /html/content/js/Forms/select.js
parent221af3a2e035bd6689294509feb52f286d3bd5be (diff)
downloadclassroom-7aa203150fc1a2ec79c681c13f0d486d531746eb.tar.gz
classroom-7aa203150fc1a2ec79c681c13f0d486d531746eb.tar.bz2
classroom-7aa203150fc1a2ec79c681c13f0d486d531746eb.zip
error pages; js system to support back/front-end
Diffstat (limited to 'html/content/js/Forms/select.js')
-rw-r--r--html/content/js/Forms/select.js52
1 files changed, 0 insertions, 52 deletions
diff --git a/html/content/js/Forms/select.js b/html/content/js/Forms/select.js
deleted file mode 100644
index 3ea5435..0000000
--- a/html/content/js/Forms/select.js
+++ /dev/null
@@ -1,52 +0,0 @@
-$$plugins.define('select', ['domHelper'], function (element, options, $) {
- var list = element.querySelector('.select__listWrap'),
- selected = $('.select__button'),
- selectedMob = element.querySelector('.select__button--mobile'),
- input = element.querySelector('.select__input'),
- options = $('.select__option');
-
- function open() {
- element.classList.add('select--open');
- $(list).slideDown(250);
- }
-
- function close() {
- $(list).slideUp(250, function () {
- element.classList.remove('select--open');
- });
- }
-
- document.addEventListener('click', function (event) {
- if (!isOpen() || element == event.target || $(event.target).parents().contains(element)) {
- return;
- }
- close();
- });
-
- selected.on("click", function (e) {
- e.preventDefault();
- if (element.classList.contains('select--open')) {
- close();
- } else {
- open();
- }
- });
-
- function isOpen() {
- return element.classList.contains('select--open');
- }
-
- options.on('click', function (e) {
- e.target.classList.add('selected');
- prevActiveOption = Object.values(element.querySelectorAll('.selected')).filter(prevActive => prevActive !== e.target);
- if (prevActiveOption.length != 0) {
- prevActiveOption[0].classList.remove('selected');
- }
- selected.text(e.target.innerHTML);
- if (selectedMob) {
- selectedMob.innerHTML = e.target.innerHTML;
- }
- $(input).val(e.target.dataset.value).trigger('change');
- close();
- });
-});