/*
*
*	Class for FAQ homepage
*
*/
var faq = Class.create({
	initialize: function() {

		// Find current question
		var questionCount = $('existing_question_id').value;

		// Set question to highlighted
		Event.observe($('question_' + questionCount),'keypress',this.enterDetect);
	},
	enterDetect: function (event) {

		if (Event.KEY_RETURN == event.keyCode) {

			faq.askDirector();

		}

	},
	activeInitialQuestion: function () {
		$('question_0').value = '';

		$('question_0').removeClassName('hint');
	},
	// Retrieve director response
	askDirector: function () {

		// Find current question
		var questionCount = $('existing_question_id').value;

		// Double ajax req so check that item doesn't already exist
		if ($('response_' + questionCount) == undefined) {
			
			// Assign to submit and textarea
			var quetionText 	= 'question_' + questionCount;
			var questionSubmit 	= 'question-submit_' + questionCount;
			var responseId		= 'response_' + questionCount;

			// Disable question
			$(quetionText).disabled = true;
			$(questionSubmit).disabled = true;

			// Add director
			var content = '';
			
			content +='<li class="dialog-container">';
			content +='		<div class="left-dialog">&nbsp;</div>';
			content +='		<div class="center-dialog">';
			content +='			<div class="dialog-right">';
			content +='				<textarea class="dialog-right-text" id="' + responseId + '" readonly="readonly" cols="5" rows="10"></textarea>';
			content +='			</div>';
			content +='		</div>';
			content += '	<div class="right-dialog">';
			content += '		<div class="dialog-face-holder">';
			content += '			<img class="face-right" alt="Director" src="/images/characters/professional/publicity_right.png"/>';
			content += '		</div>';
			content += '	</div>';
			content += '</li>';
			
			$('droppable-holder').insert(content);
			
			// Get Answer
			new Ajax.Request('/home/rpc', {
									method: 'post',
									onSuccess: function(transport) {

										// Get existing question count
										var responseId = 'response_' + $('existing_question_id').value;
										$(responseId).insert(transport.responseText);

										// Update Hidden input
										var newQuestionId = $('existing_question_id').value + 1;
										
										$('existing_question_id').value = newQuestionId;
										
										// Add new question
										var content = '';

										content +='<li class="dialog-container">';
										content +='		<div class="left-dialog"><img class="face-left" src="/images/characters/monster/green_left.png"/></div>';
										content +='		<div class="center-dialog">';
										content +='			<div class="dialog-left">';
										content +='				<textarea class="dialog-left-text" id="question_' + newQuestionId + '" cols="5" rows="10"></textarea>';
										content +='				<input type="submit" class="dialog-submit-left" onclick="faq.askDirector();" id="question-submit_' + newQuestionId + '" name="go" value="Ask" />'
										content +='			</div>';
										content +='		</div>';
										content += '	<div class="right-dialog">';
										content += '		<div class="dialog-face-holder">';
										content += '			&nbsp;';
										content += '		</div>';
										content += '	</div>';
										content += '</li>';

										$('droppable-holder').insert(content);

										// Set focus
										$('question_' + newQuestionId).focus();

										// Set scrollbar
										$('editor-scrollable').scrollTop = $('editor-scrollable').scrollHeight - 5;

										// Unobserve old 
										$('question_' + (newQuestionId - 1)).stopObserving('keypress',faq.enterDetect);

										// Add observe for new question
										$('question_' + newQuestionId).observe('keypress',faq.enterDetect);

									},
									parameters:{
										cmd:'findFaqResponse',
										question:$(quetionText).value
									}
							});
		}

	}
});
