       jQuery(document).ready(function() {
       jQuery('.fadeThis').cycle({
          fx: 'fade',
		  timeout: 4000 // choose your transition type, ex: fade, scrollUp, shuffle, etc...
      }); 
          
      jQuery(function() {
          
          var name = jQuery("#name"),
              email = jQuery("#email"),
              allFields = jQuery([]).add(name).add(email),
              tips = jQuery("#validateTips");
      
          function updateTips(t) {
              tips.text(t).effect("highlight",{},1500);
          }
  
          function checkLength(o,n,min,max) {
  
              if ( o.val().length > max || o.val().length < min ) {
                  o.addClass('ui-state-error');
                  updateTips("Length of " + n + " must be between "+min+" and "+max+".");
                  return false;
              } else {
                  return true;
              }
  
          }
  
          function checkRegexp(o,regexp,n) {
  
              if ( !( regexp.test( o.val() ) ) ) {
                  o.addClass('ui-state-error');
                  updateTips(n);
                  return false;
              } else {
                  return true;
              }
  
          }
          
          jQuery("#dialog").dialog({
              bgiframe: true,
              autoOpen: false,
              height: 480,
              width: 400,
              modal: true,
              buttons: {
                  'Subscribe': function() {
                      var bValid = true;
                      allFields.removeClass('ui-state-error');
  
                      bValid = bValid && checkLength(name,"username",3,16);
                      bValid = bValid && checkLength(email,"email",6,80);
      
                      bValid = bValid && checkRegexp(email,/^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i,"eg. kate@gmail.com");
                      
                      if (bValid) {
                          
                      jQuery("#subscribeNews").submit();
                          
                      jQuery(this).dialog('close');
                      }
                  },
                  Cancel: function() {
                      jQuery(this).dialog('close');
                  }
              },
              close: function() {
                  allFields.val('').removeClass('ui-state-error');
              }
          });
          
          
          
          jQuery('#subscribe-newsletter-button').click(function() {
              jQuery('#dialog').dialog('open');
          })
          .hover(
              function(){ 
                  jQuery(this).addClass("ui-state-hover"); 
              },
              function(){ 
                  jQuery(this).removeClass("ui-state-hover"); 
              }
          ).mousedown(function(){
              jQuery(this).addClass("ui-state-active"); 
          })
          .mouseup(function(){
                  jQuery(this).removeClass("ui-state-active");
          });
  
      });
      
     
	  
	 
  });
  
