var start_msg = "<font color=blue>Загрузка...</font>";
var err_msg = "<font color=red>Ошибка</font>";

function add_bookmarks(mode,id) {
    x = 'label_'+mode;
    d = document.getElementById(x);
    var req = new JsHttpRequest();
    req.loader="FORM";
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
  	    if (req.responseJS.data != null) {
             d.innerHTML = req.responseJS.data;
             alert('Добавлено в блокнот');
            };
        }
    }
    req.open("POST", '/ajax.php?m=add_bookmarks', true);
    req.send({'id': id,'mode': mode});
};

function send_comment(id,name,email,web,text) {
    var req = new JsHttpRequest();
    d=document.getElementById('send');
    dx=document.getElementById('memo');
    req.loader="FORM";
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
  	    if (req.responseJS.data == 'err') dx.innerHTML = req.responseJS.msg;
  	    else if (req.responseJS.data == 'ok') {dx.innerHTML = ''; d.innerHTML = req.responseJS.msg};
        }
    }
    req.open("POST", '/ajax.php?m=send_comment', true);
    req.send({'id':id, 'name':name, 'email':email, 'web':web, 'text':text});
}

function send_vacancy(id,val) {
    var req = new JsHttpRequest();
    req.loader="FORM";
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
  	    if (req.responseJS.data != null) alert('Предложение отправлено');
        }
    }
    req.open("POST", '/ajax.php?m=send_vacancy', true);
    req.send({'id': id,'val': val});
}

function send_resume(id,val) {
    var req = new JsHttpRequest();
    req.loader="FORM";
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
  	    if (req.responseJS.data != null) alert('Предложение отправлено');
        }
    }
    req.open("POST", '/ajax.php?m=send_resume', true);
    req.send({'id': id,'val': val});
}

function show_form(mode,id,place) {
    d = document.getElementById(place); x = d.innerHTML;
    var req = new JsHttpRequest();
    req.loader="FORM";
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
          if (mode == 'comment') {
  	    if (req.responseJS.data != null) d.innerHTML = req.responseJS.data;
  	    else d.innerHTML = err_msg;
          }
          else {
  	    if (req.responseJS.data != null) d.innerHTML = req.responseJS.data+d.innerHTML;
  	    else d.innerHTML = err_msg;
          };
        }
    }
    req.open("POST", '/ajax.php?m=show_form', true);
    req.send({'id': id,'mode': mode});
};

function subscribe_form(link,place) {
    d = document.getElementById(place);
    var req = new JsHttpRequest();
    req.loader="FORM";
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
  	    if (req.responseJS.data != null) d.innerHTML = req.responseJS.data;
  	    else d.innerHTML = err_msg;
        }
    }
    req.open("POST", '/ajax.php?m=subscribe_form', true);
    req.send({'link': link});
};

function show_info(mode,id,place) {
    d = document.getElementById(place); x = d.innerHTML;
    if ((mode == 'resume_short') || (mode == 'vacancy_short') || (mode == 'resume') || (mode == 'vacancy') || (mode == 'agency') || (mode == 'news') || (mode == 'employer') || (mode == 'education')) {
     if (x.length >= 8) { d.innerHTML = "<br>"; return; };
    };
    if (mode != 'search_city') d.innerHTML = start_msg;
    var req = new JsHttpRequest();
    req.loader="FORM";
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
  	    if (req.responseJS.data != null) d.innerHTML = req.responseJS.data;
  	    else d.innerHTML = err_msg;
        }
    }
    req.open("POST", '/ajax.php?m=show_email', true);
    req.send({'id': id,'mode': mode});
};

function str_replace ( search, replace, subject ) {
    if(!(replace instanceof Array)){
        replace=new Array(replace);
        if(search instanceof Array){//If search    is an array and replace    is a string, then this replacement string is used for every value of search
            while(search.length>replace.length){
                replace[replace.length]=replace[0];
            }
        }
    }
    if(!(search instanceof Array))search=new Array(search);
    while(search.length>replace.length){//If replace    has fewer values than search , then an empty string is used for the rest of replacement values
        replace[replace.length]='';
    }
    if(subject instanceof Array){//If subject is an array, then the search and replace is performed with every entry of subject , and the return value is an array as well.
        for(k in subject){
            subject[k]=str_replace(search,replace,subject[k]);
        }
        return subject;
    }
    for(var k=0; k<search.length; k++){
        var i = subject.indexOf(search[k]);
        while(i>-1){
            subject = subject.replace(search[k], replace[k]);
            i = subject.indexOf(search[k],i);
        }
    }
    return subject;
}

function getParam(module,param,place) {
    document.getElementById(place).innerHTML = start_msg;
    var req = new JsHttpRequest();
    req.loader="FORM";
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
  	    if (req.responseJS.data != null) document.getElementById(place).innerHTML = req.responseJS.data;
  	    else document.getElementById(place).innerHTML = err_msg;
        }
    }
    req.open("POST", '/ajax.php?m='+module, true);
    req.send({'param': param});
};

function checkVacancyData() {
 document.getElementById('okbut').disabled=true;
 document.getElementById('okbut').value='Проверка данных';
 var req = new JsHttpRequest();
 req.loader="FORM";
 req.onreadystatechange = function() {
  if (req.readyState == 4) {
   if (req.responseJS.data == 'ok') {
    document.getElementById('okbut').value='Сохранение данных';
    document.getElementById('addForm').submit();
   }
   else {
    document.getElementById('okbut').value='Отправить';
    document.getElementById('okbut').disabled=false;
    alert(req.responseJS.data);
   };
  }
 };
 m = document.getElementById('regMode').value;
 params='regMode='+m;
 if (m == 1) {
  if (document.getElementById('frmLogin') != null) params += "&login="+str_replace("\"","'",document.getElementById('frmLogin').value);
  if (document.getElementById('frmPassword') != null) params += "&password="+str_replace("\"","'",document.getElementById('frmPassword').value);
 }
 else if (m == 2) {
  if (document.getElementById('reg_login') != null) params += "&login="+str_replace("\"","'",document.getElementById('reg_login').value);
  if (document.getElementById('reg_password') != null) params += "&password="+str_replace("\"","'",document.getElementById('reg_password').value);
  if (document.getElementById('reg_password2') != null) params += "&password2="+str_replace("\"","'",document.getElementById('reg_password2').value);
  if (document.getElementById('reg_email') != null) params += "&email="+str_replace("\"","'",document.getElementById('reg_email').value);
  if (document.getElementById('reg_status') != null) params += "&status="+str_replace("\"","'",document.getElementById('reg_status').value);
  if (document.getElementById('reg_company') != null) params += "&company="+str_replace("\"","'",document.getElementById('reg_company').value);
 }
 if (document.getElementById('frmFirstName') != null) params += "&firstName="+str_replace("\"","'",document.getElementById('frmFirstName').value);
 if (document.getElementById('frmLastName') != null) params += "&lastName="+str_replace("\"","'",document.getElementById('frmLastName').value);
 if (document.getElementById('frmMiddleName') != null) params += "&middleName="+str_replace("\"","'",document.getElementById('frmMiddleName').value);
 if (document.getElementById('frmPhone') != null) params += "&phone="+str_replace("\"","'",document.getElementById('frmPhone').value);
 if (document.getElementById('frmEmail') != null) params += "&mail="+str_replace("\"","'",document.getElementById('frmEmail').value);
 if (document.getElementById('frmICQ') != null) params += "&icq="+str_replace("\"","'",document.getElementById('frmICQ').value);
 if (document.getElementById('frmJob') != null) params += "&job="+str_replace("\"","'",document.getElementById('frmJob').value);
 if ((document.getElementById('age_from') != null) && (document.getElementById('age_from').disabled == false)) params += "&ageFrom="+str_replace("\"","'",document.getElementById('age_from').value);
 if ((document.getElementById('age_to') != null) && (document.getElementById('age_to').disabled == false)) params += "&ageTo="+str_replace("\"","'",document.getElementById('age_to').value);
 req.open("POST",'/ajax.php?m=check_vacancy', true);
 req.send({'params':params});
};

function checkResumeData() {
 document.getElementById('okbut').disabled=true;
 document.getElementById('okbut').value='Проверка данных';
 var req = new JsHttpRequest();
 req.loader="FORM";
 req.onreadystatechange = function() {
  if (req.readyState == 4) {
   if (req.responseJS.data == 'ok') {
    document.getElementById('okbut').value='Сохранение данных';
    document.getElementById('addForm').submit();
   }
   else {
    document.getElementById('okbut').value='Отправить';
    document.getElementById('okbut').disabled=false;
    alert(req.responseJS.data);
   };
  }
 };
 m = document.getElementById('regMode').value;
 params='regMode='+m;
 if (m == 1) {
  if (document.getElementById('frmLogin') != null) params += "&login="+str_replace("\"","'",document.getElementById('frmLogin').value);
  if (document.getElementById('frmPassword') != null) params += "&password="+str_replace("\"","'",document.getElementById('frmPassword').value);
 }
 else if (m == 2) {
  if (document.getElementById('reg_login') != null) params += "&login="+str_replace("\"","'",document.getElementById('reg_login').value);
  if (document.getElementById('reg_password') != null) params += "&password="+str_replace("\"","'",document.getElementById('reg_password').value);
  if (document.getElementById('reg_password2') != null) params += "&password2="+str_replace("\"","'",document.getElementById('reg_password2').value);
  if (document.getElementById('reg_email') != null) params += "&email="+str_replace("\"","'",document.getElementById('reg_email').value);
  if (document.getElementById('reg_status') != null) params += "&status="+str_replace("\"","'",document.getElementById('reg_status').value);
  if (document.getElementById('reg_company') != null) params += "&company="+str_replace("\"","'",document.getElementById('reg_company').value);
 }
 if (document.getElementById('frmFirstName') != null) params += "&firstName="+str_replace("\"","'",document.getElementById('frmFirstName').value);
 if (document.getElementById('frmLastName') != null) params += "&lastName="+str_replace("\"","'",document.getElementById('frmLastName').value);
 if (document.getElementById('frmMiddleName') != null) params += "&middleName="+str_replace("\"","'",document.getElementById('frmMiddleName').value);
 if (document.getElementById('frmPhone') != null) params += "&phone="+str_replace("\"","'",document.getElementById('frmPhone').value);
 if (document.getElementById('frmEmail') != null) params += "&mail="+str_replace("\"","'",document.getElementById('frmEmail').value);
 if (document.getElementById('frmICQ') != null) params += "&icq="+str_replace("\"","'",document.getElementById('frmICQ').value);
 if (document.getElementById('frmJob') != null) params += "&job="+str_replace("\"","'",document.getElementById('frmJob').value);
 req.open("POST",'/ajax.php?m=check_resume', true);
 req.send({'params':params});
};

