2016-10-09 19:14:02 +00:00
|
|
|
"use strict";
|
|
|
|
|
2014-09-13 21:29:45 +00:00
|
|
|
var _ = require("lodash");
|
|
|
|
|
|
|
|
module.exports = User;
|
|
|
|
|
2016-09-24 16:34:35 +00:00
|
|
|
function User(attr, prefixLookup) {
|
2016-10-02 07:37:37 +00:00
|
|
|
_.defaults(this, attr, {
|
2016-09-24 16:34:35 +00:00
|
|
|
modes: [],
|
2017-06-01 18:54:46 +00:00
|
|
|
mode: "",
|
2016-09-24 16:34:35 +00:00
|
|
|
nick: ""
|
2016-10-02 07:37:37 +00:00
|
|
|
});
|
2016-09-24 16:34:35 +00:00
|
|
|
|
|
|
|
// irc-framework sets character mode, but lounge works with symbols
|
2017-04-08 12:34:31 +00:00
|
|
|
this.modes = this.modes.map((mode) => prefixLookup[mode]);
|
2016-09-24 16:34:35 +00:00
|
|
|
|
2017-06-01 18:54:46 +00:00
|
|
|
if (this.modes[0]) {
|
|
|
|
this.mode = this.modes[0];
|
|
|
|
}
|
2014-09-13 21:29:45 +00:00
|
|
|
}
|
2017-06-01 18:54:46 +00:00
|
|
|
|
|
|
|
User.prototype.toJSON = function() {
|
|
|
|
return {
|
|
|
|
nick: this.nick,
|
|
|
|
mode: this.mode,
|
|
|
|
};
|
|
|
|
};
|