/* BetterDiscordApp QuickEmoteMenu JavaScript * Version: 1.3 * Author: Jiiks | http://jiiks.net * Date: 26/08/2015 - 11:49 * Last Update: 29/08/2015 - 11:46 * https://github.com/Jiiks/BetterDiscordApp */ var emoteBtn, emoteMenu; function QuickEmoteMenu() { } QuickEmoteMenu.prototype.init = function() { var emoteBtn; if(!emoteMenu) { this.initEmoteList(); } var menuOpen; emoteBtn = $("
", { id:"twitchcord-button-container", style:"display:none" }).append($("", { id: "twitchcord-button", onclick: "return false;" })); $(".content.flex-spacer.flex-horizontal .flex-spacer.flex-vertical form").append(emoteBtn); emoteMenu.detach(); emoteBtn.append(emoteMenu); $("#twitchcord-button").on("click", function() { menuOpen = !menuOpen; if(menuOpen) { emoteMenu.addClass("emotemenu-open"); $(this).addClass("twitchcord-button-open"); } else { emoteMenu.removeClass(); $(this).removeClass(); } }); if(settingsCookie["bda-es-0"]) { emoteBtn.show(); } var emoteIcon = $(".emote-icon"); emoteIcon.off(); emoteIcon.on("click", function() { var emote = $(this).attr("id"); var ta = $(".channel-textarea-inner textarea"); ta.val(ta.val().slice(-1) == " " ? ta.val() + emote : ta.val() + " " + emote); }); }; QuickEmoteMenu.prototype.obsCallback = function() { if(!emoteBtn) return; if(!$(".content.flex-spacer.flex-horizontal .flex-spacer.flex-vertical form")) return; var tcbtn = $("#twitchcord-button-container"); if(tcbtn.parent().prop("tagName") == undefined) { quickEmoteMenu = new QuickEmoteMenu(); quickEmoteMenu.init(true); } }; QuickEmoteMenu.prototype.initEmoteList = function() { emoteMenu = $("", { id: "emote-menu" }); var emoteMenuHeader = $("", { id: "emote-menu-header" }).append($("", { text: "Global Emotes" })); var emoteMenuBody = $("", { id: "emote-menu-inner" }); emoteMenu.append(emoteMenuHeader); emoteMenu.append(emoteMenuBody); for(var emote in emotesTwitch.emotes) { if(emotesTwitch.emotes.hasOwnProperty(emote)) { var id = emotesTwitch.emotes[emote].image_id; emoteMenuBody.append($("" , { class: "emote-container" }).append($("", { class: "emote-icon", id: emote, alt: "", src: "https://static-cdn.jtvnw.net/emoticons/v1/"+id+"/1.0", title: emote }))); } } };