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 msgConfirm = new Array();
   msgConfirm['ro'] = '<h2>Va mulţumim!</h2><p>Comentariul a fost primit. El va apărea pe site cînd îl va aproba redactorul.</p>'; 
   msgConfirm['ru'] = '<h2>Спасибо!</h2><p>Ваш комментарий был принят. Он появится на сайте после того, как редактор его одобрит.</p>'; 
   msgConfirm['en'] = '<h2>Thank You!</h2><p>Comment will be display after it gets moderated.</p>';

var msgMail = new Array();
	msgMail['ro'] = 'Indicaţi e-mail';
	msgMail['ru'] = 'Отсутствует e-mail';

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

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() {
	// Clear the form after the comment has been submitted successfuly
	//
	$('commenter').value = '';
	$('email').value     = '';
	$('message').value   = '';
	
	// Show the overlay layer
	//
    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]);
}

/* Ajax sending comment*/
function add_comment()
{
 var url  = document.location.pathname + '?ajax=1&comment_action=add_comment';
 
 var data = {
     name : $('commenter').value,
     email : $('email').value,
     message : $('message').value
 }

 var opts = {
     method : 'post',
     parameters : data,
     onSuccess : process_responce
 }

 var myAjax = new Ajax.Request(url, opts);

 return true;
}


function process_responce(originalRequest)
{
 if(parseInt(originalRequest.responseText) == 1)
  showConfirmationMessage();
}


/* 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;
}
/* for old archive */
function correctMonthes(year,month)
{
	var dat = new Date();
	var sIndex = month.selectedIndex;
	var lim = year.value==dat.getFullYear() ? dat.getMonth()+2: 1;
	for (var i = month.options.length-1; i >= lim; i--)
	month.options[i] = null;
		if (year.value != dat.getFullYear()) 
		{
			for (var i=1; i<13 ; i++)
				month.options[month.length] = new Option(mn[i],i);
				var index = month.options[sIndex] ? sIndex : 0;
				month.options[index].selected = 'true';
		}
}


function initPage()
{
     //  Own ID for pages
	document.getElementsByTagName('body')[0].id = 'page-' + getPageAddress();
}

