1. Get user info then auto fill to controls
var displayName = "";
function GetUser()
{
displayName = $().SPServices.SPGetCurrentUser({
fieldName: "Title"
});
var ctx = new SP.ClientContext.get_current();
this.currentUser = ctx.get_web().get_currentUser();
ctx.load(this.currentUser);
ctx.executeQueryAsync(Function.createDelegate(this, this.onSucceededGetUser),
Function.createDelegate(this, this.onQueryFailed));
}
function onSucceededGetUser(sender, args)
{
//alert("The users " + this.currentUser.get_loginName());
$("input[Title='Title']").val(displayName);
$("input[Title='Account']").val(this.currentUser.get_loginName());
$("input[Title='Email']").val(this.currentUser.get_email());
}
function onQueryFailed(sender, args)
{
alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
}
2. Update user email info
function UpdateUserEmail()
{
var ctx = new SP.ClientContext.get_current();
this.currentUser = ctx.get_web().get_currentUser();
var email = $("input[Title='Email']").val();
this.currentUser.set_email(email);
this.currentUser.update();
ctx.executeQueryAsync(Function.createDelegate(this, this.onSucceededUpdateUserEmail),
Function.createDelegate(this, this.onQueryFailed));
}
function onSucceededUpdateUserEmail(sender, args)
{
alert("Updated! " + this.currentUser.get_email());
}
댓글 없음:
댓글 쓰기