  $(document).ready(function() {

    //Drop down menu
         $('ul.sf-menu').superfish({ 
            dropShadows: false,                            // disable drop shadows
            animation: {width:"9em"}                 // create animation that doesn't show! to avoid transparency issues in ie
        });

    //Tooltips on product slider
    $('a.preview').tooltip(function (el) {
               var c = (el.anchor_title != "") ? "<br/>" + el.anchor_title : "";
              return "<img src='"+ el.rel +"' alt='image preview' />"+ c;
     }, {'tooltipID': 'preview'});

    //Set default text in mailing list form
    mailing_list_default = 'your@yours.com';
    mailing_list_email = $("div#extras form .required input:first");
    mailing_list_email.val(mailing_list_default);

    //Clear default text
    mailing_list_email.focus(function() {
        if (mailing_list_email.val()==mailing_list_default) mailing_list_email.val('');
    });
    //Replace default text
    mailing_list_email.blur(function() {
        if (mailing_list_email.val()=='') mailing_list_email.val(mailing_list_default);
    });

    //Validate Mailing List form
    $("div#extras form").submit(function() {
      email_address = $(".required input:first").val();
      if (isValidEmail(email_address) && email_address != mailing_list_default) {
        return true;
      }
      else
      {
        alert('Please enter a valid email address to join our mailing list');
        return false;
      }
    });

    //Validate main contact form
    $("div#contact_form_wrapper form").validate({
       rules: {
         // simple rule, converted to {required:true}
         mf085ffbrp__6: "required",
         mf085ffbrp__2: "required",
         // compound rule
         "mf085ffbrp__3[]": {
           required: true,
           email: true
         }
       }
    });

    //Product Scroller
         product_height = 62; //px
         limit = 0 - $("#product_slider").height() + product_height;     //negative viewport_height
         current_position = 0;

         $("#slide_down").click(function(){
                  req_position = current_position - product_height;
                  if (req_position < limit)
                  {
                                    //do nothing
                                    return false;
                  }
                  else
                  {
                                    current_position -= product_height;
                                    str_amount = current_position + "px";
                                    $("#product_slider").animate({ 
                                                      top: str_amount
                                    }, 500 );
                                    return false;
                  }
          });

         $("#slide_up").click(function(){
                  req_position = current_position + product_height;
                  if (req_position > 0)
                  {
                                    //do nothing
                                    return false;
                  }
                  else
                  {
                                    current_position += product_height;
                                    str_amount = current_position + "px";
                                    $("#product_slider").animate({ 
                                                      top: str_amount
                                    }, 500 );
                                    return false;
                  }
          });
          /*scroll to bottom when contact link is clicked*/
		$('a.contact').click(function() {
			$.scrollTo('#footer', 1000, {easing:'elasout'});
			return false;
		});






  });

function isValidEmail(emailAddress) {
      var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
      return pattern.test(emailAddress);
}
jQuery(function( $ ){
	//borrowed from jQuery easing plugin
	//http://gsgd.co.uk/sandbox/jquery.easing.php
	$.easing.elasout = function(x, t, b, c, d) {
		var s=1.70158;var p=0;var a=c;
		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
		if (a < Math.abs(c)) { a=c; var s=p/4; }
		else var s = p/(2*Math.PI) * Math.asin (c/a);
		return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
	};	
	$('button').click(function(){//this is not the cleanest way to do this, I'm just keeping it short.
		var index = parseInt( $(this).prev('input').val() ) || 0;
		var $c = $(this).parent().next();
		$c.stop().scrollTo('li:eq('+index+')', {speed:2500, easing:'elasout',axis:$c.attr('id')});
	});
	$('#btn_screen').click(function(){
		$.scrollTo( $('#txt_screen').val(), {speed:2500} );
	});
	$('div.container a').click(function(){
		var $c = $(this).parents('.container');
		$c.stop().scrollTo( 0, {speed:2000,axis:$c.attr('id'), queue:true} );
		return false;
	});
});
