var is_max = false;
var tmp = false;
var active_navi_img = false;
var layer_indices = new Array();;

Event.observe(window, 'load', function() {

	$$('input.switch').each(function(el) {
		el.onchange = function() {
			var rels = $(el).readAttribute('rel').gsub(' ','').split(',');

			rels.each(function(s) {
			
				var commands = ['enable','disable'];
				var args = s.split(':');
				
				if(args.size() < 2)
					return;
				
				if( commands.indexOf(args[0]) == -1)
					return;
				
				var func = '';
				if( el.checked && args[0] == 'disable'
					|| (! el.checked) && args[0] == 'enable')
					func = 'disable';
				else
					func = 'enable';
				
				$(el.form).getElementsBySelector('select[name='+args[1]+']').invoke(func);
				$(el.form).getElementsBySelector('input[name='+args[1]+']').invoke(func);

			});
		}
	});

	$$('input.overwrite').each(function(el) {
		el.onchange = function() {
			prefix = 'overwrite_';
			el_name = el.name.substring( prefix.length );
			if( ! el.checked )
			{				
				// overwrite_<element.name>
				disable( el.form.elements[ el_name ] );
			}
			else 
			{
				enable( el.form.elements[ el_name ] );
			}
			return true;
		}
	});
	
	$$('select.chooseOrNew').each(function(el) {
		el.onchange = function() {
			if( el.selectedIndex != 0 )
			{				
				disable( el.form.elements[ el.name + "_new"] );
			}
			else 
			{
				enable( el.form.elements[ el.name + "_new"] );
			}
			return true;
		}
	});
	
	$$('button.selectMod').each(function(el) {
		el.onclick = function() {
		
			var elSel = el.form.elements[ el.getAttribute("rel")];
			
			if( el.value == 'add' )
			{
				var val = prompt(unescape('Eintrag hinzuf%FCgen'));
				if( val == null || val.length == 0 )
					return;
				
				var elOptNew = document.createElement('option');
				elOptNew.text = val;
				elOptNew.value = val;
				try {
			    	elSel.add(elOptNew, null); // standards compliant; doesn't work in IE
			  	}
			  	catch(ex) {
			    	elSel.add(elOptNew); // IE only
			    }
			}
			else if( el.value == 'remove')
			{			
				if( elSel.selectedIndex == -1 )
					alert(unescape('Kein Eintag ausgew%E4hlt'));
				var i;
				for (i = elSel.length - 1; i>=0; i--) {
					if (elSel.options[i].selected) {
						elSel.remove(i);
					}
				}
			}
		}
	});
	
	$$('.submitter').each(function(el) {
		el.onclick = function() {
			if( el.parentNode == "[object HTMLFormElement]" ) {
				el.parentNode.submit();
			}	
		}
	});
	
	$$('.onChangeSubmit').each(function(el) {
		el.onchange = function() {
			el.form.submit();
		}
	});
	
	$$('input.confirm_deletion').each(function(el) {
		el.onclick = function() {
			return confirm(unescape('Wollen sie den Eintrag wirklich l%F6schen?'));
		}
	});
	
	$$('input.validate_submit').each(function(el) {
		el.onclick = function() {
			return validate_form(el.form);
		}
	});
	
	$$('button.passwordGenerator').each(function(el) {
		el.onclick = function() {
			var currentTime = new Date();
			el.form.password.value = hex_md5(el.form.elements[ 'name'].value + ':' + currentTime.getTime() ).substr(0,8);
			el.form.password.focus();
			el.form.password.select();
			return false;
		}
	});
	

	
	$$('#chocolart .topNavigation').each(function(el) {
		el.onmouseover = function() {
			//if( window.clipboardData && document.compatMode ) {
			//	return true;
			//}
			navi_images = document.getElementsBySelector('#chocolart .topNavigation');
			for (var i = 0; i < navi_images.length; ++i) {
				layer_indices[i] = navi_images[i].style.zIndex;
				if(navi_images[i].style.zIndex == 13)
					active_navi_img = navi_images[i];
				--navi_images[i].style.zIndex;
			}
			el.style.zIndex = 13;
			return true;
		},
		
		el.onmouseout = function() {
			//if( window.clipboardData && document.compatMode ) {
			//	return true;
			//}
			navi_images = document.getElementsBySelector('#chocolart .topNavigation');
			for (var i = 0; i < navi_images.length; ++i) {
				navi_images[i].style.zIndex = layer_indices[i];
			}
			return true;
		}
	});

	popup = document.getElementById('errorPopup');
	if(popup) {
		new Effect.SlideDown(popup ).afterFinish(new Effect.SlideUp(popup, { delay: 3.0 }));
	}

});
