This commit is contained in:
Graham 2015-01-23 20:47:01 -05:00
commit 461301abfc
17 changed files with 183 additions and 307 deletions

View file

@ -175,12 +175,11 @@ Callbacks = {
}
},
setMotd: function(data) {
CHANNEL.motd = data.html;
CHANNEL.motd_text = data.motd;
$("#motd").html(CHANNEL.motd);
$("#cs-motdtext").val(CHANNEL.motd_text);
if (data.motd != "") {
setMotd: function(motd) {
CHANNEL.motd = motd;
$("#motd").html(motd);
$("#cs-motdtext").val(motd);
if (motd != "") {
$("#motdwrap").show();
$("#motd").show();
$("#togglemotd").find(".glyphicon-plus")

View file

@ -19,7 +19,6 @@ var CHANNEL = {
css: "",
js: "",
motd: "",
motd_text: "",
name: false,
usercount: 0,
emotes: []

View file

@ -18,6 +18,7 @@ var YouTubePlayer = function (data) {
self.videoId = data.id;
self.videoLength = data.seconds;
self.theYouTubeDevsNeedToFixThisShit = false;
self.whyDoesSetPlaybackQualityHaveARaceCondition = true;
var wmode = USEROPTS.wmode_transparent ? "transparent" : "opaque";
self.player = new YT.Player("ytapiplayer", {
videoId: data.id,
@ -34,6 +35,13 @@ var YouTubePlayer = function (data) {
PLAYER.setVolume(VOLUME);
},
onStateChange: function (ev) {
if (self.whyDoesSetPlaybackQualityHaveARaceCondition) {
self.whyDoesSetPlaybackQualityHaveARaceCondition = false;
if (USEROPTS.default_quality) {
self.player.setPlaybackQuality(USEROPTS.default_quality);
}
}
/**
* Race conditions suck.
@ -42,7 +50,10 @@ var YouTubePlayer = function (data) {
*/
if (ev.data === YT.PlayerState.PLAYING &&
self.theYouTubeDevsNeedToFixThisShit) {
PLAYER.seek(0.000001);
if (USEROPTS.default_quality) {
self.player.setPlaybackQuality(USEROPTS.default_quality);
}
PLAYER.pause();
self.theYouTubeDevsNeedToFixThisShit = false;
}
@ -69,9 +80,10 @@ var YouTubePlayer = function (data) {
self.load = function (data) {
if(self.player && self.player.loadVideoById) {
self.player.loadVideoById(data.id, data.currentTime);
self.whyDoesSetPlaybackQualityHaveARaceCondition = true;
if (USEROPTS.default_quality) {
self.player.setPlaybackQuality(USEROPTS.default_quality);
// What's that? Another stupid hack for the HTML5 player?
// Try to set it ahead of time, if that works
// If not, the onStateChange callback will try again anyways
self.player.setPlaybackQuality(USEROPTS.default_quality);
}
self.videoId = data.id;
@ -428,6 +440,7 @@ var SoundcloudPlayer = function (data) {
// Go figure
self.soundcloudIsSeriouslyFuckingBroken = VOLUME;
self.videoId = data.id;
self.scuri = data.meta.scuri || self.videoId;
self.videoLength = data.seconds;
waitUntilDefined(window, "SC", function () {
unfixSoundcloudShit();
@ -436,7 +449,7 @@ var SoundcloudPlayer = function (data) {
iframe.appendTo($("#ytapiplayer"));
iframe.attr("id", "scplayer");
iframe.attr("src", "https://w.soundcloud.com/player/?url="+self.videoId);
iframe.attr("src", "https://w.soundcloud.com/player/?url="+self.scuri);
iframe.css("height", "166px");
iframe.css("border", "none");
@ -456,7 +469,7 @@ var SoundcloudPlayer = function (data) {
self.player = SC.Widget("scplayer");
self.player.bind(SC.Widget.Events.READY, function () {
self.player.load(self.videoId, { auto_play: true });
self.player.load(self.scuri, { auto_play: true });
self.player.bind(SC.Widget.Events.PAUSE, function () {
PLAYER.paused = true;
@ -487,9 +500,10 @@ var SoundcloudPlayer = function (data) {
self.load = function (data) {
self.videoId = data.id;
self.scuri = data.meta.scuri || self.videoId;
self.videoLength = data.seconds;
if(self.player && self.player.load) {
self.player.load(data.id, { auto_play: true });
self.player.load(self.scuri, { auto_play: true });
var soundcloudNeedsToFuckingFixTheirPlayer = function () {
self.setVolume(VOLUME);
self.player.unbind(SC.Widget.Events.PLAY_PROGRESS);

View file

@ -86,6 +86,24 @@ function formatUserlistItem(div) {
name.addClass(getNameColor(data.rank));
div.find(".profile-box").remove();
if (data.afk) {
div.addClass("userlist_afk");
} else {
div.removeClass("userlist_afk");
}
if (div.data("meta") && div.data("meta").muted) {
div.addClass("userlist_muted");
} else {
div.removeClass("userlist_muted");
}
if (div.data("meta") && div.data("meta").smuted) {
div.addClass("userlist_smuted");
} else {
div.removeClass("userlist_smuted");
}
var profile = null;
name.mouseenter(function(ev) {
if (profile)
@ -882,7 +900,7 @@ function handleModPermissions() {
})();
$("#cs-csstext").val(CHANNEL.css);
$("#cs-jstext").val(CHANNEL.js);
$("#cs-motdtext").val(CHANNEL.motd_text);
$("#cs-motdtext").val(CHANNEL.motd);
setParentVisible("a[href='#cs-motdeditor']", hasPermission("motdedit"));
setParentVisible("a[href='#cs-permedit']", CLIENT.rank >= 3);
setParentVisible("a[href='#cs-banlist']", hasPermission("ban"));