function initNav() {
    var _minWidth = 134;
    $('#nav').each(function() {
        var _nav = $(this);
        var _width;
        var _links = $('>li', _nav);
        
        _links.each(function(ind) {
            var _link = $(this);
            
            if (_link.find('.drop').length > 0) {
                var _drop = $('.drop', _link);
                var _dropInner = $('.drop-inner',_link);
                var _content = $('.content',_link);
                var _l = $('.left',_link).width();
                var _r = $('.right',_link).width();
                _width = _dropInner.width();
                if(_width < _minWidth) {
                    _content.css({
                        width:_minWidth - _r - _l
                    });
                    _drop.css({
                        width:_minWidth
                    });
                }
                else {
                    _content.css({
                        width:_width - _r - _l
                    });
                    _drop.css({
                        width:_width
                    });
                }
            }
            
            _link.mouseenter(function() {
                if (_link.find('.drop').length > 0) {
                    $(this).addClass('hover');
                } else {
                    $(this).addClass('hover-non-tab');
                }
                if (_drop) _drop.show();
            }).mouseleave(function() {
                if (_drop) _drop.hide();
                $(this).removeClass('hover').removeClass('hover-non-tab');
            });
        });
    });
}
function initTab(){
	$(window).bind( 'hashchange', function(e) {
		var _anchor = $.param.fragment();			 
		if(_anchor){
			$('.tabs').hide();	
			$('#' + _anchor).show();
			$('#tab-trigger li.selected a').parent().removeClass('selected');
			$('#tab-trigger li').removeClass('selected');
			_anchor && $('a[href="#' + _anchor + '"]').parent().addClass('selected');
		}
	})
	var _default = $('.tabs:first').attr('id');	
	if($.param.fragment() == ''){
		//	2: params argument will completely replace current state.
        $.bbq.pushState(_default, 2);
    } else {
		$(window).trigger('hashchange');
    }
};

function initContactForm(){
	$("form#formContact").submit(function() {
		
		var validated = 1;
			
		if($.trim($("#contact_fullName").val()) == '') {
			$("#contact_fullName").addClass("error");
			validated = 0;
		}
		else {
			$("#contact_fullName").removeClass("error");
		}
			
		if($.trim($("#contact_subject").val()) == '') {
			$("#contact_subject").addClass("error");
			validated = 0;
		}
		else {
			$("#contact_subject").removeClass("error");
		}
			
		if($.trim($("#contact_email").val()) == '') {
			$("#contact_email").addClass("error");
			validated = 0;
		}
		else {
			if(isValidEmailAddress($.trim($("#contact_email").val()))) { 
				$("#contact_email").removeClass("error");
			} else { 
				$("#contact_email").addClass("error");
				validated = 0;
			}
		}
		
		if(validated == 1) {
			return true;
		}
		
		return false;
	});	
}

function initSignupForm() {
	$("form#formSignup").submit(function() {
		var validated = 1;
		
		if($.trim($("#signup_company").val()) == '') {
			$("#signup_company").addClass("error");
			validated = 0;
		}
		else {
			$("#signup_company").removeClass("error");
		}
		
		if($.trim($("#signup_firstName").val()) == '') {
			$("#signup_firstName").addClass("error");
			validated = 0;
		}
		else {
			$("#signup_firstName").removeClass("error");
		}
		
		if($.trim($("#signup_lastName").val()) == '') {
			$("#signup_lastName").addClass("error");
			validated = 0;
		}
		else {
			$("#signup_lastName").removeClass("error");
		}
			
		if($.trim($("#signup_phone").val()) == '') {
			$("#signup_phone").addClass("error");
			validated = 0;
		}
		else {
			$("#signup_phone").removeClass("error");
		}
			
		if($.trim($("#signup_email").val()) == '') {
			$("#signup_email").addClass("error");
			validated = 0;
		}
		else {
			if(isValidEmailAddress($.trim($("#signup_email").val()))) { 
				$("#signup_email").removeClass("error");
			} else { 
				$("#signup_email").addClass("error");
				validated = 0;
			}
		}
		
		if($.trim($("#signup_confirm").val()) == '') {
			$("#signup_confirm").addClass("error");
			validated = 0;
		}
		else {
			if(isValidEmailAddress($.trim($("#signup_confirm").val()))) { 
				$("#signup_confirm").removeClass("error");
			} else { 
				$("#signup_confirm").addClass("error");
				validated = 0;
			}
		}
		
		if($.trim($("#signup_password1").val()) == '') {
			$("#signup_password1").addClass("error");
			validated = 0;
		}
		else {
			$("#signup_password1").removeClass("error");
		}
		
		if($.trim($("#signup_password2").val()) == '') {
			$("#signup_password2").addClass("error");
			validated = 0;
		}
		else {
			$("#signup_password2").removeClass("error");
		}
		
		if(validated == 1) {
			return true;
		}
		
		return false;
	});	
}

function initSigninForm() {
	$("form#formSignin").submit(function() {
		var validated = 1;
			
		if($.trim($("#signin_username").val()) == '') {
			$("#signin_username").addClass("error");
			validated = 0;
		}
		else {
			$("#signin_username").removeClass("error");
		}
		
		if($.trim($("#signin_password").val()) == '') {
			$("#signin_password").addClass("error");
			validated = 0;
		}
		else {
			$("#signin_password").removeClass("error");
		}
		
		if(validated == 1) {
			return true;
		}
		
		return false;
	});	
}

$(function() {
    var url = $('.visual img').attr('src');
    $('.visual img').attr('src', '');
    $('.visual img').load(function() {
        $(this).fadeIn('medium');
    });
    $('.visual img').attr('src', url);
    
    if($('.visual img').length == 0) {
        $('.visual').css('min-height', '0');
    }
});
