/**
* Javascript class that allows you to process answers and save the server
*
* @since 20th July, 2010
*/
var mtrQuestionProcessor = {
	
	// //////////////////////////////////////////////////////////////////
	
	processQuestions : function(page_id, module_id, callback){
				
		var question = $('.question_text').html();
		
		// Does the question have a tag?
		var question_tag = $('.question_text').attr('mtr_tag');
		
		//alert("Deleting answers for page " + page_id + " question = " + question);
		//RemoteService.clearAnswers(question, page_id, mtrSupportHome.onAnswerSaved);

		var answerList = new Array();
		
		// Look for checkbox answers		
		$('input:checkbox[name=checkbox_answers]:checked').each(function(){
			
			var answerText = $(this).val();	
			var answerTag = $(this).attr('mtr_tag');		
						
			// if now answerTag, check for question tag
			if (answerTag == '' || answerTag == undefined){
				answerTag = question_tag;
			}
						
			if (answerText != ''){
				var temp = {type: 'checkbox', answer: answerText, tag: answerTag};
				answerList.push(temp);
			}
			
    	});

		// Look for checkboxtext answers
		$('input:checkbox[name=checkboxtext_answers]:checked').each(function(){

			var answerText = $(this).parent().children('.checkboxtext_answers_input').val();
			var answerTag = $(this).attr('mtr_tag');
						
			// if now answerTag, check for question tag
			if (answerTag == '' || answerTag == undefined){
				answerTag = question_tag;
			}
						
			if (answerText != ''){
				var temp = {type: 'checkboxtext', answer: answerText, tag: answerTag};
				answerList.push(temp);
			}
			
    	});
    	
    	// Look for radio button answers
		$('input:radio[name=radio_answers]:checked').each(function(){

			var answerText = $(this).val();
			var answerTag = $(this).attr('mtr_tag');
									
			// if now answerTag, check for question tag
			if (answerTag == '' || answerTag == undefined){
				answerTag = question_tag;
			}
						
			if (answerText != ''){
				var temp = {type: 'radio', answer: answerText, tag: answerTag};
				answerList.push(temp);
			}
			
    	});
    	    	    	
    	
		// Look for text answers
		$('.text_answers').each(function(){

			var answerText = $(this).val();	
			var answerTag = $(this).attr('mtr_tag');
			
			// if now answerTag, check for question tag
			if (answerTag == '' || answerTag == undefined){
				answerTag = question_tag;
			}
			
			if (answerText != ''){
				var temp = {type: 'text', answer: answerText, tag: answerTag};
				answerList.push(temp);
			}
    	});
		   	
		// Save responses to database
		RemoteService.saveAnswers(question, answerList, page_id, module_id, callback);    	
   	}
   	/*
   	onAnswerSaved : function(resp){   	
   	}
   	*/
	// //////////////////////////////////////////////////////////////////

}
