diff options
| author | George Halkiadakis <gchalkiadakis@sklavenitis.co.gr> | 2023-04-26 04:43:12 +0300 |
|---|---|---|
| committer | George Halkiadakis <gchalkiadakis@sklavenitis.co.gr> | 2023-04-26 04:43:12 +0300 |
| commit | 9cb35f2bf2127cc8ac077aae17514a57e576217d (patch) | |
| tree | bf809e73dded8e481d0a2e16c488831052016313 /public/assets/js/_dependency-control/plugins | |
| parent | b594effb847b86fc6b1dae49d7948c46bba35e58 (diff) | |
| download | classroom-9cb35f2bf2127cc8ac077aae17514a57e576217d.tar.gz classroom-9cb35f2bf2127cc8ac077aae17514a57e576217d.tar.bz2 classroom-9cb35f2bf2127cc8ac077aae17514a57e576217d.zip | |
alfa.2 version; seceral optimizations; added support for mail-relay
Diffstat (limited to 'public/assets/js/_dependency-control/plugins')
16 files changed, 0 insertions, 524 deletions
diff --git a/public/assets/js/_dependency-control/plugins/accordion.js b/public/assets/js/_dependency-control/plugins/accordion.js deleted file mode 100644 index 62e25ad..0000000 --- a/public/assets/js/_dependency-control/plugins/accordion.js +++ /dev/null @@ -1,43 +0,0 @@ -$$plugins.define('accordion', ['domHelper'], function (element, options, $) {
- var animating = false,
- $header = $(element).find('.acc:not(.acc--disabled) .acc__header'),
- $content,
- $prevActiveAcc,
- $this,
- $accItem,
- singleOpen = options.singleOpen ? options.singleOpen : false;
-
- $header.on('click', function (e) {
- $this = $(this);
- $accItem = $this.parent('.acc');
- $content = $this.next('.acc__content');
- if (animating === true) {
- return;
- }
- animating = true;
- if ($accItem.is('.open')) {
- $content.slideUp(300, function () {
- $accItem.removeClass('open');
- $content.removeAttr('style');
- animating = false;
- });
- } else {
- $content.slideDown(300, function () {
- $accItem.addClass('open');
- $content.removeAttr('style');
- animating = false;
- });
-
- if (singleOpen) {
- $prevActiveAcc = $accItem.siblings('.acc.open');
- if ($prevActiveAcc.length != 0) {
- $prevActiveAcc.find('.acc__content').slideUp(300, function () {
- $prevActiveAcc.removeClass('open');
- $prevActiveAcc.find('.acc__content').removeAttr('style');
- animating = false;
- });
- }
- }
- }
- });
-});
diff --git a/public/assets/js/_dependency-control/plugins/breadcrumb.js b/public/assets/js/_dependency-control/plugins/breadcrumb.js deleted file mode 100644 index 112824b..0000000 --- a/public/assets/js/_dependency-control/plugins/breadcrumb.js +++ /dev/null @@ -1,9 +0,0 @@ -$$plugins.define('breadcrumb', function (element, options) {
- var scrollPos = element.querySelector('.breadcrumb__item:last-child').offsetLeft - element.offsetLeft;
-
- element.scroll({
- top: 0,
- left: scrollPos,
- behavior: 'smooth'
- });
-});
diff --git a/public/assets/js/_dependency-control/plugins/copy.js b/public/assets/js/_dependency-control/plugins/copy.js deleted file mode 100644 index c33430f..0000000 --- a/public/assets/js/_dependency-control/plugins/copy.js +++ /dev/null @@ -1,25 +0,0 @@ -$$plugins.define('copy', function (element, options) {
- //copyButton: data-copy-btn
- //content to be copied: data-copy-text
- //tooltip: data-copy-tooltip
-
- const copyButton = element,
- copyButtonId = copyButton.getAttribute('data-copy-btn'),
- copyText = document.querySelector(`[data-copy-text='${copyButtonId}']`),
- tooltip = document.querySelector(`[data-copy-tooltip='${copyButtonId}']`);
-
- function copy() {
- var r = document.createRange();
- r.selectNode(copyText);
- window.getSelection().removeAllRanges();
- window.getSelection().addRange(r);
- document.execCommand('copy');
- window.getSelection().removeAllRanges();
- tooltip.classList.add('copyText__tooltip--open');
- setTimeout(function () {
- tooltip.classList.remove('copyText__tooltip--open');
- }, 1600);
- }
-
- copyButton.addEventListener("click", copy);
-});
diff --git a/public/assets/js/_dependency-control/plugins/expand.js b/public/assets/js/_dependency-control/plugins/expand.js deleted file mode 100644 index 533e978..0000000 --- a/public/assets/js/_dependency-control/plugins/expand.js +++ /dev/null @@ -1,38 +0,0 @@ -$$plugins.define('expand', ['domHelper'], function (element, options, $) {
- //triggerButton: data-trigger-expand
- //content to be initialized: data-content-expand
- const triggerButton = element.querySelector('[data-trigger-expand]'),
- triggerButtonId = triggerButton.getAttribute('data-trigger-expand'),
- content = $(`[data-content-expand='${triggerButtonId}']`);
-
- var $triggerButton = $(triggerButton);
-
- $triggerButton.on('click', function (e) {
- e.preventDefault();
- if ($triggerButton.hasClass('active')) {
- content.slideUp(300, function () {
- $triggerButton.removeClass('active');
- content.removeAttr('style');
- });
- } else {
- $triggerButton.addClass('active');
- content.slideDown(300, function () {
- if (content.find('.scrollbarShadow').length > 0 && !content.find('.scrollbarShadow').hasClass('initialized')) {
- content.find('.scrollbarShadow').addClass('initialized');
- }
- });
- }
- });
-
- if (options.closeOnCLickAway == true) {
- document.addEventListener('click', function (event) {
- if (!$triggerButton.hasClass('active') || element == event.target || $(event.target).parents().contains(element)) {
- return;
- }
- content.slideUp(300, function () {
- $triggerButton.removeClass('active');
- content.removeAttr('style');
- });
- });
- }
-});
diff --git a/public/assets/js/_dependency-control/plugins/expandText.js b/public/assets/js/_dependency-control/plugins/expandText.js deleted file mode 100644 index 0b58cb7..0000000 --- a/public/assets/js/_dependency-control/plugins/expandText.js +++ /dev/null @@ -1,5 +0,0 @@ -$$plugins.define('expandText', function (element, options) {
- element.querySelector('.expandText__button').addEventListener('click', () => {
- element.classList.toggle('open');
- });
-});
diff --git a/public/assets/js/_dependency-control/plugins/fileinput.js b/public/assets/js/_dependency-control/plugins/fileinput.js deleted file mode 100644 index 10ba891..0000000 --- a/public/assets/js/_dependency-control/plugins/fileinput.js +++ /dev/null @@ -1,20 +0,0 @@ -$$plugins.define('fileinput', function (element, options) {
- const inputfile = element.querySelector('.file-upload__input');
- const filedelete = element.querySelector('.file-upload__delete');
-
- inputfile.addEventListener('change', (event) => {
- const inputname = element.querySelector('.file-upload__name');
- const filename = inputfile.files[0].name;
- inputname.innerText = filename;
- element.classList.add('file-upload__filled');
- });
-
- filedelete.addEventListener('click', (event) => {
- const inputname = element.querySelector('.file-upload__name');
-
- inputname.innerText = "";
- element.classList.remove('file-upload__filled');
- inputfile.value = "";
- });
-
-});
diff --git a/public/assets/js/_dependency-control/plugins/gallery.js b/public/assets/js/_dependency-control/plugins/gallery.js deleted file mode 100644 index 6ac147a..0000000 --- a/public/assets/js/_dependency-control/plugins/gallery.js +++ /dev/null @@ -1,51 +0,0 @@ -$$plugins.define('gallery', ['swiper-bundle', 'domHelper'], function (element, options, Swiper, $) {
- var $galleryImg = $('.gallery__figure img'),
- thumbs = document.querySelector('.galleryThumbs'),
- sliderModal = document.querySelector('.gallerySliderModal'),
- $image;
-
- var swiperThumbs = new Swiper(".galleryThumbs", {
- direction: "horizontal",
- freeMode: true,
- init: false,
- slidesPerView: 4,
- spaceBetween: 8,
- speed: 800,
- watchSlidesProgress: true,
- pagination: {
- el: '.swiper-pagination',
- },
- breakpoints: {
- 768: {
- slidesPerView: 5,
- spaceBetween: 17,
- }
- },
- });
-
- var swiperMain = new Swiper(".galleryMainImg", {
- init: false,
- loop: true,
- navigation: {
- nextEl: ".swiper-button-next",
- prevEl: ".swiper-button-prev",
- },
- speed: 800,
- thumbs: {
- swiper: swiperThumbs,
- },
- });
-
- $galleryImg.on('click', function () {
- if (!thumbs.classList.contains('swiper-initialized')) {
- swiperThumbs.init();
- swiperMain.init();
- }
- sliderModal.classList.add('open');
- $image = $(this).parents('.gallery__figure');
- swiperMain.slideTo($image.index() + 1, 0);
-
- //document.documentElement.classList.add('noScroll');
-
- });
-});
\ No newline at end of file diff --git a/public/assets/js/_dependency-control/plugins/infoPopup.js b/public/assets/js/_dependency-control/plugins/infoPopup.js deleted file mode 100644 index e11ad16..0000000 --- a/public/assets/js/_dependency-control/plugins/infoPopup.js +++ /dev/null @@ -1,8 +0,0 @@ -$$plugins.define('infoPopup', function (element, options) {
- element.addEventListener('click', event => {
- element.closest('.infoPopup').classList.add('moveOut');
- setTimeout(function () {
- element.closest('.infoPopup').remove()
- }, 500);
- });
-});
diff --git a/public/assets/js/_dependency-control/plugins/initialize.js b/public/assets/js/_dependency-control/plugins/initialize.js deleted file mode 100644 index ecdca48..0000000 --- a/public/assets/js/_dependency-control/plugins/initialize.js +++ /dev/null @@ -1,11 +0,0 @@ -$$plugins.define('initialize', function (element, options) {
- //triggerButton: data-trigger-initialize
- //content to be initialized: data-content-initialize
-
- const triggerButton = element.getAttribute('data-trigger-initialize'),
- content = document.querySelector(`[data-content-initialize='${triggerButton}']`);
-
- element.addEventListener('click', function (event) {
- content.classList.add("initialized");
- });
-});
diff --git a/public/assets/js/_dependency-control/plugins/intersecting.js b/public/assets/js/_dependency-control/plugins/intersecting.js deleted file mode 100644 index 87faf61..0000000 --- a/public/assets/js/_dependency-control/plugins/intersecting.js +++ /dev/null @@ -1,18 +0,0 @@ -$$plugins.define('intersecting', function (element, options) {
- const el = document.querySelector(options.target);
-
- const observer = new window.IntersectionObserver(([entry]) => {
- const intersectionRatio = entry.intersectionRatio.toFixed(2);
- if (entry.isIntersecting) {
- element.classList.add("sticky");
- } else {
- element.classList.remove("sticky");
- }
- }, {
- root: null,
- rootMargin: '-30% 0px -70%',
- threshold: 0
- })
-
- observer.observe(el)
-});
diff --git a/public/assets/js/_dependency-control/plugins/menu.js b/public/assets/js/_dependency-control/plugins/menu.js deleted file mode 100644 index d6dced2..0000000 --- a/public/assets/js/_dependency-control/plugins/menu.js +++ /dev/null @@ -1,97 +0,0 @@ -$$plugins.define('menu', ['domHelper'], function (element, options, $) {
- var level1 = $('.mainNav__link--hasChildren', element),
- closeElements = $('.mainLayer, .megamenu__close'),
- body = $('body'),
- burgerMenu = $('.burgerMenu'),
- mainContainer = $('.mainContainer'),
- header = $('.header'),
- megaMenuBack = $('.megamenu__back'),
- positionTopDesktop,
- scrollBarWidth;
-
-
- level1.on('click', function (event) {
- event.preventDefault();
- var $this = $(this);
- if ($this.parent('.mainNav__item').is('.mainNav__item--active')) {
- closeMenuLevel1($this);
- }
- else {
- openMenuLevel1($this);
- }
- });
-
- //close menu
- closeElements.on('click', function () {
- if (window.innerWidth < 1024) {
- closeMobileMenu();
- } else {
- closeMenuLevel1($('.mainNav__item--active .mainNav__link'));
- }
- });
-
- function openMenuLevel1($activeItem) {
- var $activeItemParent = $activeItem.parent('.mainNav__item');
-
- positionTopDesktop = -window.scrollY;
- scrollBarWidth = window.innerWidth - mainContainer.innerWidth();
-
- var activeItemsExceptCurrent = $('.mainNav__item--active').not($activeItemParent);
- if (activeItemsExceptCurrent.length > 0) {
- activeItemsExceptCurrent.removeClass('mainNav__item--active').addClass('mainNav__item--fadeOut');
- setTimeout(function () {
- activeItemsExceptCurrent.removeClass('mainNav__item--fadeOut');
- }, 350);
- }
-
- $activeItemParent.addClass('mainNav__item--active');
- body.addClass('menuOpened menuOpened--level2').each(e => e.style.paddingRight = scrollBarWidth + "px");
- burgerMenu.addClass('burgerMenu--opened');
-
- mainContainer.each(e => e.style.transform = "translateY(" + positionTopDesktop + "px)");
- header.each(e => e.style.width = "calc(100vw - " + scrollBarWidth + "px)");
- }
-
- function closeMenuLevel1($activeItem) {
- var $activeItemParent = $activeItem.parent('.mainNav__item');
- $activeItemParent.removeClass('mainNav__item--active');
- body.removeClass('menuOpened').each(e => e.style.paddingRight = "");
- burgerMenu.removeClass('burgerMenu--opened');
- mainContainer.each(e => e.style.transform = "");
- header.each(e => e.style.width = "");
- body.scroll({
- top: -positionTopDesktop
- });
- }
-
- burgerMenu.on('click', function (e) {
- e.preventDefault();
- if (e.target.matches('.burgerMenu--opened')) {
- closeMobileMenu();
- } else {
- openMobileMenu();
- }
- });
-
- var positionTop;
- function openMobileMenu() {
- positionTop = -window.scrollY;
- burgerMenu.addClass('burgerMenu--opened');
- body.addClass('menuOpened menuOpened--level2');
- mainContainer.each(e => e.style.transform = "translateY(" + positionTop + "px)");
- }
-
- function closeMobileMenu() {
- burgerMenu.removeClass('burgerMenu--opened');
- body.removeClass('menuOpened menuOpened--level2');
- mainContainer.each(e => e.style.transform = "");
- body.scroll({
- top: -positionTop
- });
- }
-
- megaMenuBack.on('click', function (event) {
- $('.mainNav__item--active').removeClass('mainNav__item--active');
- body.removeClass('menuOpened--level2');
- });
-});
diff --git a/public/assets/js/_dependency-control/plugins/scrollShadowHor.js b/public/assets/js/_dependency-control/plugins/scrollShadowHor.js deleted file mode 100644 index eed0325..0000000 --- a/public/assets/js/_dependency-control/plugins/scrollShadowHor.js +++ /dev/null @@ -1,42 +0,0 @@ -$$plugins.define('scrollShadowHor', function (element, options) {
- var scrollElm = element.querySelector('.scrollbar'),
- listInner = element.querySelector('.scrollbar__inner');
-
- const observer = new MutationObserver(function(mutations) {
- var childrenMutations = mutations.filter((x) => x.type === "childList");
- if (childrenMutations.length > 0){
- checkScrollPos(scrollElm);
- }
- });
-
- observer.observe(listInner, { subtree: true, childList: true });
-
- checkScrollPos(scrollElm);
-
- scrollElm.addEventListener("scroll", function () {
- checkScrollPos(this);
- });
-
- function checkScrollPos(scrollContainer) {
- if (scrollContainer.scrollLeft + element.offsetWidth > listInner.offsetWidth - 8) {
- element.classList.add('scrollbarShadow--right');
- } else {
- element.classList.remove('scrollbarShadow--right');
- }
- if (scrollContainer.scrollLeft < 8) {
- element.classList.add('scrollbarShadow--left');
- } else {
- element.classList.remove('scrollbarShadow--left');
- }
- }
-
- //checkScrollInit();
-
- //function checkScrollInit() {
- // if (element.offsetWidth >= listInner.offsetWidth) {
- // element.classList.add('scrollbarShadow--noScroll');
- // } else {
- // element.classList.remove('scrollbarShadow--noScroll');
- // }
- //}
-});
diff --git a/public/assets/js/_dependency-control/plugins/scrollShadowVert.js b/public/assets/js/_dependency-control/plugins/scrollShadowVert.js deleted file mode 100644 index 2824c22..0000000 --- a/public/assets/js/_dependency-control/plugins/scrollShadowVert.js +++ /dev/null @@ -1,57 +0,0 @@ -$$plugins.define('scrollShadowVert', function (element, options) {
- var scrollElm = element.querySelector('.scrollbar'),
- listInner = element.querySelector('.scrollbar__inner');
-
- //observer for adding/removing children elements
- const observer = new MutationObserver(function (mutations) {
- var childrenMutations = mutations.filter((x) => x.type === "childList");
- if (childrenMutations.length > 0) {
- checkScrollPos(scrollElm);
- }
- });
-
- observer.observe(listInner, { subtree: true, childList: true });
-
- //observer for initialized class
- if (options.initialize == true) {
- const targetNode = element;
-
- const observer2 = new MutationObserver(function (mutations) {
- var classMutations = mutations.filter((x) => x.type === "attributes");
- if (classMutations.length > 0 && targetNode.classList.contains('initialized')) {
- checkScrollPos(scrollElm);
- observer2.disconnect();
- }
- });
- observer2.observe(targetNode, { attributes: true, attributeFilter: ['class'] });
- }
-
- checkScrollPos(scrollElm);
-
- scrollElm.addEventListener("scroll", function () {
- checkScrollPos(this);
- });
-
- function checkScrollPos(scrollContainer) {
- if (scrollContainer.scrollTop + element.offsetHeight > listInner.offsetHeight - 8) {
- element.classList.add('scrollbarShadow--bottom');
- } else {
- element.classList.remove('scrollbarShadow--bottom');
- }
- if (scrollContainer.scrollTop < 8) {
- element.classList.add('scrollbarShadow--top');
- } else {
- element.classList.remove('scrollbarShadow--top');
- }
- }
-
- //checkScrollInit();
-
- //function checkScrollInit() {
- // if (element.offsetHeight >= listInner.offsetHeight) {
- // element.classList.add('scrollbarShadow--noScroll');
- // } else {
- // element.classList.remove('scrollbarShadow--noScroll');
- // }
- //}
-});
diff --git a/public/assets/js/_dependency-control/plugins/tabs.js b/public/assets/js/_dependency-control/plugins/tabs.js deleted file mode 100644 index 74d4efc..0000000 --- a/public/assets/js/_dependency-control/plugins/tabs.js +++ /dev/null @@ -1,28 +0,0 @@ -$.defineAttributePlugin('tabs', function ($element, options) {
- var animating = false,
- dataTab,
- slideSpeed = options.slideSpeed ? options.slideSpeed : 400;
-
- if (!$element.find("[data-tab-trigger]").hasClass('active')) {
- setTimeout(function () { $element.find("[data-tab-trigger]").first().trigger('click'); }, 50);
- }
-
- $element.find("[data-tab-trigger]").click(function (e) {
- e.preventDefault();
- if (animating === true || $(this).hasClass('active')) {
- return;
- }
- animating = true;
- $(this).addClass('active').siblings().removeClass('active');
- dataTab = $(this).data('tab-trigger');
-
- $('[data-tab-content="' + dataTab + '"]').siblings('.active').slideUp(slideSpeed, function () {
- $(this).removeClass('active').removeAttr('style');
- });
-
- $('[data-tab-content="' + dataTab + '"]').slideDown(slideSpeed, function () {
- $(this).addClass('active').removeAttr('style');
- animating = false;
- });
- });
-});
diff --git a/public/assets/js/_dependency-control/plugins/tabtoggle.js b/public/assets/js/_dependency-control/plugins/tabtoggle.js deleted file mode 100644 index 84a0508..0000000 --- a/public/assets/js/_dependency-control/plugins/tabtoggle.js +++ /dev/null @@ -1,27 +0,0 @@ -$$plugins.define('tabtoggle', function (element, options) {
- var activeTab = element.querySelector(".active");
- var sliderNav = element.querySelector(".tabToggle__tabs");
- var activeTabContent = document.querySelector("[data-tabToggle-content].active");
-
- if (element.querySelector(".tabToggle__tab:nth-child(2)").classList.contains("active")) {
- sliderNav.classList.add("slide");
- }
-
- element.addEventListener("click", function (e) {
- if (!(e.target.classList.contains("active"))) {
- activeTab.classList.remove("active");
- activeTab = e.target;
-
- activeTab.classList.add("active");
- sliderNav.classList.toggle("slide");
- activeTabContent.classList.remove("active");
- activeTabContent = document.querySelector("[data-tabToggle-content=" + activeTab.dataset.tabtoggleTarget)
- activeTabContent.classList.add("active");
-
- window.scrollTo({
- top: activeTabContent.getBoundingClientRect().top + window.scrollY - document.querySelector(".header").offsetHeight,
- behavior: 'smooth'
- });
- }
- });
-});
diff --git a/public/assets/js/_dependency-control/plugins/tooltip.js b/public/assets/js/_dependency-control/plugins/tooltip.js deleted file mode 100644 index 2326caf..0000000 --- a/public/assets/js/_dependency-control/plugins/tooltip.js +++ /dev/null @@ -1,45 +0,0 @@ -$$plugins.define('tooltip', ['throttle'], function (element, options, throttle) {
- var openBtn = element.querySelector('.tooltip__btn'),
- tooltipMain = element.querySelector('.tooltip__main');
-
- openBtn.addEventListener('click', (event) => {
- event.preventDefault();
- if (element.classList.contains('tooltip--open')) {
- element.classList.remove('tooltip--open');
- } else {
- $('.tooltip').not(element).removeClass('tooltip--open');
- element.classList.add('tooltip--open');
- }
- });
-
- document.addEventListener('click', function (event) {
- if (element !== event.target && !element.contains(event.target) && element.classList.contains('tooltip--open')) {
- element.classList.remove('tooltip--open');
- }
- });
-
- function tooltipPosition() {
- element.classList.remove('tooltip--bottom');
- element.classList.remove('tooltip--right');
- element.classList.remove('tooltip--left');
-
- if (element.getBoundingClientRect().top < window.innerHeight / 2) {
- element.classList.add('tooltip--bottom');
- } else {
- element.classList.remove('tooltip--bottom');
- }
-
- if (element.getBoundingClientRect().left < tooltipMain.offsetWidth / 2) {
- element.classList.add('tooltip--right');
- }
-
- if (document.body.clientWidth - element.getBoundingClientRect().left < tooltipMain.offsetWidth / 2) {
- element.classList.add('tooltip--left');
- }
- }
-
- tooltipPosition();
-
- window.addEventListener('scroll', throttle(tooltipPosition, 50));
- window.addEventListener('resize', throttle(tooltipPosition, 200));
-});
|
