/*=========================================================
	페이지내 객체 수정
=========================================================*/
// 페이지내 아이콘에 title 속성을 부여함. (해당태그 a, span)
function DOMsetIcon(obj, tag){

	if(!obj) return false;

	var ele=obj.getElements(tag);
	var len=ele.length;
	for(var i=0 ; i < len ; i++){
		if(typeof(ele[i].title)=='string' && ele[i].title!='') continue;	// 타이틀 속성이 지정되어 있으면 건너뛰기
		if(parseInt(ele[i].getStyle('text-indent'))>-1000) continue;	// text indent가 -1000보다 크면 건너뛰기

		var str=ele[i].innerHTML;
		str=str.replace('<FONT>', '');
		str=str.replace('</FONT>', '');
		str=str.replace('<font>', '');
		str=str.replace('</font>', '');
		ele[i].title=str;
	}

}

// input 태그에 속성 및 css 클래스 적용
function DOMsetInput(obj, unitSize, useBgText){

	this.labelEle=function(ele){

		var ele=ele.getElements('LABEL');
		var len=ele.length;
		var rtnArr=Array();

		for(var i=0 ; i < len ; i++){
			var target=getFor(ele[i]);
			rtnArr[target]=ele[i];
		}

		return rtnArr;

	}

	var unitSize=(unitSize)? parseInt(unitSize):10;
	var ele=obj.getElements('INPUT');
	var len=ele.length;
	var labelEles=this.labelEle(obj);
	var useBgText=(useBgText)? true:false;

	for(var i=0 ; i < len ; i++){

		switch(ele[i].type){
			case 'password':
			case 'text':
				if(!ele[i].className) ele[i].className='INPUT_TEXT';	// css클래스가 지정되지 않았으면 기본 css 클래스 적용

				if(ele[i].id && useBgText){
					ele[i].addEvent('focus', function(){ $(this).setStyle('background-position', 'left -30px'); });
					ele[i].addEvent('blur', function(){ 
						if(!this.value) $(this).setStyle('background-position', 'left top'); 
					});
					if(ele[i].value!='') ele[i].setStyle('background-position', 'left -30px');
					if(labelEles[ele[i].id]){
						labelEles[ele[i].id].setStyle('display', 'none');	// 해당 라벨들을 숨김
						ele[i].title=labelEles[ele[i].id].innerHTML;// 각 라벨들의 내용을 타이틀로 교체
					}
				}

				if(ele[i].readOnly==true){
					ele[i].setStyle('background-color', '#F4F4F4');
					ele[i].setStyle('color', '#818181');
				}

				switch(ele[i].getAttribute('textType')){
					case 'money':
						$(ele[i]).addEvent('keyup', function(){
							this.value=Money.mark(this.value);
						});
					break;
				}

				if(!ele[i].size) continue;
				var sizeWidth=parseInt(ele[i].size)*unitSize;
				ele[i].setStyle('width', sizeWidth+'px');

			break;
			case 'radio':
				if(!ele[i].className) ele[i].className='INPUT_RADIO';	// css클래스가 지정되지 않았으면 기본 css 클래스 적용
			break;
			case 'checkbox':
				if(!ele[i].className) ele[i].className='INPUT_CHECKBOX';	// css클래스가 지정되지 않았으면 기본 css 클래스 적용
			break;

		}
		
	}

}

// 패이지내 a 링크태그에 스크립트 적용
function DOMsetLink(obj, option){

	this.convertLinkPath=function(linkPath, target){

		var urlArr=document.location.href.split('/');
		var len=Number(urlArr.length)-1;
		var thisURL='';
		for(var i=0 ; i < len ; i++){
			var url=urlArr[i]+'/';;
			thisURL+=url;
		}

		var linkArr=linkPath.split('/');
		var fileName=linkArr[Number(linkArr.length)-1];

		switch(target){
			case 'blank': return thisURL+'blank_page/'+fileName; break;
			case 'self': return thisURL+fileName; break;
		}

	}

	if(!obj) return false;

	var conLink=true;

	if(option){
		conLink=(typeof(option.conLink)=='boolean' && option.conLink)? true:false;
	}

	// 지정 영역내 a 태그 스크립트 설정
	var ele=obj.getElements('A');
	var len=ele.length;


	for(var i=0 ; i < len ; i++){

		if(ele[i].getAttribute('allowScript') == 'no') continue;

		switch(ele[i].target){
			case '_blank':	// blank 일경우
				if(conLink) ele[i].href=this.convertLinkPath(ele[i].href, 'blank');
				switch(ele[i].getAttribute('openType')){
					case 'modal': ele[i].addEvent('click', function(){ openModalAjax(this); return false; }); break;
					case 'popup': ele[i].addEvent('click', function(){ openPopUp(this); return false; }); break;
					case 'layer':
					default: ele[i].addEvent('click', function(){ openLayerAjax(this); return false; });
				}
			break;
			case '_self':	// self 이면 onclick 이벤트를 주지않고 경로를 바로 잡음
				if(conLink) ele[i].href=this.convertLinkPath(ele[i].href, 'self');
			break;
			default:	// 기타
				ele[i].addEvent('click', function(){
					setParmValue(this.href);
					return false;
				});

		}

	}

}

// 특정 테이블의 상단, 하단에 스타일 클래스 지정
function DOMsetTableClass(){

	var form=$('SEARCH_FORM');
	if(!form) return false;
	if(!form.getElement('TABLE')) return false;

	// 검색 테이블의 스타일 클래스 세팅
	var ele=getChildNodes(form.getElement('TABLE'), {name:'TBODY'});
	var ele=getChildNodes(ele[0]) ;
	var len=Number(ele.length);

	var trEle=getChildNodes(ele[0]);	// 테이블 행의 첫째줄
	trEle[0].className='top';
	trEle[1].className='top';

	var trEle=getChildNodes(ele[(len-1)]);	// 테이블 행의 마지막줄
	trEle[0].className='bottom';
	trEle[1].className='bottom';

}

/*=========================================================
	엑셀 및 인쇄
=========================================================*/
// 광고주 및 관리자용
// 엑셀 출력
function printExel(fileName){

	var item=document.getElementsByName('item[]');
	var len=item.length;
	var checkCnt=0;

	for(var i=0 ; i < len ; i++){
		if(item[i].checked==true) checkCnt++;
	}

	if(checkCnt!=1){
		alert('하나의 아이템선택 -> 검색후 엑셀 출력하세요.');
		return false;
	}
//alert($('SEARCH_FORM').query_string.value);
	var queryString=$('SEARCH_FORM').query_string.value;
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');

	document.location.href='blank_page/'+fileName+'?'+queryString;
//	window.open('blank_page/'+fileName+'?'+queryString , 'exel', "scrollbars=yes,resizable=yes,width=100,height=100");

}

// 프린트 출력
function printPrint(fileName){

	var item=document.getElementsByName('item[]');
	var len=item.length;
	var checkCnt=0;

	for(var i=0 ; i < len ; i++){
		if(item[i].checked==true) checkCnt++;
	}

	if(checkCnt!=1){
		alert('하나의 아이템선택 -> 검색후 출력하세요.');
		return false;
	}

	var queryString=$('SEARCH_FORM').query_string.value;
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');

	var width='800';
	var height='500';

	window.open('blank_page/'+fileName+'?'+queryString , 'print', "scrollbars=yes,resizable=yes,width="+width+",height="+height);

}
// 마케터용
//엑셀출력
function printExelMkt(fileName){

	var queryString=$('SEARCH_FORM').query_string.value;
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	queryString=queryString.replace('&amp;','&');
	document.location.href='blank_page/'+fileName+'?'+queryString;

}

//프린트출력
function printPrintMkt(fileName){

	alert(fileName);

}

/*=========================================================
	리스트 출력관련
=========================================================*/

// 유효, 비유효 탭
function search_trash(kind){

	var ele=$('trash_tab').getElements('INPUT');
	var len=ele.length;
	for(var i=0 ; i < len ; i++){
		ele[i].className=(ele[i].getAttribute('accesskey')==kind)? 'BTN_TAB_SELECTED':'BTN_TAB_UNSELECTED';
	}

	var form=$('SEARCH_FORM');
	form.adv_valid.value=kind;
	eval(objName+'.Print()');
}


// 아작스로 열린 리스트 페이지의 각종정보를 전달한다.
function getInformListPage(obj){

	if(obj){
		var thisPage=(obj.thisPage)? Number(obj.thisPage):1;	// 현재 페이지
		var queryString=(obj.queryString)? obj.queryString:'';	// 검색 문자열
		var pageArr=(obj.pageArr)? obj.pageArr:Array();

		var form=$('SEARCH_FORM');
		if(!form.page){
			alert('필수 항목이 검색폼에 없습니다. (name : page)');
			return false;
		}
		form.page.value=thisPage;
		if(form.query_string) form.query_string.value=queryString;
		if(form.page_first) form.page_first.value=pageArr['first'];
		if(form.page_last) form.page_last.value=pageArr['last'];
		if(form.page_pages) form.page_pages.value=pageArr['pages'];
	}

	if(typeof(objName)=='string'){
		eval(objName+'.convertLink()'); 
		eval(objName+'.convertSrc()'); 
	}else{ alert('변수 미지정: objName'); }
	eval(objName+'.SetPage()'); // 페이지 영역 갱신
	eval(objName+'.SetStyleLayer()'); // 리스트내 레이어용 객체 스타일 정의

	var tableEle=$('LIST_PRINT_AREA').getElement('TABLE');
	if(tableEle.getAttribute('markRow')=='no') return false;

	TableRowDivision1.tableObj=$('LIST_PRINT_AREA').getElement('TABLE');
	TableRowDivision1.SetEvent();

}

// uri를 받아 검색폼에 파라미터명에 맞는 폼에 값을 저장후 리스트 출력
function setParmValue(linkPath){

	var arr=linkPath.split('?');
	var queryString=(arr[1])? arr[1]:'';
	if(queryString=='') return false;
	var form=$('SEARCH_FORM');

	var arr=queryString.split('&');
	var len=arr.length;

	for(var i=0 ; i < len ; i++){
		var paramArr=arr[i].split('=');
		var ele=document.getElementsByName(paramArr[0]);
		ele[0].value=paramArr[1];
/*
		alert("$('SEARCH_FORM')."+paramArr[0]+".value='"+paramArr[1]+"'");
		eval("$('SEARCH_FORM')."+paramArr[0]+".value='"+paramArr[1]+"'");
*/
	}

	eval(objName+'.Print()'); // 페이지 영역 갱신
	return false;

}

// 객체로 전달된 오브젝트의 속성명과 값을 동일한 속성명의 아이디 객체 영역내 값을 삽입
function injectValuesToArea(obj){

	for(var name=String in obj){
		if(!$(name)) continue;
		$(name).innerHTML=obj[name];
	}

}

// 객체로 전달된 오브젝트의 속성명과 값을 동일한 속성명의 아이디 객체(form) 의 value 속성에 삽입
function injectValuesToForm(obj){

	for(var name=String in obj){
		if(!$(name)) continue;
		$(name).value=obj[name];
	}

}

/*=========================================================
	아작스 처리
=========================================================*/

// get 방식으로 ajax로 전달 후 결과값을 resultAjax로 보여줌
function getAjax(obj, addParamObj){

	var linkObj=dividURI(obj.href, addParamObj);
	var myRequest = new Request({method: 'get', url:linkObj.linkPath , onSuccess:function(resultHTML){
		eval(resultHTML);
	}});
	myRequest.send(linkObj.linkURI);
	return false;

}

// 폼객체에서 submit 명령에 대해 아작스로 대신 처리
function formSubmit(obj, option){

	var form=$(obj);
	var loadingMsg=false;
	var noAjax=false;
	var msgObjName='';

	if(option){
		loadingMsg=option.loadingMsg;
		noAjax=option.noAjax;
		msgObjName=option.msgObjName;
	}

	var iEle=form.getElements('input');
	var len=iEle.length;

	for(var i=0 ; i < len ; i++){
		switch(iEle[i].getAttribute('textType')){
			case 'money':	// 폼 양식내 textType이 money 인 텍스트폼이면 콤마 제거
				iEle[i].value=Money.unmark(iEle[i].value);
			break;
			case 'repetition':	// 폼 양식내 textType이 repetition 인 텍스트폼이면 중복 확인 절차를 거치도록
				var textTypeVal=iEle[i].getAttribute('textTypeVal');
				var labelEle=getLabel(iEle[i].id);
				if(textTypeVal=='' || textTypeVal!=iEle[i].value){
					alert('"'+labelEle.innerHTML+'"의 중복확인을 하여주십시오.');
					return false;
				}
			break;
		}
	}

	if(noAjax) return true;

	if(loadingMsg){ // 로딩 메시지가 true 이면 폼영역에 '로딩중'메세지 표시

		var areaEle=null;
		if(typeof(loadingMsg)=='boolean') areaEle=form;
		if(typeof(loadingMsg)=='object') areaEle=$(loadingMsg);

		var ele=areaEle.getCoordinates();
		var loadingEle=new Element('DIV', {id:'LOADING_MSG'});
		loadingEle.setStyle('width', ele.width+'px');
		loadingEle.setStyle('height', ele.height+'px');
		loadingEle.inject(areaEle, 'top');

		var contentEle=new Element('P');
		contentEle.setStyle('width', ele.width+'px');
		contentEle.setStyle('height', ele.height+'px');
		contentEle.inject(loadingEle, 'top');

	}

	switch(form.enctype){
		case 'multipart/form-data': // 파일업로드 형식이면
			var iFrame=new Element('iframe', {id:'FRAME_FOR_AJAX', name:'FORM_DATA', frameborder:'0', width:'1', height:'1'});
			iFrame.setStyle('display', 'none');
			document.body.appendChild(iFrame);
			form.appendChild(new Element('input', {type:'hidden', name:'IS_FRAMEAJAX', value:'Y'}));
			form.target='FORM_DATA';
			form.submit();
		break;
		default:	// 기타
			form.set('send',{onSuccess:function(resultHTML){
				openedObjName=msgObjName;
				eval(resultHTML);
			}});
			form.send();
	}

	return false;

}

function resultAjax(msg, moveTo){

	if($('FRAME_FOR_AJAX')) document.body.removeChild($('FRAME_FOR_AJAX'));

	if(msg && moveTo!='newbox') alert(msg);

	if(moveTo){
		switch(moveTo){
			case 'reload': document.location.reload(); break;
			case 'reprint': eval(objName+'.Print()'); msgBox1.close(); msgBox2.close(); break;
			case 'close': opener.location.reload(); window.close(); break;
			case 'fix': return false; break;
			case 'newbox': msgBox2.layerOpen(msg, {modal:false, dragMove:true}); break;
			case 'close_layer': if(openedObjName) eval(openedObjName+'.close()'); break;
			default: document.location.href=moveTo;
		}
		
		return false;
	}
	
	if(typeof(objName)=='string'){
		eval(objName+'.Print()'); // 리스트 재출력
		msgBox1.close();	// 레이어 닫기
	}

}

/*=========================================================
	레이어 열기
=========================================================*/
// target 속성이 _blank인 링크태그를 레이어로 열기

function dividURI(link, addParamObj){

	var link=link.split('?');
	var linkPath=link[0];
	var linkURI=link[1];

	if(addParamObj){
		for(var name in addParamObj){
			if(linkURI){
				linkURI=linkURI+'&'+(name+'='+addParamObj[name]);
			}else{
				linkURI=(name+'='+addParamObj[name]);
			}
		}
	}

	return {linkPath:linkPath, linkURI:linkURI};

}

function openLayerAjax(obj, addParamObj){	// 일반 레이어

	var boxClass=obj.getAttribute('boxClass');
	var linkObj=dividURI(obj.href, addParamObj);
	var myRequest = new Request({method: 'get', url:linkObj.linkPath , onSuccess:function(resultHTML){
		msgBox2.layerOpen(resultHTML, {modal:false, standardObject:$(obj), setFocus:false, boxClass:boxClass});
	}});
	myRequest.send(linkObj.linkURI);
	return false;

}

function openModalAjax(obj, addParamObj, optionObj){	// 모달 다이얼로그

	var boxClass=(optionObj && optionObj.boxClass)? optionObj.boxClass : obj.getAttribute('boxClass');
	var linkObj=dividURI(obj.href, addParamObj);
	var myRequest = new Request({method: 'get', url:linkObj.linkPath , onSuccess:function(resultHTML){
		msgBox1.layerOpen(resultHTML, {modal:true, setFocus:true, boxClass:boxClass});
	}});
	myRequest.send(linkObj.linkURI);
	return false;

}

function openLayer(obj, layerEle){	// 기존 영역 열기

	targetLayer.layerOpen('', {standardObject:obj, boxObj:$(layerEle)});

}

function openMedia(obj, type, heading, attrObj){	// 이미지, 플래시 레이어로 열기

	var boxClass=obj.getAttribute('boxClass');
	var resultHTML='<h2 class="LAYER_HEADLINE">'+heading+'</h2>';
	var attrStr='';
	var height=0;
	var width=0;
	if(attrObj){
		if(attrObj.height) height=Number(attrObj.height)+20;
		if(attrObj.width) width=Number(attrObj.width)+20;
	}

	for(var name in attrObj){
		attrStr+=name+'="'+attrObj[name]+'" ';
	}

	switch(type){
		case 'image': resultHTML+='<div class="media"><img src="'+obj.href+'" '+attrStr+' width="'+attrObj.width+'" height="'+attrObj.height+'" /></div>'; break;
		case 'flash': resultHTML+='<div class="media">'+flash_contents_str(obj.href, attrObj.width, attrObj.height)+'</div>'; break;
		case 'sound': resultHTML+='<embed src="'+obj.href+'" width="300" height="40" autoplay="true" loop="false"></embed>'; break;
	}

	mediaBox.layerOpen(resultHTML, {modal:false, standardObject:$(obj), dragMove:true, boxClass:boxClass, width:width, height:height});

	return false;
}

function openPopUp(obj, id, width, height){

	var width=(width)? width:100;
	var height=(height)? height:100;
	var id=(id)? id: 'popup_window';

	window.open(obj.href , id, "scrollbars=yes,resizable=yes,width="+width+",height="+height);
	return false;

}

/*=========================================================
	Utility
=========================================================*/
// 글자하나하나 분리하여 배열로 리턴
function divisionString(str, maxLength){

	var spanStr='';
	var len=str.length;
	var maxLength=(maxLength)? Number(maxLength):0;
	var rotation=len;
	var gap=0;
	var negative=false;

	if(len < maxLength){
		rotation=maxLength;
		gap=maxLength-len;
		if(str.substring(0, 1)=='-') negative=true;	// 앞자리에 음수기호 있으면
	}
	var arr=new Array();
	var idx=0;
	for(var i=0 ; i < rotation ; i++){
		if(i < gap){
			arr[i]=null;
		}else{
			var character=str.substring(idx, (idx+1));
			arr[i]=character;
			idx++;
		}
	}
	return arr;

}

// 숫자 가공
function processNumber(num){

	if(typeof(num)!='number') return parseInt(num);	// 숫자형태가 아니면 숫자로 변환
	if(0 < num || 0 == num || 0 > num ) return num;	// 0보다 크거나, 작거나, 같은 수 이면 0으로 반환
	return 0;	// 숫자형태이나 숫자가 아니면 0으로 반환

}

// 특정개체의 하위 노드를 반환한다.
function getChildNodes(obj, optObj){

	var nodeType=1;
	var nodeName=null;	// 하위 노드의 태그명

	if(optObj){
		if(optObj.type) nodeType=optObj.type;
		if(optObj.name) nodeName=optObj.name;
	}

	var ele=obj.childNodes;
	var len=ele.length;
	var rtnObj=Array();
	var idx=0;

	for(var i=0 ; i < len ; i++){

		if(typeof(nodeType)=='number' && ele[i].nodeType!=nodeType) continue;
		if(typeof(nodeName)=='string' && ele[i].nodeName!=nodeName) continue;
		rtnObj[idx]=ele[i];
		idx++;

	}

	return rtnObj;

}

function getSizeWindow(){

	var obj=new Object();
	obj.width= document.documentElement.scrollWidth;
	obj.height=document.documentElement.scrollHeight;
	obj.screenWidth=document.documentElement.clientWidth;
	obj.screenHeight=document.documentElement.clientHeight;
	obj.scrollLeft=document.documentElement.scrollLeft;
	obj.scrollTop=document.documentElement.scrollTop;
	return obj;

}

function openTab(arr, openTab){

	var tagArr=new Array();
	tagArr['SPAN']='inline';


	var len=arr.length;

	for(var i=0 ; i < len ; i++){
		if(!$(arr[i])) continue;
		if(arr[i]==openTab){
			if(tagArr[$(arr[i]).tagName]){
				$(arr[i]).setStyle('display', tagArr[$(arr[i]).tagName]);
			}else{
				$(arr[i]).setStyle('display', 'block');
			}
			continue;
		}
		$(arr[i]).setStyle('display', 'none');
	}

}

function openTabOnChk(obj, openTab){

	if(obj.checked){
		$(openTab).setStyle('display', 'block');
	}else{
		$(openTab).setStyle('display', 'none');
	}

}

// 특정 경로의 페이지로 get 방식으로 파라미터 전달후 받아온 스크립트 실행
function checkRepetition(obj, valueObj, valueObj2){

	var link=obj.href;
	var link=link.split('?');
	var linkPath=link[0];
	var linkURI='obj_id='+valueObj.id+'&'+valueObj.name+'='+valueObj.value+'&'+link[1];

	if(typeof(valueObj2)=='object'){
		linkURI+='&'+valueObj2.name+'='+valueObj2.value;
	}

	var myRequest = new Request({method: 'post', url: linkPath, onSuccess:function(resultHTML){
	
		try{
			eval(resultHTML);
		}catch(e){
			msgBox2.layerOpen(resultHTML, {modal:false, dragMove:true});
		}
	
	}});
	myRequest.send(linkURI);
	return false;

}

// 중복 검사가 끝나면 해단 form에 textTypeVal에 중복검사한 값을 삽입
function checkRepetitionResult(result, targetID, msg){

	if(msg) alert(msg);
	if(result==true){
		var ele=$(targetID);
		ele.setAttribute('textTypeVal', ele.value);
	}
}

// 우편번호 검색레이어
function findZipCode(obj, valueObj){

	if(!valueObj.value){
		alert('동/리/건물명을 먼저 입력하여 주십시오.');
		valueObj.focus();
		return false;
	}

	var linkPath=obj.href;
	var linkURI=valueObj.id+'='+valueObj.value;

	var myRequest = new Request({method: 'post', url: linkPath, onSuccess:function(resultHTML){
		fileZipBox.layerOpen(resultHTML, {standardObject:obj});
	}});
	myRequest.send(linkURI);
	return false;

}
function setSubmit(obj){

	var ele=document.getElements(obj.tagName);
	var len=ele.length;

	for(var i=0 ; i < len ; i++){
		if(!ele[i].getAttribute('useThis')) continue;
		if(ele[i].name!=obj.name) continue;
		ele[i].setAttribute('useThis', 'N');
	}

	obj.setAttribute('useThis', 'Y');
}

// lable 태그의 for 속성 가져오기
function getFor(obj){

	var strFor='';
	if(obj.getAttribute('for')){
		strFor=obj.getAttribute('for');
	}else if(obj.getAttribute('htmlFor')){
		strFor=obj.getAttribute('htmlFor');
	}

	return strFor;

}

// 특정 아이디값에 대한 라벨태그 가져오기
function getLabel(id){

	var ele=document.getElements('label');
	var len=ele.length;

	for(var i=0 ; i < len ; i++){
		if(getFor(ele[i])==id) return ele[i];
	}
	return false;

}


/*
배열 순서 정렬
arr[0]=10;
arr[1]=30;
arr[2]=5;
orderArr(arr, 'desc');
*/
function orderArr(arr, type){

	this.setNewArr=function(len){
		var setArr=new Array();
		for(var i=0 ; i < len ; i++){
			setArr[i]=new Array();
			setArr[i]['index']=null;
			setArr[i]['value']=null;
		}
		return setArr;
	}
	this.checkExists=function(arr, index){
		var len=arr.length;
		for(var i=0 ; i < len ; i++){
			if(arr[i]['index']==index) return true;
		}
		return false;
	}

	var len=arr.length;
	var orderedArr=this.setNewArr(len);

	for(var j=0 ; j < len ; j++){

		var maxIndex=null;
		var maxVal=null;
		for(var i=0 ; i < len ; i++){

			switch(type){
				case 'desc': if(maxVal > Number(arr[i])) continue; break;
				case 'asc': if(maxVal!=null && maxVal <= Number(arr[i])) continue; break;
			}

			if(this.checkExists(orderedArr, i)) continue;
			maxIndex=i;
			maxVal=Number(arr[i]);
		}

		orderedArr[j]['index']=maxIndex;
		orderedArr[j]['value']=maxVal;

	}

	return orderedArr;

}

function getParam(uri){

	var arr=uri.split("?");
	var len=arr.length;

	if(len > 1){ var uri=arr[1]; }else{ var uri=arr[0]; }

	var arr=uri.split('&');
	var len=arr.length;
	var rtnArr=new Array();

	for(var i=0 ; i < len ; i++){
		var param=arr[i].split('=');
		rtnArr[param[0]]=String(param[1]);
	}

	return rtnArr;

}

function copyCripBoard(str){

	if(window.clipboardData){

		str=str.replace('&lt;','<');
		str=str.replace('&gt;','>');
		str=str.replace('&lt;','<');
		str=str.replace('&gt;','>');
		str=str.replace('&lt;','<');
		str=str.replace('&gt;','>');
		str=str.replace('&lt;','<');
		str=str.replace('&gt;','>');
		str=str.replace('&lt;','<');
		str=str.replace('&gt;','>');
		str=str.replace('&lt;','<');
		str=str.replace('&gt;','>');
		str=str.replace('&lt;','<');
		str=str.replace('&gt;','>');

		result = window.clipboardData.setData("Text", str);
	}else{
		alert('익스플로러에서만 복사가 가능합니다.');
		return;
	}

	if(result){
		alert('복사되었습니다.');
	}

}

// 쿠키 읽어오기
function getCookies(cookieName){

	var allCookies=document.cookie.split('; ');
	var len=allCookies.length;

	for(var i=0 ; i < len ; i++){

		var str=allCookies[i];
		var cookieArray=str.split('=');

		if(cookieArray[0]==cookieName) return cookieArray[1];

	}

	return false;

}

// 쿠키 저장하기
function setCookies(cookieName, value, setTime){

	var dateStr='';

	var now=date=new Date();
	date.setDate(now.getDate()+setTime);
	dateStr=date.toGMTString();
	dateStr="expires="+dateStr;

	document.cookie=cookieName+"="+value+"; "+dateStr+'; ';

}

/*========================================================================
	플래시
========================================================================*/

// JavaScript Document
//flash
function flash_contents(file,width,height){
document.writeln("<OBJECT classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' WIDTH='"+width+"' HEIGHT='"+height+"' id='contents' ALIGN=''>");
document.writeln("<PARAM NAME=movie value='"+file+"' />");
document.writeln("<PARAM NAME=quality VALUE=high>");
document.writeln("<PARAM NAME=wmode VALUE=transparent> ");
document.writeln("<PARAM NAME=bgcolor VALUE=#FFFFFF>");
document.writeln("<param name=allowScriptAccess VALUE=always>");
document.writeln("<embed src='"+file+"' allowScriptAccess='always'  wmode='transparent' quality='high' bgcolor='#FFFFFF' width='"+width+"' height='"+height+"' name='contents' align='middle' allowScriptAccess='sameDomain' type='application/x-shockwave-flash' pluginspage='//www.macromedia.com/go/getflashplayer' />");
document.writeln("</OBJECT>");
}

function flash_contents_str(file,width,height){
	var str='';
	str+="<OBJECT classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000' codebase='//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0' WIDTH='"+width+"' HEIGHT='"+height+"' id='contents' ALIGN=''>";
	str+="<PARAM NAME=movie value='"+file+"' />";
	str+="<PARAM NAME=quality VALUE=high>";
	str+="<PARAM NAME=wmode VALUE=transparent> ";
	str+="<PARAM NAME=bgcolor VALUE=#FFFFFF>";
	str+="<param name=allowScriptAccess VALUE=always>";
	str+="<embed src='"+file+"' allowScriptAccess='always'  wmode='transparent' quality='high' bgcolor='#FFFFFF' width='"+width+"' height='"+height+"' name='contents' align='middle' allowScriptAccess='sameDomain' type='application/x-shockwave-flash' pluginspage='//www.macromedia.com/go/getflashplayer' />";
	str+="</OBJECT>";
	return str;
}

//TV_AD_MEDIA___
function tv_adplay(file,w,h,mediaName) {
document.write('<object id="'+mediaName+'" name=id="'+mediaName+'" width='+w+' height='+h+' classid="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95" codebase="//activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,05,0809" standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject" VIEWASTEXT>')
document.write('<param name="transparentAtStart" value="True">')
document.write('<param name="transparentAtStop" value="False">')
document.write('<param name="AnimationAtStart" value="0">')
document.write('<param name="Loop" value="true">')
document.write('<param name="AutoStart" value="1">')
document.write('<param name="AutoRewind" value="true">')
document.write('<param name="SendMouseClickEvents" value="True">')
document.write('<param name="DisplaySize" value="0">')
document.write('<param name="AutoSize" value="False">')
document.write('<param name="ShowDisplay" value="False">')
document.write('<param name="ShowControls" value="1">')
document.write('<param name="ShowTracker" value="1">')
document.write('<param name="FileName" value="'+file+'">')
document.write('<param name="Enabled" value="1">')
document.write('<param name="EnableContextMenu" value="1">')
document.write('<param name="EnablePositionControls" value="1">')
document.write('<param name="EnableFullScreenControls" value="1">')
document.write('<param name="ShowPositionControls" value="0">')
document.write('<param name="Mute" value="0">')
document.write('<param name="Rate" value="1">')
document.write('<param name="SAMILang" value="">')
document.write('<param name="SAMIStyle" value="">')
document.write('<param name="SAMIFileName" value="">')
document.write('<param name="ClickToPlay" value="1">')
document.write('<param name="CursorType" value="1">')
document.write('<embed src="'+file+'"   id="'+mediaName+'" Loop=true  quality=high menu="false" bgcolor=#FFFFFF  WIDTH="'+w+'" HEIGHT="'+h+'" autoplay=true controller=true loop=false type="application/x-oleobject"></embed></object>')
} 
//--------------------------------------------------------------



// TV by ap control --------------------------------------------------------------
function tv_adplay2(file,w,h,mediaName) {
document.write('<object id="'+mediaName+'" name="player" width='+w+' height='+h+' classid="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95" codebase="//activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,05,0809" standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject" VIEWASTEXT>')
document.write('<param name="transparentAtStart" value="True">')
document.write('<param name="transparentAtStop" value="False">')
document.write('<param name="AnimationAtStart" value="0">')
document.write('<param name="Loop" value="true">')
document.write('<param name="AutoStart" value="1">')
document.write('<param name="AutoRewind" value="true">')
document.write('<param name="SendMouseClickEvents" value="True">')
document.write('<param name="DisplaySize" value="0">')
document.write('<param name="AutoSize" value="False">')
document.write('<param name="ShowDisplay" value="False">')
document.write('<param name="ShowControls" value="0">')
document.write('<param name="ShowStatusBar"/> value="0" ')
document.write('<param value="6" name="BufferingTime"/> ')
document.write(' ')
document.write('<param name="ShowTracker" value="1">')
document.write('<param name="FileName" value="'+file+'">')
document.write('<param name="Enabled" value="1">')
document.write('<param name="EnableContextMenu" value="1">')
document.write('<param name="EnablePositionControls" value="1">')
document.write('<param name="EnableFullScreenControls" value="1">')
document.write('<param name="ShowPositionControls" value="0">')
document.write('<param name="Mute" value="0">')
document.write('<param name="Rate" value="1">')
document.write('<param name="SAMILang" value="">')
document.write('<param name="SAMIStyle" value="">')
document.write('<param name="SAMIFileName" value="">')
document.write('<param name="ClickToPlay" value="1">')
document.write('<param name="CursorType" value="1">')
document.write('<embed src="'+file+'"   id="'+mediaName+'" Loop=true  quality=high menu="false" bgcolor=#FFFFFF  WIDTH="'+w+'" HEIGHT="'+h+'" autoplay=true controller=true loop=false type="application/x-oleobject"></embed></object>')
} 

