 var state_ready = true;
 var get_values;
 var last_xmlhttp_status;
 
 var xmlhttp=false;
	 try {
	  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
	  try {
	   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
	  } catch (e) {
	   xmlhttp = false;
	  }
	 }
	  if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
	  xmlhttp = new XMLHttpRequest();
	}
	
 function generate_security_code(){
 		var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
		var string_length = 10;
		var random_code = '';
		for (var i=0; i<string_length; i++) {
			var rnum = Math.floor(Math.random() * chars.length);
			random_code += chars.substring(rnum,rnum+1);
		}
		return random_code;
 }
 
 function __add_comment(commented_user_id, logged_user_id, url){
 
 	var get_url = '';
	
	var comment = document.getElementById('comment'); 
	var fixed_comment_string = comment.value.replace(new RegExp( "\\n", "g" ), "<br />");
	
	get_url = url + "common/httpservices/user_comments_exec.php?logged_user_id="+logged_user_id+"&commented_user_id="+commented_user_id+"&comment="+fixed_comment_string+"&sec_code="+generate_security_code();
	showHideDiv('add_comment');
	document.getElementById('comment').value = '';
	
	
		state_ready = false;
		xmlhttp.open("GET", get_url, true);
			 xmlhttp.onreadystatechange = function() {	
				if (xmlhttp.readyState == 4) {
					if(xmlhttp.status == 200){
						var response_text = xmlhttp.responseText;
						//var response_text_array = response_text;//.split('&');

							document.getElementById('comments').innerHTML = response_text;
															
							state_ready = true;
								
					}
						
				}else if(xmlhttp.readyState == 0){
					alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
				}
				last_xmlhttp_status = xmlhttp.readyState;
				
			};
		xmlhttp.send(null);	
 
 }
 
 
 function __delete_comment(comment_id, commented_user_id, url){
 
 	var get_url = '';
	
	
	get_url = url + "common/httpservices/user_comments_exec.php?comment_id="+comment_id+"&commented_user_id="+commented_user_id+"&delete=yes&sec_code="+generate_security_code();
	
	
		state_ready = false;
		xmlhttp.open("GET", get_url, true);
			 xmlhttp.onreadystatechange = function() {	
				if (xmlhttp.readyState == 4) {
					if(xmlhttp.status == 200){
						var response_text = xmlhttp.responseText;
						//var response_text_array = response_text;//.split('&');

							document.getElementById('comments').innerHTML = response_text;					
							state_ready = true;
								
					}
						
				}else if(xmlhttp.readyState == 0){
					alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
				}
				last_xmlhttp_status = xmlhttp.readyState;
				
			};
		xmlhttp.send(null);	
 
 }
 
 function add_comment(commented_user_id, logged_user_id, url){
 	var comment = document.getElementById('comment'); 
 	if(comment.value == ''){
 		alert('Comment can not be empty !');
 		comment.focus();
 	}else{
	clearTimeout(get_values);
			if(state_ready){
				get_values = setTimeout("__add_comment("+commented_user_id+", "+logged_user_id+", '"+url+"');", 500);
			}else if(last_xmlhttp_status == 0){
				alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
			}
	}
}


function delete_comment(comment_id, commented_user_id, url){
	clearTimeout(get_values);
			if(state_ready){
				get_values = setTimeout("__delete_comment("+comment_id+", "+commented_user_id+", '"+url+"');", 500);
			}else if(last_xmlhttp_status == 0){
				alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
			}
	
}
function delete_ticket_comment(logged_user_id, ticket_id, date_time, url){
	clearTimeout(get_values);
			if(state_ready){
				get_values = setTimeout("__delete_ticket_comment("+logged_user_id+", "+ticket_id+", '"+date_time+"','"+url+"' );", 500);
			}else if(last_xmlhttp_status == 0){
				alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
			}
	
}


 function add_ticket_comment(logged_user_id, ticket_id, url){
 	var comment = document.getElementById('comment'); 
 	if(comment.value == ''){
 		alert('Comment can not be empty !');
 		comment.focus();
 	}else{
 	
	clearTimeout(get_values);
			if(state_ready){
				get_values = setTimeout("__add_ticket_comment("+logged_user_id+", "+ticket_id+", '"+url+"');", 500);
			}else if(last_xmlhttp_status == 0){
				alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
			}
	}
}

 function __add_ticket_comment(logged_user_id, ticket_id, url){
 
 	var get_url = '';
	
	var comment = document.getElementById('comment'); 
	var fixed_comment_string = comment.value.replace(new RegExp( "\\n", "g" ), "<br />");
	
	get_url = url + "common/httpservices/user_ticket_comments_exec.php?logged_user_id="+logged_user_id+"&ticket_id="+ticket_id+"&comment="+fixed_comment_string+"&sec_code="+generate_security_code();
	showHideDiv('add_ticket_comments');
	document.getElementById('comment').value = '';
	
	
		state_ready = false;
		xmlhttp.open("GET", get_url, true);
			 xmlhttp.onreadystatechange = function() {	
				if (xmlhttp.readyState == 4) {
					if(xmlhttp.status == 200){
						var response_text = xmlhttp.responseText;
						//var response_text_array = response_text;//.split('&');

							document.getElementById('ticket_comments_'+ticket_id).innerHTML = response_text;
															
							state_ready = true;
								
					}
						
				}else if(xmlhttp.readyState == 0){
					alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
				}
				last_xmlhttp_status = xmlhttp.readyState;
				
			};
		xmlhttp.send(null);	
 
 }
 
 
 function __delete_ticket_comment(logged_user_id, ticket_id, date_time,url){
 
 	var get_url = '';
	
	
	get_url = url + "common/httpservices/user_ticket_comments_exec.php?logged_user_id="+logged_user_id+"&ticket_id="+ticket_id+"&date_time="+date_time+"&delete=yes&sec_code="+generate_security_code();
	
	
		state_ready = false;
		xmlhttp.open("GET", get_url, true);
			 xmlhttp.onreadystatechange = function() {	
				if (xmlhttp.readyState == 4) {
					if(xmlhttp.status == 200){
						var response_text = xmlhttp.responseText;
						//var response_text_array = response_text;//.split('&');

							document.getElementById('ticket_comments_'+ticket_id).innerHTML = response_text;					
							state_ready = true;
								
					}
						
				}else if(xmlhttp.readyState == 0){
					alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
				}
				last_xmlhttp_status = xmlhttp.readyState;
				
			};
		xmlhttp.send(null);	
 
 }
 

function add_tell_to_frined(logged_user_id, email, url){
 	var comment = document.getElementById('comment'); 
 	if(comment.value == ''){
 		alert('Comment can not be empty !');
 		comment.focus();
 	}else{
 	
	clearTimeout(get_values);
			if(state_ready){
				get_values = setTimeout("__add_tell_to_frined("+logged_user_id+", "+ticket_id+", '"+url+"');", 500);
			}else if(last_xmlhttp_status == 0){
				alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
			}
	}
}

 function __add_tell_to_frined(logged_user_id, email, url){
 
 	var get_url = '';
	
	var comment = document.getElementById('comment'); 
	var fixed_comment_string = comment.value.replace(new RegExp( "\\n", "g" ), "<br />");
	
	get_url = url + "common/httpservices/user_ticket_comments_exec.php?logged_user_id="+logged_user_id+"&ticket_id="+ticket_id+"&comment="+fixed_comment_string+"&sec_code="+generate_security_code();
	showHideDiv('add_ticket_comments');
	document.getElementById('comment').value = '';
	
	
		state_ready = false;
		xmlhttp.open("GET", get_url, true);
			 xmlhttp.onreadystatechange = function() {	
				if (xmlhttp.readyState == 4) {
					if(xmlhttp.status == 200){
						var response_text = xmlhttp.responseText;
						//var response_text_array = response_text;//.split('&');

							document.getElementById('ticket_comments').innerHTML = response_text;
															
							state_ready = true;
								
					}
						
				}else if(xmlhttp.readyState == 0){
					alert("Sorry there was a problem while executing your request!!\nPlease refresh your page.");
				}
				last_xmlhttp_status = xmlhttp.readyState;
				
			};
		xmlhttp.send(null);	
 
 }















