From 0335f63905eb7e964c93d281e1c8409b91e73271 Mon Sep 17 00:00:00 2001 From: Peter Fischer Date: Fri, 1 Oct 2021 15:51:54 +0200 Subject: [PATCH] SlideUtils: Verbesserung/Anpassung auf Presenter --- public/javascripts/slide-utils.js | 178 +++++++++++++++++------------- 1 file changed, 101 insertions(+), 77 deletions(-) diff --git a/public/javascripts/slide-utils.js b/public/javascripts/slide-utils.js index ecd6da0..aa17c7e 100644 --- a/public/javascripts/slide-utils.js +++ b/public/javascripts/slide-utils.js @@ -54,8 +54,8 @@ function scrollIntoViewIfNeeded(target) { if(__slide_data.jump_to_slide === false) return; var rect = target.getBoundingClientRect(); - console.log(rect); - console.log(window.innerHeight); + /*console.log(rect); + console.log(window.innerHeight);*/ if (rect.bottom > window.innerHeight-10) { target.scrollIntoView(false); if(rect.height < window.innerHeight-20) { @@ -76,9 +76,9 @@ function scrollIntoViewIfNeeded(target) { } } -function slide_key_up() { +function slide_prev() { var slides = __slide_data.slides; - console.log('up'); + /*console.log('up');*/ if(__slide_data.index>=0) { var slideslave = $(slides[__slide_data.index]).data('slideslave'); @@ -102,11 +102,11 @@ function slide_key_up() { }*/ } -function slide_key_down() { +function slide_next() { console.log('down; index: ', __slide_data.index); var slides = __slide_data.slides; if(__slide_data.index<(slides.length-1)) { - console.log('bin drin'); + /*console.log('bin drin');*/ __slide_data.index++; if($(slides[__slide_data.index]).hasClass('nodisplay')) { $(slides[__slide_data.index]).removeClass('nodisplay'); @@ -122,7 +122,7 @@ function slide_key_down() { scrollIntoViewIfNeeded(this); var slideslave = $(this).data('slideslave'); if(typeof slideslave !== 'undefined' && slideslave !== '') { - console.log('sslave', $(slideslave)); + /*console.log('sslave', $(slideslave));*/ if($(slideslave).parent().hasClass("nodisplay")) { $(slideslave).parent().removeClass('nodisplay'); $(slideslave).parent().addClass('HASnodisplay'); @@ -140,6 +140,86 @@ function slide_key_down() { } } +function topic_next() { + console.log('Nächstes Thema ...'); + var i = $(".nav-pills:not(.pill-sub-1) > .nav-item > .nav-link.active").parent(); + /*console.log(i);*/ + var n = i.next(); + if(n.length >= 1) { + /*console.log(n);*/ + var a = n.find('a.nav-link'); + /*console.log(a);*/ + if(a.length >= 1) + a[0].click(); + else + console.log("Kein nächster Punkt [FEHLER!]"); + } + else { + console.log('Kein nächster Punkt!'); + } +} + +function topic_prev() { + console.log('Vorheriges Thema ...'); + var i = $(".nav-pills:not(.pill-sub-1) > .nav-item > .nav-link.active").parent(); + /*console.log(i);*/ + var n = i.prev(); + /*console.log(n);*/ + if(n.length >= 1) { + /*console.log(n);*/ + var a = n.find('a.nav-link'); + /*console.log(a);*/ + if(a.length >= 1) + a[0].click(); + else + console.log("Kein vorheriger Punkt [FEHLER!]"); + } + else { + console.log('Kein vorheriger Punkt!'); + } +} + +function page_next() { + console.log('Nächste Seite ...'); + var i = $(".nav-pills.pill-sub-1 > .nav-item > .nav-link.active").parent(); + /*console.log(i);*/ + var n = i.next(); + if(n.length >= 1) { + /*console.log(n);*/ + var a = n.find('a.nav-link'); + /*console.log(a);*/ + if(a.length >= 1) + a[0].click(); + else + console.log("Kein nächster Punkt [FEHLER!]"); + } + else { + console.log('Kein nächster Punkt! -> Nächstes Thema'); + topic_next(); + } +} + +function page_prev() { + console.log('Vorherige Seite ...'); + var i = $(".nav-pills.pill-sub-1 > .nav-item > .nav-link.active").parent(); + /*console.log(i);*/ + var n = i.prev(); + /*console.log(n);*/ + if(n.length >= 1) { + /*console.log(n);*/ + var a = n.find('a.nav-link'); + /*console.log(a);*/ + if(a.length >= 1) + a[0].click(); + else + console.log("Kein vorheriger Punkt [FEHLER!]"); + } + else { + console.log('Kein vorheriger Punkt! -> Vorheriges Thema'); + topic_prev(); + } +} + function register_presentationkeys () { console.log("registering keys ...") @@ -147,84 +227,28 @@ function register_presentationkeys () { console.log('Keydown: ', e.which) switch(e.which) { case 37: - slide_key_up(); + slide_prev(); break; case 39: - slide_key_down(); + slide_next(); break; case 33: - console.log('Nächster Punkt ...'); - var i = $(".nav-pills:not(.pill-sub-1) > .nav-item > .nav-link.active").parent(); - console.log(i); - var n = i.next(); - if(n.length >= 1) { - console.log(n); - var a = n.find('a.nav-link'); - console.log(a); - if(a.length >= 1) - a[0].click(); - else - console.log("Kein nächster Punkt [FEHLER!]"); - } - else { - console.log('Kein nächster Punkt!'); - } + /* BILD RAUF: Punkt erster Ordnung weiter */ + topic_next(); break; case 36: - console.log('Vorheriger Punkt ...'); - var i = $(".nav-pills:not(.pill-sub-1) > .nav-item > .nav-link.active").parent(); - console.log(i); - var n = i.prev(); - console.log(n); - if(n.length >= 1) { - console.log(n); - var a = n.find('a.nav-link'); - console.log(a); - if(a.length >= 1) - a[0].click(); - else - console.log("Kein vorheriger Punkt [FEHLER!]"); - } - else { - console.log('Kein vorheriger Punkt!'); - } + /* POS1: Punkt erster Ordnung zurück */ + topic_prev(); break; case 34: - console.log('Nächster Unter-Punkt ...'); - var i = $(".nav-pills.pill-sub-1 > .nav-item > .nav-link.active").parent(); - console.log(i); - var n = i.next(); - if(n.length >= 1) { - console.log(n); - var a = n.find('a.nav-link'); - console.log(a); - if(a.length >= 1) - a[0].click(); - else - console.log("Kein nächster Punkt [FEHLER!]"); - } - else { - console.log('Kein nächster Punkt!'); - } + case 74: + /* BILD RUNTER: Punkt zweiter Ordnung weiter */ + page_next(); break; case 35: - console.log('Vorheriger Unter-Punkt ...'); - var i = $(".nav-pills.pill-sub-1 > .nav-item > .nav-link.active").parent(); - console.log(i); - var n = i.prev(); - console.log(n); - if(n.length >= 1) { - console.log(n); - var a = n.find('a.nav-link'); - console.log(a); - if(a.length >= 1) - a[0].click(); - else - console.log("Kein vorheriger Punkt [FEHLER!]"); - } - else { - console.log('Kein vorheriger Punkt!'); - } + case 70: + /* ENDE: Punkt zweiter Ordnung zurück */ + page_prev(); break; } }); @@ -237,7 +261,7 @@ function jump_to_slide_true() { function show_next_slide() { if(__slide_data.index != __slide_data.slides.length-1) { - slide_key_down(); + slide_next(); setTimeout(show_next_slide, 0); } else @@ -252,6 +276,6 @@ function show_all_slides() { { console.log(__slide_data.slideslidess[0].index); console.log(__slide_data.slideslidess[0].slides.length-1); - slide_key_down(); + slide_next(); }*/ }