﻿var ie  = (navigator.userAgent.indexOf("MSIE") > -1) ? true: false;
var ie6 = (navigator.userAgent.indexOf("MSIE 6") > -1) ? true: false;

var _LIMIT_CHAT_CNT  = 200;
var _LIMIT_VIEW_CNT  = 300;


//---------- (s) 방송채널 ----------------//
var CD_LIVE_CATE    = {9:"Entertainment", 2:"Game", 4:"Sports", 1:"Music", 10:"News/Issue", 11:"Travel/Info"}; //12:"장기자랑"};	//1:"Music", 2:"Game", 3:"시사", 4:"Sports", 5:"Talk Show", 6:"애니/드라마", 7:"Others", 8:"TV/Movie"

function setCastCateList(objName, defOpt, selectedIdx){
    //defOpt = 0 or null:모두 지우고 세팅, 1:기존것을 지우지 않고 뒤에 추가
    var obj = $(objName);
    if(!defOpt) removeOption(obj);

    for(var key in CD_LIVE_CATE) {
        if(typeof(CD_LIVE_CATE[key]) != "function") makeOption(obj, CD_LIVE_CATE[key], key);
    }
    obj.selectedIndex = selectedIdx;
}
//---------- (e) 방송채널 ----------------//



//---------- (s) live ----------------//
var viewWin     = null;     //viewer창
var castWin     = null;     //caster창

function goLiveViewer(n,m,sid){
	if(!sid && (!n || !m)) {
		alert(viewMsg(4059));
		return;
	}

    var url = "http://"+webRoot+"live.seebox."+hostDomain+"/viewer.sb";
    if(sid) {
        url += "?bj="+sid;
    } else {
        url += "?ch="+n+"&live="+m;
    }
	if (getCookie("studioID")==null){
        openwin(url, 'viewer');
        return;
    }else{
        try {
            if(!viewWin || viewWin.closed) {
                openwin(url,'viewer');
            } else if(viewWin && viewWin.name=="seeboxLiveViewer") {
                var rObj = new Object();
                rObj.id  = "TMP_"+ m +"_" + n;
                viewWin.addChannel(rObj);
            }
        } catch(ex) {
            openwin(url,'viewer');
        }
    }
}
function openCaster(){
	SBLAUNCHER.Check(null, "openCaster1()");
}
function openCaster1(){
    if(getCookie("studioID")==null){
        alert(viewMsg(4060));
        login();
        return false;
    } else if(castWin && !castWin.closed) { //!castWin castWin.name && castWin.name=="seeboxLive"
        alert(viewMsg(4061));
        castWin.focus();
        return false;
    } else {
        var url = "http://"+webRoot+"live.seebox."+hostDomain+"/liveset.sb";
        openwin(url,'caster');
    }
}
function onAirCheck(bjSID, retFunc){
	if(!bjSID) return false;
	if(!retFunc) retFunc = "onAirCheckComplete";
	retFunc = eval(retFunc);
	//해당 bj가 방송중인지 체크
	var params = {pageNo:1,pageSize:1,fieldName:'STUDIOID',fieldValue:bjSID, hostDomain:hostDomain};
    var myAjax = new Ajax.Request(ProxyURL,{method:'post',protocol:'soap',WSDLPath:liveWSDLPATH,procedureName:"liveListByConditional",onComplete:retFunc,argument:params});
}
function onAirCheckComplete(objHttp){
	var objXML = $XO(objHttp.responseText,"liveListByConditional");
	var nodeTable = objXML.getElementsByTagName("DATAROWS");
	if(nodeTable.length <= 0) {
		alert(viewMsg(4062));
		return false;
	} else {
		var liveIndex 	= getNodeValue(nodeTable[0].getElementsByTagName("LIVEINDEX")[0]);
		var liveChannel = getNodeValue(nodeTable[0].getElementsByTagName("LIVECHANNEL")[0]);
		goLiveViewer(liveChannel, liveIndex);
	}
}
function openwin(url, handle) {
    if(!window.name) window.name = "SEEBOX";
    switch(handle)
    {
        case "viewer": viewWin =window.open(url, "seeboxLiveViewer", "width=1012, height=690, resizable=yes");break;
        case "caster": castWin=window.open(url, "seeboxLive", "width=1012, height=690, resizable=yes");break;
    }
}
function closeWin(){
	if(navigator.appVersion.indexOf("MSIE 7.0")>=0) {
		window.open('about:blank','_self').close();
	} else {
		window.opener = self;
		self.close();
	}
}
function getSMTIPs4SLV(lAddr){
    var pLsAddrS = "";
    //var pLsAddrS4Viewer = lAddr + ((pLsAddr_Remote)? ";" + pLsAddr_Remote : "");
    var pLsAddrS4Viewer = (pLsAddr_Remote)? pLsAddr_Remote : lAddr;	//.com은 Main-SMT 제외
    var arrLsAddr = pLsAddrS4Viewer.split(";");
    var cntNeed = 2;
    var maxI = (arrLsAddr.length >= cntNeed)? cntNeed: arrLsAddr.length;
    if(arrLsAddr.length <= cntNeed) {
        pLsAddrS = pLsAddrS4Viewer;
    } else {
        for(var i=0; i<cntNeed; i++) {
            var selIdx = Math.floor(Math.random()*arrLsAddr.length);
            pLsAddrS += arrLsAddr[selIdx] + ";";
            arrLsAddr.splice(selIdx, 1);
        }
        pLsAddrS = pLsAddrS.substr(0, pLsAddrS.length -1);
    }
	return pLsAddrS;
}
function getThumbPath(type, memberIndex) {
    var ret = "";
    var divs = Math.floor(memberIndex/125);
    var fs = divs % 125;
    var divs = Math.floor(divs/125);
    var ss = divs % 125;
    var divs = Math.floor(divs/125);
    var ts = divs % 125;
    var divs = Math.floor(divs/125);
    var ls = divs % 125;

    var dirLocale = "kor";
    if(type=="vidcap" || type=="lvidcap") {
		if(hostDomain == "jp" || hostDomain == "co.jp"){
			dirLocale = "jpn";
		} else if(hostDomain == "sg") {
			dirLocale = "sgp";
		}
    } else {
		if(memberIndex >= 200000000) {
			dirLocale = "sgp";
		} else if(memberIndex >= 100000000) {
			dirLocale = "jpn";
		}
    }

    if(type=="vidcap") {
        ret = "http://img.seebox."+hostDomain+"/tempclip/"+dirLocale+"/vidcap/" + ls + "/" + ts + "/" + ss + "/" + fs + "/vidcap_" + memberIndex + "_s.jpg";
    }else if(type=='lvidcap'){
        ret = "http://img.seebox."+hostDomain+"/tempclip/"+dirLocale+"/vidcap/" + ls + "/" + ts + "/" + ss + "/" + fs + "/vidcap_" + memberIndex + ".jpg";
    } else if(type=="talk") {
        ret = "http://img.seebox."+hostDomain+"/userclip/"+dirLocale+"/" + ls + "/" + ts + "/" + ss + "/" + fs + "/talk_" + memberIndex + ".jpg";
    } else if(type=="profile") {
        ret = "http://img.seebox."+hostDomain+"/userclip/"+dirLocale+"/" + ls + "/" + ts + "/" + ss + "/" + fs + "/profile_" + memberIndex + ".jpg";
	}

    return ret;
}
//---------- (e) live ----------------//


//---------- (s) Live-Check 동적 JS 연동 함수 ------------//
function requestDynamicLiveCheck(wmode, strResponseFunc, params) {
	if(!wmode) return;

	//var url	 = "http://"+webRoot+"live.seebox."+hostDomain+"/common/js_livecheck.sb?wm="+wmode+"&cfnc="+strResponseFunc;
	var url	 = "http://"+webRoot+"live.seebox."+hostDomain+"/common/js_livecheck.sb?wm="+wmode;
	var srcUrl = "";
	switch(wmode) {
		case "CheckPanalty":
			if(!params || !params.MemberIndex) {
				//alert("주어진 회원번호가 없어 실행할 수 없습니다.");
				//return;
			}
			srcUrl = url + "&midx="+params.MemberIndex;
			break;
		case "CheckChannel":
			srcUrl = url + "";
			break;
		case "DeleteFromList":
			srcUrl = "http://"+webRoot+"live.seebox."+hostDomain+"/common/js_livedelete.sb?wm="+wmode+"&cfnc="+params.lastCallFunc+"&lidx="+params.liveIndex+"&ch="+params.channel+"&cip="+params.chatIP+"&mip="+params.mainIP+"&hdm="+hostDomain;
			break;
	}
	if(srcUrl) {
		if(!$('DynamicLiveCheckJS')) {
			var objJS 	= document.createElement("SCRIPT");
			objJS.type	= "text/javascript";
			objJS.id	= "DynamicLiveCheckJS";
			document.getElementsByTagName("head")[0].appendChild(objJS);
			if(strResponseFunc) {
				//objJS.onload = strResponseFunc;
				//objJS.onreadystatechange = function() {
				//	if(this.readyState == "loaded") strResponseFunc;
				//}
				try {
					SBEvent.add(objJS, "onreadystatechange", strResponseFunc);
				} catch(ex) {
					if(objJS.addEventListener) objJS.addEventListener("readystatechange", strResponseFunc, false);
					else if(objJS.attachEvent) objJS.attachEvent("onreadystatechange", strResponseFunc);
				}
			}
		}
		var dmJS = $('DynamicLiveCheckJS');
		dmJS.src = srcUrl;
	}
}
//---------- (e) Live-Check 동적 JS 연동 함수 ------------//



function goLiveSchedule() {
    document.location.href= "http://"+webRoot+"live.seebox."+hostDomain+"/schedule.sb";
}
