	YAHOO.namespace('askAQuestion.dom');

	YAHOO.askAQuestion.dom.init = function() 
	{

		var q_showOverlay = function(e) {
			//alert('show');
			YAHOO.util.Dom.setStyle('ask_question_screen'      ,'display',''   );
			YAHOO.util.Dom.setStyle('ask_question_form'        ,'display',''   );
			YAHOO.util.Dom.setStyle('ask_question_form_wrapper','display',''   );
			YAHOO.util.Dom.setStyle('ask_question_screen'      ,'opacity','.7');
			YAHOO.util.Dom.setStyle('ask_question_form'        ,'opacity','1.0');
			YAHOO.util.Dom.setStyle('ask_question_form_wrapper','opacity','1.0');
		}
	
		var q_hideOverlay = function(e) {
			//alert('hide');
			YAHOO.util.Dom.setStyle('ask_question_form'        ,'display','none');
			YAHOO.util.Dom.setStyle('ask_question_form_wrapper','display','none');
			YAHOO.util.Dom.setStyle('ask_question_screen'      ,'display','none');
		}
	
		
		var q_submit_form = function(e) {
			//alert("rock!");
			var q_proceed = 1;
			var q_emailformat = /^[\w-_\.]+\@[\w-_\.]+\.[\w-_\.][\w-_\.]+$/;
			// first validate fields.
			if ( document.getElementById('q_senderName').value == '' ) {
				YAHOO.util.Dom.setStyle('q_senderNameLabel', 'fontWeight', 'bold');
				YAHOO.util.Dom.setStyle('q_senderNameLabel', 'color'     , 'red' );
				q_proceed = 0;
			}
			else {
				YAHOO.util.Dom.setStyle('q_senderNameLabel','fontWeight','normal'   );
				YAHOO.util.Dom.setStyle('q_senderNameLabel','color','black'   );
			}
			if ( document.getElementById('q_senderEmail').value == '' ) {
				YAHOO.util.Dom.setStyle('q_senderEmailLabel','fontWeight','bold'   );
				YAHOO.util.Dom.setStyle('q_senderEmailLabel','color','red'   );
				q_proceed = 0;
			}
			else if ( document.getElementById('q_senderEmail').value.search( q_emailformat ) == -1 ) {
				document.getElementById('q_senderEmailLabel').innerHTML = '*Your E-Mail Address (formatted incorrectly)';
				YAHOO.util.Dom.setStyle('q_senderEmailLabel','fontWeight','bold'   );
				YAHOO.util.Dom.setStyle('q_senderEmailLabel','color','red'   );
				q_proceed = 0;
			}
			else {
				document.getElementById('q_senderEmailLabel').innerHTML = '*Your E-Mail Address';
				YAHOO.util.Dom.setStyle('q_senderEmailLabel','fontWeight','normal'   );
				YAHOO.util.Dom.setStyle('q_senderEmailLabel','color','black'   );
			}
			// message is required too
			/* 
			...or not
			if ( document.getElementById('mailContent').value == '' ) {
				YAHOO.util.Dom.setStyle('q_MessageLabel','fontWeight','bold'   );
				YAHOO.util.Dom.setStyle('q_MessageLabel','color','red'   );
				q_proceed = 0;
			}
			else {
				YAHOO.util.Dom.setStyle('q_MessageLabel','fontWeight','normal'   );
				YAHOO.util.Dom.setStyle('q_MessageLabel','color','black'   );
			} */

	
			if ( q_proceed ) {
				//alert('hiding the form');
				// hide the form
				YAHOO.util.Dom.setStyle('ask_question_form','display','none');
				YAHOO.util.Dom.setStyle('ask_question_formresults','display','');

				// show the loader
				document.getElementById('ask_question_formresults').innerHTML = "<img style='margin-top: 175px;' src='images/loading_status_popup.gif' alt='loading...'>";

				//alert('submitting');
				YAHOO.util.Connect.setForm('askQuestionForm');
				var transaction = YAHOO.util.Connect.asyncRequest('POST', 'http://hs.davenport.edu/ask_a_question.jsp', q_callback);
			}
			else {
				//alert('cannot proceed');
			}

		}
		var q_responseSuccess = function(o) {
			//alert('success');
			YAHOO.util.Dom.setStyle('ask_question_formresults','display','');
			document.getElementById("ask_question_formresults").innerHTML = o.responseText;
	
		}
	
		var q_responseFailure = function(o) {
			document.getElementById("ask_question_formresults").innerHTML='<B>FAILURE: </b>' + o.statusText + ' (' + o.status + ')';
		}
	
		var q_callback = {
			success:q_responseSuccess,
			failure:q_responseFailure
		}
		

		// initial state
		YAHOO.util.Dom.setStyle('ask_question_screen'      ,'display','none');
		YAHOO.util.Dom.setStyle('ask_question_form'        ,'display','none');
		YAHOO.util.Dom.setStyle('ask_question_form_wrapper','display','none');
		YAHOO.util.Dom.setStyle('ask_question_screen'      ,'top','0px');
		YAHOO.util.Dom.setStyle('ask_question_screen'      ,'left','0px');
	
		YAHOO.util.Event.addListener('question_link' ,'click'  , q_showOverlay );
		YAHOO.util.Event.addListener('askQuestion_closer' ,'click'  , q_hideOverlay );
		YAHOO.util.Event.addListener('askQuestion_button', 'click', q_submit_form);	

	}

	YAHOO.util.Event.addListener(window, 'load', YAHOO.askAQuestion.dom.init);

