window.addEvent('domready', function () {
	/* set focus for forms */
	var giveFocus = function () {
		if ($$('.hasfocus input')[0]) {
			$$('.hasfocus input')[0].focus();
		}
		if ($$('.validationFailed input')[0] && $$('.hasfocus input')[0].get('type') != 'password') { //if hasfocus is a password, keep focus there (because password is reset on submit)
			$$('.validationFailed input')[0].focus();
		}
	};
	giveFocus();
	
	if ($('emailadress')) {
		$('emailadress').set('html', '<a title="Mail '+$('emailadress').get('title') + '@' + 'fotoroos' + '.nl" href="mailto:' + $('emailadress').get('title') + '@' + 'fotoroos' + '.nl">'+ $('emailadress').get('title') + '@' + 'fotoroos' + '.nl</a>'); //prevent spam mail
	}

	/* color code menuitems when clicked on */
	var subsubitems = $$('ul.subsubmenu li a');
	for(i=0; i<subsubitems.length; i++) {
		subsubitems[i].addEvent('click', function(event) {
			for(i=0; i<subsubitems.length; i++) {
				subsubitems[i].setStyle('font-weight', 'normal');
				subsubitems[i].setStyle('color', 'rgb(0,0,0)');
			}
			event.target.setStyle('font-weight', 'bold');
			event.target.setStyle('color', 'rgb(206,0,0)');
		});
	}
	
	var subitems = $$('ul.submenu li a');
	for(i=0; i<subitems.length; i++) {
		subitems[i].addEvent('click', function(event) {
			if (event.target.getFirst()) {
				for(i=0; i<subitems.length; i++) {
					if (subitems[i].getFirst()) {
						subitems[i].getFirst().removeClass('right_red');
						subitems[i].getFirst().addClass('right');
						subitems[i].getParent().removeClass('selected');
						subitems[i].removeClass('selected');
					}
				}
				event.target.getFirst().removeClass('right');
				event.target.getFirst().addClass('right_red');
				event.target.getParent().addClass('selected');
				event.target.addClass('selected');
			}
		});
	}
	
	/* enable smooth scrolling */
	var smscroll = new Fx.SmoothScroll();
	
	/* make content sortable for admins */
	sortNotifier = new Request({
		method: 'post',
		link: 'chain'
	});
	
	
	if ($('catcontainer')) {
		var onCats = false;
		$('catcontainer').addEvent('mouseover', function(event) {
			onCats = true;
		});
		
		$('catcontainer').addEvent('mouseout', function(event) {
			onCats = false;
		});
		
		cycleCats = function () {
			if (!onCats) {
				var curr = $$('ul.cats li.active')[0].getProperty('id').substr(3);
				
				var otherCats = $$('ul.cats li');
				for(i=0; i<otherCats.length; i++) {
					otherCats[i].removeClass('active');
				}
				
				var panels = $$('div.catcontent div.panel');
				for(i=0; i<panels.length; i++) {
					panels[i].removeClass('active');
				}
				
				if (curr == 6) {
					$('cat1').addClass('active');
					$('pan1').addClass('active');
				}
				else {
					var next = Number(curr) + 1;
					$('cat' + (next)).addClass('active');
					$('pan' + (next)).addClass('active');
				}
			}
			setTimeout('cycleCats()', 5750);
		}
		setTimeout('cycleCats()', 5750);
	}
	
	var catbuttons = $$('ul.cats li');
	for(i=0; i<catbuttons.length; i++) {
		catbuttons[i].addEvent('mouseover', function(event) {
			if (!event.target.hasClass('filler')) {
				var otherCats = $$('ul.cats li');
				for(i=0; i<otherCats.length; i++) {
					otherCats[i].removeClass('active');
				}
				
				var panels = $$('div.catcontent div.panel');
				for(i=0; i<panels.length; i++) {
					panels[i].removeClass('active');
				}

				if (event.target.nodeName == 'LI') {
					event.target.addClass('active');
					$('pan' + event.target.getProperty('id').substr(3)).addClass('active');
				}
				else if (event.target.nodeName == 'A') {
					event.target.getParent().addClass('active');
					$('pan' + event.target.getParent().getProperty('id').substr(3)).addClass('active');
				}
			}
		});
	}
	
	if ($('contentlist')) {
		var mySortables = new Sortables('contentlist', {
			constrain: false,
			clone: true,
			handle: '.title',
			opacity: 0.8,
			revert: true,
			onComplete: function() {
				var serialized = mySortables.serialize();
				
				var data = 'page='+$('pageid').get('value')+'&num='+serialized.length+'&';
				for(i=0; i<serialized.length; i++) {
					data += i+'='+serialized[i].substring(4);
					if (i!=serialized.length-1) {
						data += '&';
					}
				}
				if ($('contentlist').hasClass('verkoop')) {
					sortNotifier.send({
						url: BASEURL + '/beheer/verkoop/volgorde/', 
						data: data
					});
				}
				else {
					sortNotifier.send({
						url: BASEURL + '/beheer/tekstvak/volgorde/', 
						data: data
					});
				}
			}
		});
	}
	
	/* warning when deleting items */
	var verwijderitems = $$('.verwijderitem');
	if (verwijderitems) {
		for(i=0; i<verwijderitems.length; i++) {
			verwijderitems[i].addEvent('click', function(event) {
				if (confirm('Zeker weten? Verwijderen kan niet ongedaan worden gemaakt.') == false) {
					event.stop();
				}
			});
		}
	}
	
	/* expand description items */
	var showdescription = $$('.showdescription');
	for(i=0; i<showdescription.length; i++) {
		showdescription[i].addEvent('click', function(event) {
			event.stop();
			var strlen = 'showdescription'.length;
			var id = event.target.id.substring(strlen, event.target.id.length);
			$('showdescription'+id).destroy();
			$('itemdescription'+id).removeClass('hidden');
		});
	}
	
	//datepicker
	if ($$('.jsdatepicker')[0]) {
		new DatePicker('.jsdatepicker .value .htmlInput input', { positionOffset: { x: 2, y: 3 }, allowEmpty: true, inputOutputFormat: 'd-m-Y'});
	};
	
	//fotoservice
	if ($$('ul.afdrukservice')[0]) {
		var listItems = $$('ul.afdrukservice li.item a.title, ul.afdrukservice li.item div.description a');
		for(var i=0; i<listItems.length; i++) {
			listItems[i].addEvent('click', function(event) {
				event.stop();
				
				var list = event.target;
				while(list.nodeName != 'LI') {
					list = list.getParent();
				}
				list.getChildren('div.expand')[0].toggleClass('show');
			});
		}
	}
	
	//bestellen (aantal)
	var removePhoto = $$('input.removePhoto');
	for(i=0; i<removePhoto.length; i++) {
		removePhoto[i].addEvent('click', function(event) {
			var id = event.target.get('id').substr(9,1);
			if (event.target.checked) {
				$('aantal' + id).set('disabled', 'disabled');
				$('formaat' + id).set('disabled', 'disabled');
			}
			else {
				$('aantal' + id).set('disabled', '');
				$('formaat' + id).set('disabled', '');
			}
		});
	}
	
	
	//global formaat instellen
	if ($('globalformaat')) {
		$('globalformaat').addEvent('change', function(event) {
			var formaatboxes = $$('select.formaat');
			for(var i=0; i < formaatboxes.length; i++) {
				formaatboxes[i].value = $('globalformaat').value;
			}
		});
	}
	
	//global aantal instellen
	if ($('globalaantal')) {
		$('globalaantal').addEvent('change', function(event) {
			var aantalboxes = $$('select.aantal');
			for(var i=0; i < aantalboxes.length; i++) {
				aantalboxes[i].value = $('globalaantal').value;
			}
		});
	}
});