function switchinmetname(switcher){
	if ( switcher.style.marginLeft == '14.1em' ){
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('Инновационные','Ин');
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('медицинские','ме');
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('технологии','т');
		switcher.innerHTML = 'расшифровать';
		switcher.style.marginLeft = '2.6em';
	} else if ( switcher.style.marginLeft == '2.6em' ) {
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('Ин','Инновационные');
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('ме','медицинские');
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('т','технологии');
		switcher.innerHTML = 'сократить';
		switcher.style.marginLeft = '14.1em';
	} else if ( switcher.style.marginLeft == '6.6em' ){
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('четыре','4');
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('ноль','0');
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('четыре','4');
		switcher.innerHTML = 'расшифровать';
		switcher.style.marginLeft = '1.1em';
	} else if ( switcher.style.marginLeft == '1.1em' ) {
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('4','четыре');
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('0','ноль');
		document.getElementById('inmetname').innerHTML = document.getElementById('inmetname').innerHTML.replace('4','четыре');
		switcher.innerHTML = 'сократить';
		switcher.style.marginLeft = '6.6em';
	}
	switcher.blur();
	return false;
}

function searchstyleinout(){
	if ( document.getElementById('searchfield').value == 'поиск' ){
		document.getElementById('searchfield').className = 'normal';
		document.getElementById('searchfield').value = '';
		document.getElementById('searchbutton').disabled = false;
	} else if ( document.getElementById('searchfield').value == '' ){
		document.getElementById('searchfield').className = 'disabled';
		document.getElementById('searchfield').value = 'поиск';
		document.getElementById('searchbutton').disabled = true;
	}
	return false;
}

function showcat(plate){
	plate.className.slice(0,7) == 'section' ? plate.className = plate.className.replace('section','color-section') : plate.className = plate.className.replace('color-section','section');
	return false;
}


function increasecolormenu(currsize){
	document.getElementById('colormenu').style.fontSize = currsize + 'em';
	if (eval(document.getElementById('colormenu').style.fontSize.replace('em','')) <= 0.9) {
		currsize = currsize + 0.2;
		setTimeout('increasecolormenu('+currsize+')',1);
	} else if (eval(document.getElementById('colormenu').style.fontSize.replace('em','')) > 0.9) {
		document.getElementById('colormenu').style.fontSize = '1em';
		document.getElementById('menuswitcher').innerHTML = 'скрыть меню каталога';
	}
}

function decreasecolormenu(currsize){
	document.getElementById('colormenu').style.fontSize = currsize + 'em';
	if (eval(document.getElementById('colormenu').style.fontSize.replace('em','')) > 0.2) {
		currsize = currsize - 0.2;
		setTimeout('decreasecolormenu('+currsize+')',1);
	} else if (eval(document.getElementById('colormenu').style.fontSize.replace('em','')) <= 0.2) {
		document.getElementById('colormenu').style.fontSize = '1px';
		document.getElementById('menuswitcher').innerHTML = 'показать меню каталога';
	}
}

function switchmedindexmenu(switcher){
	if ( document.getElementById('menuswitcher').innerHTML == 'показать меню каталога' ){
		increasecolormenu(0.1);
	} else if ( document.getElementById('menuswitcher').innerHTML == 'скрыть меню каталога' ){
		decreasecolormenu(1);
	}
	switcher.blur();
	return false;
}
//add dkul
function addToOrder()
{
    document.getElementById('fillorder').style.visibility = 'visible'; 
    document.getElementById('addtoorder').disabled = true;
    var articleId = document.getElementById('currentArticleId').value;
    var listArticles = new Array();
    var oldValue = getCookie('addToOrder');
    if(oldValue){
        listArticles.push(oldValue);
    }
    listArticles.push(articleId);
    setCookie('addToOrder', listArticles, "/");
    //deleteCookie('addToOrder', "/");
}

function getCookie(name)  
{        
    var re = new RegExp(name+'=([^;]+)');
    var val = re.exec(document.cookie);
    if (val) {
        return decodeURIComponent(val[1]);
    } else {
        return null
    }
}

function setCookie(name, value, path, domain)
{
    document.cookie = name + "=" + value + ";" + ((path) ? " path=" + path + ";" : "") + ((domain) ? " domain=" + domain + ";" : "") + " expires=" + cookieDate();
    return true;
}
    
function deleteCookie(name, path, domain)
{
    if (getCookie(name)) {
        document.cookie = name + "=" + ((path) ? "; path=" + path : "") + ((domain) ? "; domain=" + domain : "") + "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}

function cookieDate(){
    var d = new Date();
    var cookieLifeTime = d.getTime() + (60 * 60 * 24 * 1000);
    var newDate = new Date(cookieLifeTime);
    return newDate.toGMTString(); 
}

function validateProduct(e){
    var keynum;
    var keychar;
    var regExp = /\d/;
    
    if(window.event) // IE
    {
        keynum = e.keyCode;
    }else if(e.which) // Netscape/Firefox/Opera
    {
        keynum = e.which;
    }
    
    keychar = String.fromCharCode(keynum);
    
    if(keynum && keynum != 8){
        return regExp.test(keychar);
    }
}

function validateField(e, id, mask){
    var keynum;
    var keychar;
    var regExp;    
    var regExpEmail = /^[a-z\d\.\-_]+@[a-z\d\.\-_]{2,}\.[a-z]{2,10}$/i;
    
    if(window.event) // IE
    {
        keynum = e.keyCode;
    }else if(e.which) // Netscape/Firefox/Opera
    {
        keynum = e.which;
    }
    
    var currentValue = $(id).value;
    var labelId = 'label-' + id;
    
    if(keynum && keynum != 8){
        keychar = String.fromCharCode(keynum);
        if(mask == 'number'){
           regExp = /\d/;
        }else if(mask == 'city'){
           regExp = /^[А-яа-я\-\s]*$/i;
        }else if(mask == 'address'){
           regExp = /^[А-яа-я0-9.,\/\-\s]*$/i;
        }else if(mask == 'alpha'){
           regExp = /^[А-яа-я\s]*$/i;
        }else if(mask == 'email'){           
           regExp = /^[a-z\d\.\-_@]*$/i;
        }else if(mask == 'all'){
           regExp = /.*/;
        }
        if(regExp.test(keychar)){            
            if(id == 'postindex'){
                if(currentValue.length + 1 == 6){
                    removeClass(labelId, 'required');
                    errorPostindex = false;    
                }else if(currentValue.length + 1 > 6){
                    return false;            
                }
            }else if(id == 'city' || id == 'address' || id == 'firstname' || id == 'patronymic' || id == 'position' || id == 'lastname' || id == 'organizationname'){
                if(id == 'firstname' || id == 'patronymic'){
                    var vFirstName = $('firstname').value;
                    var vPatronymic = $('patronymic').value;
                    if(vFirstName.length + 1 > 2 && vPatronymic.length + 1 > 2 && trim(vFirstName) != "" && trim(vPatronymic) != ""){
                        removeClass('label-name', 'required');
                        errorName = false;                        
                    }
                }else{
                    if(currentValue.length + 1 > 2 && trim(currentValue) != ""){
                        removeClass(labelId, 'required');
                        switch(id){
                            case 'city':
                                errorCity = false;
                            break;
                            case 'address':
                                errorAddress = false;
                            break;
                            case 'position':
                                errorPosition = false;
                            break;
                            case 'lastname':
                                errorLastname = false;
                            break;
                            case 'organizationname':
                                errorOrganizationname = false;
                            break;
                        }    
                    }
                }            
            }else if(id == 'phonecode' || id == 'phonenumber'){
                 var vPhonecode = $('phonecode').value;
                 var vPhonenumber = $('phonenumber').value;
                 if(vPhonecode.length + 1 > 2 && vPhonecode.length + 1 < 6 && vPhonenumber.length + 1 > 5 && vPhonenumber.length + 1 < 8 
                    && (vPhonenumber.length + vPhonecode.length + 1) == 10)
                 { 
                     removeClass('label-phone', 'required');
                     errorPhone = false;
                 }
            }else if(id == 'email'){
                if(regExpEmail.test(currentValue + keychar)){
                    removeClass(labelId, 'required');
                    errorEmail = false;
                }
            }
            validateFormToSubmit();
            return true;
        }else{
            return false;
        }
    }else{
        if(id == 'postindex'){
            if((currentValue.length - 1)  < 6){
                if(!issetClass(labelId, 'required')){
                    addClass(labelId, 'required');
                    errorPostindex = true;
                }
            }
        }else if(id == 'city' || id == 'address' || id == 'firstname' || id == 'patronymic' || id == 'position' || id == 'lastname' || id == 'organizationname'){
            if(id == 'firstname' || id == 'patronymic'){
                var vFirstName = $('firstname').value;
                var vPatronymic = $('patronymic').value;
                var labelId = 'label-name';
                if((vFirstName.length - 1) < 2 || (vPatronymic.length - 1) < 2){
                    if(!issetClass(labelId, 'required')){
                        addClass(labelId, 'required');
                        errorName = true; 
                    }   
                }
            }else{
                if((currentValue.length - 1)  < 2){
                    if(!issetClass(labelId, 'required')){
                        addClass(labelId, 'required');
                        switch(id){
                            case 'city':
                                errorCity = true;
                            break;
                            case 'address':
                                errorAddress = true;
                            break;
                            case 'position':
                                errorPosition = true;
                            break;
                            case 'lastname':
                                errorLastname = true;
                            break;
                            case 'organizationname':
                                errorOrganizationname = true;
                            break;
                        }
                    }
                }
            }
        }else if(id == 'phonecode' || id == 'phonenumber'){
             var vPhonecode = $('phonecode').value;
             var vPhonenumber = $('phonenumber').value;
             if((vPhonenumber.length + vPhonecode.length - 1) < 10){ 
                 if(!issetClass('label-phone', 'required')){
                     addClass('label-phone', 'required');
                     errorPhone = true;
                 }    
             }
        }else if(id == 'email'){
            if(!regExpEmail.test(currentValue)){
                if(!issetClass(labelId, 'required')){
                     addClass(labelId, 'required');
                     errorEmail = true;
                }
            }
        }
        validateFormToSubmit();
    }    
}

function $(elementId){
    return document.getElementById(elementId);
}

function addClass(id, className)
{
    elementObj = $(id);
    if(elementObj != null) {
        elementObj.className += ' ' + className;
    }
}

function removeClass(id, className) 
{
    classNamePattern = new RegExp('\s*(' + className + ')');
    elementObj = $(id);
    if(elementObj != null) {
        elementObj.className = elementObj.className.replace(classNamePattern, '');
    }
}

function issetClass(id, className) 
{
    classNamePattern = new RegExp('\s*(' + className + ')');
    elementObj = $(id);
    if(elementObj != null) {
        return classNamePattern.test(elementObj.className);
    }
}

var errorPostindex;
var errorCity;
var errorAddress;
var errorName;
var errorPosition;
var errorLastname;
var errorPhone;
var errorEmail;
var errorOrganizationname;
 
function initializeOrderForm(){
    errorPostindex = true;
    errorCity = true;
    errorAddress = true;
    errorName = true;
    errorPosition = true;
    errorLastname = true;
    errorPhone = true;
    errorEmail = true;
    errorOrganizationname = true;
}

function validateFormToSubmit() 
{
    if(!errorPostindex && !errorCity && !errorAddress && !errorName && !errorPosition && !errorLastname && !errorPhone && !errorEmail && !errorOrganizationname){
        $('sendorder').disabled = false;
    }else{
        $('sendorder').disabled = true;
    }
}

function trim(string)
{
    return string.replace(/(^\s+)|(\s+$)/g, "");
}

function getCurrentQuery(){
    var query = trim($('searchfield').value);
    query = query.replace(/"/g, '');
    query = query.replace(/\//g,"");
    query = query.replace(/\\/g,"");
    query = query.replace(/«/g,"");
    query = query.replace(/»/g,"");
    return query;
}

function searchSubmit(){
    var searchQuery = getCurrentQuery();
    if(searchQuery){
        window.location.href='/search/query/' + searchQuery;
        return false;
    }
}
