Added setDisplayName RPC

pull/1/head
Caleb James DeLisle 7 years ago
parent 0b34ceb0eb
commit 2490ee253f

@ -26,6 +26,12 @@ define([
}); });
}; };
funcs.setDisplayName = function (name, cb) {
ctx.sframeChan.query('Q_SETTINGS_SET_DISPLAY_NAME', name, function (err) {
if (cb) { cb(err); }
});
};
Object.freeze(funcs); Object.freeze(funcs);
return { create: function (cb) { return { create: function (cb) {
nThen(function (waitFor) { nThen(function (waitFor) {

@ -41,4 +41,7 @@ define({
// iframe and synchronized with the other users. This will not trigger a EV_METADATA_UPDATE // iframe and synchronized with the other users. This will not trigger a EV_METADATA_UPDATE
// because the metadata contained in EV_METADATA_UPDATE does not contain the pad title. // because the metadata contained in EV_METADATA_UPDATE does not contain the pad title.
'Q_SET_PAD_TITLE_IN_DRIVE': true, 'Q_SET_PAD_TITLE_IN_DRIVE': true,
// Update the user's display-name which will be shown to contacts and people in the same pads.
'Q_SETTINGS_SET_DISPLAY_NAME': true,
}); });

@ -33,7 +33,10 @@ define([
//console.log('EV_METADATA_UPDATE'); //console.log('EV_METADATA_UPDATE');
var name; var name;
nThen(function (waitFor) { nThen(function (waitFor) {
Cryptpad.getLastName(waitFor(function (n) { name = n })); Cryptpad.getLastName(waitFor(function (err, n) {
if (err) { console.log(err); }
name = n;
}));
}).nThen(function (waitFor) { }).nThen(function (waitFor) {
sframeChan.event('EV_METADATA_UPDATE', { sframeChan.event('EV_METADATA_UPDATE', {
doc: { doc: {
@ -71,6 +74,19 @@ define([
}); });
}); });
sframeChan.on('Q_SETTINGS_SET_DISPLAY_NAME', function (newName, cb) {
Cryptpad.setAttribute('username', newName, function (err) {
if (err) {
console.log("Couldn't set username");
console.error(err);
cb('ERROR');
return;
}
Cryptpad.changeDisplayName(newName, true);
cb();
});
});
CpNfOuter.start({ CpNfOuter.start({
sframeChan: sframeChan, sframeChan: sframeChan,
channel: secret.channel, channel: secret.channel,

Loading…
Cancel
Save