function registerClickTrigger(hotspot, target, classname)
{
    var tmp = $(hotspot);
    if (!tmp) return;

    tmp.observe('click', (function(evt, hotspot, target, classname){hotspot=$(hotspot);target=$(target);if(target.hasClassName(classname)){hotspot.removeClassName('active');target.removeClassName(classname);}else{ hotspot.addClassName('active');target.addClassName(classname);}}).bindAsEventListener(this, hotspot, target, classname));
}

var pageLang = document.getElementsByTagName('HTML')[0].getAttribute('lang');

var msgName = new Array();
   msgName['ro'] = 'prezentaţi-vă!'; 
   msgName['ru'] = 'представьтесь, пожалуйста!'; 
   msgName['en'] = 'present yourself!';
   
var msgText = new Array();
   msgText['ro'] = 'întroduce-ţi mesajul?'; 
   msgText['ru'] = 'введите Ваше сообщение?'; 
   msgText['en'] = 'enter your message?';
  
var msgMail = new Array();
	msgMail['ro'] = 'indicaţi e-mail';
	msgMail['ru'] = 'отсутствует e-mail';
	msgMail['en'] = 'missing e-mail';	

var msgErrMail = new Array();
	msgErrMail['ro'] = 'e-mail incorect';
	msgErrMail['ru'] = 'e-mail введен неправильно';
	msgErrMail['en'] = 'e-mail incorrect';
	
var closeConfirmationLayerTime = 12000;


function getPageAddress()
{
    if (location.pathname == '/')
        return 'index';
    else
        return location.pathname.replace(/\/?([a-zA-Z0-9-_]+)\/?/g, "$1");
}

// create DOM-element 
function elem(name, attrs, style, text) 
{
    var e = document.createElement(name);
    if (attrs) {
        for (key in attrs) {
            if (key == 'class') {
                e.className = attrs[key];
            } else if (key == 'id') {
                e.id = attrs[key];
            } else {
                e.setAttribute(key, attrs[key]);
            }
        }
    }
    if (style) {
        for (key in style) {
            e.style[key] = style[key];
        }
    }
    if (text) {
        e.appendChild(document.createTextNode(text));
    }
    return e;
}
/***********************/
/*   Validate comments */
/***********************/

/* create element with error-text */
function displayError(elm, tagInfo)
{
    $(elm).insertBefore(tagInfo, $(elm).firstChild);
}

/* close confirmation layer */
function closeConfirmation(elm)
{
	elm.parentNode.addClassName('hidden');
}

/* show confirmation layer */
function showConfirmationMessage() {
    var parent = document.getElementById('comment-form-container');
	if(!$('comment-confirmation'))
	{
	parent.appendChild(elem('div',{'id': 'comment-confirmation'}));    
	$('comment-confirmation').innerHTML = '<img id="close" src="/img/icons/close-confirmation.gif" alt="закрыть окно" onclick="closeConfirmation($(\'close\'));" />' + msgConfirm[pageLang];
	}
	else 
		$('comment-confirmation').removeClassName('hidden');
		
	setTimeout("closeConfirmation($('close'))", closeConfirmationLayerTime);
}

function ifError(){
		if($(arguments[0]))
		       arguments[0].className = 'display';
			else 
                displayError(arguments[1], arguments[2]);
}

/* validate comment-form */
function checkCommentForm()
{
    //var error = 0;
    if(!checkName('commenter'))
	{
				ifError($('error-name'), 'required-name', elem('h3', {'id': 'error-name', 'class': 'display'}, '', msgName[pageLang]));
			    return false;
	}
	else
       if($('error-name'))  
	      $('error-name').className = "hidden";
	
	
	if(!checkMessage())
	{
			ifError($('error-message'), 'required-message', elem('h3', {'id': 'error-message', 'class': 'display'}, '', msgText[pageLang]));
			return false;
		}
		else   
           if($('error-message'))
              $('error-message').className = "hidden";


    //  if(!error)
         add_comment();
		 showConfirmationMessage();

      return false;
}

function checkForm()
{
    //var error = 0;
    if(!checkName('name'))
	{
    //   error = 1;
       if($('error-name'))
          $('error-name').className = 'display';
       else 
           displayError('required-name', elem('h3', {'id': 'error-name', 'class': 'display'}, '', msgName[pageLang]));
       return false;
	}
	else
       if($('error-name'))  
	      $('error-name').className = "hidden";

/* Validate surname */
	if($('surname'))
		{
    		if(!checkName('surname'))
			{
		       if($('error-surname'))
		          $('error-surname').className = 'display';
				else 
	    	       displayError('required-surname', elem('h3', {'id': 'error-surname', 'class': 'display'}, '', msgName[pageLang]));
    	   	    return false;
		    }
			else
		       if($('error-surname'))  
	    		  $('error-surname').className = "hidden";
		}

/* Validate email */
	if($('required-email')){	
			var tmp = $('email');
			if(!tmp.value.replace(/\s/g, '')){

				ifError($('empty-mail'), 'required-email', elem('h3', {'id': 'empty-mail', 'class': 'display'}, '', msgMail[pageLang]));
	        	return false;
			}

			else{ 
	    		if($('empty-mail'))
	    	       $('empty-mail').className = "none";

				if (!checkMail('email')){

					ifError($('error-email'), 'required-email', elem('h3', {'id': 'error-email', 'class': 'display'}, '', msgErrMail[pageLang]));
					return false;
				}
				else
				    if($('error-email'))
	     	           $('error-email').className = "none";
			}
	}

	if(!checkMessage())
	{
    //       error = 1;
           if($('error-message'))
              $('error-message').className = 'display';
           else   
              displayError('required-message', elem('h3', {'id': 'error-message', 'class': 'display'}, '', msgText[pageLang]));
           return false;
	}
	else
           if($('error-message'))  
		      $('error-message').className = "hidden";

}
/* validate name in comment form */
function checkName(elem)
{
   return  ($(elem).value != '')
}
/* validate message in comment form */
function checkMessage()
{
   return ($('message').value != '')  
}
/* validate e-mail */
function checkMail(field)
{
	var tmp;
	if(tmp=$F(field))
       return tmp.match(/^[a-zA-Z0-9][\w-_\.]+@[a-zA-Z0-9][\w-_]+\.[a-zA-Z]{2,5}$/) 
	else
	    return false;
}



