How can i get user profile of user current login by javascript?

Copper Contributor

Hello,

       I will get user profile of user current login by javascript as code below but information appear only me and other user not show. Please suggest me.

Thank you.

Aor. 

 

<script type="text/javascript" src="https://ajax.aspnetcdn.com/ajax/4.0/1/MicrosoftAjax.js"></script>
    <script type="text/javascript" src="/_layouts/15/sp.runtime.js"></script>
    <script type="text/javascript" src="/_layouts/15/sp.js"></script>
    <script type="text/javascript" src="/_layouts/15/sp.userprofiles.js"></script>
    <script type="text/javascript" src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
    <script type="text/javascript">
        var personProperties;
        var targetUser;
        var clientContext;
        var managerName;
        var peopleManager;
 
        $(document).ready(function () {
            getCurrentUser();
        });
 
        function getCurrentUser() {
            clientContext = new SP.ClientContext.get_current();
            var web = clientContext.get_web();
            targetUser = web.get_currentUser();
            clientContext.load(targetUser);
            clientContext.executeQueryAsync(getUserProperties, getCurrentUserFail);
        }
 
        function getUserProperties() {
            var loginName = targetUser.get_loginName();
            peopleManager = new SP.UserProfiles.PeopleManager(clientContext);
            personProperties = peopleManager.getPropertiesFor(loginName);
            clientContext.load(personProperties);
            clientContext.executeQueryAsync(getCurrentUserSuccess, getCurrentUserFail);
        }
 
        function getCurrentUserSuccess() {
            managerName = peopleManager.getPropertiesFor(personProperties.get_userProfileProperties()['Manager']);
            clientContext.load(managerName);
            clientContext.executeQueryAsync(onFinalSuccess, getCurrentUserFail);
 
        }
 
        function onFinalSuccess(){
            $get("userName").innerHTML = "<b>Name: " + personProperties.get_userProfileProperties()['PreferredName'] + "</b>";
            $get("userDesignation").innerHTML = "<b>Designation: </b>" + personProperties.get_userProfileProperties()['SPS-JobTitle'];
            $get("userEmployeeID").innerHTML = "<b>Employee ID: </b>" + personProperties.get_userProfileProperties()['EmployeeID'];
            $get("userWorkEmailID").innerHTML = "<b>Email ID: </b>" + personProperties.get_userProfileProperties()['WorkEmail'];
            $get("userPhone").innerHTML = "<b>Phone No.: </b>" + personProperties.get_userProfileProperties()['WorkPhone'];
            $get("userDepartment").innerHTML = "<b>Department: </b>" + personProperties.get_userProfileProperties()['SPS-Department'];
            $get("userManager").innerHTML = "<b>Manager: </b>" + personProperties.get_userProfileProperties()['SPS-Location'];
            $get("userLocation").innerHTML = "<b>Location: </b>" + managerName.get_userProfileProperties()['PreferredName'];
        }
 
        function getCurrentUserFail() {
            alert("Operation Failed!");
        }
    </script>
 
    <div id="userName"></div>
    <div id="userDesignation"></div>
    <div id="userEmployeeID"></div>
    <div id="userWorkEmailID"></div>
    <div id="userPhone"></div>
    <div id="userDepartment"></div>
    <div id="userManager"></div>
    <div id="userLocation"></div>
1 Reply