var txt_field_class = 'input_textfield';
var txt_err_class   = 'err_input_textfield';
var slt_field_class = 'input_select';
var slt_err_class   = 'err_input_select';
var text_field_error_class   = 'err_text_field';
var text_field_class = 'normal_text_field';
function change_login (login_type)
{
    if (login_type && '' != login_type)
    {
        if ('P' == login_type)
        {
            $('login_identifier_type').innerHTML = 'PATIENT';
            $('hdn_login_type').value            = 'P';
            Element.removeClassName ('login_doctor_tab', 'login_active_tab');
            Element.addClassName ('login_doctor_tab', 'login_inactive_tab');
            Element.addClassName ('login_patient_tab', 'login_active_tab');
            $('txt_login_username').focus();
        }
        else if ('D' == login_type)
        {
            $('login_identifier_type').innerHTML = 'DOCTOR';
            $('hdn_login_type').value            = 'D';
            Element.removeClassName ('login_patient_tab', 'login_active_tab');
            Element.addClassName ('login_patient_tab', 'login_inactive_tab');
            Element.addClassName ('login_doctor_tab', 'login_active_tab');
            $('txt_login_username').focus();
        }
    }
}

function check_registration ()
{
    if (!is_field_empty_field ('txt_last_name', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_first_name',  txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_primary_phone', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_email', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_zip_code', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_username', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_password', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_confirm_password', txt_field_class, txt_err_class) ||
        !is_drop_down_empty ('slt_security_question1', slt_field_class, slt_err_class) ||
        !is_field_empty_field ('txt_answer1', txt_field_class, txt_err_class) ||
        !is_drop_down_empty ('slt_security_question2', slt_field_class, slt_err_class) ||
        !is_field_empty_field ('txt_answer2', txt_field_class, txt_err_class) )
    {
        return false;
    }
    else
    {
        var email = $('txt_email').value;
        if (!is_valid_email (email))
        {
            Element.removeClassName ('txt_email', txt_field_class);
            Element.addClassName ('txt_email', txt_err_class);
            $('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
            $('txt_email').focus();
            return false;
        }
        else
        {
            Element.removeClassName ('txt_email', txt_err_class);
            Element.addClassName ('txt_email', txt_field_class);
        }
        if ($F('txt_password').length < 6)
        {
            Element.removeClassName ('txt_password',txt_field_class);
            Element.addClassName ('txt_password', txt_err_class);
            $('err_password').innerHTML = 'The password should have minimum six characters.';
            $('txt_password').focus();
            return false;
        }
        else
        {
            Element.removeClassName ('txt_password', txt_err_class);
            Element.addClassName ('txt_password', txt_field_class);
            $('err_password').innerHTML = '';
        }

        if ($('txt_password').value != $('txt_confirm_password').value)
        {
            Element.removeClassName ('txt_confirm_password',txt_field_class);
            Element.addClassName ('txt_confirm_password', txt_err_class);
            $('txt_confirm_password').value     = '';
            $('txt_confirm_password').focus();
            $('err_confirm_password').innerHTML = 'The password and confirm password fields do not match. Please try again.';
            return;
        }
        else
        {
            Element.removeClassName ('txt_confirm_password', txt_err_class);
            Element.addClassName ('txt_confirm_password', txt_field_class);
            $('err_confirm_password').innerHTML = '';
        }
        $('form_top_msg').innerHTML = 'Please complete all the fields.';
        return true
    }
}

function check_doctor_register ()
{
    if (check_conditions ('form_second_top_msg'))
    {
        if ($('txt_years_exp') && '' != $('txt_years_exp').value)
        {
            if (check_numeric ('txt_years_exp', 'Please enter a valid number.', 'err_years_exp'))
            {
                thisForm.submit ();
            }
            else
            {
                $('txt_years_exp').value = '';
                return false;
            }
        }
        else
        {
            thisForm.submit ();
        }
        thisForm.submit ();
    }
}

function check_patient_registration ()
{

    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if (check_conditions ('form_top_msg'))
    {
        if (!check_registration ())
        {
            $('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
            return false;
        }
        else
        {
            thisForm.submit ();
        }
    }
}

function check_conditions (div_id)
{
    if (!$('cbx_privacy').checked)
    {
        $(div_id).innerHTML = 'Please check the Privacy Policy.';
        return false;
    }
    if (!$('cbx_service').checked)
    {
        $(div_id).innerHTML = 'Please check the Terms of Service.';
        return false;
    }
    return true;
}

function move_to_doctor_register ()
{
    $('main_doc_div').style.display         = "block";
    $('div_doc_other_info').style.display   = "none";
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    $('txt_achievements').focus();
}

function check_doctor_registration ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if (!check_registration ())
    {
        $('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
        return;
    }
    else
    {
        if ($('txt_email').value != $('txt_confirm_email').value)
        {
            $('form_top_msg').innerHTML      = 'The highlighted field(s) contain errors, please verify your responses.';
            $('err_confirm_email').innerHTML = 'The email and confirm email fields do not match. Please try again.';
            Element.removeClassName ('txt_confirm_email',txt_field_class);
            Element.addClassName ('txt_confirm_email', txt_err_class);
            $('txt_confirm_email').focus();
            return;
        }
        else
        {
            Element.removeClassName ('txt_confirm_email', txt_err_class);
            Element.addClassName ('txt_confirm_email', txt_field_class);

            if (!is_field_empty_field ('txt_city', txt_field_class, txt_err_class) ||
                !is_field_empty_field ('txt_state',  txt_field_class, txt_err_class))
            {
                $('form_top_msg').innerHTML      = 'The highlighted field(s) contain errors, please verify your responses.';
                return false;
            }

            if (!is_field_empty_field ('txt_medical_group', txt_field_class, txt_err_class) )
            {
                /*$('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
                Element.removeClassName ('txt_medical_group',txt_field_class);
                Element.addClassName ('txt_medical_group', txt_err_class);
                $('txt_medical_group').focus();*/
                return;
            }
            else
            {
                Element.removeClassName ('txt_medical_group', txt_err_class);
                Element.addClassName ('txt_medical_group', txt_field_class);

                if (!is_drop_down_empty ('slt_profession', slt_field_class, slt_err_class) )
                {
                    /*Element.removeClassName ('slt_profession',txt_field_class);
                    Element.addClassName ('slt_profession', txt_err_class);
                    $('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
                    $('slt_profession').focus();*/
                    return;
                }
                else
                {
                    Element.removeClassName ('slt_profession', txt_err_class);
                    Element.addClassName ('slt_profession', txt_field_class);

                    if (!is_field_empty_field ('txt_license_no', slt_field_class, slt_err_class) )
                    {
                        /*Element.removeClassName ('txt_license_no',txt_field_class);
                        Element.addClassName ('txt_license_no', txt_err_class);
                        $('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
                        $('txt_license_no').focus();*/
                        return;
                    }
                    else
                    {
                        Element.removeClassName ('txt_license_no', txt_err_class);
                        Element.addClassName ('txt_license_no', txt_field_class);
                        $('main_doc_div').style.display         = "none";
                        $('div_doc_other_info').style.display   = "block";
                        if ($('txt_achievements'))
                        {
                            $('txt_achievements').focus();
                        }
                    }
                }
            }
        }
    }
}

function is_username_empty (txt_field, err_msg, err_div)
{
	if ("" == trim ($(txt_field).value))
	{
		$(err_div).style.display  = "block";
		$(err_div).innerHTML      = err_msg;
		$(txt_field).value        = '';
		$(txt_field).focus();
		return false;
	}
	else
	{
		return true;
	}
}

function check_username_exist (user_type)
{
    var url= base_url+'index.php/user_ajax/check_username_exist';

    $('err_username').innerHTML = "<img src='"+base_url+"images/loading.gif'>";

	if (!is_username_empty ('txt_username', 'Please enter the Username.', 'err_username'))
	{
	    $('err_username').innerHTML = 'Please enter the username.';
	    return;
	}
	else
	{
	    var username       = $('txt_username').value;
    	var	params         = "username=" + escape(username);
    	new Ajax.Request (url,
    	                       {
    	                           method      : "post",
    	                           parameters  : params,
    	                           onSuccess   : is_patient_username_exist,
    	                           onFailure   : display_error
    	                       }
    	                 )
	}
}

function is_patient_username_exist (reqObj)
{
	$('err_username').style.display = "block";
	if (true == reqObj.responseText)
	{
        $('txt_username').value     = '';
        $('err_username').innerHTML = 'Username exist! Please try another one!';
        $('txt_username').focus();
	}
	else
	{
	    $('err_username').innerHTML = 'Username is available! Please continue!';
	    $('txt_password').focus();
	}
}

function display_error ()
{
	$('err_username').innerHTML = "Error while sending the request.";
}

function clear_username_msg ()
{
    $('err_username').innerHTML = '';
}

function check_account_confirmation ()
{
    if (!is_field_empty_field ('txt_act_code', txt_field_class, txt_err_class))
    {
        return false;
    }
    else
    {
        thisForm.submit ();
    }
}

function check_login ()
{
    if (!is_field_empty_field ('txt_login_username', txt_field_class, txt_err_class))
    {
        $('login_error_messages').innerHTML = 'Please enter the username';
        return false;
    }

    if (!is_field_empty_field ('txt_login_password', txt_field_class, txt_err_class) )
    {
        $('login_error_messages').innerHTML = 'Please enter the password';
        return false;
    }

    $('login_error_messages').innerHTML = '';
    thisForm.submit ();
}

function check_patient_profile ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if (!is_field_empty_field ('txt_last_name', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_first_name', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_primary_phone', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_zip_code', txt_field_class, txt_err_class) )
    {
        $('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
        return false;
    }
    else
    {
        $('form_top_msg').innerHTML = '';
        thisForm.submit ();
    }
}

function check_doctor_profile ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if (!is_field_empty_field ('txt_last_name', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_first_name', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_primary_phone', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_zip_code', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_medical_group', txt_field_class, txt_err_class) ||
        !is_drop_down_empty ('slt_profession', slt_field_class, slt_err_class) ||
        !is_field_empty_field ('txt_city', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_state', txt_field_class, txt_err_class))
    {
        $('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
        return false;
    }
    else
    {
        $('form_top_msg').innerHTML = '';
        thisForm.submit ();
    }
}

function forgot_password ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if (!is_drop_down_empty ('slt_account', slt_field_class, slt_err_class) ||
        !is_field_empty_field ('txt_email', txt_field_class, txt_err_class) )
    {
        $('form_top_msg').innerHTML = 'The highlighted field(s) contain errors, please verify your responses.';
        return false;
    }
    else
    {
        var email = $('txt_email').value;
        if (!is_valid_email (email))
        {
            Element.removeClassName ('txt_email', txt_field_class);
            Element.addClassName ('txt_email', txt_err_class);
            $('form_top_msg').innerHTML = 'Please enter a valid email address.';
            $('txt_email').focus();
            return false;
        }
        else
        {
            Element.removeClassName ('txt_email', txt_err_class);
            Element.addClassName ('txt_email', txt_field_class);
            //thisForm.submit ();
    	    var email          = $('txt_email').value;
    	    var type           = $('slt_account').value;
        	var	params         = "email=" + escape(email)+"&type=" + escape(type);

        	var url            = base_url+'index.php/user_ajax/forgot_password';
        	new Ajax.Request (url,
        	                       {
        	                           method      : "post",
        	                           parameters  : params,
        	                           onSuccess   : user_email_exist,
        	                           onFailure   : display_error
        	                       }
        	                 )
        }
    }
}

function user_email_exist (reqObj)
{
    if (reqObj.responseText)
    {
        $('div_get_email').style.display            = 'none';
        $('div_get_security_answers').style.display = 'block';
        $('div_get_security_answers').innerHTML     = reqObj.responseText;
    }
    else
    {
        $('div_get_security_answers').style.display = 'none';
    }
}

function check_security_answers ()
{
    if (!is_field_empty_field ('txt_answer_1', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_answer_2', txt_field_class, txt_err_class) )
    {
        $('form_top_msg').innerHTML = 'Please enter your answer.';
        return false;
    }
    else
    {
        thisForm.submit ();
    }
}

function change_password ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if ($('error_messages')) $('error_messages').innerHTML     = "";
    if ($('success_messages')) $('success_messages').innerHTML   = "";
    $('security_questions').style.display   = 'none';
    $('email').style.display                = 'none';
    if ('block' == $('password').style.display)
    {
        $('password').style.display = 'none';
    }
    else
    {
        $('password').style.display = 'block';
    }
     $('txt_old_password').focus();
}

function change_email ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if ($('error_messages')) $('error_messages').innerHTML     = "";
    if ($('success_messages')) $('success_messages').innerHTML   = "";
    $('password').style.display             = 'none';
    $('security_questions').style.display   = 'none';
    if ('block' == $('email').style.display)
    {
        $('email').style.display = 'none';
    }
    else
    {
        $('email').style.display = 'block';
    }
    $('rbt_email_exist').focus();
}

function change_security_questions ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if ($('error_messages')) $('error_messages').innerHTML     = "";
    if ($('success_messages')) $('success_messages').innerHTML   = "";
    $('password').style.display     = 'none';
    $('email').style.display        = 'none';
    if ('block' == $('security_questions').style.display)
    {
        $('security_questions').style.display = 'none';
    }
    else
    {
        $('security_questions').style.display = 'block';
    }
    $('slt_security_question1').focus();
}

function check_change_password ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if (!is_field_empty_field ('txt_old_password', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_new_password', txt_field_class, txt_err_class) ||
        !is_field_empty_field ('txt_confirm_password', txt_field_class, txt_err_class) )
    {
        $('form_top_msg_password').innerHTML = 'Please complete all the fields.';
        return false;
    }
    else
    {
        if ($('txt_new_password').value.length < 6)
        {
            Element.removeClassName ('txt_new_password',txt_field_class);
            Element.addClassName ('txt_new_password', txt_err_class);
            $('txt_new_password').value     = '';
            $('err_new_password').focus();
            $('err_new_password').innerHTML = 'The password should contain atleast 6 characters!';
            return false;
        }
        else
        {
            Element.removeClassName ('txt_new_password', txt_err_class);
            Element.addClassName ('txt_new_password', txt_field_class);
            $('err_new_password').innerHTML = '';
            if ($('txt_new_password').value != $('txt_confirm_password').value)
            {
                Element.removeClassName ('txt_confirm_password',txt_field_class);
                Element.addClassName ('txt_confirm_password', txt_err_class);
                $('txt_confirm_password').value     = '';
                $('txt_confirm_password').focus();
                $('err_confirm_password').innerHTML = 'The password and confirm password fields do not match. Please try again.';
                return false;
            }
            else
            {
                Element.removeClassName ('txt_confirm_password', txt_err_class);
                Element.addClassName ('txt_confirm_password', txt_field_class);
                $('err_confirm_password').innerHTML = '';
                thisForm.submit ();
            }
        }
    }
}

function disable_change_email ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    $('txt_email').disabled = 'disabled';
    $('txt_email').value    = '';
}

function enable_change_email ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    $('txt_email').disabled = '';
    $('txt_email').focus();
}

function check_change_email ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if ($('rbt_email_new').checked)
    {
        if (!is_field_empty_field ('txt_email', txt_field_class, txt_err_class) )
        {
            $('form_top_msg_email').innerHTML = 'Please enter an email address.';
            return true
        }
        else
        {
            var email = $('txt_email').value;
            if (!is_valid_email (email))
            {
                Element.removeClassName ('txt_email', txt_field_class);
                Element.addClassName ('txt_email', txt_err_class);
                $('form_top_msg_email').innerHTML = 'Please enter a valid email.';
                $('txt_email').focus();
                return false;
            }
            else
            {
                Element.removeClassName ('txt_email', txt_err_class);
                Element.addClassName ('txt_email', txt_field_class);
            }
            $('form_top_msg_email').innerHTML = '';
            thisForm.submit ();
        }
    }
    else
    {
        $('form_top_msg_email').innerHTML = 'Your contact email is already set to that email address.';
    }
}

function check_change_security_questions ()
{
    if($('message_div'))
    {
        $('message_div').innerHTML = '';
    }
    if (!is_drop_down_empty ('slt_security_question1', slt_field_class, slt_err_class) ||
        !is_field_empty_field ('txt_answer1', txt_field_class, txt_err_class) ||
        !is_drop_down_empty ('slt_security_question2', slt_field_class, slt_err_class) ||
        !is_field_empty_field ('txt_answer2', txt_field_class, txt_err_class) )
    {
        $('form_top_msg_password').innerHTML = 'Please complete all the fields.';
        return false;
    }
    else
    {
        thisForm.submit ();
    }
}

function add_insurance ()
{
    $('err_insurance').innerHTML = "<img src='"+base_url+"images/loading.gif'>";
    if (!is_drop_down_empty ('txt_insurance', slt_field_class, slt_err_class))
    {
        $('err_insurance').innerHTML = 'Please enter the insurance.';
        return false;
    }
    else
    {
        var url = base_url+'index.php/user_ajax/add_insurance';
        var insurance      = $('txt_insurance').value;
        var user_id        = $('hdn_user_id').value;
    	var	params         = "insurance=" + escape(insurance)+"&user_id="+escape(user_id);
    	new Ajax.Request (url,
    	                       {
    	                           method      : "post",
    	                           parameters  : params,
    	                           onSuccess   : insurance_added,
    	                           onFailure   : insurance_added_failed
    	                       }
    	                 )
    }
}

 function insurance_added (reqObj)
{
	if (true == reqObj.responseText)
	{
        $('txt_insurance').value      = '';
        $('err_insurance').innerHTML = 'Insurance successfully added!';
        $('txt_insurance').focus();
	}
	else
	{
	    $('err_insurance').innerHTML = 'Username is available! Please continue!';
	}
}

function insurance_added_failed ()
{
	$('err_insurance').innerHTML = "Error while sending the request.";
}

function display_details_popup (insurance_id)
{
    Modalbox.show (base_url+'index.php/user_ajax/show_insurance_details/'+insurance_id, {title: 'Insurance Details', width: 500}); return false;

    params = "insurance_id=" + insurance_id;
    new Ajax.Updater ('group_admin_body',url,
        {
            method      : "post",
            parameters  : params,
            onFailure   : error_request
        }
    );
}

function check_insurance ()
{
    if (!is_field_empty_field ('txt_ins_name', txt_field_class, txt_err_class))
    {
        return false;
    }
    else
    {
        var url            = base_url+'index.php/user_ajax/update_insurance_details';
	    var ins_name       = $('txt_ins_name').value;
	    var ins_desc       = $('txt_ar_description').value;
	    var ins_id         = $('hdn_ins_id').value;
    	var	params         = "ins_name=" + escape(ins_name)+"&ins_desc=" + escape(ins_desc)+"&ins_id=" + escape(ins_id);
    	new Ajax.Request (url,
    	                       {
    	                           method      : "post",
    	                           parameters  : params,
    	                           onSuccess   : insurance_details_updated,
    	                           onFailure   : insurance_details_updated_failed
    	                       }
    	                 )
    }
}

function insurance_details_updated (reqObj)
{
	if (true == reqObj.responseText)
	{
	    Modalbox.hide();
	    $('message_id').style.display = 'block';
        Element.removeClassName ('message_id', 'display_error_msg');
        Element.removeClassName ('message_id', 'display_success_msg');
        Element.addClassName ('message_id', 'display_success_msg');
        $('message_id').innerHTML     = 'Successfully Updated!';
	}
	else
	{
	    Modalbox.hide();
        Element.removeClassName ('message_id', 'display_error_msg');
        Element.removeClassName ('message_id', 'display_success_msg');
        Element.addClassName ('message_id', 'display_error_msg');
	    $('message_id').innerHTML = "Error while sending the request.";
	}
}

function insurance_details_updated_failed ()
{
	$('err_insurance_name').innerHTML = "Error while sending the request.";
}

function delete_popup (insurance_id)
{
    var node = new Element ('div', {className: 'delete_pop_up'}).update
                	(new Element('div',{className: 'delete_line'}).update('Are you sure to delete?')).
                	   insert(new Element('p')).
                            insert(new Element('input', {type: 'button', value: 'Yes', id: 'btn_delete'})).
                                insert(new Element('input', {type: 'hidden', value: insurance_id, id: 'hdn_ins_id', name: 'hdn_ins_id'})).
                    	           insert(new Element('span').update(' or ')).
                    	               insert(new Element('input', {type: 'button', value: 'No', id: 'btn_cancel'})
            	);
    var hide_observer = Modalbox.hide.bindAsEventListener(Modalbox);
    function set_observers()
    {
    	$('btn_delete').observe('click', delete_insurance);
    	$('btn_cancel').observe('click', hide_observer);
    };
    function remove_observers()
    {
    	$('btn_delete').stopObserving('click', hide_observer);
    	$('btn_cancel').stopObserving('click', hide_observer);
    };
	function delete_insurance ()
	{
		var url            = base_url+'index.php/user_ajax/delete_insurance_details';
	    var ins_id         = $('hdn_ins_id').value;
        var	params         = "ins_id=" + escape(ins_id);
    	new Ajax.Request (url,
    	                       {
    	                           method      : "post",
    	                           parameters  : params,
    	                           onSuccess   : insurance_deleted,
    	                           onFailure   : insurance_deleted_failed
    	                       }
    	                 );
	};
    Modalbox.show(node, {title: "Insurance Delete", width: 500, afterLoad: set_observers, onHide: remove_observers });
}

function insurance_deleted (reqObj)
{
	if (ins_id = reqObj.responseText)
	{
	    Modalbox.hide();
	    $('message_id').style.display = 'block';
        Element.removeClassName ('message_id', 'display_error_msg');
        Element.removeClassName ('message_id', 'display_success_msg');
        Element.addClassName ('message_id', 'display_success_msg');
        $('message_id').innerHTML     = 'Successfully Deleted!';
        $(ins_id).style.display       = 'none';
	}
	else
	{
	    Modalbox.hide();
	    $('message_id').style.display = 'block';
        Element.removeClassName ('message_id', 'display_error_msg');
        Element.removeClassName ('message_id', 'display_success_msg');
        Element.addClassName ('message_id', 'display_error_msg');
	    $('message_id').innerHTML = "Error while sending the request.";
	}
}

function insurance_deleted_failed ()
{
    Modalbox.hide()
    return false;
}

function show_doctor_details (div_th)
{
	$('pagination_div').style.display	=	"none";
    var url        = base_url+'index.php/user_ajax/get_doctor_details';
    var doc_id     = div_th.id;
	var	params     = "doc_id=" + escape(doc_id);
	new Ajax.Request (url,
	                       {
	                           method      : "post",
	                           parameters  : params,
	                           onSuccess   : show_doctor_profile,
	                           onFailure   : show_doctor_profile_error
	                       }
	                 )
}

function show_doctor_profile (reqObj)
{
	if (false != reqObj.responseText)
	{
        $('search_results').style.display        = 'none';
        $('search_doctor_details').style.display = 'block';
        $('search_doctor_details').innerHTML     = reqObj.responseText;
	}
	else
	{

	}
}

function show_doctor_profile_error ()
{
	$('err_username').innerHTML = "Error while sending the request.";
}

function go_to_doctor_account (doc_id)
{
    document.location = base_url+'index.php/appointments/patient_accessing_doctor_account/'+doc_id;
}

function upload_documents ()
{
	if ('' == $('file_document_1').value && '' == $('file_document_2').value)
	{
		$('error_upload_div').innerHTML	=	"Please browse atleast one file.";
		$('error_upload_div').addClassName('display_error_msg');
		return;
	}
	else
	{
		$('error_upload_div').innerHTML	=	"";
		$('error_upload_div').removeClassName('display_error_msg');
	}
    thisForm.submit ();
}

function go_to_edit_page (edit_page)
{
    document.location = base_url+'index.php/'+edit_page;
}

function go_to_settings_page (account_settings)
{
    document.location = base_url+'index.php/'+account_settings;
}

function go_to_insurance_page (insurances)
{
    document.location = base_url+'index.php/'+insurances;
}

function go_to_list_page (list_page)
{
    document.location = base_url+'index.php/'+list_page;
}

/** ADMIN **/

function check_admin_login ()
{
    if (!is_field_empty_field ('txt_admin_username', txt_field_class, txt_err_class))
    {
        $('admin_login_error').setStyle({"display":'block'});
        $('admin_login_error').innerHTML = 'Please enter the username';
        return false;
    }

    if (!is_field_empty_field ('txt_admin_password', txt_field_class, txt_err_class) )
    {
        $('admin_login_error').setStyle({"display":'block'});
        $('admin_login_error').innerHTML = 'Please enter the password';
        return false;
    }

    $('admin_login_error').setStyle({"display":'none'});
    thisForm.submit ();
}

function delete_user (user_id, app_num)
{
    if (1 <= app_num)
    {
        var message_content = 'User has appointments! Do you really want to delete the user?';
    }
    else
    {
        var message_content = 'Do you really want to delete the user?';
		$('hdn_user_type').value = 'D';
    }

    $('hdn_user_id').value = user_id;
    var node = new Element ('div', {className: 'pop_up'}).update
                    (new Element('div',{className: 'confirm_line'}).update(message_content)).
                        insert(new Element('p')).
                            insert(new Element('input', {className: 'pop_up_buttons', type: 'button', value: '  Yes  ', id: 'btn_delete'})).
                            insert(new Element('input', {className: 'pop_up_buttons', type: 'button', value: '  No  ', id: 'btn_cancel'}));
    var hide_observer = Modalbox.hide.bindAsEventListener (Modalbox);
    function set_observers()
    {
    	$('btn_cancel').observe('click', hide_observer);
    	$('btn_delete').observe('click', this_form_submit);
    };
    function remove_observers()
    {
    	$('btn_cancel').stopObserving('click', hide_observer);
    	$('btn_delete').stopObserving('click', hide_observer);
    };

    Modalbox.show(node, {title: "<h3>Delete User ?</h3>", width: 500, afterLoad: set_observers, onHide: remove_observers });
}

function change_user_status (user_id, status, app_num)
{
	
    if ('A' == status)
    {
        var user_type = 'Activate';
    }
    else
    {
        var user_type = 'De-activate';
    }

    if (1 <= app_num)
    {
        var message_content = 'User has appointments! Do you really want to '+user_type+' the user?';
    }
    else
    {
        var message_content = 'Do you really want to '+user_type+' the user?';
    }

    $('hdn_user_id').value      = user_id;
    $('hdn_user_type').value    = status;
    var node = new Element ('div', {className: 'pop_up'}).update
                    (new Element('div',{className: 'confirm_line'}).update(message_content)).
                        insert(new Element('p')).
                            insert(new Element('input', {className: 'pop_up_buttons', type: 'button', value: '  Yes  ', id: 'btn_delete'})).
                            insert(new Element('input', {className: 'pop_up_buttons', type: 'button', value: '  No  ', id: 'btn_cancel'}));
    var hide_observer = Modalbox.hide.bindAsEventListener (Modalbox);
    function set_observers()
    {
    	$('btn_cancel').observe('click', hide_observer);
    	$('btn_delete').observe('click', this_form_submit);
    };
    function remove_observers()
    {
    	$('btn_cancel').stopObserving('click', hide_observer);
    	$('btn_delete').stopObserving('click', hide_observer);
    };

    Modalbox.show(node, {title: "<h3>Change User Status ?</h3>", width: 500, afterLoad: set_observers, onHide: remove_observers });
}

function approve_doctor (user_id)
{
    $('hdn_user_id').value = user_id;
    $('hdn_operation').value = 'A';
    var node = new Element ('div', {className: 'pop_up'}).update
                    (new Element('div',{className: 'confirm_line'}).update('Do you really want to approve the user?')).
                        insert(new Element('p')).
                            insert(new Element('input', {className: 'pop_up_buttons', type: 'button', value: '  Yes  ', id: 'btn_delete'})).
                            insert(new Element('input', {className: 'pop_up_buttons', type: 'button', value: '  No  ', id: 'btn_cancel'}));
    var hide_observer = Modalbox.hide.bindAsEventListener (Modalbox);
    function set_observers()
    {
    	$('btn_cancel').observe('click', hide_observer);
    	$('btn_delete').observe('click', this_form_submit);
    };
    function remove_observers()
    {
    	$('btn_cancel').stopObserving('click', hide_observer);
    	$('btn_delete').stopObserving('click', hide_observer);
    };

    Modalbox.show(node, {title: "<h3>Delete User ?</h3>", width: 500, afterLoad: set_observers, onHide: remove_observers });
}

function delete_doctor (user_id)
{
    $('hdn_user_id').value = user_id;
    $('hdn_operation').value = 'D';
    var node = new Element ('div', {className: 'pop_up'}).update
                    (new Element('div',{className: 'confirm_line'}).update('Do you really want to delete the user?')).
                        insert(new Element('p')).
                            insert(new Element('input', {className: 'pop_up_buttons', type: 'button', value: '  Yes  ', id: 'btn_delete'})).
                            insert(new Element('input', {className: 'pop_up_buttons', type: 'button', value: '  No  ', id: 'btn_cancel'}));
    var hide_observer = Modalbox.hide.bindAsEventListener (Modalbox);
    function set_observers()
    {
    	$('btn_cancel').observe('click', hide_observer);
    	$('btn_delete').observe('click', this_form_submit);
    };
    function remove_observers()
    {
    	$('btn_cancel').stopObserving('click', hide_observer);
    	$('btn_delete').stopObserving('click', hide_observer);
    };

    Modalbox.show(node, {title: "<h3>Delete User ?</h3>", width: 500, afterLoad: set_observers, onHide: remove_observers });
}

function this_form_submit ()
{
    thisForm.submit ();
}

function go_to_admin_page (admin_page)
{
    document.location = base_url+'index.php/admin/'+admin_page;
}
function doctor_search_paginator (url)
{
	var args          =  {
						url   : url,
						params:
							{
								txt_doctor_name          : escape($('txt_doctor_name').value),
								slt_profession           : escape($('slt_profession').value),
								txt_institution_name     : escape($('txt_institution_name').value),
								txt_zip                  : escape($('txt_zip').value),
								slt_distance 			 : escape($('slt_distance').value),
								txt_insurance            : escape($('txt_insurance').value),
								txt_phone_no             : escape($('txt_phone_no').value),
								txt_languages            : escape($('txt_languages').value),
								txt_doc_name             : escape($('txt_doc_name').value),
								txt_keywords             : escape($('txt_keywords').value)
							}
						};
	new Ajax.Request (url,
	                       {
								method      : "post",
								parameters   : args.params,
								onSuccess   : show_search_result,
								onFailure   : show_doctor_profile_error
	                       }
	                 )
}
function show_search_result (reqObj)
{
	if (false != reqObj.responseText)
	{
        $('doctor_search_result').style.display = 'block';
        $('doctor_search_result').innerHTML     = reqObj.responseText;
	}
}
function tell_a_friend ()
{
	if (!is_field_empty_field ('txt_first_name', txt_field_class, txt_err_class))
	{
		$('error_div_cntr').innerHTML = 'Please enter the first name';
        return false;
	}
	if (!is_field_empty_field ('txt_email', txt_field_class, txt_err_class))
	{
		$('error_div_cntr').innerHTML = 'Please enter the email';
        return false;
	}
	else if (!is_valid_email ($('txt_email').value))
	{
		$('error_div_cntr').innerHTML = 'Please enter valid email';
        return false;
	}
	/*if (!is_field_empty_field ('txt_ar_statement', txt_field_class, text_field_error_class))
	{
		$('error_div_cntr').innerHTML = 'Please enter personnel message';
        return false;
	}*/
	$('error_div_cntr').innerHTML = '';
	$('form_premieredoc').submit();
	
}
function refer_a_doctor ()
{
	if ('' == $F('txt_first_name') && '' == $F('txt_last_name') && '' == $F('txt_office_phone') && '' == $F('txt_office_phone') && '' == $F('txt_office_address') && '' == $F('txt_zip_code') && '' == $F('txt_email') )
    {
		$('error_div_cntr').innerHTML = 'Please enter atleast one information';
		$("txt_first_name").focus();
		return false;
		
	}
	else if ('' != $F('txt_email') && !is_valid_email ($F('txt_email')))
	{
		$('error_div_cntr').innerHTML = 'Please enter valid email';
		$("txt_email").focus();
        return false;
	}
	else if('' != $F('txt_zip_code') && !check_numeric('txt_zip_code', 'Please enter valid zip code', 'error_div_cntr')){return false;}
	$('error_div_cntr').innerHTML 		= 	'';
	$('error_div_cntr').style.display	= 	"none";
	var url								=	base_url+'index.php/user_ajax/refer_a_doctor';
	$('message_id').style.display		= 	"block";
	Element.addClassName ('message_id', 'display_wait_msg');
	var params							=	"txt_first_name="+escape($F('txt_first_name'))+'&txt_last_name='+escape($F('txt_last_name'))+'&txt_office_phone='+escape($F('txt_office_phone'))+'&txt_office_address='+escape($F('txt_office_address'))+'&txt_zip_code='+escape($F('txt_zip_code'))+'&txt_email='+escape($F('txt_email'));
	$("message_id").innerHTML 			=	'Please wait we are processing your request. <img src="'+base_url+'images/spinner.gif">';
	
	new Ajax.Request (url,
                        {
                            method      :   "post",
                            parameters  :   params,
                            onSuccess   :   success_refer_a_doctor,
                            onFailure   :   error_request
                        }
                     );
}
function success_refer_a_doctor(req_obj)
{	
	var field_arr	= new Array('txt_first_name', 'txt_last_name', 'txt_office_phone', 'txt_office_address', 'txt_zip_code', 'txt_email');	
	set_field_empty (field_arr);
    $("message_id").innerHTML = "";
	$('message_id').style.display		= "block";
    $("message_id").innerHTML = req_obj.responseText;
	
}

function error_request()
{
    $("error_div_cntr").setStyle({"display":"block"});
    $("error_div_cntr").innerHTML = "Unable to complete the requests. Please after some time";
}
function set_field_empty (field_arr)
{
	for (i = 0; i < field_arr.length; i++)
	{
		$(field_arr[i]).value	=	"";
	}
}