~emersion/gamja

4249da4ba8b09575cbe745480b4ee7191fc3c9cb — Simon Ser 10 days ago 5507b32
Add /quiet and /unquiet
3 files changed, 26 insertions(+), 0 deletions(-)

M commands.js
M components/app.js
M lib/irc.js
M commands.js => commands.js +21 -0
@@ 272,6 272,20 @@ export default {
			app.open(nick);
		},
	},
	"quiet": {
		usage: "[nick]",
		description: "Quiet a user in the channel, or display the current quiet list",
		execute: (app, args) => {
			if (args.length == 0) {
				getActiveClient(app).send({
					command: "MODE",
					params: [getActiveChannel(app), "+q"],
				});
			} else {
				return setUserHostMode(app, args, "+q");
			}
		},
	},
	"quit": {
		description: "Quit",
		execute: (app, args) => {


@@ 344,6 358,13 @@ export default {
			return setUserHostMode(app, args, "-b");
		},
	},
	"unquiet": {
		usage: "<nick>",
		description: "Remove a user from the quiet list",
		execute: (app, args) => {
			return setUserHostMode(app, args, "-q");
		},
	},
	"voice": {
		usage: "<nick>",
		description: "Give a user voiced status on this channel",

M components/app.js => components/app.js +2 -0
@@ 726,6 726,8 @@ export default class App extends Component {
		case irc.RPL_ENDOFEXCEPTLIST:
		case irc.RPL_BANLIST:
		case irc.RPL_ENDOFBANLIST:
		case irc.RPL_QUIETLIST:
		case irc.RPL_ENDOFQUIETLIST:
			channel = msg.params[1];
			this.addMessage(serverID, channel, msg);
			break;

M lib/irc.js => lib/irc.js +3 -0
@@ 38,6 38,9 @@ export const ERR_PASSWDMISMATCH = "464";
export const ERR_YOUREBANNEDCREEP = "465";
// RFC 2812
export const ERR_UNAVAILRESOURCE = "437";
// Other
export const RPL_QUIETLIST = "728";
export const RPL_ENDOFQUIETLIST = "729";
// IRCv3 SASL: https://ircv3.net/specs/extensions/sasl-3.1
export const RPL_LOGGEDIN = "900";
export const RPL_LOGGEDOUT = "901";