Tiggles ツ of Speak Creative
11/28/2018 - 5:39 PM

Cookie.js

Create a Cookie depending on user action to modal. Sign up = 3yr cookie, close = 24hrs.

// this contains a doc.ready and does not need to be wrapped again in it

(function($){
  var jQuery = $;

  $(window).unload(function(e) {
		e.preventDefault();
		//$(".exit-modal").modal();
	});

  $(document).ready(function() {
    var newsletterCookie = getCookie("showNewsletterSignup");

    if (newsletterCookie != "seen") {
      $("#modal-popup").addClass("active");
      $(".popup-bg").addClass("active");
    }

    $('.close-exit-modal').on('click', function(e){
      e.preventDefault();

      var popupModal = $(document).find("#modal-popup");
      var classes = $("#modal-popup").attr("class");

      if ($(popupModal).hasClass("submitted")) {
        createCookie("showNewsletterSignup", "seen", 1095);
      } else {
        createCookie("showNewsletterSignup", "seen", 1);
      }

      $('#modal-popup').addClass("hidden");
      $(".popup-bg").removeClass("active");
    });

    function createCookie(name, value, days) {
      var date, expires;

    	if (days) {
    		date = new Date();
    		date.setTime(date.getTime()+(days*24*60*60*1000));
    		expires = "; expires="+date.toGMTString();
    	} else {
    		expires = "";
    	}

    	document.cookie = name+"="+value+expires+"; path=/";
    }

    function getCookie(cname) {
  	    var name = cname + "=";
  	    var decodedCookie = decodeURIComponent(document.cookie);
  	    var ca = decodedCookie.split(';');
  	    for(var i = 0; i <ca.length; i++) {
  	        var c = ca[i];
  	        while (c.charAt(0) === ' ') {
  	            c = c.substring(1);
  	        }
  	        if (c.indexOf(name) === 0) {
  	            return c.substring(name.length, c.length);
  	        }
  	    }
  	    return "";
  	}


  });
})(jQ171);