Complete user attributes provisionning
This commit is contained in:
parent
137cb0e6c1
commit
90aba1ceda
29
start.php
29
start.php
|
@ -50,9 +50,8 @@
|
|||
$user = get_user_by_username($elgg_user['username']);
|
||||
$user->ldapDN = $elgg_user['ldapDN'];
|
||||
}
|
||||
else
|
||||
saml_sync_user($user, $elgg_user);
|
||||
if ($user) {
|
||||
saml_sync_user($user, $elgg_user);
|
||||
$result = login($user);
|
||||
$_SESSION['saml_user'] = TRUE;
|
||||
return $result;
|
||||
|
@ -85,6 +84,23 @@
|
|||
$user->name = $elgg_user['name'];
|
||||
$user->email = $elgg_user['email'];
|
||||
$user->ldapDN = $elgg_user['ldapDN'];
|
||||
$user->birthday = $elgg_user['birthday'];
|
||||
$user->ircem = $elgg_user['ircem'];
|
||||
$user->urssaf = $elgg_user['urssaf'];
|
||||
$user->address = $elgg_user['address'];
|
||||
$user->zipcode = $elgg_user['zipcode'];
|
||||
$user->city = $elgg_user['city'];
|
||||
$user->location = array($user->city, 'France');
|
||||
$user->mobile = $elgg_user['mobile'];
|
||||
$user->landline = $elgg_user['landline'];
|
||||
remove_entity_relationships($user->guid, 'user2usertype');
|
||||
foreach ($elgg_user['usertype'] as $usertype) {
|
||||
$usertype = get_entities_by_title($usertype, 'object', 'usertype');
|
||||
$usertype = $usertype[0];
|
||||
if (!check_entity_relationship($user->guid, 'user2usertype', $usertype->guid)) {
|
||||
add_entity_relationship($user->guid, 'user2usertype', $usertype->guid);
|
||||
}
|
||||
}
|
||||
$user->save();
|
||||
}
|
||||
|
||||
|
@ -131,6 +147,15 @@
|
|||
else
|
||||
$elgg_user['name'] = $elgg_user['username'];
|
||||
$elgg_user['email'] = $attributes[$config->email][0];
|
||||
$elgg_user['usertype'] = $attributes['userClass'];
|
||||
$elgg_user['ircem'] = $attributes['numeroIRCEM'][0];
|
||||
$elgg_user['urssaf'] = $attributes['numeroURSSAF'][0];
|
||||
$elgg_user['birthday'] = $attributes['dateOfBirth'][0];
|
||||
$elgg_user['address'] = $attributes['homeStreetAddress'][0];
|
||||
$elgg_user['zipcode'] = $attributes['homePostalCode'][0];
|
||||
$elgg_user['city'] = $attributes['homeLocalityName'][0];
|
||||
$elgg_user['mobile'] = $attributes['mobile'][0];
|
||||
$elgg_user['landline'] = $attributes['telephoneNumber'][0];
|
||||
|
||||
return $elgg_user;
|
||||
}
|
||||
|
|
Reference in New Issue