// JavaScript Document
function preloadImages() {
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function unblur() {
	this.blur();
}

function blurLinks() {
	links = document.getElementsByTagName("a");
	for(i=0; i<links.length; i++) {
		links[i].onfocus = unblur;
	}
	inputs = document.getElementsByTagName("input");
	for(i=0; i<inputs.length; i++) {
		if (inputs[i].type == 'button' || inputs[i].type == 'submit') {
			inputs[i].onfocus = unblur;
		}
	}

}


function setFocus(obj) {
	x = document.getElementById(obj);
	x.focus();
}

function flashObjects (objPath,objWidth,objHeight,objTitle,objParam,altPath,altWidth,altHeight,altTitle) {
	document.write('<object type="application/x-shockwave-flash" data="'+objPath+'"width="'+objWidth+'" height="'+objHeight+'" '+objParam+'> \
					<param name="movie" value="'+objPath+'" /> \
					<param name="quality" value="high" /> \
					<param name="wmode" value="transparent" /> \
					<img src="'+altPath+'" width="'+altWidth+'" height="'+altHeight+'" alt="'+altTitle+'" /></object>');
}

function meadiaPlayerObjects (objPath, objWidth, objHeight) {
	document.write('<OBJECT ID="MediaPlayer" CLASSID="CLSID:6BF52A52-394A-11D3-B153-00C04F79FAA6" standby="Loading Microsoft Windows Media Player components..."  TYPE="application/x-oleobject" width="'+objWidth+'" height="'+objHeight+'"  align="center"> \
			            <PARAM NAME="url" VALUE="'+objPath+'"> \
			            <PARAM NAME="AutoStart" VALUE=1> \
			            <PARAM NAME="ShowControls" VALUE=1> \
			            <PARAM NAME="uiMode" VALUE="full"> \
						<PARAM NAME="enableContextMenu" value="true"> \
						<embed type="application/x-mplayer2" src="'+objPath+'" ShowControls="1" AutoStart="1" ShowDisplay="0" ShowStatusBar="1" width="'+objWidth+'" height="'+objHeight+'"></embed> \
				      </OBJECT>');
}

function showMap(el) {
	x = $(el);
	x.style.visibility = 'visible';
}

function markSelected(el) {
	if (el.parentNode.className != 'selected') {
		el.parentNode.className = 'hover';
	}
	//return false;
}

function unmarkSelected(el) {
//	alert (el.parentNode.className);
	if (el.parentNode.className != 'selected') {
		el.parentNode.className = '';
	}
	//return false;
}

function formElementsStyle () {
	if(document.getElementsByTagName) {

		var className = 'tr_hover',
		pattern = new RegExp('(^|\\s+)' + className + '(\\s+|$)'),			
		rows = document.getElementsByTagName('tr');

		for (var i = 0, n = rows.length; i < n; ++i) {
				rows[i].onmouseover = 
					function() {
						this.className += ' ' + className;
					};
				rows[i].onmouseout = 
					function() {
						this.className = this.className.replace(pattern, ' ');
					};
		}
	}
	rows = null;	
}

function popUp(URL) {
	window.open( URL, "myWindow", "status = 1, height = 600, width = 700, resizable = yes" )
}


function popUpPrint(URL) {
	window.open( URL, "myWindow", "status = 1, height = 600, width = 700, toolbar=no, scrollbars=yes, menubar=no, resizable = yes" )	
}

function fade(el) {
	el.style.opacity =  0.5; 
	el.style.MozOpacity =  0.5; 	
	el.style.KhtmlOpacity =  0.5; 
	el.style.filter = "alpha(opacity=50)";
}

function unfade(el) {
	el.style.opacity =  1; 
	el.style.MozOpacity =  1; 	
	el.style.KhtmlOpacity =  1; 
	el.style.filter = "alpha(opacity=100)";
}


function btnHover(el) {
	el.className = 'searchBtnHover';
}

function btnRestore(el) {
	el.className = 'searchBtn';
}

function emptyFormFields(el,val) {
	if (el.value == val ) {
		el.value = '';
	}	
}

function fillFormFields(el,val) {
	if (el.value == '' ) {
		el.value = val;
	}
}

function formValid(form, errors, min_length){
	errors.innerHTML = '';
	var elements = form.getElementsBySelector('[rel="validate"]');
	for (i=0;i<elements.length;i++) {
		if (elements[i] == null || elements[i].value == '' || (min_length>-1 && elements[i].value.length < min_length)) {
			errors.innerHTML = errors.innerHTML + elements[i].title + '<br />';
		}
	}
	if (errors.innerHTML == '') {
		return true;
	} else {
		return false;
	}
}

//main navigation 
navHover = function() {
	if (document.getElementById('mainNav')){
		var lis = document.getElementById("mainNav").getElementsByTagName("LI");
		for (var i=0; i<lis.length; i++) {
			lis[i].onmouseover=function() {
				this.className+=" iehover";
			}
			lis[i].onmouseout=function() {
				this.className=this.className.replace(new RegExp(" iehover\\b"), "");
			}
		}
	}
}


rnavHover = function() {
	if (document.getElementById('regions')){
		var lis = document.getElementById("regions").getElementsByTagName("LI");
		for (var i=0; i<lis.length; i++) {
			lis[i].onmouseover=function() {
				this.className+=" iehover";
			}
			lis[i].onmouseout=function() {
				this.className=this.className.replace(new RegExp(" iehover\\b"), "");
			}
		}
	}
}



if (window.attachEvent) window.attachEvent("onload", navHover);
if (window.attachEvent) window.attachEvent("onload", rnavHover);

function showHideLang(whichLayer) {
  var elem, vis;
  if( document.getElementById ) // this is the way the standards work
    elem = document.getElementById( whichLayer );
  else if( document.all ) // this is the way old msie versions work
      elem = document.all[whichLayer];
  else if( document.layers ) // this is the way nn4 works
    elem = document.layers[whichLayer];
  vis = elem.style;
  // if the style.display value is blank we try to figure it out here
  if(vis.display==''&&elem.offsetWidth!=undefined&&elem.offsetHeight!=undefined)
    vis.display = (elem.offsetWidth!=0&&elem.offsetHeight!=0)?'block':'none';
  vis.display = (vis.display==''||vis.display=='block')?'none':'block';
}

function hideMap() {
	Element.hide('map');
	Element.show('type');
	Element.show('basiclocation');
}

function getIdBySelectedNodeText(text, what, where){
	switch(what){
		case 'category':
		var ajax = new Ajax.Request(rootURL + 'admin/ajax/category.html', {
			method: 'post',
			parameters: 'text=' + text,
			onSuccess: function (transport) {
				where.value = transport.responseText;
			}
		});
		break;
	}
}

function rate($contentid, $rate){
	var ajax = new Ajax.Request(rootURL + 'Ajax_rateit_' + $contentid + '_' + $rate + '.html', {
		method: 'get',
		onSuccess: function (transport) {
			var result = transport.responseText;
			if (result != "")
				$('rating').innerHTML = result;
				
			Effect.Appear('voteresult', {duration: 0.0});
			$('voteresult').innerHTML = successratemessage;
			setTimeout("Effect.Fade('voteresult')", 1000);
		}
	});
}




function validateElement(element, errorContainer, errorMsg, method, param){
	var errorContainer = document.getElementById(errorContainer);
	switch(method) {

		case 'uint': //unsigned integer 
			var validNumberRegex = /^\d+$/;
			
			if (validNumberRegex.test(element.value) && element.value.length >= param)
			{
				element.setAttribute('rel', '');
				errorContainer.innerHTML = '&nbsp;';
			}
			else
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;
			}
		break;
		
		case 'phone':
			var validNumberRegex = /^[+]?\d+$/;
			
			if (validNumberRegex.test(element.value) && element.value.length >= param)
			{
				element.setAttribute('rel', '');
				errorContainer.innerHTML = '&nbsp;';
			}
			else
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;
			}
		break;
		
		case 'url':
			var validUrlRegex = /^(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/;
			
			if (validUrlRegex.test(element.value) && element.value.length >= param)
			{
				element.setAttribute('rel', '');
				errorContainer.innerHTML = '&nbsp;';
			}
			else
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;
			}
		break;

		case 'alphaonly':
			var validAlphaRegex = /^([a-z])+$/;
			
			if (validAlphaRegex.test(element.value) && element.value.length >= param)
			{
				element.setAttribute('rel', '');
				errorContainer.innerHTML = '&nbsp;';
			}
			else
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;
			}
		break;
				
		case 'email':
			var validEmailRegex = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
			
			if (validEmailRegex.test(element.value) && element.value.length >= param)
			{
				element.setAttribute('rel', '');
				errorContainer.innerHTML = '&nbsp;';
			}
			else
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;
			}
		break;
		case 'number':
			var validNumberRegex = /^[-+]?\d+(\.\d+)?$/;
			
			if (validNumberRegex.test(element.value) && element.value.length >= param)
			{
				element.setAttribute('rel', '');
				errorContainer.innerHTML = '&nbsp;';
			}
			else
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;
			}
		break;
		
		  case 'repeatPassword':
		  	if (element.value != param.value){
		    	element.setAttribute('rel','validate');
		    	errorContainer.innerHTML=errorMsg;
		   	}else{
		    	element.setAttribute('rel','');
		    	errorContainer.innerHTML="&nbsp;";    
		   	}
		  break;
		case 'shortdate':
			var validShortDateRegex = /^\d{2}(\/)\d{2}$/
			
			if (validShortDateRegex.test(element.value) && element.value.length >= param)
			{
				element.setAttribute('rel', '');
				errorContainer.innerHTML = '&nbsp';
			}
			else
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;
			}
		break;
	
		case 'checked':
			var cnt = 0;
			var arrSize = param.length;
			var inArr = false;
			for (z=0;z<param.length;z++) {
				if ($(param[z]).checked) {
					inArr = true;
				}
			}
			
			if (!inArr)
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;
			}
			else
			{
				element.setAttribute('rel', '');
				errorContainer.innerHTML = '&nbsp';
			}
		break;
	
		case 'selected':
			if (element.value < param)
			{
				element.setAttribute('rel', 'validate');
				errorContainer.innerHTML = errorMsg;			
			}
			else
			{
				element.setAttribute('rel','');
				errorContainer.innerHTML = '&nbsp;';
			}
		break;
	
		case 'minlength':
			if (element.value.length < param){
				element.setAttribute('rel','validate');
				errorContainer.innerHTML=errorMsg;
			}else{
				element.setAttribute('rel','');
				errorContainer.innerHTML="&nbsp;";				
			}
		break;

		case 'filecheck':
			// param e id na elementa za koito ima preview
			if ($(param) != 'undefined' && $(param) != null){
				element.setAttribute('rel','');
				errorContainer.innerHTML="&nbsp;";				
			}else{
				if (element.value.length < 1){
					element.setAttribute('rel','validate');
					errorContainer.innerHTML=errorMsg;
				}else{
					element.setAttribute('rel','');
					errorContainer.innerHTML="&nbsp;";				
				}
			}
		break;
/*
		case 'filecheck':
			if (($(param) != 'undefined' && $(param) != null) && (element.value.length > 0)){
				element.setAttribute('rel','');					
				errorContainer.innerHTML="&nbsp;";				
			}else{
				element.setAttribute('rel','validate');
				errorContainer.innerHTML=errorMsg;
			}
		break;
	*/	
		case 'rewriteNavigation':
			if (element.value.length < 1){
				element.setAttribute('rel','validate');
				errorContainer.innerHTML=errorMsg;
			}else{
				var validAlphaRegex = /^([a-z])+$/;
			
				if (validAlphaRegex.test(element.value)){

					var ajax = new Ajax.Request(rootURL + 'admin/ajax/rewriteNavigation/'+element.value+'/'+param+'.html', {
						method: 'get',
						onSuccess: function (transport) {
							var result = transport.responseText;
							if (result == "true"){
								element.setAttribute('rel','validate');
								errorContainer.innerHTML=errorMsg;
							}else{
								element.setAttribute('rel','');
								errorContainer.innerHTML="";				
							}
						}
					});
				}else{
					element.setAttribute('rel','validate');
					errorContainer.innerHTML=errorMsg;				
				}
					
			}
		break;
	}
	
} 

function validateForm(errorMsg){
	var elements = $$('[rel="validate"]');
	if (elements.length > 0){
		for(i=0; i<elements.length; i++){
			elements[i].focus();
			elements[i].blur();
		}
	}
	var elements = $$('[rel="validate"]');
	
	if (elements.length > 0){
		alert(errorMsg);
		return false;
	} else {
		return true;
	}
}




function showCurrentDateTime(week_day_number){
    var today=new Date();
    current=today.toLocaleString();
        
    $('clock').innerHTML=current.substr(current.length-8,current.length);
     setTimeout('showCurrentDateTime()',1000);
}