// Example Registration Handler
global class KLRegHandler101 implements Auth.RegistrationHandler{
global User createUser(Id portalId, Auth.UserData data){
//The user is authorized, so create their Salesforce user
Profile p = [SELECT Id FROM profile WHERE name='Standard User'];
//TODO: Customize the username. Also check that the username doesn't already exist and
//possibly ensure there are enough org licenses to create a user. Must be 80 characters
for(string key : data.attributeMap.keySet())
system.debug('Create Incoming Attr Map key: [' + key + '] value: [' + data.attributeMap.get(key)+ ']');
u.username = data.username;
u.lastName = data.lastName;
u.firstName = data.firstName;
String alias = data.username;
alias = alias.substring(0, 8);
u.languagelocalekey = UserInfo.getLocale();
u.localesidkey = UserInfo.getLocale();
u.emailEncodingKey = 'UTF-8';
// u.timeZoneSidKey = UserInfo.getTimeZone();
global void updateUser(Id userId, Id portalId, Auth.UserData data){
User u = new User(id=userId);
//TODO: Customize the username. Must be 80 characters or less.
//u.username = data.username + '@myorg.com';
for(string key : data.attributeMap.keySet())
system.debug('Updt Incoming Attr Map key: [' + key + '] value: [' + data.attributeMap.get(key)+ ']');
system.debug('Updt Pre Username: ' + u.username );
system.debug('Updt Pre Email: ' + u.email);
system.debug('Updt Pre SN: ' + u.lastName);
system.debug('Updt Pre Email: ' + u.alias);
system.debug('Updt Pre Profile: ' + u.profileId);
system.debug('Updt Pre First Name: ' + u.firstName);
system.debug('Updt Pre Email Enc: ' + u.emailEncodingKey );