var checkedType = 0;//1: 블로그, 2: 티스토리, 3: 다음카페, 4: 설치형블로그
var openList = false;
var account = "";
var listBox;
var skinBox;
var isResizeFrame = false;
var gDomainProvider = "widgetprovider.daum.net";

// 위젯 미리보기
function previewWidget(){
	if(arguments.length!=0){
		var event = window.event||arguments[0];
		if(!window.event||event.keyCode!=13) return;
	}
	var formvalues = Form.serialize(document.frmWidgetSetting);
	if(formvalues.length > 1000){
		alert("설정값은 최대 한글 40자 / 영문 80자 까지 입력할 수 있습니다.")
		return;	
	}
	
	generateWidgetBorder(formvalues, "widgetPreview", null, gDomainProvider);
	if(isResizeFrame){
		resizeFrame();
	}
}

function chkRadioSkin(obj,chkVal){
	var list = obj.parentNode.getElementsByTagName("li");
	for(var i=0; i<list.length; i++){
		if(list[i].className != "disabled") list[i].className = "";
	}
	obj.className = "checked";	
}


function setSkin(obj){
	var listObj = document.getElementById("skinList").getElementsByTagName("li");
	for(var i=0; i<listObj.length;i++){
		listObj[i].style.border = "1px solid #FFF";
	}
	selectedSkin = obj.id.getIdNum();
	obj.style.border = "1px solid #506be0"
	var num = obj.id.getIdNum();
	document.getElementById("skinVal").value = skinBox[num-1];
	previewWidget();
}

/*
var selectedSkin = null;

// 스킨셋팅 - 필요 없음
function makeSkin(){
	listBox = new Array(5);
	skinBox = new Array();
	//동적스킨 생성일 경우 하단 로직과 css 생성이 같이 이루어져도 될듯
	skinBox[0] = "01";
	skinBox[1] = "02";
	skinBox[2] = "03";
	skinBox[3] = "04";
	skinBox[4] = "05";
	skinBox[5] = "06";
	skinBox[6] = "07";
	skinBox[7] = "08";
	skinBox[8] = "09";
	skinBox[9] = "10";
	skinBox[10] = "11";
	skinBox[11] = "12";
	skinBox[12] = "13";
	skinBox[13] = "14";
	skinBox[14] = "15";
	var chkLen = (skinBox.length > 5)?5:skinBox.length;
	for(var i=0; i<chkLen; i++){
		listBox[i] = i;
		var liObj = document.createElement("li");
		liObj.id = "skin"+(i+1);
		liObj.className = (i==0)?"skinThum"+(i+1)+" first":"skinThum"+(i+1);
		liObj.tabIndex =0 ;
		liObj.onclick = function(){ setSkin(this); }
		document.getElementById("skinList").appendChild(liObj);
	}
}	

function overSkinChk(obj){
	if(obj.id=="skinBef"&&listBox[0]!=0){
		obj.className = "over";
	}else if(obj.id=="skinNext"&&listBox[listBox.length-1]!=skinBox.length-1){
		obj.className = "over";
	}
}

function viewSkin(obj){
	if(obj.id=="skinBef"&&listBox[0]!=0){
		setList(-1);
	}else if(obj.id=="skinNext"&&listBox[listBox.length-1]!=skinBox.length-1){
		setList(1);
	}
}

function setList(direction){
	var listObj = document.getElementById("skinList").getElementsByTagName("li");
	for (var i=0; i<listBox.length; i++){
		listBox[i] = listBox[i]+(direction);
		listObj[i].id = "skin"+(listBox[i]+1);
		listObj[i].className = (i==0)?"skinThum"+(listBox[i]+1)+" first":"skinThum"+(listBox[i]+1);
		if(selectedSkin!=null){
			listObj[i].style.border = (listObj[i].id.getIdNum()==selectedSkin)?"1px solid #506be0":"1px solid #FFF";
		}

	}
}											
// ~ 여기까지 스킨셋팅 필요없음
*/
// 컨테이터 라디오 버튼 누름(키보드 사용 포함)
function chkRadioType(e){
	var event = (window.event)?window.event:e;
	var obj = (window.event)?event.srcElement:event.target;
	var key;

	var list = obj.parentNode.getElementsByTagName("li");
	obj = (obj.tagName.toLowerCase()=="img")?obj.parentNode:obj;
	var chkVal = (obj.tagName.toLowerCase()=="input")?obj.value:obj.id;
	
	var parentId = (obj.tagName.toLowerCase()=="input")?obj.parentNode.parentNode.id:obj.parentNode.id;
		
	if(event.type!="click"){
		key = event.keyCode;
		if(key!=9) stopEvent(e);
		if(key==37 || key==38){
			var curIndex = -1;
			for(var i=0;i<list.length;i++){
				if(list[i].id==obj.id && i!=0) curIndex = i;
			}
			if(curIndex!=-1) list[curIndex-1].focus();
			return;
		}else if(key==39 || key==40){
			var curIndex = -1;
			for(var i=0;i<list.length;i++){
				if(list[i].id==obj.id && i!=list.length-1) curIndex = i;
			}
			if(curIndex!=-1) list[curIndex+1].focus();
			return;
		}else if(key==32 || key==13){
			//아래로 그냥 이동해서 로직 수행
		}else{
			return;
		}
	}
	if(parentId=="blogTypeRadio"){
		chkRadioBlog(obj,chkVal);
	}else if(parentId=="skinRadio"){
		chkRadioSkin(obj,chkVal);
	}
}

// 블로그 타입 체크
function chkRadioBlog(obj,chkVal){
	hideWidgetConfig(obj);
	//document.frmWidgetSetting.width.value = '166';
	//document.frmWidgetSetting.height.value = document.frmWidgetSetting.absoluteHeight.value;
	document.getElementById("frmWidgetSettingSize").className = "unvisible";
	var list = obj.parentNode.getElementsByTagName("li");
	// 체크된 상태 풀기
	for(var i=0; i<list.length; i++){
		if(list[i].className != "disabled") list[i].className = "";
	}
	// 퍼가기 버튼 위 닫아 줌
	obj.parentNode.className = "";
	
	if(chkVal=="blogT"){//다음블로그
		addWidget(widgetContainer.DAUMBLOG, obj);
	}else if(chkVal=="tistoryT"){//티스토리
		addWidget(widgetContainer.TISTORY, obj);
	}else if(chkVal=="daumcafeT"){//다음카페
		addWidget(widgetContainer.DAUMCAFE, obj);
	}else if(chkVal=="inBlogT"){//설치형 블로그
		checkedType = 4;
		setContainerSetting(widgetContainer.OTHERS, "", "", "");
		showWidgetConfig(obj);
		document.getElementById("multiContainer").className = "listDD unvisible";
		resizePreview();
	}else if(chkVal=="naverblogT"){//네이버 블로그
		checkedType = 5;
		setContainerSetting(widgetContainer.NAVERBLOG, "", "", "");
		showWidgetConfig(obj);
		document.getElementById("multiContainer").className = "listDD unvisible";
		resizePreview();
	}
}

function resizePreview(){
	var layerid = "widgetPreview";
	if(((document.getElementById(layerid).parentNode.offsetHeight-25)-document.getElementById(layerid).offsetHeight)/2>0){
		document.getElementById(layerid).style.marginTop = ((document.getElementById(layerid).parentNode.offsetHeight-25)-document.getElementById(layerid).offsetHeight)/2 + "px";
	}
}
function initContainerStatus() {
	checkedType = 0;
	resizePreview();
}

// 컨테이너 티스토리나 블로그 누름
function addWidget(containerType, obj) {
	var url = "";
	if (containerType == widgetContainer.DAUMBLOG){
		url = "/user/daumblog/infoContainer.json";
	}else if (containerType == widgetContainer.TISTORY) {
		url = "/user/tistory/infoContainer.json";
	}else if (containerType == widgetContainer.DAUMCAFE) {
		url = "/user/daumcafe/infoContainer.json";
	}
	
	new Ajax.Request(url, 
	  {
	    method:'post', encoding:'UTF-8',
	    onSuccess: function(transport){
	      var response = transport.responseJSON || null;
	      if (response != null){
	      	checkResponseMessage(response, containerType, obj);
	      }
	    },
	    onFailure: function(){alert("잠시 후 사용해주세요.");},
		onException: function(req,exception){alert("잠시 후 사용해주세요."); }
	 });	
}

// 받아온 메시지로 설정창 보여줌
function checkResponseMessage(response, containerType, obj) {
	var content = "";
	var btn = "";
	var title = "계정관리";
	
	if (response.message.code == widgetbankMessage.USER_LOGIN) {
		if (!(inductScrapLogin(containerType)))
			initContainerStatus();
		return;
	}else if (response.message.code == widgetbankMessage.DB_ACCESS_ERROR){
		content += response.message.content;
		makeDarkPop(title,content,btn,true);
		initContainerStatus();
		return;
	}
	
	// Daum블로그이면
	if (containerType == widgetContainer.DAUMBLOG) {
		if (response.message.code == widgetbankMessage.NO_EXIST){
			content += "개설된 블로그가 없습니다.";
			btn += "<a href=\"http://blog.daum.net/_blog/redirect.do?redirect=register\" target=\"_blank\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_makeblog.gif\" width=\"98\" height=\"27\" alt=\"블로그만들기\"/></a>"
			btn += "<a href=\"#\" onclick=\"outDark(); return false\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_cancel.gif\" width=\"49\" height=\"27\" alt=\"취소\" /></a>";
			makeDarkPop(title,content,btn,true);
			return;
		}
		checkedType = 1;
	// 티스토리이면	
	}else if (containerType == widgetContainer.TISTORY) {
		btn = "<a href=\"/user/tistory/viewAccount\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_accont.gif\" width=\"73\" height=\"27\" alt=\"계정관리\"/></a>";
		btn += "<a href=\"#\" onclick=\"outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_cancel.gif\" width=\"49\" height=\"27\" alt=\"취소\" /></a>";
		if (response.message.code == widgetbankMessage.NO_ACCOUNT){
			content += "등록된 계정이 없습니다.<br /> 아래의 계정관리에서 ID등록을 해 주시기 바랍니다.";
			makeDarkPop(title,content,btn,true);
			initContainerStatus();
			return;
		}else if (response.message.code == widgetbankMessage.WAIT_ACCOUNT){
			content += "계정등록 진행중입니다.<br />등록하신 메일계정을 확인해 주시기 바랍니다.";
			makeDarkPop(title,content,btn,true);
			initContainerStatus();
			return;
		}else if (response.message.code == widgetbankMessage.NO_EXIST){
			content += "개설된 블로그가 없습니다.<br />티스토리 ID를 변경하셨다면 아래의 계정관리에서 ID변경을 해 주시기 바랍니다.";
			makeDarkPop(title,content,btn,true);
			initContainerStatus();
			return;
		}else if (response.message.code == widgetbankMessage.INVALID_USERINFO){
			content += "사용자 정보가 잘못되었습니다.";
			makeDarkPop(title,content,btn,true);
			initContainerStatus();
			return;
		}
		setTistory(response.containerInfo.containerList);
		checkedType = 2;
	// Daum카페이면	
	}else if (containerType == widgetContainer.DAUMCAFE) {
		btn = "<a href=\"http://cafe.daum.net\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_gocafe.gif\" width=\"114\" height=\"27\" alt=\"카페로 이동하기\"/></a>";
		btn += "<a href=\"#\" onclick=\"outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_cancel.gif\" width=\"49\" height=\"27\" alt=\"취소\" /></a>";
		if (response.message.code == widgetbankMessage.NO_EXIST){
			btn = "<a href=\"http://cafe.daum.net/make/cafe_make.html\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_makecafe.gif\" width=\"91\" height=\"27\" alt=\"카페 만들기\"/></a>";
			btn += "<a href=\"#\" onclick=\"outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_cancel.gif\" width=\"49\" height=\"27\" alt=\"취소\" /></a>";
			content += "현재 운영 중인 카페가 없습니다.";
			makeDarkPop(title,content,btn,true);
			initContainerStatus();
			return;
		}else if (response.message.code == widgetbankMessage.INVALID_USERINFO){
			content += "사용자 정보가 잘못되었습니다.";
			makeDarkPop(title,content,btn,true);
			initContainerStatus();
			return;
		}
		setDaumcafe(response.containerInfo.containerList);
		checkedType = 3;
	}
   	setContainerSetting(containerType, response.containerInfo.containerList[0].id, response.containerInfo.containerList[0].link, response.containerInfo.containerList[0].title);
   	showWidgetConfig(obj);
   	previewWidget();
}

// 위젯 셋팅 숨김
function hideWidgetConfig(obj){
	document.getElementById("multiContainer").className = "listDD unvisible";
	var dlObj = document.getElementById("widgetConfig");
	dlObj.className="unvisible";
}


// 위젯 셋팅 보여줌
function showWidgetConfig(obj) {
	if(obj.tagName.toLowerCase()!="input"){
		obj.className = "checked";	// 선택됨
		// 티스토리나 userPref 사이즈가 0보다 큰것만 보여줌
		if ((checkedType == 2) || (checkedType == 3) || (document.frmWidgetSetting.userPrefsSize.value != 0)) {
			obj.parentNode.className = "open";
			var dlObj = document.getElementById("widgetConfig");
			dlObj.className="";
		}
	}
}

// 컨테이너 0번으로(다음블로그는 당연히 0번) 컨테이너 셋팅
function setContainerSetting(containerType, containerId, containerLink, containerTitle) {
	document.frmWidgetSetting.containerType.value = containerType;
	document.frmWidgetSetting.containerId.value = containerId;
	document.frmWidgetSetting.containerLink.value = containerLink;
	document.frmWidgetSetting.containerTitle.value = containerTitle;
	
	setDefaultValueReservedUserPrefsKey();
}

// 티스토리 블로그 목록 뿌리기
function setTistory(containerList) {
	var strHtml = '';
	var titleStr = '';
	if(calculate_msglen(containerList[0].title)>23) titleStr = containerList[0].title;

	strHtml += "	<span class=\"ddTitle\">티스토리</span>";
	strHtml += "	<div id=\"accountSelect\" class=\"selectBox\" onclick=\"toggleList(event);\" onkeydown=\"selectKey(event);\" tabindex=0><div class=\"selectVal\" title=\""+titleStr+"\">" + leftByByte(containerList[0].title,23,true) + "</div></div>";
	strHtml += "	<input type=\"hidden\" id=\"selectAcVal\" name=\"selectAcVal\" value=\"\"/><span class=\"accountChange\" onclick=\"changeAccount()\" tabindex=0>계정 관리하기</span>";
	strHtml += "	<div id=\"accountSelectBg\" class=\"unvisible\">";
	strHtml += "		<div class=\"selectTop\"></div>";
	strHtml += "		<div class=\"selectContent\">";
	strHtml += "			<ul id=\"accountSelectUl\">";
	for (var i = 0; i < containerList.length; i++) {
		titleStr = '';
		if(calculate_msglen(containerList[i].title)>25) titleStr = containerList[i].title;
		strHtml += "<li id=\"selLi" + i + "\" onmouseover=\"setStyleSelect(this)\" onfocus=\"setStyleSelect(this)\" onclick=\"setSelectBox('selLi" + i + "','" + containerList[i].id + "','accountSelect','selectAcVal'); setContainerSetting('TISTORY', '" + containerList[i].id + "', '" + containerList[i].link + "', '" + escape(containerList[i].title) + "');previewWidget();\" onkeydown=\"selectKeyBox(event)\" title=\""+titleStr+"\" tabindex=0>" + leftByByte(containerList[i].title,25,true) + "</li>";
	}
	strHtml += "			</ul>";
	strHtml += "			<select class=\"unvisible\" onchange=\"setVal(this.value,'selectAcVal')\">";
	for (var i = 0; i < containerList.length; i++) {
		strHtml += "			<option value=\"" + containerList[i].id + "\" />" + containerList[i].title + "</option>";
	}
	strHtml += "			</select>";
	strHtml += "		</div>";
	strHtml += "		<div class=\"selectBottom\"></div>";
	strHtml += "	</div>";

	document.getElementById("multiContainer").innerHTML = strHtml;
	document.getElementById("multiContainer").className = "listDD visible";
	document.getElementById("multiContainer").style.zIndex = 800;
	addCloseObj("accountSelectBg");
}
// 다음카페  목록 뿌리기
function setDaumcafe(containerList) {
	var strHtml = '';
	var titleStr = '';
	if(calculate_msglen(containerList[0].title)>23) titleStr = containerList[0].title;

	strHtml += "	<span class=\"ddTitle\">Daum 카페</span>";
	strHtml += "	<div id=\"accountSelect\" class=\"selectBox\" onclick=\"toggleList(event);\" onkeydown=\"selectKey(event);\" tabindex=0><div class=\"selectVal\" title=\""+titleStr+"\">" + leftByByte(containerList[0].title,23,true) + "</div></div>";
	strHtml += "	<input type=\"hidden\" id=\"selectAcVal\" name=\"selectAcVal\" value=\"\"/>";
	strHtml += "	<div id=\"accountSelectBg\" class=\"unvisible\">";
	strHtml += "		<div class=\"selectTop\"></div>";
	strHtml += "		<div class=\"selectContent\">";
	strHtml += "			<ul id=\"accountSelectUl\">";
	for (var i = 0; i < containerList.length; i++) {
		titleStr = '';
		if(calculate_msglen(containerList[i].title)>25) titleStr = containerList[i].title;
		strHtml += "<li id=\"selLi" + i + "\" onmouseover=\"setStyleSelect(this)\" onfocus=\"setStyleSelect(this)\" onclick=\"setSelectBox('selLi" + i + "','" + containerList[i].id + "','accountSelect','selectAcVal'); setContainerSetting('DAUMCAFE', '" + containerList[i].id + "', '" + containerList[i].link + "', '" + escape(containerList[i].title) + "');previewWidget();\" onkeydown=\"selectKeyBox(event)\" title=\""+titleStr+"\" tabindex=0>" + leftByByte(containerList[i].title,25,true) + "</li>";
	}
	strHtml += "			</ul>";
	strHtml += "			<select class=\"unvisible\" onchange=\"setVal(this.value,'selectAcVal')\">";
	for (var i = 0; i < containerList.length; i++) {
		strHtml += "			<option value=\"" + containerList[i].id + "\" />" + containerList[i].title + "</option>";
	}
	strHtml += "			</select>";
	strHtml += "		</div>";
	strHtml += "		<div class=\"selectBottom\"></div>";
	strHtml += "	</div>";

	document.getElementById("multiContainer").innerHTML = strHtml;
	document.getElementById("multiContainer").className = "listDD visible";
	document.getElementById("multiContainer").style.zIndex = 800;
	addCloseObj("accountSelectBg");
}

function changeAccount(){
	document.location.href = "/user/tistory/viewAccount";
}

function toggleList(e){
	var event  = (window.event)?window.event:e;
	var obj = (window.event)?event.srcElement:event.target;
	if(obj.className=="selectVal") obj = obj.parentNode;
	var divList = obj.getElementsByTagName("div");
	var curVal = "";
	for(var i=0;i<divList.length;i++){
		var divObj = divList[i];
		if(divObj.className=="selectVal"){
			curVal = (divObj.title!="")?divObj.title:divObj.innerHTML;
		}
	}
	var bgObj = document.getElementById(obj.id+"Bg");
	openList = (bgObj.className=="unvisible")?true:false;
	bgObj.className = (openList)?"":"unvisible";
	var focusChk = false;
	if(openList){
		var dataList = bgObj.getElementsByTagName("li");
		for(var i=0;i<dataList.length;i++){
			var listVal = (dataList[i].title!="")?dataList[i].title:dataList[i].innerHTML;
			if(listVal==curVal){
				try{
					dataList[i].focus();
				}catch(e){
					//cause by list obj hidden...
				}
				focusChk = true;
				break;
			}
		}
		if(!focusChk){
			if(bgObj.getElementsByTagName("li")[0]!=null && bgObj.getElementsByTagName("li")[0]!="undefined"){
				try{
					bgObj.getElementsByTagName("li")[0].focus();
				}catch(e){
					//cause by list obj hidden...
				}
			}
		}	
	}
	closeSelect(bgObj.id);
	preStopEvent(event);
}

function preStopEvent(e){
	if(window.event){
		e.cancelBubble = true;
	}else{
		e.stopPropagation();
	}
}

function stopEvent(e){
	if(window.event){
		window.event.returnValue = false;		
	}else{
		e.preventDefault();
	}
}

var closeObj = new Array();

function addCloseObj(objId){
	if(closeObj.valueOf(objId)!=objId) { closeObj[closeObj.length]=objId; }
}

function closeSelect(){
	if(arguments.length!=0&&typeof arguments[0]=="string"){
		for (var i=0;i<closeObj.length;i++){
			if(document.getElementById(closeObj[i])!=null && document.getElementById(closeObj[i])!="undefined" && closeObj[i]!=arguments[0]) document.getElementById(closeObj[i]).className="unvisible";
		}
	}else{
		if(openList){
			for (var i=0;i<closeObj.length;i++){
				if(document.getElementById(closeObj[i])!=null && document.getElementById(closeObj[i])!="undefined") document.getElementById(closeObj[i]).className="unvisible";
			} 
		}
		openList = false;
	}
}

/* 셀렉트박스의 메인박스 */
function selectKey(e){
	var event = (window.event)?window.event:e;
	var obj = (window.event)?event.srcElement:event.target;
	var key;
	var boxId = obj.id+"Bg";
	var list = document.getElementById(boxId).getElementsByTagName("li");
	key = event.keyCode;
	if(key!=9) stopEvent(e);
	if(key==37||key==38){
		if(openList){
			for(var i=0;i<list.length;i++){
				if(list[i].className=="over"){
					try{
						list[i].focus();
					}catch(e){
						//cause by list obj hidden...
					}
					return;
				}
			}
		}
	}else if(key==39||key==40){
		if(openList){
			for(var i=0;i<list.length;i++){
				if(list[i].className=="over"){
					try{
						list[i].focus();
					}catch(e){
						//cause by list obj hidden...
					}
					return;
				}
			}
			if(list.length>0) list[0].focus();
		}else{
			toggleList(e);
		}
	}else if(key==32 || key==13){
		toggleList(e);
	}else if(key=27){
		closeSelect();
	}else{
		return;
	}
}

function selectKeyBox(e){
	var event = (window.event)?window.event:e;
	var obj = (window.event)?event.srcElement:event.target;
	var key;
	var list = obj.parentNode.getElementsByTagName("li");
	key = event.keyCode;
	if(key==9){
		closeSelect();
		closeSelect();
		document.getElementById(obj.parentNode.id.replace("Ul","")).focus();
		return; 
	}
	stopEvent(e);
	if(key==37||key==38){
		var curIndex = -1;
		for(var i=0;i<list.length;i++){
			if(list[i].id==obj.id && i!=0) curIndex = i;
		}
		if(curIndex!=-1){
			try{
				list[curIndex-1].focus();
			}catch(e){
				//cause by list obj hidden...
			}			
		}
		return;
	}else if(key==39||key==40){
		var curIndex = -1;
		for(var i=0;i<list.length;i++){
			if(list[i].id==obj.id && i!=list.length-1) curIndex = i;
		}
		if(curIndex!=-1){
			try{
				list[curIndex+1].focus();
			}catch(e){
				//cause by list obj hidden...
			}
		}
		return;
	}else if(key==32 || key==13){
		obj.onclick();
		document.getElementById(obj.parentNode.id.replace("Ul","")).focus();
		closeSelect();
		closeSelect();
	}else if(key==27){
		document.getElementById(obj.parentNode.id.replace("Ul","")).focus();
		closeSelect();
		closeSelect();
	}else{
		return;
	}
}

function setStyleSelect(obj){
	var listObj = obj.parentNode.getElementsByTagName("li");
	for(var i=0;i<listObj.length;i++){
		listObj[i].className = ""
	}
	obj.className = "over"
	try{
		obj.focus();
	}catch(e){
		//cause by list obj hidden...
	}
	
}

function setSelectBox(objId,val,viewId,inputId){
	if(document.getElementById(objId).title.length!=0){
		document.getElementById(viewId).firstChild.title = document.getElementById(objId).title;		
		document.getElementById(viewId).firstChild.innerHTML = leftByByte(document.getElementById(objId).title,23,true);
	}else{
		if(calculate_msglen(document.getElementById(objId).innerHTML)>23){
			document.getElementById(viewId).firstChild.title = document.getElementById(objId).innerHTML;
		}else{
			document.getElementById(viewId).firstChild.title = "";
		}
		document.getElementById(viewId).firstChild.innerHTML = leftByByte(document.getElementById(objId).innerHTML,23,true);
	}
	document.getElementById(inputId).value = val;
}

function setVal(val,outId){
	document.getElementById(outId).value = val;
}
// ~ 티스토리 계정 셀렉트 박스

function blogScrapSuccess(){
	var title = "Daum 블로그로 퍼가기 완료";
	var content = "";
	var btn = "";
	
	content += "선택하신 위젯이 Daum블로그에 적용되었습니다.<br />";
	content += "수정은, <span class=\"widgetSpec b\">Daum블로그</span> <span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">관리</span><span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">위젯설정</span>에서 적용해 주세요.";
	
	btn += "<a href=\"http://blog.daum.net/_blog/designFrame.do?viewmenu=widget\" onclick=\"outDark();\" target=\"_blank\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_goblog.gif\" width=\"107\" height=\"27\" alt=\"내 블로그 가기\" /></a>";
	btn += "<a href=\"#\" onclick=\"outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_later.gif\" width=\"84\" height=\"27\" alt=\"나중에 하기\" /></a>";

	makeDarkPop(title,content,btn,true);							
}

function tistoryScrapSuccess(){
	var title = "TISTORY로 퍼가기";
	var content = "";
	var btn = "";
	
	content += "선택하신 위젯이 성공적으로 적용되었습니다.<br />";
	content += "추가된 위젯을 사용하시려면<br />";
	content += "<span class=\"widgetSpec b\">TISTORY 관리</span> <span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">플러그인</span><span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">위젯설정</span>에서 적용해 주세요.";
	
	btn += "<a href=\"" + document.getElementById("containerLink").value + "/admin/widget/setting\" onclick=\"outDark();\" target=\"_blank\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_now.gif\" width=\"100\" height=\"27\" alt=\"지금 적용하기\" /></a>";
	btn += "<a href=\"#\" onclick=\"outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_later.gif\" width=\"84\" height=\"27\" alt=\"나중에 하기\" /></a>";

	makeDarkPop(title,content,btn,true);							
}

function daumcafeCubeScrapSuccess(){
	var title = "Daum 카페로 퍼가기 완료";
	var content = "";
	var btn = "";
	
	content += "선택하신 위젯이 Daum카페에 적용 되었습니다.<br />";
	content += "<span class=\"widgetSpec b\">Daum카페</span> <span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">꾸미기</span><span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">레이아웃</span><span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">위젯</span>에서 확인해 주세요.";
	
	var cafeInfo = document.getElementById("containerLink").value.split(":");
	var link = "http://cafe" + cafeInfo[0] + ".daum.net/_c21_/founder_home_management?mode=cube_skin&type=Layout&subtype=Widget&grpid=" + cafeInfo[1];
	btn += "<a href=\"" + link + "\" onclick=\"outDark();\" target=\"_blank\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_gocafe.gif\" width=\"114\" height=\"27\" alt=\"카페로 이동\" /></a>";
	btn += "<a href=\"#\" onclick=\"outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_later.gif\" width=\"84\" height=\"27\" alt=\"나중에 하기\" /></a>";

	makeDarkPop(title,content,btn,true);							
}
function daumcafeScrapSuccess(){
	var title = "Daum 카페로 퍼가기 완료";
	var content = "";
	var btn = "";
	
	content += "선택하신 위젯이 Daum카페에 적용 되었습니다.<br />";
	content += "<span class=\"widgetSpec b\">Daum카페</span> <span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">관리</span><span class=\"widgetSpec\">></span> <span class=\"widgetSpec b\">레이아웃 설정</span>에서 확인해 주세요.";
	
	var cafeInfo = document.getElementById("containerLink").value.split(":");
	var link = "http://cafe" + cafeInfo[0] + ".daum.net/_c21_/founder_layout_management_v2?fromBank=Y&grpid=" + cafeInfo[1];
	btn += "<a href=\"" + link + "\" onclick=\"outDark();\" target=\"_blank\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_gocafe.gif\" width=\"114\" height=\"27\" alt=\"카페로 이동\" /></a>";
	btn += "<a href=\"#\" onclick=\"outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_later.gif\" width=\"84\" height=\"27\" alt=\"나중에 하기\" /></a>";

	makeDarkPop(title,content,btn,true);							
}
function daumcafeScrapFail(scrapResult){
	var title = "안내";
	var content = "";
	var btn = "";
	
	if (scrapResult == 'EXIST') {
		content += "선택하신 위젯이 이미 카페에 있습니다.<br />";
		content += "다른 위젯을 선택해 주세요.";
	} else {
		content += "위젯 퍼가기 개수를 초과하였습니다.<br />";
		content += "1개 카페당 <span class=\"widgetSpec b\">최대 500개</span>의 위젯을 퍼갈 수 있습니다.";
	}
	
	btn += "<a href=\"#\" onclick=\"outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_ok.gif\" width=\"49\" height=\"27\" alt=\"확인\" /></a>";

	makeDarkPop(title,content,btn,true);							
}

function naverblogScrapSuccess(xmlurl, params, title) {
	var frm = document.frmWidgetSetting;
	var widgetId = document.getElementById('widgetId').value;
	
	var parameters = 'url=' + xmlurl + '&' + params;
	parameters += '&width=' + frm.width.value; 
	parameters += '&height=' + frm.height.value; 
	parameters += '&widgetId=' + widgetId;
	parameters += '&scrap=1';
	naverblogScrap(widgetId, parameters, title);
}
function naverblogScrap(widgetId, parameters, title){
	var url = "http://bridge.blog.naver.com/external/ScrapWidget.nhn?sourceType=widgetbank&patternName=widgetbank_1";
	url += "&sourceKey=" + widgetId;
	url += "&idCode=" + encodeURIComponent(parameters);
	url += "&title=" + encodeURIComponent(title);
	
	window.open(url, '', 'width=384,height=255,scrollbars=no');
}

function inblogScrapSuccess(url, xmlurl, params, title) {
	var frm = document.frmWidgetSetting;
	var widgetId = document.getElementById('widgetId').value;
	
	var parameters = 'url=' + xmlurl + '&' + params;
	parameters += '&width=' + frm.width.value; 
	parameters += '&height=' + frm.height.value; 
	parameters += '&widgetId=' + widgetId;
	parameters += '&scrap=1';
	inBlogScrap(url, parameters);
	increaseCopycnt(widgetId);
}
function inBlogScrap(url, parameters){
	var title = "설치형 블로그로(HTML 소스) 퍼가기";
	copyClip(url, parameters, title);
}

function copyClip(url, parameters, title){
	var source = '<script src="http://' + url + '/view?' + parameters + '" type="text/javascript"></script>';
	
	var copySourceResult = copySource(source);
	if(copySourceResult==false){
		alert("소스가 정상적으로 생성되지 않았습니다.");
		return;
	}
	
	var title = "HTML 소스 퍼가기";
	var content = "";
	var btn = "";
	content += copySourceResult;
	content += "<textarea id=\"copyTxt\" cols=\"55\" rows=\"5\">"+source+"</textarea>";

	
	btn += "<a href=\"#\" onclick=\"javascript:outDark(); return false;\"><img src=\"http://pimg.daum-img.net/widgetbank/btn_ok.gif\" width=\"49\" height=\"27\" alt=\"확인\" /></a>";
	/*btn += "<a href=\"#\" onclick=\"javascript:outDark(); return false;\"><img class=\"imgLm\" src=\"http://pimg.daum-img.net/widgetbank/btn_cancel.gif\" width=\"49\" height=\"27\" alt=\"취소\" /></a>";*/
	
	makeDarkPop(title,content,btn,true);							
	document.getElementById("copyTxt").select();

}

function copyWidgetSource(param) {
	new Ajax.Request('/factory/widget/copyWidgetSource.json', {
		method :'post',
		encoding :'UTF-8',
		parameters : {
			id :param
		},
		onSuccess : function(transport) {
			var response = transport.responseJSON || "no response text";
			if (response.url == null) {
				alert('위젯코드가 잘못되었습니다. 위젯코드를 수정해주세요.');
				return;
			}
			copyClip(response.url, response.params, "소스 퍼가기");
		},
		onFailure : function() {
			alert('잠시 후 사용해주세요.')
		},
		onException : function() {
			alert('잠시 후 사용해주세요.')
		}
	});
}


function registerSuccess(){
	var title = "위젯 팩토리";
	var content = "";
	var btn = "";
	
	content += "<span class=\"widgetSpec b\">위젯이 정상적으로 등록 되었습니다.</span> ";
	content += "등록해 주신 위젯은 약 2주 정도의 검토기간을 거친후 등록 되며,<br />";
	content += "결과는 입력해 주신 E-mail 주소를 통해 알려 드리겠습니다.<br />";	
	
	btn += "<a href=\"\"><img src=\"http://pimg.daum-img.net/widgetbank/factory/return_btn.gif\" width=\"132\" height=\"26\" alt=\"위젯뱅크 돌아가기\" /></a>";

	makeDarkPop(title,content,btn,true);							
}

function increaseCopycnt(widgetId) {
	new Ajax.Request('/widget/copyClip.json', 
	  {
	    method:'post', encoding:'UTF-8', parameters:{widgetId : widgetId},
	    onSuccess: function(transport){},
	    onFailure: function(){},
		onException: function(){}
	 });				
}

function copySource(source){
	var msg = "설치하고자 하는 블로그나 웹사이트에 Ctrl + v로 HTML 소스를<br />복사해 넣으시면 됩니다.";
	if(source.length<1) false;
	var copy_clipResult = copy_clip(source);
	if(copy_clipResult==true){
		return "선택한 HTML 소스가 클립보드에 복사되었습니다.<br />" + msg;
	}else if(copy_clipResult==false){
		return false;
	}else{
		return copy_clipResult + msg;
	}
}

function copy_clip(meintext){
	try {
		if (window.clipboardData) {
			return window.clipboardData.setData("Text", meintext);
		}
		else 
			if (window.netscape) {
				// dit is belangrijk maar staat nergens duidelijk vermeld:
				// you have to sign the code to enable this, or see notes below
				try {
					netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
				} 
				catch (e) {
					return "복사가 되지 않았습니다.<br /> Ctrl + c로 복사하시기 바랍니다.<br />";
				}
				// maak een interface naar het clipboard
				var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
				if (!clip) 
					return false;
				
				// maak een transferable
				var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
				if (!trans) 
					return false;
				
				// specificeer wat voor soort data we op willen halen; text in dit geval
				trans.addDataFlavor('text/unicode');
				
				// om de data uit de transferable te halen hebben we 2 nieuwe objecten nodig om het in op te slaan
				var str = new Object();
				var len = new Object();
				
				var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
				
				var copytext = meintext;
				str.data = copytext;
				trans.setTransferData("text/unicode", str, copytext.length * 2);
				
				var clipid = Components.interfaces.nsIClipboard;
				if (!clip) 
					return false;
				clip.setData(trans, null, clipid.kGlobalClipboard);
				return true;
			}
	}catch(e){
		alert("잠시후에 사용해주세요.");
	}
	
}

function chkRadioTistory(obj,val){
	var list = obj.parentNode.getElementsByTagName("li");
	for(var i=0; i<list.length; i++){
		list[i].className = "";
	}
	document.getElementById("acRadioValue").value = val;
	obj.className = "checked";
}

document.onclick = closeSelect;
window.onresize = setDarkPosition;
