$(document).ready(function(){

	var cFname = $('input[name=name]'), cFcompany = $('input[name=company]'), cFemail = $('input[name=email]'), cFphone = $('input[name=phone]'), cFcomments = $('textarea[name=comments]'), cFhaveproj = $('input[name=have-project]'), cFprojinfo = $('textarea[name=project-info]'), cFaudience = $('input[name=audience]'), cFbudget = $('input[name=budget]'), cFbudget2 = $('input[name=budget2]'), cFddate = $('input[name=due-date]'), cFsubmit = $('input[name=cfsubmit]'), cFfields = $([]).add(cFname).add(cFcompany).add(cFemail).add(cFphone).add(cFcomments).add(cFhaveproj).add(cFprojinfo).add(cFaudience).add(cFbudget).add(cFbudget2).add(cFddate), tips = $('#cf-validate'), domcphr = 'edgedesign.com';
	
	$('body').removeClass('no_JS');
	cFsubmit.val('hasjs');
	
	function init_ie6_fixes(){
		if (!/MSIE (5\.5|6\.)/.test(navigator.userAgent)) return;
		else{
			try{
				h = document.getElementsByTagName('head')[0];
			    var q = document.createElement('script');
				q.src = '/includes/js/iepngfix_tilebg.js';
				q.type = 'text/javascript';
				q.id = "jqueryelement";
				h.appendChild(q);
			} catch (e){
				alert(e);
			}
		}
	}
	
	init_ie6_fixes()
	
	function init_flash(){
		var flash_version = "8.0.0";
		var eiswfurl = "";
		var flashvars = {};
		var params = {};
		var attributes = {};
		if (swfobject.hasFlashPlayerVersion(flash_version)){
			// has Flash
			if(!$('body').hasClass('logos')) swfobject.embedSWF("/images/swfs/logosbutton.swf", "lsnav", "130", "100", flash_version, eiswfurl, flashvars, params, attributes);
			if(!$('body').hasClass('web')) swfobject.embedSWF("/images/swfs/webbutton.swf", "wbnav", "130", "100", flash_version, eiswfurl, flashvars, params, attributes);
			if(!$('body').hasClass('print')) swfobject.embedSWF("/images/swfs/printbutton.swf", "ptnav", "130", "100", flash_version, eiswfurl, flashvars, params, attributes);
			if(!$('body').hasClass('illustration')) swfobject.embedSWF("/images/swfs/IllustrationButton.swf", "innav", "130", "100", flash_version, eiswfurl, flashvars, params, attributes);
			if(!$('body').hasClass('profile')) swfobject.embedSWF("/images/swfs/ProfileButton.swf", "penav", "130", "100", flash_version, eiswfurl, flashvars, params, attributes);
			if(!$('body').hasClass('contact')) swfobject.embedSWF("/images/swfs/ContactButton.swf", "ctnav", "130", "100", flash_version, eiswfurl, flashvars, params, attributes);			
			if($('#pflash').length){
				w = $('#pflash').attr('width');
				h = $('#pflash').attr('height');
				furl = $('#pflash').attr('alt');
				var mleft = (760 - w)/2 + 'px';
				swfobject.embedSWF("/images/swfs/"+ furl +"", "pflash", ""+ w +"", ""+ h +"", flash_version, eiswfurl, flashvars, params, attributes);
				setTimeout(function(){$('#pflash').css({'left':''+mleft+''})},100);
			}
		}
		else{
			// doesn't have Flash
			$('body').addClass('no_JS');
		}
	}
	
	init_flash();
	
	var curpos;
	function bg_hover(obj,dir,pxs){		
		if(dir == 'over'){
			var pos = obj.css('background-position');
			if (pos == 'undefined' || pos == null) {
				var xpos = obj.css("background-position-x");
				var ypos = obj.css("background-position-y");
			}
			else {
				xpos = pos.split(" ")[0];
				ypos = pos.split(" ")[1];
			}
			curpos = xpos + ' ' + ypos;
			newpos = xpos + ' ' + pxs + 'px';
			obj.css({'background-position':newpos});
		}
		else if(dir == 'out'){
			obj.css({'background-position':curpos});
		}
	}
	
	function eval_cb(obj){
		if($(obj).is(':checked')){
			return true;
		}
		else{
			return false;
		}
	}
	
	$('#have-project').click(function(){
		if(eval_cb($(this))){
			$('#project-info').show();
		}
		else{
			$('#project-info').hide();
		}
	});
	
	$('div.slider').slider({
		range: true,
		min: 0,
		max: 50000,
		step: 1000,
		slide: function(event, ui) {
			$('input.budget-val').val('$' + ui.values[0] + '-' + ui.values[1]);
		}
	});
	
	$('input.ddate').datepicker({showOn: 'button', buttonImage: '../images/ui_calendar_icon.png', buttonImageOnly: true});
	
	$('input.send').hover(
		function(){
			bg_hover($(this),'over',-20);
		},
		function(){
			bg_hover($(this),'out',0);
		}
	);
	
	function updateTips(t) {
		tips.text(t);
	}

	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;
		}

	}
	
	$('input.send').click(function(){
		var isvalid = true;
		cFfields.removeClass('ui-state-error');
		isvalid = isvalid && checkLength(cFname,"Name",2,100);
		isvalid = isvalid && checkLength(cFemail,"Email",6,320);
		isvalid = isvalid && checkRegexp(cFemail,/^((([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,"Email must be in format: email@domain.com");
		isvalid = isvalid && checkLength(cFcomments,"Message",2,5000);
		if (isvalid) {
			$(this).attr('disabled','disabled');
			$('#cf-container').fadeTo('normal', 0.33).append('<img src="../images/loading.gif" class="cf-loading" />');
			bg_hover($(this),'over',-40);
			$.post("/includes/php/send.php",{
				senddom: domcphr,
				senderName: cFname.val(),
				senderEmail: cFemail.val(),
				senderMesg: 'Name: '+cFname.val()+'\nCompany: '+cFcompany.val()+'\nEmail: '+cFemail.val()+'\nPhone: '+cFphone.val()+'\nComments/Questions: '+cFcomments.val()+'\nHave Project: '+cFhaveproj.val()+'\nProject Info: '+cFprojinfo.val()+'\nTarget Audience: '+cFaudience.val()+'\nBudget: '+cFbudget.val()+'\nDue Date: '+cFddate.val(),
				senderReply: 'Hello '+cFname.val()+',\n\nThanks for contacting Edge Design. We have received your email and will get back to you as soon as possible. Thanks!\n\nEdge Design\ninfo@edgedesign.com'
				},
				function(data){
					$('#cf-container').html('<p><strong>Success!</strong><br />Your email was sent. Thank you for contacting Edge Design. We&rsquo;ll get back to you as soon as we can.</p>').fadeTo('fast',1);
				}
			 );
		}
		return false;
	});

});