<%@ Page masterpagefile="../../_catalogs/masterpage/submission.master" language="C#" inherits="Microsoft.SharePoint.WebPartPages.WebPartPage, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" meta:progid="SharePoint.WebPartPage.Document" UICulture="auto" Culture="auto" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %> <%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

<asp:Content id="content1" ContentPlaceHolderID="PlaceHolderMain" runat="server">
<script src="/_layouts/images/MSILM2/Scripts/jquery-1.7.2.min.js" type="text/javascript"></script>
    <script type="text/javascript">

        $(function () {
            var prm = Sys.WebForms.PageRequestManager.getInstance();
            prm.add_endRequest(function () {
                DisableDisplayName();
                SetDisplayName();
                FilterOfficeLocations();
                setuserinfo();
                hidetheAdminfield();
                hidesomefield();
            });

            $(function () {
                DisableDisplayName();
                SetDisplayName();
                FilterOfficeLocations();
                setuserinfo();
                hidetheAdminfield();
                hidesomefield();
            });

            function DisableDisplayName() {
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_DisplayName_control_internalTextBox").attr("readonly", "true");
            }
            function setuserinfo() {
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_AdminUser_control_internalTextBox").change(function () {
                    var theAdminUser = $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_AdminUser_control_internalTextBox").val();
                    getinfofromsql(theAdminUser);
                });
            }
            function hidetheAdminfield() {
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_TypeOfUserAccount_control_internalDropDownList").change(function () {
                    var typeOfUserAccount = $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_TypeOfUserAccount_control_internalDropDownList").val();
                    if (typeOfUserAccount != "Admin") {
                        $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_AdminUser_control_internalTextBox").attr('readonly', 'true');
                    }
                });
            }
            function hidesomefield() {
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_AccountName_control_internalTextBox").hide();
            }
            function SetDisplayName() {
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_TypeOfUserAccount_control_internalDropDownList, #ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_FirstName_control_internalTextBox, #ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_LastName_control_internalTextBox, #ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_MiddleName_control_internalTextBox").change(function () {
                    var typeOfUserAccount = $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_TypeOfUserAccount_control_internalDropDownList").val();
                    var firstName = $.trim($("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_FirstName_control_internalTextBox").val());
                    //remove caps and set it to proper casing
                    firstName = firstName.toLowerCase().replace(/\b[a-z]/g, function (letter) {
                        return letter.toUpperCase();
                    });
                    var lastName = $.trim($("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_LastName_control_internalTextBox").val());
                    lastName = lastName.replace(".", "");
                    //remove caps and set it to proper casing
                    lastName = lastName.toLowerCase().replace(/\b[a-z]/g, function (letter) {
                        return letter.toUpperCase();
                    });
                    var middleName = $.trim($("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_MiddleName_control_internalTextBox").val());
                    //middlename should always be Uppercase
                    middleName = middleName.toUpperCase();
                    var displayName;
                    if ((lastName != "") && (firstName != "") && (middleName != "")) displayName = firstName + " " + middleName.substring(0, 1) + " " + lastName;
                    else if ((lastName != "") && (firstName != "")) displayName = firstName + " " + lastName;
                    else if (lastName != "") displayName = lastName;
                    else if (firstName != "") displayName = firstName;
                    else if ((lastName == "") && (firstName == "") && (middleName == "")) displayName = "";
                    displayName = displayName.replace(".", "");
                    if (typeOfUserAccount == "Admin") {
                        displayName = displayName + " (Admin)";
                        SetEmpTypeNonRegAccount();
                        SetRegionforAdmin();
                    }
                    if (typeOfUserAccount == "Regular") {
                        SetEmpTypeRegAccount();
                        SetRegionforNonAdmin();
                    }
                    $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_FirstName_control_internalTextBox").val(firstName);
                    $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_LastName_control_internalTextBox").val(lastName);
                    $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_MiddleName_control_internalTextBox").val(middleName.substring(0, 1));
                    $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_DisplayName_control_internalTextBox").val(displayName);
                });
            }

            function SetEmpTypeNonRegAccount() {
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficePhone_control_internalTextBox").attr("readonly", "true");
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficePhone_control_internalTextBox").val("No Phone");
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_EmployeeType_control_internalDropDownList span').showOption();
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_EmployeeType_control_internalDropDownList').children('option[value="Contractor"]').hideOption();
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_EmployeeType_control_internalDropDownList').children('option[value="Full Time Employee"]').hideOption();

            }
            function SetEmpTypeRegAccount() {
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficePhone_control_internalTextBox").val('');
                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficePhone_control_internalTextBox").attr("readonly", false);
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_EmployeeType_control_internalDropDownList span').showOption();
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_EmployeeType_control_internalDropDownList').children('option[value="Admin Account"]').hideOption();
            }
            function SetRegionforNonAdmin() {
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList span').showOption();
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList').children('option[value="ADMIN"]').hideOption();
            }

            function SetRegionforAdmin() {
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList span').showOption();
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList').children('option[value="AMERICAS"]').hideOption();
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList').children('option[value="EMEA"]').hideOption();
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList').children('option[value="ASPAC"]').hideOption();
                $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList').children('option[value="LATAM"]').hideOption();
            }

            function getinfofromsql(theaccount) {
                var connection = new ActiveXObject("ADODB.Connection");

                var connectionstring = "Data Source=localhost;Initial Catalog=fimsynchronizationservice;User ID=forjquery;Password=Password1;Provider=SQLOLEDB";

                connection.Open(connectionstring);
                var rs = new ActiveXObject("ADODB.Recordset");

                rs.Open("SELECT givenname,sn,initials,displayname,employeeID,accountName FROM mms_metaverse where accountName =  '" + theaccount + "'", connection);
                rs.MoveFirst
                while (!rs.eof) {
                    $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_FirstName_control_internalTextBox").val(rs.fields(0));
                    $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_LastName_control_internalTextBox").val(rs.fields(1));
                    $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_MiddleName_control_internalTextBox").val(rs.fields(2));
                    $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_DisplayName_control_internalTextBox").val(rs.fields(3) + " (Admin)");
                    rs.movenext;
                }

                rs.close;
                connection.close;
            }
            function FilterOfficeLocations() {
                var AMERICAS = ['Ontario', 'Texas', 'New Jersey', 'New York', 'Barbados', 'Virgin Island'];
                var EMEA = ['Mechelen', 'Koge', 'Moscow', 'Barcelona', 'Manchester'];
                var LATAM = ['Buenos Aires', 'Cartagena', 'Tocancipa', 'Bogota', 'Tijuana'];
                var ASPAC = ['Sydney', 'Beijing', 'Shanghai', 'Mumbai', 'Tokyo'];

                $.fn.hideOption = function () {
                    this.each(function () {

                        $(this).wrap('<span>').hide()
                    });

                }
                $.fn.showOption = function () {
                    this.each(function () {
                        var opt = $(this).find('option').show();
                        $(this).replaceWith(opt)

                    });

                }

                $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList").change(function () {

                    mydropdown = $("#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_UserRegion_control_internalDropDownList").val();
                    if (mydropdown == "AMERICAS") {
                        for (var i = 0; i < AMERICAS.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList span').showOption();
                        }
                        for (var i = 0; i < EMEA.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + EMEA[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < ASPAC.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + ASPAC[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < LATAM.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + LATAM[i] + '"]').hideOption();
                        }
                        $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="Admin Account"]').hideOption();
                    }
                    if (mydropdown == "EMEA") {
                        for (var i = 0; i < EMEA.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList span').showOption();
                        }
                        for (var i = 0; i < AMERICAS.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + AMERICAS[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < ASPAC.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + ASPAC[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < LATAM.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + LATAM[i] + '"]').hideOption();
                        }
                        $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="Admin Account"]').hideOption();
                    }
                    if (mydropdown == "LATAM") {
                        for (var i = 0; i < LATAM.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList span').showOption();
                        }
                        for (var i = 0; i < EMEA.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + EMEA[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < ASPAC.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + ASPAC[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < AMERICAS.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + AMERICAS[i] + '"]').hideOption();
                        }
                        $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="Admin Account"]').hideOption();
                    }
                    if (mydropdown == "ASPAC") {
                        for (var i = 0; i < ASPAC.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList span').showOption();
                        }
                        for (var i = 0; i < EMEA.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + EMEA[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < AMERICAS.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + AMERICAS[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < LATAM.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + LATAM[i] + '"]').hideOption();
                        }
                        $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="Admin Account"]').hideOption();
                    }
                    if (mydropdown == "ADMIN") {
                        $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList span').showOption();
                        for (var i = 0; i < ASPAC.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + ASPAC[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < EMEA.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + EMEA[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < AMERICAS.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + AMERICAS[i] + '"]').hideOption();
                        }
                        for (var i = 0; i < LATAM.length; i++) {
                            $('#ctl00_PlaceHolderMain_CreatePerson_uoc_BasicInfo_grouping_OfficeLocation_control_internalDropDownList').children('option[value="' + LATAM[i] + '"]').hideOption();
                        }
                    }

                });
            }

        });
    </script>
	<IdentityManagement:CreatePerson runat="server" id="CreatePerson"/>
</asp:Content>
