function goToPage(objId)
{
	var targetUrl = document.getElementById(objId).value;
	if(targetUrl.length > 0)
	{
		window.location.href = targetUrl;
	}
}

function goToBioFilter(objId)
{
	var targetUrl = document.getElementById(objId).value;
	var filter = document.getElementById("specialty").value;
	targetUrl = targetUrl + "?specialty=" + filter;
	window.location.href = targetUrl;
}

function sendContactUs()
{

	var user_first_nm = document.contactusform.user_first_nm.value;
	var user_last_nm = document.contactusform.user_last_nm.value;
	var user_email_addr = document.contactusform.user_email_addr.value;
	var comment_body = document.contactusform.comment_body.value;
	var user_zip = document.contactusform.user_zip.value;
	
	
	if(user_first_nm.length <= 0)
	{
		alert("Please enter your first name.");
		document.contactusform.user_first_nm.focus();
		return false;
	}
	if(user_last_nm.length <= 0)
	{
		alert("Please enter your last name.");
		document.contactusform.user_last_nm.focus();
		return false;
	}
	if(user_zip.length > 0)
	{
		if(!validateZIP(document.contactusform.user_zip.value))
		{	
			alert("Please enter a valid zipcode.");
			document.contactusform.user_zip.focus();
			return false;
		}
	}
	if(user_email_addr.length <= 0)
	{
		alert("Please enter your email address.");
		document.contactusform.user_email_addr.focus();
		return false;
	}
	else
	{

		if(!isValidEmail(document.contactusform.user_email_addr,false))
		{
			alert("Please enter a valid email address.");
			document.contactusform.user_email_addr.focus();
			return false;
		}
	}
	if(document.contactusform.comment_body.value.length <= 0)
	{
		alert("Please enter your message.");
		document.contactusform.comment_body.focus();
		return false;
	}
	

	var webServiceUrl = "/WebServices/ContactUsService.asmx/SimpleSend";
	
	var formObject = document.getElementById('contactusform'); 
	
	YAHOO.util.Connect.setForm(formObject); 
	
	var cObj = YAHOO.util.Connect.asyncRequest('POST', webServiceUrl, {
	    success: function (response) {
		//alert(response.responseText);
		
		if(response.responseText.indexOf('VALID'))
		{
		    document.getElementById('btcontactus').innerHTML = '<p>Your request has been sent.</p>';
		}
		else
		{
		    document.getElementById('btcontactus').innerHTML = '<p>The following error has occurred while trying to process your request:' + response.responseText + '</p>';
		    
		}
		
		
	    },
	    failure: function (response) {
		document.getElementById('btcontactus').innerHTML = '<p>An error has occurred, please notify the Cedars Sinai Helpdesk at 310-423-6428. Error Code:' + response.responseText + '</p>';
		
	    }
	});


}

//***Functions for the popup contact us window
var mHandleStatusCancel = function() {
	commentMessage = YAHOO.util.Dom.get("mContactUsMessage");
	commentMessage.innerHTML = "";
    this.cancel();
}
var mHandleStatusConfirm = function() 
{
 	var contactUsMessage;
    
	// alert(!validateZIP(document.hcontactusform.user_zip.value));
	//***Check the form for required items
	if (document.hcontactusform.user_first_nm.value.length == 0) 
	{
		contactUsMessage = YAHOO.util.Dom.get("mContactUsMessage");
		contactUsMessage.innerHTML = "<b>You did not enter your first name, please provide this information and try again.</b>";
	}
	else if (document.hcontactusform.user_last_nm.value.length == 0) 
	{
			contactUsMessage = YAHOO.util.Dom.get("mContactUsMessage");
			contactUsMessage.innerHTML = "<b>You did not enter your last name, please provide this information and try again.</b>";
	}

	else if (!isValidEmail(document.hcontactusform.user_email_addr,false)) 
	{
			contactUsMessage = YAHOO.util.Dom.get("mContactUsMessage");
			contactUsMessage.innerHTML = "<b>Please enter a valid e-mail address and try again.</b>";
	}
	

	else if (document.hcontactusform.comment_body.value.length == 0) 
	{
		contactUsMessage = YAHOO.util.Dom.get("mContactUsMessage");
		contactUsMessage.innerHTML = "<b>You did not enter any message, please provide a message and try again.</b>";
	}
	else if(document.hcontactusform.user_zip.value.length > 0)
	{
		if(!validateZIP(document.hcontactusform.user_zip.value))
		{	

			contactUsMessage = YAHOO.util.Dom.get("mContactUsMessage");
			contactUsMessage.innerHTML = "<b>Please enter a valid zipcode.</b>";
			document.hcontactusform.user_zip.focus();

		}
		else
		{

			contactUsMessage = YAHOO.util.Dom.get("mContactUsMessage");
			contactUsMessage.innerHTML = "";
			this.submit();

		}    

	}	
	else 
	{
		
		contactUsMessage = YAHOO.util.Dom.get("mContactUsMessage");
		contactUsMessage.innerHTML = "";
    		this.submit();

	
	}


}
var mMyButtons = [ { text:"Submit", handler:mHandleStatusConfirm, isDefault:true },
                  { text:"Cancel", handler:mHandleStatusCancel } ];

var mActionDialog;

// 07/01/2009 DMT added code to hide dialog if clicked outside of the widget
var EventContactUs = YAHOO.util.Event, DomContactUs = YAHOO.util.Dom;


           
           

//***Function to create links to project actions
function mContactUsActivate() {
    // 07/01/2009 DMT added code to hide dialog if clicked outside of the widget
   
    var showContactUs = DomContactUs.get("mcontactus");

    if(document.hFormSubmitted.hSubmittedTimes.value == "1")
    {
    	
    	alert("You have already e-mailed us.  If you would like to send a new message, please refresh your browser.");
    	if(mActionDialog)
    	{
    		mActionDialog.hide();
    	}
    	
    }
    else
    {
    	if(mActionDialog)
    	{
    		mActionDialog.show();
    	}
    	
    }
    
	
    var webServiceUrl = "/WebServices/ContactUsService.asmx/SimpleSend";
    
    document.hcontactusform.action = webServiceUrl;
   

	if(mActionDialog)
	{
	    // 07/01/2009 DMT added code to hide dialog if clicked outside of the widget
	    // Hide Feedback if we click anywhere in the document other than the feedback dialog
	    EventContactUs.on(document, "click", function(e) 
		    {
			var elFeedback = EventContactUs.getTarget(e);
			var dialogElContactUs = mActionDialog.element;
			if (elFeedback != dialogElContactUs && !DomContactUs.isAncestor(dialogElContactUs, elFeedback) && elFeedback != showContactUs && !DomContactUs.isAncestor(showContactUs, elFeedback)) 
			{
			    mActionDialog.hide();
			}
		    }
	   );
	}
	
	
	
}

// 07/07/2010 DMT added code to hide dialog if clicked outside of the widget
var EventContactUsResponse = YAHOO.util.Event, DomContactUsResponse = YAHOO.util.Dom; 


var onDialogSuccess = function(o)
{
	  
	
	var showContactUsResponse = DomContactUsResponse.get("mContactUsResponse");
	
	mResponseDialog.show();
	
	
	 
	if(o.responseText.indexOf('VALID'))
	{
		document.getElementById('hBtContactUsResponse').innerHTML = '<p>Your request has been sent.';
	}
	else
	{
		document.getElementById('hBtContactUsResponse').innerHTML = '<p>The following error has occurred while trying to process your request:' + o.responseText + '</p>';

	}
	
	// 07/07/2010 DMT added code to hide dialog if clicked outside of the widget
	// Hide Feedback if we click anywhere in the document other than the contact us response dialog
	if(mResponseDialog)
		{
		EventContactUsResponse.on(document, "click", function(e) 
		    {
			var elContactResponse = EventContactUsResponse.getTarget(e);
			var dialogContactResponse = mResponseDialog.element;
			if (elContactResponse != dialogContactResponse && !DomContactUsResponse.isAncestor(dialogContactResponse, elContactResponse) && elContactResponse != showContactUsResponse && !DomContactUsResponse.isAncestor(showContactUsResponse, elContactResponse)) 
			{
			    mResponseDialog.hide();
			}
		    }
		);
	}
	
	// set value of form = 1 meaning the user has clicked the email us button once
	document.hFormSubmitted.hSubmittedTimes.value = "1";
	
	
	
	 
	
	

	
};
var onDialogFailure = function(o) {
    
    document.getElementById('btcontactus').innerHTML = '<p>An error has occurred, please notify the Cedars Sinai Helpdesk at 310-423-6428. Error Code:' + o.responseText + '</p>';
};


// Defer instantiation of contact us popup form
YAHOO.util.Event.addListener(window, "load", function() {
    
    YAHOO.util.Dom.setStyle('mContactUsForm', 'display', 'block');
    
    //***Create the dialog

    mActionDialog = new YAHOO.widget.Dialog("mContactUsForm", {
        width: "40em",
	    effect:{effect:YAHOO.widget.ContainerEffect.FADE,
	            duration:0.25},
	    fixedcenter:true,
	    modal:true,
	    visible:false,
        underlay:"shadow",
	    draggable:false
	    });

    mActionDialog.cfg.queueProperty("buttons", mMyButtons);
    mActionDialog.cfg.queueProperty("postmethod", "async");
    mActionDialog.callback.success = onDialogSuccess;
    mActionDialog.callback.falure = onDialogFailure;
    mActionDialog.render();
    

});
//***Functions for the popup contact us window
var mHandleMessageStatusCancel = function() {
	commentMessage = YAHOO.util.Dom.get("mContactUsResponse");
	commentMessage.innerHTML = "";
    	this.cancel();
    	//window.location.reload();
    	
};

var mResponseDialog;
var mMessageButtons = [ { text:"Close", handler:mHandleMessageStatusCancel, isDefault:true }];
//[ { text:"Submit", handler:mHandleStatusConfirm, isDefault:true },
///                  { text:"Cancel", handler:mHandleStatusCancel } ];

//[ { text:"Close", handler:mHandleMessageStatusCancel, isDefault:true }];

// Defer instantiation popup message
YAHOO.util.Event.addListener(window, "load", function() {
    
    YAHOO.util.Dom.setStyle('mContactUsResponse', 'display', 'block');
    
    mResponseDialog = new YAHOO.widget.Dialog("mContactUsResponse", {
        width: "40em",
	    effect:{effect:YAHOO.widget.ContainerEffect.FADE,
	            duration:0.25},
	    fixedcenter:true,
	    modal:true,
	    visible:false,
            underlay:"shadow",
	    draggable:false
	    
	    });

    mResponseDialog.cfg.queueProperty("buttons", mMessageButtons);
    mResponseDialog.render();
    

});


function clearText()
{
	document.gs.q.value = "";
}

function validateZIP(field) 
{
    var valid = "0123456789-";
    var hyphencount = 0;

    if (field.length!=5 && field.length!=10) 
    {
        //alert("Please enter your 5 digit or 5 digit+4 zip code.");
        return false;
    }

    for (var i=0; i < field.length; i++) 
    {
        temp = "" + field.substring(i, i+1);
        if (temp == "-") hyphencount++;
        if (valid.indexOf(temp) == "-1") 
        {
       // alert("Invalid characters in your zip code.  Please try again.");
        return false;
        }
        if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-")) {
        //alert("The hyphen character should be used with a properly formatted 5 digit+four zip code, like '12345-6789'.   Please try again.");
        return false;
           }
    }
    
return true;
}

// formvalidation.js
// Used to validate form input
function isValidEmail(textBoxObj, canBeNull){
      if(canBeNull && textBoxObj.value.length == 0){
         return true;
      }
	  
      validEmail = /^(([A-Za-z0-9]+_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\.+)|([A-Za-z0-9]+\++))*[A-Za-z0-9]+@[A-Za-z0-9]+\.[a-zA-Z]{2,6}$/;
      if(!validEmail.test( textBoxObj.value )){
         return false;
      }
      return true;
}

