include("/js/ajaxLanguage.php?identifier=LANG_AJAX");
include("/js/ajaxLanguage.php?identifier=INBOX");
include("/js/ajaxLanguage.php?identifier=USER_COMMENT&fullkey=1");

//////////////////////////////////////////////////
//submitRating
//
function submitRating(form, user){
	var rating = 0;
	var x=0;
	if (typeof form.rating!=='undefined'){
	
		if (typeof form.x!=='undefined'){
			x = form.x.value;
		}	
	
		j = form.rating.length;
		for (i=0; i<j; i++){
			if (form.rating[i].checked){
				rating = form.rating[i].value;
			}
		}
	} 

		var html_id = "rating_span";
    	document.getElementById(html_id).innerHTML = "<center><img src='http://e.vampirefreaks.com/images/ajax-loader-cyber.gif'  align=center></center><p>";
    		
    if (myAjaxObject.ajaxRequest.readyState == 0 || myAjaxObject.ajaxRequest.readyState == 4){
        myAjaxObject.sendRequest(
    		ajaxControllerPHP,
            {
                method: 'POST',
                parameters: {
                    action: 'submitRating',
                    user: user,
                    rating: rating,
                    x: x
                },
    			callback: 'submitRatingResponse'
            }
    	);
    }
	return;
} // submitRating


//////////////////////////////////////////////////
//submitRatingResponse
//
//receives response from sendUserMessage
function submitRatingResponse() {
	var html_id = "rating_span";   

	if ( myAjaxObject.success == 1 ) {
		var logged_in	= myAjaxObject.details['logged_in'];
        var user        = myAjaxObject.details['user'];
        var is_blocked        = myAjaxObject.details['is_blocked'];
        var rate_self        = myAjaxObject.details['rate_self'];          
        var already_rated        = myAjaxObject.details['already_rated'];          
        var error_rating_user        = myAjaxObject.details['error_rating_user'];  
        var cannot_rate        = myAjaxObject.details['cannot_rate'];  
        var rating        = myAjaxObject.details['rating'];  
        var flooded        = myAjaxObject.details['flooded'];  
   
   		result_message = "";
		      		
        	if (logged_in !="1"){
        		result_message = LANG_ARRAY['MUST_BE_LOGGED_IN']; 
  			} else if (rate_self=="1"){
  				result_message = LANG_ARRAY['USER_COMMENT_CANNOTRATE'];
  			} else if (already_rated=="1"){
  				result_message = LANG_ARRAY['USER_COMMENT_ALREADY'];
  			} else if (error_rating_user=="1"){
   				result_message = LANG_ARRAY['USER_COMMENT_ERROR_RATING'];
  			} else if (cannot_rate=="1"){ 			  			
  				result_message = LANG_ARRAY['USER_COMMENT_CANNOT_RATE'];
  			} else if (is_blocked=="1"){			  			
  				result_message = "You are blocked from rating this user";			
  			} else if (rating!="0"){
   				result_message = LANG_ARRAY['USER_COMMENT_RATED'] + " "+ user +": "+rating+"<br>";
   			} else {
   				result_message = "error rating user";
   			}   	
		
		document.getElementById(html_id).innerHTML = "<b>"+result_message+"</b>";
	} else {
		document.getElementById(html_id).innerHTML = myAjaxObject.message;           
	}
}



////////////////////////////////////////////////
//sendUserMessage:  
//paramaters:
//          form:		current form
//          user:		username you're sending a message to
//        

function sendUserMessage(form, user) {
	var message = form.comment.value;
	var pic_name = "";
	var private = form.private.checked;
	var include_sig = form.include_sig.checked;
	var preview =  form.preview.checked;
	var quickform; //if you are submitting a message from a profile and not the actual 'user comment' page
	
	
    message = message.replace(/&/g,"%26");
    message = message.replace(/\+/g,"%2B");


	if (typeof form.pic_name!=='undefined'){
		pic_name = form.pic_name.value;
	} 
	
	if (typeof form.quickform!=='undefined'){
		quickform = 1;
	} else { 
		quickform = 0;
	}
	var inbox;
	if (typeof form.i!=='undefined'){
		inbox = form.i.value;
	} 
	var comment_id=0;
	if (typeof form.comment_id!=='undefined'){
		comment_id = form.comment_id.value;
	}

	var pic_comment=0;
	if (typeof form.pic_comment!=='undefined'){
		pic_comment = form.pic_comment.value;
	}
	
	var forward_user =0;
	if (typeof form.forward_user!=='undefined'){
		forward_user = form.forward_user.value;
	} 

	if (private){
		private = 1;
	}
	if (include_sig){
		include_sig = 1;
	}

	if (preview){
		preview = 1;
	} else {
		preview = 0;
	}

	var rating = 0;
	var x=0;
	if (typeof form.rating!=='undefined' && !preview){
	
		if (typeof form.x!=='undefined'){
			x = form.x.value;
		}	
	
		j = form.rating.length;
		for (i=0; i<j; i++){
			if (form.rating[i].checked){
				rating = form.rating[i].value;
			}
		}
	} 

	if (!message && rating=="0" && !preview){
		window.location='/user_comment.php?user='+user;
		return;
	}
	
    if (preview){    
		var html_preview_id = "previewSection";
    	document.getElementById(html_preview_id).innerHTML = "<img src='http://e.vampirefreaks.com/images/ajax-loader-cyber.gif' class='blockcenter'><p>";
		document.getElementById("preview").checked = false;    	
	} else {
		var html_form_id = "contactForm";
		document.getElementById(html_form_id).style.display = 'none';
		
		var html_id = "contactUser";
    	document.getElementById(html_id).innerHTML = "<img src='http://e.vampirefreaks.com/images/ajax-loader-cyber.gif'  class='blockcenter'><p>";
	}

	timeout_id = setTimeout( "receiveMessageTimeout("+preview+");", 20000 );
	
    if (myAjaxObject.ajaxRequest.readyState == 0 || myAjaxObject.ajaxRequest.readyState == 4){
        myAjaxObject.sendRequest(
    		ajaxControllerPHP,
            {
                method: 'POST',
                parameters: {
                    action: 'sendUserMessage',
                    message: message,
                    pic_name: pic_name,
                    private:  private,
                    include_sig:  include_sig,
                    preview:  preview,        
                    quickform:  quickform,   
                    comment_id:  comment_id,        
                    pic_comment:  pic_comment, 
                    inbox: inbox, 
                    forward_user: forward_user,
                    user: user,
                    rating: rating,
                    x: x,
                    timeout_id: timeout_id
                },
    			callback: 'sendUserMessageResponse'
            }
    	);
    }
	return;
} // sendUserMessage

function receiveMessageTimeout(preview){
 		var html_id = "contactUser";    
		var html_form_id = "contactForm";
		var html_preview_id = "previewSection";

		if (preview=="1"){
    	document.getElementById(html_preview_id).innerHTML = "";		
    	} 		
  		document.getElementById(html_id).innerHTML = "this is taking too long, please try again";
		document.getElementById(html_form_id).style.display = 'block';  		
}



	    

//receives response from sendUserMessage
function sendUserMessageResponse() {
	var html_id = "contactUser";   
	var html_comment_id = "latestComment";
	var html_preview_id = "previewSection";
		
	if ( myAjaxObject.success == 1 ) {
 		var timeout_id = myAjaxObject.details['timeout_id'];      
		clearTimeout(timeout_id);
			
		var logged_in	= myAjaxObject.details['logged_in'];
		var user_name	= myAjaxObject.details['user_name'];
        var recipient        = myAjaxObject.details['recipient'];
        var is_blocked        = myAjaxObject.details['is_blocked'];
        var private       = myAjaxObject.details['private'];                 
        var blacklisted        = myAjaxObject.details['blacklisted'];                           
        var comment        = myAjaxObject.details['comment'];     
        var subject        = myAjaxObject.details['subject']; 
        var icon        = myAjaxObject.details['icon']; 
        var date_formatted        = myAjaxObject.details['date_formatted']; 
        var preview        = myAjaxObject.details['preview'];         
        var quickform        = myAjaxObject.details['quickform'];   
        var comment_id        = myAjaxObject.details['comment_id'];     
        var user_doesnt_exist        = myAjaxObject.details['user_doesnt_exist'];  
        var flooded        = myAjaxObject.details['flooded'];          

        var rate_self        = myAjaxObject.details['rate_self'];          
        var already_rated        = myAjaxObject.details['already_rated'];          
        var error_rating_user        = myAjaxObject.details['error_rating_user'];  
        var cannot_rate        = myAjaxObject.details['cannot_rate'];  
        var rating        = myAjaxObject.details['rating'];  
		var message;                                        
        var latest_comment;
        var preview_message;
        var result_message;
        var result_message_header;
        var no_errors = 0;      
        if (logged_in !="1"){
        	message = LANG_ARRAY['MUST_BE_LOGGED_IN'];
        } else if (is_blocked == "1"){ 
        	message =  LANG_ARRAY['BLOCKED'];
        } else if (blacklisted == "1"){
        	message =  LANG_ARRAY['FLAGGED_FOR_SPAM'];
        } else if (user_doesnt_exist=="1"){
        	message =  "Error - recipient user does not exist.";     	
         } else if (flooded=="1"){
        	message =  "Error - Flood Control, sending messages too fast.";   
        } else {
        	no_errors = 1;
        	message =  LANG_ARRAY['MESSAGE_SENT'];
        	if (quickform=="1"){
        		latest_comment = "<table cellpadding=2 cellspacing=0 class=comments>";
        	} else {
        		latest_comment = "<table align=center width=90% cellpadding=4 class='darkbox tdbordered'>";
     		}
        	latest_comment += "<tr valign=top><td align='center' width=100><a href='/"+user_name+"'>";
	 		if (icon){
	 			latest_comment  += "<img src='"+icon+"' border=0 class='member_thumbnail'><br>";
	 		}
	 		latest_comment +=  user_name+"</a><br> ["+LANG_ARRAY['ONLINE']+"]<br> </td>";
	 		latest_comment +="<td><div align=right>"+date_formatted+"</div>"+comment+"</td></tr></table>";        	
        }

        if (preview=="1" && no_errors=="0"){ //show preview 
  			document.getElementById(html_preview_id).innerHTML = "";
			var html_form_id = "contactForm";
			document.getElementById(html_form_id).style.display = 'block';  			
  		}	
        
        if (preview=="1" && no_errors=="1"){ //show preview
 			preview_message = "<h3 class='textcenter'>"+LANG_ARRAY['USER_COMMENT_PREVIEW']+"</h3>";
 			preview_message += latest_comment;
 			preview_message += "<p>";
 			document.getElementById(html_preview_id).innerHTML = preview_message;		
        
        } else if (no_errors=="1") {	
  			//get result output
      		result_message_header = " <h3>"+LANG_ARRAY['USER_COMMENT_LEFT']+"  <br> ";
      		result_message = "";
  
  			if (rate_self=="1"){
  				result_message += LANG_ARRAY['USER_COMMENT_CANNOTRATE'] + "<br>";
  			} else if (already_rated=="1"){
  				result_message += LANG_ARRAY['USER_COMMENT_ALREADY'] + "<br>";
  			} else if (error_rating_user=="1"){
   				result_message += LANG_ARRAY['USER_COMMENT_ERROR_RATING'] + "<br>";
  			} else if (cannot_rate=="1"){ 			  			
  				result_message += LANG_ARRAY['USER_COMMENT_CANNOT_RATE'] + "<br>";
  			} else if (rating!="0" && is_blocked != "1"){  
   				result_message += LANG_ARRAY['USER_COMMENT_RATED'] + " " + recipient +": "+rating+"<br>";
   			} 
  
      		if (private=="1"){
      			result_message += LANG_ARRAY['USER_COMMENT_INBOX']+ "<br>";
      			result_message += "<a href='/inbox.php'>"+LANG_ARRAY['USER_COMMENT_MYINBOX']+"</a><br>";
       			result_message += "<a href='/outbox.php'>"+LANG_ARRAY['USER_COMMENT_MYOUTBOX']+"</a><br>";     			
            }
            if (quickform!="1"){  
	            result_message +=  "<a href='/"+recipient+"'>"+LANG_ARRAY['USER_COMMENT_GOTO']+" "+recipient+LANG_ARRAY['USER_COMMENT_PROFILE']+"</a><br>";
	    		result_message +=  "<a href='/"+user_name+"'>"+LANG_ARRAY['USER_COMMENT_MYPROFILE']+"</a><br>";
	    	}
    		result_message_footer = "</h3>";
        
        	if (quickform=="1"){ //if you are on a profile (not the regular user_commeng page)
				document.getElementById(html_id).innerHTML = message+"<br>"+result_message;
				if (private!="1"){
					document.getElementById(html_comment_id).innerHTML = latest_comment;
				}			
        	} else {
				document.getElementById(html_id).innerHTML = result_message_header + result_message + result_message_footer;
				document.getElementById(html_comment_id).innerHTML = latest_comment;	
 				document.getElementById(html_preview_id).innerHTML = "";	
 				if (comment_id!="0"){
 					var replied_id = "replied_"+comment_id;
 					if (typeof document.getElementById(replied_id)!=='undefined'){				
 						document.getElementById(replied_id).innerHTML = "["+LANG_ARRAY['REPLIED']+"]<br>"; 		
 					}	
 				}
 			}
		} else { //error
			document.getElementById(html_id).innerHTML = message;
		}
	} else {
		document.getElementById(html_id).innerHTML = myAjaxObject.message;           
	}
}

