Last active
May 19, 2023 03:22
-
-
Save jefferoonie/3a242c0a3633c66eacfd630e53a14522 to your computer and use it in GitHub Desktop.
EzcapeChat Modified FurtherChat
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
"use strict"; | |
function fc_cam(t, e, n, i, s, o, c, r, l, a) { | |
this.ws = t, | |
this.pb = e, | |
this.div_maxcont = n, | |
this.camno = i, | |
this.ratio = s, | |
this.wndmedia = c, | |
this.tip = r, | |
this.menu_cb = l, | |
this.volhist = a, | |
this.kageshi_mode = !1, | |
this.outvid_w = 0, | |
this.outvid_h = 0, | |
this.outvid_ar = 0, | |
this.outvid_fps = 0, | |
this.starttime = 0, | |
this.offersonhold = null, | |
this.offersonhold_delay = 500, | |
this.offersonhold_interval = null, | |
this.user = null, | |
this.you = !1, | |
this.paused = !1, | |
this.rtcpush = null, | |
this.rtcpull = null, | |
this.cs_name = "", | |
this.cs_loc = "", | |
this.iser = null, | |
this.local_stream = null, | |
this.vab = null, | |
this.maxdummy = null, | |
this.elem = document.createElement("div"), | |
this.elem.className = "cam_a", | |
this.elem.style.width = o; | |
t = document.createElement("div"); | |
t.className = "cam_b", | |
"16:9" === s ? (t.style.paddingTop = "56.25%", | |
this.outvid_w = 256, | |
this.outvid_h = 144, | |
this.outvid_ar = 1.777777778, | |
this.outvid_fps = 26) : "4:3" === s ? (t.style.paddingTop = "75%", | |
this.outvid_w = 320, | |
this.outvid_h = 240, | |
this.outvid_ar = 1.333333333, | |
this.outvid_fps = 26) : "21:9" === s && (t.style.paddingTop = "42.18%", | |
this.outvid_w = 420, | |
this.outvid_h = 180, | |
this.outvid_ar = 2.383333333, | |
this.outvid_fps = 26), | |
this.elem.appendChild(t), | |
this.cam_c = document.createElement("div"), | |
this.cam_c.className = "cam_c hvcntrl", | |
this.elem.appendChild(this.cam_c), | |
this.startbtn = null, | |
this.topbar = null, | |
this.statp = null, | |
this.maxbtn = null, | |
this.stopbtn = null, | |
this.pausebtn = null, | |
this.mobskin = null, | |
this.bottombar = null, | |
this.namep = null, | |
this.volrange = null, | |
this.mutebtn = null, | |
this.loading = null, | |
this.video = null, | |
this.unpausebtn = null, | |
this.stopcam() | |
} | |
function fc_camload(t, e) { | |
this.elem = null, | |
this.c1 = t, | |
this.c2 = e, | |
this.elem = document.createElement("div"), | |
this.elem.className = "camload", | |
this.step = 0, | |
this.backwards = !1, | |
this.interval = 0, | |
this.loading = null, | |
this.blocks = [] | |
} | |
function fc_chatbox(t, e, n) { | |
this.ws = t, | |
this.menu_cb = e, | |
this.youtube_cb = n, | |
this.elem = document.createElement("div"), | |
this.elem.setAttribute("class", "chatbox"), | |
this.span_recon = null, | |
this.p_typing_line = null, | |
this.p_typing_names = null, | |
this.p_typing_status = null, | |
this.lastmn = 0 | |
} | |
function fc_checkbox(t, e) { | |
this.elem = null, | |
this.cb = null, | |
this.ptext = null, | |
this.elem = document.createElement("div"), | |
this.elem.className = "fccb", | |
this.cb = document.createElement("input"), | |
this.cb.setAttribute("type", "checkbox"), | |
this.cb.checked = t, | |
this.elem.appendChild(this.cb); | |
t = document.createElement("label"); | |
t.innerHTML = "<span class='material-icons'></span>" + e, | |
this.elem.appendChild(t) | |
} | |
function fc_config(t, e, n) { | |
this.ws = t, | |
this.pb = e, | |
this.applysetting_cb = n, | |
this.settings = {}, | |
this.def_settings = {} | |
} | |
function fc_ctrlpm(t, e, n, i, s, o) { | |
this.ws = t, | |
this.pb = e, | |
this.wndctrl = n, | |
this.msglimit = i, | |
this.ul = s, | |
this.umcb = o, | |
this.font_colour = "#FF0000", | |
this.font_size = 1, | |
this.taka_enable = !0, | |
this.blockpm_enable = !1, | |
this.recvsnd_enable = !1, | |
this.wndpm = [] | |
} | |
function fc_ctrlwnd(t) { | |
this.wnd_array = [], | |
this.mouse_x = 0, | |
this.mouse_y = 0, | |
this.drag_wnd = null, | |
this.drag_elem_x = 0, | |
this.drag_elem_y = 0, | |
this.resize_wnd = null, | |
this.resize_left = !1, | |
this.resize_right = !1, | |
this.resize_bottom = !1, | |
this.zindex_inc = 500, | |
this.wnd_infocus = null, | |
this.parent_elem = null === t ? document.body : t | |
} | |
function fc_layout(t, e, n, i, s, o) { | |
this.ws = t, | |
this.pb = e, | |
this.div_maxcont = n, | |
this.tip = s, | |
this.menu_cb = o, | |
this.cur_layout = 0, | |
this.cams = [], | |
this.wndmedia = i, | |
this.elem = document.createElement("div"), | |
this.elem.className = "camcont", | |
this.ul_cams = document.createElement("ul"), | |
this.ul_cams.className = "cams", | |
this.elem.appendChild(this.ul_cams), | |
this.dynarow = null, | |
this.kageshi_mode = !1, | |
this.volhist = [], | |
this.joined = !1 | |
} | |
function fc_left(t, e, n, i) { | |
this.uuid = t, | |
this.username = e, | |
this.modlvl = n, | |
this.blocked = i | |
} | |
function fc_menu(t, e, n, i) { | |
this.ws = t, | |
this.pb = e, | |
this.lo = n, | |
this.t_uuid = "", | |
this.t_username = "", | |
this.t_modlvl = "", | |
this.t_online = !1, | |
this.pmctrl = i, | |
this.elem = document.createElement("div"), | |
this.elem.setAttribute("class", "usermenu"), | |
"mobile" === this.ws.mode ? this.elem.onclick = this.close.bind(this) : (this.elem.onmouseleave = this.mouseleave.bind(this), | |
this.elem.onmouseenter = this.mouseenter.bind(this)), | |
this.btn_close = document.createElement("button"), | |
this.h_title = document.createElement("h1"), | |
this.h_title.innerHTML = "menu", | |
this.elem.appendChild(this.h_title), | |
this.btn_stopcam = document.createElement("button"), | |
this.btn_stopcam.onclick = this.btnclick.bind(this), | |
this.btn_stopcam.setAttribute("data-btntype", "stopcam"), | |
this.btn_stopcam.innerHTML = "stop cam", | |
this.elem.appendChild(this.btn_stopcam), | |
this.btn_pausecam = document.createElement("button"), | |
this.btn_pausecam.onclick = this.btnclick.bind(this), | |
this.btn_pausecam.setAttribute("data-btntype", "pausecam"), | |
this.btn_pausecam.innerHTML = "pause cam", | |
this.elem.appendChild(this.btn_pausecam), | |
this.btn_mutecam = document.createElement("button"), | |
this.btn_mutecam.onclick = this.btnclick.bind(this), | |
this.btn_mutecam.setAttribute("data-btntype", "mutecam"), | |
this.btn_mutecam.innerHTML = "mute cam", | |
this.elem.appendChild(this.btn_mutecam), | |
this.btn_pm = document.createElement("button"), | |
this.btn_pm.onclick = this.btnclick.bind(this), | |
this.btn_pm.setAttribute("data-btntype", "pm"), | |
this.btn_pm.innerHTML = "pm", | |
this.elem.appendChild(this.btn_pm), | |
this.btn_profile = document.createElement("button"), | |
this.btn_profile.onclick = this.btnclick.bind(this), | |
this.btn_profile.setAttribute("data-btntype", "profile"), | |
this.btn_profile.innerHTML = "profile", | |
this.elem.appendChild(this.btn_profile), | |
this.btn_block = document.createElement("button"), | |
this.btn_block.onclick = this.btnclick.bind(this), | |
this.btn_block.setAttribute("data-btntype", "block"), | |
this.btn_block.innerHTML = "block", | |
this.elem.appendChild(this.btn_block), | |
this.btn_unblock = document.createElement("button"), | |
this.btn_unblock.onclick = this.btnclick.bind(this), | |
this.btn_unblock.setAttribute("data-btntype", "unblock"), | |
this.btn_unblock.innerHTML = "unblock", | |
this.elem.appendChild(this.btn_unblock), | |
this.btn_mod = document.createElement("button"), | |
this.btn_mod.onclick = this.btnclick.bind(this), | |
this.btn_mod.setAttribute("data-btntype", "mod"), | |
this.btn_mod.innerHTML = "mod", | |
this.elem.appendChild(this.btn_mod), | |
this.btn_unmod = document.createElement("button"), | |
this.btn_unmod.onclick = this.btnclick.bind(this), | |
this.btn_unmod.setAttribute("data-btntype", "unmod"), | |
this.btn_unmod.innerHTML = "unmod", | |
this.elem.appendChild(this.btn_unmod), | |
this.btn_kick = document.createElement("button"), | |
this.btn_kick.onclick = this.btnclick.bind(this), | |
this.btn_kick.setAttribute("data-btntype", "kick"), | |
this.btn_kick.innerHTML = "kick", | |
this.elem.appendChild(this.btn_kick), | |
this.btn_ban48 = document.createElement("button"), | |
this.btn_ban48.onclick = this.btnclick.bind(this), | |
this.btn_ban48.setAttribute("data-btntype", "ban48"), | |
this.btn_ban48.innerHTML = "ban 48hr", | |
this.elem.appendChild(this.btn_ban48), | |
this.btn_banperma = document.createElement("button"), | |
this.btn_banperma.onclick = this.btnclick.bind(this), | |
this.btn_banperma.setAttribute("data-btntype", "banperma"), | |
this.btn_banperma.innerHTML = "ban perma", | |
this.elem.appendChild(this.btn_banperma), | |
this.btn_purge = document.createElement("button"), | |
this.btn_purge.onclick = this.btnclick.bind(this), | |
this.btn_purge.setAttribute("data-btntype", "purge"), | |
this.btn_purge.innerHTML = "purge", | |
this.elem.appendChild(this.btn_purge), | |
this.btn_siteban = document.createElement("button"), | |
this.btn_siteban.onclick = this.btnclick.bind(this), | |
this.btn_siteban.setAttribute("data-btntype", "siteban"), | |
this.btn_siteban.style.backgroundColor = "red", | |
this.btn_siteban.style.color = "white", | |
this.btn_siteban.innerHTML = "site ban", | |
this.elem.appendChild(this.btn_siteban), | |
this.leavetimeout = null, | |
this.showtimeout = null | |
} | |
function fc_msglimit() { | |
this.cooloff_time = 5e3, | |
this.msg_interval = 600, | |
this.max_strikes = 3, | |
this.max_msg_length = 300, | |
this.prev_msg = "", | |
this.prev_msg_time = 0, | |
this.cur_strikes = 0, | |
this.msg_count = 0, | |
this.enforced = !1 | |
} | |
function fc_msk(t, e) { | |
this.ws = t, | |
this.elem = document.createElement("div"), | |
this.elem.className = "msk", | |
document.getElementById(e).appendChild(this.elem), | |
this.mode = 0, | |
this.deadline = 0, | |
this.interval = null, | |
this.h1_status = null, | |
this.p_info = null, | |
this.p_countdown = null, | |
this.span_countdown = null, | |
this.text_password = null, | |
this.button = null | |
} | |
function fc_recon(t, e, n, i) { | |
this.ws = t, | |
this.msk = e, | |
this.cb = null, | |
this.recon_min = 3e3, | |
this.recon_max = 2e4, | |
this.recon_stepmax = 1e3, | |
this.last_reconstart = 0, | |
this.reqprx_cb = n, | |
this.max_recnt_prx = 3, | |
this.recnt_prx = 0, | |
this.waiting_prx = !1, | |
this.t2src_cb = i, | |
this.waiting_t2 = !1, | |
this.recon_timeout = 0, | |
this.countdown_timer = 0, | |
this.countdown_target = 0 | |
} | |
function fc_rtcpull(t, e, n) { | |
this.ws = t, | |
this.pb = e, | |
this.cam = n, | |
this.tid = 0, | |
this.vstream = null, | |
this.astream = null, | |
this.rtcpeer = null, | |
this.srd_done = !1, | |
this.cndcount = 0, | |
this.icestack = [], | |
this.d_offer = !1, | |
this.d_ice = !1, | |
this.failed = !1, | |
this.finish = !1, | |
this.playtimeout = null, | |
this.dc_interval = 0, | |
this.rscount = 0, | |
this.stagcount = 0, | |
this.stat_interval = 0, | |
this.stat_vis = !1, | |
this.stat_viscount = 0, | |
this.byte_prev = 0, | |
this.frame_prev = 0, | |
this.vcodec = "", | |
this.acodec = "" | |
} | |
function fc_rtcpush(t, e, n, i, s, o) { | |
this.ws = t, | |
this.pb = e, | |
this.cam = n, | |
this.tid = i, | |
this.local_stream = s, | |
this.srd_done = !1, | |
this.cndcount = 0, | |
this.offersonhold = o, | |
this.rtcpeer = null, | |
this.d_offer = !1, | |
this.d_answer = !1, | |
this.d_ice = !1, | |
this.failed = !1, | |
this.finish = !1 | |
} | |
function fc_status(t, e) { | |
this.ws = t, | |
this.pb = e, | |
this.autoidle_enable = !0, | |
this.tbi = 12e5, | |
this.statuslevel = 1, | |
this.statustime = 0, | |
this.statusmsg = "", | |
this.lastact = Date.now(), | |
this.lastreturn = Date.now(), | |
this.ws.isguest || (this.idleinterval = setInterval(this.tick.bind(this), 26e3)) | |
} | |
function fc_switch() { | |
this.elem = null, | |
this.cb = null, | |
this.ptext = null | |
} | |
function fc_tip(t, e) { | |
this.ws = t, | |
this.ul = e, | |
this.elem = document.createElement("div"), | |
this.elem.className = "tooltip", | |
this.p_message = document.createElement("p"), | |
this.p_message.innerHTML = "", | |
this.elem.appendChild(this.p_message), | |
this.showtimeout = null, | |
this.hidetimeout = null, | |
this.config = null, | |
this.reqx = 0, | |
this.reqy = 0 | |
} | |
function fc_toolbox(t, e, n, i, s, o, c) { | |
this.ws = t, | |
this.pb = e, | |
this.cb = s, | |
this.msglimit = o, | |
this.pmctrl = n, | |
this.layout = i, | |
this.yt_cb = c, | |
this.font_colour = "#FF0000", | |
this.font_size = 1, | |
this.elem = document.createElement("div"), | |
this.elem.className = "tb", | |
this.text_cp = document.createElement("input"), | |
this.text_cp.className = "jscolor", | |
this.text_cp.setAttribute("data-jscolor", "{position:'top',hash:false,value:'" + this.font_colour + "',borderRadius:'1px',borderColor:'" + this.ws.theme.lncol + "',controlBorderColor:'" + this.ws.theme.lncol + "',backgroundColor:'" + this.ws.theme.bgcol + "'}"), | |
this.text_cp.onchange = this.cp_change.bind(this), | |
this.elem.appendChild(this.text_cp), | |
this.sel_fs = document.createElement("select"), | |
this.sel_fs.className = "sizesel", | |
this.sel_fs.onchange = this.fs_change.bind(this), | |
(t = document.createElement("option")).innerHTML = "smaller", | |
t.value = 0, | |
this.sel_fs.appendChild(t), | |
(t = document.createElement("option")).innerHTML = "normal", | |
t.value = 1, | |
this.sel_fs.appendChild(t), | |
(t = document.createElement("option")).innerHTML = "bigger", | |
t.value = 2, | |
this.sel_fs.appendChild(t), | |
(t = document.createElement("option")).innerHTML = "more bigger", | |
t.value = 3, | |
this.sel_fs.appendChild(t), | |
this.sel_fs.selectedIndex = this.font_size, | |
this.elem.appendChild(this.sel_fs), | |
this.btn_ytpl = document.createElement("button"), | |
this.btn_ytpl.innerHTML = "YouTube Player", | |
this.btn_ytpl.onclick = this.yt_click.bind(this), | |
this.btn_ytpl.style.display = "none", | |
this.elem.appendChild(this.btn_ytpl), | |
this.cb_kmode = new fc_checkbox(!1,"Kageshi Mode"), | |
this.cb_kmode.addonclick(this.kmode_click.bind(this)), | |
this.elem.appendChild(this.cb_kmode.elem), | |
this.text_msg = document.createElement("input"), | |
this.text_msg.setAttribute("type", "text"), | |
this.text_msg.setAttribute("autocomplete", "off"), | |
this.text_msg.className = "chatmsg fs_" + this.font_size, | |
this.text_msg.style.color = this.font_colour, | |
this.text_msg.value = "", | |
this.text_msg.onkeyup = this.msg_keyup.bind(this), | |
this.text_msg.autocomplete = "off", | |
this.elem.appendChild(this.text_msg), | |
this.btn_send = document.createElement("button"), | |
this.btn_send.className = "sendbtn material-icons", | |
this.btn_send.onclick = this.send_click.bind(this), | |
this.elem.appendChild(this.btn_send) | |
} | |
function fc_topic(t, e, n, i, s, o) { | |
this.ws = t, | |
this.pb = e, | |
this.wndlayout = n, | |
this.wndpolicy = i, | |
this.wndconfig = s, | |
this.togulist_cb = o, | |
this.cur_topic = "", | |
this.elem = document.createElement("div"), | |
this.elem.className = "topicbar", | |
this.text_topic = document.createElement("input"), | |
this.text_topic.setAttribute("type", "text"), | |
this.text_topic.setAttribute("maxlength", 128), | |
this.text_topic.className = "fctopic", | |
this.text_topic.onblur = this.topicbar_change.bind(this), | |
this.elem.appendChild(this.text_topic), | |
this.btn_policy = document.createElement("button"), | |
this.btn_policy.className = "policybtn material-icons", | |
this.btn_policy.onclick = this.policy_click.bind(this), | |
this.elem.appendChild(this.btn_policy), | |
this.btn_layout = document.createElement("button"), | |
this.btn_layout.className = "layoutbtn material-icons", | |
this.btn_layout.onclick = this.layout_click.bind(this), | |
this.elem.appendChild(this.btn_layout), | |
this.btn_config = document.createElement("button"), | |
this.btn_config.className = "configbtn material-icons", | |
this.btn_config.onclick = this.config_click.bind(this), | |
this.elem.appendChild(this.btn_config), | |
this.btn_userlist = document.createElement("button"), | |
this.btn_userlist.className = "userlistbtn material-icons", | |
this.btn_userlist.onclick = o, | |
this.elem.appendChild(this.btn_userlist) | |
} | |
function fc_ulist(t, e, n, i, s) { | |
this.ws = t, | |
this.menu_cb = e, | |
this.tipshow_cb = n, | |
this.tipcancel_cb = i, | |
this.elem = document.createElement("div"), | |
this.elem.setAttribute("class", "userlist"), | |
"mobile" === this.ws.mode && (this.togulist_cb = s, | |
this.elem.onclick = s), | |
this.guest_elem = document.createElement("p"), | |
this.guest_elem.className = "guestcount fcguest"; | |
t = document.createElement("span"); | |
t.className = "material-icons", | |
this.guest_elem.appendChild(t), | |
this.p_guestcount = document.createElement("p"), | |
this.guest_elem.appendChild(this.p_guestcount), | |
this.updgsc(0), | |
this.users = [], | |
this.lefties = [] | |
} | |
function fc_user(t, e, n) { | |
this.menu_cb = t, | |
this.tipshow_cb = e, | |
this.tipcancel_cb = n, | |
this.username = "", | |
this.username_lowercase = "", | |
this.uuid = 0, | |
this.modlvl = 0, | |
this.usernum = 0, | |
this.blocked = !1, | |
this.statuslevel = 0, | |
this.statustime = 0, | |
this.statusmsg = "", | |
this.online = !1, | |
this.jointime = 0, | |
this.ping = 0, | |
this.list_elem = null, | |
this.pmwnd = null | |
} | |
function fc_vab() { | |
this.stream = null, | |
this.audio_context = null, | |
this.analyser = null, | |
this.source = null, | |
this.interval = 0, | |
this.elem = document.createElement("div"), | |
this.elem.className = "va_b" | |
} | |
function fc_wnd(t, e, n, i, s, o) { | |
this.parent_elem = t, | |
this.index = e, | |
this.title = i, | |
this.min_width = 0, | |
this.min_height = 0, | |
this.focused = !1, | |
this.visible = !1, | |
this.resizable = n, | |
this.rz_left = null, | |
this.rz_right = null, | |
this.rz_bottom = null, | |
this.rz_bottomleft = null, | |
this.rz_bottomright = null, | |
this.resize_callback = null, | |
this.close_callback = null, | |
this.elem = document.createElement("div"), | |
this.elem.setAttribute("id", "wnd" + e), | |
this.elem.className = "fcwnd", | |
this.resizable && this.addresizers(), | |
this.elem_header = document.createElement("div"), | |
this.elem_header.setAttribute("class", "fcwnd_header"), | |
this.p_hdrico = document.createElement("p"), | |
this.p_hdrico.className = "material-icons", | |
this.elem_header.appendChild(this.p_hdrico), | |
this.elem_headerp = document.createElement("p"), | |
this.elem_headerp.innerHTML = i, | |
this.elem_header.appendChild(this.elem_headerp), | |
this.elem.appendChild(this.elem_header), | |
this.elem_closebtn = document.createElement("button"), | |
this.elem_closebtn.setAttribute("class", "close material-icons"), | |
this.elem_closebtn.onclick = this.click_close.bind(this), | |
this.elem.appendChild(this.elem_closebtn), | |
this.elem_content = document.createElement("div"), | |
this.elem_content.setAttribute("class", "fcwnd_content"), | |
this.elem.appendChild(this.elem_content), | |
this.parent_elem.appendChild(this.elem), | |
this.elem.style.left = s + "px", | |
this.elem.style.top = o + "px" | |
} | |
function fc_wndconfig(t, e, n) { | |
this.ws = t, | |
this.pb = e, | |
this.wndman = n, | |
this.wnd = null, | |
this.cb_blockpm = null, | |
this.cb_showtyping = null, | |
this.cb_autoidle = null, | |
this.cb_pmsnd = null | |
} | |
function fc_wndlayout(t, e, n) { | |
this.ws = t, | |
this.pb = e, | |
this.wndman = n, | |
this.wnd = null | |
} | |
function fc_wndmedia(t, e) { | |
this.ws = t, | |
this.wndman = e, | |
this.cam = null, | |
this.stream = null, | |
this.wnd = null, | |
this.cam_select = null, | |
this.cam_a = null, | |
this.cam_b = null, | |
this.cam_c = null, | |
this.video = null, | |
this.vab = null, | |
this.p_video = null, | |
this.sw_usemic = null, | |
this.sw_useec = null, | |
this.mic_select = null, | |
this.btn_cancel = null, | |
this.btn_start = null, | |
this.forced_camid = "", | |
this.forced_micid = "" | |
} | |
function fc_wndpm(t, e, n, i, s, o, c, r, l) { | |
this.ws = t, | |
this.pb = e, | |
this.wndman = n, | |
this.umcb = s, | |
this.msglimit = i, | |
this.username = o, | |
this.uuid = c, | |
this.wnd = null, | |
this.online = !0, | |
this.modlvl = 0, | |
this.blocked = !1, | |
this.status_code = 0, | |
this.status_text = "", | |
this.font_colour = r, | |
this.font_size = l, | |
this.blockpm_enable = !1, | |
this.block_whitelist = !1, | |
this.recvsnd = null, | |
this.taka_enable = !0, | |
this.type_state = 0, | |
this.type_time = 0, | |
this.type_timeout = null, | |
this.chatbox = null, | |
this.b_banner = null, | |
this.text_msg = null, | |
this.btn_send = null, | |
this.createui() | |
} | |
function fc_wndpolicy(t, e, n) { | |
this.ws = t, | |
this.pb = e, | |
this.wndman = n, | |
this.wnd = null, | |
this.cb_allowguest = null, | |
this.cb_allowyoutube = null, | |
this.cb_password = null, | |
this.text_password = null, | |
this.cb_modchangelayout = null, | |
this.cb_modchangetopic = null, | |
this.cb_modstopcam = null, | |
this.cb_enablemecmd = null, | |
this.cb_enablerollcmd = null, | |
this.cb_enableafkcmd = null, | |
this.cb_enablestopcmd = null, | |
this.cb_enablekickcmd = null | |
} | |
function fc_ws(t, e, n, i, s, o, c, r, l) { | |
this.pb = t, | |
this.pako = e, | |
this.ws = null, | |
this.addr = n, | |
this.mode = i, | |
this.rcv_cb = o, | |
this.error_cb = c, | |
this.close_cb = r, | |
this.sid = this.mkses(), | |
this.t2 = "", | |
this.t2exp = new Date, | |
this.ready = !1, | |
this.chead = null, | |
this.pver = 7, | |
this.cmtype = 2, | |
this.close_pf = null, | |
this.tmdelta = 0, | |
this.rn = 0, | |
this.un = 0, | |
this.uh = 0, | |
this.username = "", | |
this.uuid = 0, | |
this.modlvl = 0, | |
this.isguest = !1, | |
this.theme = s, | |
this.roompass = "", | |
this.joinover = !1, | |
this.jth = "", | |
this.jty = 1, | |
this.pol_allowguest = !0, | |
this.pol_allowyoutube = !0, | |
this.pol_pwenforced = !1, | |
this.pol_pw = "", | |
this.pol_modchangelayout = !0, | |
this.pol_modchangetopic = !0, | |
this.pol_modstopcam = !1, | |
this.pol_en_mecmd = !0, | |
this.pol_en_rollcmd = !0, | |
this.pol_en_afkcmd = !0, | |
this.pol_en_stopcmd = !0, | |
this.pol_en_kickcmd = !0, | |
this.cnf = new fc_config(this,this.pb,l), | |
this.chatmaxline = 800, | |
this.pn = 0, | |
this.flwb = 0, | |
this.clswait = null, | |
this.joined = !1 | |
} | |
function fc_youtube(t, e, n, i, s) { | |
this.ws = t, | |
this.pb = e, | |
this.search_cb = n, | |
this.queue_cb = i, | |
this.yt_enable_search = s, | |
this.pa = !1, | |
this.ytpp = null, | |
this.player = null, | |
this.YT = null, | |
this.playstate = "unloaded", | |
this.cur_start_time = 0, | |
this.cur_video = null, | |
this.btn_addvideo = null, | |
this.btn_nextvideo = null, | |
this.div_privnote = null, | |
this.btn_acceptpriv = null, | |
this.div_qpopup = null, | |
this.div_queue = null, | |
this.div_qpopupbg = null, | |
this.div_qpopupcls = null, | |
this.text_search = null, | |
this.btn_search = null, | |
this.text_addurl = null, | |
this.btn_addurl = null, | |
this.p_query_err = null, | |
this.table_queue = null, | |
this.div_sresultcont = null, | |
this.div_sresult = null, | |
this.div_sresultload = null, | |
this.span_sresulttext = null | |
} | |
function fc(t, e, n, i, s, o, c, r, l, a, u, h) { | |
this.pb = t, | |
this.b64 = e, | |
this.pako = n, | |
this.mode = s, | |
this.addr = o, | |
this.gridcams = null, | |
this.gridtopic = null, | |
this.gridchat = null, | |
this.gridtools = null, | |
this.gridlist = null, | |
this.ui_done = !1, | |
this.width_step = 100, | |
this.step_timeout = 0, | |
this.reqprx_cb = r, | |
this.t2src_cb = l, | |
this.chatsnd = null, | |
this.chatsndcnt = 0, | |
this.ws = new fc_ws(this.pb,this.pako,this.addr,this.mode,c,this.wsrecv.bind(this),this.wserr.bind(this),this.wsclose.bind(this),this.applysetting.bind(this)), | |
this.ws.cnf.setdef({ | |
fc: c.fcdef, | |
fs: 1, | |
pb: 0, | |
pt: 1, | |
ai: 1, | |
sc: 0, | |
sp: 0 | |
}), | |
this.msk = new fc_msk(this.ws,i), | |
this.elem = document.createElement("div"), | |
this.elem.className = "fc", | |
document.getElementById(i).appendChild(this.elem), | |
this.div_maxcont = document.createElement("div"), | |
this.div_maxcont.className = "maxcamcont", | |
this.elem.appendChild(this.div_maxcont), | |
this.status = new fc_status(this.ws,this.pb), | |
this.msglimit = new fc_msglimit, | |
this.wndctrl = new fc_ctrlwnd(this.elem), | |
this.ul = new fc_ulist(this.ws,this.umopen.bind(this),this.tipshow.bind(this),this.tipcancel.bind(this),this.togulist.bind(this)), | |
this.pmctrl = new fc_ctrlpm(this.ws,this.pb,this.wndctrl,this.msglimit,this.ul,this.umopen.bind(this)), | |
this.cb = new fc_chatbox(this.ws,this.umopen.bind(this),this.ytopen.bind(this)), | |
this.ytpl = new fc_youtube(this.ws,this.pb,a,u,h), | |
this.tip = new fc_tip(this.ws,this.ul), | |
this.wndmedia = new fc_wndmedia(this.ws,this.wndctrl), | |
this.lo = new fc_layout(this.ws,this.pb,this.div_maxcont,this.wndmedia,this.tip,this.umopen.bind(this)), | |
this.wndlayout = new fc_wndlayout(this.ws,this.pb,this.wndctrl), | |
this.tb = new fc_toolbox(this.ws,this.pb,this.pmctrl,this.lo,this.cb,this.msglimit,this.ytopen.bind(this)), | |
this.wndpolicy = new fc_wndpolicy(this.ws,this.pb,this.wndctrl), | |
this.wndconfig = new fc_wndconfig(this.ws,this.pb,this.wndctrl), | |
this.tp = new fc_topic(this.ws,this.pb,this.wndlayout,this.wndpolicy,this.wndconfig,this.togulist.bind(this)), | |
this.um = new fc_menu(this.ws,this.pb,this.lo,this.pmctrl), | |
this.recon = new fc_recon(this.ws,this.msk,this.reqprx_cb,this.t2src_cb), | |
document.addEventListener("keydown", this.dockeydown.bind(this)), | |
document.addEventListener("mousedown", this.docmousedown.bind(this)), | |
document.addEventListener("mouseup", this.docmouseup.bind(this)), | |
document.addEventListener("mousemove", this.docmousemove.bind(this)), | |
document.addEventListener("touchcancel", this.docmouseup.bind(this)), | |
document.addEventListener("touchend", this.docmouseup.bind(this)), | |
document.addEventListener("touchmove", this.doctouchmove.bind(this), { | |
passive: !1 | |
}), | |
window.addEventListener("resize", this.docresize.bind(this)), | |
window.addEventListener("orientationchange", this.docresize.bind(this)); | |
t = this.checkcompat(); | |
null !== t && alert(t), | |
this.createui(), | |
this.showmsk(), | |
this.msk.showcs("", "") | |
} | |
fc_cam.prototype.setkmode = function(t) { | |
this.kageshi_mode = t, | |
null === this.video || null === this.user || this.you || this.paused || this.kageshi_mode && (this.pausecam(this.user), | |
this.ws.sendpbuf(1200798, this.pb.roots.default.fc.p_1200798.encode({ | |
cn: this.camno | |
}, null).finish())) | |
} | |
, | |
fc_cam.prototype.click_maxcam = function(t) { | |
null === this.maxdummy ? this.domax() : this.dodemax() | |
} | |
, | |
fc_cam.prototype.camc_mouseover = function(t) { | |
this.you || null === this.rtcpull || this.rtcpull.statstart() | |
} | |
, | |
fc_cam.prototype.camc_mouseout = function(t) { | |
this.you || null === this.rtcpull || this.rtcpull.statstop() | |
} | |
, | |
fc_cam.prototype.stat_click = function(t) {} | |
, | |
fc_cam.prototype.stat_mouseover = function(t) { | |
var e = document.getElementsByClassName("fc")[0]; | |
this.tip.show(t.pageX - e.offsetLeft, t.pageY - e.offsetTop, { | |
buildtype: "camstats", | |
cs_name: this.cs_name, | |
cs_loc: this.cs_loc | |
}) | |
} | |
, | |
fc_cam.prototype.stat_mouseout = function(t) { | |
this.tip.cancel() | |
} | |
, | |
fc_cam.prototype.dblclick_video = function(t) { | |
this.click_maxcam(t) | |
} | |
, | |
fc_cam.prototype.modchg = function() { | |
null !== this.user && (this.paused ? this.namep.className = "name paused " + this.user.getnccl() : this.namep.className = "name " + this.user.getnccl(), | |
this.canstop() ? this.stopbtn.style.display = "inline-block" : this.stopbtn.style.display = "none") | |
} | |
, | |
fc_cam.prototype.domax = function() { | |
null === this.maxdummy && (this.maxdummy = document.createElement("div"), | |
this.elem.parentNode.replaceChild(this.maxdummy, this.elem), | |
this.div_maxcont.style.display = "block", | |
this.div_maxcont.appendChild(this.elem), | |
this.maxbtn.innerHTML = "fullscreen_exit") | |
} | |
, | |
fc_cam.prototype.dodemax = function() { | |
if (null !== this.maxdummy) { | |
for (this.div_maxcont.style.display = "none"; this.div_maxcont.firstChild; ) | |
this.div_maxcont.removeChild(this.div_maxcont.lastChild); | |
this.maxdummy.parentNode.replaceChild(this.elem, this.maxdummy), | |
this.maxdummy = null, | |
this.maxbtn.innerHTML = "fullscreen", | |
window.dispatchEvent(new Event("resize")) | |
} | |
} | |
, | |
fc_cam.prototype.click_startcam = function(t) { | |
this.ws.isguest || this.wndmedia.open(this, this.ratio) | |
} | |
, | |
fc_cam.prototype.click_stopcam = function(t) { | |
this.you && null !== this.local_stream && (this.local_stream.getTracks().forEach(function(t) { | |
t.stop() | |
}), | |
this.local_stream = null), | |
this.ws.sendpbuf(1200631, this.pb.roots.default.fc.p_1200631.encode({ | |
cn: this.camno | |
}, null).finish()) | |
} | |
, | |
fc_cam.prototype.click_pausecam = function(t) { | |
this.pausecam(this.user), | |
this.ws.sendpbuf(1200798, this.pb.roots.default.fc.p_1200798.encode({ | |
cn: this.camno | |
}, null).finish()) | |
} | |
, | |
fc_cam.prototype.click_unpausecam = function(t) { | |
this.showcam(this.user, !1) | |
} | |
, | |
fc_cam.prototype.input_volrange = function(t) { | |
this.you || (t.target.value / 100 == 0 ? (this.video.muted || (this.mutebtn.className = "mutebtn muted material-icons", | |
this.video.muted = !0, | |
this.vab.stop()), | |
this.video.volume = 0, | |
this.volhist[this.user.uuid.toString()] = { | |
m: !0, | |
v: this.video.volume | |
}) : (this.video.muted && (this.mutebtn.className = "mutebtn material-icons", | |
this.video.muted = !1, | |
this.vab.play()), | |
this.video.volume = t.target.value / 100, | |
this.volhist[this.user.uuid.toString()] = { | |
m: !1, | |
v: this.video.volume | |
})) | |
} | |
, | |
fc_cam.prototype.click_mute = function(t) { | |
var e; | |
this.you ? 0 < (e = this.local_stream.getAudioTracks()).length && (e[0].enabled ? (this.mutebtn.className = "mutebtn muted material-icons", | |
e[0].enabled = !1) : (this.mutebtn.className = "mutebtn material-icons", | |
e[0].enabled = !0)) : this.video.muted ? (e = .75, | |
this.volhist.hasOwnProperty(this.user.uuid.toString()) && (e = this.volhist[this.user.uuid.toString()].v), | |
this.video.muted = !1, | |
this.mutebtn.className = "mutebtn material-icons", | |
this.video.volume = e, | |
this.volrange.value = 100 * e, | |
this.vab.play(), | |
this.volhist[this.user.uuid.toString()] = { | |
m: !1, | |
v: e | |
}) : (this.volhist[this.user.uuid.toString()] = { | |
m: !0, | |
v: this.video.volume | |
}, | |
this.video.muted = !0, | |
this.mutebtn.className = "mutebtn muted material-icons", | |
this.video.volume = 0, | |
this.volrange.value = 0, | |
this.vab.stop()) | |
} | |
, | |
fc_cam.prototype.setpull_vabstream = function(t) { | |
this.vab.setstream(null), | |
this.vab.setstream(t); | |
var t = !0 | |
, e = 0; | |
this.volhist.hasOwnProperty(this.user.uuid.toString()) && (t = this.volhist[this.user.uuid.toString()].m, | |
e = this.volhist[this.user.uuid.toString()].v), | |
t ? (this.vab.stop(), | |
this.mutebtn.className = "mutebtn muted material-icons", | |
this.video.muted = !0, | |
this.video.volume = 0, | |
this.volrange.value = 0) : (this.vab.play(), | |
this.mutebtn.className = "mutebtn material-icons", | |
this.video.muted = !1, | |
this.video.volume = e, | |
this.volrange.value = 100 * e) | |
} | |
, | |
fc_cam.prototype.selfdestruct = function() { | |
this.cleanuprtc(), | |
this.ws = null, | |
this.pb = null, | |
this.iser = null, | |
this.wndmedia = null, | |
this.user = null, | |
this.dodemax(), | |
null !== this.startbtn && (this.startbtn.onclick = null, | |
this.startbtn.parentNode.removeChild(this.startbtn), | |
this.startbtn = null), | |
null !== this.unpausebtn && (this.unpausebtn.onclick = null, | |
this.unpausebtn.parentNode.removeChild(this.unpausebtn), | |
this.unpausebtn = null), | |
null !== this.mobskin && (this.mobskin.onclick = null, | |
this.mobskin.parentNode.removeChild(this.mobskin), | |
this.mobskin = null), | |
null !== this.video && (this.video.parentNode.removeChild(this.video), | |
this.video = null), | |
null !== this.vab && (this.vab.stop(), | |
this.vab.setstream(null), | |
this.vab.elem.parentNode.removeChild(this.vab.elem), | |
this.vab = null), | |
null !== this.topbar && (this.topbar.parentNode.removeChild(this.topbar), | |
this.topbar = null), | |
null !== this.statp && (this.statp.parentNode.removeChild(this.statp), | |
this.statp = null), | |
null !== this.maxbtn && (this.maxbtn.onclick = null, | |
this.maxbtn.parentNode.removeChild(this.maxbtn), | |
this.maxbtn = null), | |
null !== this.pausebtn && (this.pausebtn.onclick = null, | |
this.pausebtn.parentNode.removeChild(this.pausebtn), | |
this.pausebtn = null), | |
null !== this.stopbtn && (this.stopbtn.onclick = null, | |
this.stopbtn.parentNode.removeChild(this.stopbtn), | |
this.stopbtn = null), | |
null !== this.bottombar && (this.bottombar.parentNode.removeChild(this.bottombar), | |
this.bottombar = null), | |
null !== this.namep && (this.namep.parentNode.removeChild(this.namep), | |
this.namep = null), | |
null !== this.volrange && (this.volrange.parentNode.removeChild(this.volrange), | |
this.volrange = null), | |
null !== this.mutebtn && (this.mutebtn.parentNode.removeChild(this.mutebtn), | |
this.mutebtn = null), | |
null !== this.loading && (this.loading.hide(), | |
this.loading.parentNode.removeChild(this.loading.elem), | |
this.loading = null), | |
this.elem.parentNode.removeChild(this.elem) | |
} | |
, | |
fc_cam.prototype.cleanuprtc = function() { | |
if (null !== this.vab && (this.vab.stop(), | |
this.vab.setstream(null)), | |
null !== this.local_stream && (this.local_stream.getTracks().forEach(function(t) { | |
t.stop() | |
}), | |
this.local_stream = null), | |
null !== this.offersonhold && (this.offersonhold = [], | |
this.offersonhold = null), | |
null !== this.offersonhold_interval && (clearInterval(this.offersonhold_interval), | |
this.offersonhold_interval = null), | |
null !== this.rtcpush) { | |
for (var t = 0; t < this.rtcpush.length; t++) | |
this.rtcpush[t].selfdestruct(); | |
this.rtcpush = [], | |
this.rtcpush = null | |
} | |
null !== this.rtcpull && (this.rtcpull.selfdestruct(), | |
this.rtcpull = null) | |
} | |
, | |
fc_cam.prototype.setiser = function(t, e, n, i, s) { | |
this.cs_name = t, | |
this.cs_loc = e, | |
this.iser = { | |
iceServers: [{ | |
urls: n, | |
credential: s, | |
username: i | |
}], | |
iceTransportPolicy: "relay", | |
RTCRtcpMuxPolicy: "negotiate" | |
} | |
} | |
, | |
fc_cam.prototype.startcam = function(t) { | |
try { | |
var e; | |
null !== t && 1 === (e = t.getVideoTracks()).length && (this.local_stream = t, | |
e[0].addEventListener("ended", this.strmend.bind(this)), | |
this.ws.sendpbuf(1200621, this.pb.roots.default.fc.p_1200621.encode({ | |
cn: this.camno | |
}, null).finish())) | |
} catch (t) {} | |
} | |
, | |
fc_cam.prototype.strmend = function(t) { | |
this.click_stopcam() | |
} | |
, | |
fc_cam.prototype.showcam = function(t, e) { | |
this.user = t, | |
this.you = e, | |
this.paused = !1, | |
null !== this.startbtn && (this.startbtn.style.display = "none"), | |
null !== this.unpausebtn && (this.unpausebtn.style.display = "none"), | |
"mobile" === this.ws.mode ? (null === this.mobskin ? (this.mobskin = document.createElement("div"), | |
this.mobskin.className = "mobskin", | |
this.mobskin.onclick = this.menu_cb, | |
this.mobskin.setAttribute("data-uuid", this.user.uuid), | |
this.cam_c.appendChild(this.mobskin)) : this.mobskin.style.display = "block", | |
this.cam_c.className = "cam_c") : (this.cam_c.className = "cam_c hvcntrl", | |
this.cam_c.onmouseover = this.camc_mouseover.bind(this), | |
this.cam_c.onmouseout = this.camc_mouseout.bind(this), | |
null === this.statp ? (this.statp = document.createElement("p"), | |
this.statp.className = "stat", | |
this.statp.innerHTML = "", | |
this.statp.onclick = this.stat_click.bind(this), | |
this.statp.onmouseover = this.stat_mouseover.bind(this), | |
this.statp.onmouseout = this.stat_mouseout.bind(this), | |
this.cam_c.appendChild(this.statp)) : this.statp.style.display = "block"), | |
this.video = document.createElement("video"), | |
this.video.id = "video" + this.camno, | |
this.video.volume = 0, | |
this.video.muted = !0, | |
this.video.playsinline = !0, | |
this.video.setAttribute("playsinline", "playsinline"), | |
this.video.ondblclick = this.dblclick_video.bind(this), | |
this.cam_c.appendChild(this.video), | |
null === this.vab ? (this.vab = new fc_vab, | |
this.cam_c.appendChild(this.vab.elem)) : this.vab.elem.style.display = "block", | |
null === this.topbar ? (this.topbar = document.createElement("div"), | |
this.topbar.className = "topbar", | |
this.cam_c.appendChild(this.topbar)) : this.topbar.style.display = "block", | |
this.you || (null === this.volrange ? (this.volrange = document.createElement("input"), | |
this.volrange.className = "volume", | |
this.volrange.type = "range", | |
this.volrange.oninput = this.input_volrange.bind(this), | |
this.cam_c.appendChild(this.volrange)) : this.volrange.style.display = "inline-block", | |
null === this.mutebtn ? (this.mutebtn = document.createElement("button"), | |
this.mutebtn.className = "mutebtn muted material-icons", | |
this.mutebtn.onclick = this.click_mute.bind(this), | |
this.cam_c.appendChild(this.mutebtn)) : this.mutebtn.style.display = "inline-block"), | |
null === this.maxbtn ? (this.maxbtn = document.createElement("button"), | |
this.maxbtn.className = "maxbtn material-icons", | |
this.maxbtn.innerHTML = "fullscreen", | |
this.maxbtn.onclick = this.click_maxcam.bind(this), | |
this.cam_c.appendChild(this.maxbtn)) : this.maxbtn.style.display = "inline-block", | |
null === this.stopbtn && (this.stopbtn = document.createElement("button"), | |
this.stopbtn.className = "stopbtn material-icons", | |
this.stopbtn.innerHTML = "stop", | |
this.stopbtn.onclick = this.click_stopcam.bind(this), | |
this.cam_c.appendChild(this.stopbtn)), | |
this.canstop() ? this.stopbtn.style.display = "inline-block" : this.stopbtn.style.display = "none", | |
this.you || (null === this.pausebtn ? (this.pausebtn = document.createElement("button"), | |
this.pausebtn.className = "pausebtn material-icons", | |
this.pausebtn.innerHTML = "pause_circle_outline", | |
this.pausebtn.onclick = this.click_pausecam.bind(this), | |
this.cam_c.appendChild(this.pausebtn)) : this.pausebtn.style.display = "inline-block"), | |
null === this.bottombar ? (this.bottombar = document.createElement("div"), | |
this.bottombar.className = "bottombar", | |
this.cam_c.appendChild(this.bottombar)) : this.bottombar.style.display = "block", | |
null === this.namep ? (this.namep = document.createElement("p"), | |
this.namep.className = "name " + this.user.getnccl(), | |
this.namep.onclick = this.menu_cb, | |
this.cam_c.appendChild(this.namep)) : (this.namep.className = "name " + this.user.getnccl(), | |
this.namep.style.display = "block"), | |
this.namep.setAttribute("data-uuid", this.user.uuid), | |
this.namep.style.pointerEvents = "auto", | |
this.namep.innerHTML = this.user.username, | |
this.you || (null === this.loading ? (this.loading = new fc_camload(this.ws.theme.btnup,this.ws.theme.btnover), | |
this.loading.show(), | |
this.cam_c.appendChild(this.loading.elem)) : this.loading.show()), | |
this.you ? (this.video.srcObject = this.local_stream, | |
this.vab.setstream(this.local_stream), | |
this.starttime = Date.now(), | |
this.video.play(), | |
0 < this.local_stream.getAudioTracks().length && (null === this.mutebtn ? (this.mutebtn = document.createElement("button"), | |
this.mutebtn.className = "mutebtn muted material-icons", | |
this.mutebtn.onclick = this.click_mute.bind(this), | |
this.cam_c.appendChild(this.mutebtn)) : this.mutebtn.style.display = "inline-block", | |
this.mutebtn.className = "mutebtn material-icons", | |
this.vab.play())) : (null !== this.rtcpull && (this.rtcpull.selfdestruct(), | |
this.rtcpull = null), | |
this.rtcpull = new fc_rtcpull(this.ws,this.pb,this), | |
this.ws.sendpbuf(1200711, this.pb.roots.default.fc.p_1200711.encode({ | |
cn: this.camno, | |
op1: !0, | |
op2: !1, | |
op3: !1 | |
}, null).finish()), | |
this.volrange.value = 100 * this.video.volume) | |
} | |
, | |
fc_cam.prototype.canstop = function() { | |
return this.you || this.user.modlvl < this.ws.modlvl && (100 === this.ws.modlvl && this.ws.pol_modstopcam || 100 < this.ws.modlvl) | |
} | |
, | |
fc_cam.prototype.pausecam = function(t) { | |
this.user = t, | |
this.paused = !0, | |
this.dodemax(), | |
this.cleanuprtc(), | |
null !== this.mobskin && (this.mobskin.style.display = "none"), | |
null !== this.video && (this.video.parentNode.removeChild(this.video), | |
this.video = null), | |
null !== this.topbar && (this.topbar.style.display = "none"), | |
null !== this.statp && (this.statp.style.display = "none"), | |
null !== this.maxbtn && (this.maxbtn.style.display = "none"), | |
null !== this.pausebtn && (this.pausebtn.style.display = "none"), | |
null !== this.stopbtn && (this.stopbtn.style.display = "none"), | |
null !== this.bottombar && (this.bottombar.style.display = "none"), | |
null === this.namep ? (this.namep = document.createElement("p"), | |
this.namep.className = "name paused " + this.user.getnccl(), | |
this.namep.onclick = this.menu_cb, | |
this.cam_c.appendChild(this.namep)) : (this.namep.className = "name paused " + this.user.getnccl(), | |
this.namep.style.display = "block"), | |
this.namep.style.pointerEvents = "none", | |
this.namep.innerHTML = t.username, | |
null !== this.vab && (this.vab.stop(), | |
this.vab.setstream(null), | |
this.vab.elem.style.display = "none"), | |
null !== this.volrange && (this.volrange.style.display = "none"), | |
null !== this.mutebtn && (this.mutebtn.style.display = "none"), | |
null !== this.loading && this.loading.hide(), | |
null !== this.startbtn && (this.startbtn.style.display = "none"), | |
null === this.unpausebtn ? (this.unpausebtn = document.createElement("div"), | |
this.unpausebtn.className = "unpause", | |
this.unpausebtn.onclick = this.click_unpausecam.bind(this), | |
t = document.createElement("span"), | |
this.unpausebtn.appendChild(t), | |
this.cam_c.appendChild(this.unpausebtn)) : this.unpausebtn.style.display = "grid" | |
} | |
, | |
fc_cam.prototype.stopcam = function() { | |
var t; | |
this.user = null, | |
this.you = !1, | |
this.paused = !1, | |
this.starttime = 0, | |
this.dodemax(), | |
this.cleanuprtc(), | |
null !== this.mobskin && (this.mobskin.style.display = "none"), | |
null !== this.video && (this.video.parentNode.removeChild(this.video), | |
this.video = null), | |
null !== this.topbar && (this.topbar.style.display = "none"), | |
null !== this.statp && (this.statp.style.display = "none"), | |
null !== this.maxbtn && (this.maxbtn.style.display = "none"), | |
null !== this.pausebtn && (this.pausebtn.style.display = "none"), | |
null !== this.stopbtn && (this.stopbtn.style.display = "none"), | |
null !== this.bottombar && (this.bottombar.style.display = "none"), | |
null !== this.namep && (this.namep.style.display = "none"), | |
null !== this.vab && (this.vab.stop(), | |
this.vab.setstream(null), | |
this.vab.elem.style.display = "none"), | |
null !== this.volrange && (this.volrange.style.display = "none"), | |
null !== this.mutebtn && (this.mutebtn.style.display = "none"), | |
null !== this.loading && this.loading.hide(), | |
null !== this.unpausebtn && (this.unpausebtn.style.display = "none"), | |
null === this.startbtn ? (this.startbtn = document.createElement("div"), | |
this.startbtn.className = "camstart", | |
this.startbtn.onclick = this.click_startcam.bind(this), | |
t = document.createElement("span"), | |
this.startbtn.appendChild(t), | |
this.cam_c.appendChild(this.startbtn)) : this.startbtn.style.display = "grid" | |
} | |
, | |
fc_cam.prototype.havecam = function(t) { | |
for (var e = t.getTracks(), n = 0; n < e.length; n++) | |
; | |
this.video.muted = !0, | |
this.video.srcObject = t, | |
this.local_stream = t, | |
this.starttime = Date.now() | |
} | |
, | |
fc_cam.prototype.pshid = function(t) { | |
if (null !== this.rtcpush && 0 !== this.rtcpush.length) | |
for (var e = 0; e < this.rtcpush.length; e++) | |
if (this.rtcpush[e].finish) | |
this.rtcpush.splice(e, 1), | |
e = 0; | |
else if (this.rtcpush[e].tid === t) | |
return this.rtcpush[e]; | |
return null | |
} | |
, | |
fc_cam.prototype.offerreq = function(t) { | |
var e; | |
this.you && null !== this.local_stream && (null === this.rtcpush && (this.rtcpush = []), | |
null === (e = this.pshid(t)) && (e = Date.now() - this.starttime < this.offersonhold_delay ? (null === this.offersonhold && (this.offersonhold = []), | |
null === this.offersonhold_interval && (this.offersonhold_interval = setInterval(this.ofonhold.bind(this), this.offersonhold_delay)), | |
new fc_rtcpush(this.ws,this.pb,this,t,this.local_stream,this.offersonhold)) : new fc_rtcpush(this.ws,this.pb,this,t,this.local_stream,null), | |
this.rtcpush.push(e)), | |
e.offerreq()) | |
} | |
, | |
fc_cam.prototype.ofonhold = function(t) { | |
var e; | |
0 < this.offersonhold.length && (e = this.offersonhold.slice(), | |
this.offersonhold = [], | |
this.ws.sendpbuf(1200724, this.pb.roots.default.fc.p_1200724.encode({ | |
sdp: e | |
}, null).finish())), | |
Date.now() - this.starttime > 3 * this.offersonhold_delay && (clearInterval(this.offersonhold_interval), | |
this.offersonhold_interval = null) | |
} | |
, | |
fc_cam.prototype.offer = function(t, e) { | |
null !== this.rtcpull && this.rtcpull.offer(t, e) | |
} | |
, | |
fc_cam.prototype.answer = function(t, e) { | |
this.you && null !== (t = this.pshid(t)) && t.answer(e) | |
} | |
, | |
fc_cam.prototype.ice = function(t, e) { | |
this.you ? null !== (t = this.pshid(t)) && t.ice(e) : null !== this.rtcpull && this.rtcpull.ice(e) | |
} | |
, | |
fc_cam.prototype.close = function(t) { | |
var e; | |
this.you ? null !== (e = this.pshid(t)) && e.selfdestruct() : null !== this.rtcpull && this.rtcpull.tid === t && (this.rtcpull.selfdestruct(), | |
this.rtcpull = null) | |
} | |
, | |
fc_camload.prototype.show = function() { | |
if (null === this.loading) { | |
this.loading = document.createElement("div"), | |
this.loading.className = "ld1"; | |
for (var t = 0; t < 4; t++) { | |
var e = document.createElement("div") | |
, n = (e.className = "out", | |
document.createElement("div")); | |
n.className = "in", | |
e.appendChild(n), | |
this.loading.appendChild(e), | |
this.blocks.push(e) | |
} | |
this.elem.appendChild(this.loading) | |
} | |
"block" !== this.elem.style.display && (this.elem.style.display = "block"), | |
0 === this.interval && (this.interval = setInterval(this.tick.bind(this), 300)) | |
} | |
, | |
fc_camload.prototype.tick = function() { | |
var t = this.blocks[this.step]; | |
t.style.backgroundColor = this.c1, | |
t.style.opacity = .4, | |
this.step === this.blocks.length - 1 ? this.step = 0 : this.step++, | |
(t = this.blocks[this.step]).style.backgroundColor = this.c2, | |
t.style.opacity = .8 | |
} | |
, | |
fc_camload.prototype.hide = function() { | |
"block" === this.elem.style.display && (this.elem.style.display = "none"), | |
0 !== this.interval && (clearInterval(this.interval), | |
this.interval = 0) | |
} | |
, | |
fc_chatbox.prototype.entypeline = function() { | |
this.p_typing_line = document.createElement("p"), | |
this.p_typing_line.className = "typing", | |
this.p_typing_names = document.createElement("span"), | |
this.p_typing_line.appendChild(this.p_typing_names), | |
this.p_typing_status = document.createElement("span"), | |
this.p_typing_line.appendChild(this.p_typing_status), | |
this.elem.appendChild(this.p_typing_line) | |
} | |
, | |
fc_chatbox.prototype.settyping = function(t, e, n) { | |
let i = !1; | |
this.isscrollpinned() && (i = !0); | |
0 === n ? this.p_typing_line.style.display = "none" : (this.p_typing_line.style.display = "inline-block", | |
this.p_typing_names.innerText = t, | |
this.p_typing_names.className = "nm " + this.ml2nc(e), | |
1 === n && (this.p_typing_status.innerText = "is typing", | |
this.p_typing_status.className = "takago fcsys"), | |
2 === n && (this.p_typing_status.innerText = "stopped typing", | |
this.p_typing_status.className = "takastop fcsys")), | |
i && this.scrolldown() | |
} | |
, | |
fc_chatbox.prototype.mkts = function(t) { | |
let e; | |
e = 0 === t ? new Date : new Date(t + this.ws.tmdelta); | |
t = document.createElement("span"); | |
return t.className = "ts fcts", | |
t.innerText = "[" + e.toLocaleTimeString() + "] ", | |
t | |
} | |
, | |
fc_chatbox.prototype.addyoutube = function(t) { | |
var e = document.createElement("p") | |
, n = (e.appendChild(this.mkts(0)), | |
document.createElement("span")); | |
n.innerHTML = "YouTube now playing " + t, | |
n.className = "fcsys yt", | |
n.onclick = this.youtube_cb, | |
e.appendChild(n), | |
this.addpara(e) | |
} | |
, | |
fc_chatbox.prototype.addroll = function(t, e, n, i, s) { | |
let o = "[ROLL] " + t + " rolled " + n + "d" + i + " "; | |
for (var c = 0; c < s.length; c++) | |
o += s[c] + " "; | |
this.addsys(o, e) | |
} | |
, | |
fc_chatbox.prototype.addsys = function(t, e) { | |
var n = document.createElement("p") | |
, i = (n.appendChild(this.mkts(0)), | |
document.createElement("span")); | |
i.innerHTML = t, | |
i.className = "sysmsg fcsys", | |
"number" == typeof e && (i.className = "sysmsg fcsys menuable", | |
i.setAttribute("data-uuid", e), | |
i.onclick = this.menu_cb), | |
n.appendChild(i), | |
this.addpara(n) | |
} | |
, | |
fc_chatbox.prototype.addme = function(t, e, n, i, s, o) { | |
let c; | |
c = o ? e + "'s " + i : e + " " + i; | |
o = document.createElement("p"), | |
o.appendChild(this.mkts(t)), | |
e = document.createElement("span"); | |
e.innerHTML = c, | |
e.className = "me " + this.ml2nc(s), | |
e.setAttribute("data-uuid", n), | |
e.onclick = this.menu_cb, | |
o.appendChild(e), | |
this.addpara(o) | |
} | |
, | |
fc_chatbox.prototype.addnormal = function(e, n, i, s, o, c, r, l) { | |
try { | |
if (0 < l) { | |
if (l <= this.lastmn) | |
return; | |
this.lastmn = l | |
} | |
// Beep when a PM is received. | |
else { | |
var beepToggle = new URLSearchParams(window.location.search); | |
// The username of the sender is stored in "e". | |
// Your username is stored in "this.ws.username". | |
// Only sound beep when it is a PM from anyone but yourself, and doesn't start with nb or NB (NoBeep) | |
// Only beep if querystring "beep" value is not set to "Off" | |
if (n != this.ws.username && !(o.toUpperCase().startsWith("NB")) && beepToggle.get('beep') != 'Off' ) { | |
// Prefix the PM Message with a "🔈". Mostly for sanity check. | |
o = "🔈" + o; | |
// Play the beep. | |
//new Audio("data:audio/wav;base64,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 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////VEFHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAU291bmRib3kuZGUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMjAwNGh0dHA6Ly93d3cuc291bmRib3kuZGUAAAAAAAAAACU=").play(); | |
new Audio('data:audio/ogg;base64,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').play(); | |
} | |
} | |
var a = document.createElement("p"); | |
a.setAttribute("data-t", "c"), | |
a.appendChild(this.mkts(e)); | |
let t = document.createElement("span"); | |
t.innerHTML = n + ": ", | |
t.className = "nm " + this.ml2nc(s), | |
t.setAttribute("data-uuid", i), | |
t.onclick = this.menu_cb, | |
a.appendChild(t), | |
(t = document.createElement("span")).style.color = c, | |
t.className = "msg fs_" + r, | |
t.innerHTML = o, | |
a.appendChild(t), | |
this.addpara(a) | |
} catch (t) {} | |
} | |
, | |
fc_chatbox.prototype.addpara = function(e) { | |
try { | |
let t = !1; | |
this.isscrollpinned() && (t = !0), | |
null === this.p_typing_line ? this.elem.appendChild(e) : this.elem.insertBefore(e, this.p_typing_line), | |
this.elem.childNodes.length > this.ws.chatmaxline && this.elem.removeChild(this.elem.firstChild), | |
t && this.scrolldown() | |
} catch (t) {} | |
} | |
, | |
fc_chatbox.prototype.setrecon = function(t) { | |
var e; | |
null !== this.span_recon ? this.span_recon.innerText = "Connection lost, reconnecting (" + t + ")" : ((e = document.createElement("p")).appendChild(this.mkts(0)), | |
this.span_recon = document.createElement("span"), | |
this.span_recon.innerText = "Connection lost, reconnecting (" + t + ")", | |
this.span_recon.className = "sysmsg fcsys", | |
e.appendChild(this.span_recon), | |
this.addpara(e)) | |
} | |
, | |
fc_chatbox.prototype.setrecon_done = function() { | |
null !== this.span_recon && (this.span_recon.innerText = "Connection has been restored", | |
this.span_recon = null) | |
} | |
, | |
fc_chatbox.prototype.purge = function(e) { | |
for (let t = -1; t < this.elem.childNodes.length; t++) { | |
var n = this.elem.childNodes[t]; | |
void 0 !== n && "c" === n.dataset.t && n.innerHTML.includes(e) && (this.elem.removeChild(n), | |
t--) | |
} | |
this.scrolldown() | |
} | |
, | |
fc_chatbox.prototype.isscrollpinned = function() { | |
return -4 < Math.round(this.elem.scrollTop) - (this.elem.scrollHeight - this.elem.clientHeight) | |
} | |
, | |
fc_chatbox.prototype.scrolldown = function() { | |
this.elem.scrollTop = this.elem.scrollHeight - this.elem.clientHeight | |
} | |
, | |
fc_chatbox.prototype.pad2 = function(t) { | |
return t < 10 ? "0" + t : t | |
} | |
, | |
fc_chatbox.prototype.ml2nc = function(t) { | |
switch (t) { | |
case 100: | |
return "fcmod"; | |
case 150: | |
return "fcsuper"; | |
case 200: | |
return "fcowner"; | |
case 300: | |
return "fcadmin"; | |
default: | |
return "fcuser" | |
} | |
} | |
, | |
fc_chatbox.prototype.history = function(e, t, n) { | |
if (this.lastmn > t && (this.lastmn = t - e.length), | |
null !== e && 0 !== e.length) { | |
e.sort(function(t, e) { | |
return t.ts > e.ts | |
}); | |
for (let t = 0; t < e.length; t++) { | |
var i = e[t]; | |
this.addnormal(i.ts, i.snm, i.suuid, i.ml, i.msg, i.clr, i.sz, i.mn), | |
null === n.gubuid(i.suuid) && n.addleftskel(i.suuid, i.snm, i.ml, !0) | |
} | |
} | |
this.scrolldown() | |
} | |
, | |
fc_checkbox.prototype.setattrib = function(t, e) { | |
this.cb.setAttribute(t, e) | |
} | |
, | |
fc_checkbox.prototype.addonclick = function(t) { | |
this.elem.addEventListener("click", t) | |
} | |
, | |
fc_checkbox.prototype.check = function(t) { | |
this.cb.checked = t | |
} | |
, | |
fc_checkbox.prototype.getstate = function() { | |
return this.cb.checked | |
} | |
, | |
fc_checkbox.prototype.ischecked = function() { | |
return this.cb.checked | |
} | |
, | |
fc_checkbox.prototype.checked = function() { | |
return this.cb.checked | |
} | |
, | |
fc_config.prototype.readjson = function(t) { | |
if (0 !== t.length) | |
try { | |
var e, n = JSON.parse(t); | |
for (e in n) | |
this.set(e, n[e]) | |
} catch (t) {} | |
} | |
, | |
fc_config.prototype.setdef = function(t) { | |
this.def_settings = t | |
} | |
, | |
fc_config.prototype.set = function(e, n) { | |
if (this.get(e) !== n) { | |
let t = !1; | |
var i = this.def_settings[e]; | |
if (void 0 !== i && i === n && (void 0 !== this.settings[e] && delete this.settings[e], | |
t = !0), | |
!t) | |
for (var s in this.settings) | |
s === e && (this.settings[e] = n, | |
t = !0); | |
t || (this.settings[e] = n), | |
this.applysetting_cb(e, n) | |
} | |
} | |
, | |
fc_config.prototype.setandsave = function(t, e) { | |
this.set(t, e), | |
this.save() | |
} | |
, | |
fc_config.prototype.get = function(t) { | |
var e = this.settings[t]; | |
return void 0 !== e ? e : this.def_settings[t] | |
} | |
, | |
fc_config.prototype.save = function() { | |
var t = JSON.stringify(this.settings); | |
this.ws.sendpbuf(1200331, this.pb.roots.default.fc.p_1200331.encode({ | |
cnf: t | |
}, null).finish()) | |
} | |
, | |
fc_ctrlpm.prototype.entaka = function(t) { | |
for (var e in this.taka_enable = t, | |
this.wndpm) | |
this.wndpm[e].entaka(t) | |
} | |
, | |
fc_ctrlpm.prototype.enblockpm = function(t) { | |
for (var e in this.blockpm_enable = t, | |
this.wndpm) | |
this.wndpm[e].enblockpm(t) | |
} | |
, | |
fc_ctrlpm.prototype.enrecvsnd = function(t) { | |
for (var e in this.recvsnd_enable = t, | |
this.wndpm) | |
this.wndpm[e].enrecvsnd(t) | |
} | |
, | |
fc_ctrlpm.prototype.getpm = function(t) { | |
var e, n; | |
return this.wndpm.hasOwnProperty(t) || (e = this.ul.gubuid(t), | |
(n = new fc_wndpm(this.ws,this.pb,this.wndctrl,this.msglimit,this.umcb,e.username,e.uuid,this.font_colour,this.font_size)).entaka(this.taka_enable), | |
n.enblockpm(this.blockpm_enable), | |
n.enrecvsnd(this.recvsnd_enable), | |
e.setpmwnd(n), | |
this.wndpm[t] = n), | |
this.wndpm[t] | |
} | |
, | |
fc_ctrlpm.prototype.updatemaxlen = function() { | |
for (var t in this.wndpm) | |
this.wndpm[t].updatemaxlen() | |
} | |
, | |
fc_ctrlpm.prototype.updatefc = function(t) { | |
for (var e in this.font_colour = t, | |
this.wndpm) | |
this.wndpm[e].updatefc(this.font_colour) | |
} | |
, | |
fc_ctrlpm.prototype.updatefs = function(t) { | |
for (var e in this.font_size = t, | |
this.wndpm) | |
this.wndpm[e].updatefs(this.font_size) | |
} | |
, | |
fc_ctrlpm.prototype.notifytaka = function(t, e) { | |
this.wndpm.hasOwnProperty(t) && this.wndpm[t].rcvtaka(e) | |
} | |
, | |
fc_ctrlpm.prototype.notifypmblock = function(t, e) { | |
this.wndpm.hasOwnProperty(t) && this.wndpm[t].rcvpmblock(e) | |
} | |
, | |
fc_ctrlpm.prototype.status = function(t) { | |
this.wndpm.hasOwnProperty(t) && this.wndpm[t].status() | |
} | |
, | |
fc_ctrlpm.prototype.closeuuid = function(t) { | |
for (var e in this.wndpm) | |
this.wndpm[e].uuid === t && this.wndpm[e].close() | |
} | |
, | |
fc_ctrlwnd.prototype.addwindow = function(t, e, n, i) { | |
var s = this | |
, o = this.wnd_array.length | |
, c = new fc_wnd(this.parent_elem,o,i,t,e,n); | |
return c.elem.addEventListener("mousedown", function(t) { | |
return t.stopPropagation(), | |
s.stealfocus(c), | |
!0 | |
}), | |
c.elem_header.addEventListener("mousedown", function() { | |
return s.draggo(c), | |
!1 | |
}), | |
c.elem_header.addEventListener("touchstart", function(t) { | |
t = t.targetTouches[0]; | |
return s.mouse_x = t.pageX, | |
s.mouse_y = t.pageY, | |
s.draggo(c), | |
!1 | |
}), | |
i && (c.rz_left.onmousedown = function(t) { | |
return t.stopPropagation(), | |
s.resizego(c, !0, !1, !1), | |
s.stealfocus(c), | |
!1 | |
} | |
, | |
c.rz_right.onmousedown = function(t) { | |
return t.stopPropagation(), | |
s.resizego(c, !1, !0, !1), | |
s.stealfocus(c), | |
!1 | |
} | |
, | |
c.rz_bottom.onmousedown = function(t) { | |
return t.stopPropagation(), | |
s.resizego(c, !1, !1, !0), | |
s.stealfocus(c), | |
!1 | |
} | |
, | |
c.rz_bottomleft.onmousedown = function(t) { | |
return t.stopPropagation(), | |
s.resizego(c, !0, !1, !0), | |
s.stealfocus(c), | |
!1 | |
} | |
, | |
c.rz_bottomright.onmousedown = function(t) { | |
return t.stopPropagation(), | |
s.resizego(c, !1, !0, !0), | |
s.stealfocus(c), | |
!1 | |
} | |
), | |
this.wnd_array.push(c), | |
c | |
} | |
, | |
fc_ctrlwnd.prototype.stealfocus = function(t) { | |
null === t ? null !== this.wnd_infocus && (this.wnd_infocus.unfocus(), | |
this.wnd_infocus = null) : (null !== this.wnd_infocus && (this.wnd_infocus.unfocus(), | |
this.wnd_infocus = null), | |
this.wnd_infocus = t, | |
this.wnd_infocus.focus(this.zindex_inc), | |
this.zindex_inc++) | |
} | |
, | |
fc_ctrlwnd.prototype.draggo = function(t) { | |
this.drag_wnd = t, | |
this.drag_elem_x = this.mouse_x - t.elem.offsetLeft, | |
this.drag_elem_y = this.mouse_y - t.elem.offsetTop | |
} | |
, | |
fc_ctrlwnd.prototype.resizego = function(t, e, n, i) { | |
this.resize_wnd = t, | |
this.drag_elem_x = this.mouse_x - t.elem.offsetLeft, | |
this.drag_elem_y = this.mouse_y - t.elem.offsetTop, | |
this.resize_left = e, | |
this.resize_right = n, | |
this.resize_bottom = i, | |
!this.resize_left || this.resize_bottom || this.resize_right ? this.resize_left && this.resize_bottom && !this.resize_right ? document.getElementsByTagName("body")[0].style.cursor = "sw-resize" : this.resize_left || !this.resize_bottom || this.resize_right ? !this.resize_left && this.resize_bottom && this.resize_right ? document.getElementsByTagName("body")[0].style.cursor = "se-resize" : this.resize_left || this.resize_bottom || !this.resize_right || (document.getElementsByTagName("body")[0].style.cursor = "e-resize") : document.getElementsByTagName("body")[0].style.cursor = "s-resize" : document.getElementsByTagName("body")[0].style.cursor = "w-resize" | |
} | |
, | |
fc_ctrlwnd.prototype.docmousemove = function(t, e) { | |
this.mouse_x = t, | |
this.mouse_y = e, | |
null !== this.drag_wnd && (this.drag_wnd.elem.style.left = this.mouse_x - this.drag_elem_x + "px", | |
this.drag_wnd.elem.style.top = this.mouse_y - this.drag_elem_y + "px"), | |
null !== this.resize_wnd && (this.resize_left && (t = this.resize_wnd.elem.offsetLeft, | |
this.resize_wnd.elem.clientWidth - (this.mouse_x - this.drag_elem_x - t) > this.resize_wnd.min_width) && (this.resize_wnd.elem.style.left = this.mouse_x - this.drag_elem_x + "px", | |
this.resize_wnd.elem.style.width = this.resize_wnd.elem.clientWidth - (this.resize_wnd.elem.offsetLeft - t) + "px"), | |
this.resize_right && (this.resize_wnd.elem.style.width = this.mouse_x - (this.resize_wnd.elem.offsetLeft + this.resize_wnd.elem.parentNode.offsetLeft) + "px"), | |
this.resize_bottom && (this.resize_wnd.elem.style.height = this.mouse_y - (this.resize_wnd.elem.offsetTop + this.resize_wnd.elem.parentNode.offsetTop) + "px"), | |
this.resize_wnd.wnd_onresize()) | |
} | |
, | |
fc_ctrlwnd.prototype.docmouseup = function() { | |
this.drag_wnd = null, | |
this.resize_wnd = null, | |
document.getElementsByTagName("body")[0].style.cursor = "default" | |
} | |
, | |
fc_layout.prototype.getcam = function(t) { | |
for (var e = 0; e < this.cams.length; e++) | |
if (this.cams[e].camno === t) | |
return this.cams[e]; | |
return null | |
} | |
, | |
fc_layout.prototype.gcbu = function(t) { | |
for (var e = 0; e < this.cams.length; e++) | |
if (this.cams[e].username === t) | |
return this.cams[e]; | |
return null | |
} | |
, | |
fc_layout.prototype.offerreq = function(t, e) { | |
for (var n, i = 0; i < this.cams.length; i++) | |
if ((n = this.cams[i]).camno === t) { | |
n.offerreq(e); | |
break | |
} | |
} | |
, | |
fc_layout.prototype.offer = function(t, e, n) { | |
for (var i, s = 0; s < this.cams.length; s++) | |
if ((i = this.cams[s]).camno === t) { | |
i.offer(e, n); | |
break | |
} | |
} | |
, | |
fc_layout.prototype.answer = function(t, e, n) { | |
t = this.getcam(t); | |
null !== t && t.answer(e, n) | |
} | |
, | |
fc_layout.prototype.ice = function(t, e, n) { | |
t = this.getcam(t); | |
null !== t && t.ice(e, n) | |
} | |
, | |
fc_layout.prototype.close = function(t, e) { | |
t = this.getcam(t); | |
null !== t && t.close(e) | |
} | |
, | |
fc_layout.prototype.modchg = function(t) { | |
for (var e = 0; e < this.cams.length; e++) { | |
var n = this.cams[e]; | |
null === n.user || t !== n.user.username && t !== this.ws.username || n.modchg() | |
} | |
} | |
, | |
fc_layout.prototype.showlist = function(t, e) { | |
if (2 !== this.cur_layout) { | |
for (var n = [], i = 0; i < t.length; i++) | |
n[t[i].cn] = t[i]; | |
for (var s, o, i = 0; i < n.length; i++) | |
void 0 === n[i] ? (o = this.cams[i]).stopcam() : null !== (s = e.gubn(n[i].nm)) && ((o = this.cams[i]).setiser(n[i].cs.fn, n[i].cs.lc, n[i].cs.ta, n[i].cs.tu, n[i].cs.tp), | |
this.kageshi_mode ? o.pausecam(s) : o.showcam(s, !1)) | |
} | |
this.joined = !0 | |
} | |
, | |
fc_layout.prototype.setkmode = function(t) { | |
this.kageshi_mode = t; | |
for (var e = 0; e < this.cams.length; e++) | |
this.cams[e].setkmode(t) | |
} | |
, | |
fc_layout.prototype.camsrvchg = function(t, e, n) { | |
e = this.getcam(e); | |
null !== e && e.setiser(n.fn, n.lc, n.ta, n.tu, n.tp) | |
} | |
, | |
fc_layout.prototype.showcam = function(t, e, n, i) { | |
var s, o = !1; | |
try { | |
var c = i.gubn(t); | |
null !== c && (2 !== this.cur_layout && (s = this.cams[e]), | |
this.ws.username === t && (o = !0), | |
s.setiser(n.fn, n.lc, n.ta, n.tu, n.tp), | |
!o && this.kageshi_mode ? s.pausecam(c) : s.showcam(c, o)) | |
} catch (t) {} | |
} | |
, | |
fc_layout.prototype.stopcam = function(t) { | |
var e, n; | |
try { | |
for (e = 0; e < this.cams.length; e++) | |
if ((n = this.cams[e]).camno === t) { | |
2 === this.cur_layout ? (n.stopcam(), | |
n.selfdestruct(), | |
this.cams.splice(e, 1)) : n.stopcam(); | |
break | |
} | |
} catch (t) {} | |
} | |
, | |
fc_layout.prototype.setup = function(t) { | |
switch (this.wndmedia.click_cancel(), | |
t) { | |
case 1: | |
default: | |
case 2: | |
this.set1(); | |
break; | |
case 3: | |
this.set3(); | |
break; | |
case 4: | |
this.set4(); | |
break; | |
case 5: | |
this.set5(); | |
break; | |
case 6: | |
this.set6(); | |
break; | |
case 7: | |
this.set7(); | |
break; | |
case 8: | |
this.set8(); | |
break; | |
case 9: | |
this.set9() | |
} | |
this.setkmode(this.kageshi_mode) | |
} | |
, | |
fc_layout.prototype.createCam = function(t, e) { | |
t = new fc_cam(this.ws,this.pb,this.div_maxcont,this.cams.length,t,e,this.wndmedia,this.tip,this.menu_cb,this.volhist); | |
return this.cams.push(t), | |
t | |
} | |
, | |
fc_layout.prototype.clearLayout = function() { | |
for (this.cams = []; this.elem.hasChildNodes(); ) | |
this.elem.removeChild(this.elem.lastChild); | |
this.elem.innerHTML = "" | |
} | |
, | |
fc_layout.prototype.set1 = function() { | |
this.clearLayout() | |
} | |
, | |
fc_layout.prototype.set2 = function() {} | |
, | |
fc_layout.prototype.dynstart = function() {} | |
, | |
fc_layout.prototype.set3 = function() { | |
this.clearLayout(); | |
for (var t = 0; t < 8; t++) { | |
var e = this.createCam("4:3", "25%"); | |
this.elem.appendChild(e.elem) | |
} | |
this.cur_layout = 3 | |
} | |
, | |
fc_layout.prototype.set4 = function() { | |
this.clearLayout(); | |
var t = this.createCam("4:3", "50%") | |
, e = (this.elem.appendChild(t.elem), | |
document.createElement("div")) | |
, n = (e.className = "camcol_a", | |
e.style.width = "50%", | |
this.elem.appendChild(e), | |
document.createElement("div")) | |
, e = (n.className = "camcol_b", | |
n.style.paddingTop = "75%", | |
e.appendChild(n), | |
document.createElement("div")) | |
, t = (e.className = "camcol_c", | |
n.appendChild(e), | |
this.createCam("4:3", "50%")) | |
, t = (e.appendChild(t.elem), | |
this.createCam("4:3", "50%")) | |
, t = (e.appendChild(t.elem), | |
this.createCam("4:3", "50%")) | |
, t = (e.appendChild(t.elem), | |
this.createCam("4:3", "50%")); | |
e.appendChild(t.elem), | |
this.cur_layout = 4 | |
} | |
, | |
fc_layout.prototype.set5 = function() { | |
this.clearLayout(); | |
var t = this.createCam("4:3", "50%"); | |
this.elem.appendChild(t.elem), | |
t = this.createCam("4:3", "50%"), | |
this.elem.appendChild(t.elem), | |
this.cur_layout = 5 | |
} | |
, | |
fc_layout.prototype.set6 = function() { | |
this.clearLayout(); | |
for (var t = 0; t < 12; t++) { | |
var e = this.createCam("16:9", "25%"); | |
this.elem.appendChild(e.elem) | |
} | |
this.cur_layout = 6 | |
} | |
, | |
fc_layout.prototype.set7 = function() { | |
this.clearLayout(); | |
for (var t = 0; t < 6; t++) { | |
var e = this.createCam("16:9", "33.33%"); | |
this.elem.appendChild(e.elem) | |
} | |
this.cur_layout = 7 | |
} | |
, | |
fc_layout.prototype.set8 = function() { | |
this.clearLayout(); | |
var t = this.createCam("16:9", "66.6%") | |
, e = (this.elem.appendChild(t.elem), | |
document.createElement("div")) | |
, n = (e.className = "camcol_a", | |
e.style.width = "33.3%", | |
this.elem.appendChild(e), | |
document.createElement("div")) | |
, e = (n.className = "camcol_b", | |
e.appendChild(n), | |
document.createElement("div")) | |
, t = (e.className = "camcol_c", | |
n.appendChild(e), | |
this.createCam("16:9", "100%")) | |
, t = (e.appendChild(t.elem), | |
this.createCam("16:9", "100%")); | |
e.appendChild(t.elem), | |
this.cur_layout = 8 | |
} | |
, | |
fc_layout.prototype.set9 = function() { | |
this.clearLayout(); | |
var t = this.createCam("21:9", "100%"); | |
this.elem.appendChild(t.elem), | |
this.cur_layout = 9 | |
} | |
, | |
fc_left.prototype.mod = function() { | |
this.modlvl = 100 | |
} | |
, | |
fc_left.prototype.unmod = function() { | |
this.modlvl = 0 | |
} | |
, | |
fc_left.prototype.block = function() { | |
this.blocked = !0 | |
} | |
, | |
fc_left.prototype.unblock = function() { | |
this.blocked = !1 | |
} | |
, | |
fc_menu.prototype.mouseleave = function(t) { | |
null !== this.leavetimeout && (clearTimeout(this.leavetimeout), | |
this.leavetimeout = null), | |
this.leavetimeout = setTimeout(this.close.bind(this), 1e3) | |
} | |
, | |
fc_menu.prototype.mouseenter = function(t) { | |
null !== this.leavetimeout && (clearTimeout(this.leavetimeout), | |
this.leavetimeout = null) | |
} | |
, | |
fc_menu.prototype.close = function() { | |
null !== this.leavetimeout && (clearTimeout(this.leavetimeout), | |
this.leavetimeout = null), | |
null !== this.showtimeout && (clearTimeout(this.showtimeout), | |
this.showtimeout = null), | |
this.elem.style.display = "none" | |
} | |
, | |
fc_menu.prototype.open = function(t, e, n, i, s, o, c) { | |
this.t_uuid = n, | |
this.t_username = i, | |
this.t_modlvl = s, | |
this.t_online = o, | |
this.t_blocked = c, | |
this.h_title.innerHTML = this.t_username, | |
this.t_username === this.ws.username ? this.buildself() : this.t_online ? this.ws.isguest ? this.buildother_g() : this.buildother() : this.buildleft(), | |
this.elem.style.display = "block", | |
"mobile" !== this.ws.mode && (this.elem.style.left = t + "px", | |
this.elem.style.top = e + "px", | |
this.elem.getBoundingClientRect().left + this.elem.clientWidth + 10 >= window.innerWidth && (this.elem.style.left = t - this.elem.clientWidth + "px"), | |
this.elem.getBoundingClientRect().top + this.elem.clientHeight + 10 >= window.innerHeight && (this.elem.style.top = e - this.elem.clientHeight + "px"), | |
this.showtimeout = setTimeout(this.close.bind(this), 2e4)) | |
} | |
, | |
fc_menu.prototype.buildself = function() { | |
var t = this.lo.gcbu(this.t_username); | |
this.btn_stopcam.style.display = "none", | |
this.btn_pausecam.style.display = "none", | |
this.btn_mutecam.style.display = "none", | |
null !== t && t.canstop() && (this.btn_stopcam.style.display = "block"), | |
this.btn_pm.style.display = "block", | |
this.btn_profile.style.display = "block", | |
this.btn_block.style.display = "none", | |
this.btn_unblock.style.display = "none", | |
this.btn_mod.style.display = "none", | |
this.btn_unmod.style.display = "none", | |
this.btn_kick.style.display = "block", | |
this.btn_ban48.style.display = "block", | |
this.btn_banperma.style.display = "none", | |
this.btn_purge.style.display = "none", | |
this.btn_siteban.style.display = "none" | |
} | |
, | |
fc_menu.prototype.buildleft = function() { | |
this.btn_stopcam.style.display = "none", | |
this.btn_pausecam.style.display = "none", | |
this.btn_mutecam.style.display = "none", | |
this.btn_pm.style.display = "none", | |
this.btn_block.style.display = "none", | |
this.btn_unblock.style.display = "none", | |
this.btn_purge.style.display = "none", | |
this.btn_siteban.style.display = "none", | |
this.btn_kick.style.display = "none", | |
this.btn_profile.style.display = "block", | |
this.t_blocked ? (this.btn_block.style.display = "none", | |
this.btn_unblock.style.display = "block") : (this.btn_block.style.display = "block", | |
this.btn_unblock.style.display = "none"), | |
150 <= this.ws.modlvl && this.t_modlvl < 100 ? this.btn_mod.style.display = "block" : this.btn_mod.style.display = "none", | |
150 <= this.ws.modlvl && 100 === this.t_modlvl ? this.btn_unmod.style.display = "block" : this.btn_unmod.style.display = "none", | |
100 <= this.ws.modlvl && this.t_modlvl < this.ws.modlvl ? this.btn_kick.style.display = "block" : this.btn_kick.style.display = "none", | |
150 <= this.ws.modlvl && this.t_modlvl < this.ws.modlvl ? (this.btn_ban48.style.display = "block", | |
this.btn_banperma.style.display = "block") : (this.btn_ban48.style.display = "none", | |
this.btn_banperma.style.display = "none"), | |
150 <= this.ws.modlvl && this.t_modlvl < this.ws.modlvl ? this.btn_purge.style.display = "block" : this.btn_purge.style.display = "none", | |
300 <= this.ws.modlvl && this.t_modlvl < this.ws.modlvl ? this.btn_siteban.style.display = "block" : this.btn_siteban.style.display = "none" | |
} | |
, | |
fc_menu.prototype.buildother = function() { | |
var t = this.ws.modlvl | |
, e = this.t_modlvl | |
, n = (this.ws.isguest, | |
this.lo.gcbu(this.t_username)); | |
this.btn_stopcam.style.display = "none", | |
this.btn_pausecam.style.display = "none", | |
this.btn_mutecam.style.display = "none", | |
null !== n && (n.canstop() && (this.btn_stopcam.style.display = "block"), | |
n.paused ? this.btn_pausecam.innerText = "play cam" : this.btn_pausecam.innerText = "pause cam", | |
this.btn_pausecam.style.display = "block", | |
n.video.muted ? this.btn_mutecam.innerText = "unmute cam" : this.btn_mutecam.innerText = "mute cam", | |
this.btn_mutecam.style.display = "block"), | |
this.btn_pm.style.display = "block", | |
this.btn_profile.style.display = "block", | |
this.t_blocked ? (this.btn_block.style.display = "none", | |
this.btn_unblock.style.display = "block") : (this.btn_block.style.display = "block", | |
this.btn_unblock.style.display = "none"), | |
this.btn_mod.style.display = 150 <= t && e < 100 ? "block" : "none", | |
this.btn_unmod.style.display = 150 <= t && 100 === e ? "block" : "none", | |
100 <= t && e < this.ws.modlvl ? this.btn_kick.style.display = "block" : this.btn_kick.style.display = "none", | |
150 <= t && e < t ? (this.btn_ban48.style.display = "block", | |
this.btn_banperma.style.display = "block") : (this.btn_ban48.style.display = "none", | |
this.btn_banperma.style.display = "none"), | |
this.btn_purge.style.display = 150 <= t && e < t ? "block" : "none", | |
this.btn_siteban.style.display = 300 <= t && e < t ? "block" : "none" | |
} | |
, | |
fc_menu.prototype.buildother_g = function() { | |
this.ws.modlvl, | |
this.t_modlvl; | |
var t = this.lo.gcbu(this.t_username); | |
this.btn_stopcam.style.display = "none", | |
this.btn_pausecam.style.display = "none", | |
this.btn_mutecam.style.display = "none", | |
null !== t && (t.you || (t.paused ? this.btn_pausecam.innerText = "play cam" : this.btn_pausecam.innerText = "pause cam", | |
this.btn_pausecam.style.display = "block"), | |
t.you || (t.video.muted ? this.btn_mutecam.innerText = "unmute cam" : this.btn_mutecam.innerText = "mute cam", | |
this.btn_mutecam.style.display = "block")), | |
this.btn_pm.style.display = "none", | |
this.btn_profile.style.display = "block", | |
this.btn_block.style.display = "none", | |
this.btn_unblock.style.display = "none", | |
this.btn_mod.style.display = "none", | |
this.btn_unmod.style.display = "none", | |
this.btn_kick.style.display = "none", | |
this.btn_ban48.style.display = "none", | |
this.btn_banperma.style.display = "none", | |
this.btn_purge.style.display = "none", | |
this.btn_siteban.style.display = "none" | |
} | |
, | |
fc_menu.prototype.btnclick = function(t) { | |
switch (t.target.dataset.btntype) { | |
case "stopcam": | |
null !== (e = this.lo.gcbu(this.t_username)) && e.click_stopcam(t); | |
break; | |
case "pausecam": | |
null !== (e = this.lo.gcbu(this.t_username)) && (e.paused ? e.click_unpausecam(t) : e.click_pausecam(t)); | |
break; | |
case "mutecam": | |
null !== (e = this.lo.gcbu(this.t_username)) && e.click_mute(t); | |
break; | |
case "pm": | |
var e = this.pmctrl.getpm(this.t_uuid); | |
e.open(), | |
e.focuswnd(); | |
break; | |
case "profile": | |
window.open("/profiles/?uuid=" + this.t_uuid); | |
break; | |
case "block": | |
this.ws.sendpbuf(1200341, this.pb.roots.default.fc.p_1200341.encode({ | |
uuid: this.t_uuid | |
}, null).finish()); | |
break; | |
case "unblock": | |
this.ws.sendpbuf(1200343, this.pb.roots.default.fc.p_1200343.encode({ | |
uuid: this.t_uuid | |
}, null).finish()); | |
break; | |
case "mod": | |
this.ws.sendpbuf(1200811, this.pb.roots.default.fc.p_1200811.encode({ | |
uuid: this.t_uuid | |
}, null).finish()); | |
break; | |
case "unmod": | |
this.ws.sendpbuf(1200815, this.pb.roots.default.fc.p_1200815.encode({ | |
uuid: this.t_uuid | |
}, null).finish()); | |
break; | |
case "kick": | |
this.ws.sendpbuf(1200831, this.pb.roots.default.fc.p_1200831.encode({ | |
uuid: this.t_uuid | |
}, null).finish()); | |
break; | |
case "ban48": | |
this.ws.sendpbuf(1200841, this.pb.roots.default.fc.p_1200841.encode({ | |
uuid: this.t_uuid, | |
prm: !1 | |
}, null).finish()); | |
break; | |
case "banperma": | |
this.ws.sendpbuf(1200841, this.pb.roots.default.fc.p_1200841.encode({ | |
uuid: this.t_uuid, | |
prm: !0 | |
}, null).finish()); | |
break; | |
case "purge": | |
this.ws.sendpbuf(1200851, this.pb.roots.default.fc.p_1200851.encode({ | |
uuid: this.t_uuid | |
}, null).finish()); | |
break; | |
case "siteban": | |
this.ws.sendpbuf(1200881, this.pb.roots.default.fc.p_1200881.encode({ | |
uuid: this.t_uuid | |
}, null).finish()) | |
} | |
this.close() | |
} | |
, | |
fc_msglimit.prototype.updateml = function(t) { | |
switch (t) { | |
case 0: | |
this.max_strikes = 4, | |
this.max_msg_length = 300; | |
break; | |
case 100: | |
this.max_strikes = 6, | |
this.max_msg_length = 500; | |
break; | |
case 150: | |
this.max_strikes = 8, | |
this.max_msg_length = 700; | |
break; | |
case 200: | |
this.max_strikes = 10, | |
this.max_msg_length = 900; | |
break; | |
case 300: | |
this.max_strikes = 12, | |
this.max_msg_length = 1200 | |
} | |
} | |
, | |
fc_msglimit.prototype.cansend = function(t, e) { | |
var n = 0 | |
, i = (new Date).getTime(); | |
if (i < this.prev_msg_time + this.msg_interval && (1 < e ? n += e : n++), | |
(t.length > this.max_msg_length || 0 === t.length) && (n += this.max_strikes), | |
0 < n ? this.cur_strikes += n : this.cur_strikes = 0, | |
this.enforced) { | |
if (i < this.prev_msg_time + this.cooloff_time) | |
return this.prev_msg_time = i, | |
!1 | |
} else if (this.cur_strikes >= this.max_strikes) | |
return this.prev_msg_time = i, | |
!(this.enforced = !0); | |
return this.msg_count++, | |
this.enforced = !1, | |
this.prev_msg = t, | |
this.prev_msg_time = i, | |
!0 | |
} | |
, | |
fc_msk.prototype.clear = function() { | |
for (null !== this.interval && (clearInterval(this.interval), | |
this.interval = null); this.elem.firstChild; ) | |
this.elem.removeChild(this.elem.firstChild); | |
this.h1_status = null, | |
this.p_info = null, | |
this.p_countdown = null, | |
this.span_countdown = null, | |
this.text_password = null, | |
this.button = null | |
} | |
, | |
fc_msk.prototype.showcs = function(t, e) { | |
1 !== this.mode && (this.mode = 1, | |
this.clear(), | |
this.h1_status = document.createElement("h1"), | |
this.elem.appendChild(this.h1_status), | |
this.p_info = document.createElement("p"), | |
this.elem.appendChild(this.p_info)), | |
this.h1_status.innerText = t, | |
this.p_info.innerText = e | |
} | |
, | |
fc_msk.prototype.showps = function() { | |
2 !== this.mode && (this.mode = 2, | |
this.clear(), | |
this.h1_status = document.createElement("h1"), | |
this.h1_status.innerHTML = "Enter Password", | |
this.elem.appendChild(this.h1_status), | |
this.p_info = document.createElement("p"), | |
this.p_info.innerHTML = "This room requires a password to join, you will need to get this from the room owner.", | |
this.elem.appendChild(this.p_info), | |
this.text_password = document.createElement("input"), | |
this.text_password.setAttribute("type", "password"), | |
this.text_password.maxLength = 16, | |
this.text_password.onkeyup = this.pw_keyup.bind(this), | |
this.elem.appendChild(this.text_password), | |
this.button = document.createElement("button"), | |
this.button.innerHTML = "Enter", | |
this.button.onclick = this.pw_click.bind(this), | |
this.elem.appendChild(this.button)), | |
this.text_password.value = "", | |
this.text_password.focus() | |
} | |
, | |
fc_msk.prototype.pw_keyup = function(t) { | |
13 === t.keyCode && this.connectpw(this.text_password.value) | |
} | |
, | |
fc_msk.prototype.pw_click = function(t) { | |
this.connectpw(this.text_password.value) | |
} | |
, | |
fc_msk.prototype.connectpw = function(t) { | |
0 < t.length && (this.showcs("Connecting"), | |
this.ws.roompass = t, | |
this.ws.start()) | |
} | |
, | |
fc_msk.prototype.showjo = function() { | |
3 !== this.mode && (this.mode = 3, | |
this.clear(), | |
this.h1_status = document.createElement("h1"), | |
this.h1_status.innerHTML = "Already in room", | |
this.elem.appendChild(this.h1_status), | |
this.p_info = document.createElement("p"), | |
this.p_info.innerHTML = "You are already connected to this room, do you want to disconnect the other session and let this tab take over?", | |
this.elem.appendChild(this.p_info), | |
this.button = document.createElement("button"), | |
this.button.innerHTML = "OK ReJoin", | |
this.button.onclick = this.jobtn_click.bind(this), | |
this.elem.appendChild(this.button)) | |
} | |
, | |
fc_msk.prototype.jobtn_click = function(t) { | |
this.showcs("Connecting"), | |
this.ws.joinover = !0, | |
this.ws.start() | |
} | |
, | |
fc_msk.prototype.showws = function(t, e) { | |
4 !== this.mode && (this.mode = 4, | |
this.clear(), | |
this.h1_status = document.createElement("h1"), | |
this.elem.appendChild(this.h1_status), | |
this.p_info = document.createElement("p"), | |
this.elem.appendChild(this.p_info), | |
this.p_countdown = document.createElement("p"), | |
this.elem.appendChild(this.p_countdown)), | |
this.h1_status.innerHTML = "Waiting before reconnect", | |
this.p_info.innerHTML = e, | |
this.deadline = Date.now() + (t + 200), | |
this.interval = setInterval(this.waitcd.bind(this), 97) | |
} | |
, | |
fc_msk.prototype.waitcd = function() { | |
0 < this.deadline - Date.now() ? this.p_countdown.innerHTML = "Rejoin in " + this.ws.mstohr(this.deadline - Date.now()) : (clearInterval(this.interval), | |
this.showcs("Rejoining Room", ""), | |
this.ws.start()) | |
} | |
, | |
fc_msk.prototype.showks = function(t, e, n, i) { | |
5 !== this.mode && (this.mode = 5, | |
this.clear(), | |
this.h1_status = document.createElement("h1"), | |
this.h1_status.innerHTML = "Kicked", | |
this.elem.appendChild(this.h1_status), | |
this.p_info = document.createElement("p"), | |
this.elem.appendChild(this.p_info)); | |
t = "You were kicked from the room by <strong>" + t + "</strong> for " + this.ws.stohr(n); | |
t += "<br><span id='kickcountdown'></span>", | |
0 < e.length && (t += "<br><br><i>" + e + "</i>"), | |
this.p_info.innerHTML = t, | |
this.span_countdown = document.getElementById("kickcountdown"), | |
this.deadline = Date.now() + 1e3 * i + 250, | |
this.kickcd(), | |
this.interval = setInterval(this.kickcd.bind(this), 100) | |
} | |
, | |
fc_msk.prototype.kickcd = function() { | |
0 < this.deadline - Date.now() ? this.span_countdown.innerHTML = "This kick expires in <strong>" + this.ws.mstohr(this.deadline - Date.now()) + "</strong>" : (clearInterval(this.interval), | |
this.span_countdown.innerHTML = "<strong>Kick has expired</strong>", | |
this.button = document.createElement("button"), | |
this.button.innerHTML = "Rejoin Room", | |
this.button.onclick = this.kick_click.bind(this), | |
this.elem.appendChild(this.button)) | |
} | |
, | |
fc_msk.prototype.kick_click = function(t) { | |
this.showcs("Rejoining Room", ""), | |
this.ws.start() | |
} | |
, | |
fc_msk.prototype.showbs = function(t, e, n, i, s) { | |
6 !== this.mode && (this.mode = 6, | |
this.clear(), | |
this.h1_status = document.createElement("h1"), | |
this.elem.appendChild(this.h1_status), | |
this.p_info = document.createElement("p"), | |
this.elem.appendChild(this.p_info)); | |
t = "<strong>" + t + "</strong> is banned from this room<br/>"; | |
i || (t += "<span id='bancountdown'>This ban expires in <strong>" + this.ws.stohr(n) + "</strong></span>", | |
this.deadline = Date.now() + 1e3 * n + 1e3, | |
this.interval = setInterval(this.bancd.bind(this), 100)), | |
0 < s.length && (t += "</br><br/><i>" + s + "</i>"), | |
this.h1_status.innerHTML = "Banned", | |
this.p_info.innerHTML = t, | |
this.span_countdown = document.getElementById("bancountdown") | |
} | |
, | |
fc_msk.prototype.bancd = function() { | |
0 < this.deadline - Date.now() ? this.span_countdown.innerHTML = "This ban expires in <strong>" + this.ws.mstohr(this.deadline - Date.now()) + "</strong>" : (clearInterval(this.interval), | |
this.span_countdown.innerHTML = "<strong>Ban expired, please refresh to continue</strong>") | |
} | |
, | |
fc_msk.prototype.showds = function() { | |
7 !== this.mode && (this.mode = 7, | |
this.clear(), | |
this.h1_status = document.createElement("h1"), | |
this.elem.appendChild(this.h1_status), | |
this.p_info = document.createElement("p"), | |
this.elem.appendChild(this.p_info)), | |
this.h1_status.innerHTML = "Room Deleted", | |
this.p_info.innerHTML = "This room has been deleted" | |
} | |
, | |
fc_recon.prototype.mkcountdown = function() { | |
var t = Math.floor(Math.random() * (this.recon_stepmax - this.recon_min)) + this.recon_min; | |
return this.recon_stepmax < this.recon_max && (this.recon_stepmax += 1e3), | |
t | |
} | |
, | |
fc_recon.prototype.mkcountdown_extra = function() { | |
return Math.floor(2e4 * Math.random()) + 5e3 | |
} | |
, | |
fc_recon.prototype.start = function(t) { | |
this.last_reconstart < (new Date).getTime() - 3e5 && (this.recon_stepmax = 1e3), | |
this.last_reconstart = (new Date).getTime(), | |
void 0 === t ? this.startrecon(this.mkcountdown()) : this.startrecon(t) | |
} | |
, | |
fc_recon.prototype.startrecon = function(t) { | |
this.ws.t2exp.getTime() < (new Date).getTime() && !this.waiting_t2 && this.reqt2(), | |
this.recnt_prx >= this.max_recnt_prx && this.reqprx(), | |
0 !== this.recon_timeout && (clearTimeout(this.recon_timeout), | |
this.recon_timeout = 0), | |
0 !== this.countdown_timer && (clearInterval(this.countdown_timer), | |
this.countdown_timer = 0), | |
this.countdown_target = Date.now() + t, | |
this.recon_timeout = setTimeout(this.recontick.bind(this), t), | |
this.countdown_timer = setInterval(this.countdowntick.bind(this), 1e3), | |
this.countdowntick() | |
} | |
, | |
fc_recon.prototype.done = function() { | |
this.cb.setrecon_done(), | |
0 !== this.recon_timeout && (clearTimeout(this.recon_timeout), | |
this.recon_timeout = 0), | |
0 !== this.countdown_timer && (clearInterval(this.countdown_timer), | |
this.countdown_timer = 0), | |
this.waiting_prx = !1, | |
this.waiting_t2 = !1 | |
} | |
, | |
fc_recon.prototype.failed = function(t) { | |
0 !== this.recon_timeout && (clearTimeout(this.recon_timeout), | |
this.recon_timeout = 0), | |
0 !== this.countdown_timer && (clearInterval(this.countdown_timer), | |
this.countdown_timer = 0), | |
this.setmsg("failed to reconnect"), | |
this.cb.addsys(t) | |
} | |
, | |
fc_recon.prototype.setmsg = function(t) { | |
null !== this.cb ? this.cb.setrecon(t) : this.msk.showcs("Connecting", "Retrying connection (" + t + ")") | |
} | |
, | |
fc_recon.prototype.reqprx = function() { | |
this.setmsg("route change"), | |
this.waiting_prx = !0, | |
this.reqprx_cb(this.prxcb.bind(this)) | |
} | |
, | |
fc_recon.prototype.prxcb = function(t, e) { | |
200 === e ? t.hasOwnProperty("error") ? (this.setmsg("failed to reconnect"), | |
this.failed("Session error, please refresh the page to continue. (" + t.error + ")")) : (this.setmsg("changed route"), | |
this.waiting_prx = !1, | |
this.ws.addr = t.addr, | |
this.recnt_prx = 0) : this.setmsg("route change failed") | |
} | |
, | |
fc_recon.prototype.reqt2 = function() { | |
this.setmsg("refreshing token"), | |
this.waiting_t2 = !0, | |
this.t2src_cb(this.t2cb.bind(this)) | |
} | |
, | |
fc_recon.prototype.t2cb = function(t, e) { | |
200 === e ? t.hasOwnProperty("error") ? (this.setmsg("failed to reconnect"), | |
this.failed("Session error, please refresh the page to continue. (" + t.error + ")")) : (this.setmsg("token refreshed"), | |
this.waiting_t2 = !1, | |
this.ws.t2 = t.t2, | |
this.ws.t2exp = new Date(t.exp)) : this.setmsg("token refresh failed") | |
} | |
, | |
fc_recon.prototype.recontick = function() { | |
this.waiting_t2 || this.ws.t2exp.getTime() < (new Date).getTime() ? (this.start(this.mkcountdown_extra()), | |
this.reqt2()) : this.waiting_prx || 0 === this.ws.addr.length ? (this.start(this.mkcountdown_extra()), | |
this.reqprx()) : (this.setmsg("connecting"), | |
this.recnt_prx++, | |
this.ws.start()) | |
} | |
, | |
fc_recon.prototype.countdowntick = function() { | |
this.waiting_prx; | |
var t = this.countdown_target - Date.now(); | |
500 < t && this.setmsg("in " + this.ws.mstohr(t)) | |
} | |
, | |
fc_rtcpull.prototype.selfdestruct = function() { | |
this.finish || (this.finish = !0, | |
this.ws = null, | |
this.pb = null, | |
this.cam = null, | |
this.vstream = null, | |
this.astream = null, | |
this.icestack = [], | |
null !== this.rtcpeer && (this.rtcpeer.close(), | |
this.rtcpeer.onicecandidate = null, | |
this.rtcpeer.onicegatheringstatechange = null, | |
this.rtcpeer.oniceconnectionstatechange = null, | |
this.rtcpeer.ontrack = null, | |
this.rtcpeer = null), | |
0 !== this.stat_interval && (clearInterval(this.stat_interval), | |
this.stat_interval = 0), | |
this.dcintrv_stop()) | |
} | |
, | |
fc_rtcpull.prototype.statstart = function() { | |
this.stat_vis = !0, | |
this.stat_viscount = 0 | |
} | |
, | |
fc_rtcpull.prototype.statstop = function() { | |
this.stat_vis = !1, | |
this.stat_viscount = 0 | |
} | |
, | |
fc_rtcpull.prototype.stattick = function() { | |
var o; | |
null === this.rtcpeer ? (clearInterval(this.stat_interval), | |
this.stat_interval = 0) : "connected" === this.rtcpeer.iceConnectionState && (this.stat_vis || !this.stat_vis && this.stat_viscount < 120) ? (o = this).rtcpeer.getStats(null).then(function(s) { | |
s.forEach(function(t) { | |
var e, n, i; | |
"inbound-rtp" === t.type && "audio" === t.mediaType && 0 === o.acodec.length && (t.hasOwnProperty("codecId") ? o.acodec = o.getcodec(s, t.codecId) : o.acodec = "unsupported by browser"), | |
"inbound-rtp" === t.type && "video" === t.mediaType && (i = "", | |
(n = e = 0) === o.vcodec.length && (t.hasOwnProperty("codecId") ? o.vcodec = o.getcodec(s, t.codecId) : o.vcodec = "unsupported by browser"), | |
t.hasOwnProperty("framesReceived") ? (i = 0 !== (e = t.framesReceived - o.frame_prev) && 0 !== o.frame_prev ? e + " fps<br>" : "- fps<br>", | |
o.frame_prev = t.framesReceived) : t.hasOwnProperty("framerateMean") && (i = 0 !== (e = t.framesReceived - o.frame_prev) ? Math.round(t.framerateMean) + " fps<br>" : "- fps<br>"), | |
t.hasOwnProperty("bytesReceived") && (0 !== (n = (t.bytesReceived - o.byte_prev) / 1024) && 0 !== o.byte_prev ? i += n.toFixed(2) + " KiB/s" : i += "-.-- KiB/s", | |
o.byte_prev = t.bytesReceived), | |
o.cam.statp.innerHTML = i, | |
o.stat_vis || o.stat_viscount++) | |
}) | |
}) : (this.byte_prev = 0, | |
this.frame_prev = 0) | |
} | |
, | |
fc_rtcpull.prototype.getcodec = function(t, e) { | |
var n = "unknown"; | |
return t.forEach(function(t) { | |
"codec" === t.type && t.hasOwnProperty("id") && t.hasOwnProperty("mimeType") && t.id === e && (n = t.hasOwnProperty("channels") ? t.mimeType + " " + t.channels + "ch" : t.mimeType) | |
}), | |
n | |
} | |
, | |
fc_rtcpull.prototype.statresults = function(t) {} | |
, | |
fc_rtcpull.prototype.offer = function(t, e) { | |
if (this.dcintrv_stop(), | |
this.d_offer = !1, | |
this.d_ice = !1, | |
this.failed = !1, | |
this.cndcount = 0, | |
this.rscount++, | |
!this.d_offer) { | |
this.d_offer = !0; | |
var n = this; | |
this.tid = t; | |
try { | |
null !== this.rtcpeer && (this.rtcpeer.close(), | |
this.rtcpeer.onicecandidate = null, | |
this.rtcpeer.onicegatheringstatechange = null, | |
this.rtcpeer.oniceconnectionstatechange = null, | |
this.rtcpeer.ontrack = null, | |
this.rtcpeer = null), | |
this.rtcpeer = new RTCPeerConnection(this.cam.iser), | |
this.stat_interval = setInterval(this.stattick.bind(this), 1e3), | |
this.rtcpeer.onicecandidate = this.onicecandidate.bind(this), | |
this.rtcpeer.onicegatheringstatechange = this.onicegatheringstatechange.bind(this), | |
this.rtcpeer.oniceconnectionstatechange = this.oniceconnectionstatechange.bind(this), | |
this.rtcpeer.ontrack = this.gotremotestream.bind(this); | |
var i = new RTCSessionDescription({ | |
type: "offer", | |
sdp: e | |
}); | |
if (this.rtcpeer.setRemoteDescription(i).then(function() { | |
n.onsetremotesuccess() | |
}, function() { | |
n.onsetremoteerror() | |
}), | |
0 < this.icestack.length) { | |
for (var s = 0; s < this.icestack.length; s++) | |
this.ice(this.icestack[s]); | |
this.icestack = [] | |
} | |
this.rtcpeer.createAnswer({ | |
offerToReceiveAudio: 1, | |
offerToReceiveVideo: 1 | |
}).then(function(t) { | |
n.oncreateanswersuccess(t) | |
}, function(t) { | |
n.oncreateanswererror(t) | |
}) | |
} catch (t) {} | |
} | |
} | |
, | |
fc_rtcpull.prototype.gotremotestream = function(t) { | |
if ("video" === t.receiver.track.kind) | |
try { | |
this.vstream = t.streams[0], | |
this.cam.video.srcObject = this.vstream, | |
this.playremotevideo() | |
} catch (t) {} | |
else | |
"audio" === t.receiver.track.kind && 0 !== t.streams.length && this.cam.setpull_vabstream(t.streams[0]) | |
} | |
, | |
fc_rtcpull.prototype.playremotevideo = function() { | |
let e = this | |
, t = this.cam.video.play(); | |
this.playtimeout = setTimeout(function() { | |
e.playremotevideo() | |
}, 1e4), | |
void 0 !== t && t.then(function() { | |
clearTimeout(e.playtimeout) | |
}).catch(function(t) { | |
clearTimeout(e.playtimeout), | |
"NotAllowedError" === t.name && null !== e.cam && e.cam.click_pausecam() | |
}) | |
} | |
, | |
fc_rtcpull.prototype.onsetremotesuccess = function(t) {} | |
, | |
fc_rtcpull.prototype.onsetremoteerror = function() {} | |
, | |
fc_rtcpull.prototype.oncreateanswersuccess = function(t) { | |
var e = this; | |
this.rtcpeer.setLocalDescription(t).then(function() { | |
e.onsetlocalsuccess(t.sdp) | |
}, function(t) { | |
e.onsetlocalerror(t) | |
}), | |
this.srd_done = !0 | |
} | |
, | |
fc_rtcpull.prototype.oncreateanswererror = function(t) {} | |
, | |
fc_rtcpull.prototype.onsetlocalsuccess = function(t) { | |
this.ws.sendpbuf(1200735, this.pb.roots.default.fc.p_1200735.encode({ | |
sdp: { | |
cn: this.cam.camno, | |
ti: this.tid, | |
dsc: t | |
} | |
}, null).finish()) | |
} | |
, | |
fc_rtcpull.prototype.onsetlocalerror = function(t) {} | |
, | |
fc_rtcpull.prototype.ice = function(t) { | |
null === this.rtcpeer ? this.icestack.push(t) : (t = new RTCIceCandidate(JSON.parse(t)), | |
this.rtcpeer.addIceCandidate(t).then(function() {}).catch(function(t) {})) | |
} | |
, | |
fc_rtcpull.prototype.onicecandidate = function(t) { | |
var e; | |
null !== this.rtcpeer && (null === t.candidate ? 0 === this.cndcount && (this.rp_rtcerr(2), | |
this.dcintrv_start()) : -1 === (e = t.candidate.candidate).indexOf("typ host") && -1 === e.indexOf("srflx") && 0 < e.length && (this.cndcount++, | |
this.ws.sendpbuf(1200747, this.pb.roots.default.fc.p_1200747.encode({ | |
cn: this.cam.camno, | |
ti: this.tid, | |
cnd: JSON.stringify(t.candidate) | |
}, null).finish()))) | |
} | |
, | |
fc_rtcpull.prototype.onicegatheringstatechange = function(t) { | |
null !== this.rtcpeer && "complete" === this.rtcpeer.iceGatheringState && "connected" !== this.rtcpeer.iceConnectionState && (this.dcintrv_start(), | |
this.stagcount = 4) | |
} | |
, | |
fc_rtcpull.prototype.oniceconnectionstatechange = function(t) { | |
null !== this.rtcpeer && (this.stagcount = 0, | |
"failed" === this.rtcpeer.iceConnectionState ? (this.failed = !0, | |
this.cam.loading.show(), | |
this.rp_rtcerr(4), | |
this.dcintrv_start()) : "disconnected" === this.rtcpeer.iceConnectionState ? (setTimeout(this.loadshowtimeout.bind(this), 3e3), | |
this.rp_rtcerr(6), | |
this.dcintrv_start()) : "connected" === this.rtcpeer.iceConnectionState && this.cam.loading.hide()) | |
} | |
, | |
fc_rtcpull.prototype.loadshowtimeout = function() { | |
"disconnected" === this.rtcpeer.iceConnectionState && this.cam.loading.show() | |
} | |
, | |
fc_rtcpull.prototype.dcintrv_start = function() { | |
this.dcintrv_stop(); | |
var t = Math.floor(7001 * Math.random()) + 5e3; | |
this.dc_interval = setInterval(this.dcintrv_check.bind(this), t) | |
} | |
, | |
fc_rtcpull.prototype.dcintrv_stop = function() { | |
0 !== this.dc_interval && (clearInterval(this.dc_interval), | |
this.dc_interval = 0) | |
} | |
, | |
fc_rtcpull.prototype.dcintrv_check = function() { | |
"disconnected" === this.rtcpeer.iceConnectionState || "failed" === this.rtcpeer.iceConnectionState ? this.reqrst() : "connected" === this.rtcpeer.iceConnectionState ? this.dcintrv_stop() : "new" === this.rtcpeer.iceConnectionState && (3 < this.stagcount ? (this.stagcount = 0, | |
this.rp_rtcerr(7), | |
this.reqrst()) : this.stagcount++) | |
} | |
, | |
fc_rtcpull.prototype.rp_rtcerr = function(t) { | |
this.ws.sendpbuf(1200799, this.pb.roots.default.fc.p_1200799.encode({ | |
cn: this.cam.camno, | |
ti: this.tid, | |
er: t | |
}, null).finish()) | |
} | |
, | |
fc_rtcpull.prototype.reqrst = function() { | |
4 < this.rscount ? this.cam.click_pausecam() : this.ws.sendpbuf(1200797, this.pb.roots.default.fc.p_1200797.encode({ | |
cn: this.cam.camno, | |
ti: this.tid | |
}, null).finish()) | |
} | |
, | |
fc_rtcpush.prototype.selfdestruct = function() { | |
this.finish || (this.finish = !0, | |
this.ws = null, | |
this.pb = null, | |
(this.local_stream = null) !== this.offersonhold && (this.offersonhold = null), | |
null !== this.rtcpeer && (this.rtcpeer.close(), | |
this.rtcpeer.onicecandidate = null, | |
this.rtcpeer.oniceconnectionstatechange = null, | |
this.rtcpeer = null)) | |
} | |
, | |
fc_rtcpush.prototype.offerreq = function() { | |
this.d_offer = !1, | |
this.d_answer = !1, | |
this.d_ice = !1, | |
this.failed = !1, | |
this.cndcount = 0; | |
var e = this; | |
this.d_offer || this.d_answer || (this.d_offer = !0, | |
this.rtcpeer = new RTCPeerConnection(this.cam.iser), | |
this.rtcpeer.onicecandidate = this.onicecandidate.bind(this), | |
this.rtcpeer.onicegatheringstatechange = this.onicegatheringstatechange.bind(this), | |
this.rtcpeer.oniceconnectionstatechange = this.oniceconnectionstatechange.bind(this), | |
this.rtcpeer.addStream(this.local_stream), | |
this.rtcpeer.createOffer({ | |
offerToReceiveAudio: 1, | |
offerToReceiveVideo: 1 | |
}).then(function(t) { | |
e.oncreateoffersuccess(t) | |
}, function(t) { | |
e.oncreatesessiondescriptionerror(t) | |
})) | |
} | |
, | |
fc_rtcpush.prototype.oncreateoffersuccess = function(t) { | |
var e = this; | |
this.rtcpeer.setLocalDescription(t).then(function() { | |
e.onsetlocalsuccess(t.sdp) | |
}, function(t) { | |
e.oncreatesessiondescriptionerror(t) | |
}) | |
} | |
, | |
fc_rtcpush.prototype.onsetlocalsuccess = function(t) { | |
t = { | |
cn: this.cam.camno, | |
ti: this.tid, | |
dsc: t | |
}; | |
null === this.offersonhold ? this.ws.sendpbuf(1200723, this.pb.roots.default.fc.p_1200723.encode({ | |
sdp: t | |
}, null).finish()) : (this.offersonhold.push(t), | |
this.offersonhold = null) | |
} | |
, | |
fc_rtcpush.prototype.oncreatesessiondescriptionerror = function(t) {} | |
, | |
fc_rtcpush.prototype.answer = function(t) { | |
var e; | |
this.d_offer && !this.d_answer && (this.d_answer = !0, | |
e = this, | |
t = new RTCSessionDescription({ | |
type: "answer", | |
sdp: t | |
}), | |
this.rtcpeer.setRemoteDescription(t).then(function() { | |
e.onsetremotesuccess() | |
}, function(t) { | |
e.onsetsessiondescriptionerror(t) | |
})) | |
} | |
, | |
fc_rtcpush.prototype.onsetremotesuccess = function(t) { | |
this.srd_done = !0 | |
} | |
, | |
fc_rtcpush.prototype.onsetsessiondescriptionerror = function(t) {} | |
, | |
fc_rtcpush.prototype.ice = function(t) { | |
this.d_ice || (t = new RTCIceCandidate(JSON.parse(t)), | |
this.rtcpeer.addIceCandidate(t).then(function() {}).catch(function(t) {})) | |
} | |
, | |
fc_rtcpush.prototype.onicecandidate = function(t) { | |
null === t.candidate ? 0 === this.cndcount && this.rp_rtcerr(1) : -1 === t.candidate.candidate.indexOf("typ host") && -1 === t.candidate.candidate.indexOf("srflx") && 0 < t.candidate.candidate.length && (this.cndcount++, | |
this.ws.sendpbuf(1200747, this.pb.roots.default.fc.p_1200747.encode({ | |
cn: this.cam.camno, | |
ti: this.tid, | |
cnd: JSON.stringify(t.candidate) | |
}, null).finish())) | |
} | |
, | |
fc_rtcpush.prototype.onicegatheringstatechange = function(t) {} | |
, | |
fc_rtcpush.prototype.oniceconnectionstatechange = function(t) { | |
"failed" === this.rtcpeer.iceConnectionState ? (this.failed = !0, | |
this.rp_rtcerr(3)) : "disconnected" === this.rtcpeer.iceConnectionState ? this.rp_rtcerr(5) : this.rtcpeer.iceConnectionState | |
} | |
, | |
fc_rtcpush.prototype.rp_rtcerr = function(t) { | |
this.ws.sendpbuf(1200799, this.pb.roots.default.fc.p_1200799.encode({ | |
cn: this.cam.camno, | |
ti: this.tid, | |
er: t | |
}, null).finish()) | |
} | |
, | |
fc_status.prototype.enautoidle = function(t) { | |
t ? (this.autoidle_enable = !0, | |
null === this.idleinterval && (this.idleinterval = setInterval(this.tick.bind(this), 26e3), | |
this.lastact = Date.now(), | |
this.lastreturn = Date.now())) : (this.autoidle_enable = !1, | |
null !== this.idleinterval && clearInterval(this.idleinterval)) | |
} | |
, | |
fc_status.prototype.update = function(t, e) { | |
t === this.ws.username && (this.statuslevel = e.lv, | |
this.statustime = e.ct, | |
this.statusmsg = e.msg) | |
} | |
, | |
fc_status.prototype.act = function() { | |
this.ws.isguest || (this.lastact = Date.now(), | |
3 === this.statuslevel && 500 < Date.now() - this.lastreturn && (this.ws.sendpbuf(1200311, this.pb.roots.default.fc.p_1200311.encode({ | |
il: !1, | |
tm: this.tbi | |
}, null).finish()), | |
this.lastreturn = Date.now())) | |
} | |
, | |
fc_status.prototype.tick = function() { | |
this.ws.isguest || 1 === this.statuslevel && Date.now() - this.lastact > this.tbi && this.autoidle_enable && this.ws.sendpbuf(1200311, this.pb.roots.default.fc.p_1200311.encode({ | |
il: !0, | |
tm: this.tbi | |
}, null).finish()) | |
} | |
, | |
fc_switch.prototype.create = function(t, e) { | |
this.elem = document.createElement("div"), | |
this.elem.className = "cbwlbl", | |
this.elem.onclick = this.lblclick.bind(this); | |
var n = document.createElement("label") | |
, t = (n.className = "switch", | |
this.cb = document.createElement("input"), | |
this.cb.type = "checkbox", | |
this.cb.checked = t, | |
document.createElement("span")); | |
t.className = "slider", | |
n.appendChild(this.cb), | |
n.appendChild(t), | |
this.elem.appendChild(n), | |
this.ptext = document.createElement("p"), | |
this.ptext.innerHTML = e, | |
this.elem.appendChild(this.ptext) | |
} | |
, | |
fc_switch.prototype.lblclick = function(t) { | |
this.cb.checked = !this.cb.checked | |
} | |
, | |
fc_switch.prototype.addonclick = function(t) { | |
this.cb.addEventListener("click", t), | |
this.elem.addEventListener("click", t) | |
} | |
, | |
fc_switch.prototype.check = function(t) { | |
this.cb.checked = t | |
} | |
, | |
fc_switch.prototype.getstate = function() { | |
return this.cb.checked | |
} | |
, | |
fc_switch.prototype.ischecked = function() { | |
return this.cb.checked | |
} | |
, | |
fc_switch.prototype.checked = function() { | |
return this.cb.checked | |
} | |
, | |
fc_tip.prototype.show = function(t, e, n) { | |
this.config = n, | |
this.reqx = t, | |
this.reqy = e, | |
null !== this.hidetimeout ? (clearTimeout(this.hidetimeout), | |
this.hidetimeout = null, | |
this.display()) : this.showtimeout = setTimeout(this.display.bind(this), 750) | |
} | |
, | |
fc_tip.prototype.cancel = function() { | |
null !== this.showtimeout ? (clearTimeout(this.showtimeout), | |
this.showtimeout = null) : this.hidetimeout = setTimeout(this.undisplay.bind(this), 150) | |
} | |
, | |
fc_tip.prototype.display = function() { | |
switch (this.showtimeout = null, | |
this.config.buildtype) { | |
case "userinfo": | |
this.build_userinfo(this.config.user); | |
break; | |
case "camstats": | |
this.build_camstats(this.config.cs_name, this.config.cs_loc) | |
} | |
this.elem.style.left = this.reqx + "px", | |
this.elem.style.top = this.reqy + "px", | |
this.elem.getBoundingClientRect().left + this.elem.clientWidth + 10 >= window.innerWidth && (this.elem.style.left = this.reqx - this.elem.clientWidth + "px"), | |
this.elem.getBoundingClientRect().top + this.elem.clientHeight + 10 >= window.innerHeight && (this.elem.style.top = this.reqy - this.elem.clientHeight + "px") | |
} | |
, | |
fc_tip.prototype.undisplay = function() { | |
this.hidetimeout = null, | |
this.elem.style.opacity = 0 | |
} | |
, | |
fc_tip.prototype.build_userinfo = function(t) { | |
var e = Date.now() + this.ws.tmdelta | |
, n = "<b>" + t.username + "</b>"; | |
switch (t.modlvl) { | |
case 100: | |
n += " (<span class='" + t.getnccl() + "'>Mod</span>)<br/>"; | |
break; | |
case 150: | |
n += " (<span class='" + t.getnccl() + "'>Super</span>)<br/>"; | |
break; | |
case 200: | |
n += " (<span class='" + t.getnccl() + "'>Owner</span>)<br/>"; | |
break; | |
case 300: | |
n += " (<span class='" + t.getnccl() + "'>Admin</span>)<br/>"; | |
break; | |
default: | |
n += "<br/>" | |
} | |
n += "Online for " + this.ws.mstohr(e - t.jointime), | |
2 === t.statuslevel ? (n += "<br/>AFK for " + this.ws.mstohr(e - t.statustime), | |
0 < t.statusmsg.length && (n += "<br/>" + t.statusmsg)) : 3 === t.statuslevel && (n += "<br/>Idle for " + this.ws.mstohr(e - t.statustime)), | |
0 < t.ping && (n += "<br/>Ping " + t.ping + "ms"), | |
this.p_message.innerHTML = n, | |
this.elem.style.opacity = 1 | |
} | |
, | |
fc_tip.prototype.build_camstats = function(t, e) { | |
this.p_message.innerHTML = "<b>" + t + "</b><br>" + e, | |
this.elem.style.opacity = 1 | |
} | |
, | |
fc_toolbox.prototype.mkguest = function() { | |
this.text_msg.disabled = !0, | |
this.text_msg.value = "You need to login to send messages, guest." | |
} | |
, | |
fc_toolbox.prototype.setfont = function(t, e) { | |
this.font_colour = t, | |
this.text_cp.jscolor.fromString(t), | |
this.text_msg.style.color = t, | |
this.pmctrl.updatefc(t), | |
this.font_size = e, | |
this.text_msg.className = "chatmsg fs_" + this.font_size, | |
this.sel_fs.selectedIndex = e, | |
this.pmctrl.updatefs(e) | |
} | |
, | |
fc_toolbox.prototype.refresh = function() { | |
this.text_msg.maxLength = this.msglimit.max_msg_length | |
} | |
, | |
fc_toolbox.prototype.toglyt = function() { | |
"mobile" !== this.ws.mode && this.ws.pol_allowyoutube ? this.btn_ytpl.style.display = "inline-block" : this.btn_ytpl.style.display = "none" | |
} | |
, | |
fc_toolbox.prototype.cp_change = function(t) { | |
var e = "#" + this.text_cp.value; | |
this.setfont(e, this.font_size), | |
this.ws.cnf.setandsave("fc", e) | |
} | |
, | |
fc_toolbox.prototype.fs_change = function(t) { | |
t = t.target.options[t.target.selectedIndex].value; | |
this.setfont(this.font_colour, t), | |
this.ws.cnf.setandsave("fs", parseInt(t)) | |
} | |
, | |
fc_toolbox.prototype.kmode_click = function(t) { | |
this.layout.setkmode(this.cb_kmode.ischecked()) | |
} | |
, | |
fc_toolbox.prototype.yt_click = function(t) { | |
this.yt_cb() | |
} | |
, | |
fc_toolbox.prototype.msg_keyup = function(t) { | |
13 === t.keyCode && this.sendmsg() | |
} | |
, | |
fc_toolbox.prototype.send_click = function(t) { | |
this.sendmsg() | |
} | |
, | |
fc_toolbox.prototype.sendmsg = function() { | |
"" !== this.text_msg.value && this.ws.ready && (this.ws.isguest ? this.text_msg.style.color = "#" + Math.floor(16777215 * Math.random()).toString(16) : this.msglimit.cansend(this.text_msg.value, this.font_size) ? !0 === this.ws.sendpbuf(1200511, this.pb.roots.default.fc.p_1200511.encode({ | |
cm: { | |
msg: this.text_msg.value, | |
clr: this.font_colour, | |
sz: this.font_size | |
} | |
}, null).finish()) && (this.text_msg.value = "") : this.cb.addsys("Please don't spam the chat!")) | |
} | |
, | |
fc_topic.prototype.topicbar_change = function(t) { | |
(100 < this.ws.modlvl || this.ws.pol_modchangetopic && 100 === this.ws.modlvl) && this.ws.sendpbuf(1200821, this.pb.roots.default.fc.p_1200821.encode({ | |
tpc: t.target.value | |
}, null).finish()) | |
} | |
, | |
fc_topic.prototype.set = function(t) { | |
this.cur_topic = t, | |
this.text_topic.value = t | |
} | |
, | |
fc_topic.prototype.refresh = function() { | |
var t = this.btn_userlist.offsetWidth; | |
this.ws.isguest ? this.btn_config.style.display = "none" : (this.btn_config.style.display = "inline-block", | |
t += this.btn_config.offsetWidth), | |
100 < this.ws.modlvl ? (this.btn_policy.style.display = "inline-block", | |
t += this.btn_policy.offsetWidth) : this.btn_policy.style.display = "none", | |
100 < this.ws.modlvl || this.ws.pol_modchangelayout && 100 === this.ws.modlvl ? (this.btn_layout.style.display = "inline-block", | |
t += this.btn_layout.offsetWidth) : this.btn_layout.style.display = "none", | |
100 < this.ws.modlvl || this.ws.pol_modchangetopic && 100 === this.ws.modlvl ? this.text_topic.readOnly = !1 : this.text_topic.readOnly = !0, | |
this.ws.pol_pwenforced ? this.btn_policy.innerHTML = "" : this.btn_policy.innerHTML = "", | |
this.text_topic.style.width = "calc(100% - " + t + "px)" | |
} | |
, | |
fc_topic.prototype.layout_click = function(t) { | |
this.wndlayout.open() | |
} | |
, | |
fc_topic.prototype.policy_click = function(t) { | |
this.wndpolicy.open() | |
} | |
, | |
fc_topic.prototype.config_click = function(t) { | |
this.wndconfig.open() | |
} | |
, | |
fc_ulist.prototype.updgsc = function(t) { | |
this.p_guestcount.innerText = t + " Guests" | |
} | |
, | |
fc_ulist.prototype.enguest = function() { | |
this.ws.pol_allowguest ? this.guest_elem.style.display = "block" : this.guest_elem.style.display = "none" | |
} | |
, | |
fc_ulist.prototype.populate = function(t) { | |
let e, n, i; | |
for (e = 0; e < t.length; e++) | |
this.joinuser(t[e], !1); | |
for (e = 0; e < this.users.length; e++) { | |
for (i = !1, | |
n = 0; n < t.length; n++) | |
if (this.users[e].uuid === t[n].uuid) { | |
i = !0; | |
break | |
} | |
i || this.leaveuser(this.users[e].uuid) | |
} | |
this.rebuild() | |
} | |
, | |
fc_ulist.prototype.resort = function() { | |
this.users.sort(this.sortcompare.bind(this)) | |
} | |
, | |
fc_ulist.prototype.sortcompare = function(t, e) { | |
return t.modlvl < e.modlvl ? 1 : t.modlvl > e.modlvl || t.username_lowercase < e.username_lowercase ? -1 : t.username_lowercase > e.username_lowercase ? 1 : 0 | |
} | |
, | |
fc_ulist.prototype.joinuser = function(e, t) { | |
try { | |
let t = this.gubuid(e.uuid); | |
null !== t || (null !== (t = this.gubuid_left(e.uuid)) ? delete this.lefties[e.uuid] : t = new fc_user(this.menu_cb,this.tipshow_cb,this.tipcancel_cb), | |
this.users.push(t)), | |
t.joined(e) | |
} catch (t) {} | |
t && this.rebuild() | |
} | |
, | |
fc_ulist.prototype.addleftskel = function(t, e, n, i) { | |
try { | |
var s = new fc_user(this.menu_cb,this.tipshow_cb,this.tipcancel_cb); | |
s.uuid = t, | |
s.username = e, | |
s.modlvl = n, | |
s.blocked = i, | |
this.lefties[t] = s | |
} catch (t) {} | |
} | |
, | |
fc_ulist.prototype.leaveuser = function(t) { | |
for (var e = 0; e < this.users.length; e++) | |
try { | |
var n = this.users[e]; | |
if (n.uuid === t) { | |
n.left(), | |
this.lefties[n.uuid] = n, | |
this.users.splice(e, 1); | |
break | |
} | |
} catch (t) {} | |
} | |
, | |
fc_ulist.prototype.clearlist = function() { | |
for (; this.elem.hasChildNodes(); ) | |
this.elem.removeChild(this.elem.lastChild) | |
} | |
, | |
fc_ulist.prototype.rebuild = function() { | |
this.resort(), | |
this.clearlist(), | |
this.elem.appendChild(this.guest_elem); | |
for (var t = 0; t < this.users.length; t++) | |
try { | |
this.elem.appendChild(this.users[t].list_elem) | |
} catch (t) {} | |
} | |
, | |
fc_ulist.prototype.gubn = function(e) { | |
try { | |
for (let t = 0; t < this.users.length; t++) | |
if (this.users[t].username === e) | |
return this.users[t] | |
} catch (t) {} | |
return null | |
} | |
, | |
fc_ulist.prototype.gubuid = function(e) { | |
try { | |
for (let t = 0; t < this.users.length; t++) | |
if (this.users[t].uuid === e) | |
return this.users[t] | |
} catch (t) {} | |
return null | |
} | |
, | |
fc_ulist.prototype.gubuid_left = function(t) { | |
try { | |
for (var e in this.lefties) | |
if (this.lefties[e].uuid === t) | |
return this.lefties[e] | |
} catch (t) {} | |
return null | |
} | |
, | |
fc_ulist.prototype.blockuser = function(t) { | |
let e = this.gubuid(t); | |
null !== (e = null === e ? this.gubuid_left(t) : e) && (e.block(), | |
this.rebuild()) | |
} | |
, | |
fc_ulist.prototype.unblockuser = function(t) { | |
let e = this.gubuid(t); | |
null !== (e = null === e ? this.gubuid_left(t) : e) && (e.unblock(), | |
this.rebuild()) | |
} | |
, | |
fc_ulist.prototype.moduser = function(t) { | |
let e = this.gubuid(t); | |
null !== (e = null === e ? this.gubuid_left(t) : e) && (e.mod(), | |
this.rebuild()) | |
} | |
, | |
fc_ulist.prototype.unmoduser = function(t) { | |
let e = this.gubuid(t); | |
null !== (e = null === e ? this.gubuid_left(t) : e) && (e.unmod(), | |
this.rebuild()) | |
} | |
, | |
fc_ulist.prototype.setstatus = function(t, e) { | |
t = this.gubn(t); | |
null !== t && (t.setstatus(e), | |
this.rebuild()) | |
} | |
, | |
fc_ulist.prototype.pingsync = function(t) { | |
let e, n, i = t.length; | |
for (e = 0; e < i; e++) | |
null !== (n = null === (n = this.gubuid(t[e].uuid)) ? this.gubuid_left(t[e].uuid) : n) && n.setping(t[e].ping) | |
} | |
, | |
fc_user.prototype.joined = function(t) { | |
this.online = !0, | |
this.username = t.nm, | |
this.username_lowercase = this.username.toLowerCase(), | |
this.uuid = t.uuid, | |
this.modlvl = t.ml, | |
this.usernum = t.un, | |
this.blocked = t.blk, | |
this.statuslevel = t.st.lv, | |
this.statustime = t.st.ct, | |
this.statusmsg = t.st.msg, | |
this.jointime = t.ct, | |
this.ping = t.ping, | |
null === this.list_elem && (this.list_elem = document.createElement("p"), | |
this.list_elem.className = "user available fcuser", | |
this.list_elem.value = this.username, | |
this.list_elem.setAttribute("data-uuid", this.uuid), | |
this.list_elem.onclick = this.menu_cb, | |
this.list_elem.onmouseover = this.tipshow_cb, | |
this.list_elem.onmouseout = this.tipcancel_cb), | |
null !== this.pmwnd && (this.pmwnd.do_online(!0), | |
this.pmwnd.setusername(this.username)), | |
this.setstatus(t.st), | |
this.updateelem() | |
} | |
, | |
fc_user.prototype.left = function() { | |
this.online = !1, | |
null !== this.list_elem && (this.list_elem.onclick = null, | |
this.list_elem.onmouseenter = null, | |
this.list_elem.onmouseout = null, | |
this.list_elem.remove(), | |
this.list_elem = null), | |
null !== this.pmwnd && this.pmwnd.do_online(!1) | |
} | |
, | |
fc_user.prototype.getnccl = function() { | |
if (this.blocked) | |
return "fcblocked"; | |
switch (this.modlvl) { | |
case 100: | |
return "fcmod"; | |
case 150: | |
return "fcsuper"; | |
case 200: | |
return "fcowner"; | |
case 300: | |
return "fcadmin"; | |
default: | |
return "fcuser" | |
} | |
} | |
, | |
fc_user.prototype.setpmwnd = function(t) { | |
this.pmwnd = t, | |
this.pmwnd.do_status(this.statuslevel, this.statusmsg), | |
this.pmwnd.do_modlvl(this.modlvl), | |
this.pmwnd.do_blocked(this.blocked) | |
} | |
, | |
fc_user.prototype.setstatus = function(t) { | |
this.statuslevel = t.lv, | |
this.statustime = t.ct, | |
this.statusmsg = t.msg, | |
this.updateelem(), | |
null !== this.pmwnd && this.pmwnd.do_status(this.statuslevel, this.statusmsg) | |
} | |
, | |
fc_user.prototype.setping = function(t) { | |
this.ping = t | |
} | |
, | |
fc_user.prototype.updateelem = function() { | |
if (this.online) | |
if (this.blocked) | |
this.list_elem.innerHTML = "<span class='material-icons'></span>" + this.username, | |
this.list_elem.className = "user available fcblocked"; | |
else | |
switch (this.list_elem.innerHTML = "<span class='material-icons'></span><span class='material-icons'></span>" + this.username, | |
this.statuslevel) { | |
case 1: | |
this.list_elem.className = "user available " + this.getnccl(); | |
break; | |
case 2: | |
this.list_elem.className = "user afk " + this.getnccl(); | |
break; | |
case 3: | |
this.list_elem.className = "user idle " + this.getnccl() | |
} | |
} | |
, | |
fc_user.prototype.block = function() { | |
this.blocked = !0, | |
this.updateelem(), | |
null !== this.pmwnd && this.pmwnd.do_blocked(!0) | |
} | |
, | |
fc_user.prototype.unblock = function() { | |
this.blocked = !1, | |
this.updateelem(), | |
null !== this.pmwnd && this.pmwnd.do_blocked(!1) | |
} | |
, | |
fc_user.prototype.mod = function() { | |
this.modlvl = 100, | |
this.updateelem(), | |
null !== this.pmwnd && this.pmwnd.do_modlvl(100) | |
} | |
, | |
fc_user.prototype.unmod = function() { | |
this.modlvl = 0, | |
this.updateelem(), | |
null !== this.pmwnd && this.pmwnd.do_modlvl(0) | |
} | |
, | |
fc_vab.prototype.mkbars = function() { | |
var t; | |
null === this.elem.firstChild && ((t = document.createElement("div")).className = "top", | |
this.elem.appendChild(t), | |
(t = document.createElement("div")).className = "bottom", | |
this.elem.appendChild(t), | |
(t = document.createElement("div")).className = "left", | |
this.elem.appendChild(t), | |
(t = document.createElement("div")).className = "right", | |
this.elem.appendChild(t)) | |
} | |
, | |
fc_vab.prototype.tick = function() { | |
if (null === this.analyser) | |
this.stop(); | |
else | |
try { | |
for (var t = new Uint8Array(this.analyser.frequencyBinCount), e = (this.analyser.getByteFrequencyData(t), | |
0), n = 0, i = 0, s = 0; s < 4; s++) | |
0 < t[s] && (e += t[s], | |
n += 255); | |
10 < e && (i = Math.round(e / n * 100), | |
i /= 100), | |
this.elem.style.opacity = i | |
} catch (t) {} | |
} | |
, | |
fc_vab.prototype.play = function() { | |
try { | |
return null !== this.stream && null === this.analyser && 0 < this.stream.getAudioTracks().length && (this.audio_context = new AudioContext, | |
this.analyser = this.audio_context.createAnalyser(), | |
this.source = this.audio_context.createMediaStreamSource(this.stream), | |
this.source.connect(this.analyser), | |
this.analyser.fftSize = 64, | |
this.analyser.smoothingTimeConstant = .4), | |
0 !== this.interval && (clearInterval(this.interval), | |
this.interval = 0), | |
this.interval = setInterval(this.tick.bind(this), 100), | |
this.mkbars(), | |
!0 | |
} catch (t) {} | |
return !1 | |
} | |
, | |
fc_vab.prototype.stop = function() { | |
for ((this.elem.opacity = 0) !== this.interval && (clearInterval(this.interval), | |
this.interval = 0); this.elem.firstChild; ) | |
this.elem.removeChild(this.elem.lastChild) | |
} | |
, | |
fc_vab.prototype.setstream = function(t) { | |
null === t ? (this.stop(), | |
null !== this.source && this.source.disconnect(), | |
this.source = null, | |
this.audio_context = null, | |
this.analyser = null) : this.stream = t | |
} | |
, | |
fc_wnd.prototype.setclosecb = function(t) { | |
this.close_callback = t | |
} | |
, | |
fc_wnd.prototype.click_close = function(t) { | |
null === this.close_callback ? this.hide() : this.close_callback() | |
} | |
, | |
fc_wnd.prototype.hide = function() { | |
this.elem.style.display = "none", | |
this.visible = !1 | |
} | |
, | |
fc_wnd.prototype.center = function() { | |
var t = this.elem.parentNode.clientWidth / 2 - this.elem.clientWidth / 2 | |
, e = this.elem.parentNode.clientHeight / 2 - this.elem.clientHeight / 2; | |
this.elem.style.left = t.toString() + "px", | |
this.elem.style.top = e.toString() + "px" | |
} | |
, | |
fc_wnd.prototype.move_random = function() { | |
var t = Math.floor(Math.random() * (this.elem.parentNode.clientWidth - this.elem.clientWidth)) | |
, e = Math.floor(Math.random() * (this.elem.parentNode.clientHeight - this.elem.clientHeight)); | |
this.elem.style.left = t.toString() + "px", | |
this.elem.style.top = e.toString() + "px" | |
} | |
, | |
fc_wnd.prototype.show = function() { | |
this.elem.style.display = "block", | |
this.visible = !0 | |
} | |
, | |
fc_wnd.prototype.getContentElem = function() { | |
return this.elem_content | |
} | |
, | |
fc_wnd.prototype.settitle = function(t) { | |
this.title = t, | |
this.elem_headerp.innerHTML = t | |
} | |
, | |
fc_wnd.prototype.setico = function(t) { | |
this.p_hdrico.innerText = t | |
} | |
, | |
fc_wnd.prototype.setminsize = function(t, e) { | |
this.min_width = t, | |
this.min_height = e, | |
this.elem.clientWidth < t && (this.elem.style.width = t + "px"), | |
this.elem.clientHeight < e && (this.elem.style.height = e + "px"), | |
this.elem.style.minWidth = t + "px", | |
this.elem.style.minHeight = e + "px" | |
} | |
, | |
fc_wnd.prototype.setresizecallback = function(t) { | |
this.resize_callback = t | |
} | |
, | |
fc_wnd.prototype.wnd_onresize = function() { | |
null !== this.resize_callback && this.resize_callback(this.elem.clientWidth, this.elem.clientHeight) | |
} | |
, | |
fc_wnd.prototype.addresizers = function() { | |
this.resizable = !0, | |
this.rz_left = document.createElement("div"), | |
this.rz_left.setAttribute("class", "rz_left"), | |
this.elem.appendChild(this.rz_left), | |
this.rz_right = document.createElement("div"), | |
this.rz_right.setAttribute("class", "rz_right"), | |
this.elem.appendChild(this.rz_right), | |
this.rz_bottom = document.createElement("div"), | |
this.rz_bottom.setAttribute("class", "rz_bottom"), | |
this.elem.appendChild(this.rz_bottom), | |
this.rz_bottomleft = document.createElement("div"), | |
this.rz_bottomleft.setAttribute("class", "rz_bottomleft"), | |
this.elem.appendChild(this.rz_bottomleft), | |
this.rz_bottomright = document.createElement("div"), | |
this.rz_bottomright.setAttribute("class", "rz_bottomright"), | |
this.elem.appendChild(this.rz_bottomright) | |
} | |
, | |
fc_wnd.prototype.hideclosebtn = function(t) { | |
this.elem_closebtn.style.display = t ? "none" : "inline-block" | |
} | |
, | |
fc_wnd.prototype.move = function(t, e) { | |
this.elem.style.left = t + "px", | |
this.elem.style.top = e + "px" | |
} | |
, | |
fc_wnd.prototype.focus = function(t) { | |
this.elem.style.zIndex = t, | |
this.elem.className = "fcwnd hasfocus", | |
this.focused = !0 | |
} | |
, | |
fc_wnd.prototype.unfocus = function(t) { | |
this.elem.className = "fcwnd", | |
this.focused = !1 | |
} | |
, | |
fc_wnd.prototype.begfocus = function() { | |
this.focused || (this.elem.className = "fcwnd begfocus") | |
} | |
, | |
fc_wndconfig.prototype.createui = function() { | |
this.wnd = this.wndman.addwindow("Settings", 600, 400, !1), | |
this.wnd.hideclosebtn(!1), | |
this.wnd.setico(""); | |
let t, e, n, i = this.wnd.getContentElem(); | |
(t = document.createElement("div")).className = "wndconfig", | |
(e = document.createElement("div")).className = "cont_cnfsect", | |
(n = document.createElement("h1")).innerText = "Privacy", | |
e.appendChild(n), | |
this.cb_blockpm = new fc_checkbox(!1,"Block uninvited PM's"), | |
this.cb_blockpm.setattrib("data-cbset", "pb"), | |
this.cb_blockpm.addonclick(this.cbclick.bind(this)), | |
e.appendChild(this.cb_blockpm.elem), | |
this.cb_showtyping = new fc_checkbox(!1,"Show me typing in PM"), | |
this.cb_showtyping.setattrib("data-cbset", "pt"), | |
this.cb_showtyping.addonclick(this.cbclick.bind(this)), | |
e.appendChild(this.cb_showtyping.elem), | |
this.cb_autoidle = new fc_checkbox(!1,"Automatically go idle"), | |
this.cb_autoidle.setattrib("data-cbset", "ai"), | |
this.cb_autoidle.addonclick(this.cbclick.bind(this)), | |
e.appendChild(this.cb_autoidle.elem), | |
t.appendChild(e), | |
(e = document.createElement("div")).className = "cont_cnfsect", | |
(n = document.createElement("h1")).innerText = "Sounds", | |
e.appendChild(n), | |
this.cb_chatsnd = new fc_checkbox(!1,"Play Chat Sounds"), | |
this.cb_chatsnd.setattrib("data-cbset", "sc"), | |
this.cb_chatsnd.addonclick(this.cbclick.bind(this)), | |
e.appendChild(this.cb_chatsnd.elem), | |
t.appendChild(e), | |
this.cb_pmsnd = new fc_checkbox(!1,"Play PM Sounds"), | |
this.cb_pmsnd.setattrib("data-cbset", "sp"), | |
this.cb_pmsnd.addonclick(this.cbclick.bind(this)), | |
e.appendChild(this.cb_pmsnd.elem), | |
t.appendChild(e), | |
i.appendChild(t) | |
} | |
, | |
fc_wndconfig.prototype.getcnf = function() { | |
this.cb_blockpm.check(this.ws.cnf.get("pb")), | |
this.cb_showtyping.check(this.ws.cnf.get("pt")), | |
this.cb_autoidle.check(this.ws.cnf.get("ai")), | |
this.cb_chatsnd.check(this.ws.cnf.get("sc")), | |
this.cb_pmsnd.check(this.ws.cnf.get("sp")) | |
} | |
, | |
fc_wndconfig.prototype.cbclick = function(t) { | |
var e = t.target.dataset.cbset | |
, t = t.target.checked ? 1 : 0; | |
this.ws.cnf.setandsave(e, t) | |
} | |
, | |
fc_wndconfig.prototype.open = function() { | |
null === this.wnd && this.createui(), | |
this.getcnf(), | |
this.wnd.show(), | |
this.wnd.center(), | |
this.wndman.stealfocus(this.wnd) | |
} | |
, | |
fc_wndconfig.prototype.close = function() { | |
null !== this.wnd && this.wnd.hide() | |
} | |
, | |
fc_wndlayout.prototype.createui = function() { | |
this.wnd = this.wndman.addwindow("Choose the new webcam layout", 600, 400, !1), | |
this.wnd.hideclosebtn(!1), | |
this.wnd.setico(""); | |
var t, e, n, i = this.wnd.getContentElem(), s = document.createElement("div"), o = (s.setAttribute("class", "wndlayout"), | |
document.createElement("ul")), c = (s.appendChild(o), | |
document.createElement("li")); | |
o.appendChild(c), | |
(t = document.createElement("button")).setAttribute("class", "lyo1"), | |
t.setAttribute("data-layoutnumber", 1), | |
t.onclick = this.click_layoutbtn.bind(this), | |
c.appendChild(t), | |
(t = document.createElement("button")).setAttribute("data-layoutnumber", 3), | |
t.onclick = this.click_layoutbtn.bind(this), | |
(e = document.createElement("div")).setAttribute("class", "lyo3"), | |
n = document.createElement("span"), | |
e.appendChild(n), | |
t.appendChild(e), | |
c.appendChild(t), | |
(t = document.createElement("button")).setAttribute("data-layoutnumber", 4), | |
t.onclick = this.click_layoutbtn.bind(this), | |
(e = document.createElement("div")).setAttribute("class", "lyo4"), | |
n = document.createElement("span"), | |
e.appendChild(n), | |
t.appendChild(e), | |
c.appendChild(t), | |
(t = document.createElement("button")).setAttribute("data-layoutnumber", 5), | |
t.onclick = this.click_layoutbtn.bind(this), | |
(e = document.createElement("div")).setAttribute("class", "lyo5"), | |
n = document.createElement("span"), | |
e.appendChild(n), | |
t.appendChild(e), | |
c.appendChild(t), | |
c = document.createElement("li"), | |
o.appendChild(c), | |
(t = document.createElement("button")).setAttribute("data-layoutnumber", 6), | |
t.onclick = this.click_layoutbtn.bind(this), | |
(e = document.createElement("div")).setAttribute("class", "lyo6"), | |
n = document.createElement("span"), | |
e.appendChild(n), | |
t.appendChild(e), | |
c.appendChild(t), | |
(t = document.createElement("button")).setAttribute("data-layoutnumber", 7), | |
t.onclick = this.click_layoutbtn.bind(this), | |
(e = document.createElement("div")).setAttribute("class", "lyo7"), | |
n = document.createElement("span"), | |
e.appendChild(n), | |
t.appendChild(e), | |
c.appendChild(t), | |
(t = document.createElement("button")).setAttribute("data-layoutnumber", 8), | |
t.onclick = this.click_layoutbtn.bind(this), | |
(e = document.createElement("div")).setAttribute("class", "lyo8"), | |
n = document.createElement("span"), | |
e.appendChild(n), | |
t.appendChild(e), | |
c.appendChild(t), | |
(t = document.createElement("button")).setAttribute("data-layoutnumber", 9), | |
t.onclick = this.click_layoutbtn.bind(this), | |
(e = document.createElement("div")).setAttribute("class", "lyo9"), | |
n = document.createElement("span"), | |
e.appendChild(n), | |
t.appendChild(e), | |
c.appendChild(t), | |
i.appendChild(s) | |
} | |
, | |
fc_wndlayout.prototype.permcheck = function() { | |
return 100 === this.ws.modlvl && this.ws.pol_modchangelayout || 100 < this.ws.modlvl | |
} | |
, | |
fc_wndlayout.prototype.click_layoutbtn = function(t) { | |
this.permcheck() && void 0 !== (t = t.target.dataset.layoutnumber) && this.ws.sendpbuf(1200611, this.pb.roots.default.fc.p_1200611.encode({ | |
lo: t | |
}, null).finish()), | |
this.wnd.hide() | |
} | |
, | |
fc_wndlayout.prototype.open = function() { | |
this.permcheck() && (null === this.wnd && this.createui(), | |
this.wnd.show(), | |
this.wnd.center(), | |
this.wndman.stealfocus(this.wnd)) | |
} | |
, | |
fc_wndlayout.prototype.close = function() { | |
null !== this.wnd && this.wnd.hide() | |
} | |
, | |
fc_wndmedia.prototype.createui = function() { | |
this.wnd = this.wndman.addwindow("Select Webcam", 600, 400, !1), | |
this.wnd.hideclosebtn(!1), | |
this.wnd.setclosecb(this.click_cancel.bind(this)), | |
this.wnd.setico(""); | |
var t = this.wnd.getContentElem() | |
, e = document.createElement("div") | |
, n = (e.className = "wndmedia", | |
this.cam_a = document.createElement("div"), | |
this.cam_a.className = "cam_a", | |
this.cam_b = document.createElement("div"), | |
this.cam_b.className = "cam_b", | |
this.cam_a.appendChild(this.cam_b), | |
this.cam_c = document.createElement("div"), | |
this.cam_c.className = "cam_c", | |
this.cam_a.appendChild(this.cam_c), | |
this.video = document.createElement("video"), | |
this.video.autoplay = !0, | |
this.video.muted = !0, | |
this.cam_c.appendChild(this.video), | |
this.vab = new fc_vab, | |
this.cam_c.appendChild(this.vab.elem), | |
this.p_video = document.createElement("p"), | |
this.p_video.innerText = "No Webcam Detected", | |
this.cam_c.appendChild(this.p_video), | |
e.appendChild(this.cam_a), | |
this.cam_select = document.createElement("select"), | |
this.cam_select.onchange = this.change_camsel.bind(this), | |
e.appendChild(this.cam_select), | |
this.sw_usemic = new fc_switch, | |
this.sw_usemic.create(!0, "Enable Microphone"), | |
this.sw_usemic.addonclick(this.click_usemic.bind(this)), | |
e.appendChild(this.sw_usemic.elem), | |
this.sw_useec = new fc_switch, | |
this.sw_useec.create(!0, "Echo Cancelling (use this for talky talky)"), | |
this.sw_useec.addonclick(this.click_usemic.bind(this)), | |
e.appendChild(this.sw_useec.elem), | |
this.mic_select = document.createElement("select"), | |
this.mic_select.onchange = this.change_micsel.bind(this), | |
e.appendChild(this.mic_select), | |
document.createElement("div")); | |
n.className = "btns", | |
this.btn_cancel = document.createElement("button"), | |
this.btn_cancel.onclick = this.click_cancel.bind(this), | |
this.btn_cancel.innerHTML = "Cancel", | |
n.appendChild(this.btn_cancel), | |
this.btn_start = document.createElement("button"), | |
this.btn_start.onclick = this.click_start.bind(this), | |
this.btn_start.innerHTML = "Start Cam", | |
n.appendChild(this.btn_start), | |
e.appendChild(n), | |
t.appendChild(e) | |
} | |
, | |
fc_wndmedia.prototype.setratio = function(t) { | |
"16:9" === t ? this.cam_b.style.paddingTop = "56.25%" : "4:3" === t ? this.cam_b.style.paddingTop = "75%" : "21:9" === t && (this.cam_b.style.paddingTop = "42.18%") | |
} | |
, | |
fc_wndmedia.prototype.enumerate = function() { | |
var e, n = this, i = !1; | |
this.btn_start.disabled = !0, | |
this.video.srcObject = null, | |
this.vab.setstream(null), | |
null !== this.stream && (this.stream.getTracks().forEach(function(t) { | |
t.stop() | |
}), | |
this.stream = null), | |
navigator.mediaDevices.enumerateDevices().then(function(t) { | |
var e = { | |
gotcam: !(n.p_video.innerText = "Enumerating Devices"), | |
gotmic: !1 | |
}; | |
return t.forEach(function(t) { | |
"audioinput" === t.kind && (e.gotmic = !0), | |
"videoinput" === t.kind && (e.gotcam = !0) | |
}), | |
e | |
}).catch(function(t) {}).then(function(t) { | |
t.gotcam ? n.p_video.innerText = "Accessing Webcam" : n.p_video.innerText = "No Webcam Detected", | |
n.sw_usemic.ischecked() && t.gotmic, | |
t.gotcam || "screen" === n.forced_camid ? (e = { | |
deviceId: n.forced_camid, | |
width: n.cam.outvid_w, | |
height: n.cam.outvid_h, | |
aspectRatio: n.cam.outvid_ar, | |
frameRate: n.cam.outvid_fps | |
}, | |
t.gotmic && n.sw_usemic.ischecked() && (i = n.sw_useec.ischecked() ? { | |
deviceId: n.forced_micid, | |
autoGainControl: !0, | |
echoCancellation: !0, | |
noiseSuppression: !0 | |
} : { | |
deviceId: n.forced_micid, | |
autoGainControl: !0, | |
echoCancellation: !1, | |
noiseSuppression: !1 | |
}), | |
"screen" === n.forced_camid ? navigator.mediaDevices.getDisplayMedia({ | |
video: e | |
}).then(function(e) { | |
t.gotmic && n.sw_usemic.ischecked() ? navigator.mediaDevices.getUserMedia({ | |
audio: i | |
}).then(function(t) { | |
null !== t && 0 < (t = t.getAudioTracks()).length && e.addTrack(t[0]), | |
n.gotstream(e), | |
n.refresh_sel() | |
}).catch(function(t) { | |
n.gumerror(t.name), | |
n.refresh_sel() | |
}) : (n.gotstream(e), | |
n.refresh_sel()) | |
}).catch(function(t) { | |
n.gumerror(t.name), | |
n.refresh_sel() | |
}) : navigator.mediaDevices.getUserMedia({ | |
audio: i, | |
video: e | |
}).then(function(t) { | |
n.gotstream(t), | |
n.refresh_sel() | |
}).catch(function(t) { | |
"TypeError" !== t.name && n.gumerror(t.name), | |
n.refresh_sel() | |
})) : n.refresh_sel() | |
}) | |
} | |
, | |
fc_wndmedia.prototype.gotstream = function(t) { | |
for (var e = !1, n = !1, i = t.getTracks(), s = 0; s < i.length; s++) | |
"audio" === i[s].kind && (n = !0), | |
"video" === i[s].kind && (e = !0); | |
e && (this.p_video.innerText = "PREVIEW", | |
this.video.srcObject = t), | |
n && (this.vab.setstream(t), | |
this.vab.play()), | |
this.stream = t, | |
this.btn_start.disabled = !1 | |
} | |
, | |
fc_wndmedia.prototype.gumerror = function(t) { | |
switch (t) { | |
case "SecurityError": | |
case "NotAllowedError": | |
case "PermissionDeniedError": | |
case "PermissionDismissedError": | |
this.p_video.innerText = "Permission required"; | |
break; | |
case "NotReadableError": | |
case "TrackStartError": | |
this.p_video.innerText = "Webcam already in use?"; | |
break; | |
case "OverconstrainedError": | |
case "ConstraintNotSatisfiedError": | |
this.p_video.innerText = "Error: Webcam not supported"; | |
break; | |
case "TypeError": | |
this.p_video.innerText = "TypeError (?)"; | |
break; | |
case "AbortError": | |
this.p_video.innerText = "Aborted, webcam in use?"; | |
break; | |
default: | |
this.p_video.innerText = "Unknown error: " + t | |
} | |
} | |
, | |
fc_wndmedia.prototype.click_start = function(t) { | |
this.cam.startcam(this.stream), | |
this.close() | |
} | |
, | |
fc_wndmedia.prototype.click_cancel = function(t) { | |
null !== this.video && (this.video.srcObject = null), | |
null !== this.stream && (this.stream.getTracks().forEach(function(t) { | |
t.stop() | |
}), | |
this.stream = null), | |
this.close() | |
} | |
, | |
fc_wndmedia.prototype.refresh_sel = function() { | |
var n, i = this, s = null, o = null; | |
null !== this.stream && this.stream.getTracks().forEach(function(t) { | |
switch (t.kind) { | |
case "video": | |
s = t; | |
break; | |
case "audio": | |
o = t | |
} | |
}), | |
i.sw_usemic.ischecked() || ((n = document.createElement("option")).innerHTML = "Microphone is disabled", | |
n.selected = !0, | |
this.mic_select.appendChild(n)), | |
navigator.mediaDevices.enumerateDevices().then(function(t) { | |
for (var e = i.cam_select.options.length - 1; 0 <= e; e--) | |
i.cam_select.remove(e); | |
for (e = i.mic_select.options.length - 1; 0 <= e; e--) | |
i.mic_select.remove(e); | |
t.forEach(function(t) { | |
"videoinput" === t.kind ? ((n = document.createElement("option")).innerHTML = 0 < t.label.length ? t.label : "unknown videoinput (permission granted?)", | |
n.value = t.deviceId, | |
null !== s && (s.getSettings().hasOwnProperty("deviceId") ? n.selected = s.getSettings().deviceId === t.deviceId : n.selected = s.label === t.label), | |
i.cam_select.appendChild(n)) : "audioinput" === t.kind && i.sw_usemic.ischecked() && ((n = document.createElement("option")).innerHTML = 0 < t.label.length ? t.label : "unknown audioinput (permission granted?)", | |
n.value = t.deviceId, | |
null !== o && (o.getSettings().hasOwnProperty("deviceId") ? n.selected = o.getSettings().deviceId === t.deviceId : n.selected = o.label === t.label), | |
i.mic_select.appendChild(n)) | |
}), | |
0 === i.cam_select.options.length && ((n = document.createElement("option")).innerHTML = "No Camera's detected", | |
n.selected = !0, | |
i.cam_select.appendChild(n)), | |
0 === i.mic_select.options.length && ((n = document.createElement("option")).innerHTML = "No Microphones detected", | |
n.selected = !0, | |
i.mic_select.appendChild(n)), | |
navigator.mediaDevices && "getDisplayMedia"in navigator.mediaDevices && ((n = document.createElement("option")).innerHTML = "Use your browsers built in Screensharing feature", | |
(n.value = "screen") === i.forced_camid && (n.selected = !0), | |
i.cam_select.appendChild(n)) | |
}).catch(function(t) {}) | |
} | |
, | |
fc_wndmedia.prototype.change_camsel = function(t) { | |
this.forced_camid = t.target.value, | |
this.enumerate() | |
} | |
, | |
fc_wndmedia.prototype.change_micsel = function(t) { | |
this.forced_micid = t.target.value, | |
this.enumerate() | |
} | |
, | |
fc_wndmedia.prototype.click_usemic = function(t) { | |
this.sw_usemic.ischecked() ? (this.sw_useec.elem.style.display = "block", | |
this.mic_select.style.display = "block") : (this.sw_useec.elem.style.display = "none", | |
this.mic_select.style.display = "none"), | |
this.enumerate() | |
} | |
, | |
fc_wndmedia.prototype.open = function(t, e) { | |
this.cam = t, | |
null === this.wnd && this.createui(), | |
this.setratio(e), | |
this.wnd.visible || (this.wnd.show(), | |
this.wnd.center(), | |
this.wndman.stealfocus(this.wnd), | |
this.enumerate()) | |
} | |
, | |
fc_wndmedia.prototype.close = function() { | |
null !== this.wnd && this.wnd.hide() | |
} | |
, | |
fc_wndpm.prototype.createui = function() { | |
this.wnd = this.wndman.addwindow(this.username, 0, 0, !0), | |
this.wnd.setminsize(320, 260), | |
this.wnd.setico(""), | |
this.wnd.setresizecallback(this.resize_callback.bind(this)); | |
var t = this.wnd.getContentElem() | |
, e = document.createElement("div") | |
, n = (e.className = "wndpm", | |
this.b_banner = document.createElement("p"), | |
this.b_banner.innerText = "", | |
this.b_banner.className = "pmbanner", | |
e.appendChild(this.b_banner), | |
document.createElement("div")) | |
, n = (n.className = "pmgridbox_top", | |
this.chatbox = new fc_chatbox(this.ws,this.umcb,null), | |
this.chatbox.entypeline(), | |
n.appendChild(this.chatbox.elem), | |
e.appendChild(n), | |
document.createElement("div")); | |
n.className = "pmgridbox_bottom", | |
this.text_msg = document.createElement("textarea"), | |
this.text_msg.onkeydown = this.msg_keydown.bind(this), | |
this.text_msg.style.color = this.font_colour, | |
this.text_msg.className = "fs_" + this.font_size, | |
this.text_msg.value = "", | |
n.appendChild(this.text_msg), | |
this.btn_send = document.createElement("button"), | |
this.btn_send.className = "material-icons", | |
this.btn_send.onclick = this.send_click.bind(this), | |
n.appendChild(this.btn_send), | |
e.appendChild(n), | |
t.appendChild(e), | |
this.updatemaxlen(), | |
this.resize_callback(this.wnd.elem.clientWidth, this.wnd.elem.clientHeight) | |
} | |
, | |
fc_wndpm.prototype.resize_callback = function(t, e) { | |
this.b_banner.style.width = t - 20 + "px", | |
this.chatbox.elem.style.height = e - 120 + "px" | |
} | |
, | |
fc_wndpm.prototype.entaka = function(t) { | |
t ? this.taka_enable = !0 : (this.taka_enable = !1, | |
this.type_state = 0, | |
this.type_time = 0, | |
null !== this.type_timeout && (clearTimeout(this.type_timeout), | |
this.type_timeout = null), | |
this.sendtaka()) | |
} | |
, | |
fc_wndpm.prototype.enblockpm = function(t) { | |
this.blockpm_enable = !!t, | |
this.block_whitelist = !1 | |
} | |
, | |
fc_wndpm.prototype.enrecvsnd = function(t) { | |
this.recvsnd = t ? new Audio("/sounds/pop02_1.ogg") : null | |
} | |
, | |
fc_wndpm.prototype.playrecvsnd = function() { | |
null !== this.recvsnd && (this.recvsnd.play(), | |
this.recvsnd.currentTime = 0) | |
} | |
, | |
fc_wndpm.prototype.type_timeout_tick = function() { | |
this.taka_enable && (Date.now() - this.type_time < 2e3 ? (this.type_state = 1, | |
this.type_timeout = setTimeout(this.type_timeout_tick.bind(this), 4e3)) : ("" === this.text_msg.value ? this.type_state = 0 : this.type_state = 2, | |
this.type_timeout = null), | |
this.sendtaka()) | |
} | |
, | |
fc_wndpm.prototype.msg_keydown = function(t) { | |
return 13 !== t.keyCode || t.shiftKey ? (this.taka_enable && (this.type_state = 1, | |
this.type_time = Date.now(), | |
null === this.type_timeout) && (this.type_timeout = setTimeout(this.type_timeout_tick.bind(this), 4e3), | |
this.sendtaka()), | |
!0) : (this.sendmsg(), | |
!1) | |
} | |
, | |
fc_wndpm.prototype.send_click = function(t) { | |
this.sendmsg() | |
} | |
, | |
fc_wndpm.prototype.sendmsg = function() { | |
this.online && !this.blocked && (this.taka_enable && (this.type_state = 0, | |
this.type_time = 0, | |
null !== this.type_timeout) && (clearTimeout(this.type_timeout), | |
this.type_timeout = null), | |
"" !== this.text_msg.value) && this.ws.ready && (this.msglimit.cansend(this.text_msg.value, this.font_size) ? !0 === this.ws.sendpbuf(1200541, this.pb.roots.default.fc.p_1200541.encode({ | |
cm: { | |
ruuid: this.uuid, | |
msg: this.text_msg.value, | |
clr: this.font_colour, | |
sz: this.font_size | |
} | |
}, null).finish()) && (this.text_msg.value = "", | |
this.blockpm_enable) && (this.block_whitelist = !0) : this.chatbox.addsys("Please do not spam!")) | |
} | |
, | |
fc_wndpm.prototype.sendtaka = function() { | |
this.online && (!this.blockpm_enable || this.blockpm_enable && this.block_whitelist) && this.ws.sendpbuf(1200551, this.pb.roots.default.fc.p_1200551.encode({ | |
st: this.type_state, | |
uuid: this.uuid | |
}, null).finish()) | |
} | |
, | |
fc_wndpm.prototype.block_notify = function() { | |
this.ws.sendpbuf(1200553, this.pb.roots.default.fc.p_1200553.encode({ | |
uuid: this.uuid, | |
msg: "/me has disabled pm's" | |
}, null).finish()) | |
} | |
, | |
fc_wndpm.prototype.updatemaxlen = function() { | |
this.text_msg.maxLength = this.msglimit.max_msg_length | |
} | |
, | |
fc_wndpm.prototype.updatefc = function(t) { | |
this.font_colour = t, | |
this.text_msg.style.color = this.font_colour | |
} | |
, | |
fc_wndpm.prototype.updatefs = function(t) { | |
this.font_size = t, | |
this.text_msg.className = "fs_" + this.font_size | |
} | |
, | |
fc_wndpm.prototype.receive = function(t, e, n, i, s, o, c) { | |
!this.blockpm_enable || this.blockpm_enable && this.block_whitelist ? (this.chatbox.addnormal(t, e, n, i, s, o, c), | |
this.rcvtaka(0), | |
this.playrecvsnd(), | |
this.wnd.visible || this.open(), | |
this.wnd.begfocus()) : e === this.username && this.block_notify() | |
} | |
, | |
fc_wndpm.prototype.receiveme = function(t, e, n, i, s, o) { | |
!this.blockpm_enable || this.blockpm_enable && this.block_whitelist ? (this.chatbox.addme(t, e, n, i, s, o), | |
this.rcvtaka(0), | |
this.wnd.visible || this.open(), | |
this.wnd.begfocus()) : e === this.username && this.block_notify() | |
} | |
, | |
fc_wndpm.prototype.receiveroll = function(t, e, n, i, s) { | |
!this.blockpm_enable || this.blockpm_enable && this.block_whitelist ? (this.chatbox.addroll(t, e, n, i, s), | |
this.rcvtaka(0), | |
this.wnd.visible || this.open(), | |
this.wnd.begfocus()) : t === this.username && this.block_notify() | |
} | |
, | |
fc_wndpm.prototype.rcvtaka = function(t) { | |
(0 === t || !this.blockpm_enable || this.blockpm_enable && this.block_whitelist) && this.chatbox.settyping(this.username, this.modlvl, t) | |
} | |
, | |
fc_wndpm.prototype.rcvpmblock = function(t) { | |
this.chatbox.addsys(t) | |
} | |
, | |
fc_wndpm.prototype.do_status = function(t, e) { | |
this.status_code = t, | |
this.status_text = e, | |
this.refreshbanner() | |
} | |
, | |
fc_wndpm.prototype.do_online = function(t) { | |
this.online = t, | |
this.refreshbanner() | |
} | |
, | |
fc_wndpm.prototype.setusername = function(t) { | |
this.username = t, | |
null !== this.wnd && this.wnd.settitle(t) | |
} | |
, | |
fc_wndpm.prototype.do_blocked = function(t) { | |
this.blocked = t, | |
this.refreshbanner() | |
} | |
, | |
fc_wndpm.prototype.do_modlvl = function(t) { | |
this.modlvl = t | |
} | |
, | |
fc_wndpm.prototype.refreshbanner = function() { | |
if (this.online) | |
if (this.blocked) | |
this.b_banner.style.display = "block", | |
this.b_banner.innerText = this.username + " is blocked"; | |
else | |
switch (this.status_code) { | |
case 1: | |
default: | |
this.b_banner.style.display = "none", | |
this.b_banner.innerText = ""; | |
break; | |
case 2: | |
this.b_banner.style.display = "block", | |
this.b_banner.innerText = 0 === this.status_text.length ? "AFK" : "AFK: " + this.status_text; | |
break; | |
case 3: | |
this.b_banner.style.display = "block", | |
this.b_banner.innerText = this.username + " has gone idle" | |
} | |
else | |
this.b_banner.style.display = "block", | |
this.b_banner.innerText = this.username + " has left the room" | |
} | |
, | |
fc_wndpm.prototype.info = function(t) { | |
this.chatbox.addsys("[INFO]: " + t) | |
} | |
, | |
fc_wndpm.prototype.open = function() { | |
null === this.wnd && this.createui(), | |
this.wnd.show(), | |
this.wnd.move_random(), | |
this.resize_callback(this.wnd.elem.clientWidth, this.wnd.elem.clientHeight) | |
} | |
, | |
fc_wndpm.prototype.focuswnd = function() { | |
this.wndman.stealfocus(this.wnd), | |
this.text_msg.focus() | |
} | |
, | |
fc_wndpm.prototype.close = function() { | |
null !== this.wnd && this.wnd.hide() | |
} | |
, | |
fc_wndpolicy.prototype.createui = function() { | |
this.wnd = this.wndman.addwindow("Room Policy", 600, 400, !1), | |
this.wnd.hideclosebtn(!1), | |
this.new_password = ""; | |
var t, e, n = this.wnd.getContentElem(), i = document.createElement("div"); | |
i.className = "wndpolicy", | |
(e = document.createElement("div")).className = "cont_polsect", | |
(t = document.createElement("h1")).innerText = "Access Policy", | |
e.appendChild(t), | |
this.cb_allowguest = new fc_checkbox(this.ws.pol_allowguest,"Allow guests to join"), | |
this.cb_allowguest.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_allowguest.elem), | |
this.cb_allowyoutube = new fc_checkbox(this.ws.pol_allowyoutube,"Allow YouTube Player"), | |
this.cb_allowyoutube.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_allowyoutube.elem), | |
this.cb_password = new fc_checkbox(this.ws.pol_pwenforced,"Password required to enter"), | |
this.cb_password.addonclick(this.cbpassclick.bind(this)), | |
e.appendChild(this.cb_password.elem), | |
this.btn_editpass = document.createElement("button"), | |
this.btn_editpass.setAttribute("id", "pwdbtn"), | |
this.btn_editpass.style.borderColor = "transparent", | |
this.btn_editpass.className = "material-icons editpwd", | |
this.btn_editpass.onclick = this.btnpassclick.bind(this), | |
e.appendChild(this.btn_editpass), | |
this.text_password = document.createElement("input"), | |
this.text_password.setAttribute("type", "text"), | |
this.text_password.setAttribute("id", "pwdedit"), | |
this.text_password.setAttribute("autocomplete", "off"), | |
this.text_password.style.borderColor = "transparent", | |
this.text_password.placeholder = "blank password", | |
this.text_password.maxLength = 16, | |
this.text_password.autocomplete = "off", | |
this.text_password.disabled = !0, | |
e.appendChild(this.text_password), | |
i.appendChild(e), | |
(e = document.createElement("div")).className = "cont_polsect", | |
(t = document.createElement("h1")).innerText = "Mod Policy", | |
e.appendChild(t), | |
this.cb_modchangelayout = new fc_checkbox(this.ws.pol_modchangelayout,"Mods can change layout"), | |
this.cb_modchangelayout.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_modchangelayout.elem), | |
this.cb_modchangetopic = new fc_checkbox(this.ws.pol_modchangetopic,"Mods can change topic"), | |
this.cb_modchangetopic.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_modchangetopic.elem), | |
this.cb_modstopcam = new fc_checkbox(this.ws.pol_modstopcam,"Mods can stop cams"), | |
this.cb_modstopcam.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_modstopcam.elem), | |
i.appendChild(e), | |
(e = document.createElement("div")).className = "cont_polsect", | |
(t = document.createElement("h1")).innerText = "Command Policy", | |
e.appendChild(t), | |
this.cb_enablemecmd = new fc_checkbox(this.ws.pol_en_mecmd,"Allow /me command"), | |
this.cb_enablemecmd.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_enablemecmd.elem), | |
this.cb_enablerollcmd = new fc_checkbox(this.ws.pol_en_rollcmd,"Allow /roll command"), | |
this.cb_enablerollcmd.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_enablerollcmd.elem), | |
this.cb_enableafkcmd = new fc_checkbox(this.ws.pol_en_afkcmd,"Allow /afk command"), | |
this.cb_enableafkcmd.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_enableafkcmd.elem), | |
this.cb_enablestopcmd = new fc_checkbox(this.ws.pol_en_stopcmd,"Allow /stop command"), | |
this.cb_enablestopcmd.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_enablestopcmd.elem), | |
this.cb_enablekickcmd = new fc_checkbox(this.ws.pol_en_kickcmd,"Allow /kick command"), | |
this.cb_enablekickcmd.addonclick(this.apply_click.bind(this)), | |
e.appendChild(this.cb_enablekickcmd.elem), | |
i.appendChild(e), | |
n.appendChild(i) | |
} | |
, | |
fc_wndpolicy.prototype.permcheck = function() { | |
return 100 < this.ws.modlvl | |
} | |
, | |
fc_wndpolicy.prototype.cbpassclick = function(t) { | |
this.cb_password.ischecked() ? (this.text_password.style.display = "inline-block", | |
this.btn_editpass.style.display = "inline-block") : (this.text_password.style.display = "none", | |
this.btn_editpass.style.display = "none"), | |
this.apply_click() | |
} | |
, | |
fc_wndpolicy.prototype.btnpassclick = function(t) { | |
if (this.text_password.disabled) | |
this.text_password.style.borderColor = "inherit", | |
this.btn_editpass.style.borderColor = "inherit", | |
this.text_password.disabled = !1, | |
this.btn_editpass.className = "material-icons savepwd", | |
this.text_password.value = this.ws.pol_pw; | |
else { | |
this.text_password.style.borderColor = "transparent", | |
this.btn_editpass.style.borderColor = "transparent", | |
this.text_password.disabled = !0, | |
this.btn_editpass.className = "material-icons editpwd", | |
this.new_password = this.text_password.value; | |
for (var e = "", n = 0; n < this.new_password.length; n++) | |
e += "*"; | |
this.text_password.value = e, | |
this.apply_click() | |
} | |
} | |
, | |
fc_wndpolicy.prototype.set = function() { | |
if (this.new_password = this.ws.pol_pw, | |
null !== this.cb_allowguest && this.cb_allowguest.check(this.ws.pol_allowguest), | |
null !== this.cb_allowyoutube && this.cb_allowyoutube.check(this.ws.pol_allowyoutube), | |
null !== this.cb_password && this.cb_password.check(this.ws.pol_pwenforced), | |
null !== this.text_password && (this.ws.pol_pwenforced ? (this.text_password.style.display = "inline-block", | |
this.btn_editpass.style.display = "inline-block") : (this.text_password.style.display = "none", | |
this.btn_editpass.style.display = "none"), | |
this.text_password.disabled)) { | |
for (var t = "", e = 0; e < this.ws.pol_pw.length; e++) | |
t += "*"; | |
this.text_password.value = t | |
} | |
null !== this.cb_modchangelayout && this.cb_modchangelayout.check(this.ws.pol_modchangelayout), | |
null !== this.cb_modchangetopic && this.cb_modchangetopic.check(this.ws.pol_modchangetopic), | |
null !== this.cb_modstopcam && this.cb_modstopcam.check(this.ws.pol_modstopcam), | |
null !== this.cb_enablemecmd && this.cb_enablemecmd.check(this.ws.pol_en_mecmd), | |
null !== this.cb_enablerollcmd && this.cb_enablerollcmd.check(this.ws.pol_en_rollcmd), | |
null !== this.cb_enableafkcmd && this.cb_enableafkcmd.check(this.ws.pol_en_afkcmd), | |
null !== this.cb_enablestopcmd && this.cb_enablestopcmd.check(this.ws.pol_en_stopcmd), | |
null !== this.cb_enablekickcmd && this.cb_enablekickcmd.check(this.ws.pol_en_kickcmd), | |
null !== this.wnd && (this.ws.pol_pwenforced ? this.wnd.setico("") : this.wnd.setico("")) | |
} | |
, | |
fc_wndpolicy.prototype.open = function() { | |
this.permcheck() && (null === this.wnd && this.createui(), | |
this.wnd.show(), | |
this.wnd.center(), | |
this.wndman.stealfocus(this.wnd), | |
this.set()) | |
} | |
, | |
fc_wndpolicy.prototype.apply_click = function() { | |
var t = []; | |
this.cb_allowguest.getstate() !== this.ws.pol_allowguest && t.push({ | |
k: "ag", | |
v: this.cb_allowguest.checked() ? "1" : "0" | |
}), | |
this.cb_allowyoutube.getstate() !== this.ws.pol_allowyoutube && t.push({ | |
k: "ay", | |
v: this.cb_allowyoutube.checked() ? "1" : "0" | |
}), | |
this.cb_password.getstate() !== this.ws.pol_pwenforced && t.push({ | |
k: "pwe", | |
v: this.cb_password.checked() ? "1" : "0" | |
}), | |
this.new_password !== this.ws.pol_pw && t.push({ | |
k: "pwd", | |
v: this.new_password | |
}), | |
this.cb_modchangelayout.getstate() !== this.ws.pol_modchangelayout && t.push({ | |
k: "mcl", | |
v: this.cb_modchangelayout.checked() ? "1" : "0" | |
}), | |
this.cb_modchangetopic.getstate() !== this.ws.pol_modchangetopic && t.push({ | |
k: "mct", | |
v: this.cb_modchangetopic.checked() ? "1" : "0" | |
}), | |
this.cb_modstopcam.getstate() !== this.ws.pol_modstopcam && t.push({ | |
k: "msc", | |
v: this.cb_modstopcam.checked() ? "1" : "0" | |
}), | |
this.cb_enablemecmd.getstate() !== this.ws.pol_en_mecmd && t.push({ | |
k: "amc", | |
v: this.cb_enablemecmd.checked() ? "1" : "0" | |
}), | |
this.cb_enablerollcmd.getstate() !== this.ws.pol_en_rollcmd && t.push({ | |
k: "arc", | |
v: this.cb_enablerollcmd.checked() ? "1" : "0" | |
}), | |
this.cb_enableafkcmd.getstate() !== this.ws.pol_en_afkcmd && t.push({ | |
k: "aac", | |
v: this.cb_enableafkcmd.checked() ? "1" : "0" | |
}), | |
this.cb_enablestopcmd.getstate() !== this.ws.pol_en_stopcmd && t.push({ | |
k: "asc", | |
v: this.cb_enablestopcmd.checked() ? "1" : "0" | |
}), | |
this.cb_enablekickcmd.getstate() !== this.ws.pol_en_kickcmd && t.push({ | |
k: "akc", | |
v: this.cb_enablekickcmd.checked() ? "1" : "0" | |
}), | |
0 < t.length && this.ws.sendpbuf(1200191, this.pb.roots.default.fc.p_1200191.encode({ | |
rp: { | |
kv: t | |
} | |
}, null).finish()) | |
} | |
, | |
fc_ws.prototype.mkses = function() { | |
for (var t = "", e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.!$%*@,=-_~", n = 0; n < 32; n++) | |
t += e.charAt(Math.floor(Math.random() * e.length)); | |
return t | |
} | |
, | |
fc_ws.prototype.start = function() { | |
if (null === this.ws) { | |
this.chead = null, | |
this.chead = new ArrayBuffer(29); | |
var t = new DataView(this.chead); | |
t.setUint16(0, 65279), | |
t.setInt16(2, this.pver), | |
t.setUint32(4, this.rn), | |
t.setUint32(8, this.un), | |
t.setUint32(12, 0), | |
t.setUint32(16, 0), | |
t.setUint8(20, this.cmtype), | |
t.setInt32(21, 0), | |
t.setInt32(25, 0); | |
try { | |
this.ws = new WebSocket("wss://" + this.addr + "/fc/chat"), | |
this.ws.onopen = this.onopen.bind(this), | |
this.ws.onclose = this.onclose.bind(this), | |
this.ws.onerror = this.onerror.bind(this), | |
this.ws.onmessage = this.onmessage.bind(this) | |
} catch (t) { | |
this.ws = null | |
} | |
} | |
} | |
, | |
fc_ws.prototype.updatedelta = function(t) { | |
this.tmdelta = t - Date.now() | |
} | |
, | |
fc_ws.prototype.cheadupdate = function() { | |
var t = new DataView(this.chead); | |
t.setUint32(4, this.rn), | |
t.setUint32(8, this.un) | |
} | |
, | |
fc_ws.prototype.policyupdate = function(t) { | |
for (var e, n, i = 0; i < t.kv.length; i++) | |
switch (e = t.kv[i].k, | |
n = t.kv[i].v, | |
e) { | |
case "ag": | |
this.pol_allowguest = "1" === n; | |
break; | |
case "ay": | |
this.pol_allowyoutube = "1" === n; | |
break; | |
case "pwe": | |
this.pol_pwenforced = "1" === n; | |
break; | |
case "pwd": | |
this.pol_pw = n; | |
break; | |
case "mcl": | |
this.pol_modchangelayout = "1" === n; | |
break; | |
case "mct": | |
this.pol_modchangetopic = "1" === n; | |
break; | |
case "msc": | |
this.pol_modstopcam = "1" === n; | |
break; | |
case "amc": | |
this.pol_en_mecmd = "1" === n; | |
break; | |
case "arc": | |
this.pol_en_rollcmd = "1" === n; | |
break; | |
case "aac": | |
this.pol_en_afkcmd = "1" === n; | |
break; | |
case "asc": | |
this.pol_en_stopcmd = "1" === n; | |
break; | |
case "akc": | |
this.pol_en_kickcmd = "1" === n | |
} | |
} | |
, | |
fc_ws.prototype.disconnect = function() { | |
this.ws.readyState < 2 && this.ws.close() | |
} | |
, | |
fc_ws.prototype.isconnected = function() { | |
return null !== this.ws && 1 === this.ws.readyState | |
} | |
, | |
fc_ws.prototype.onopen = function(t) {} | |
, | |
fc_ws.prototype.onclose = function(t) { | |
this.ws = null, | |
this.rn = 0, | |
this.un = 0, | |
this.uh = 0, | |
(this.pn = 0) === this.flwb ? this.close_cb(t) : this.clswait = t | |
} | |
, | |
fc_ws.prototype.onerror = function(t) { | |
this.error_cb(t) | |
} | |
, | |
fc_ws.prototype.onmessage = function(t) { | |
var e; | |
this.ws && t.data instanceof Blob && (this.flwb++, | |
(e = new FileReader).onload = this.packetrdy.bind(this), | |
e.readAsArrayBuffer(t.data)) | |
} | |
, | |
fc_ws.prototype.sendpbuf = function(t, e) { | |
if (null === this.ws || !this.isconnected()) | |
return !1; | |
var n = null | |
, i = 0 | |
, s = 0 | |
, e = (this.uh = Math.floor(this.un / this.uh + 13 * this.pn), | |
null !== e && (s = (2 === this.cmtype ? (i = (n = this.pako.deflate(e)).byteLength, | |
e) : (i = (n = e).byteLength, | |
n)).byteLength), | |
new DataView(this.chead)) | |
, t = (e.setUint32(12, this.uh), | |
e.setUint32(16, t), | |
e.setInt32(21, i), | |
e.setInt32(25, s), | |
new Uint8Array(this.chead.byteLength + n.byteLength)); | |
t.set(new Uint8Array(this.chead), 0), | |
t.set(n, this.chead.byteLength); | |
try { | |
this.ws.send(t) | |
} catch (t) { | |
return !1 | |
} | |
return this.pn++, | |
!0 | |
} | |
, | |
fc_ws.prototype.packetrdy = function(t) { | |
this.flwb--; | |
var e = t.target.result | |
, t = !1 | |
, n = new DataView(e) | |
, t = "fffe" === n.getUint16(0).toString(16) | |
, i = (n.getUint8(2, t), | |
n.getUint32(3, t)) | |
, s = n.getUint8(7, t) | |
, o = null; | |
if (0 < n.getUint16(8, t)) | |
switch (s) { | |
case 1: | |
break; | |
case 2: | |
try { | |
o = this.pako.inflate(e.slice(10)) | |
} catch (t) {} | |
break; | |
default: | |
o = e.slice(10) | |
} | |
else | |
o = null; | |
this.rcv_cb(i, o), | |
0 !== this.flwb || this.isconnected() || null === this.clswait || (this.close_cb(this.clswait), | |
this.clswait = null) | |
} | |
, | |
fc_ws.prototype.close = function(t) { | |
this.ws && ("number" == typeof t ? this.ws.close(t) : this.ws.close(), | |
this.ws = null) | |
} | |
, | |
fc_ws.prototype.stohr = function(t) { | |
return this.mstohr(1e3 * t) | |
} | |
, | |
fc_ws.prototype.mstohr = function(t) { | |
if (t < 1e3) | |
return "0s"; | |
for (var e, n = t, i = 0, s = 0, o = 0, c = 0, t = ""; 6e4 <= n; ) | |
6048e5 <= n ? (n -= 6048e5, | |
c++) : 864e5 <= n ? (n -= 864e5, | |
o++) : 36e5 <= n ? (n -= 36e5, | |
s++) : 6e4 <= n && (n -= 6e4, | |
i++); | |
return 0 < c && (t += c + "w "), | |
0 < o && (t += o + "d "), | |
0 < s && (t += s + "h "), | |
0 < i && (t += i + "m "), | |
0 < (e = Math.floor(n / 1e3)) && (t += e + "s "), | |
t.trim() | |
} | |
, | |
fc_youtube.prototype.reqq = function() { | |
null !== this.ytpp && !this.ytpp.closed && this.pa && this.ws.sendpbuf(1200420, this.pb.roots.default.fc.p_1200420.encode({}, null).finish()) | |
} | |
, | |
fc_youtube.prototype.open = function() { | |
return null === this.ytpp || this.ytpp.closed ? (1 === parseInt(getCookie("accept_youtube_pp")) && (this.pa = !0), | |
this.ytpp = window.open("/youtube.php", this.ws.rn + "_youtube_window", "location=no,toolbar=no,menubar=no,status=no,scrollbars=no,resizable=yes,width=720,height=445,left=500,top=300"), | |
this.ytpp.addEventListener("load", this.pp_load.bind(this)), | |
this.ytpp.addEventListener("resize", this.pp_resize.bind(this)), | |
this.ytpp.onYouTubeIframeAPIReady = this.pp_ytbr.bind(this)) : this.ytpp.focus(), | |
null !== this.ytpp | |
} | |
, | |
fc_youtube.prototype.pp_load = function() { | |
this.player_cont = this.ytpp.document.getElementById("kyt_player"), | |
this.div_qpopup = this.ytpp.document.getElementById("kyt_queue_popup"), | |
this.div_queue = this.ytpp.document.getElementById("kyt_queue"), | |
this.div_qpopupbg = this.ytpp.document.getElementById("popup_background"), | |
this.btn_addvideo = this.ytpp.document.getElementById("addvideobtn"), | |
this.btn_addvideo.onclick = this.openq.bind(this), | |
this.btn_nextvideo = this.ytpp.document.getElementById("nextbtn"), | |
this.btn_nextvideo.onclick = this.nextv.bind(this), | |
this.div_qpopupcls = this.ytpp.document.getElementById("qpopup_close"), | |
this.div_qpopupcls.onclick = this.closeq.bind(this), | |
this.text_search = this.ytpp.document.getElementById("searchbox"), | |
this.text_search.onkeydown = this.s_keydown.bind(this), | |
this.btn_search = this.ytpp.document.getElementById("searchbtn"), | |
this.btn_search.onclick = this.s_click.bind(this), | |
this.text_addurl = this.ytpp.document.getElementById("addurlbox"), | |
this.text_addurl.onkeydown = this.au_keydown.bind(this), | |
this.btn_addurl = this.ytpp.document.getElementById("addurlbtn"), | |
this.btn_addurl.onclick = this.au_click.bind(this), | |
this.p_query_err = this.ytpp.document.getElementById("query_err"), | |
this.table_queue = this.ytpp.document.getElementById("queue_table"), | |
this.div_sresultcont = this.ytpp.document.getElementById("kyt_sresults_cont"), | |
this.div_sresult = this.ytpp.document.getElementById("kyt_sresults"), | |
this.div_sresultload = this.ytpp.document.getElementById("queue_loading"), | |
this.span_sresulttext = this.ytpp.document.getElementById("kyt_sresult_text"), | |
this.div_sresultclose = this.ytpp.document.getElementById("sresult_close"), | |
this.div_sresultclose.onclick = this.close_sr.bind(this), | |
this.yt_enable_search ? (this.ytpp.document.getElementById("searchcont").style.display = "block", | |
this.ytpp.document.getElementById("addurlcont").style.display = "none", | |
this.p_query_err.innerText = "") : (this.ytpp.document.getElementById("searchcont").style.display = "none", | |
this.ytpp.document.getElementById("addurlcont").style.display = "block", | |
this.p_query_err.innerText = "You need to paste the video url into the box."), | |
this.pa ? (this.reqq(), | |
this.btn_addvideo.disabled = !1) : (this.div_privnote = this.ytpp.document.getElementById("privacy_notice"), | |
this.div_privnote.style.display = "block", | |
this.btn_acceptpriv = this.ytpp.document.getElementById("accept_priv"), | |
this.btn_acceptpriv.onclick = this.acceptpriv.bind(this)) | |
} | |
, | |
fc_youtube.prototype.pp_resize = function() { | |
this.div_sresult.style.height = this.div_qpopup.clientHeight - this.div_sresult.offsetTop - 10 + "px", | |
this.div_queue.style.height = this.div_qpopup.clientHeight - this.div_queue.offsetTop - 10 + "px" | |
} | |
, | |
fc_youtube.prototype.pp_ytbr = function(t) { | |
this.pa ? (this.YT = this.ytpp.getYT(), | |
this.player = new this.YT.Player("kyt_player",{ | |
videoId: "", | |
playerVars: { | |
autohide: 1, | |
controls: 1, | |
iv_load_policy: 3, | |
modestbranding: 1, | |
origin: "https://www.wechatcity.com" | |
}, | |
events: { | |
onReady: this.ytb_rdy.bind(this), | |
onStateChange: this.ytb_stc.bind(this), | |
onError: this.ytb_err.bind(this) | |
} | |
})) : this.player = null | |
} | |
, | |
fc_youtube.prototype.acceptpriv = function(t) { | |
this.pa = !0, | |
this.div_privnote.style.display = "none", | |
setCookie("accept_youtube_pp", "1", 180), | |
this.reqq(), | |
this.pp_ytbr(t), | |
this.btn_addvideo.disabled = !1 | |
} | |
, | |
fc_youtube.prototype.ytb_rdy = function(t) { | |
this.playstate = "loaded", | |
this.player_cont.style.display = "none", | |
this.setcur(this.cur_start_time, this.cur_video) | |
} | |
, | |
fc_youtube.prototype.ytb_stc = function(t) { | |
switch (t.data) { | |
case -1: | |
this.playstate = "unstarted"; | |
break; | |
case this.YT.PlayerState.ENDED: | |
this.playstate = "ended", | |
this.btn_nextvideo.disabled = !0, | |
this.player_cont.style.display = "none"; | |
break; | |
case this.YT.PlayerState.PLAYING: | |
this.playstate = "playing"; | |
break; | |
case this.YT.PlayerState.PAUSED: | |
this.playstate = "paused"; | |
break; | |
case this.YT.PlayerState.BUFFERING: | |
this.playstate = "buffering"; | |
break; | |
case this.YT.PlayerState.CUED: | |
this.playstate = "cued" | |
} | |
} | |
, | |
fc_youtube.prototype.ytb_err = function(t) {} | |
, | |
fc_youtube.prototype.setcur = function(t, e) { | |
this.cur_start_time = t, | |
this.cur_video = e, | |
"unloaded" !== this.playstate && (t = Date.now() + this.ws.tmdelta, | |
e = Math.floor((t - this.cur_start_time) / 1e3), | |
this.player.loadVideoById(this.cur_video.id, e, "large"), | |
this.player_cont.style.display = "block", | |
this.player.playVideo(), | |
10 < e ? this.setupnb() : (this.btn_nextvideo.disabled = !0, | |
setTimeout(this.setupnb.bind(this), 1e3 * (11 - e)))) | |
} | |
, | |
fc_youtube.prototype.setupnb = function() { | |
var t = Date.now() + this.ws.tmdelta | |
, t = Math.floor((t - this.cur_start_time) / 1e3); | |
(150 <= this.ws.modlvl || this.ws.username === this.cur_video.nm) && 2 < this.table_queue.childElementCount && 10 <= t && null !== this.cur_video ? this.btn_nextvideo.disabled = !1 : this.btn_nextvideo.disabled = !0 | |
} | |
, | |
fc_youtube.prototype.nextv = function(t) { | |
null !== this.cur_video && "number" == typeof this.cur_video.uid && this.ws.sendpbuf(1200455, this.pb.roots.default.fc.p_1200455.encode({ | |
cuid: this.cur_video.uid | |
}, null).finish()) | |
} | |
, | |
fc_youtube.prototype.openq = function(t) { | |
this.div_qpopup.style.display = "block", | |
this.div_qpopupbg.style.display = "block" | |
} | |
, | |
fc_youtube.prototype.closeq = function(t) { | |
this.div_qpopup.style.display = "none", | |
this.div_qpopupbg.style.display = "none" | |
} | |
, | |
fc_youtube.prototype.s_keydown = function(t) { | |
13 === t.keyCode && 0 < this.text_search.value.length && this.search(this.text_search.value, "", "") | |
} | |
, | |
fc_youtube.prototype.s_click = function(t) { | |
0 < this.text_search.value.length && this.search(this.text_search.value, "", "") | |
} | |
, | |
fc_youtube.prototype.search = function(t, e, n) { | |
this.clear_sr(), | |
this.open_sr(), | |
this.ws.isguest ? this.span_sresulttext.innerText = "You must login to search YouTube" : this.ws.pol_allowyoutube ? (this.span_sresulttext.innerText = "Searching", | |
this.div_sresultload.style.display = "block", | |
this.search_cb(t, e, n, this.searchr.bind(this))) : this.span_sresulttext.innerText = "YouTube has been disabled" | |
} | |
, | |
fc_youtube.prototype.searchr = function(t, e) { | |
this.div_sresultload.style.display = "none", | |
200 !== e ? this.span_sresulttext.innerText = "Network Error, try later" : t.hasOwnProperty("error") ? this.span_sresulttext.innerText = "Error, please log back in" : t.hasOwnProperty("results") && (1 < t.results.se.length ? this.span_sresulttext.innerText = t.results.se : (this.span_sresulttext.innerText = "Search Results", | |
this.dspresults(t.results))) | |
} | |
, | |
fc_youtube.prototype.dspresults = function(t) { | |
for (var e = 0; e < t.v.length; e++) { | |
var n = t.v[e] | |
, i = document.createElement("div") | |
, s = (i.className = "kyt_vid", | |
document.createElement("ul")) | |
, o = (i.appendChild(s), | |
document.createElement("li")) | |
, c = (s.appendChild(o), | |
document.createElement("div")) | |
, r = (c.className = "ytthumb", | |
c.style.backgroundImage = "url('" + n.tn + "')", | |
o.appendChild(c), | |
document.createElement("div")) | |
, r = (r.className = "time", | |
r.innerText = n.l, | |
c.appendChild(r), | |
n.hasOwnProperty("ne") || ((c = document.createElement("button")).className = "kyt_addbtn", | |
c.innerText = "Add Video", | |
c.setAttribute("id", "btn" + n.id), | |
c.setAttribute("data-vid", n.id), | |
c.onclick = this.a_click.bind(this), | |
o.appendChild(c)), | |
document.createElement("li")) | |
, o = (s.appendChild(r), | |
document.createElement("h6")) | |
, c = (o.innerHTML = n.t, | |
r.appendChild(o), | |
document.createElement("p")) | |
, s = (c.innerText = n.pd + " ago - " + n.c + " views", | |
r.appendChild(c), | |
document.createElement("p")) | |
, o = (s.innerHTML = n.d, | |
r.appendChild(s), | |
document.createElement("p")); | |
o.setAttribute("id", "warn" + n.id), | |
o.className = "error", | |
i.appendChild(o), | |
n.hasOwnProperty("ne") && (o.innerText = "THE OWNER OF THIS VIDEO DOES NOT ALLOW EMBEDDING"), | |
this.div_sresult.appendChild(i) | |
} | |
var l, a = document.createElement("div"), u = (a.setAttribute("id", "nav"), | |
t.hasOwnProperty("ppt") && ((u = document.createElement("button")).innerText = "Previous Page", | |
a.appendChild(u), | |
l = this, | |
u.onclick = function() { | |
l.search(t.q, t.ppt, t.r) | |
} | |
), | |
t.hasOwnProperty("npt") && ((u = document.createElement("button")).innerText = "Next Page", | |
a.appendChild(u), | |
l = this, | |
u.onclick = function() { | |
l.search(t.q, t.npt, t.r) | |
} | |
), | |
document.createElement("p")); | |
u.innerText = t.tr + " results", | |
a.appendChild(u), | |
this.div_sresult.appendChild(a), | |
this.pp_resize() | |
} | |
, | |
fc_youtube.prototype.close_sr = function() { | |
this.div_sresultcont.style.display = "none", | |
this.div_queue.style.display = "block", | |
this.pp_resize() | |
} | |
, | |
fc_youtube.prototype.clear_sr = function() { | |
this.div_sresult.innerHTML = "" | |
} | |
, | |
fc_youtube.prototype.open_sr = function() { | |
this.div_sresultcont.style.display = "block", | |
this.div_queue.style.display = "none", | |
this.pp_resize() | |
} | |
, | |
fc_youtube.prototype.a_click = function(t) { | |
var e; | |
this.ws.pol_allowyoutube ? ((e = this.ytpp.document.getElementById("btn" + t.target.dataset.vid)).className = "pending", | |
e.innerHTML = "Wait..", | |
e.disabled = !0, | |
this.queue_cb(t.target.dataset.vid, this.queuer.bind(this))) : this.ytpp.document.getElementById("warn" + t.target.dataset.vid).innerText = "YouTube Disabled!" | |
} | |
, | |
fc_youtube.prototype.queuer = function(t, e) { | |
var n = this.ytpp.document.getElementById("warn" + t.video_id) | |
, i = this.ytpp.document.getElementById("btn" + t.video_id); | |
200 !== e ? n.innerText = "Network error: " + e : t.hasOwnProperty("error") ? n.innerText = "Reload the page" : 0 !== t.ae.length ? (n.innerText = t.ae, | |
i.className = "failed", | |
i.innerHTML = "Failed") : (i.className = "success", | |
i.innerHTML = "Added", | |
this.ws.sendpbuf(1200410, this.pb.roots.default.fc.p_1200410.encode({ | |
uid: t.queue_id | |
}, null).finish())) | |
} | |
, | |
fc_youtube.prototype.qsync = function(t) { | |
if (0 === t.length) { | |
this.table_queue.innerHTML = ""; | |
var e = document.createElement("tr") | |
, n = document.createElement("th"); | |
n.innerText = "Empty Queue", | |
e.appendChild(n), | |
this.table_queue.appendChild(e) | |
} else | |
for (var i = 0; i < t.length; i++) | |
this.qadd(t[i].uid, t[i].nm, t[i].id, t[i].t, t[i].l) | |
} | |
, | |
fc_youtube.prototype.qadd = function(t, e, n, i, s) { | |
var o, c; | |
null === this.ytpp || null === this.table_queue || this.ytpp.closed || (1 === this.table_queue.childElementCount && (this.table_queue.innerHTML = "", | |
c = document.createElement("tr"), | |
(o = document.createElement("th")).innerText = "Username", | |
c.appendChild(o), | |
(o = document.createElement("th")).innerText = "Video", | |
c.appendChild(o), | |
(o = document.createElement("th")).innerText = "Length", | |
c.appendChild(o), | |
this.table_queue.appendChild(c)), | |
(c = document.createElement("tr")).setAttribute("data-uid", t), | |
(o = document.createElement("td")).innerText = e, | |
c.appendChild(o), | |
(o = document.createElement("td")).innerText = i, | |
c.appendChild(o), | |
(o = document.createElement("td")).innerText = s, | |
c.appendChild(o), | |
this.table_queue.appendChild(c), | |
this.setupnb()) | |
} | |
, | |
fc_youtube.prototype.qdel = function(t) { | |
if (null !== this.ytpp && null !== this.table_queue && !this.ytpp.closed) { | |
if (1 < this.table_queue.childElementCount) | |
for (var e = 1; e < this.table_queue.rows.length; e++) | |
this.table_queue.rows[e].dataset.uid.toString() === t.toString() && this.table_queue.deleteRow(e); | |
var n, i; | |
1 === this.table_queue.childElementCount && (this.table_queue.innerHTML = "", | |
n = document.createElement("tr"), | |
(i = document.createElement("th")).innerText = "Empty Queue", | |
n.appendChild(i), | |
this.table_queue.appendChild(n)) | |
} | |
} | |
, | |
fc_youtube.prototype.au_keydown = function(t) { | |
13 === t.keyCode && 0 < this.text_addurl.value.length && this.addurl(this.text_addurl.value) | |
} | |
, | |
fc_youtube.prototype.au_click = function(t) { | |
0 < this.text_addurl.value.length && this.addurl(this.text_addurl.value) | |
} | |
, | |
fc_youtube.prototype.addurl = function(t) { | |
this.ws.isguest ? this.p_query_err.innerText = "You must login to add videos" : (this.p_query_err.innerText = "Adding video", | |
this.div_sresultload.style.display = "block", | |
this.queue_cb(t, this.addurlr.bind(this))) | |
} | |
, | |
fc_youtube.prototype.addurlr = function(t, e) { | |
this.div_sresultload.style.display = "none", | |
200 !== e ? this.p_query_err.innerText = "Network Error " + e : t.hasOwnProperty("error") ? this.p_query_err.innerText = "Please log back in" : 0 !== t.ae.length ? this.p_query_err.innerText = t.ae : (this.p_query_err.innerText = "", | |
this.ws.sendpbuf(1200410, this.pb.roots.default.fc.p_1200410.encode({ | |
uid: t.queue_id | |
}, null).finish())) | |
} | |
, | |
fc.prototype.dockeydown = function(t) { | |
this.status.act() | |
} | |
, | |
fc.prototype.docmousemove = function(t) { | |
this.status.act(), | |
this.wndctrl.docmousemove(t.pageX, t.pageY) | |
} | |
, | |
fc.prototype.doctouchmove = function(t) { | |
this.status.act(); | |
var e = t.targetTouches[0]; | |
this.wndctrl.docmousemove(e.pageX, e.pageY), | |
null !== this.wndctrl.drag_wnd && t.preventDefault() | |
} | |
, | |
fc.prototype.docmousedown = function(t) { | |
this.wndctrl.stealfocus(null) | |
} | |
, | |
fc.prototype.docmouseup = function(t) { | |
this.status.act(), | |
this.wndctrl.docmouseup() | |
} | |
, | |
fc.prototype.docresize = function() { | |
var t, e; | |
e = ("mobile" === this.mode ? t = "landscape" === window.getComputedStyle(this.elem).getPropertyValue("--fc-orientation") ? (this.gridcams.style.height = this.lo.elem.clientHeight + "px", | |
this.elem.clientHeight - this.gridtopic.clientHeight) : (this.gridcams.style.height = this.lo.elem.clientHeight + "px", | |
this.elem.clientHeight - (this.gridcams.clientHeight + this.gridtopic.clientHeight)) : "swf" === this.mode ? (clearTimeout(this.step_timeout), | |
this.gridcams.style.height = this.lo.elem.clientHeight + "px", | |
(e = (t = this.elem.clientHeight - (this.gridcams.clientHeight + this.gridtopic.clientHeight)) / this.elem.clientHeight * 100) < 40 ? (this.width_step -= 5, | |
document.getElementById("swf_chat_normal").style.width = this.width_step + "%", | |
this.step_timeout = setTimeout(this.docresize.bind(this), 50)) : 50 < e && 100 !== this.width_step && (this.width_step += 5, | |
100 < this.width_step && (this.width_step = 100), | |
document.getElementById("swf_chat_normal").style.width = this.width_step + "%", | |
this.step_timeout = setTimeout(this.docresize.bind(this), 50))) : (this.gridcams.style.height = this.lo.elem.clientHeight + "px", | |
t = this.elem.clientHeight - (this.gridcams.clientHeight + this.gridtopic.clientHeight)), | |
this.cb.isscrollpinned()), | |
this.gridchat.style.height = t - this.gridtools.clientHeight + "px", | |
this.gridlist.style.height = t + "px", | |
e && this.cb.scrolldown() | |
} | |
, | |
fc.prototype.togulist = function() { | |
"mobile" === this.ws.mode ? "none" === this.ul.elem.style.display ? this.ul.elem.style.display = "block" : this.ul.elem.style.display = "none" : "none" === this.gridlist.style.display ? (this.gridlist.style.display = "block", | |
this.gridchat.style.gridColumn = "1 / 4", | |
this.gridtools.style.gridColumn = "1 / 4") : (this.gridlist.style.display = "none", | |
this.gridchat.style.gridColumn = "1 / 5", | |
this.gridtools.style.gridColumn = "1 / 5") | |
} | |
, | |
fc.prototype.showfc = function() { | |
this.elem.style.pointerEvents = "auto", | |
this.msk.elem.style.opacity = 0, | |
this.elem.style.opacity = 1 | |
} | |
, | |
fc.prototype.showmsk = function() { | |
this.elem.style.pointerEvents = "none", | |
this.elem.style.opacity = 0, | |
this.msk.elem.style.opacity = 1 | |
} | |
, | |
fc.prototype.umopen = function(t) { | |
let e = this.ul.gubuid(parseInt(t.target.dataset.uuid)); | |
null !== (e = null === e ? this.ul.gubuid_left(parseInt(t.target.dataset.uuid)) : e) && this.um.open(t.pageX - this.elem.offsetLeft, t.pageY - this.elem.offsetTop, e.uuid, e.username, e.modlvl, e.online, e.blocked) | |
} | |
, | |
fc.prototype.ytopen = function(t) { | |
this.ytpl.open() | |
} | |
, | |
fc.prototype.tipshow = function(t) { | |
var e = this.ul.gubuid(parseInt(t.target.dataset.uuid)); | |
this.tip.show(t.pageX - this.elem.offsetLeft, t.pageY - this.elem.offsetTop, { | |
buildtype: "userinfo", | |
user: e | |
}) | |
} | |
, | |
fc.prototype.tipcancel = function(t) { | |
this.tip.cancel() | |
} | |
, | |
fc.prototype.createui = function() { | |
return !this.ui_done && (this.gridcams = document.createElement("div"), | |
this.gridtopic = document.createElement("div"), | |
this.gridchat = document.createElement("div"), | |
this.gridtools = document.createElement("div"), | |
this.gridlist = document.createElement("div"), | |
this.gridcams.className = "gridbox_cams", | |
this.gridtopic.className = "gridbox_topic", | |
this.gridchat.className = "gridbox_chat", | |
this.gridtools.className = "gridbox_tools", | |
this.gridlist.className = "gridbox_list", | |
this.elem.appendChild(this.um.elem), | |
this.elem.appendChild(this.tip.elem), | |
this.gridcams.appendChild(this.lo.elem), | |
this.gridtopic.appendChild(this.tp.elem), | |
this.gridchat.appendChild(this.cb.elem), | |
this.gridtools.appendChild(this.tb.elem), | |
("mobile" === this.ws.mode ? this.elem : this.gridlist).appendChild(this.ul.elem), | |
this.elem.appendChild(this.gridcams), | |
this.elem.appendChild(this.gridtopic), | |
this.elem.appendChild(this.gridchat), | |
this.elem.appendChild(this.gridtools), | |
this.elem.appendChild(this.gridlist), | |
this.ui_done = !0) | |
} | |
, | |
fc.prototype.startband = function(t, e, n, i, s) { | |
this.msk.showbs(t, e, n, i, s), | |
this.showmsk() | |
} | |
, | |
fc.prototype.startdel = function() { | |
this.msk.showds(), | |
this.showmsk() | |
} | |
, | |
fc.prototype.startpass = function() {} | |
, | |
fc.prototype.startnoguest = function() { | |
this.msk.showcs("No Guests", "This room has disabled guests, please login or try again later."), | |
this.showmsk() | |
} | |
, | |
fc.prototype.start = function(t) { | |
this.ws.jty = t, | |
this.t2src_cb(this.t2cb.bind(this)), | |
this.msk.showcs("Ready", "Preparing to join room"), | |
this.showmsk() | |
} | |
, | |
fc.prototype.t2cb = function(t, e) { | |
200 === e ? t.hasOwnProperty("error") ? this.msk.showcs("Error", "Something went wrong, refresh the page, or log back in. Error: " + t.error) : (this.ws.t2 = t.t2, | |
this.ws.t2exp = new Date(t.exp), | |
this.msk.showcs("Connecting", "Connecting to server"), | |
this.ws.start()) : this.msk.showcs("Error", "Something went wrong, refresh the page, or log back in. Status: " + e) | |
} | |
, | |
fc.prototype.wserr = function(t) {} | |
, | |
fc.prototype.wsclose = function(t) { | |
var e, n; | |
if (this.ws.ready = !1, | |
null === this.ws.close_pf) { | |
if (0 < t.reason.length) | |
try { | |
n = this.b64.toByteArray(t.reason) | |
} catch (t) {} | |
} else | |
this.ws.close_pf.code === t.code && this.ws.close_pf.secret === t.reason && (n = this.b64.toByteArray(this.ws.close_pf.reason)), | |
this.ws.close_pf = null; | |
switch (t.code) { | |
case 1002: | |
case 1003: | |
case 1007: | |
case 1008: | |
case 1009: | |
case 1010: | |
case 1011: | |
case 1015: | |
default: | |
this.msk.showcs("RIP IN PIECE", "Lost connection with code " + t.code), | |
this.showmsk(); | |
break; | |
case 1001: | |
"string" == typeof t.reason && -1 !== t.reason.toLowerCase().indexOf("cloudflare") ? this.recon.start() : this.cb.addsys("bye"); | |
break; | |
case 4007: | |
this.msk.showcs("Session Ended", "You have left the room due to joining from another location."), | |
this.showmsk(); | |
break; | |
case 4008: | |
this.msk.showcs("Error", "Your username is already taken in this room"), | |
this.showmsk(); | |
break; | |
case 1e3: | |
case 1005: | |
case 1006: | |
case 1012: | |
case 1013: | |
this.recon.start(); | |
break; | |
case 4001: | |
this.ws.joined && (this.recon.reqt2(), | |
this.recon.start()); | |
break; | |
case 4002: | |
window.location.replace("/"); | |
break; | |
case 4003: | |
null === this.pb.roots.default.fc.c_4003.verify(n) && (e = this.pb.roots.default.fc.c_4003.decode(n).kick, | |
this.msk.showks(e.mnm, e.rsn, e.ls, e.rs), | |
this.showmsk()); | |
break; | |
case 4004: | |
null === this.pb.roots.default.fc.c_4004.verify(n) && (e = this.pb.roots.default.fc.c_4004.decode(n).ban, | |
this.msk.showbs(e.nm, e.exp, e.rs, e.prm, e.rsn), | |
this.showmsk()); | |
break; | |
case 4005: | |
this.msk.showps(), | |
this.showmsk(); | |
break; | |
case 4006: | |
this.msk.showjo(), | |
this.showmsk(); | |
break; | |
case 4009: | |
null === this.pb.roots.default.fc.c_4009.verify(n) && ((e = this.pb.roots.default.fc.c_4009.decode(n)).hasOwnProperty("jth") && (this.ws.jth = e.jth), | |
this.ws.joined ? 0 < e.msg.length && this.cb.addsys(e.msg) : (0 < e.msg.length && this.msk.showws(e.ms, e.msg), | |
this.showmsk()), | |
this.recon.start(e.ms)); | |
break; | |
case 4010: | |
this.msk.showcs("No Guests", "This room has disabled guests, please login or try again later."), | |
this.showmsk(); | |
break; | |
case 4011: | |
this.msk.showcs("Too Many Guests", "This room has too many guests, please login or try again later."), | |
this.showmsk(); | |
break; | |
case 4999: | |
this.ws.joined ? this.cb.addsys("The server has been updated, please refresh the page to continue.") : this.msk.showcs("Updates in progress", "The server and website are being updated, please try again later.") | |
} | |
} | |
, | |
fc.prototype.wsrecv = function(t, e) { | |
switch (t) { | |
case 1100101: | |
null === this.pb.roots.default.fc.p_1100101.verify(e) && (s = this.pb.roots.default.fc.p_1100101.decode(e), | |
this.ws.un = s.un, | |
this.ws.uh = s.uh, | |
this.ws.cheadupdate(), | |
s.pv !== this.ws.pver ? this.ws.close(4999) : (this.msk.showcs("Joining Room", "Received handshake, sending response"), | |
this.ws.sendpbuf(1200102, this.pb.roots.default.fc.p_1200102.encode({ | |
sid: this.ws.sid, | |
tk: this.ws.t2, | |
pw: this.ws.roompass, | |
jo: this.ws.joinover, | |
jth: this.ws.jth, | |
jty: this.ws.jty | |
}, null).finish()), | |
!this.ws.joined && this.ws.joinover && (this.ws.joinover = !1), | |
0 < this.ws.jth.length && (this.ws.jth = ""))); | |
break; | |
case 1100103: | |
null === this.pb.roots.default.fc.p_1100103.verify(e) && (this.ui_done || this.createui(), | |
this.msk.showcs("Joining Room", "Joining the room"), | |
s = this.pb.roots.default.fc.p_1100103.decode(e), | |
this.ws.rn = s.rn, | |
this.ws.cheadupdate(), | |
this.applypolicy(s.rp), | |
this.ws.username = s.nm, | |
this.ws.uuid = s.uuid, | |
this.ws.modlvl = s.ml, | |
this.ws.isguest = s.ig, | |
this.msglimit.updateml(this.ws.modlvl), | |
this.tb.refresh(), | |
this.ws.updatedelta(s.tm), | |
this.status.update(s.nm, s.st), | |
this.tp.set(s.tpc), | |
this.tp.refresh(), | |
this.ul.populate(s.users), | |
this.ul.updgsc(s.gsc), | |
this.lo.setup(s.lo), | |
this.lo.showlist(s.cams, this.ul), | |
this.cb.history(s.rcm, s.mn, this.ul), | |
this.ws.joined ? (this.recon.done(), | |
this.ytpl.reqq()) : (this.recon.cb = this.cb, | |
this.ws.cnf.readjson(s.cnf), | |
this.tb.setfont(this.ws.cnf.get("fc"), this.ws.cnf.get("fs"))), | |
this.ws.ready = !0, | |
this.ws.joined = !0, | |
this.ws.joinover = !0, | |
setTimeout(this.docresize.bind(this), 200), | |
setTimeout(this.showfc.bind(this), 300), | |
this.ws.isguest) && this.tb.mkguest(); | |
break; | |
case 1100104: | |
null === this.pb.roots.default.fc.p_1100104.verify(e) && (s = this.pb.roots.default.fc.p_1100104.decode(e), | |
this.ws.updatedelta(s.tm), | |
this.ul.pingsync(s.pl)); | |
break; | |
case 1100105: | |
null === this.pb.roots.default.fc.p_1100105.verify(e) && (0 === (s = this.pb.roots.default.fc.p_1100105.decode(e)).oruuid ? this.cb.addsys("[INFO]: " + s.msg) : null !== (i = this.pmctrl.getpm(s.oruuid)) && i.info(s.msg)); | |
break; | |
case 1100106: | |
break; | |
case 1100107: | |
var n; | |
null === this.pb.roots.default.fc.p_1100107.verify(e) && (n = { | |
code: (s = this.pb.roots.default.fc.p_1100107.decode(e)).code, | |
reason: s.cr, | |
secret: s.sc | |
}, | |
this.ws.close_pf = n); | |
break; | |
case 1100191: | |
null === this.pb.roots.default.fc.p_1100191.verify(e) && (s = this.pb.roots.default.fc.p_1100191.decode(e), | |
this.applypolicy(s.rp)); | |
break; | |
case 1100210: | |
null === this.pb.roots.default.fc.p_1100210.verify(e) && ((s = this.pb.roots.default.fc.p_1100210.decode(e).user).blk || this.cb.addsys(s.nm + " has joined the room (<a href='/profiles/?uuid=" + s.uuid + "' target='_blank'>View Profile</a>)", s.uuid), | |
this.ul.joinuser(s, !0)); | |
break; | |
case 1100212: | |
null === this.pb.roots.default.fc.p_1100212.verify(e) && (s = this.pb.roots.default.fc.p_1100212.decode(e), | |
this.ul.gubuid(s.uuid).blocked || this.cb.addsys(s.nm + " has left the room", s.uuid), | |
this.ul.leaveuser(s.uuid)); | |
break; | |
case 1100220: | |
null === this.pb.roots.default.fc.p_1100220.verify(e) && (s = this.pb.roots.default.fc.p_1100220.decode(e), | |
this.ul.updgsc(s.gsc)); | |
break; | |
case 1100321: | |
null === this.pb.roots.default.fc.p_1100321.verify(e) && ((s = this.pb.roots.default.fc.p_1100321.decode(e)).sn || 2 !== s.st.lv || this.ul.gubuid(s.uuid).blocked || this.cb.addsys(s.nm + " has gone AFK" + (0 === s.st.msg.length ? "" : " (" + s.st.msg + ")"), s.uuid), | |
this.ul.setstatus(s.nm, s.st), | |
this.status.update(s.nm, s.st)); | |
break; | |
case 1100341: | |
null === this.pb.roots.default.fc.p_1100341.verify(e) && (s = this.pb.roots.default.fc.p_1100341.decode(e), | |
this.ul.blockuser(s.uuid), | |
this.cb.addsys("You have blocked " + s.nm)); | |
break; | |
case 1100343: | |
null === this.pb.roots.default.fc.p_1100343.verify(e) && (s = this.pb.roots.default.fc.p_1100343.decode(e), | |
this.ul.unblockuser(s.uuid), | |
this.cb.addsys("You have unblocked " + s.nm)); | |
break; | |
case 1100411: | |
null === this.pb.roots.default.fc.p_1100411.verify(e) && (s = this.pb.roots.default.fc.p_1100411.decode(e), | |
this.ytpl.qadd(s.v.uid, s.v.nm, s.v.id, s.v.t, s.v.l)); | |
break; | |
case 1100413: | |
null === this.pb.roots.default.fc.p_1100413.verify(e) && (s = this.pb.roots.default.fc.p_1100413.decode(e), | |
this.ytpl.qdel(s.uid)); | |
break; | |
case 1100421: | |
null === this.pb.roots.default.fc.p_1100421.verify(e) && (s = this.pb.roots.default.fc.p_1100421.decode(e), | |
this.ytpl.qsync(s.va)); | |
break; | |
case 1100431: | |
null === this.pb.roots.default.fc.p_1100431.verify(e) && (s = this.pb.roots.default.fc.p_1100431.decode(e), | |
"mobile" !== this.ws.mode && this.ws.pol_allowyoutube && this.cb.addyoutube(s.v.t), | |
"mobile" !== this.ws.mode) && this.ytpl.setcur(s.st, s.v); | |
break; | |
case 1100514: | |
null === this.pb.roots.default.fc.p_1100514.verify(e) && (s = this.pb.roots.default.fc.p_1100514.decode(e).cm, | |
this.cb.addnormal(s.ts, s.snm, s.suuid, s.ml, s.msg, s.clr, s.sz, s.mn), | |
this.playchatsnd()); | |
break; | |
case 1100541: | |
null === this.pb.roots.default.fc.p_1100541.verify(e) && null !== (i = (s = this.pb.roots.default.fc.p_1100541.decode(e).cm).snm !== this.ws.username ? this.pmctrl.getpm(s.suuid) : this.pmctrl.getpm(s.ruuid)) && i.receive(s.ts, s.snm, s.suuid, s.ml, s.msg, s.clr, s.sz); | |
break; | |
case 1100551: | |
null === this.pb.roots.default.fc.p_1100551.verify(e) && (s = this.pb.roots.default.fc.p_1100551.decode(e), | |
this.pmctrl.notifytaka(s.uuid, s.st)); | |
break; | |
case 1100553: | |
null === this.pb.roots.default.fc.p_1100553.verify(e) && (s = this.pb.roots.default.fc.p_1100553.decode(e), | |
this.pmctrl.notifypmblock(s.uuid, s.msg)); | |
break; | |
case 1100571: | |
null === this.pb.roots.default.fc.p_1100571.verify(e) && ((s = this.pb.roots.default.fc.p_1100571.decode(e)).hasOwnProperty("rnm") ? null !== (i = s.snm !== this.ws.username ? this.pmctrl.getpm(s.suuid) : this.pmctrl.getpm(s.ruuid)) && i.receiveme(s.ts, s.snm, s.suuid, s.msg, s.ml, s.my) : (this.cb.addme(s.ts, s.snm, s.suuid, s.msg, s.ml, s.my), | |
this.playchatsnd())); | |
break; | |
case 1100574: | |
var i; | |
null === this.pb.roots.default.fc.p_1100574.verify(e) && (0 < (s = this.pb.roots.default.fc.p_1100574.decode(e)).rnm.length ? null !== (i = s.snm !== this.ws.username ? this.pmctrl.getpm(s.suuid) : this.pmctrl.getpm(s.ruuid)) && i.receiveroll(s.snm, s.suuid, s.di, s.sd, s.rs) : (this.cb.addroll(s.snm, s.suuid, s.di, s.sd, s.rs), | |
this.playchatsnd())); | |
break; | |
case 1100614: | |
null === this.pb.roots.default.fc.p_1100614.verify(e) && (s = this.pb.roots.default.fc.p_1100614.decode(e), | |
this.lo.setup(s.lo), | |
this.cb.addsys(s.nm + " changed the layout"), | |
this.docresize()); | |
break; | |
case 1100811: | |
null === this.pb.roots.default.fc.p_1100811.verify(e) && ((s = this.pb.roots.default.fc.p_1100811.decode(e)).nm === this.ws.username && (this.ws.modlvl = 100, | |
this.msglimit.updateml(this.ws.modlvl), | |
this.tp.refresh(), | |
this.tb.refresh()), | |
this.ul.moduser(s.uuid), | |
this.lo.modchg(s.nm), | |
this.cb.addsys(s.mnm + " modded " + s.nm)); | |
break; | |
case 1100815: | |
null === this.pb.roots.default.fc.p_1100815.verify(e) && ((s = this.pb.roots.default.fc.p_1100815.decode(e)).nm === this.ws.username && (this.ws.modlvl = 0, | |
this.msglimit.updateml(this.ws.modlvl), | |
this.tp.refresh(), | |
this.tb.refresh()), | |
this.ul.unmoduser(s.uuid), | |
this.lo.modchg(s.nm), | |
this.cb.addsys(s.mnm + " unmodded " + s.nm)); | |
break; | |
case 1100821: | |
null === this.pb.roots.default.fc.p_1100821.verify(e) && (s = this.pb.roots.default.fc.p_1100821.decode(e), | |
this.tp.set(s.tpc)); | |
break; | |
case 1100831: | |
null === this.pb.roots.default.fc.p_1100831.verify(e) && (s = this.pb.roots.default.fc.p_1100831.decode(e).kick, | |
this.cb.addsys(s.mnm + " kicked " + s.nm + " from the room for " + this.ws.stohr(s.ls) + " (" + s.stc + "/" + s.stm + " strikes) " + (0 < s.rsn.length ? " (" + s.rsn + ")" : ""))); | |
break; | |
case 1100841: | |
null === this.pb.roots.default.fc.p_1100841.verify(e) && ((s = this.pb.roots.default.fc.p_1100841.decode(e).ban).prm ? this.cb.addsys(s.bnm + " perma banned " + s.nm + " " + (0 < s.rsn.length ? " (" + s.rsn + ")" : "")) : this.cb.addsys(s.bnm + " banned " + s.nm + " for " + this.ws.stohr(s.rs) + (0 < s.rsn.length ? " (" + s.rsn + ")" : ""))); | |
break; | |
case 1100851: | |
null === this.pb.roots.default.fc.p_1100851.verify(e) && (s = this.pb.roots.default.fc.p_1100851.decode(e), | |
this.cb.addsys(s.mnm + " purged " + s.nm), | |
this.cb.purge(s.uuid)); | |
break; | |
case 1100621: | |
null === this.pb.roots.default.fc.p_1100621.verify(e) && (s = this.pb.roots.default.fc.p_1100621.decode(e).cam, | |
this.lo.showcam(s.nm, s.cn, s.cs, this.ul)); | |
break; | |
case 1100627: | |
null === this.pb.roots.default.fc.p_1100627.verify(e) && ((s = this.pb.roots.default.fc.p_1100627.decode(e)).hasOwnProperty("stp") && this.cb.addsys(s.stp.mnm + " stopped your cam for " + this.ws.stohr(s.stp.ls) + " [" + this.ws.stohr(s.stp.rs) + " remaining]" + (0 < s.stp.rsn.length ? " (" + s.stp.rsn + ")" : "")), | |
s.hasOwnProperty("cn")) && this.lo.stopcam(s.cn); | |
break; | |
case 1100631: | |
null === this.pb.roots.default.fc.p_1100631.verify(e) && ((s = this.pb.roots.default.fc.p_1100631.decode(e)).hasOwnProperty("stp") && this.cb.addsys(s.stp.mnm + " stopped " + s.stp.nm + " for " + this.ws.stohr(s.stp.ls) + (0 < s.stp.rsn.length ? " (" + s.stp.rsn + ")" : "")), | |
-1 < s.cn) && this.lo.stopcam(s.cn); | |
break; | |
case 1100635: | |
null === this.pb.roots.default.fc.p_1100635.verify(e) && (s = this.pb.roots.default.fc.p_1100635.decode(e).cam, | |
this.lo.camsrvchg(s.nm, s.cn, s.cs)); | |
break; | |
case 1100711: | |
null === this.pb.roots.default.fc.p_1100711.verify(e) && (s = this.pb.roots.default.fc.p_1100711.decode(e), | |
this.lo.offerreq(s.cn, s.ti)); | |
break; | |
case 1100723: | |
null === this.pb.roots.default.fc.p_1100723.verify(e) && (s = this.pb.roots.default.fc.p_1100723.decode(e).sdp, | |
this.lo.offer(s.cn, s.ti, s.dsc)); | |
break; | |
case 1100735: | |
null === this.pb.roots.default.fc.p_1100735.verify(e) && (s = this.pb.roots.default.fc.p_1100735.decode(e).sdp, | |
this.lo.answer(s.cn, s.ti, s.dsc)); | |
break; | |
case 1100747: | |
null === this.pb.roots.default.fc.p_1100747.verify(e) && (s = this.pb.roots.default.fc.p_1100747.decode(e), | |
this.lo.ice(s.cn, s.ti, s.cnd)); | |
break; | |
case 1100798: | |
null === this.pb.roots.default.fc.p_1100798.verify(e) && (s = this.pb.roots.default.fc.p_1100798.decode(e), | |
this.lo.close(s.cn, s.ti)); | |
break; | |
case 1100881: | |
var s; | |
null === this.pb.roots.default.fc.p_1100881.verify(e) && (s = this.pb.roots.default.fc.p_1100881.decode(e), | |
this.cb.purge(s.uuid), | |
this.pmctrl.closeuuid(s.uuid)) | |
} | |
} | |
, | |
fc.prototype.applypolicy = function(t) { | |
this.ws.policyupdate(t), | |
this.wndpolicy.set(), | |
this.tp.refresh(), | |
this.lo.modchg(this.ws.username), | |
this.tb.toglyt(), | |
this.ul.enguest() | |
} | |
, | |
fc.prototype.applysetting = function(t, e) { | |
switch (t) { | |
case "pb": | |
this.pmctrl.enblockpm(1 === e); | |
break; | |
case "pt": | |
this.pmctrl.entaka(1 === e); | |
break; | |
case "ai": | |
this.status.enautoidle(1 === e); | |
break; | |
case "sc": | |
this.enchatsnd(1 === e); | |
break; | |
case "sp": | |
this.pmctrl.enrecvsnd(1 === e) | |
} | |
} | |
, | |
fc.prototype.enchatsnd = function(t) { | |
t ? (this.chatsnd = [], | |
this.chatsnd.push(new Audio("/sounds/pop02_1.ogg")), | |
this.chatsnd.push(new Audio("/sounds/pop02_1.ogg")), | |
this.chatsnd.push(new Audio("/sounds/pop02_1.ogg"))) : this.chatsnd = null | |
} | |
, | |
fc.prototype.playchatsnd = function() { | |
null !== this.chatsnd && (this.chatsnd[this.chatsndcnt].play(), | |
this.chatsnd[this.chatsndcnt].currentTime = 0, | |
this.chatsndcnt++, | |
this.chatsndcnt >= this.chatsnd.length) && (this.chatsndcnt = 0) | |
} | |
, | |
fc.prototype.checkcompat = function() { | |
if (!window.WebSocket) | |
return "WebSocket not supported by your browser."; | |
if (!window.RTCPeerConnection) | |
return "RTCPeerConnection not supported by your browser."; | |
try { | |
window.AudioContext = window.AudioContext || window.webkitAudioContext, | |
window.audioContext = new AudioContext | |
} catch (t) { | |
return "AudioContext is not supported in this browser (required for volume activity monitors)." | |
} | |
return null | |
} | |
, | |
function(t) { | |
var c = t.Reader | |
, i = t.Writer | |
, s = t.util | |
, r = t.roots.default || (t.roots.default = {}); | |
function e(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function n(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function o(t) { | |
if (this.users = [], | |
this.cams = [], | |
this.rcm = [], | |
t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function l(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function a(t) { | |
if (this.pl = [], | |
t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function u(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function M(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function H(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function h(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function B(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function q(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function D(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function R(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function p(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function d(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Y(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function W(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function U(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function V(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function K(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function F(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function G(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function J(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function X(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Q(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Z(t) { | |
if (this.va = [], | |
t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function $(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function tt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function et(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function nt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function m(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function it(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function st(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function ot(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function ct(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function rt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function lt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function at(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function ut(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function f(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function b(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function y(t) { | |
if (this.rs = [], | |
t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function ht(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function pt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function dt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function mt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function ft(t) { | |
if (this.kv = [], | |
t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function bt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function yt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function _t(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function _(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function gt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function wt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function g(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function vt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function w(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function v(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function k(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function kt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function xt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Ot(t) { | |
if (this.sdp = [], | |
t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function jt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Pt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Ct(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function x(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function O(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function j(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function P(t) { | |
if (this.cnd = [], | |
t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function C(t) { | |
if (this.cnd = [], | |
t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Tt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Et(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function T(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function It(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Lt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function E(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Nt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function I(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function St(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function zt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function L(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function At(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function N(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Mt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Ht(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function S(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Bt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function z(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function qt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Dt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Rt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Yt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function Wt(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
function A(t) { | |
if (t) | |
for (var e = Object.keys(t), n = 0; n < e.length; ++n) | |
null != t[e[n]] && (this[e[n]] = t[e[n]]) | |
} | |
r.fc = ((t = {}).p_1100101 = (e.prototype.un = 0, | |
e.prototype.uh = 0, | |
e.prototype.pv = 0, | |
e.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.un && Object.hasOwnProperty.call(t, "un") && e.uint32(8).int32(t.un), | |
null != t.uh && Object.hasOwnProperty.call(t, "uh") && e.uint32(16).int32(t.uh), | |
null != t.pv && Object.hasOwnProperty.call(t, "pv") && e.uint32(24).int32(t.pv), | |
e | |
} | |
, | |
e.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100101; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.un = t.int32(); | |
break; | |
case 2: | |
i.uh = t.int32(); | |
break; | |
case 3: | |
i.pv = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
e.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.un && t.hasOwnProperty("un") && !s.isInteger(t.un) ? "un: integer expected" : null != t.uh && t.hasOwnProperty("uh") && !s.isInteger(t.uh) ? "uh: integer expected" : null != t.pv && t.hasOwnProperty("pv") && !s.isInteger(t.pv) ? "pv: integer expected" : null | |
} | |
, | |
e), | |
t.p_1200102 = (n.prototype.sid = "", | |
n.prototype.tk = "", | |
n.prototype.pw = "", | |
n.prototype.jo = !1, | |
n.prototype.jth = "", | |
n.prototype.jty = 0, | |
n.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.sid && Object.hasOwnProperty.call(t, "sid") && e.uint32(10).string(t.sid), | |
null != t.tk && Object.hasOwnProperty.call(t, "tk") && e.uint32(18).string(t.tk), | |
null != t.pw && Object.hasOwnProperty.call(t, "pw") && e.uint32(26).string(t.pw), | |
null != t.jo && Object.hasOwnProperty.call(t, "jo") && e.uint32(32).bool(t.jo), | |
null != t.jth && Object.hasOwnProperty.call(t, "jth") && e.uint32(42).string(t.jth), | |
null != t.jty && Object.hasOwnProperty.call(t, "jty") && e.uint32(48).int32(t.jty), | |
e | |
} | |
, | |
n.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200102; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.sid = t.string(); | |
break; | |
case 2: | |
i.tk = t.string(); | |
break; | |
case 3: | |
i.pw = t.string(); | |
break; | |
case 4: | |
i.jo = t.bool(); | |
break; | |
case 5: | |
i.jth = t.string(); | |
break; | |
case 6: | |
i.jty = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
n.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.sid && t.hasOwnProperty("sid") && !s.isString(t.sid) ? "sid: string expected" : null != t.tk && t.hasOwnProperty("tk") && !s.isString(t.tk) ? "tk: string expected" : null != t.pw && t.hasOwnProperty("pw") && !s.isString(t.pw) ? "pw: string expected" : null != t.jo && t.hasOwnProperty("jo") && "boolean" != typeof t.jo ? "jo: boolean expected" : null != t.jth && t.hasOwnProperty("jth") && !s.isString(t.jth) ? "jth: string expected" : null != t.jty && t.hasOwnProperty("jty") && !s.isInteger(t.jty) ? "jty: integer expected" : null | |
} | |
, | |
n), | |
t.p_1100103 = (o.prototype.rn = 0, | |
o.prototype.lo = 0, | |
o.prototype.mn = 0, | |
o.prototype.gsc = 0, | |
o.prototype.pkc = 0, | |
o.prototype.tlc = 0, | |
o.prototype.tm = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
o.prototype.nm = "", | |
o.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
o.prototype.tpc = "", | |
o.prototype.ml = 0, | |
o.prototype.ig = !1, | |
o.prototype.st = null, | |
o.prototype.cnf = "", | |
o.prototype.users = s.emptyArray, | |
o.prototype.cams = s.emptyArray, | |
o.prototype.rcm = s.emptyArray, | |
o.prototype.rp = null, | |
o.encode = function(t, e) { | |
if (e = e || i.create(), | |
null != t.rn && Object.hasOwnProperty.call(t, "rn") && e.uint32(8).int32(t.rn), | |
null != t.lo && Object.hasOwnProperty.call(t, "lo") && e.uint32(16).int32(t.lo), | |
null != t.mn && Object.hasOwnProperty.call(t, "mn") && e.uint32(24).int32(t.mn), | |
null != t.gsc && Object.hasOwnProperty.call(t, "gsc") && e.uint32(32).int32(t.gsc), | |
null != t.pkc && Object.hasOwnProperty.call(t, "pkc") && e.uint32(40).int32(t.pkc), | |
null != t.tlc && Object.hasOwnProperty.call(t, "tlc") && e.uint32(48).int32(t.tlc), | |
null != t.tm && Object.hasOwnProperty.call(t, "tm") && e.uint32(56).int64(t.tm), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(66).string(t.nm), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(72).int64(t.uuid), | |
null != t.tpc && Object.hasOwnProperty.call(t, "tpc") && e.uint32(82).string(t.tpc), | |
null != t.ml && Object.hasOwnProperty.call(t, "ml") && e.uint32(88).int32(t.ml), | |
null != t.ig && Object.hasOwnProperty.call(t, "ig") && e.uint32(96).bool(t.ig), | |
null != t.st && Object.hasOwnProperty.call(t, "st") && r.fc.Status.encode(t.st, e.uint32(106).fork()).ldelim(), | |
null != t.cnf && Object.hasOwnProperty.call(t, "cnf") && e.uint32(114).string(t.cnf), | |
null != t.users && t.users.length) | |
for (var n = 0; n < t.users.length; ++n) | |
r.fc.User.encode(t.users[n], e.uint32(122).fork()).ldelim(); | |
if (null != t.cams && t.cams.length) | |
for (n = 0; n < t.cams.length; ++n) | |
r.fc.Cam.encode(t.cams[n], e.uint32(130).fork()).ldelim(); | |
if (null != t.rcm && t.rcm.length) | |
for (n = 0; n < t.rcm.length; ++n) | |
r.fc.ChatMsg.encode(t.rcm[n], e.uint32(138).fork()).ldelim(); | |
return null != t.rp && Object.hasOwnProperty.call(t, "rp") && r.fc.Policy.encode(t.rp, e.uint32(146).fork()).ldelim(), | |
e | |
} | |
, | |
o.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100103; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.rn = t.int32(); | |
break; | |
case 2: | |
i.lo = t.int32(); | |
break; | |
case 3: | |
i.mn = t.int32(); | |
break; | |
case 4: | |
i.gsc = t.int32(); | |
break; | |
case 5: | |
i.pkc = t.int32(); | |
break; | |
case 6: | |
i.tlc = t.int32(); | |
break; | |
case 7: | |
i.tm = t.int64(); | |
break; | |
case 8: | |
i.nm = t.string(); | |
break; | |
case 9: | |
i.uuid = t.int64(); | |
break; | |
case 10: | |
i.tpc = t.string(); | |
break; | |
case 11: | |
i.ml = t.int32(); | |
break; | |
case 12: | |
i.ig = t.bool(); | |
break; | |
case 13: | |
i.st = r.fc.Status.decode(t, t.uint32()); | |
break; | |
case 14: | |
i.cnf = t.string(); | |
break; | |
case 15: | |
i.users && i.users.length || (i.users = []), | |
i.users.push(r.fc.User.decode(t, t.uint32())); | |
break; | |
case 16: | |
i.cams && i.cams.length || (i.cams = []), | |
i.cams.push(r.fc.Cam.decode(t, t.uint32())); | |
break; | |
case 17: | |
i.rcm && i.rcm.length || (i.rcm = []), | |
i.rcm.push(r.fc.ChatMsg.decode(t, t.uint32())); | |
break; | |
case 18: | |
i.rp = r.fc.Policy.decode(t, t.uint32()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
o.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.rn && t.hasOwnProperty("rn") && !s.isInteger(t.rn)) | |
return "rn: integer expected"; | |
if (null != t.lo && t.hasOwnProperty("lo") && !s.isInteger(t.lo)) | |
return "lo: integer expected"; | |
if (null != t.mn && t.hasOwnProperty("mn") && !s.isInteger(t.mn)) | |
return "mn: integer expected"; | |
if (null != t.gsc && t.hasOwnProperty("gsc") && !s.isInteger(t.gsc)) | |
return "gsc: integer expected"; | |
if (null != t.pkc && t.hasOwnProperty("pkc") && !s.isInteger(t.pkc)) | |
return "pkc: integer expected"; | |
if (null != t.tlc && t.hasOwnProperty("tlc") && !s.isInteger(t.tlc)) | |
return "tlc: integer expected"; | |
if (null != t.tm && t.hasOwnProperty("tm") && !(s.isInteger(t.tm) || t.tm && s.isInteger(t.tm.low) && s.isInteger(t.tm.high))) | |
return "tm: integer|Long expected"; | |
if (null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm)) | |
return "nm: string expected"; | |
if (null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high))) | |
return "uuid: integer|Long expected"; | |
if (null != t.tpc && t.hasOwnProperty("tpc") && !s.isString(t.tpc)) | |
return "tpc: string expected"; | |
if (null != t.ml && t.hasOwnProperty("ml") && !s.isInteger(t.ml)) | |
return "ml: integer expected"; | |
if (null != t.ig && t.hasOwnProperty("ig") && "boolean" != typeof t.ig) | |
return "ig: boolean expected"; | |
if (null != t.st && t.hasOwnProperty("st") && (n = r.fc.Status.verify(t.st))) | |
return "st." + n; | |
if (null != t.cnf && t.hasOwnProperty("cnf") && !s.isString(t.cnf)) | |
return "cnf: string expected"; | |
if (null != t.users && t.hasOwnProperty("users")) { | |
if (!Array.isArray(t.users)) | |
return "users: array expected"; | |
for (var e = 0; e < t.users.length; ++e) | |
if (n = r.fc.User.verify(t.users[e])) | |
return "users." + n | |
} | |
if (null != t.cams && t.hasOwnProperty("cams")) { | |
if (!Array.isArray(t.cams)) | |
return "cams: array expected"; | |
for (e = 0; e < t.cams.length; ++e) | |
if (n = r.fc.Cam.verify(t.cams[e])) | |
return "cams." + n | |
} | |
if (null != t.rcm && t.hasOwnProperty("rcm")) { | |
if (!Array.isArray(t.rcm)) | |
return "rcm: array expected"; | |
for (var n, e = 0; e < t.rcm.length; ++e) | |
if (n = r.fc.ChatMsg.verify(t.rcm[e])) | |
return "rcm." + n | |
} | |
if (null != t.rp && t.hasOwnProperty("rp") && (n = r.fc.Policy.verify(t.rp))) | |
return "rp." + n; | |
return null | |
} | |
, | |
o), | |
t.User = (l.prototype.un = 0, | |
l.prototype.ml = 0, | |
l.prototype.ping = 0, | |
l.prototype.ct = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
l.prototype.nm = "", | |
l.prototype.blk = !1, | |
l.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
l.prototype.st = null, | |
l.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.un && Object.hasOwnProperty.call(t, "un") && e.uint32(8).int32(t.un), | |
null != t.ml && Object.hasOwnProperty.call(t, "ml") && e.uint32(16).int32(t.ml), | |
null != t.ping && Object.hasOwnProperty.call(t, "ping") && e.uint32(24).int32(t.ping), | |
null != t.ct && Object.hasOwnProperty.call(t, "ct") && e.uint32(32).int64(t.ct), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(42).string(t.nm), | |
null != t.blk && Object.hasOwnProperty.call(t, "blk") && e.uint32(48).bool(t.blk), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(56).int64(t.uuid), | |
null != t.st && Object.hasOwnProperty.call(t, "st") && r.fc.Status.encode(t.st, e.uint32(66).fork()).ldelim(), | |
e | |
} | |
, | |
l.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.User; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.un = t.int32(); | |
break; | |
case 2: | |
i.ml = t.int32(); | |
break; | |
case 3: | |
i.ping = t.int32(); | |
break; | |
case 4: | |
i.ct = t.int64(); | |
break; | |
case 5: | |
i.nm = t.string(); | |
break; | |
case 6: | |
i.blk = t.bool(); | |
break; | |
case 7: | |
i.uuid = t.int64(); | |
break; | |
case 8: | |
i.st = r.fc.Status.decode(t, t.uint32()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
l.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.un && t.hasOwnProperty("un") && !s.isInteger(t.un)) | |
return "un: integer expected"; | |
if (null != t.ml && t.hasOwnProperty("ml") && !s.isInteger(t.ml)) | |
return "ml: integer expected"; | |
if (null != t.ping && t.hasOwnProperty("ping") && !s.isInteger(t.ping)) | |
return "ping: integer expected"; | |
if (null != t.ct && t.hasOwnProperty("ct") && !(s.isInteger(t.ct) || t.ct && s.isInteger(t.ct.low) && s.isInteger(t.ct.high))) | |
return "ct: integer|Long expected"; | |
if (null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm)) | |
return "nm: string expected"; | |
if (null != t.blk && t.hasOwnProperty("blk") && "boolean" != typeof t.blk) | |
return "blk: boolean expected"; | |
if (null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high))) | |
return "uuid: integer|Long expected"; | |
if (null != t.st && t.hasOwnProperty("st")) { | |
t = r.fc.Status.verify(t.st); | |
if (t) | |
return "st." + t | |
} | |
return null | |
} | |
, | |
l), | |
t.p_1100104 = (a.prototype.tm = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
a.prototype.pl = s.emptyArray, | |
a.encode = function(t, e) { | |
if (e = e || i.create(), | |
null != t.tm && Object.hasOwnProperty.call(t, "tm") && e.uint32(8).int64(t.tm), | |
null != t.pl && t.pl.length) | |
for (var n = 0; n < t.pl.length; ++n) | |
r.fc.Ping.encode(t.pl[n], e.uint32(18).fork()).ldelim(); | |
return e | |
} | |
, | |
a.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100104; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.tm = t.int64(); | |
break; | |
case 2: | |
i.pl && i.pl.length || (i.pl = []), | |
i.pl.push(r.fc.Ping.decode(t, t.uint32())); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
a.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.tm && t.hasOwnProperty("tm") && !(s.isInteger(t.tm) || t.tm && s.isInteger(t.tm.low) && s.isInteger(t.tm.high))) | |
return "tm: integer|Long expected"; | |
if (null != t.pl && t.hasOwnProperty("pl")) { | |
if (!Array.isArray(t.pl)) | |
return "pl: array expected"; | |
for (var e = 0; e < t.pl.length; ++e) { | |
var n = r.fc.Ping.verify(t.pl[e]); | |
if (n) | |
return "pl." + n | |
} | |
} | |
return null | |
} | |
, | |
a), | |
t.Ping = (u.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
u.prototype.ping = 0, | |
u.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
null != t.ping && Object.hasOwnProperty.call(t, "ping") && e.uint32(16).int32(t.ping), | |
e | |
} | |
, | |
u.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.Ping; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.uuid = t.int64(); | |
break; | |
case 2: | |
i.ping = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
u.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null != t.ping && t.hasOwnProperty("ping") && !s.isInteger(t.ping) ? "ping: integer expected" : null | |
} | |
, | |
u), | |
t.p_1100105 = (M.prototype.oruuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
M.prototype.msg = "", | |
M.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.oruuid && Object.hasOwnProperty.call(t, "oruuid") && e.uint32(8).int64(t.oruuid), | |
null != t.msg && Object.hasOwnProperty.call(t, "msg") && e.uint32(18).string(t.msg), | |
e | |
} | |
, | |
M.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100105; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.oruuid = t.int64(); | |
break; | |
case 2: | |
i.msg = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
M.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.oruuid && t.hasOwnProperty("oruuid") && !(s.isInteger(t.oruuid) || t.oruuid && s.isInteger(t.oruuid.low) && s.isInteger(t.oruuid.high)) ? "oruuid: integer|Long expected" : null != t.msg && t.hasOwnProperty("msg") && !s.isString(t.msg) ? "msg: string expected" : null | |
} | |
, | |
M), | |
t.p_1100106 = (H.prototype.msg = "", | |
H.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.msg && Object.hasOwnProperty.call(t, "msg") && e.uint32(10).string(t.msg), | |
e | |
} | |
, | |
H.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100106; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.msg = t.string() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
H.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.msg && t.hasOwnProperty("msg") && !s.isString(t.msg) ? "msg: string expected" : null | |
} | |
, | |
H), | |
t.p_1100107 = (h.prototype.code = 0, | |
h.prototype.cr = "", | |
h.prototype.sc = "", | |
h.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.code && Object.hasOwnProperty.call(t, "code") && e.uint32(8).int32(t.code), | |
null != t.cr && Object.hasOwnProperty.call(t, "cr") && e.uint32(18).string(t.cr), | |
null != t.sc && Object.hasOwnProperty.call(t, "sc") && e.uint32(26).string(t.sc), | |
e | |
} | |
, | |
h.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100107; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.code = t.int32(); | |
break; | |
case 2: | |
i.cr = t.string(); | |
break; | |
case 3: | |
i.sc = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
h.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.code && t.hasOwnProperty("code") && !s.isInteger(t.code) ? "code: integer expected" : null != t.cr && t.hasOwnProperty("cr") && !s.isString(t.cr) ? "cr: string expected" : null != t.sc && t.hasOwnProperty("sc") && !s.isString(t.sc) ? "sc: string expected" : null | |
} | |
, | |
h), | |
t.p_1100210 = (B.prototype.user = null, | |
B.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.user && Object.hasOwnProperty.call(t, "user") && r.fc.User.encode(t.user, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
B.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100210; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.user = r.fc.User.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
B.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.user && t.hasOwnProperty("user")) { | |
t = r.fc.User.verify(t.user); | |
if (t) | |
return "user." + t | |
} | |
return null | |
} | |
, | |
B), | |
t.p_1100212 = (q.prototype.nm = "", | |
q.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
q.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(10).string(t.nm), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(16).int64(t.uuid), | |
e | |
} | |
, | |
q.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100212; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.nm = t.string(); | |
break; | |
case 2: | |
i.uuid = t.int64(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
q.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
q), | |
t.p_1100220 = (D.prototype.gsc = 0, | |
D.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.gsc && Object.hasOwnProperty.call(t, "gsc") && e.uint32(8).int32(t.gsc), | |
e | |
} | |
, | |
D.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100220; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.gsc = t.int32() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
D.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.gsc && t.hasOwnProperty("gsc") && !s.isInteger(t.gsc) ? "gsc: integer expected" : null | |
} | |
, | |
D), | |
t.p_1200311 = (R.prototype.il = !1, | |
R.prototype.tm = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
R.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.il && Object.hasOwnProperty.call(t, "il") && e.uint32(8).bool(t.il), | |
null != t.tm && Object.hasOwnProperty.call(t, "tm") && e.uint32(16).int64(t.tm), | |
e | |
} | |
, | |
R.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200311; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.il = t.bool(); | |
break; | |
case 2: | |
i.tm = t.int64(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
R.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.il && t.hasOwnProperty("il") && "boolean" != typeof t.il ? "il: boolean expected" : null != t.tm && t.hasOwnProperty("tm") && !(s.isInteger(t.tm) || t.tm && s.isInteger(t.tm.low) && s.isInteger(t.tm.high)) ? "tm: integer|Long expected" : null | |
} | |
, | |
R), | |
t.p_1100321 = (p.prototype.nm = "", | |
p.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
p.prototype.sn = !1, | |
p.prototype.st = null, | |
p.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(10).string(t.nm), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(16).int64(t.uuid), | |
null != t.sn && Object.hasOwnProperty.call(t, "sn") && e.uint32(24).bool(t.sn), | |
null != t.st && Object.hasOwnProperty.call(t, "st") && r.fc.Status.encode(t.st, e.uint32(34).fork()).ldelim(), | |
e | |
} | |
, | |
p.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100321; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.nm = t.string(); | |
break; | |
case 2: | |
i.uuid = t.int64(); | |
break; | |
case 3: | |
i.sn = t.bool(); | |
break; | |
case 4: | |
i.st = r.fc.Status.decode(t, t.uint32()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
p.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm)) | |
return "nm: string expected"; | |
if (null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high))) | |
return "uuid: integer|Long expected"; | |
if (null != t.sn && t.hasOwnProperty("sn") && "boolean" != typeof t.sn) | |
return "sn: boolean expected"; | |
if (null != t.st && t.hasOwnProperty("st")) { | |
t = r.fc.Status.verify(t.st); | |
if (t) | |
return "st." + t | |
} | |
return null | |
} | |
, | |
p), | |
t.Status = (d.prototype.lv = 0, | |
d.prototype.ct = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
d.prototype.msg = "", | |
d.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.lv && Object.hasOwnProperty.call(t, "lv") && e.uint32(8).int32(t.lv), | |
null != t.ct && Object.hasOwnProperty.call(t, "ct") && e.uint32(16).int64(t.ct), | |
null != t.msg && Object.hasOwnProperty.call(t, "msg") && e.uint32(26).string(t.msg), | |
e | |
} | |
, | |
d.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.Status; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.lv = t.int32(); | |
break; | |
case 2: | |
i.ct = t.int64(); | |
break; | |
case 3: | |
i.msg = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
d.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.lv && t.hasOwnProperty("lv") && !s.isInteger(t.lv) ? "lv: integer expected" : null != t.ct && t.hasOwnProperty("ct") && !(s.isInteger(t.ct) || t.ct && s.isInteger(t.ct.low) && s.isInteger(t.ct.high)) ? "ct: integer|Long expected" : null != t.msg && t.hasOwnProperty("msg") && !s.isString(t.msg) ? "msg: string expected" : null | |
} | |
, | |
d), | |
t.p_1200331 = (Y.prototype.cnf = "", | |
Y.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cnf && Object.hasOwnProperty.call(t, "cnf") && e.uint32(10).string(t.cnf), | |
e | |
} | |
, | |
Y.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200331; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cnf = t.string() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Y.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cnf && t.hasOwnProperty("cnf") && !s.isString(t.cnf) ? "cnf: string expected" : null | |
} | |
, | |
Y), | |
t.p_1200341 = (W.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
W.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
e | |
} | |
, | |
W.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200341; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uuid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
W.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
W), | |
t.p_1100341 = (U.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
U.prototype.nm = "", | |
U.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
e | |
} | |
, | |
U.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100341; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.uuid = t.int64(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
U.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null | |
} | |
, | |
U), | |
t.p_1200343 = (V.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
V.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
e | |
} | |
, | |
V.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200343; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uuid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
V.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
V), | |
t.p_1100343 = (K.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
K.prototype.nm = "", | |
K.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
e | |
} | |
, | |
K.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100343; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.uuid = t.int64(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
K.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null | |
} | |
, | |
K), | |
t.p_1200410 = (F.prototype.uid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
F.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uid && Object.hasOwnProperty.call(t, "uid") && e.uint32(8).int64(t.uid), | |
e | |
} | |
, | |
F.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200410; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
F.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uid && t.hasOwnProperty("uid") && !(s.isInteger(t.uid) || t.uid && s.isInteger(t.uid.low) && s.isInteger(t.uid.high)) ? "uid: integer|Long expected" : null | |
} | |
, | |
F), | |
t.p_1100411 = (G.prototype.v = null, | |
G.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.v && Object.hasOwnProperty.call(t, "v") && r.fc.YTVideo.encode(t.v, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
G.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100411; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.v = r.fc.YTVideo.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
G.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.v && t.hasOwnProperty("v")) { | |
t = r.fc.YTVideo.verify(t.v); | |
if (t) | |
return "v." + t | |
} | |
return null | |
} | |
, | |
G), | |
t.p_1200412 = (J.prototype.uid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
J.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uid && Object.hasOwnProperty.call(t, "uid") && e.uint32(8).int64(t.uid), | |
e | |
} | |
, | |
J.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200412; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
J.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uid && t.hasOwnProperty("uid") && !(s.isInteger(t.uid) || t.uid && s.isInteger(t.uid.low) && s.isInteger(t.uid.high)) ? "uid: integer|Long expected" : null | |
} | |
, | |
J), | |
t.p_1100413 = (X.prototype.uid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
X.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uid && Object.hasOwnProperty.call(t, "uid") && e.uint32(8).int64(t.uid), | |
e | |
} | |
, | |
X.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100413; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
X.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uid && t.hasOwnProperty("uid") && !(s.isInteger(t.uid) || t.uid && s.isInteger(t.uid.low) && s.isInteger(t.uid.high)) ? "uid: integer|Long expected" : null | |
} | |
, | |
X), | |
t.p_1200420 = (Q.encode = function(t, e) { | |
return e = e || i.create() | |
} | |
, | |
Q.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, e = new r.fc.p_1200420; t.pos < n; ) { | |
var i = t.uint32(); | |
t.skipType(7 & i) | |
} | |
return e | |
} | |
, | |
Q.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null | |
} | |
, | |
Q), | |
t.p_1100421 = (Z.prototype.va = s.emptyArray, | |
Z.encode = function(t, e) { | |
if (e = e || i.create(), | |
null != t.va && t.va.length) | |
for (var n = 0; n < t.va.length; ++n) | |
r.fc.YTVideo.encode(t.va[n], e.uint32(10).fork()).ldelim(); | |
return e | |
} | |
, | |
Z.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100421; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? (i.va && i.va.length || (i.va = []), | |
i.va.push(r.fc.YTVideo.decode(t, t.uint32()))) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Z.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.va && t.hasOwnProperty("va")) { | |
if (!Array.isArray(t.va)) | |
return "va: array expected"; | |
for (var e = 0; e < t.va.length; ++e) { | |
var n = r.fc.YTVideo.verify(t.va[e]); | |
if (n) | |
return "va." + n | |
} | |
} | |
return null | |
} | |
, | |
Z), | |
t.p_1200430 = ($.encode = function(t, e) { | |
return e = e || i.create() | |
} | |
, | |
$.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, e = new r.fc.p_1200430; t.pos < n; ) { | |
var i = t.uint32(); | |
t.skipType(7 & i) | |
} | |
return e | |
} | |
, | |
$.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null | |
} | |
, | |
$), | |
t.p_1100431 = (tt.prototype.st = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
tt.prototype.v = null, | |
tt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.st && Object.hasOwnProperty.call(t, "st") && e.uint32(8).int64(t.st), | |
null != t.v && Object.hasOwnProperty.call(t, "v") && r.fc.YTVideo.encode(t.v, e.uint32(18).fork()).ldelim(), | |
e | |
} | |
, | |
tt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100431; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.st = t.int64(); | |
break; | |
case 2: | |
i.v = r.fc.YTVideo.decode(t, t.uint32()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
tt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.st && t.hasOwnProperty("st") && !(s.isInteger(t.st) || t.st && s.isInteger(t.st.low) && s.isInteger(t.st.high))) | |
return "st: integer|Long expected"; | |
if (null != t.v && t.hasOwnProperty("v")) { | |
t = r.fc.YTVideo.verify(t.v); | |
if (t) | |
return "v." + t | |
} | |
return null | |
} | |
, | |
tt), | |
t.p_1200450 = (et.encode = function(t, e) { | |
return e = e || i.create() | |
} | |
, | |
et.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, e = new r.fc.p_1200450; t.pos < n; ) { | |
var i = t.uint32(); | |
t.skipType(7 & i) | |
} | |
return e | |
} | |
, | |
et.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null | |
} | |
, | |
et), | |
t.p_1200455 = (nt.prototype.cuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
nt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cuid && Object.hasOwnProperty.call(t, "cuid") && e.uint32(8).int64(t.cuid), | |
e | |
} | |
, | |
nt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200455; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cuid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
nt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cuid && t.hasOwnProperty("cuid") && !(s.isInteger(t.cuid) || t.cuid && s.isInteger(t.cuid.low) && s.isInteger(t.cuid.high)) ? "cuid: integer|Long expected" : null | |
} | |
, | |
nt), | |
t.YTVideo = (m.prototype.uid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
m.prototype.id = "", | |
m.prototype.t = "", | |
m.prototype.l = 0, | |
m.prototype.nm = "", | |
m.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uid && Object.hasOwnProperty.call(t, "uid") && e.uint32(8).int64(t.uid), | |
null != t.id && Object.hasOwnProperty.call(t, "id") && e.uint32(18).string(t.id), | |
null != t.t && Object.hasOwnProperty.call(t, "t") && e.uint32(26).string(t.t), | |
null != t.l && Object.hasOwnProperty.call(t, "l") && e.uint32(32).int32(t.l), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(42).string(t.nm), | |
e | |
} | |
, | |
m.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.YTVideo; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.uid = t.int64(); | |
break; | |
case 2: | |
i.id = t.string(); | |
break; | |
case 3: | |
i.t = t.string(); | |
break; | |
case 4: | |
i.l = t.int32(); | |
break; | |
case 5: | |
i.nm = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
m.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uid && t.hasOwnProperty("uid") && !(s.isInteger(t.uid) || t.uid && s.isInteger(t.uid.low) && s.isInteger(t.uid.high)) ? "uid: integer|Long expected" : null != t.id && t.hasOwnProperty("id") && !s.isString(t.id) ? "id: string expected" : null != t.t && t.hasOwnProperty("t") && !s.isString(t.t) ? "t: string expected" : null != t.l && t.hasOwnProperty("l") && !s.isInteger(t.l) ? "l: integer expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null | |
} | |
, | |
m), | |
t.p_1200511 = (it.prototype.cm = null, | |
it.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cm && Object.hasOwnProperty.call(t, "cm") && r.fc.ChatMsg.encode(t.cm, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
it.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200511; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cm = r.fc.ChatMsg.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
it.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cm && t.hasOwnProperty("cm")) { | |
t = r.fc.ChatMsg.verify(t.cm); | |
if (t) | |
return "cm." + t | |
} | |
return null | |
} | |
, | |
it), | |
t.p_1100514 = (st.prototype.cm = null, | |
st.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cm && Object.hasOwnProperty.call(t, "cm") && r.fc.ChatMsg.encode(t.cm, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
st.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100514; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cm = r.fc.ChatMsg.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
st.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cm && t.hasOwnProperty("cm")) { | |
t = r.fc.ChatMsg.verify(t.cm); | |
if (t) | |
return "cm." + t | |
} | |
return null | |
} | |
, | |
st), | |
t.p_1200541 = (ot.prototype.cm = null, | |
ot.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cm && Object.hasOwnProperty.call(t, "cm") && r.fc.ChatMsg.encode(t.cm, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
ot.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200541; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cm = r.fc.ChatMsg.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
ot.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cm && t.hasOwnProperty("cm")) { | |
t = r.fc.ChatMsg.verify(t.cm); | |
if (t) | |
return "cm." + t | |
} | |
return null | |
} | |
, | |
ot), | |
t.p_1100541 = (ct.prototype.cm = null, | |
ct.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cm && Object.hasOwnProperty.call(t, "cm") && r.fc.ChatMsg.encode(t.cm, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
ct.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100541; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cm = r.fc.ChatMsg.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
ct.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cm && t.hasOwnProperty("cm")) { | |
t = r.fc.ChatMsg.verify(t.cm); | |
if (t) | |
return "cm." + t | |
} | |
return null | |
} | |
, | |
ct), | |
t.p_1200551 = (rt.prototype.st = 0, | |
rt.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
rt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.st && Object.hasOwnProperty.call(t, "st") && e.uint32(8).int32(t.st), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(16).int64(t.uuid), | |
e | |
} | |
, | |
rt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200551; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.st = t.int32(); | |
break; | |
case 2: | |
i.uuid = t.int64(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
rt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.st && t.hasOwnProperty("st") && !s.isInteger(t.st) ? "st: integer expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
rt), | |
t.p_1100551 = (lt.prototype.st = 0, | |
lt.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
lt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.st && Object.hasOwnProperty.call(t, "st") && e.uint32(8).int32(t.st), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(16).int64(t.uuid), | |
e | |
} | |
, | |
lt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100551; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.st = t.int32(); | |
break; | |
case 2: | |
i.uuid = t.int64(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
lt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.st && t.hasOwnProperty("st") && !s.isInteger(t.st) ? "st: integer expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
lt), | |
t.p_1200553 = (at.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
at.prototype.msg = "", | |
at.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
null != t.msg && Object.hasOwnProperty.call(t, "msg") && e.uint32(18).string(t.msg), | |
e | |
} | |
, | |
at.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200553; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.uuid = t.int64(); | |
break; | |
case 2: | |
i.msg = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
at.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null != t.msg && t.hasOwnProperty("msg") && !s.isString(t.msg) ? "msg: string expected" : null | |
} | |
, | |
at), | |
t.p_1100553 = (ut.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
ut.prototype.msg = "", | |
ut.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
null != t.msg && Object.hasOwnProperty.call(t, "msg") && e.uint32(18).string(t.msg), | |
e | |
} | |
, | |
ut.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100553; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.uuid = t.int64(); | |
break; | |
case 2: | |
i.msg = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
ut.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null != t.msg && t.hasOwnProperty("msg") && !s.isString(t.msg) ? "msg: string expected" : null | |
} | |
, | |
ut), | |
t.ChatMsg = (f.prototype.mn = 0, | |
f.prototype.sz = 0, | |
f.prototype.ml = 0, | |
f.prototype.ts = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
f.prototype.snm = "", | |
f.prototype.suuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
f.prototype.msg = "", | |
f.prototype.clr = "", | |
f.prototype.rnm = "", | |
f.prototype.ruuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
f.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.mn && Object.hasOwnProperty.call(t, "mn") && e.uint32(8).int32(t.mn), | |
null != t.sz && Object.hasOwnProperty.call(t, "sz") && e.uint32(16).int32(t.sz), | |
null != t.ml && Object.hasOwnProperty.call(t, "ml") && e.uint32(24).int32(t.ml), | |
null != t.ts && Object.hasOwnProperty.call(t, "ts") && e.uint32(32).int64(t.ts), | |
null != t.snm && Object.hasOwnProperty.call(t, "snm") && e.uint32(42).string(t.snm), | |
null != t.suuid && Object.hasOwnProperty.call(t, "suuid") && e.uint32(48).int64(t.suuid), | |
null != t.msg && Object.hasOwnProperty.call(t, "msg") && e.uint32(58).string(t.msg), | |
null != t.clr && Object.hasOwnProperty.call(t, "clr") && e.uint32(66).string(t.clr), | |
null != t.rnm && Object.hasOwnProperty.call(t, "rnm") && e.uint32(74).string(t.rnm), | |
null != t.ruuid && Object.hasOwnProperty.call(t, "ruuid") && e.uint32(80).int64(t.ruuid), | |
e | |
} | |
, | |
f.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.ChatMsg; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.mn = t.int32(); | |
break; | |
case 2: | |
i.sz = t.int32(); | |
break; | |
case 3: | |
i.ml = t.int32(); | |
break; | |
case 4: | |
i.ts = t.int64(); | |
break; | |
case 5: | |
i.snm = t.string(); | |
break; | |
case 6: | |
i.suuid = t.int64(); | |
break; | |
case 7: | |
i.msg = t.string(); | |
break; | |
case 8: | |
i.clr = t.string(); | |
break; | |
case 9: | |
i.rnm = t.string(); | |
break; | |
case 10: | |
i.ruuid = t.int64(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
f.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.mn && t.hasOwnProperty("mn") && !s.isInteger(t.mn) ? "mn: integer expected" : null != t.sz && t.hasOwnProperty("sz") && !s.isInteger(t.sz) ? "sz: integer expected" : null != t.ml && t.hasOwnProperty("ml") && !s.isInteger(t.ml) ? "ml: integer expected" : null != t.ts && t.hasOwnProperty("ts") && !(s.isInteger(t.ts) || t.ts && s.isInteger(t.ts.low) && s.isInteger(t.ts.high)) ? "ts: integer|Long expected" : null != t.snm && t.hasOwnProperty("snm") && !s.isString(t.snm) ? "snm: string expected" : null != t.suuid && t.hasOwnProperty("suuid") && !(s.isInteger(t.suuid) || t.suuid && s.isInteger(t.suuid.low) && s.isInteger(t.suuid.high)) ? "suuid: integer|Long expected" : null != t.msg && t.hasOwnProperty("msg") && !s.isString(t.msg) ? "msg: string expected" : null != t.clr && t.hasOwnProperty("clr") && !s.isString(t.clr) ? "clr: string expected" : null != t.rnm && t.hasOwnProperty("rnm") && !s.isString(t.rnm) ? "rnm: string expected" : null != t.ruuid && t.hasOwnProperty("ruuid") && !(s.isInteger(t.ruuid) || t.ruuid && s.isInteger(t.ruuid.low) && s.isInteger(t.ruuid.high)) ? "ruuid: integer|Long expected" : null | |
} | |
, | |
f), | |
t.p_1100571 = (b.prototype.ts = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
b.prototype.snm = "", | |
b.prototype.suuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
b.prototype.rnm = "", | |
b.prototype.ruuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
b.prototype.msg = "", | |
b.prototype.ml = 0, | |
b.prototype.my = !1, | |
b.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.ts && Object.hasOwnProperty.call(t, "ts") && e.uint32(8).int64(t.ts), | |
null != t.snm && Object.hasOwnProperty.call(t, "snm") && e.uint32(18).string(t.snm), | |
null != t.suuid && Object.hasOwnProperty.call(t, "suuid") && e.uint32(24).int64(t.suuid), | |
null != t.rnm && Object.hasOwnProperty.call(t, "rnm") && e.uint32(34).string(t.rnm), | |
null != t.ruuid && Object.hasOwnProperty.call(t, "ruuid") && e.uint32(40).int64(t.ruuid), | |
null != t.msg && Object.hasOwnProperty.call(t, "msg") && e.uint32(50).string(t.msg), | |
null != t.ml && Object.hasOwnProperty.call(t, "ml") && e.uint32(56).int32(t.ml), | |
null != t.my && Object.hasOwnProperty.call(t, "my") && e.uint32(64).bool(t.my), | |
e | |
} | |
, | |
b.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100571; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.ts = t.int64(); | |
break; | |
case 2: | |
i.snm = t.string(); | |
break; | |
case 3: | |
i.suuid = t.int64(); | |
break; | |
case 4: | |
i.rnm = t.string(); | |
break; | |
case 5: | |
i.ruuid = t.int64(); | |
break; | |
case 6: | |
i.msg = t.string(); | |
break; | |
case 7: | |
i.ml = t.int32(); | |
break; | |
case 8: | |
i.my = t.bool(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
b.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.ts && t.hasOwnProperty("ts") && !(s.isInteger(t.ts) || t.ts && s.isInteger(t.ts.low) && s.isInteger(t.ts.high)) ? "ts: integer|Long expected" : null != t.snm && t.hasOwnProperty("snm") && !s.isString(t.snm) ? "snm: string expected" : null != t.suuid && t.hasOwnProperty("suuid") && !(s.isInteger(t.suuid) || t.suuid && s.isInteger(t.suuid.low) && s.isInteger(t.suuid.high)) ? "suuid: integer|Long expected" : null != t.rnm && t.hasOwnProperty("rnm") && !s.isString(t.rnm) ? "rnm: string expected" : null != t.ruuid && t.hasOwnProperty("ruuid") && !(s.isInteger(t.ruuid) || t.ruuid && s.isInteger(t.ruuid.low) && s.isInteger(t.ruuid.high)) ? "ruuid: integer|Long expected" : null != t.msg && t.hasOwnProperty("msg") && !s.isString(t.msg) ? "msg: string expected" : null != t.ml && t.hasOwnProperty("ml") && !s.isInteger(t.ml) ? "ml: integer expected" : null != t.my && t.hasOwnProperty("my") && "boolean" != typeof t.my ? "my: boolean expected" : null | |
} | |
, | |
b), | |
t.p_1100574 = (y.prototype.snm = "", | |
y.prototype.suuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
y.prototype.rnm = "", | |
y.prototype.ruuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
y.prototype.di = 0, | |
y.prototype.sd = 0, | |
y.prototype.rs = s.emptyArray, | |
y.encode = function(t, e) { | |
if (e = e || i.create(), | |
null != t.snm && Object.hasOwnProperty.call(t, "snm") && e.uint32(10).string(t.snm), | |
null != t.suuid && Object.hasOwnProperty.call(t, "suuid") && e.uint32(16).int64(t.suuid), | |
null != t.rnm && Object.hasOwnProperty.call(t, "rnm") && e.uint32(26).string(t.rnm), | |
null != t.ruuid && Object.hasOwnProperty.call(t, "ruuid") && e.uint32(32).int64(t.ruuid), | |
null != t.di && Object.hasOwnProperty.call(t, "di") && e.uint32(40).int32(t.di), | |
null != t.sd && Object.hasOwnProperty.call(t, "sd") && e.uint32(48).int32(t.sd), | |
null != t.rs && t.rs.length) { | |
e.uint32(58).fork(); | |
for (var n = 0; n < t.rs.length; ++n) | |
e.int32(t.rs[n]); | |
e.ldelim() | |
} | |
return e | |
} | |
, | |
y.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100574; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.snm = t.string(); | |
break; | |
case 2: | |
i.suuid = t.int64(); | |
break; | |
case 3: | |
i.rnm = t.string(); | |
break; | |
case 4: | |
i.ruuid = t.int64(); | |
break; | |
case 5: | |
i.di = t.int32(); | |
break; | |
case 6: | |
i.sd = t.int32(); | |
break; | |
case 7: | |
if (i.rs && i.rs.length || (i.rs = []), | |
2 == (7 & s)) | |
for (var o = t.uint32() + t.pos; t.pos < o; ) | |
i.rs.push(t.int32()); | |
else | |
i.rs.push(t.int32()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
y.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.snm && t.hasOwnProperty("snm") && !s.isString(t.snm)) | |
return "snm: string expected"; | |
if (null != t.suuid && t.hasOwnProperty("suuid") && !(s.isInteger(t.suuid) || t.suuid && s.isInteger(t.suuid.low) && s.isInteger(t.suuid.high))) | |
return "suuid: integer|Long expected"; | |
if (null != t.rnm && t.hasOwnProperty("rnm") && !s.isString(t.rnm)) | |
return "rnm: string expected"; | |
if (null != t.ruuid && t.hasOwnProperty("ruuid") && !(s.isInteger(t.ruuid) || t.ruuid && s.isInteger(t.ruuid.low) && s.isInteger(t.ruuid.high))) | |
return "ruuid: integer|Long expected"; | |
if (null != t.di && t.hasOwnProperty("di") && !s.isInteger(t.di)) | |
return "di: integer expected"; | |
if (null != t.sd && t.hasOwnProperty("sd") && !s.isInteger(t.sd)) | |
return "sd: integer expected"; | |
if (null != t.rs && t.hasOwnProperty("rs")) { | |
if (!Array.isArray(t.rs)) | |
return "rs: array expected"; | |
for (var e = 0; e < t.rs.length; ++e) | |
if (!s.isInteger(t.rs[e])) | |
return "rs: integer[] expected" | |
} | |
return null | |
} | |
, | |
y), | |
t.p_1200611 = (ht.prototype.lo = 0, | |
ht.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.lo && Object.hasOwnProperty.call(t, "lo") && e.uint32(8).int32(t.lo), | |
e | |
} | |
, | |
ht.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200611; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.lo = t.int32() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
ht.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.lo && t.hasOwnProperty("lo") && !s.isInteger(t.lo) ? "lo: integer expected" : null | |
} | |
, | |
ht), | |
t.p_1100614 = (pt.prototype.lo = 0, | |
pt.prototype.nm = "", | |
pt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.lo && Object.hasOwnProperty.call(t, "lo") && e.uint32(8).int32(t.lo), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
e | |
} | |
, | |
pt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100614; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.lo = t.int32(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
pt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.lo && t.hasOwnProperty("lo") && !s.isInteger(t.lo) ? "lo: integer expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null | |
} | |
, | |
pt), | |
t.p_1200191 = (dt.prototype.rp = null, | |
dt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.rp && Object.hasOwnProperty.call(t, "rp") && r.fc.Policy.encode(t.rp, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
dt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200191; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.rp = r.fc.Policy.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
dt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.rp && t.hasOwnProperty("rp")) { | |
t = r.fc.Policy.verify(t.rp); | |
if (t) | |
return "rp." + t | |
} | |
return null | |
} | |
, | |
dt), | |
t.p_1100191 = (mt.prototype.rp = null, | |
mt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.rp && Object.hasOwnProperty.call(t, "rp") && r.fc.Policy.encode(t.rp, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
mt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100191; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.rp = r.fc.Policy.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
mt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.rp && t.hasOwnProperty("rp")) { | |
t = r.fc.Policy.verify(t.rp); | |
if (t) | |
return "rp." + t | |
} | |
return null | |
} | |
, | |
mt), | |
t.Policy = (ft.prototype.kv = s.emptyArray, | |
ft.encode = function(t, e) { | |
if (e = e || i.create(), | |
null != t.kv && t.kv.length) | |
for (var n = 0; n < t.kv.length; ++n) | |
r.fc.KeyValue.encode(t.kv[n], e.uint32(10).fork()).ldelim(); | |
return e | |
} | |
, | |
ft.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.Policy; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? (i.kv && i.kv.length || (i.kv = []), | |
i.kv.push(r.fc.KeyValue.decode(t, t.uint32()))) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
ft.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.kv && t.hasOwnProperty("kv")) { | |
if (!Array.isArray(t.kv)) | |
return "kv: array expected"; | |
for (var e = 0; e < t.kv.length; ++e) { | |
var n = r.fc.KeyValue.verify(t.kv[e]); | |
if (n) | |
return "kv." + n | |
} | |
} | |
return null | |
} | |
, | |
ft), | |
t.KeyValue = (bt.prototype.k = "", | |
bt.prototype.v = "", | |
bt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.k && Object.hasOwnProperty.call(t, "k") && e.uint32(10).string(t.k), | |
null != t.v && Object.hasOwnProperty.call(t, "v") && e.uint32(18).string(t.v), | |
e | |
} | |
, | |
bt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.KeyValue; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.k = t.string(); | |
break; | |
case 2: | |
i.v = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
bt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.k && t.hasOwnProperty("k") && !s.isString(t.k) ? "k: string expected" : null != t.v && t.hasOwnProperty("v") && !s.isString(t.v) ? "v: string expected" : null | |
} | |
, | |
bt), | |
t.p_1200621 = (yt.prototype.cn = 0, | |
yt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
e | |
} | |
, | |
yt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200621; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cn = t.int32() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
yt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null | |
} | |
, | |
yt), | |
t.p_1100621 = (_t.prototype.cam = null, | |
_t.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cam && Object.hasOwnProperty.call(t, "cam") && r.fc.Cam.encode(t.cam, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
_t.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100621; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cam = r.fc.Cam.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
_t.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cam && t.hasOwnProperty("cam")) { | |
t = r.fc.Cam.verify(t.cam); | |
if (t) | |
return "cam." + t | |
} | |
return null | |
} | |
, | |
_t), | |
t.p_1100627 = (_.prototype.cn = 0, | |
_.prototype.rsn = "", | |
_.prototype.stp = null, | |
_.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.rsn && Object.hasOwnProperty.call(t, "rsn") && e.uint32(18).string(t.rsn), | |
null != t.stp && Object.hasOwnProperty.call(t, "stp") && r.fc.CamStop.encode(t.stp, e.uint32(26).fork()).ldelim(), | |
e | |
} | |
, | |
_.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100627; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.rsn = t.string(); | |
break; | |
case 3: | |
i.stp = r.fc.CamStop.decode(t, t.uint32()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
_.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn)) | |
return "cn: integer expected"; | |
if (null != t.rsn && t.hasOwnProperty("rsn") && !s.isString(t.rsn)) | |
return "rsn: string expected"; | |
if (null != t.stp && t.hasOwnProperty("stp")) { | |
t = r.fc.CamStop.verify(t.stp); | |
if (t) | |
return "stp." + t | |
} | |
return null | |
} | |
, | |
_), | |
t.p_1200631 = (gt.prototype.cn = 0, | |
gt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
e | |
} | |
, | |
gt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200631; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cn = t.int32() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
gt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null | |
} | |
, | |
gt), | |
t.p_1100631 = (wt.prototype.cn = 0, | |
wt.prototype.stp = null, | |
wt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.stp && Object.hasOwnProperty.call(t, "stp") && r.fc.CamStop.encode(t.stp, e.uint32(18).fork()).ldelim(), | |
e | |
} | |
, | |
wt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100631; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.stp = r.fc.CamStop.decode(t, t.uint32()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
wt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn)) | |
return "cn: integer expected"; | |
if (null != t.stp && t.hasOwnProperty("stp")) { | |
t = r.fc.CamStop.verify(t.stp); | |
if (t) | |
return "stp." + t | |
} | |
return null | |
} | |
, | |
wt), | |
t.CamStop = (g.prototype.mnm = "", | |
g.prototype.nm = "", | |
g.prototype.rsn = "", | |
g.prototype.ls = 0, | |
g.prototype.rs = 0, | |
g.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.mnm && Object.hasOwnProperty.call(t, "mnm") && e.uint32(10).string(t.mnm), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
null != t.rsn && Object.hasOwnProperty.call(t, "rsn") && e.uint32(26).string(t.rsn), | |
null != t.ls && Object.hasOwnProperty.call(t, "ls") && e.uint32(32).int32(t.ls), | |
null != t.rs && Object.hasOwnProperty.call(t, "rs") && e.uint32(40).int32(t.rs), | |
e | |
} | |
, | |
g.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.CamStop; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.mnm = t.string(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
case 3: | |
i.rsn = t.string(); | |
break; | |
case 4: | |
i.ls = t.int32(); | |
break; | |
case 5: | |
i.rs = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
g.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.mnm && t.hasOwnProperty("mnm") && !s.isString(t.mnm) ? "mnm: string expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null != t.rsn && t.hasOwnProperty("rsn") && !s.isString(t.rsn) ? "rsn: string expected" : null != t.ls && t.hasOwnProperty("ls") && !s.isInteger(t.ls) ? "ls: integer expected" : null != t.rs && t.hasOwnProperty("rs") && !s.isInteger(t.rs) ? "rs: integer expected" : null | |
} | |
, | |
g), | |
t.p_1100635 = (vt.prototype.cam = null, | |
vt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cam && Object.hasOwnProperty.call(t, "cam") && r.fc.Cam.encode(t.cam, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
vt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100635; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cam = r.fc.Cam.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
vt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cam && t.hasOwnProperty("cam")) { | |
t = r.fc.Cam.verify(t.cam); | |
if (t) | |
return "cam." + t | |
} | |
return null | |
} | |
, | |
vt), | |
t.Cam = (w.prototype.cn = 0, | |
w.prototype.nm = "", | |
w.prototype.cs = null, | |
w.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
null != t.cs && Object.hasOwnProperty.call(t, "cs") && r.fc.Camserver.encode(t.cs, e.uint32(26).fork()).ldelim(), | |
e | |
} | |
, | |
w.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.Cam; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
case 3: | |
i.cs = r.fc.Camserver.decode(t, t.uint32()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
w.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn)) | |
return "cn: integer expected"; | |
if (null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm)) | |
return "nm: string expected"; | |
if (null != t.cs && t.hasOwnProperty("cs")) { | |
t = r.fc.Camserver.verify(t.cs); | |
if (t) | |
return "cs." + t | |
} | |
return null | |
} | |
, | |
w), | |
t.Camserver = (v.prototype.fn = "", | |
v.prototype.lc = "", | |
v.prototype.ta = "", | |
v.prototype.tu = "", | |
v.prototype.tp = "", | |
v.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.fn && Object.hasOwnProperty.call(t, "fn") && e.uint32(10).string(t.fn), | |
null != t.lc && Object.hasOwnProperty.call(t, "lc") && e.uint32(18).string(t.lc), | |
null != t.ta && Object.hasOwnProperty.call(t, "ta") && e.uint32(26).string(t.ta), | |
null != t.tu && Object.hasOwnProperty.call(t, "tu") && e.uint32(34).string(t.tu), | |
null != t.tp && Object.hasOwnProperty.call(t, "tp") && e.uint32(42).string(t.tp), | |
e | |
} | |
, | |
v.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.Camserver; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.fn = t.string(); | |
break; | |
case 2: | |
i.lc = t.string(); | |
break; | |
case 3: | |
i.ta = t.string(); | |
break; | |
case 4: | |
i.tu = t.string(); | |
break; | |
case 5: | |
i.tp = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
v.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.fn && t.hasOwnProperty("fn") && !s.isString(t.fn) ? "fn: string expected" : null != t.lc && t.hasOwnProperty("lc") && !s.isString(t.lc) ? "lc: string expected" : null != t.ta && t.hasOwnProperty("ta") && !s.isString(t.ta) ? "ta: string expected" : null != t.tu && t.hasOwnProperty("tu") && !s.isString(t.tu) ? "tu: string expected" : null != t.tp && t.hasOwnProperty("tp") && !s.isString(t.tp) ? "tp: string expected" : null | |
} | |
, | |
v), | |
t.p_1200711 = (k.prototype.cn = 0, | |
k.prototype.op1 = !1, | |
k.prototype.op2 = !1, | |
k.prototype.op3 = !1, | |
k.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.op1 && Object.hasOwnProperty.call(t, "op1") && e.uint32(16).bool(t.op1), | |
null != t.op2 && Object.hasOwnProperty.call(t, "op2") && e.uint32(24).bool(t.op2), | |
null != t.op3 && Object.hasOwnProperty.call(t, "op3") && e.uint32(32).bool(t.op3), | |
e | |
} | |
, | |
k.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200711; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.op1 = t.bool(); | |
break; | |
case 3: | |
i.op2 = t.bool(); | |
break; | |
case 4: | |
i.op3 = t.bool(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
k.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null != t.op1 && t.hasOwnProperty("op1") && "boolean" != typeof t.op1 ? "op1: boolean expected" : null != t.op2 && t.hasOwnProperty("op2") && "boolean" != typeof t.op2 ? "op2: boolean expected" : null != t.op3 && t.hasOwnProperty("op3") && "boolean" != typeof t.op3 ? "op3: boolean expected" : null | |
} | |
, | |
k), | |
t.p_1100711 = (kt.prototype.cn = 0, | |
kt.prototype.ti = 0, | |
kt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
e | |
} | |
, | |
kt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100711; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
kt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti) ? "ti: integer expected" : null | |
} | |
, | |
kt), | |
t.p_1200723 = (xt.prototype.sdp = null, | |
xt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.sdp && Object.hasOwnProperty.call(t, "sdp") && r.fc.SDP.encode(t.sdp, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
xt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200723; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.sdp = r.fc.SDP.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
xt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.sdp && t.hasOwnProperty("sdp")) { | |
t = r.fc.SDP.verify(t.sdp); | |
if (t) | |
return "sdp." + t | |
} | |
return null | |
} | |
, | |
xt), | |
t.p_1200724 = (Ot.prototype.sdp = s.emptyArray, | |
Ot.encode = function(t, e) { | |
if (e = e || i.create(), | |
null != t.sdp && t.sdp.length) | |
for (var n = 0; n < t.sdp.length; ++n) | |
r.fc.SDP.encode(t.sdp[n], e.uint32(10).fork()).ldelim(); | |
return e | |
} | |
, | |
Ot.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200724; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? (i.sdp && i.sdp.length || (i.sdp = []), | |
i.sdp.push(r.fc.SDP.decode(t, t.uint32()))) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Ot.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.sdp && t.hasOwnProperty("sdp")) { | |
if (!Array.isArray(t.sdp)) | |
return "sdp: array expected"; | |
for (var e = 0; e < t.sdp.length; ++e) { | |
var n = r.fc.SDP.verify(t.sdp[e]); | |
if (n) | |
return "sdp." + n | |
} | |
} | |
return null | |
} | |
, | |
Ot), | |
t.p_1100723 = (jt.prototype.sdp = null, | |
jt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.sdp && Object.hasOwnProperty.call(t, "sdp") && r.fc.SDP.encode(t.sdp, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
jt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100723; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.sdp = r.fc.SDP.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
jt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.sdp && t.hasOwnProperty("sdp")) { | |
t = r.fc.SDP.verify(t.sdp); | |
if (t) | |
return "sdp." + t | |
} | |
return null | |
} | |
, | |
jt), | |
t.p_1200735 = (Pt.prototype.sdp = null, | |
Pt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.sdp && Object.hasOwnProperty.call(t, "sdp") && r.fc.SDP.encode(t.sdp, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
Pt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200735; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.sdp = r.fc.SDP.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Pt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.sdp && t.hasOwnProperty("sdp")) { | |
t = r.fc.SDP.verify(t.sdp); | |
if (t) | |
return "sdp." + t | |
} | |
return null | |
} | |
, | |
Pt), | |
t.p_1100735 = (Ct.prototype.sdp = null, | |
Ct.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.sdp && Object.hasOwnProperty.call(t, "sdp") && r.fc.SDP.encode(t.sdp, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
Ct.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100735; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.sdp = r.fc.SDP.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Ct.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.sdp && t.hasOwnProperty("sdp")) { | |
t = r.fc.SDP.verify(t.sdp); | |
if (t) | |
return "sdp." + t | |
} | |
return null | |
} | |
, | |
Ct), | |
t.SDP = (x.prototype.cn = 0, | |
x.prototype.ti = 0, | |
x.prototype.dsc = "", | |
x.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
null != t.dsc && Object.hasOwnProperty.call(t, "dsc") && e.uint32(26).string(t.dsc), | |
e | |
} | |
, | |
x.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.SDP; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
case 3: | |
i.dsc = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
x.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti) ? "ti: integer expected" : null != t.dsc && t.hasOwnProperty("dsc") && !s.isString(t.dsc) ? "dsc: string expected" : null | |
} | |
, | |
x), | |
t.p_1200747 = (O.prototype.cn = 0, | |
O.prototype.ti = 0, | |
O.prototype.cnd = "", | |
O.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
null != t.cnd && Object.hasOwnProperty.call(t, "cnd") && e.uint32(26).string(t.cnd), | |
e | |
} | |
, | |
O.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200747; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
case 3: | |
i.cnd = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
O.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti) ? "ti: integer expected" : null != t.cnd && t.hasOwnProperty("cnd") && !s.isString(t.cnd) ? "cnd: string expected" : null | |
} | |
, | |
O), | |
t.p_1100747 = (j.prototype.cn = 0, | |
j.prototype.ti = 0, | |
j.prototype.cnd = "", | |
j.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
null != t.cnd && Object.hasOwnProperty.call(t, "cnd") && e.uint32(26).string(t.cnd), | |
e | |
} | |
, | |
j.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100747; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
case 3: | |
i.cnd = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
j.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti) ? "ti: integer expected" : null != t.cnd && t.hasOwnProperty("cnd") && !s.isString(t.cnd) ? "cnd: string expected" : null | |
} | |
, | |
j), | |
t.p_1200748 = (P.prototype.cn = 0, | |
P.prototype.ti = 0, | |
P.prototype.cnd = s.emptyArray, | |
P.encode = function(t, e) { | |
if (e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
null != t.cnd && t.cnd.length) | |
for (var n = 0; n < t.cnd.length; ++n) | |
e.uint32(26).string(t.cnd[n]); | |
return e | |
} | |
, | |
P.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200748; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
case 3: | |
i.cnd && i.cnd.length || (i.cnd = []), | |
i.cnd.push(t.string()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
P.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn)) | |
return "cn: integer expected"; | |
if (null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti)) | |
return "ti: integer expected"; | |
if (null != t.cnd && t.hasOwnProperty("cnd")) { | |
if (!Array.isArray(t.cnd)) | |
return "cnd: array expected"; | |
for (var e = 0; e < t.cnd.length; ++e) | |
if (!s.isString(t.cnd[e])) | |
return "cnd: string[] expected" | |
} | |
return null | |
} | |
, | |
P), | |
t.p_1100748 = (C.prototype.cn = 0, | |
C.prototype.ti = 0, | |
C.prototype.cnd = s.emptyArray, | |
C.encode = function(t, e) { | |
if (e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
null != t.cnd && t.cnd.length) | |
for (var n = 0; n < t.cnd.length; ++n) | |
e.uint32(26).string(t.cnd[n]); | |
return e | |
} | |
, | |
C.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100748; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
case 3: | |
i.cnd && i.cnd.length || (i.cnd = []), | |
i.cnd.push(t.string()); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
C.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn)) | |
return "cn: integer expected"; | |
if (null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti)) | |
return "ti: integer expected"; | |
if (null != t.cnd && t.hasOwnProperty("cnd")) { | |
if (!Array.isArray(t.cnd)) | |
return "cnd: array expected"; | |
for (var e = 0; e < t.cnd.length; ++e) | |
if (!s.isString(t.cnd[e])) | |
return "cnd: string[] expected" | |
} | |
return null | |
} | |
, | |
C), | |
t.p_1200798 = (Tt.prototype.cn = 0, | |
Tt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
e | |
} | |
, | |
Tt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200798; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.cn = t.int32() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Tt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null | |
} | |
, | |
Tt), | |
t.p_1100798 = (Et.prototype.cn = 0, | |
Et.prototype.ti = 0, | |
Et.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
e | |
} | |
, | |
Et.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100798; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
Et.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti) ? "ti: integer expected" : null | |
} | |
, | |
Et), | |
t.p_1200799 = (T.prototype.cn = 0, | |
T.prototype.ti = 0, | |
T.prototype.er = 0, | |
T.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
null != t.er && Object.hasOwnProperty.call(t, "er") && e.uint32(24).int32(t.er), | |
e | |
} | |
, | |
T.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200799; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
case 3: | |
i.er = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
T.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti) ? "ti: integer expected" : null != t.er && t.hasOwnProperty("er") && !s.isInteger(t.er) ? "er: integer expected" : null | |
} | |
, | |
T), | |
t.p_1200797 = (It.prototype.cn = 0, | |
It.prototype.ti = 0, | |
It.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.cn && Object.hasOwnProperty.call(t, "cn") && e.uint32(8).int32(t.cn), | |
null != t.ti && Object.hasOwnProperty.call(t, "ti") && e.uint32(16).int32(t.ti), | |
e | |
} | |
, | |
It.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200797; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.cn = t.int32(); | |
break; | |
case 2: | |
i.ti = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
It.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.cn && t.hasOwnProperty("cn") && !s.isInteger(t.cn) ? "cn: integer expected" : null != t.ti && t.hasOwnProperty("ti") && !s.isInteger(t.ti) ? "ti: integer expected" : null | |
} | |
, | |
It), | |
t.p_1200811 = (Lt.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
Lt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
e | |
} | |
, | |
Lt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200811; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uuid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Lt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
Lt), | |
t.p_1100811 = (E.prototype.mnm = "", | |
E.prototype.nm = "", | |
E.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
E.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.mnm && Object.hasOwnProperty.call(t, "mnm") && e.uint32(10).string(t.mnm), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(24).int64(t.uuid), | |
e | |
} | |
, | |
E.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100811; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.mnm = t.string(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
case 3: | |
i.uuid = t.int64(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
E.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.mnm && t.hasOwnProperty("mnm") && !s.isString(t.mnm) ? "mnm: string expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
E), | |
t.p_1200815 = (Nt.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
Nt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
e | |
} | |
, | |
Nt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200815; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uuid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Nt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
Nt), | |
t.p_1100815 = (I.prototype.mnm = "", | |
I.prototype.nm = "", | |
I.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
I.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.mnm && Object.hasOwnProperty.call(t, "mnm") && e.uint32(10).string(t.mnm), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(24).int64(t.uuid), | |
e | |
} | |
, | |
I.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100815; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.mnm = t.string(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
case 3: | |
i.uuid = t.int64(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
I.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.mnm && t.hasOwnProperty("mnm") && !s.isString(t.mnm) ? "mnm: string expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
I), | |
t.p_1200821 = (St.prototype.tpc = "", | |
St.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.tpc && Object.hasOwnProperty.call(t, "tpc") && e.uint32(10).string(t.tpc), | |
e | |
} | |
, | |
St.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200821; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.tpc = t.string() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
St.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.tpc && t.hasOwnProperty("tpc") && !s.isString(t.tpc) ? "tpc: string expected" : null | |
} | |
, | |
St), | |
t.p_1100821 = (zt.prototype.tpc = "", | |
zt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.tpc && Object.hasOwnProperty.call(t, "tpc") && e.uint32(10).string(t.tpc), | |
e | |
} | |
, | |
zt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100821; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.tpc = t.string() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
zt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.tpc && t.hasOwnProperty("tpc") && !s.isString(t.tpc) ? "tpc: string expected" : null | |
} | |
, | |
zt), | |
t.p_1200831 = (L.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
L.prototype.rsn = "", | |
L.prototype.ls = 0, | |
L.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
null != t.rsn && Object.hasOwnProperty.call(t, "rsn") && e.uint32(18).string(t.rsn), | |
null != t.ls && Object.hasOwnProperty.call(t, "ls") && e.uint32(24).int32(t.ls), | |
e | |
} | |
, | |
L.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200831; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.uuid = t.int64(); | |
break; | |
case 2: | |
i.rsn = t.string(); | |
break; | |
case 3: | |
i.ls = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
L.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null != t.rsn && t.hasOwnProperty("rsn") && !s.isString(t.rsn) ? "rsn: string expected" : null != t.ls && t.hasOwnProperty("ls") && !s.isInteger(t.ls) ? "ls: integer expected" : null | |
} | |
, | |
L), | |
t.p_1100831 = (At.prototype.kick = null, | |
At.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.kick && Object.hasOwnProperty.call(t, "kick") && r.fc.Kick.encode(t.kick, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
At.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100831; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.kick = r.fc.Kick.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
At.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.kick && t.hasOwnProperty("kick")) { | |
t = r.fc.Kick.verify(t.kick); | |
if (t) | |
return "kick." + t | |
} | |
return null | |
} | |
, | |
At), | |
t.Kick = (N.prototype.mnm = "", | |
N.prototype.nm = "", | |
N.prototype.rsn = "", | |
N.prototype.ls = 0, | |
N.prototype.rs = 0, | |
N.prototype.stm = 0, | |
N.prototype.stc = 0, | |
N.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.mnm && Object.hasOwnProperty.call(t, "mnm") && e.uint32(10).string(t.mnm), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
null != t.rsn && Object.hasOwnProperty.call(t, "rsn") && e.uint32(26).string(t.rsn), | |
null != t.ls && Object.hasOwnProperty.call(t, "ls") && e.uint32(32).int32(t.ls), | |
null != t.rs && Object.hasOwnProperty.call(t, "rs") && e.uint32(40).int32(t.rs), | |
null != t.stm && Object.hasOwnProperty.call(t, "stm") && e.uint32(48).int32(t.stm), | |
null != t.stc && Object.hasOwnProperty.call(t, "stc") && e.uint32(56).int32(t.stc), | |
e | |
} | |
, | |
N.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.Kick; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.mnm = t.string(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
case 3: | |
i.rsn = t.string(); | |
break; | |
case 4: | |
i.ls = t.int32(); | |
break; | |
case 5: | |
i.rs = t.int32(); | |
break; | |
case 6: | |
i.stm = t.int32(); | |
break; | |
case 7: | |
i.stc = t.int32(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
N.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.mnm && t.hasOwnProperty("mnm") && !s.isString(t.mnm) ? "mnm: string expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null != t.rsn && t.hasOwnProperty("rsn") && !s.isString(t.rsn) ? "rsn: string expected" : null != t.ls && t.hasOwnProperty("ls") && !s.isInteger(t.ls) ? "ls: integer expected" : null != t.rs && t.hasOwnProperty("rs") && !s.isInteger(t.rs) ? "rs: integer expected" : null != t.stm && t.hasOwnProperty("stm") && !s.isInteger(t.stm) ? "stm: integer expected" : null != t.stc && t.hasOwnProperty("stc") && !s.isInteger(t.stc) ? "stc: integer expected" : null | |
} | |
, | |
N), | |
t.p_1200841 = (Mt.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
Mt.prototype.prm = !1, | |
Mt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
null != t.prm && Object.hasOwnProperty.call(t, "prm") && e.uint32(16).bool(t.prm), | |
e | |
} | |
, | |
Mt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200841; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.uuid = t.int64(); | |
break; | |
case 2: | |
i.prm = t.bool(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
Mt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null != t.prm && t.hasOwnProperty("prm") && "boolean" != typeof t.prm ? "prm: boolean expected" : null | |
} | |
, | |
Mt), | |
t.p_1100841 = (Ht.prototype.ban = null, | |
Ht.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.ban && Object.hasOwnProperty.call(t, "ban") && r.fc.RoomBan.encode(t.ban, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
Ht.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100841; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.ban = r.fc.RoomBan.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Ht.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.ban && t.hasOwnProperty("ban")) { | |
t = r.fc.RoomBan.verify(t.ban); | |
if (t) | |
return "ban." + t | |
} | |
return null | |
} | |
, | |
Ht), | |
t.RoomBan = (S.prototype.bnm = "", | |
S.prototype.nm = "", | |
S.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
S.prototype.rsn = "", | |
S.prototype.exp = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
S.prototype.rs = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
S.prototype.prm = !1, | |
S.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.bnm && Object.hasOwnProperty.call(t, "bnm") && e.uint32(10).string(t.bnm), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(24).int64(t.uuid), | |
null != t.rsn && Object.hasOwnProperty.call(t, "rsn") && e.uint32(34).string(t.rsn), | |
null != t.exp && Object.hasOwnProperty.call(t, "exp") && e.uint32(40).int64(t.exp), | |
null != t.rs && Object.hasOwnProperty.call(t, "rs") && e.uint32(48).int64(t.rs), | |
null != t.prm && Object.hasOwnProperty.call(t, "prm") && e.uint32(56).bool(t.prm), | |
e | |
} | |
, | |
S.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.RoomBan; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.bnm = t.string(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
case 3: | |
i.uuid = t.int64(); | |
break; | |
case 4: | |
i.rsn = t.string(); | |
break; | |
case 5: | |
i.exp = t.int64(); | |
break; | |
case 6: | |
i.rs = t.int64(); | |
break; | |
case 7: | |
i.prm = t.bool(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
S.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.bnm && t.hasOwnProperty("bnm") && !s.isString(t.bnm) ? "bnm: string expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null != t.rsn && t.hasOwnProperty("rsn") && !s.isString(t.rsn) ? "rsn: string expected" : null != t.exp && t.hasOwnProperty("exp") && !(s.isInteger(t.exp) || t.exp && s.isInteger(t.exp.low) && s.isInteger(t.exp.high)) ? "exp: integer|Long expected" : null != t.rs && t.hasOwnProperty("rs") && !(s.isInteger(t.rs) || t.rs && s.isInteger(t.rs.low) && s.isInteger(t.rs.high)) ? "rs: integer|Long expected" : null != t.prm && t.hasOwnProperty("prm") && "boolean" != typeof t.prm ? "prm: boolean expected" : null | |
} | |
, | |
S), | |
t.p_1200851 = (Bt.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
Bt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
e | |
} | |
, | |
Bt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200851; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uuid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Bt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
Bt), | |
t.p_1100851 = (z.prototype.mnm = "", | |
z.prototype.nm = "", | |
z.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
z.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.mnm && Object.hasOwnProperty.call(t, "mnm") && e.uint32(10).string(t.mnm), | |
null != t.nm && Object.hasOwnProperty.call(t, "nm") && e.uint32(18).string(t.nm), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(24).int64(t.uuid), | |
e | |
} | |
, | |
z.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100851; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.mnm = t.string(); | |
break; | |
case 2: | |
i.nm = t.string(); | |
break; | |
case 3: | |
i.uuid = t.int64(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
z.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.mnm && t.hasOwnProperty("mnm") && !s.isString(t.mnm) ? "mnm: string expected" : null != t.nm && t.hasOwnProperty("nm") && !s.isString(t.nm) ? "nm: string expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
z), | |
t.p_1200881 = (qt.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
qt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
e | |
} | |
, | |
qt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1200881; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uuid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
qt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
qt), | |
t.p_1100881 = (Dt.prototype.uuid = s.Long ? s.Long.fromBits(0, 0, !1) : 0, | |
Dt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.uuid && Object.hasOwnProperty.call(t, "uuid") && e.uint32(8).int64(t.uuid), | |
e | |
} | |
, | |
Dt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.p_1100881; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.uuid = t.int64() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Dt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.uuid && t.hasOwnProperty("uuid") && !(s.isInteger(t.uuid) || t.uuid && s.isInteger(t.uuid.low) && s.isInteger(t.uuid.high)) ? "uuid: integer|Long expected" : null | |
} | |
, | |
Dt), | |
t.c_4002 = (Rt.prototype.rn = 0, | |
Rt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.rn && Object.hasOwnProperty.call(t, "rn") && e.uint32(8).int32(t.rn), | |
e | |
} | |
, | |
Rt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.c_4002; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.rn = t.int32() : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Rt.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.rn && t.hasOwnProperty("rn") && !s.isInteger(t.rn) ? "rn: integer expected" : null | |
} | |
, | |
Rt), | |
t.c_4003 = (Yt.prototype.kick = null, | |
Yt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.kick && Object.hasOwnProperty.call(t, "kick") && r.fc.Kick.encode(t.kick, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
Yt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.c_4003; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.kick = r.fc.Kick.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Yt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.kick && t.hasOwnProperty("kick")) { | |
t = r.fc.Kick.verify(t.kick); | |
if (t) | |
return "kick." + t | |
} | |
return null | |
} | |
, | |
Yt), | |
t.c_4004 = (Wt.prototype.ban = null, | |
Wt.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.ban && Object.hasOwnProperty.call(t, "ban") && r.fc.RoomBan.encode(t.ban, e.uint32(10).fork()).ldelim(), | |
e | |
} | |
, | |
Wt.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.c_4004; t.pos < n; ) { | |
var s = t.uint32(); | |
s >>> 3 == 1 ? i.ban = r.fc.RoomBan.decode(t, t.uint32()) : t.skipType(7 & s) | |
} | |
return i | |
} | |
, | |
Wt.verify = function(t) { | |
if ("object" != typeof t || null === t) | |
return "object expected"; | |
if (null != t.ban && t.hasOwnProperty("ban")) { | |
t = r.fc.RoomBan.verify(t.ban); | |
if (t) | |
return "ban." + t | |
} | |
return null | |
} | |
, | |
Wt), | |
t.c_4009 = (A.prototype.ms = 0, | |
A.prototype.msg = "", | |
A.prototype.jth = "", | |
A.encode = function(t, e) { | |
return e = e || i.create(), | |
null != t.ms && Object.hasOwnProperty.call(t, "ms") && e.uint32(8).int32(t.ms), | |
null != t.msg && Object.hasOwnProperty.call(t, "msg") && e.uint32(18).string(t.msg), | |
null != t.jth && Object.hasOwnProperty.call(t, "jth") && e.uint32(26).string(t.jth), | |
e | |
} | |
, | |
A.decode = function(t, e) { | |
t instanceof c || (t = c.create(t)); | |
for (var n = void 0 === e ? t.len : t.pos + e, i = new r.fc.c_4009; t.pos < n; ) { | |
var s = t.uint32(); | |
switch (s >>> 3) { | |
case 1: | |
i.ms = t.int32(); | |
break; | |
case 2: | |
i.msg = t.string(); | |
break; | |
case 3: | |
i.jth = t.string(); | |
break; | |
default: | |
t.skipType(7 & s) | |
} | |
} | |
return i | |
} | |
, | |
A.verify = function(t) { | |
return "object" != typeof t || null === t ? "object expected" : null != t.ms && t.hasOwnProperty("ms") && !s.isInteger(t.ms) ? "ms: integer expected" : null != t.msg && t.hasOwnProperty("msg") && !s.isString(t.msg) ? "msg: string expected" : null != t.jth && t.hasOwnProperty("jth") && !s.isString(t.jth) ? "jth: string expected" : null | |
} | |
, | |
A), | |
t) | |
}(protobuf); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment