mirror of
https://git.sr.ht/~emersion/gamja
synced 2024-11-28 18:45:51 -05:00
commands: add password param to /join
This commit is contained in:
parent
9f93e200ed
commit
fab42ba2ee
3 changed files with 14 additions and 6 deletions
|
@ -54,14 +54,18 @@ function markServerBufferUnread(app) {
|
|||
}
|
||||
|
||||
const join = {
|
||||
usage: "<name>",
|
||||
usage: "<name> [password]",
|
||||
description: "Join a channel",
|
||||
execute: (app, args) => {
|
||||
let channel = args[0];
|
||||
if (!channel) {
|
||||
throw new Error("Missing channel name");
|
||||
}
|
||||
app.open(channel);
|
||||
if (args.length > 1) {
|
||||
app.open(channel, null, args[1]);
|
||||
} else {
|
||||
app.open(channel);
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
|
|
|
@ -1122,7 +1122,7 @@ export default class App extends Component {
|
|||
client.monitor(target);
|
||||
}
|
||||
|
||||
open(target, serverID) {
|
||||
open(target, serverID, password) {
|
||||
if (!serverID) {
|
||||
serverID = State.getActiveServerID(this.state);
|
||||
}
|
||||
|
@ -1132,7 +1132,7 @@ export default class App extends Component {
|
|||
this.switchBuffer({ server: serverID });
|
||||
} else if (client.isChannel(target)) {
|
||||
this.switchToChannel = target;
|
||||
client.join(target).catch((err) => {
|
||||
client.join(target, password).catch((err) => {
|
||||
this.showError(err);
|
||||
});
|
||||
} else {
|
||||
|
|
|
@ -802,10 +802,14 @@ export default class Client extends EventTarget {
|
|||
});
|
||||
}
|
||||
|
||||
join(channel) {
|
||||
join(channel, password) {
|
||||
let params = [channel];
|
||||
if (password) {
|
||||
params.push(password);
|
||||
}
|
||||
let msg = {
|
||||
command: "JOIN",
|
||||
params: [channel],
|
||||
params: params,
|
||||
};
|
||||
return this.roundtrip(msg, (msg) => {
|
||||
switch (msg.command) {
|
||||
|
|
Loading…
Reference in a new issue