﻿var isIE = (navigator.userAgent.toUpperCase().indexOf("MSIE") != -1);

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
   var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function getE(id)
{
    return document.getElementById(id);
}
function getF(name)
{
    return document.forms[name];
}

function popWindow(src,name,w,h)
{
	var left=(screen.width-w)/2;
	var top=(screen.height-h)/2;
	var args='height='+h+',width='+w+',top='+top+',left='+left+',scrollbars=auto,resizable=yes';
	try{
	    var win=window.open(src,name,args);
	    win.focus();
    }catch(e){alert("팝업허용을 해주시기 바랍니다.");}
}

function checkChar(str,referer){
    var slen = str.length;
    var rlen = referer.length;
    var check,i,j;
    for( i=0 ; i<slen ; i++ )
    {
        check = str.charAt(i);
        for( j=0 ; j<rlen ; j++ )
        {
            if( check == referer.charAt(j) ) break;
            if( j+1 == rlen ) return false;
        }
    }
    return true;
}
function isNumber(str){
    return checkChar(str,'-.0123456789');
}

function setCookie(name,value,expires){
    var d = new Date();
    var day="";
    if(expires) {
        d.setDate(d.getDate()+expires);
        day = "expires="+d.toGMTString()+";";
    }
    document.cookie = name+"="+escape(value)+"; path=/;"+day;
};

function getCookie(name){
 name += "=";
 cookie = document.cookie + ";";
 var start = cookie.indexOf(name);
 if (start != -1) {
    var end = cookie.indexOf(";",start);
    return unescape(cookie.substring(start + name.length, end));
 }
 return "";
};

function convertShortCity(str)
{
    switch(str)
    {
        case '서울특별시' : return '서울';
        case '부산광역시' : return '부산';
        case '인천광역시' : return '인천';
        case '대구광역시' : return '대구';
        case '광주광역시' : return '광주';
        case '대전광역시' : return '대전';
        case '울산광역시' : return '울산';
        case '강원도'     : return '강원';
        case '경기도'     : return '경기';
        case '충청북도'   : return '충북';
        case '충청남도'   : return '충남';
        case '경상북도'   : return '경북';
        case '경상남도'   : return '경남';
        case '전라북도'   : return '전북';
        case '전라남도'   : return '전남';
        case '제주도'     : return '제주';
    }
}

function isBlog()
{
    return /blog\.vrvr\.co\.kr/.test(document.location);
}

function panoPath(mid,tg,type)
{
    var str = '/imgdata';
    switch( type )
    {
        case 1 : str += '/sky/'; //항공
        break;
        case 2 : str += '/tour/'; //관광
        break;
    }
    str += floor(mid / 1000) + '/' + mid; //  디렉토리를 1000개 단위로 나눔

    switch(tg)
    {
        case '' :
        case 'BASE' :
            str += '/' + mid ;
        break;
        case 'THUMB' :
            str += '/_thumb_.jpg';
        break;
        default :
            str += '/' + mid + '_' + tg + '.jpg';
        break;
    }
    return str;
}

function dump(obj,level)
{
	var dumped_text = "";
	if(!level) level = 0;
	var level_padding = ""; //The padding given at the beginning of the line.
	for(var j=0;j<level;j++) level_padding += "        ";
	if(typeof(obj) == 'object') { //Array/Hashes/Objects
		for(var item in obj) {
			var value = obj[item];
			if(typeof(value) == 'object') { //If it is an array,
				dumped_text += level_padding + "[ " + item + " ]\n";
				dumped_text += dump(value,level+1);
			} else {
				dumped_text += level_padding + item + " => " + value + "\n";
			}
		}
	} else { //Stings/Chars/Numbers etc.
		dumped_text = "===>"+obj+"<===("+typeof(obj)+")";
	}
	return dumped_text;
}

String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g, '');
}

function flashLoad(swf,w,h,v,r){

	if (v) {
		swf = swf + '?' + v;
	}

	str = ''
	str += '<object classid=clsid:D27CDB6E-AE6D-11cf-96B8-444553540000 codebase=http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0 width='+w+' height='+h+'>'
	str += '<param name=movie value='+swf+'>'
	str += '<param name=quality value=high>'
	str += '<param name=wmode value=transparent>'
	str += '<param name=menu value=false>'
	str += '<embed src='+swf+' menu=false quality=high wmode=transparent pluginspage=http://www.macromedia.com/go/getflashplayer type=application/x-shockwave-flash width='+w+' height='+h+'></embed>'
	str += '</object>'
	if( r ) return str;
    else document.write(str);
}

function btnHover(obj,mode,onFlag)
{
    if(typeof(onFlag)=="undefined") onFlag="_on";
    if(mode=="on")
        obj.src = obj.src.replace(".gif",onFlag+".gif");
    else
        obj.src = obj.src.replace(onFlag+".gif",".gif");
}

// for admin
function menuOver(obj)
{
    obj.src = obj.src.replace('_n.gif','_o.gif');
}
function menuOut(obj)
{
    obj.src = obj.src.replace('_o.gif','_n.gif');
}

String.prototype.numberFormat = function()
{
    var strNum = this.trim();
    if( strNum.indexOf('.') > -1 ) strNum = strNum.substr(0,strNum.indexOf('.')-1);
    if( parseInt(strNum) < 0 ){
        var isMinus = true;
        strNum = Math.abs(parseInt(strNum)).toString();
    }else{
        var isMinus = false;
    }
    var result = (isMinus?'-':'');
	for (var i=0; i < strNum.length; i++) {
		if (i && (strNum.length-i)%3 == 0)
			result+=',';
		result+=strNum.charAt(i);
	}
	return result;
}

Number.prototype.numberFormat = function()
{
    return this.toString().numberFormat();
}


function findPos(obj)
{
	if (obj.type == 'hidden') {
		obj = obj.nextSibling;
	}
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft;
		curtop = obj.offsetTop;
		while (obj = obj.offsetParent) {
			var origcurleft = curleft;
			curleft += obj.offsetLeft;
			if (curleft < 0) {
				curleft = origcurleft;
			}
			curtop += obj.offsetTop;
		}
	}
	return [curleft,curtop];
}
function setPos(obj, left, top)
{
    $(obj).css('left',left+'px');
    $(obj).css('top',top+'px');
}
function move(targetObj,moveObj,marginBottom)
{
    var coors = findPos(targetObj);
    if( marginBottom && marginBottom > 0 ) coors[1] += marginBottom;
    else                                   coors[1] += 25;
    moveObj.css('position','absolute');
    moveObj.css('top',coors[1]+'px');
    moveObj.css('left',coors[0]+'px');
}
function showProfile(id,name,obj)
{
    var html = '<ul style="margin:0;padding:0;list-style-type:none;line-height:185%;background-color:#508283;border:1px solid #fff;">'
              +'<li style="margin:0;padding:0 0 0 10px;background-color:#e5e5e5;"><a href="'+__BLOG_URL__+'/'+id+'" target="_blank" style="color:#508283;font-weight:bold;">블로그 가기</a></li>'
              +'<li style="margin:0;padding:0 0 0 10px;"><a href="'+__BLOG_URL__+'/'+id+'?p=profile" target="_blank" style="color:#fff">프로필 보기</a></li>'
              +'<li style="margin:0;padding:0 0 0 10px;"><a href="javascript:void(0)" onclick="popWindow(\''+__WWW_URL__+'/note/write.php?receive_id='+id+'\',\'\',650,500);" style="color:#fff">쪽지 보내기</a></li>'
              +'<li style="margin:0;padding:0 0 0 10px;"><a href="'+__BLOG_URL__+'/'+id+'?p=vr" target="_blank" style="color:#fff">파노라마 보기</a></li>'
              +'</ul>';
    var lid = "_idPMenuLayer_";
    if( getE(lid) )
        var oL = $("#"+lid);
    else
        var oL = $('<div>').css({position:"absolute",width:"98px",border:"1px solid #bbb",backgroundColor:"#FFF",zIndex:999})
                           .attr({id:lid,align:"left"})
                           .appendTo('body');
    oL.html(html);
    move(obj,oL,13);
    oL.show();
}

function hideProfile()
{
    if( getE("_idPMenuLayer_") )
        getE("_idPMenuLayer_").style.display='none';
}

var eventTargetString;
function __clickHandler__(e)
{
    if( isIE )
    {
        if( e.srcElement.parentElement != null )
        {
    		if (e.srcElement.parentElement == "A")
    			eventTarget = e.srcElement.parentElement;
    		else
    			eventTarget = e.srcElement;
        }
    }
	else
	{
		eventTargetString = e.target;
	}
    if( !eventTarget.onclick ||  !/showProfile/.test(eventTarget.onclick.toString()) ) hideProfile();

}

function rand(start,end)
{
    return (Math.round(Math.random()*Math.abs(end - start)) + (start < end?start:end));
}


$(document).bind('click',__clickHandler__);
