/////////////////////////////////////////////////////////////////////////////
//
// Copyright (c) 2004-2005 SumTotal Systems, Inc. All rights reserved.
//
// The copyright to the computer software herein is proprietary and remains
// the property of SumTotal Systems, Inc. It may be used and/or copied only with
// the written consent of SumTotal Systems, Inc. or in accordance with the terms and
// conditions stipulated in the agreement/contract under which this software
// has been supplied.
//
//
// Abstract:
//
//     Contains the client-side JavaScript that ADM_CreateNewUser.asp needs
//
// Revision History:
//
//    2005-06-25   Vasanth Kumar M    Created file
//
/////////////////////////////////////////////////////////////////////////////

//
// called with Ok button is clicked - validates form then submits value to save
//     to DB
//

var g_bFormSubmitted    = false ;
var g_bTrackChanges     = false;
var g_strManager        = false;
var g_strApprover       = false;
var g_strDefApprover    = false;

function ADM_CreateNewUser_OnLoad()
{

    //
    // Initialize page
    //
    _UTL_PageInit();
}

//
// called when cancel button is clicked
//
function ADM_CreateNewUser_Cancel()
{

    if(g_bTrackChanges == true && confirm(L_Info_ConfirmSave))
    {
        ADM_CreateNewUser_OK(g_strReqMode);
    }
    else
    {
        if(g_strReqCallerURL && g_strReqCallerURL.length > 0 )
           _UTL_Navigate(g_strReqCallerURL );
    }
}

function ADM_CreateNewUser_OnFocus(objField)
{
    if(g_objBrowser.IsNetscape() && g_objBrowser.Version() < 500 )
        objField.blur();
}

function ADM_CreateNewUser_OK(nMode)
{

    var field = "";

    var txtfield = new Object();

    for (field in document.frmUser){

        field = field.toString();
        if(field.indexOf("txt",0) == 0)
        {
            txtfield = document.frmUser[field]; //2-08-06 MinJie removed eval, change to bracket
            txtfield.value = _UTL_Trim(txtfield.value);
        }
    }
	//damodar 4/6/2005
    ADM_CreateNewUser_ValidateForm(_UTL_GetPagePath("ADM_CreateNewUser.asp?UserMode=2&Mode=" +
           nMode + "&Stage=1&CallerURL=" + escape(g_strReqCallerURL)),nMode);
}

//
// Opens the URL in popup window
//
function ADM_CreateNewUser_URL()
{

    var objForm = new ObjForm('frmUser', L_Error_ErrorHeader);

    document.frmUser.txtURL.value = document.frmUser.txtURL.value.toLowerCase();

    objForm.ValidateText('txtURL',      /./,     L_Error_InvalidURL);

    if (objForm.CheckValidity())
        window.open(document.frmUser.txtURL.value);

}

//
// validates fields in form using ObjForm in sys_util.js. displays alert if form
//     does not validate, and submits the form if it does.
//

function ADM_CreateNewUser_ValidateForm(p_strFormAction,nMode)
{

    var objForm = new ObjForm('frmUser', L_Error_ErrorHeader);

    if(document.frmUser.txtUserName)
        objForm.ValidateText('txtUserName',   /./,                L_Error_NoUserName);
    if(g_strReqMode == 0)
        if(document.frmUser.txtPassword)
            objForm.ValidateText('txtPassword',   /./,                L_Error_NoPassword);
    if(document.frmUser.txtFirstName)
        objForm.ValidateText('txtFirstName',   /./,                L_Error_NoFirstName);
    if(document.frmUser.txtLastName)
        objForm.ValidateText('txtLastName',   /./,                L_Error_NoLastName);
	if(document.frmUser.txtEmail)
        objForm.ValidateText('txtEmail',   /./,         L_Error_NoEmail);

    if(document.frmUser.txtEmail  && document.frmUser.txtEmail.value.length > 0)
    {
        document.frmUser.txtEmail.value = document.frmUser.txtEmail.value.replace(/\s/g, "");
        document.frmUser.txtEmail.value = document.frmUser.txtEmail.value.toLowerCase();
        objForm.ValidateText('txtEmail', /^[a-zA-Z0-9-_.]+@[a-zA-Z0-9-_]+(\.[a-zA-Z0-9-_]+)+([,;][a-zA-Z0-9-_.]+@[a-zA-Z0-9-_]+(\.[a-zA-Z0-9-_]+)+)*$/,
            L_Error_InvalidEmail);
    }

    if(document.frmUser.txtNote)
        objForm.ValidateLength('txtNote',       4000,               L_Error_NoteDataOverflow);

    if(document.frmUser.txtCPassword && document.frmUser.txtCPassword.value != document.frmUser.txtPassword.value)
    {
        objForm.ValidateLength('txtCPassword',       -1,               L_Error_Password);
    }

    if (objForm.CheckValidity())
    {
        if(g_bFormSubmitted == false )
        {

            g_bFormSubmitted = true;
            objForm.SubmitForm(p_strFormAction);
            return true;
        }
        else
            return;

    }
    else
    {
        return false;
    }
}

function ADM_CreateNewUser_TrackChanges()
{
    g_bTrackChanges = false;
}

