
//********************************************************************
// START create bookmarks
//********************************************************************

function bookmarkItem(bookmark_type,ref_id,item_name) 
{
	
	// show processing dialog
	//notice_".$bookmark_type_id."_".$ref_id.
	document.getElementById("inactive_" + bookmark_type + "_" + ref_id).style.display='none';
	document.getElementById("wait_" + bookmark_type + "_" + ref_id).style.display='block';
	
	//window.open('../../app/crm/bookmark_add.php?ref_id=".codeLink($ref_id)."&type_id=".codeLink($bookmark_type_id)."&item_name=$item_name','NewWindow', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=550,height=250')
	
	setTimeout("processAvailability(" + bookmark_type + "," + ref_id + ",'" + item_name + "')",300);		
	//alert(bookmark_type);
	//processAvailability(bookmark_type,ref_id,item_name);
}

function processAvailability(bookmark_type,ref_id,item_name) {
	
		//alert(bookmark_type);
	    var url = '../../app/crm/bookmark_add_ajax.php?id=' + ref_id + '&bookmark_type=' + bookmark_type +  '&item_name=' + item_name;
	    //alert(url);
	    // the real browsers AND IE 7
	    if (window.XMLHttpRequest) {
	        req = new XMLHttpRequest();
	        if (req.overrideMimeType) {
			req.overrideMimeType('text');
		}
	    //    req.overrideMimeType('text/xml'); IE 7
	    // do it for IE 5 6
	    } else if (window.ActiveXObject) {
	        req = new ActiveXObject("Microsoft.XMLHTTP");
	    }
	    req.onreadystatechange = processAvRequest;
	    req.open("GET", url, true);
	    req.send(null);
	
}


function processAvRequest() {
    if (req.readyState == 4) {
        if (req.status == 200) 
        {			
        	parseAvMessages();
        	
        } else {
        	// Server does not respond => no data stored
       		alert('A problem occured - the bookmark could not have been stored, please try again!');
        }
    }
}

function parseAvMessages() {
	response  = req.responseText;
	//alert(response);
	var elem = response.split(";");
	
	var success = parseInt(elem[0]);
	var ref_id = parseInt(elem[1]);
	var bookmark_type = elem[2];
	

	// $out=$success.";".$ref_id.";".$bookmark_type_id;
	
	document.getElementById("wait_" + bookmark_type + "_" + ref_id).style.display='none';
	
	//*** success
	if (success == 1)
	{
		document.getElementById("active_" + bookmark_type + "_" + ref_id).style.display='block';		
		setTimeout("document.getElementById('active_" + bookmark_type + "_" + ref_id +"').style.background='none'",300);
		setTimeout("document.getElementById('active_" + bookmark_type + "_" + ref_id +"').style.background='rgb(121,181,28)'",600);		
		setTimeout("document.getElementById('active_" + bookmark_type + "_" + ref_id +"').style.background='none'",900);
		setTimeout("document.getElementById('active_" + bookmark_type + "_" + ref_id +"').style.background='rgb(121,181,28)'",1200);	
		
		if(opener.document.getElementById("inactive_" + bookmark_type + "_" + ref_id)){
		opener.document.getElementById("inactive_" + bookmark_type + "_" + ref_id).style.display='none';
		opener.document.getElementById("active_" + bookmark_type + "_" + ref_id).style.display='block';		
		}
		
	}	
	
	//*** unallowed access
	else if (success == 0)
	{
		document.getElementById("inactive_" + bookmark_type + "_" + ref_id).style.display='block';
		alert('Unallowed access - the item could not be added to your bookmark list. Please make sure that you are logged in and try again.');		
	}
	
	//*** Bookmark exists
	else if (success == -1)
	{		
		document.getElementById("active_" + bookmark_type + "_" + ref_id).style.display='block';
		alert('This item is already in your bookmark list.');	
	}
		
	//*** Not successful / default
	else
	{		
		document.getElementById("inactive_" + bookmark_type + "_" + ref_id).style.display='block';
		alert('A problem occured - the item could not have been added to your bookmark list. Please try again.');	
	}		
	
}
//********************************************************************
// END create bookmarks
//********************************************************************






//********************************************************************
// START delete bookmarks
//********************************************************************


function deleteBookmark(ref_id,type_id) 
{
	
	if(confirm('Do you really want to remove this item from your bookmark list?'))
	{
		
		document.getElementById("deleteItem_" + type_id + "_" + ref_id).style.display='none';
		document.getElementById("wait_" + type_id + "_" + ref_id).style.display='block';	
		
		setTimeout("processdeleteBookmark(" + ref_id + "," + type_id +")",50);
	}
		
}

function processdeleteBookmark(ref_id,type_id) {
	
		//alert(bookmark_type);
	    var url = '../../app/crm/bookmark_delete_ajax.php?id=' + ref_id + '&type_id=' + type_id;
	    //alert(url);
	    // the real browsers AND IE 7
	    if (window.XMLHttpRequest) {
	        req = new XMLHttpRequest();
	        if (req.overrideMimeType) {
			req.overrideMimeType('text');
		}
	    //    req.overrideMimeType('text/xml'); IE 7
	    // do it for IE 5 6
	    } else if (window.ActiveXObject) {
	        req = new ActiveXObject("Microsoft.XMLHTTP");
	    }
	    req.onreadystatechange = checkDeleteBookmark;
	    req.open("GET", url, true);
	    req.send(null);
	
}


function checkDeleteBookmark() {
    if (req.readyState == 4) {
        if (req.status == 200) 
        {			
        	parseDeleteBookmark();
        	
        } else {
        	// Server does not respond => no data stored
       		alert('A problem occured - the bookmark could not be deleted - please try again!');
			document.getElementById("deleteItem_" + type_id + "_" + ref_id).style.display='block';
			document.getElementById("wait_" + type_id + "_" + ref_id).style.display='none';	       		
        }
    }
}

function parseDeleteBookmark() {
	response  = req.responseText;
	//alert(response);
	var elem = response.split(";");
	
	var success = parseInt(elem[0]);
	var ref_id = parseInt(elem[1]);
	var type_id = parseInt(elem[2]);
	var no_item = parseInt(elem[3]);
	

	document.getElementById("wait_" + type_id + "_" + ref_id).style.display='none';
	
	//*** success
	if (success == 1)
	{
		//item_1_".$row['comp_id']."_".$bookmark_company
			
		setTimeout("document.getElementById('item_1_" + ref_id +"_" +type_id+ "').style.display='none';",200);
		setTimeout("document.getElementById('item_2_" + ref_id +"_" +type_id+ "').style.display='none';",50);
		//setTimeout("document.getElementById('note_3_" + ref_id +"').style.display='none';",50);
		//setTimeout("document.getElementById('note_4_" + ref_id +"').style.display='none';",1);
		
	
		// hide result notice on the bottom of page
		document.getElementById('result_notice_bottom').style.display='none';
		
		// change number of items in tab
		var obj = document.getElementById('tab_' + type_id);
        if(document.all) { // Internet Explorer 4+
          obj.innerHTML='';
          obj.innerHTML=no_item;
         }
         else if(document.getElementById) { // W3C DOM
          var this_text=document.createTextNode(no_item);
          obj.removeChild(obj.childNodes[0]);
          obj.appendChild(this_text);
         }			
	
		// change number of items in result notice (total number)
		var obj = document.getElementById('result_total');
        if(document.all) { // Internet Explorer 4+
          obj.innerHTML='';
          obj.innerHTML=no_item;
         }
         else if(document.getElementById) { // W3C DOM
          var this_text=document.createTextNode(no_item);
          obj.removeChild(obj.childNodes[0]);
          obj.appendChild(this_text);
         }		
         
		// change number of items in result notice (top value)		
		max_item=document.getElementById('result_top_hidden').value;
		no_item=max_item - 1;
		document.getElementById('result_top_hidden').value=no_item;
		//alert(max_item);
		var obj = document.getElementById('result_top_value');
        if(document.all) { // Internet Explorer 4+
          obj.innerHTML='';
          obj.innerHTML=no_item;
         }
         else if(document.getElementById) { // W3C DOM
          var this_text=document.createTextNode(no_item);
          obj.removeChild(obj.childNodes[0]);
          obj.appendChild(this_text);
         }		

		// hide notice on top if no more bookmarks available		 
		if(no_item==0)
		{
		 	document.getElementById('result_notice_top').style.display='none';
		}	
         
	}	
	
	//*** unallowed access
	else if (success == -1)
	{
		document.getElementById("deleteItem_" + type_id + "_" + ref_id).style.display='block';
		document.getElementById("wait_" + type_id + "_" + ref_id).style.display='none';	   
		alert('A problem occured - please try again.');	
	}
	
		
	//*** Not successful / default
	else
	{		
		document.getElementById("deleteItem_" + type_id + "_" + ref_id).style.display='block';
		document.getElementById("wait_" + type_id + "_" + ref_id).style.display='none';	  
		alert('A problem occured - please try again.');	
	}		
	
}

//********************************************************************
// END delete bookmarks
//********************************************************************