campaign: add missing 20 EUR js code
[gnupg-doc.git] / web / share / campaign / campaign.js
1 /* For mobile devices in landscape orientation, the navbar is in the
2    way of the video.  So hide it automatically then.  */
3 $(document).ready(function() {
4   $(".navbar-fixed-top").autoHidingNavbar({
5     disableAutohide: true,
6     hideOffset: 20
7   });
8   check_autohide = function(event) {
9     let hide = (screen.width < 768) && (screen.height < screen.width);
10     $(".navbar-fixed-top").autoHidingNavbar("setDisableAutohide", !hide);
11     if (!hide) {
12       $(".navbar-fixed-top").autoHidingNavbar("show");
13     }
14   };
15   $(window).on('orientationchange', check_autohide);
16   check_autohide();
17 });
18
19 /* Random starting points for the testimonial carousel.  */
20 $(document).ready(function() {
21   let nr_items_lg = 3 * $("#myCarousel div.item").length;
22   let nr_items_md = 2 * $("#myCarouselMedium div.item").length;
23   let nr_items_xs = 1 * $("#myCarouselSmall div.item").length;
24   let nr_items = Math.min(nr_items_lg, nr_items_md, nr_items_xs);
25
26   let active_item = Math.trunc(nr_items * Math.random());
27
28   let active_slide_lg = Math.trunc(active_item / 3);
29   let active_slide_md = Math.trunc(active_item / 2);
30   let active_slide_xs = Math.trunc(active_item / 1);
31
32   $("#myCarousel div.item").removeClass("active");
33   $("#myCarouselMedium div.item").removeClass("active");
34   $("#myCarouselSmall div.item").removeClass("active");
35
36   $("#myCarousel div.item").eq(active_slide_lg).addClass("active");
37   $("#myCarouselMedium div.item").eq(active_slide_md).addClass("active");
38   $("#myCarouselSmall div.item").eq(active_slide_xs).addClass("active");
39 });
40
41 /* Advance carousel by swiping.  */
42 $(document).ready(function() {
43   $('.carousel').bcSwipe({ threshold: 50 });
44 });
45
46 /* Defer loading Youtube iframe until the user clicks on the video.  */
47 $(document).ready(function() {
48   /* For the video preview, we use this for devices without hover events.  */
49   if ("ontouchstart" in document.documentElement) {
50     $("body").addClass("touch");
51   }
52
53   /* Click handler for all videos.  */
54   $(".camp-video").one("click", function() {
55     let yt_id = $(this).data("embed");
56     $(this).html('<iframe class="embed-responsive-item" allowfullscreen src="https://www.youtube.com/embed/' + yt_id + '?autoplay=1&rel=0"></iframe>');
57   });
58 });
59
60 /* Fill donation amounts w/ javascript if possible.  */
61 $(document).ready(function() {
62   let vals = ["500", "200", "100", "50", "20", "10", "5"];
63
64   for (let value of vals) {
65     $(".amount-btn-" + value.toString()).attr("href","#");
66     $(".amount-btn-" + value.toString()).one("click",function() {
67       $("#amountother").attr("value",value.toString());
68     });
69   }
70 });