add switch to enable/disable the possibility to change the display name by the user

This commit is contained in:
Björn Schießle 2013-02-10 14:43:31 +01:00
parent 1c56539c01
commit d8fee28b3b
3 changed files with 13 additions and 4 deletions

View File

@ -114,6 +114,9 @@ $CONFIG = array(
/* How long should ownCloud keep deleted files in the trash bin, default value: 180 days */
'trashbin_retention_obligation' => 180,
/* allow user to change his display name, if it is supported by the back-end */
'allow_user_to_change_display_name' => true,
/* Check 3rdparty apps for malicious code fragments */
"appcodechecker" => "",

View File

@ -445,6 +445,7 @@ class OC_User {
* Check whether a specified user can change his display name
*/
public static function canUserChangeDisplayName($uid) {
if (OC_Config::getValue('allow_user_to_change_display_name', true)) {
foreach(self::$_usedBackends as $backend) {
if($backend->implementsActions(OC_USER_BACKEND_SET_DISPLAYNAME)) {
if($backend->userExists($uid)) {
@ -452,6 +453,7 @@ class OC_User {
}
}
}
}
return false;
}

View File

@ -15,6 +15,10 @@ if(OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username)) {
$userstatus = 'subadmin';
}
if ($username == OC_User::getUser() && OC_User::canUserChangeDisplayName($username)) {
$userstatus = 'changeOwnDisplayName';
}
if(is_null($userstatus)) {
OC_JSON::error( array( "data" => array( "message" => $l->t("Authentication error") )));
exit();