Ajax.Responders.register({
	onCreate: function() {
		Effect.Appear('loader');
	},
	onComplete: function() {
		Effect.Fade('loader');
	}
});

function preloadImages()
{
	var images = new Array(
		'lang_en_02.png',
		'lang_de_02.png',
		'lang_fr_02.png',
		'lang_it_02.png',
		'bg_navigation_02.png'
	);
	
	for (var i=0;i<images.length;i++) {
		image = new Image(1,1);
		image.src="system/resources/images/" + images[i];
	}
}

preloadImages();

function checkInputs()
{
	var inputs = $$('.required [title]');
	
	for (var index = 0; index < inputs.length; ++index) {
		
		var item = inputs[index];
		var inputValue = item.value;
		var titleValue = item.getAttribute('title');
		
		if(titleValue != '' && inputValue == '') {
			Effect.Shake(item);
			item.focus();
			return false;
		}
	}
	
	if($('uploader')) {
		$('uploader').show();
	}	
	
	if($('submit')) {
		$('submit').value = 'Please wait...';
		$('submit').disabled = true;
	}

	return true;
}

function selectAllNone(sender) 
{
	var checkboxes = Form.getInputs(sender.form, 'checkbox', sender.value);
	checkboxes.each( function(checkbox) {
		checkbox.checked = sender.checked;
	} );
}

function checkBoxes() 
{
	var checkboxes = $$('#site input[name]');
	var boxescheck = 0;
	for (var index = 0; index < checkboxes.length; ++index) {
		var item = checkboxes[index];
		var checkboxName = item.name;
		if(checkboxName == 'ids[]' && item.checked) {
			boxescheck++;
		}
	}
	if(boxescheck > 0 && Element.visible('check') == false) {
		Effect.SlideDown('check');
	}
	if(boxescheck == 0 && Element.visible('check') == true) {
		Effect.SlideUp('check');
	}
}

function deleteRecord(url)
{
	if (confirm(unescape('Delete this record?')) == true) {
		document.location.href = url;
	}
}

function deleteSelected(fieldName, action)
{
	var fieldCount = document.record_form.elements[fieldName].length;
	var isSelected = 0;
	var asSelected = new Array();
	
	for (var i=0;i<fieldCount;i++) {
		if (document.record_form.elements[fieldName][i].checked == true) {
			isSelected ++;
			asSelected.push(document.record_form.elements[fieldName][i].value);
		}
	}
	
	if (isSelected == 0) {
		alert('No records are selected');
	} else {
		if (confirm(unescape('Delete all selected records?')) == true) {
			var ids = asSelected.join(",");
			document.location.href = 'index.php?action=' + action + '&ids=' + ids;
		}
	}
}

function floatCheck(myfield, e, dec)
{
	var key;
	var keychar;
	
	if(window.event) {
	   key = window.event.keyCode;
	} else if(e) {
	   key = e.which;
	} else {
	   return true;
	}
	
	keychar = String.fromCharCode(key);
	
	if((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27)) {
	   return true;
	} else if ((("0123456789.").indexOf(keychar) > -1)) {
	   return true;
	} else if (dec && (keychar == ".")) {
	   myfield.form.elements[dec].focus();
	   return false;
	} else {
	   return false;
	}
}

function intCheck(myfield, e, dec)
{
	var key;
	var keychar;
	
	if(window.event) {
	   key = window.event.keyCode;
	} else if(e) {
	   key = e.which;
	} else {
	   return true;
	}
	
	keychar = String.fromCharCode(key);
	
	if((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27)) {
	   return true;
	} else if ((("0123456789").indexOf(keychar) > -1)) {
	   return true;
	} else if (dec && (keychar == ".")) {
	   myfield.form.elements[dec].focus();
	   return false;
	} else {
	   return false;
	}
}

function openWindow(theURL,winName,winWidth,winHeight,sb,rs)
{
	var winLeft	  = ((screen.availWidth - winWidth) / 2);
	var winTop	  = ((screen.availHeight - winHeight) / 2);
	var sb_string = (sb == "no") ? ",scrollbars=no" : ",scrollbars=yes";
	var rs_string = (rs == "no") ? ",resizable=no" : ",resizable=yes";
	
	window.open(theURL,winName,'toolbar=no' + sb_string + ',status=no,menubar=no' + rs_string + ',location=no,dependent=yes,width=' + winWidth + ',height=' + winHeight + ',left=' + winLeft + ',top=' + winTop);
}


function addProduct(productId, reload)
{
	var amount = ($F('amount_' + productId) != '0') ? $F('amount_' + productId) : '0';
	var url = 'index.php?action=default.collection.add_product&id=' + productId + '&amount=' + amount;
	new Ajax.Request(url, {onSuccess: function() {
		loadCollection();
	}});
	
	if (reload!=null) document.location.href = '#top';
}

function plusCollection(productId)
{
	var url = 'index.php?action=default.collection.plus&id=' + productId;
	new Ajax.Request(url, {onSuccess: function() {
		loadCollection();
	}});
}

function minusCollection(productId)
{
	var url = 'index.php?action=default.collection.minus&id=' + productId;
	new Ajax.Request(url, {onSuccess: function() {
		loadCollection();
	}});
}

function removeCollection(productId)
{
	var url = 'index.php?action=default.collection.remove&id=' + productId;
	new Ajax.Request(url, {onSuccess: function() {
		loadCollection();
	}});
}

function deleteCollection()
{
	var url = 'index.php?action=default.collection.delete';
	new Ajax.Request(url, {onSuccess: function() {
		loadCollection();
	}});
}

function loadCollection()
{
	new Ajax.Updater('collection', 'index.php?action=request.collection.load', {evalScripts:'true'});
}