/**
* Javascript
* standard-funktionen
*
* @author heiko pfefferkorn
* @copyright 2007 i-fabrik gmbh
* @version $Id: core.js,v 1.4 2009-08-12 08:34:58 nico Exp $
*
*/

	var Core = {
		start: function(){

			Core.tTip();

			if ($$('pre')) Core.setPreTagPosition();

			$$('input, select, textarea').each(function(elm){
				elm.addEvent('focus', function(){
					this.addClass('focus');
				}).addEvent('blur', function(){
					this.removeClass('focus');
				});
			});

			Lightbox.init();
		},

		tTip: function() {
			if ($$('.tooltip')) {

				var ttip = new Tips($$('.tooltip'), {
					onShow: function(toolTip) {
						toolTip.setOpacity(0.8);
					},
					maxTitleChars: 50,
					offsets      : {x:12,y:14},
					className    : 'standard'
				});
			}

			if ($$('.tooltip_special')) {
				var ttip_special = new Tips($$('.tooltip_special'), {
					maxTitleChars: 50,
					offsets      : {x:12,y:14},
					className    : 'special'
				});
			}
		},
		setPreTagPosition: function() {
			var pos = 0;

			$$("pre").each(function(pre) {
				var pre_fx   = new Fx.Styles(pre, {duration:400, wait:false});
				var pre_drag = new Drag.Move($(pre), {
					'onStart'    : function(elm) {elm.setOpacity(0.2);},
					'onComplete': function(elm) {
						var f_color = '#33ff66';
						var b_color = '#000000';

						elm.setStyles({'background-color':f_color,'color':b_color});
						elm.setOpacity(1);
						pre_fx.start({
							'background-color': b_color,
							'color'           : f_color
						});
					},
					'limit'     : {x:[0,0], y:[0,getScrollHeight()]}
				});
				pre.setStyle("top", pos);
				var pre_size = pre.getSize();
				pos+= pre_size.size.y+5;
			});
		}

	};

	window.addEvent('domready', Core.start);