Merge pull request #1490 from schiesbn/user_displayname
let the user change his display name, if supported by the back-end
This commit is contained in:
commit
2fdf8ff3e7
20
lib/user.php
20
lib/user.php
|
@ -275,7 +275,7 @@ class OC_User {
|
||||||
foreach(self::$_usedBackends as $backend) {
|
foreach(self::$_usedBackends as $backend) {
|
||||||
if($backend->implementsActions(OC_USER_BACKEND_SET_DISPLAYNAME)) {
|
if($backend->implementsActions(OC_USER_BACKEND_SET_DISPLAYNAME)) {
|
||||||
if($backend->userExists($uid)) {
|
if($backend->userExists($uid)) {
|
||||||
$success |= $backend->setDisplayName($uid, $displayName);
|
$result |= $backend->setDisplayName($uid, $displayName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -436,6 +436,24 @@ class OC_User {
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Check whether user can change his display name
|
||||||
|
* @param $uid The username
|
||||||
|
* @returns true/false
|
||||||
|
*
|
||||||
|
* Check whether a specified user can change his display name
|
||||||
|
*/
|
||||||
|
public static function canUserChangeDisplayName($uid) {
|
||||||
|
foreach(self::$_usedBackends as $backend) {
|
||||||
|
if($backend->implementsActions(OC_USER_BACKEND_SET_DISPLAYNAME)) {
|
||||||
|
if($backend->userExists($uid)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Check if the password is correct
|
* @brief Check if the password is correct
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
// Check if we are a user
|
// Check if we are a user
|
||||||
|
|
||||||
OCP\JSON::callCheck();
|
OCP\JSON::callCheck();
|
||||||
OC_JSON::checkLoggedIn();
|
OC_JSON::checkLoggedIn();
|
||||||
|
|
||||||
|
@ -15,14 +16,14 @@ if(OC_SubAdmin::isUserAccessible(OC_User::getUser(), $username)) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if(is_null($userstatus)) {
|
if(is_null($userstatus)) {
|
||||||
OC_JSON::error( array( "data" => array( "message" => "Authentication error" )));
|
OC_JSON::error( array( "data" => array( "message" => $l->t("Authentication error") )));
|
||||||
exit();
|
exit();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Return Success story
|
// Return Success story
|
||||||
if( OC_User::setDisplayName( $username, $displayName )) {
|
if( OC_User::setDisplayName( $username, $displayName )) {
|
||||||
OC_JSON::success(array("data" => array( "username" => $username )));
|
OC_JSON::success(array("data" => array( "username" => $username, 'displayName' => $displayName )));
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
OC_JSON::error(array("data" => array( "message" => "Unable to change display name" )));
|
OC_JSON::error(array("data" => array( "message" => $l->t("Unable to change display name"), displayName => OC_User::getDisplayName($username) )));
|
||||||
}
|
}
|
|
@ -8,6 +8,8 @@ input#openid, input#webdav { width:20em; }
|
||||||
/* PERSONAL */
|
/* PERSONAL */
|
||||||
#passworderror { display:none; }
|
#passworderror { display:none; }
|
||||||
#passwordchanged { display:none; }
|
#passwordchanged { display:none; }
|
||||||
|
#displaynameerror { display:none; }
|
||||||
|
#displaynamechanged { display:none; }
|
||||||
input#identity { width:20em; }
|
input#identity { width:20em; }
|
||||||
#email { width: 17em; }
|
#email { width: 17em; }
|
||||||
|
|
||||||
|
|
|
@ -31,6 +31,33 @@ $(document).ready(function(){
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
$("#displaynamebutton").click( function(){
|
||||||
|
if ($('#displayName').val() != '' ) {
|
||||||
|
// Serialize the data
|
||||||
|
var post = $( "#displaynameform" ).serialize();
|
||||||
|
$('#displaynamechanged').hide();
|
||||||
|
$('#displaynemerror').hide();
|
||||||
|
// Ajax foo
|
||||||
|
$.post( 'ajax/changedisplayname.php', post, function(data){
|
||||||
|
if( data.status == "success" ){
|
||||||
|
$('#displaynamechanged').show();
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$('#newdisplayname').val(data.data.displayName)
|
||||||
|
$('#displaynameerror').html( data.data.message );
|
||||||
|
$('#displaynameerror').show();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
$('#displayName').val($('#oldDisplayName').val());
|
||||||
|
$('#displaynamechanged').hide();
|
||||||
|
$('#displaynameerror').show();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
$('#lostpassword #email').blur(function(event){
|
$('#lostpassword #email').blur(function(event){
|
||||||
if ($(this).val() == this.defaultValue){
|
if ($(this).val() == this.defaultValue){
|
||||||
|
|
|
@ -48,6 +48,8 @@ $tmpl->assign('usage_relative', $storageInfo['relative']);
|
||||||
$tmpl->assign('email', $email);
|
$tmpl->assign('email', $email);
|
||||||
$tmpl->assign('languages', $languages);
|
$tmpl->assign('languages', $languages);
|
||||||
$tmpl->assign('passwordChangeSupported', OC_User::canUserChangePassword(OC_User::getUser()));
|
$tmpl->assign('passwordChangeSupported', OC_User::canUserChangePassword(OC_User::getUser()));
|
||||||
|
$tmpl->assign('displayNameChangeSupported', OC_User::canUserChangeDisplayName(OC_User::getUser()));
|
||||||
|
$tmpl->assign('displayName', OC_User::getDisplayName());
|
||||||
|
|
||||||
$forms=OC_App::getForms('personal');
|
$forms=OC_App::getForms('personal');
|
||||||
$tmpl->assign('forms', array());
|
$tmpl->assign('forms', array());
|
||||||
|
|
|
@ -33,6 +33,23 @@ if($_['passwordChangeSupported']) {
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
if($_['displayNameChangeSupported']) {
|
||||||
|
?>
|
||||||
|
<form id="displaynameform">
|
||||||
|
<fieldset class="personalblock">
|
||||||
|
<legend><strong><?php echo $l->t('Display Name');?></strong></legend>
|
||||||
|
<div id="displaynamechanged"><?php echo $l->t('Your display name was changed');?></div>
|
||||||
|
<div id="displaynameerror"><?php echo $l->t('Unable to change your display name');?></div>
|
||||||
|
<input type="text" id="displayName" name="displayName" value="<?php echo $_['displayName']?>" />
|
||||||
|
<input type="hidden" id="oldDisplayName" name="oldDisplayName" value="<?php echo $_['displayName']?>" />
|
||||||
|
<input id="displaynamebutton" type="submit" value="<?php echo $l->t('Change display name');?>" />
|
||||||
|
</fieldset>
|
||||||
|
</form>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
|
||||||
<form id="lostpassword">
|
<form id="lostpassword">
|
||||||
<fieldset class="personalblock">
|
<fieldset class="personalblock">
|
||||||
<legend><strong><?php echo $l->t('Email');?></strong></legend>
|
<legend><strong><?php echo $l->t('Email');?></strong></legend>
|
||||||
|
|
Loading…
Reference in New Issue