Theme fixes; layout fixes; limit channel registrations

This commit is contained in:
calzoneman 2014-02-06 10:37:00 -06:00
parent 07feb91cc6
commit 359a228d5f
10 changed files with 110 additions and 38 deletions

View file

@ -1713,10 +1713,7 @@ Channel.prototype.addMedia = function (data, callback) {
}
if (err && err !== "Item not in library") {
user.socket.emit("queueFail", {
msg: "Internal error: " + err,
link: util.formatLink(data.id, data.type)
});
callback(err, null);
lock.release();
return;
}

View file

@ -49,6 +49,7 @@ var defaults = {
},
"youtube-v2-key": "",
"channel-save-interval": 5,
"max-channels-per-user": 5,
"guest-login-delay": 60,
"enable-tor-blocker": true,
stats: {

View file

@ -251,41 +251,64 @@ function handleNewChannel(req, res) {
return;
}
if (name.match(Config.get("reserved-names.channels"))) {
db.channels.listUserChannels(loginName, function (err2, channels) {
db.channels.listUserChannels(loginName, function (err, channels) {
if (err) {
sendJade(res, "account-channels", {
loggedIn: true,
loginName: loginName,
channels: err2 ? [] : channels,
newChannelError: "That channel name is reserved"
channels: [],
newChannelError: err
});
});
return;
}
db.channels.register(name, user.name, function (err, channel) {
if (!err) {
Logger.eventlog.log("[channel] " + user.name + "@" +
webserver.ipForRequest(req) + " registered channel " +
name);
var sv = Server.getServer();
if (sv.isChannelLoaded(name)) {
var chan = sv.getChannel(name);
chan.users.forEach(function (u) {
u.kick("Channel reloading");
});
if (!chan.dead) {
chan.emit("empty");
}
}
return;
}
db.channels.listUserChannels(loginName, function (err2, channels) {
if (name.match(Config.get("reserved-names.channels"))) {
sendJade(res, "account-channels", {
loggedIn: true,
loginName: loginName,
channels: err2 ? [] : channels,
channels: channels,
newChannelError: "That channel name is reserved"
});
return;
}
if (channels.length >= Config.get("max-channels-per-user")) {
sendJade(res, "account-channels", {
loggedIn: true,
loginName: loginName,
channels: channels,
newChannelError: "You are not allowed to register more than " +
Config.get("max-channels-per-user") + " channels."
});
return;
}
db.channels.register(name, user.name, function (err, channel) {
if (!err) {
Logger.eventlog.log("[channel] " + user.name + "@" +
webserver.ipForRequest(req) +
" registered channel " + name);
var sv = Server.getServer();
if (sv.isChannelLoaded(name)) {
var chan = sv.getChannel(name);
chan.users.forEach(function (u) {
u.kick("Channel reloading");
});
if (!chan.dead) {
chan.emit("empty");
}
}
channels.push({
name: name
});
}
sendJade(res, "account-channels", {
loggedIn: true,
loginName: loginName,
channels: channels,
newChannelError: err ? err : undefined
});
});