Documentation for: ASP.NET Ajax Version 1.0

This documentation is for a previous version. For the current released version, see the ASP.NET Ajax documentation on MSDN.

 

 

 

 

 

 

 

Sys.Services.ProfileService Class

Introduction

Provides the client proxy class for the profile service.

Namespace: Sys.Services

Inherits: None

Members

Name

Description

properties Field

Contains the profile information.

load Method

Loads the specified profile properties.

save Method

Saves the specified profile properties.

defaultFailedCallback Property

Gets or sets the default failure callback function.

defaultLoadCompletedCallback Property

Gets or sets the default load-completed callback function.

defaultSaveCompletedCallback Property

Gets or sets the name of the default save-completed callback function.

path Property

Gets or sets the profile service path.

timeout Property

Gets or sets the profile service time-out value.

Remarks

The ProfileService class provides script access to a user's profile information. It calls methods of the profile service through the same infrastructure used to call any other Web service method.

note

The built-in profile service is located on the server in a predefined location.

The Profile class is a singleton; it has only one instance that provides a global point of access. It is always available to your application and you do not have to instantiate it.

Example

Description

The following example shows how to use the ProfileService class to obtain profile information for the currently authenticated user. For more information, see Using Profile Information.

Code

javascript

// The OnClickLogin function is called when 
// the user clicks the Login button. 
// It calls the AuthenticationService.login to
// authenticates the user.
function OnClickLogin()
{
	Sys.Services.AuthenticationService.login(
	    document.form1.userId.value,
	    document.form1.userPwd.value,false,null,null,
	    OnLoginComplete, OnAuthenticationFailed,
	    "User context information.");
}

// The OnClickLogout function is called when 
// the user clicks the Logout button. 
// It logs out the current authenticated user.
function OnClickLogout()
{
	Sys.Services.AuthenticationService.logout(
	    null, OnLogoutComplete, OnAuthenticationFailed,null);
}


function OnLogoutComplete(result, 
    userContext, methodName)
{
	// Code that performs logout 
	// housekeeping goes here.			
}		

// This function is called after the user is
// authenticated. It loads the user's profile.
// This is the callback function called 
// if the authentication completed successfully.
function OnLoginComplete(validCredentials, 
    userContext, methodName)
{
	if(validCredentials == true)
	{
		DisplayInformation("Welcome " + document.form1.userId.value);
	
	    // Set the default failed callback function.
		DefaultFailedCallback();
		
		// Set the default load callback function.
		DefaultLoadCompletedCallback();
		
        // Set the default save callback function.
		DefaultSaveCompletedCallback();
		
		// Get path and timeout
		GetPathAndTimeout();
		
		
		LoadProfile();
		
	
		// Hide or make visible page display elements.
		GetElementById("loginId").style.visibility = "hidden";
	    GetElementById("setProfProps").style.visibility = "visible";
		GetElementById("logoutId").style.visibility = "visible";
	
	}
	else
	{
		DisplayInformation("Could not login");
	}
}

// This is the callback function called 
// if the authentication failed.
function OnAuthenticationFailed(error_object, 
    userContext, methodName)
{	
    DisplayInformation("Authentication failed with this error: " +
	    error_object.get_message());
}



// Gets the profile service path and timeout.
function GetPathAndTimeout()
{
    // Get the profile service path
    var path = Sys.Services.ProfileService.get_path();

    if (path == "")
        path = "standard default path";

    alert("The profile service path is: " + path);

    // Get the profile service timeout
    var timeout = Sys.Services.ProfileService.get_timeout();

    alert("The profile service timeout is: " + timeout);

}

// Sets and gets the default load completed callback function.
function DefaultLoadCompletedCallback()
{
	   

    // Set default load completed callback function.
    Sys.Services.ProfileService.set_defaultLoadCompletedCallback(OnLoadCompleted);

     // Get default load completed callback function.
    var defaultLoadCompletedCallback =
        Sys.Services.ProfileService.get_defaultLoadCompletedCallback();
    	   

    alert("The default load completed callback is: " + 
        defaultLoadCompletedCallback);

}

// Sets and gets the default save completed callback function.
function DefaultSaveCompletedCallback()
{

    // Set default load completed callback function.
    Sys.Services.ProfileService.set_defaultSaveCompletedCallback(OnSaveCompleted);

     // Get default save completed callback function.
    var defaultSaveCompletedCallback =
        Sys.Services.ProfileService.get_defaultSaveCompletedCallback();


    alert("The default save completed callback is: " + 
        defaultSaveCompletedCallback);

}
// Sets and gets the default failed callback function.
function DefaultFailedCallback()
{
	   
    // Set default failed callback function.
    Sys.Services.ProfileService.set_defaultFailedCallback(OnProfileFailed);

     // Get default failed callback function.
    var defaultFailedCallback =
        Sys.Services.ProfileService.get_defaultFailedCallback();   	   


    alert("The default failed callback is: " + defaultFailedCallback);

}


// Loads the profile of the current
// authenticated user.
function LoadProfile()
{
	Sys.Services.ProfileService.load(null, 
	    OnLoadCompleted, OnProfileFailed, null);

}

// Saves the new profile
// information entered by the user.
function SaveProfile()
{
	   
	Sys.Services.ProfileService.properties.Backgroundcolor = 
	    GetElementById("bgcolor").value;
	
	Sys.Services.ProfileService.properties.Foregroundcolor =
	    GetElementById("fgcolor").value; 

	   
	Sys.Services.ProfileService.save(null, 
	    OnSaveCompleted, OnProfileFailed, null);

}

// Reads the profile information and displays it.
function OnLoadCompleted(numProperties, userContext, methodName)
{
	document.bgColor = 
	    Sys.Services.ProfileService.properties.Backgroundcolor;

    document.fgColor =   
	    Sys.Services.ProfileService.properties.Foregroundcolor;			
}



// This is the callback function called 
// if the profile was saved successfully.
function OnSaveCompleted(numProperties, userContext, methodName)
{
	LoadProfile();
	// Hide the area that contains 
	// the controls to set the profile properties.
    SetProfileControlsVisibility("hidden");
}

// This is the callback function called 
// if the profile load or save operations failed.
function OnProfileFailed(error_object, userContext, methodName)
{
	alert("Profile service failed with message: " + 
	        error_object.get_message());
}


// Utility functions.

// This function sets the visibilty for the
// area containing the page elements for settings
// profiles.
function SetProfileControlsVisibility(currentVisibility)
{
    GetElementById("setProfileProps").style.visibility = 
        currentVisibility; 
}

// Utility function to display user's information.
function DisplayInformation(text)
{
	document.getElementById('placeHolder').innerHTML += 
	"<br/>"+ text;
}


function GetElementById(elementId)
{
    var element = document.getElementById(elementId);
    return element;
}

// Notify ScriptManager that this is the end of the script.
if (typeof(Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();