﻿<html><head><meta>
    <title>User Search</title>
      <meta charset="utf-8"><meta></head>
    <body>
        <link href="/_common/styles/theme.css.aspx" rel="stylesheet" type="text/css">
        <link href="/_common/styles/global.css.aspx" rel="Stylesheet" type="text/css">
        <link href="/_common/styles/fonts.css.aspx" rel="Stylesheet" type="text/css">
        <link href="/_common/styles/Dialogs.css.aspx" rel="Stylesheet" type="text/css">
        <link href="/_forms/controls/controls.css.aspx" rel="Stylesheet" type="text/css">
        <script src="ClientGlobalContext.js.aspx" type="text/javascript"></script>
        <script src="iotap_jquery_1.9.1.js" type="text/javascript"></script>
        <script src="iotap_json2.js" type="text/javascript"></script>

        <style type="text/css">
            .dataRow:hover
            {
                background-color:#D7EBF9;
            }

            .highlight {
                background: #B1D6F0;
            }
            .nonhighlight {
                background: transparent;
            }
        </style>
         <script>
             $('#tabletest').bind('click', function (e) {
                 $(e.target).closest('tr').children('td,th').css('background-color', '#B1D6F0');
             });
            </script>
        <script type="text/javascript">

            function Querystring() {
                var querystring = location.search.substring(1, location.search.length);
                var args = querystring.split('&');
                for (var i = 0; i < args.length; i++) {
                    var pair = args[i].split('=');

                    temp = unescape(pair[0]).split('+');

                    name = temp.join(' ');
                    temp = unescape(pair[1]).split('+');
                    value = temp.join(' ');
                    this[name] = value;
                }
                this.get = Querystring_get;

            }

            function Querystring_get(strKey, strDefault) {
                var value = this[strKey];
                if (value == null) {
                    value = strDefault;
                }
                return value;
            }

            var GetServerURL = function ()
            {
                return Xrm.Page.context.getClientUrl();
            };

            function ShowCustomLookup(isOnLoad, pageNumber, isSearch, searchString) {
                
                $("#page_L0").hide();
                $("#page_R0").hide();

                var entityName = "systemuser"; 

                $("#divTitle").empty();
                $("#headerRow").empty();
                var fetchXml = '';
                var img = "iotap_ico_16_8.gif";
               
                var searchCondition = '';

                if ( searchString != "" )
                    searchCondition = "systemusers?$select=fullname&$orderby=fullname asc&$filter=contains(fullname,'" + searchString + "')";
                else
                    searchCondition = "systemusers?$select=fullname&$orderby=fullname asc";

                $.ajax( {
                    type: "GET",
                    contentType: "application/json; charset=utf-8",
                    datatype: "json",
                    url: GetServerURL() + "/api/data/v8.0/" + searchCondition, 
                    beforeSend: function ( XMLHttpRequest )
                    {
                        //Specifying this header ensures that the results will be returned as JSON.             
                        XMLHttpRequest.setRequestHeader( "Accept", "application/json" );
                        XMLHttpRequest.setRequestHeader( "OData-MaxVersion", "4.0" );
                        XMLHttpRequest.setRequestHeader( "OData-Version", "4.0" );

                    },

                    success: function ( data, textStatus, XmlHttpRequest )
                    {   
                        ShowReviewerInGrid( data, false, 1 );
                           
                    },

                    error: function ( XmlHttpRequest, textStatus, errorThrown )
                    {
                        alert( "Error Retrieving Users : " + errorThrown );
                    }
                } );                    
                

            }

            function ShowReviewerInGrid(Reviewers, moreRecords, pageNumber) {
                $("#_PageNum").empty();
                $("#_PageNum").append(pageNumber);
                $( "#gridBody" ).empty();

                if ( Reviewers.value != null & Reviewers.value.length > 0 ) {
                    $( Reviewers.value ).each( function ( i, Reviewers )
                    {
                        var newRow = '<tr id="tr' + Reviewers.systemuserid + '" onclick="colorchange(this)"><td id="' + Reviewers.systemuserid + '" class="dataRow" onclick="ShowAndSaveSelected(this)" ondblclick="OnRowDbClick1(this)">' +
                        '<img src="iotap_ico_16_8.gif" style="padding-right: 4px;vertical-align: middle;">' + Reviewers.fullname + '</td></tr>';

                        $( "#gridBody" ).append( newRow );
                    } );
                }
                
                $('#page_L0').unbind();
                var previous = pageNumber - 1;
                if (previous < 1)
                    $("#page_L0").hide();
                else {
                    $("#page_L0").show();
                    $('#page_L0').click(function () {
                        ShowCustomLookup(false, previous, false);
                    });
                }

                $('#page_R0').unbind();
                if (moreRecords) {
                    pageNumber++;
                    $("#page_R0").show();
                    $('#page_R0').click(function () {
                        ShowCustomLookup(false, pageNumber, false);
                    });

                }
                else {
                    $("#page_R0").hide();
                    if (pageNumber > 1)
                        $("#page_L0").show();
                }

                if (pageNumber == 1)
                    $("#page_L0").hide();
            }

            function colorchange(trobj) {
                var table = document.getElementById('tabletest');
                var rowLength = table.rows.length;
                for (var i = 0; i < rowLength; i += 1) {
                    var row = table.rows[i];
                    row.bgColor = "transparent";
                }
                trobj.style.backgroundColor = "#B1D6F0";
            }

            //-------------------------------------------------------------------------------------------------------
            function ShowAndSaveSelected(tdObj) {
                var text = tdObj.textContent || tdObj.innerText;
                if ($("#hdcompaniesid").val().length > 0) {
                    $("#hdcompaniesid").val("");
                }
                var table = document.getElementById('tabletest');

                var rowLength = table.rows.length;
                for (var i = 0; i < rowLength; i += 1) {
                    var row = table.rows[i];
                    row.bgColor = "transparent";
                }
                tdObj.style.backgroundColor = "#B1D6F0";
                
                $("#hdcompaniesid").val(tdObj.id);
                $("#username").val(text);
                var value = $("#hdcompaniesid").val();
            }

            

            function OnRowDbClick1(tdObj) {
                var text = tdObj.textContent || tdObj.innerText;
                if ($("#hdcompaniesid").val().length > 0) {
                    $("#hdcompaniesid").val("");
                }
                
                $("#hdcompaniesid").val(tdObj.id);
                $("#username").val(text);
                var value = $("#hdcompaniesid").val();
                DoSave1();
            }

            function DoSave1() {
                var returnTextName;
                var returnTextId;
                var ID = $("#hdcompaniesid").val().toString();
                var NAME = $("#username").val().toString();
                
                returnTextName = NAME;
                returnTextId = ID;
                
                window.opener.updateNameValue(returnTextName);
                window.opener.updateIdValue(returnTextId);
                try {
                    closeWindow(true);
                }
                catch (e) { }
            }
            
            function toggleSelectLookupItem(oLookupItem) {
                if (!isTrue(oLookupItem.getAttribute("selected"))) {
                    oLookupItem.className = "ms-crm-Lookup-SelectedDialogItem";
                    oLookupItem.setAttribute("selected", "true");
                }
                else {
                    oLookupItem.className = "ms-crm-Lookup-DialogItem";
                    oLookupItem.setAttribute("selected", "false");
                }
                lastfocus = "selectedItems";                
            }

            function isTrue(val) {
                return (val != null && ((typeof (val) == "boolean" && val) || (typeof (val) == "string" && val == "true")));
            }

            function DoClose() {
                try {
                    closeWindow(true);
                }
                catch (e) { }
            }

            function SearchRecords() {
                searchString = $("#txtSearch").val();
                ShowCustomLookup(false, 1, true, searchString);
            }
        </script>
    

    <form id="crmForm" runat="server">
        <table id="mainContainer" style="border: 0px solid rgb(192, 192, 192); width: 100%; height: 100%; background-color: white; border-image: none;">
            <tbody>
                <tr style="visibility: visible;">
                    <td class="ms-crm-Dialog-Header" id="tdDialogHeader" colspan="2">
                        <div class="ms-crm-Dialog-Header-Title" id="divTitle"><!--Lookup For Companies--></div>
                    </td>
                </tr>
                <tr>
                    <td style="vertical-align: top;" colspan="2">
                        <div id="dvSearch" style="vertical-align: bottom;">
                            <span>
                            Search 
                            <input id="txtSearch" style="width: 80%; height: 22px; vertical-align: middle;" type="text"><img style="height: 18px !important; padding-top: 1px; padding-bottom: 1px; vertical-align: middle; border-top-color: rgb(198, 198, 198); border-right-color: rgb(198, 198, 198); border-bottom-color: rgb(198, 198, 198); border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; cursor: pointer;" onclick="SearchRecords()" alt="Search" src="/_imgs/search_normal.gif">
                            </span>
                            <!--<input id="btnSearch" type="button" value="Search" onclick="SearchRecords()" style="width: 10%;" />-->
                        </div>
                    </td>
                </tr>
                <tr>
                    <th id="headerRow" style="font-weight: bold; border-top-color: black; border-bottom-color: black; border-top-width: 1px; border-bottom-width: 1px; border-top-style: solid; border-bottom-style: solid;" colspan="2"></th>
                </tr>
                <tr style="border-bottom-color: black; border-bottom-width: 1px; border-bottom-style: solid;">
                    <td style="vertical-align: top; border-bottom-color: black; border-bottom-width: 1px; border-bottom-style: solid;overflow:auto;" colspan="2">
                        <div style="height: 320px; -ms-overflow-y: auto;">
                        <table id="tabletest" style="width: 100%;">
                           
                            <tbody id="gridBody" style="border: 1px solid rgb(0, 0, 0); border-image: none;">

                            </tbody>
                        </table>
                        </div>
                    </td>
                </tr>
                <tr style="height: 10px;">
                    <td></td>
                    <td class="ms-crm-List-Paging" id="crmGrid_PageInfo" nowrap="" style="text-align: right;">
                        <a tabindex="-1" title="Load Previous Page" class="toolbarbutton" id="_prevPageImg" style="cursor: auto;" target="_self">
                            <img title="" align="absmiddle" class="ms-crm-ImageStrip-page_L0" id="page_L0" style="cursor: pointer;" alt="" src="/_imgs/imagestrips/transparent_spacer.gif" hspace="6" temptooltip="Load Previous Page"></a>
                        Page <span id="_PageNum">1</span>
                        <a tabindex="-1" title="Load Next Page" class="toolbarbutton" id="_nextPageImg" style="cursor: auto;" target="_self">
                            <img title="" align="absmiddle" class="ms-crm-ImageStrip-page_R0" id="page_R0" style="cursor: pointer;" alt="" src="/_imgs/imagestrips/transparent_spacer.gif" hspace="6" temptooltip="Load Next Page"></a>&nbsp;
                    </td>
                </tr>
            </tbody>
           
            <tbody>
                <tr style="visibility: visible;">
                    <td class="ms-crm-Dialog-Footer" id="tdDialogFooter" style="text-align: right; background-color: white;" colspan="2">
                        <input name="Save" class="ms-crm-RefreshDialog-Button" onclick="DoSave1()" type="button" value="Save">
                        <input name="Cancel" class="ms-crm-RefreshDialog-Button" onclick="DoClose()" type="button" value="Cancel">
                    </td>
                </tr>
            </tbody>
        </table>
        <div style="display: none;">
            <input id="hdcompaniesid" style="visibility: hidden;" type="text">
            <input id="username" style="visibility: hidden;" type="text">
        </div>
    </form>

</body></html>