Merge pull request #1990 from matrix-org/t3chguy/no_displayname

fix no displayname usersettings
This commit is contained in:
Luke Barnard 2018-06-22 10:34:04 +01:00 committed by GitHub
commit 9265f0d032
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1,5 +1,6 @@
/* /*
Copyright 2015, 2016 OpenMarket Ltd Copyright 2015, 2016 OpenMarket Ltd
Copyright 2018 New Vector Ltd
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@ -14,36 +15,28 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
'use strict'; import React from 'react';
const React = require('react'); import sdk from '../../../index';
const sdk = require('../../../index'); import MatrixClientPeg from '../../../MatrixClientPeg';
const MatrixClientPeg = require("../../../MatrixClientPeg");
import { _t } from '../../../languageHandler'; import { _t } from '../../../languageHandler';
module.exports = React.createClass({ module.exports = React.createClass({
displayName: 'ChangeDisplayName', displayName: 'ChangeDisplayName',
_getDisplayName: function() { _getDisplayName: async function() {
const cli = MatrixClientPeg.get(); const cli = MatrixClientPeg.get();
return cli.getProfileInfo(cli.credentials.userId).then(function(result) { try {
let displayname = result.displayname; const res = await cli.getProfileInfo(cli.getUserId());
if (!displayname) { return res.displayname;
if (MatrixClientPeg.get().isGuest()) { } catch (e) {
displayname = "Guest " + MatrixClientPeg.get().getUserIdLocalpart();
} else {
displayname = MatrixClientPeg.get().getUserIdLocalpart();
}
}
return displayname;
}, function(error) {
throw new Error("Failed to fetch display name"); throw new Error("Failed to fetch display name");
}); }
}, },
_changeDisplayName: function(new_displayname) { _changeDisplayName: function(newDisplayname) {
const cli = MatrixClientPeg.get(); const cli = MatrixClientPeg.get();
return cli.setDisplayName(new_displayname).catch(function(e) { return cli.setDisplayName(newDisplayname).catch(function(e) {
throw new Error("Failed to set display name"); throw new Error("Failed to set display name", e);
}); });
}, },