
function addTenderFavorite(id) {
	initServerUrl();
 	var url = serverUrl+"ajax/?act=addTenderFavorite&id="+id+"&page=tenderList";
	httpRequest("GET",uncache(url),true,handleResponseFavorites);
}

function dropTenderFavorite(id) {
	initServerUrl();
 	var url = serverUrl + "ajax/?act=dropTenderFavorite&id="+id+"&page=tenderList";
	httpRequest("GET",uncache(url),true,handleResponseFavorites);
}

function dropTenderFavoriteAndRefresh(id) {
	initServerUrl();
 	var url = serverUrl + "ajax/?act=dropTenderFavorite&id="+id+"&page=tenderRefresh";
	httpRequest("GET",uncache(url),true,handleResponseFavorites);
}

function dropTenderFavoriteFromFavBox(id) {
	var favIcon = document.getElementById('favBoxIcon'+id);
	if (favIcon) favIcon.src = '../../../img/ajax/loading_indicator_tiny.gif';
	initServerUrl();
 	var url = serverUrl + "ajax/?act=dropTenderFavorite&id="+id+"&page=tenderList";
	httpRequest("GET",uncache(url),true,handleResponseFavorites);
}

function updateTenderFavoritesBox() {
	initServerUrl();
 	var url = serverUrl + "ajax/?act=updateTenderFavoritesBox";
	httpRequest("GET",uncache(url),true,handleResponseFavoritesBox);
}

function dropTenderFavoriteFromApplication(id) {
	var favIcon = document.getElementById('favIcon'+id);
	if (favIcon) favIcon.src = '../../../img/ajax/loading_indicator_tiny.gif';
	initServerUrl();
 	var url = serverUrl + "ajax/?act=dropTenderFavorite&id="+id+"&page=applicationForm";
	httpRequest("GET",uncache(url),true,handleResponseFavorites);
}

function sendTenderApplication(id) {
	//var message = encodeURIComponent(document.getElementById('applicationBody' + id).value);
	var message = document.getElementById('applicationBody' + id).value;
    message = encodeUmlauts(message);
   
	//message = encodeURIComponent(message);
    message = replaceAll(message,'\n','%0A');
    message = replaceAll(message,'?','%3F');
    message = replaceAll(message,'&','%26');

	if (message!=null && message!='') {
		var favIcon = document.getElementById('favBoxIcon'+id);
		if (favIcon) favIcon.src = '../../../img/ajax/loading_indicator_tiny.gif';
		initServerUrl();
	    var url = serverUrl + "ajax/?act=sendTenderApplication&id=" + id + "&message="+message;
	    httpRequest("GET",uncache(url),true,handleResponseFavorites);
    } else {
    	alert('Bitte geben Sie eine Nachricht an den Ausschreibenden ein.');
    }
}

//event handlers for XMLHttpRequest

function handleResponseFavoritesBox() {	
    var xmlReturnVal;
    var jsonReturnVal;
	var favBox = document.getElementById('favBoxNeu');
	var favListHtml = '';
	var endLoop;
	
    if(request.readyState == 4 && favBox){
        if(request.status == 200){

			jsonReturnVal = request.responseText;			
			var favs = eval( jsonReturnVal );
			// JSON lib gives error in Firefox, check later...
			//var reply = jsonReturnVal.parseJSON(); 
		
			endLoop = favs.length;
			//if (endLoop>5) endLoop=5;
			
			for (var i=0;i<=endLoop-1;i++) {
				var styleClass = "backHell";				
				favListHtml +=
				    "<tr ><td ><a href="+favs[i].url+">" + favs[i].name + "</a></td><td class=\"borderLeft right\"><a href=javascript:dropTenderFavoriteFromFavBox('" + favs[i].id + "');><img src=../../../img/icon_tender_drop.gif id=favBoxIcon"+favs[i].id+"></a></td></tr>";
			}
			if (favs.length==0) favListHtml +="<tr><td>keine</td><td>&nbsp;</td></tr>";
			favBox.innerHTML =  "<table class=\"small\"><colgroup><col id=\"col1\" width=\"85%\" /><col id=\"col2\" width=\"15%\" /></colgroup>" + favListHtml + "</table>"; 

        } else {
            alert("Sorry, diese Funktion kann z.Zt. nicht ausgeführt werden.");
        }
    } //end outer if
}


function handleResponseFavorites(){

    var xmlReturnVal;
    var jsonReturnVal;

    if(request.readyState == 4){
        if(request.status == 200){

			jsonReturnVal = request.responseText;			
			var result = eval("(" +  jsonReturnVal + ")");
			// JSON lib gives error in Firefox, check later...
			//var reply = jsonReturnVal.parseJSON(); 

			/*
			 * Seite 1: Liste
			 */
			if (result.page=='tenderList' || result.page=='tenderRefresh') {
				if (result.act == 'add') {
					var favIcon = document.getElementById('favIcon'+result.favid);
					if (favIcon) favIcon.src = '../../../img/icon_tender_' + (result.success?'drop':'add') + '.gif';
					if (result.success) {
						var favLink = document.getElementById('favLink'+result.favid);
						if (favLink) favLink.href = "javascript:dropTenderFavorite(" + result.favid + ");";
						else {
							
								var favCb = document.getElementById('cb'+result.favid);
								if (favCb != null){
									favCb.onclick = new Function("dropTenderFavorite(" + result.favid + ")");
									favCb.checked=true;
								}
							
						}
					}			
				} else {
					var favIcon = document.getElementById('favIcon'+result.favid);
					if (favIcon) favIcon.src = '../../../img/icon_tender_' + (result.success?'add':'drop') + '.gif';
					if (result.success) {
						var favLink = document.getElementById('favLink'+result.favid);
						if (favLink) favLink.href = "javascript:addTenderFavorite(" + result.favid + ");";
						else {
								var favCb = document.getElementById('cb'+result.favid);
								if (favCb != null){
									favCb.onclick = new Function("addTenderFavorite(" + result.favid + ")");
									favCb.checked=false;
								}
							
						}
					}
					if (result.page=='tenderRefresh'){
						var url = document.location.href;
						document.location.href = url;
					}
				}
				updateTenderFavoritesBox();
			} else 
			/*
			 * Seite 4: Bewerbung
			 */

			if (result.page=='applicationForm') {			
				if (result.act == 'drop') {
					if (result.success) {
						var tenderCell1 = document.getElementById('tenderCell1_'+result.favid);
						var tenderCell2 = document.getElementById('tenderCell2_'+result.favid);
						hide(tenderCell1);
						hide(tenderCell2);
					}
				}
			} else	 
			if (result.act='apply') {
				if (result.success) {
					var favIcon = document.getElementById('favIcon'+result.favid);
					if (favIcon) favIcon.src = '../../../img/blind.gif';
					var tenderCell2 = document.getElementById('tenderCell2_'+result.favid);
					hide(tenderCell2);
					alert('Ihre Bewerbung wurde erfolgreich versendet.');
				} else {
					alert('Ihre Bewerbung konnte auf Grund eines technischen Problems nicht versendet werden.\nBitte kontaktieren Sie webmaster@benchpark.com');
				}
			}
			
        } else {
            alert("Sorry, diese Funktion kann z.Zt. nicht ausgeführt werden.");
        }
    } //end outer if
}


