  var request;
  if( typeof XMLHttpRequest == "undefined" ) {
	request = new ActiveXObject("Microsoft.XMLHTTP");
  } else {
	request = null;
	request = new XMLHttpRequest();
  }

function ajax(url, vars, callbackFunction) {
  request.open("POST", url, true);
  request.setRequestHeader("Content-Type",
                           "application/x-www-form-urlencoded; charset=UTF-8;");
 
  request.onreadystatechange = function() {
    if (request.readyState == 4 && request.status == 200) {
      if (request.responseText) {
        callbackFunction(request.responseText);
      }
    }
  };
  request.send(vars);
}

function ajax_markWords(){
    var look = getObj('lookfor');
    if(look.value != ''){
	ajax('/dynamic.php','ac=14&msg='+encodeURIComponent(look.value),okSearch_silent);
    }
    return false;
}

function ajax_doSearch(){
    var look = getObj('lookfor');
    var word = look.value;
    var sero = getObj('sero');
    var perform = getObj('perform');
    
    var sop_forum = getObj('sop_forum');
    var sop_info = getObj('sop_info');
    var sop_board = getObj('sop_board');
    var sop_ylex = getObj('sop_yle');
    var sop_map = getObj('sop_map');
    var sop_spektr = getObj('sop_spektr');
    var sop_kauppatori = getObj('sop_kauppatori');
    var vbuser = getObj('vbuser');
    
    var opts = '1,1,1,1,1,1,1';
    
    if((sop_forum != null) && (sop_board != null) && (sop_info != null) && (sop_map != null) && (sop_spektr != null)){
	if(sop_forum.checked) { sop_forum = '1' } else { sop_forum = 0 };
	if(sop_info.checked) { sop_info = '1' } else { sop_info = 0 };
	if(sop_board.checked) { sop_board = '1' } else { sop_board = 0 };
//	if(sop_ylex.checked) { sop_ylex = '1' } else { sop_ylex = 0 };
	if(sop_map.checked) { sop_map = '1' } else { sop_map = 0 };
	if(sop_spektr.checked) { sop_spektr = '1' } else { sop_spektr = 0 };
	if(sop_kauppatori.checked) { sop_kauppatori = '1' } else { sop_kauppatori = 0 };
    
	opts = sop_forum+','+sop_board+','+sop_info+','+sop_map+',0,'+sop_spektr+','+sop_kauppatori;
    }

    if(word != ''){
	ajax('/do_search.php','lookfor='+encodeURIComponent(word)+'&vbuser='+vbuser.value+'&opts='+opts,okSearch); // opts,ok_SENT_alert
	sero.style.display='block';
	perform.disabled='true';
	look.disabled='true';
    }

    return false;
}

function ajax_syn_getAlike(word){
    ajax('/dynamic.php','ac=15&msg='+encodeURIComponent(word),ok_syn_alike);
}

function obj_map_remove(postid){
    ajax('/dynamic.php','ac=21&postid='+postid,ok_map_remove);
}

function ajax_sendSignal(postid,userid){
    ajax('/dynamic.php','ac=1&postid='+postid+'&val='+userid,okSENT);
}

function ajax_markCommerce(postid,ac){
    ajax('/dynamic.php','ac=6&postid='+postid+'&val='+ac,ok_SENT_alert);
}

function ajax_markCommerceTime(postid){
    ajax('/dynamic.php','ac=22&postid='+postid,ok_SENT_alert);
}

function ajax_markPaid(postid,ac){
    ajax('/dynamic.php','ac=7&postid='+postid+'&val='+ac,ok_SENT_alert);
}

function ajax_markmain(postid,ac){
    ajax('/dynamic.php','ac=13&postid='+postid+'&val='+ac,ok_SENT_alert);
}

function ajax_sendProlong(postid){
    ajax('/dynamic.php','ac=4&postid='+postid,okSENT);
}

function orderTranslate(lang_from,postid){
    if(confirm(ORDER_TRANSLATE_CF)){
	var trans = getObj('msg');
	if(lang_from == 'fin'){
	    trans = getObj('msg_fin');
	}
	var trans_text = encodeURIComponent(trans.value);

	ajax('/trans_order.php','&postid='+postid+'&msg='+trans_text+'&flang='+lang_from,ok_SENT_alert);
    }
}

function ajax_assoc(mainword,subword){
    ajax('/dynamic.php','ac=17&postid='+mainword+'&val='+subword,okSENT);
}
function ajax_deassoc(mainword,subword){
    ajax('/dynamic.php','ac=19&postid='+mainword+'&val='+subword,deassoc_ok);
}

function ajax_delPhoto(postid,picid){
    ajax('/dynamic.php','ac=8&postid='+postid+'&val='+picid,okSENT);
    var edp = getObj('edp_'+picid);
    edp.style.display = 'none';
}

function ajax_delpost(postid){
    if(confirm(OBJ_DELETE_CONF)){
	ajax('/dynamic.php','ac=5&postid='+postid,okSENT_delete);
    }
}

function ajax_delProfile(){
    if(confirm(OBJ_PROFILE_CONF)){
	ajax('/dynamic.php','ac=16',okDEL_profile);
    }
}

function ajax_delpost_noconf(postid){
	ajax('/dynamic.php','ac=5&postid='+postid,ok_SENT_alert);
}

function ajax_undeletepost_noconf(postid){
	ajax('/dynamic.php','ac=12&postid='+postid,ok_SENT_alert);
}

function ajax_markpaid_note(postid){
	ajax('/dynamic.php','ac=9&postid='+postid,ok_SENT_alert);
}

function ajax_delsig(sigid){
	ajax('/dynamic.php','ac=11&postid='+sigid,ok_SENT_alert);
}

function ajax_markpaid_sms(postid){
	ajax('/dynamic.php','ac=10&postid='+postid,ok_SENT_alert);
}

function ajax_fill_assoc_words(mainword){
	ajax('/dynamic.php','ac=18&val='+mainword,ok_fill_assoc_words);
}
function ajax_codeEdit(postid){
	var cod = getObj('code_edit');
	var ivb = getObj('invite_bit');
	if(cod != null){
	    if(ivb == null){
		ajax('/dynamic.php','ac=23&postid='+postid+'&msg='+encodeURIComponent(cod.value),ok_SENT_cod_edit);
	    } else {
		ajax('/dynamic.php','ac=23&postid='+postid+'&msg='+encodeURIComponent(cod.value)+'&val=1',ok_SENT_cod_edit);
	    }
	}
}
function ajax_codeDel(postid){
	var cod = getObj('code_del');
	if(cod != null){
		ajax('/dynamic.php','ac=24&postid='+postid+'&msg='+encodeURIComponent(cod.value),ok_SENT_cod_del);
	}
}

function ajax_delComment(postid,commid){
    ajax('/dynamic.php','ac=3&postid='+postid+'&val='+commid,ok_SENT_alert);
    var pt = getObj('pt_'+commid);
    var pc = getObj('pc_'+commid);
    var pd = getObj('pd_'+commid);
    
    pt.style.visibility='hidden';
    pc.style.visibility='hidden';
    pd.style.visibility='hidden';
}

function ajax_sendMSG(postid,userid){
    var comment_msg = getObj('comment_msg');
    var mesgi = encodeURIComponent(comment_msg.value);
    ajax('/dynamic.php','ac=2&postid='+postid+'&msg='+mesgi+'&val='+userid,ok_comment_SENT);
    comment_msg.value = '';
    var sendcomment = getObj('sendcomment');
    sendcomment.style.display = 'none';
}

function ajax_sendEMAIL(postid,userid){
    var email_msg = getObj('email_msg');
    var msg = encodeURIComponent(email_msg.value);

    var usermail_msg = getObj('email_email');
    var usermail = encodeURIComponent(usermail_msg.value);

    var email_phone_msg = getObj('email_phone');
    var email_phone = encodeURIComponent(email_phone_msg.value);

    var email_name_msg = getObj('email_name');
    var email_name = encodeURIComponent(email_name_msg.value);
    
    ajax('/sendmail_client.php','postid='+postid+'&msg='+msg+'&user='+email_name+'&email='+usermail+'&phone='+email_phone,ok_SENT_alert);
    var sendmail = getObj('sendmail');
    sendmail.style.display = 'none';
}

function ajax_getcities(areas){
    ajax('/dynamic.php','ac=20&msg='+areas,ok_fill_cities);
}

function ok_syn_alike(response){
    var alike = getObj('alike_words');
    alike.options.length=0;
    
    if(response.indexOf('[;:|]') > 0){
        var results = response.split('[;:|]');

        for(i=0;i<results.length;i+=2){
            var key = results[i]
            var val = results[i+1];
            if((key != null) && (val != null) && (val != 'undefined')){
            	alike.options[alike.options.length]=new Option(key, val);
            }
        }
    }
}

function ok_fill_assoc_words(response){
    var assoc = getObj('assoc_words');
    assoc.options.length=0;
    
    if(response.indexOf('[;:|]') > 0){
        var results = response.split('[;:|]');

        for(i=0;i<results.length;i+=2){
            var key = results[i]
            var val = results[i+1];
            if((key != null) && (val != null) && (val != 'undefined')){
            	assoc.options[assoc.options.length]=new Option(key, val);
            }
        }
    }
}

function ok_fill_cities(response){
    var cit = getObj('area_cities');
    cit.options.length=0;
    
    if(response.indexOf('[;:|]') > 0){
        var results = response.split('[;:|]');

        for(i=0;i<results.length;i+=2){
            var key = results[i]
            var val = results[i+1];
            if((key != null) && (val != null) && (val != 'undefined')){
            	cit.options[cit.options.length]=new Option(key, val);
            }
        }
    }
}

function okSENT(response){
    var post_statusline = getObj('post_statusline');
    if(post_statusline != null){
	post_statusline.style.background = '#60FF60';
	post_statusline.innerHTML = response;
    }
}

function ok_comment_SENT(response){
    window.location.reload();
}

function ok_map_remove(response){
    alert(response);
    window.location.reload();
}

function ok_SENT_alert(response){
    alert(response);
}

function ok_SENT_cod_edit(response){
    if(response != null){
	if(response == 'AUTH_OK'){
	    window.location.reload();
	} else {
	    if(response == 'AUTH_OK_INV'){
		var postid = getObj('postid');
		if(postid != null){
		    location.href='/index.php?ac=12&postid='+postid.value;
		} else {
		    alert('No postid known, cannot redirect');
		}
	    } else {
		if(response == 'NM'){ 
		    alert(CODE_SHORT);
		} else {
		    if(response == 'NO_AUTH'){
			alert(CODE_WRONG);
		    } else {
			alert(response);
		    }
		}
	    }
	}
    }
}

function ok_SENT_cod_del(response){
    if(response != null){
	if(response == 'DEL_OK'){
	    alert(DEL_OK);
	    location.href = '/';
	} else {
	    if(response == 'NM'){ 
		alert(CODE_SHORT);
	    } else {
		if(response == 'NO_DEL'){
		    alert(CODE_WRONG);
		} else {
		    alert(response);
		}
	    }
	}
    }
}

function okSearch(response){
    if(response != ''){
	if(response.substring(0,3) == 'sid'){
	    var sid = response.substring(4);
	    if(sid > 0){
		location.href = '/result/'+sid;
	    } else {
		alert(SR_NORES);
		var look = getObj('lookfor');
		var sero = getObj('sero');
		var perform = getObj('perform');
		sero.style.display='none';
		perform.removeAttribute('disabled');
		look.removeAttribute('disabled');
	    }
	}
    }
}

function okSENT_delete(response){
	window.location.href='/index.php?ac=11';
}

function okSENT_silent(response){
}

function okDEL_profile(response){
    alert(response);
    location.href = '/logout.php';
}

function syn_reload(){
    var word = getObj('syn_word');
    ajax_syn_getAlike(word.value);
}

function deassoc_ok(response){
    if(response == 'OK'){
	var assoc = getObj('assoc_words');
	assoc.options[assoc.selectedIndex] = null;
    }
}