123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398 |
- /* Template: Tivo - SaaS App HTML Landing Page Template
- Author: Inovatik
- Created: Sep 2019
- Description: Custom JS file
- */
- (function($) {
- "use strict";
-
- /* Preloader */
- $(window).on('load', function() {
- var preloaderFadeOutTime = 500;
- function hidePreloader() {
- var preloader = $('.spinner-wrapper');
- setTimeout(function() {
- preloader.fadeOut(preloaderFadeOutTime);
- }, 500);
- }
- hidePreloader();
- });
-
- /* Navbar Scripts */
- // jQuery to collapse the navbar on scroll
- $(window).on('scroll load', function() {
- if ($(".navbar").offset().top > 60) {
- $(".fixed-top").addClass("top-nav-collapse");
- } else {
- $(".fixed-top").removeClass("top-nav-collapse");
- }
- });
- // jQuery for page scrolling feature - requires jQuery Easing plugin
- $(function() {
- $(document).on('click', 'a.page-scroll', function(event) {
- var $anchor = $(this);
- $('html, body').stop().animate({
- scrollTop: $($anchor.attr('href')).offset().top
- }, 600, 'easeInOutExpo');
- event.preventDefault();
- });
- });
- // closes the responsive menu on menu item click
- $(".navbar-nav li a").on("click", function(event) {
- if (!$(this).parent().hasClass('dropdown'))
- $(".navbar-collapse").collapse('hide');
- });
- /* Image Slider - Swiper */
- var imageSlider = new Swiper('.image-slider', {
- autoplay: {
- delay: 2000,
- disableOnInteraction: false
- },
- loop: true,
- spaceBetween: 30,
- slidesPerView: 5,
- breakpoints: {
- // when window is <= 580px
- 580: {
- slidesPerView: 1,
- spaceBetween: 10
- },
- // when window is <= 768px
- 768: {
- slidesPerView: 2,
- spaceBetween: 20
- },
- // when window is <= 992px
- 992: {
- slidesPerView: 3,
- spaceBetween: 20
- },
- // when window is <= 1200px
- 1200: {
- slidesPerView: 4,
- spaceBetween: 20
- },
- }
- });
- /* Text Slider - Swiper */
- var textSlider = new Swiper('.text-slider', {
- autoplay: {
- delay: 6000,
- disableOnInteraction: false
- },
- loop: true,
- navigation: {
- nextEl: '.swiper-button-next',
- prevEl: '.swiper-button-prev'
- }
- });
- /* Video Lightbox - Magnific Popup */
- $('.popup-youtube, .popup-vimeo').magnificPopup({
- disableOn: 700,
- type: 'iframe',
- mainClass: 'mfp-fade',
- removalDelay: 160,
- preloader: false,
- fixedContentPos: false,
- iframe: {
- patterns: {
- youtube: {
- index: 'youtube.com/',
- id: function(url) {
- var m = url.match(/[\\?\\&]v=([^\\?\\&]+)/);
- if ( !m || !m[1] ) return null;
- return m[1];
- },
- src: 'https://www.youtube.com/embed/%id%?autoplay=1'
- },
- vimeo: {
- index: 'vimeo.com/',
- id: function(url) {
- var m = url.match(/(https?:\/\/)?(www.)?(player.)?vimeo.com\/([a-z]*\/)*([0-9]{6,11})[?]?.*/);
- if ( !m || !m[5] ) return null;
- return m[5];
- },
- src: 'https://player.vimeo.com/video/%id%?autoplay=1'
- }
- }
- }
- });
- /* Details Lightbox - Magnific Popup */
- $('.popup-with-move-anim').magnificPopup({
- type: 'inline',
- fixedContentPos: false, /* keep it false to avoid html tag shift with margin-right: 17px */
- fixedBgPos: true,
- overflowY: 'auto',
- closeBtnInside: true,
- preloader: false,
- midClick: true,
- removalDelay: 300,
- mainClass: 'my-mfp-slide-bottom'
- });
-
-
- /* Move Form Fields Label When User Types */
- // for input and textarea fields
- $("input, textarea").keyup(function(){
- if ($(this).val() != '') {
- $(this).addClass('notEmpty');
- } else {
- $(this).removeClass('notEmpty');
- }
- });
- /* Sign Up Form */
- $("#signUpForm").validator().on("submit", function(event) {
- if (event.isDefaultPrevented()) {
- // handle the invalid form...
- sformError();
- ssubmitMSG(false, "Please fill all fields!");
- } else {
- // everything looks good!
- event.preventDefault();
- ssubmitForm();
- }
- });
- function ssubmitForm() {
- // initiate variables with form content
- var email = $("#semail").val();
- var name = $("#sname").val();
- var password = $("#spassword").val();
- var terms = $("#sterms").val();
-
- $.ajax({
- type: "POST",
- url: "php/signupform-process.php",
- data: "email=" + email + "&name=" + name + "&password=" + password + "&terms=" + terms,
- success: function(text) {
- if (text == "success") {
- sformSuccess();
- } else {
- sformError();
- ssubmitMSG(false, text);
- }
- }
- });
- }
- function sformSuccess() {
- $("#signUpForm")[0].reset();
- ssubmitMSG(true, "Sign Up Submitted!");
- $("input").removeClass('notEmpty'); // resets the field label after submission
- }
- function sformError() {
- $("#signUpForm").removeClass().addClass('shake animated').one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() {
- $(this).removeClass();
- });
- }
- function ssubmitMSG(valid, msg) {
- if (valid) {
- var msgClasses = "h3 text-center tada animated";
- } else {
- var msgClasses = "h3 text-center";
- }
- $("#smsgSubmit").removeClass().addClass(msgClasses).text(msg);
- }
- /* Log In Form */
- $("#logInForm").validator().on("submit", function(event) {
- if (event.isDefaultPrevented()) {
- // handle the invalid form...
- lformError();
- lsubmitMSG(false, "Please fill all fields!");
- } else {
- // everything looks good!
- event.preventDefault();
- lsubmitForm();
- }
- });
- function lsubmitForm() {
- // initiate variables with form content
- var email = $("#lemail").val();
- var password = $("#lpassword").val();
-
- $.ajax({
- type: "POST",
- url: "php/loginform-process.php",
- data: "email=" + email + "&password=" + password,
- success: function(text) {
- if (text == "success") {
- lformSuccess();
- } else {
- lformError();
- lsubmitMSG(false, text);
- }
- }
- });
- }
- function lformSuccess() {
- $("#logInForm")[0].reset();
- lsubmitMSG(true, "Log In Submitted!");
- $("input").removeClass('notEmpty'); // resets the field label after submission
- }
- function lformError() {
- $("#logInForm").removeClass().addClass('shake animated').one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() {
- $(this).removeClass();
- });
- }
- function lsubmitMSG(valid, msg) {
- if (valid) {
- var msgClasses = "h3 text-center tada animated";
- } else {
- var msgClasses = "h3 text-center";
- }
- $("#lmsgSubmit").removeClass().addClass(msgClasses).text(msg);
- }
- /* Newsletter Form */
- $("#newsletterForm").validator().on("submit", function(event) {
- if (event.isDefaultPrevented()) {
- // handle the invalid form...
- nformError();
- nsubmitMSG(false, "Please fill all fields!");
- } else {
- // everything looks good!
- event.preventDefault();
- nsubmitForm();
- }
- });
- function nsubmitForm() {
- // initiate variables with form content
- var email = $("#nemail").val();
- var terms = $("#nterms").val();
- $.ajax({
- type: "POST",
- url: "php/newsletterform-process.php",
- data: "email=" + email + "&terms=" + terms,
- success: function(text) {
- if (text == "success") {
- nformSuccess();
- } else {
- nformError();
- nsubmitMSG(false, text);
- }
- }
- });
- }
- function nformSuccess() {
- $("#newsletterForm")[0].reset();
- nsubmitMSG(true, "Subscribed!");
- $("input").removeClass('notEmpty'); // resets the field label after submission
- }
- function nformError() {
- $("#newsletterForm").removeClass().addClass('shake animated').one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() {
- $(this).removeClass();
- });
- }
- function nsubmitMSG(valid, msg) {
- if (valid) {
- var msgClasses = "h3 text-center tada animated";
- } else {
- var msgClasses = "h3 text-center";
- }
- $("#nmsgSubmit").removeClass().addClass(msgClasses).text(msg);
- }
-
- /* Privacy Form */
- $("#privacyForm").validator().on("submit", function(event) {
- if (event.isDefaultPrevented()) {
- // handle the invalid form...
- pformError();
- psubmitMSG(false, "Please fill all fields!");
- } else {
- // everything looks good!
- event.preventDefault();
- psubmitForm();
- }
- });
- function psubmitForm() {
- // initiate variables with form content
- var name = $("#pname").val();
- var email = $("#pemail").val();
- var select = $("#pselect").val();
- var terms = $("#pterms").val();
-
- $.ajax({
- type: "POST",
- url: "php/privacyform-process.php",
- data: "name=" + name + "&email=" + email + "&select=" + select + "&terms=" + terms,
- success: function(text) {
- if (text == "success") {
- pformSuccess();
- } else {
- pformError();
- psubmitMSG(false, text);
- }
- }
- });
- }
- function pformSuccess() {
- $("#privacyForm")[0].reset();
- psubmitMSG(true, "Request Submitted!");
- $("input").removeClass('notEmpty'); // resets the field label after submission
- }
- function pformError() {
- $("#privacyForm").removeClass().addClass('shake animated').one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() {
- $(this).removeClass();
- });
- }
- function psubmitMSG(valid, msg) {
- if (valid) {
- var msgClasses = "h3 text-center tada animated";
- } else {
- var msgClasses = "h3 text-center";
- }
- $("#pmsgSubmit").removeClass().addClass(msgClasses).text(msg);
- }
-
- /* Back To Top Button */
- // create the back to top button
- $('body').prepend('<a href="body" class="back-to-top page-scroll">Back to Top</a>');
- var amountScrolled = 700;
- $(window).scroll(function() {
- if ($(window).scrollTop() > amountScrolled) {
- $('a.back-to-top').fadeIn('500');
- } else {
- $('a.back-to-top').fadeOut('500');
- }
- });
- /* Removes Long Focus On Buttons */
- $(".button, a, button").mouseup(function() {
- $(this).blur();
- });
- })(jQuery);
|