diff --git a/static/js/webslides-lite.js b/static/js/webslides-lite.js deleted file mode 100644 index d13bce2..0000000 --- a/static/js/webslides-lite.js +++ /dev/null @@ -1,371 +0,0 @@ -/*================================================================== -Name: WebSlides -Version: Lite (keyboard shortcuts, no trackpad gestures). -Description: HTML presentations made easy. -URL: https://github.com/jlantunez/WebSlides -Thanks @LuisSacristan for your help :) -- -Based on SimpleSlides, by Jenn Schiffer: -https://github.com/jennschiffer/SimpleSlides -==================================================================== */ - -jQuery(document).ready(function($){ - - var ID = { - slideshow : 'webslides', - slide : 'slide', - counter : 'counter', - navigation : 'navigation', - next : 'next', - previous : 'previous', - current : 'current', - verticalClass : 'vertical' // #webslides.vertical - You must add this class to slideshow for vertical sliding - } - var easing = 'swing'; - var slideOffset = 50; // minimun number of pixels for sliding - var verticalDelay = 150; // to avoid 2 slides in a row - var wheelDetail = -6; // how far the wheel turned for Firefox - var wheelDelta = 150; // how far the wheel turned for Chrome - var isMobile = ('ontouchstart' in document.documentElement && navigator.userAgent.match(/Mobi/)); - - var $slideshow = jQuery('#' + ID.slideshow), - $navigation = jQuery('
tags)
- $slideshow.children().not('section').remove();
-
- // add navigational arrows and counter
- $navigation.append(jQuery('').attr('id',ID.previous).html(labels.previous));
- $navigation.append(jQuery('').attr('id',ID.next).html(labels.next));
- $slideshow.append($navigation);
- $slideshow.append(jQuery('').attr('id',ID.counter));
-
- var $counter = jQuery('#'+ID.counter),
- $next = jQuery('#'+ID.next),
- $previous = jQuery('#'+ID.previous);
- $navigation.append($counter);
-
-
- /*** FUNCTIONS ***/
-
- var updateCounter = function() {
- // updates the counter
- $counter.text(slidePointer.current + labels.separator + slidePointer.last);
- };
-
- var updateURL = function() {
- // updates slide state
- var currentURL = document.location.toString();
-
- if (currentURL.indexOf('#') != 1){
- currentURL = currentURL.substr(0,currentURL.indexOf('#'));
- }
-
- history.pushState(null, null, '#slide='+ slidePointer.current );
- };
-
- var hideCurrentSlide = function() {
- // hide the current slide
- if ( $currentSlide ) {
- $currentSlide.hide().removeClass(ID.current);
- }
- };
-
- $slideshow.data('moving', false);
- var nextSlide = function() {
-
- if ($slideshow.hasClass(ID.verticalClass) && !isMobile) { // Is vertical
- if ($slideshow.data('moving')) return;
- $slideshow.data('moving', true);
- jQuery('html').css({overflow: 'hidden'});
- var nextSlide;
-
- nextSlide = $currentSlide.next();
- slidePointer.current = ((slidePointer.current+1)%total);
- if (slidePointer.current == 0) slidePointer.current = total;
-
- // show next slide
- nextSlide.show().addClass(ID.current);
- // scroll to next slide
- var animated = false;
- jQuery('html, body').animate({scrollTop: nextSlide.offset().top}, 500, easing, function() {
- if (!animated) {
- $currentSlide.hide().removeClass(ID.current);
- $currentSlide.siblings('.slide').last().after($currentSlide);
- $currentSlide = nextSlide;
-
- // update counter
- updateCounter();
-
- // update url
- updateURL();
-
- // fire slide event
- fireSlideEvent();
-
- jQuery('html').css({overflow: 'auto'});
- setTimeout(function() {$slideshow.data('moving', false);}, $slideshow.data('iswheel')?verticalDelay:0);
- }
- animated = true;
- });
-
-
-
- } else { // Is landscape
- jQuery("html, body").animate({ scrollTop: 0 }, 0);
- // hide current slide
- hideCurrentSlide();
-
- // get the next slide
- var nextSlide = $currentSlide.next();
-
- nextSlide.show().addClass(ID.current);
- $currentSlide.siblings('.slide').last().after($currentSlide);
- $currentSlide = nextSlide;
- slidePointer.current = ((slidePointer.current+1)%total);
- if (slidePointer.current == 0) slidePointer.current = total;
-
- // update counter
- updateCounter();
-
- // update url
- updateURL();
-
- // fire slide event
- fireSlideEvent();
- }
- };
-
- var previousSlide = function() {
- if ($slideshow.hasClass(ID.verticalClass) && !isMobile) { // Is vertical
- if ($slideshow.data('moving')) return;
- $slideshow.data('moving', true);
- jQuery('html').css({overflow: 'hidden'});
-
- $currentSlide.before($currentSlide.siblings('.slide').last());
-
- var prevSlide = $currentSlide.prev();
-
- if (prevSlide.length == 0) return false;
- // show next slide
- prevSlide.show().addClass(ID.current);
- // scroll to next slide
- var animated = false;
- jQuery('html, body').scrollTop($currentSlide.offset().top);
- jQuery('html, body').animate({scrollTop: prevSlide.offset().top}, 500, easing, function() {
- if (!animated) {
- $currentSlide.hide().removeClass(ID.current);
- $currentSlide = prevSlide;
-
- // not the last slide => go to the next one and increment the counter
- $currentSlide = prevSlide;
- slidePointer.current = slidePointer.current== 1? total : (slidePointer.current-1);
-
- // update counter
- updateCounter();
-
- // update url
- updateURL();
-
- // fire slide event
- fireSlideEvent();
-
- jQuery('html').css({overflow: 'auto'});
- setTimeout(function() {$slideshow.data('moving', false);}, $slideshow.data('iswheel')?verticalDelay:0);
- }
- animated = true;
- });
-
-
-
- } else { // Is landscape
- jQuery("html, body").animate({ scrollTop: 0 }, 0);
- // hide current slide
- hideCurrentSlide();
-
- // get the previous slide
- $currentSlide.before($currentSlide.siblings('.slide').last());
- var prevSlide = $currentSlide.prev();
-
- prevSlide.show().addClass(ID.current);
- $currentSlide = prevSlide;
- slidePointer.current = slidePointer.current== 1? total : (slidePointer.current-1);
-
- // update counter
- updateCounter();
-
- // update URL
- updateURL();
-
- // fire slide event
- fireSlideEvent();
- }
- };
-
- var goToSlide = function(slideNumber) {
- // hide current slide
- hideCurrentSlide();
- moveToSlide = slideNumber-1;
-
- $currentSlide = $slides.eq(moveToSlide);
- $currentSlide.show().addClass(ID.current);
- jQuery('.slide:lt('+(slideNumber-1)+')').each(function() {var $this = jQuery(this); $this.siblings('.slide').last().after($this); });
- slidePointer.current = slideNumber;
-
- // update counter
- updateCounter();
- }
-
- var fireSlideEvent = function(slide) {
- var slideEvent = new window.CustomEvent('slidechanged', {
- detail: { slide: slide || $currentSlide }
- });
- window.dispatchEvent(slideEvent);
- }
-
- /*** INIT SLIDESHOW ***/
-
- // Initially hide all slides
- $slides.hide();
-
- // The first slide is number first, last is slides length
- var slidePointer = {
- current : 1,
- last : $slides.length
- };
-
- var slideState = parseInt(document.location.hash.replace('#slide=', ''));
-
- if ( slideState && (slideState > 0 && slideState <= $slides.length )) {
- // if slide= hash state is given and valid, go to that slide
- goToSlide(slideState);
- }
- else {
- // The first slide is the first slide, so make visible and set the counter...
- $currentSlide = $firstSlide.show().addClass(ID.current);
- updateCounter();
- }
-
-
- /*** EVENTS ***/
-
- // "next" arrow clicked => next slide
- $next.click( function(e){
- e.preventDefault();
- nextSlide();
- });
-
- // "previous" arrow clicked => previous slide
- $previous.click( function(e){
- e.preventDefault();
- previousSlide()
- });
-
- // Add keyboard shortcuts for changing slides
- jQuery(document).keydown(function(e){
- if (!$slideshow.hasClass(ID.verticalClass) || isMobile) {
- $slideshow.data('iswheel', false);
- if (e.which == 39 || e.which == 32) {
- // right key pressed => next slide
- nextSlide();
- return false;
- }
- else if (e.which == 37) {
- // left or l key pressed => previous slide
- previousSlide();
- return false;
- }
- }
- });
-
- // Add keyboard shortcuts for changing slides
- jQuery(document).keydown(function(e){
- if ($slideshow.hasClass(ID.verticalClass) && !isMobile) {
- $slideshow.data('iswheel', false);
- if (e.which == 40 || e.which == 32) {
- // right key pressed => next slide
- nextSlide();
- return false;
- }
- else if (e.which == 38) {
- // left or l key pressed => previous slide
- previousSlide();
- return false;
- }
- }
- });
-
- /**
- * Bind the event HashChange when the prev/next history button was clicked
- */
- jQuery(window).bind("hashchange", function () {
- if (hasHash()) {
- goToSlideIfSlideHashChange();
- } else {
- window.location.reload();
- }
- });
-
- function hasHash() {
- return window.location.hash ? true : false;
- }
-
- function goToSlideIfSlideHashChange() {
- var paramsArr = getArrayOfHashParams();
- var slideObj = $.grep(paramsArr, function (e) {
- return (e.key == "slide");
- });
- if (slideObj.length == 1) {
- goToSlide(slideObj[0].value);
- }
- }
-
- function getArrayOfHashParams() {
- var hash = window.location.hash.replace('#', '').split('&');
- var paramsArr = new Array();
- for (var i = 0; i < hash.length; i++) {
- var itemArray = hash[i].split('=');
- var action = new Object();
- action.key = itemArray[0];
- action.value = itemArray[1];
- paramsArr.push(action);
- }
- return paramsArr;
- }
-
- // Tabs
- jQuery('ul.tabs li').click(function(){
- var $this = jQuery(this);
- var tab_id = $this.attr('data-tab');
- jQuery('ul.tabs li').removeClass('current');
- jQuery('.tab-content').removeClass('current');
- $this.addClass('current');
- jQuery("#"+tab_id).addClass('current');
- })
-
- });
-
- // Prototype better, faster. To show the grid/baseline.png, press Enter on keyboard
- $(document).keypress(function(e) {
- if(e.which == 13) {
- $('body').toggleClass('baseline').css('height', $(document).height());
- }
- });
-
diff --git a/static/js/webslides.js b/static/js/webslides.js
deleted file mode 100644
index 0af5171..0000000
--- a/static/js/webslides.js
+++ /dev/null
@@ -1,414 +0,0 @@
-/*==================================================================
-Name: WebSlides
-Version: Pro (trackpad gestures and keyboard shortcuts).
-Description: HTML presentations made easy.
-URL: https://github.com/jlantunez/WebSlides
-Thanks @LuisSacristan for your help :)
--
-Based on SimpleSlides, by Jenn Schiffer:
-https://github.com/jennschiffer/SimpleSlides
-==================================================================== */
-
-jQuery(document).ready(function($){
-
- var ID = {
- slideshow : 'webslides',
- slide : 'slide',
- counter : 'counter',
- navigation : 'navigation',
- next : 'next',
- previous : 'previous',
- current : 'current',
- verticalClass : 'vertical' // #webslides.vertical - You must add this class to slideshow for vertical sliding
- }
- var easing = 'swing';
- var slideOffset = 50; // minimun number of pixels for sliding
- var verticalDelay = 150; // to avoid 2 slides in a row
- var wheelDetail = -6; // how far the wheel turned for Firefox
- var wheelDelta = 150; // how far the wheel turned for Chrome
- var isMobile = ('ontouchstart' in document.documentElement && navigator.userAgent.match(/Mobi/));
-
- var $slideshow = jQuery('#' + ID.slideshow),
- $navigation = jQuery(' tags)
- $slideshow.children().not('section').remove();
-
- // add navigational arrows and counter
- $navigation.append(jQuery('').attr('id',ID.previous).html(labels.previous));
- $navigation.append(jQuery('').attr('id',ID.next).html(labels.next));
- $slideshow.append($navigation);
- $slideshow.append(jQuery('').attr('id',ID.counter));
-
- var $counter = jQuery('#'+ID.counter),
- $next = jQuery('#'+ID.next),
- $previous = jQuery('#'+ID.previous);
- $navigation.append($counter);
-
-
- /*** FUNCTIONS ***/
-
- var updateCounter = function() {
- // updates the counter
- $counter.text(slidePointer.current + labels.separator + slidePointer.last);
- };
-
- var updateURL = function() {
- // updates slide state
- var currentURL = document.location.toString();
-
- if (currentURL.indexOf('#') != 1){
- currentURL = currentURL.substr(0,currentURL.indexOf('#'));
- }
-
- history.pushState(null, null, '#slide='+ slidePointer.current );
- };
-
- var hideCurrentSlide = function() {
- // hide the current slide
- if ( $currentSlide ) {
- $currentSlide.hide().removeClass(ID.current);
- }
- };
-
- $slideshow.data('moving', false);
- var nextSlide = function() {
-
- if ($slideshow.hasClass(ID.verticalClass) && !isMobile) { // Is vertical
- if ($slideshow.data('moving')) return;
- $slideshow.data('moving', true);
- jQuery('html').css({overflow: 'hidden'});
- var nextSlide;
-
- nextSlide = $currentSlide.next();
- slidePointer.current = ((slidePointer.current+1)%total);
- if (slidePointer.current == 0) slidePointer.current = total;
-
- // show next slide
- nextSlide.show().addClass(ID.current);
- // scroll to next slide
- var animated = false;
- jQuery('html, body').animate({scrollTop: nextSlide.offset().top}, 500, easing, function() {
- if (!animated) {
- $currentSlide.hide().removeClass(ID.current);
- $currentSlide.siblings('.slide').last().after($currentSlide);
- $currentSlide = nextSlide;
-
- // update counter
- updateCounter();
-
- // update url
- updateURL();
-
- // fire slide event
- fireSlideEvent();
-
- jQuery('html').css({overflow: 'auto'});
- setTimeout(function() {$slideshow.data('moving', false);}, $slideshow.data('iswheel')?verticalDelay:0);
- }
- animated = true;
- });
-
-
-
- } else { // Is landscape
- jQuery("html, body").animate({ scrollTop: 0 }, 0);
- // hide current slide
- hideCurrentSlide();
-
- // get the next slide
- var nextSlide = $currentSlide.next();
-
- nextSlide.show().addClass(ID.current);
- $currentSlide.siblings('.slide').last().after($currentSlide);
- $currentSlide = nextSlide;
- slidePointer.current = ((slidePointer.current+1)%total);
- if (slidePointer.current == 0) slidePointer.current = total;
-
- // update counter
- updateCounter();
-
- // update url
- updateURL();
-
- // fire slide event
- fireSlideEvent();
- }
- };
-
- var previousSlide = function() {
- if ($slideshow.hasClass(ID.verticalClass) && !isMobile) { // Is vertical
- if ($slideshow.data('moving')) return;
- $slideshow.data('moving', true);
- jQuery('html').css({overflow: 'hidden'});
-
- $currentSlide.before($currentSlide.siblings('.slide').last());
-
- var prevSlide = $currentSlide.prev();
-
- if (prevSlide.length == 0) return false;
- // show next slide
- prevSlide.show().addClass(ID.current);
- // scroll to next slide
- var animated = false;
- jQuery('html, body').scrollTop($currentSlide.offset().top);
- jQuery('html, body').animate({scrollTop: prevSlide.offset().top}, 500, easing, function() {
- if (!animated) {
- $currentSlide.hide().removeClass(ID.current);
- $currentSlide = prevSlide;
-
- // not the last slide => go to the next one and increment the counter
- $currentSlide = prevSlide;
- slidePointer.current = slidePointer.current== 1? total : (slidePointer.current-1);
-
- // update counter
- updateCounter();
-
- // update url
- updateURL();
-
- // fire slide event
- fireSlideEvent();
-
- jQuery('html').css({overflow: 'auto'});
- setTimeout(function() {$slideshow.data('moving', false);}, $slideshow.data('iswheel')?verticalDelay:0);
- }
- animated = true;
- });
-
-
-
- } else { // Is landscape
- jQuery("html, body").animate({ scrollTop: 0 }, 0);
- // hide current slide
- hideCurrentSlide();
-
- // get the previous slide
- $currentSlide.before($currentSlide.siblings('.slide').last());
- var prevSlide = $currentSlide.prev();
-
- prevSlide.show().addClass(ID.current);
- $currentSlide = prevSlide;
- slidePointer.current = slidePointer.current== 1? total : (slidePointer.current-1);
-
- // update counter
- updateCounter();
-
- // update URL
- updateURL();
-
- // fire slide event
- fireSlideEvent();
- }
- };
-
- var goToSlide = function(slideNumber) {
- // hide current slide
- hideCurrentSlide();
- moveToSlide = slideNumber-1;
-
- $currentSlide = $slides.eq(moveToSlide);
- $currentSlide.show().addClass(ID.current);
- jQuery('.slide:lt('+(slideNumber-1)+')').each(function() {var $this = jQuery(this); $this.siblings('.slide').last().after($this); });
- slidePointer.current = slideNumber;
-
- // update counter
- updateCounter();
- }
-
- var fireSlideEvent = function(slide) {
- var slideEvent = new window.CustomEvent('slidechanged', {
- detail: { slide: slide || $currentSlide }
- });
- window.dispatchEvent(slideEvent);
- }
-
- /*** INIT SLIDESHOW ***/
-
- // Initially hide all slides
- $slides.hide();
-
- // The first slide is number first, last is slides length
- var slidePointer = {
- current : 1,
- last : $slides.length
- };
-
- var slideState = parseInt(document.location.hash.replace('#slide=', ''));
-
- if ( slideState && (slideState > 0 && slideState <= $slides.length )) {
- // if slide= hash state is given and valid, go to that slide
- goToSlide(slideState);
- }
- else {
- // The first slide is the first slide, so make visible and set the counter...
- $currentSlide = $firstSlide.show().addClass(ID.current);
- updateCounter();
- }
-
-
- /*** EVENTS ***/
-
- // "next" arrow clicked => next slide
- $next.click( function(e){
- e.preventDefault();
- nextSlide();
- });
-
- // "previous" arrow clicked => previous slide
- $previous.click( function(e){
- e.preventDefault();
- previousSlide()
- });
-
- // Add keyboard shortcuts for changing slides
- jQuery(document).keydown(function(e){
- if (!$slideshow.hasClass(ID.verticalClass) || isMobile) {
- $slideshow.data('iswheel', false);
- if (e.which == 39 || e.which == 32) {
- // right key pressed => next slide
- nextSlide();
- return false;
- }
- else if (e.which == 37) {
- // left or l key pressed => previous slide
- previousSlide();
- return false;
- }
- }
- });
-
- // Add keyboard shortcuts for changing slides
- jQuery(document).keydown(function(e){
- if ($slideshow.hasClass(ID.verticalClass) && !isMobile) {
- $slideshow.data('iswheel', false);
- if (e.which == 40 || e.which == 32) {
- // right key pressed => next slide
- nextSlide();
- return false;
- }
- else if (e.which == 38) {
- // left or l key pressed => previous slide
- previousSlide();
- return false;
- }
- }
- });
-
-
- /**
- * Bind the event HashChange when the prev/next history button was clicked
- */
- jQuery(window).bind("hashchange", function () {
- if (hasHash()) {
- goToSlideIfSlideHashChange();
- } else {
- window.location.reload();
- }
- });
-
- function hasHash() {
- return window.location.hash ? true : false;
- }
-
- function goToSlideIfSlideHashChange() {
- var paramsArr = getArrayOfHashParams();
- var slideObj = $.grep(paramsArr, function (e) {
- return (e.key == "slide");
- });
- if (slideObj.length == 1) {
- goToSlide(slideObj[0].value);
- }
- }
-
- function getArrayOfHashParams() {
- var hash = window.location.hash.replace('#', '').split('&');
- var paramsArr = new Array();
- for (var i = 0; i < hash.length; i++) {
- var itemArray = hash[i].split('=');
- var action = new Object();
- action.key = itemArray[0];
- action.value = itemArray[1];
- paramsArr.push(action);
- }
- return paramsArr;
- }
-
- // Mouse wheel
- jQuery(window).bind('mousewheel DOMMouseScroll', function(event){
- $slideshow.data('iswheel', true);
- if ($slideshow.hasClass(ID.verticalClass) && !isMobile) {
- if (event.originalEvent.wheelDelta > wheelDelta || event.originalEvent.detail < wheelDetail) {
- // Scroll up
- previousSlide();
- } else if (event.originalEvent.wheelDelta < -wheelDelta || event.originalEvent.detail > -wheelDetail) {
- // scroll down
- nextSlide();
- }
- }
- });
-
- // Touch
- jQuery(window).on("touchstart", function(ev) {
- var e = ev.originalEvent;
- $slideshow.data('touchYStart', e.touches[0].screenY);
- $slideshow.data('touchXStart', e.touches[0].screenX);
- $slideshow.data('touchYEnd', e.touches[0].screenY);
- $slideshow.data('touchXEnd', e.touches[0].screenX);
- });
- jQuery(window).on("touchmove", function(ev) {
- var e = ev.originalEvent;
- $slideshow.data('touchYEnd', e.touches[0].screenY);
- $slideshow.data('touchXEnd', e.touches[0].screenX);
- });
- jQuery(window).on("touchend", function(ev) {
- $slideshow.data('iswheel', false);
- var e = ev.originalEvent;
- var diffX = $slideshow.data('touchXStart') - $slideshow.data('touchXEnd');
- var diffY = $slideshow.data('touchYStart') - $slideshow.data('touchYEnd');
- if ((!$slideshow.hasClass(ID.verticalClass) || isMobile) && Math.abs(diffX) > Math.abs(diffY)) {
- if(diffX < -slideOffset) {
- previousSlide();
- // Scroll up
- } else if(diffX > slideOffset) {
- // scroll down
- nextSlide();
- }
- }
- });
-
- // Tabs
- jQuery('ul.tabs li').click(function(){
- var $this = jQuery(this);
- var tab_id = $this.attr('data-tab');
- jQuery('ul.tabs li').removeClass('current');
- jQuery('.tab-content').removeClass('current');
- $this.addClass('current');
- jQuery("#"+tab_id).addClass('current');
- })
-
- });
-
- // Prototype better, faster. To show the grid/baseline.png, press Enter on keyboard
- $(document).keypress(function(e) {
- if(e.which == 13) {
- $('body').toggleClass('baseline').css('height', $(document).height());
- }
- });
\ No newline at end of file