String.prototype.trim = function () {
    return this.replace(/^\s*/, "").replace(/\s*$/, "");
}

function explode (delimiter, string, limit) {
    // Splits a string on string separator and return array of components. If limit is positive only limit number of components is returned. If limit is negative all components except the last abs(limit) are returned.  
    // 
    // version: 1004.2314
    // discuss at: http://phpjs.org/functions/explode    // +     original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     improved by: kenneth
    // +     improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     improved by: d3x
    // +     bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)    // *     example 1: explode(' ', 'Kevin van Zonneveld');
    // *     returns 1: {0: 'Kevin', 1: 'van', 2: 'Zonneveld'}
    // *     example 2: explode('=', 'a=bc=d', 2);
    // *     returns 2: ['a', 'bc=d']
     var emptyArray = { 0: '' };
    
    // third argument is not required
    if ( arguments.length < 2 ||
        typeof arguments[0] == 'undefined' ||        typeof arguments[1] == 'undefined' ) {
        return null;
    }
 
    if ( delimiter === '' ||        delimiter === false ||
        delimiter === null ) {
        return false;
    }
     if ( typeof delimiter == 'function' ||
        typeof delimiter == 'object' ||
        typeof string == 'function' ||
        typeof string == 'object' ) {
        return emptyArray;    }
 
    if ( delimiter === true ) {
        delimiter = '1';
    }    
    if (!limit) {
        return string.toString().split(delimiter.toString());
    } else {
        // support for limit argument        var splitted = string.toString().split(delimiter.toString());
        var partA = splitted.splice(0, limit - 1);
        var partB = splitted.join(delimiter.toString());
        partA.push(partB);
        return partA;    }
}

var COMMON = function(){
	var akt_tulmenu_id = new Array();
	var obj = {
		lightbox_open: function(lb_content,noclose){
			var viewport = document.viewport.getDimensions();
			var win_width = viewport.width; // Usable window width
			var win_height = viewport.height; // Usable window height
			$('lightbox_bg').setStyle({width: win_width+'px'});
			$('lightbox_bg').setStyle({height: win_height+'px'});
			var scroll = Position.realOffset($('maincontent'));
			new Effect.Appear('lightbox_bg', { from: 0.0, to: 0.8, duration: 0.5 });
			$('lightbox').setStyle({top: ((win_height-$('lightbox').getHeight())/2)+'px'});
			$('lightbox').setStyle({left: ((win_width-$('lightbox').getWidth())/2)+'px'});
			$('lightbox_content').innerHTML = lb_content;
			//new Effect.DropOut('lightbox_content',{transition: Effect.Transitions.reverse});
			if(noclose) {
				$('lightbox_close').setStyle({display: 'none'});
			}
			new Effect.SlideDown('lightbox');
		},
		lightbox_open_pub: function(lb_content,noclose){
			var viewport = document.viewport.getDimensions();
			var win_width = viewport.width; // Usable window width
			var win_height = viewport.height; // Usable window height
			$('lightbox_bg').setStyle({width: win_width+'px'});
			$('lightbox_bg').setStyle({height: win_height+'px'});
			var scroll = Position.realOffset($('maincontent'));
			new Effect.Appear('lightbox_bg', { from: 0.0, to: 0.6, duration: 0.5 });
			//alert(win_height+' | '+$('lightbox').getHeight());
			$('lightbox').setStyle({top: ((win_height-$('lightbox').getHeight())/2)+'px'});
			$('lightbox').setStyle({left: ((win_width-$('lightbox').getWidth())/2)+'px'});
			$('lightbox_content').innerHTML = lb_content;
			//new Effect.DropOut('lightbox_content',{transition: Effect.Transitions.reverse});
			if(noclose) {
				$('lightbox_close').setStyle({display: 'none'});
			}
			new Effect.SlideDown('lightbox');
			init_slideshow();
		},
		lightbox_close: function(lb_content){
			//new Effect.Appear('lightbox_bg');
			$('lightbox_content').setStyle({overflow: 'auto'});
			new Effect.toggle('lightbox_bg', 'appear');
			new Effect.DropOut('lightbox');
		},
		search_lightbox_open: function(){
			Position.clone($('maincontent'),$('lightbox_bg'));
			new Effect.Appear('lightbox_bg', { from: 0.0, to: 0.5, duration: 0.5 });
		},
		search_lightbox_close: function(lb_content){
			new Effect.toggle('lightbox_bg', 'appear');
		},
		formvalid1: function(akt_value,inp,def_val,type) {
			if(String.trim(akt_value) == '') {
				inp.value = def_val;
			}
		}
	};
	
	var that = obj;
	return obj;
}();

function dp_init() {
		var divs = $('maincontent').select('.datepicker');
		for(var i=0;i<divs.length;i++) {
			jQuery(divs[i]).datetimepicker({dateFormat: 'yy-mm-dd'});
		}
		
}
