(function($){
	$.fn.mhDefaultInputValue = function(callerSettings) { 
		var settings = $.extend({
			inactiveClassName: 'inactiveInput',
			title: this.attr('title')
			}, callerSettings||{});
		
		$(this).addClass(settings.inactiveClassName).val(settings.title);
		
		$(this).focus(function(){
			$(this).removeClass(settings.inactiveClassName);
			if($(this).val() == settings.title){
				$(this).attr('value','');
			}
		});
		
		$(this).blur(function(){
			if($(this).attr('value') == ''){
				$(this).addClass(settings.inactiveClassName);
				$(this).attr('value',settings.title);
			}
		});
	};
	return this;
})(jQuery);

(function($){
	$.fn.mhImageCorners = function(callerSettings) { 
		var settings = $.extend({
			tl: true,
			tr: true,
			bl: true,
			br: true,
			height: 10,
			width: 10,
			cornerPath: '/img/layout/imageCorners/'
			}, callerSettings||{});
		
		var cornerWrapperInfo = new Array();
		cornerWrapperInfo[0] = new Array();
		cornerWrapperInfo[0]['imagePath'] = settings.cornerPath + 'tl.png';
		cornerWrapperInfo[0]['posX'] = 'left';
		cornerWrapperInfo[0]['posY'] = 'top';
		
		cornerWrapperInfo[1] = new Array();
		cornerWrapperInfo[1]['imagePath'] = settings.cornerPath + 'tr.png';
		cornerWrapperInfo[1]['posX'] = 'right';
		cornerWrapperInfo[1]['posY'] = 'top';
		
		cornerWrapperInfo[2] = new Array();
		cornerWrapperInfo[2]['imagePath'] = settings.cornerPath + 'bl.png';
		cornerWrapperInfo[2]['posX'] = 'left';
		cornerWrapperInfo[2]['posY'] = 'bottom';
		
		cornerWrapperInfo[3] = new Array();
		cornerWrapperInfo[3]['imagePath'] = settings.cornerPath + 'br.png';
		cornerWrapperInfo[3]['posX'] = 'right';
		cornerWrapperInfo[3]['posY'] = 'bottom';
		
		var $this = $(this);
		
		// safari needs to wait until window has been loaded until he is able to read width and height
		$(window).load(function(){
			$this.each(function() {
				// read current image styles
				var $this = $(this);
				var iWidth = $this.width();
				var iHeight = $this.height();
				var iFloat = $this.css('float');
				var iMarginTop = $this.css('margin-top');
				var iMarginLeft = $this.css('margin-left');
				var iMarginBottom = $this.css('margin-bottom');
				var iMarginRight = $this.css('margin-right');


				$this.wrap('<div class="imageCorner"></div>');
				var $wrapper = $this.parent();

				// set image styles to wrapper
				$wrapper
					.width(iWidth)
					.height(iHeight)
					.css({
						'float': iFloat,
						'position': 'relative',
						'margin-top' : iMarginTop,
						'margin-bottom' : iMarginBottom,
						'margin-left' : iMarginLeft,
						'margin-right' : iMarginRight

					});

				// add image wrappers
				$wrapper
					.append('<span></span>')
					.append('<span></span>')
					.append('<span></span>')
					.append('<span></span>');

				var $cornerWrappers = $wrapper.find('span');
				$cornerWrappers
					.css({
						'position': 'absolute',
						'display' : 'block'
					})
					.width(settings.width)
					.height(settings.height);

				for (var i=0; i < 4; i++) {
					$cornerWrappers.eq(i)
						.css('background-image', 'url(' + cornerWrapperInfo[i]['imagePath'] + ')')
						.css(cornerWrapperInfo[i]['posX'], '0px')
						.css(cornerWrapperInfo[i]['posY'], '0px');
				}
			});
            $(window).trigger('imageCorner.loaded');
		});
	};
	return this;
})(jQuery);

$(function() {
	if(!ie6) $('#col1 img:not(.button.noCorner), #col2 img:not(.button,.noCorner)').mhImageCorners();	
	
	$('input[type=text][title]').mhDefaultInputValue();
	
	$('.noscript').hide();
	
	userOriginHandler();
});

function changePassword(){
	$('#i_password').removeAttr("disabled");	
}

function fadeMsgSuccess(){
	$('#msgSuccess').fadeOut();
}

function userOriginHandler(){
	var $originWrapper = $('#userOrigin');
	
	if($originWrapper){
		var $choice1 = $('select[name="origin_0"]').eq(0),
			$internetChoiceWrapper = $('#origin_internet_wrapper'),
			$otherWrapper = $('#origin_other_wrapper'),
			$internetOtherWrapper = $('#origin_internet_other_wrapper'),
			$origin3Input = $('#origin_3_input'),
			$originInput = $('#originInput');
				
		$originWrapper.delegate('select, input', 'change', function(){
			buildOriginForm();
			getOriginString();
		});
		
		$origin3Input.focus(function(){
			$('#origin_internet_other_other')[0].checked = true;
		});
		
		function buildOriginForm(){
			// first hierarchy
			if($choice1.val() == 'internet'){
				$internetChoiceWrapper.show();
				$otherWrapper.hide();
			} else if($choice1.val() == 'other'){
				$internetChoiceWrapper.hide();
				$otherWrapper.show();
			} else {
				$otherWrapper.hide();
				$internetChoiceWrapper.hide();
			}
			
			var internetValue = $internetChoiceWrapper.find(':radio:checked:visible').eq(0).val();
			if(internetValue == 'other'){
				$internetOtherWrapper.show();
			} else {
				$internetOtherWrapper.hide();
			}
		}
		
		function getOriginString(){
			var formValues = $originWrapper.find(':visible').serializeArray(),
				result = [];
			$.each(formValues, function(index,obj){	
				if(obj.value.length > 0){
					result.push(obj.value);
				}
			});
			var resultString = result.join(' => ');
			$originInput.val(resultString);
		}
	}
}


jQuery(document).ready(function($) {
	$('.directOrderFormToggle').click(function() {
        var currentParent = $(this).parents('.orderWrapper');
		currentParent.find('.directOrderFormToggle,.directOrderPriceFormToggle').fadeOut("fast");
		currentParent.find('.directOrderPriceFormWrapper').hide();
		currentParent.find('.directOrderFormWrapper').slideDown('medium');
	});
	
	$('.directOrderPriceFormToggle').click(function() {
        var currentParent = $(this).parents('.orderWrapper');
		currentParent.find('.directOrderFormToggle,.directOrderPriceFormToggle').fadeOut("fast");
		currentParent.find('.directOrderFormWrapper').hide();
		currentParent.find('.directOrderPriceFormWrapper').slideDown('medium');
	});

    $('.toggleIndividualOrder').toggle(function(){
        $('.individualOrderWrapper').show();
    }, function(){
        $('.individualOrderWrapper').hide();
    });

	if($('#msgSuccess').size() > 0){
		window.setTimeout("fadeMsgSuccess()", 6000);
	}
	
	justAllowTwoPublications();
	
	$('#newsletter').submit(function(){
		if(isValidEmail($('#email').val())){
			$('#email,#newsletterInfo,label[for=email],#newsletterError,#newsletter input').hide();
			$('#newsletterSuccess').fadeIn('medium');
			
			$.ajax({
				type: "POST",
				url: "/newsletter/?p=subscribe&id=" + $('#subscribeId').val(),
				data: $('#newsletter').serialize(),
				success: function(){}
			});
		} else {
			$('#newsletterError').fadeIn('medium');
		}
		
		return false;
	});
	
});

function isValidEmail(_email) {
	return /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(_email);
}

function justAllowTwoPublications(){
	$('.publicationList input').click(function(){
		if($('.publicationList input:checked').size() == 2){
			$('.publicationList input:not(:checked)').attr('disabled',true);
		} else {
			$('.publicationList input').attr('disabled',false);
		}
		
		var chosenPublications = '';
		$('.publicationList input:checked').each(function(){
			chosenPublications += '<input type="hidden" name="product_ID" value="' + $(this).attr('name') + '" />';
			chosenPublications += '<input type="hidden" name="quantity" value="1" />';
		});
		
		$('#publicationOrderForm').html(chosenPublications);
	});
}