timelineCtrl.js 6.42 KB
'use strict';

angular.module('newApp')
  .controller('timelineCtrl', function ($scope) {

      $scope.$on('$viewContentLoaded', function () {

          var $timeline_block = $('.timeline-block');

          //hide timeline blocks which are outside the viewport
          $timeline_block.each(function () {
              if ($(this).offset().top > $(window).scrollTop() + $(window).height() * 0.75) {
                  $(this).find('.timeline-icon, .timeline-content').addClass('is-hidden');
              }
          });

          //on scolling, show/animate timeline blocks when enter the viewport
          $(window).on('scroll', function () {
              $timeline_block.each(function () {
                  if ($(this).offset().top <= $(window).scrollTop() + $(window).height() * 0.75 && $(this).find('.timeline-icon').hasClass('is-hidden')) {
                      $(this).find('.timeline-icon, .timeline-content').removeClass('is-hidden').addClass('bounce-in');
                  }
                  if ($(this).offset().top > $(window).scrollTop() + $(window).height() * 0.75) {
                      $(this).find('.timeline-icon, .timeline-content').removeClass('bounce-in').addClass('is-hidden');
                  }
              });
          });


          if ($("#timeline-map").length) {
              var simple_map = new GMaps({
                  el: '#timeline-map',
                  lat: 25.7768889,
                  lng: -80.1788889,
                  zoomControl: true,
                  zoom: 12,
                  zoomControlOpt: {
                      style: 'SMALL',
                      position: 'TOP_LEFT'
                  },
                  panControl: false,
                  streetViewControl: false,
                  mapTypeControl: false,
                  overviewMapControl: false,
                  styles: [
                  {
                      "featureType": "water",
                      "stylers": [
                          {
                              "saturation": 43
                          },
                          {
                              "lightness": -11
                          },
                          {
                              "hue": "#0088ff"
                          }
                      ]
                  },
                  {
                      "featureType": "road",
                      "elementType": "geometry.fill",
                      "stylers": [
                          {
                              "hue": "#ff0000"
                          },
                          {
                              "saturation": -100
                          },
                          {
                              "lightness": 99
                          }
                      ]
                  },
                  {
                      "featureType": "road",
                      "elementType": "geometry.stroke",
                      "stylers": [
                          {
                              "color": "#808080"
                          },
                          {
                              "lightness": 54
                          }
                      ]
                  },
                  {
                      "featureType": "landscape.man_made",
                      "elementType": "geometry.fill",
                      "stylers": [
                          {
                              "color": "#ece2d9"
                          }
                      ]
                  },
                  {
                      "featureType": "poi.park",
                      "elementType": "geometry.fill",
                      "stylers": [
                          {
                              "color": "#ccdca1"
                          }
                      ]
                  },
                  {
                      "featureType": "road",
                      "elementType": "labels.text.fill",
                      "stylers": [
                          {
                              "color": "#767676"
                          }
                      ]
                  },
                  {
                      "featureType": "road",
                      "elementType": "labels.text.stroke",
                      "stylers": [
                          {
                              "color": "#ffffff"
                          }
                      ]
                  },
                  {
                      "featureType": "poi",
                      "stylers": [
                          {
                              "visibility": "off"
                          }
                      ]
                  },
                  {
                      "featureType": "landscape.natural",
                      "elementType": "geometry.fill",
                      "stylers": [
                          {
                              "visibility": "on"
                          },
                          {
                              "color": "#b8cb93"
                          }
                      ]
                  },
                  {
                      "featureType": "poi.park",
                      "stylers": [
                          {
                              "visibility": "on"
                          }
                      ]
                  },
                  {
                      "featureType": "poi.sports_complex",
                      "stylers": [
                          {
                              "visibility": "on"
                          }
                      ]
                  },
                  {
                      "featureType": "poi.medical",
                      "stylers": [
                          {
                              "visibility": "on"
                          }
                      ]
                  },
                  {
                      "featureType": "poi.business",
                      "stylers": [
                          {
                              "visibility": "simplified"
                          }
                      ]
                  }
                  ]
              });
              simple_map.addMarker({
                  lat: 25.7768889,
                  lng: -80.1788889,
                  title: 'Marker with InfoWindow',
                  infoWindow: {
                      content: '<p>Here we are!</p>'
                  }
              });
          }

          window.scrollTo(0, 2);
      });
  });