//#########################################################################################################  
//	 File Name: feedback.js
//	 File Version: v 1.0
//	 Created By: Omkar Prabhu
//	 Created On: 11 May 2009
//	 Last Modified By:
//	 Last modified On:
//######################################################################################################### 

//==================================================================================================== 
//  Function Name : open_box 
//	# Created By: Omkar Prabhu
//	# Created On:  12 May 2009
//	Last Modified By:
//	Last modified On:
//  Purpose : Display the form,iframe and filter (background) object
//  
//---------------------------------------------------------------------------------------------------- 

function open_box(boxid, iframeboxid)
{
  	var boxObj = document.getElementById(boxid);
  	boxObj.style.display='block';
	

  	var filterobj= document.getElementById('filter');
  	filterobj.style.display='block';
  	
  	
	var iframeboxObj =  document.getElementById(iframeboxid);
	iframeboxObj.style.display='block';
		
}

//==================================================================================================== 
//  Function Name : close_box 
//	# Created By: Omkar Prabhu
//	# Created On:  12 May 2009
//	Last Modified By:
//	Last modified On:
//  Purpose : Hide the form,iframe and filter (background) object
//  
//---------------------------------------------------------------------------------------------------- 
function close_box(boxid,iframeboxid)
{
  var boxobj = document.getElementById(boxid);
  if (boxobj) {
  	boxobj.style.display='none';
  }
  
  var filterobj= document.getElementById('filter');
  if (filterobj) {
	filterobj.style.display='none';
  }
  var iframeobj = document.getElementById(iframeboxid);
  if (iframeobj) {
  	iframeobj.style.display='none';
  }
}



//==================================================================================================== 
//  Function Name : getXMLHttpRequestObject 
//	# Created By: Omkar Prabhu
//	# Created On:  12 May 2009
//	Last Modified By:
//	Last modified On:
//  Purpose : Create xmlHttp Object	
//  
//---------------------------------------------------------------------------------------------------- 
// getXMLHttpRequest object
function getXMLHttpRequestObject(){
    var xmlobj;
    
    // check for existing requests
    if(
    	xmlobj!=null
    	&&xmlobj.readyState!=0
    	&&xmlobj.readyState!=4)
    {
        xmlobj.abort();
    }
    try{
        // instantiate object for Mozilla, Nestcape, etc.
        xmlobj=new XMLHttpRequest();
    }
    catch(e){
        try{
            // instantiate object for Internet Explorer
            xmlobj=new ActiveXObject('Microsoft.XMLHTTP');
        }
        catch(e){
            // Ajax is not supported by the browser
            xmlobj=null;
            return false;
        }
    }
    return xmlobj;
}

//==================================================================================================== 
//  Function Name : SubmitFeedback
//	# Created By: Omkar Prabhu
//	# Created On:  12 May 2009
//	Last Modified By:
//	Last modified On:
//  Purpose : Make a ajax request to send feeback text as an email.
//  
//---------------------------------------------------------------------------------------------------- 
var emailXMLHttpObj;
function SubmitFeedback(feedback_type) 
{
	emailXMLHttpObj=getXMLHttpRequestObject();
	if (emailXMLHttpObj) {	    
	     var url="../ps_ajax_sendfeedback.php";
	     feedback_input = document.getElementById('feedback_id');
	     if (feedback_input && feedback_input.value) {
	     	if (feedback_input.value.length < 1000) {
			var submitbutton = document.getElementById('submitid');
			submitbutton.disabled = true;
			url=url+"?feedback="+ escape(feedback_input.value)+"&feedback_type="+feedback_type;
			emailXMLHttpObj.onreadystatechange = fnFeedbackResponse;
			emailXMLHttpObj.open("GET",url,true);
			emailXMLHttpObj.send(null);
		}
		else {
			alert(' Feedback text should be less than 1000 characters.');
			return 0;
		}
	     }
	     else {
	     		alert('Please enter the feedback.');
	     	return 0;
	     }
	}
	else {
		alert('Feedback was not recorded. Please check if your browser supports AJAX');
		return 0;
	}
	return 1;
}


//==================================================================================================== 
//  Function Name : fnFeedbackResponse
//	# Created By: Omkar Prabhu
//	# Created On:  12 May 2009
//	Last Modified By:
//	Last modified On:
//  Purpose : If the ajax request is succesful display an confirmation message, else display an alert
//  
//---------------------------------------------------------------------------------------------------- 
function fnFeedbackResponse()
{

    if (emailXMLHttpObj.readyState==4 || emailXMLHttpObj.readyState=="complete")
    {
       close_box('box', 'iframebox');
       var submitbutton = document.getElementById('submitid');
       submitbutton.disabled = false;
       if (emailXMLHttpObj.responseText == 1) {
       		open_box('thankyoubox','thanksiframebox');
       }
    }
}




