if(!js_img) js_img = "http://img.d-fighter.com/img";


var req;

function randomString(len) {
var chars ="0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = len;
var randomstring ="";
for (var i=0; i<string_length;i++){ 
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
return randomstring;
}
// timestamp=¡¯+ (new Date()).getDate();


function navigate(month,year,evt) {
	setFade(0);
	var url = "/FRM/home/super_calendar.php?dummy=1&month="+month+"&year="+year+"&event="+evt+"&timestamp="+ (new Date()).getDate();

	if(window.XMLHttpRequest) {
		req = new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		req = new ActiveXObject("Microsoft.XMLHTTP");
	}
	req.open("GET", url, true); //async
	req.onreadystatechange = callback;
	req.send(null);
}

function callback() {	
	if(req.readyState == 4) {
		var response = req.responseXML;	
		var resp = response.getElementsByTagName("response");
		getObject("calendar").innerHTML = resp[0].getElementsByTagName("content")[0].childNodes[0].nodeValue;
		fade(70);
	}
}

function getObject(obj) {
	var o;
	if(document.getElementById) o = document.getElementById(obj);
	else if(document.all) o = document.all.obj;	
	return o;	
}

function fade(amt) {
	if(amt <= 100) {
		setFade(amt);
		amt += 10;
		setTimeout("fade("+amt+")", 5);
    }
}

function setFade(amt) {
	var obj = getObject("calendar");
	amt = (amt == 100)?99.999:amt;
	obj.style.filter = "alpha(opacity:"+amt+")";
	obj.style.KHTMLOpacity = amt/100;
	obj.style.MozOpacity = amt/100;
	obj.style.opacity = amt/100;
}

function showJump(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	var jump = document.createElement("div");
	jump.setAttribute("id","jump");
	jump.style.position = "absolute";
	jump.style.top = curtop+15+"px";
	jump.style.left = curleft+"px";
	var output = '<select id="month">\n';
	var months = new Array('January','February','March','April','May','June','July','August','September','October','November','December');
	var n;
	for(var i=0;i<12;i++) {
		n = ((i+1)<10)? '0'+(i+1):i+1;
		output += '<option value="'+n+'">'+months[i]+'  </option>\n';
	}
	output += '</select> \n<select id="year">\n';
	for(var i=0;i<=15;i++) {
		n = (i<10)? '0'+i:i;
		output += '<option value="20'+n+'">20'+n+'  </option>\n';
	}
	output += '</select> <a href="javascript:jumpTo()">-</a> <a href="javascript:hideJump()">-</a>';
	jump.innerHTML = output;
	document.body.appendChild(jump);
}

function hideJump() {
	document.body.removeChild(getObject("jump"));	
}

function jumpTo() {
	var m = getObject("month");
	var y = getObject("year");
	navigate(m.options[m.selectedIndex].value,y.options[y.selectedIndex].value,'');
	hideJump();
}

/*
 * ajax 
 */

function prnEventCal(e,arg,arg2)
{
	var bobble_width = 180;
	var bobble_height = 160;
	var window_size_X = 1150;
	var window_size_Y = 900;

	if (parseInt(navigator.appVersion)>3) {
		if (navigator.appName=="Netscape") {
			window_size_X = window.innerWidth-16;
			window_size_Y = window.innerHeight-16;
		}
		if (navigator.appName.indexOf("Microsoft")!=-1) {
			window_size_X = document.body.offsetWidth-20;
			window_size_Y = document.body.offsetHeight-20;
		}
	}
	if (!document.getElementById("eDayLayer").style) return;

//    if(document.documentElement){//IE 6+ strict mode
//        var bobble_location_X = e.clientX + document.documentElement.scrollLeft;
//        var bobble_location_Y = e.clientY + document.documentElement.scrollTop;
//    } else if(typeof(e.clientX)!="undefined") {
//        var bobble_location_X=e.clientX+document.body.scrollLeft;
//        var bobble_location_Y=e.clientY+document.body.scrollTop;
//    }
	if(oldbobble_X>0 && oldbobble_Y>0 && arg2>0){
//		document.getElementById("eDayLayer").style.left = oldbobble_X;
//		document.getElementById("eDayLayer").style.top = oldbobble_Y;
	}else{
		var bobble_location_X=e.clientX+document.body.scrollLeft;
		var bobble_location_Y=e.clientY+document.body.scrollTop;
	
		if((bobble_location_X + bobble_width) > window_size_X){
			document.getElementById("eDayLayer").style.left = bobble_location_X - bobble_width;
		}else{
			document.getElementById("eDayLayer").style.left = bobble_location_X;
		}

		if((bobble_location_Y + bobble_height) > window_size_Y){
	//		var tmp = window_size_Y-(bobble_location_Y + bobble_height);
	//		document.getElementById("eDayLayer").style.top = bobble_location_Y + tmp;
			document.getElementById("eDayLayer").style.top = bobble_location_Y;

		}else{
			document.getElementById("eDayLayer").style.top = bobble_location_Y;
		}
		oldbobble_X = bobble_location_X;
		oldbobble_Y = bobble_location_Y;
	}
	document.getElementById("eDayLayer").style.visibility = "visible";
	getEventCall(arg,arg2);

//	document.getElementById("eDayLayer").style.visibility = "visible";
	document.onmouseup = hidden_eDayLayer;
}

function hidden_eDayLayer(){

	if( document.getElementById("eDayLayer").style.visibility == "visible" ){
		document.getElementById("eDayLayer").style.visibility = "hidden";
	}
	document.onmouseup = "";
}

var oldbobble_X=0;
var oldbobble_Y=0;
var ecCate =''; // category
var ecDate =''; // date
var ecal_table_top = "<ul>";
var ecal_table_bot = "</ul>";
var ecal_MakeTbl = "";
var load_img = "<li><img src=\""+js_img+"/home/0805/loading.gif\" align=\"absmiddle\"></li>";
document.write("<div id=\"eDayLayer\" style=\"z-index:100;position:absolute;visibility:hidden;filter:blendTrans(duration=3)\">"+load_img+"</div>");

function preloading(){
     //document.getElementById("eDayLayer").style.width=0;
     //document.getElementById("eDayLayer").style.height=0;
     document.getElementById("eDayLayer").innerHTML=load_img;
   
}

function getEventCall(arg,arg2){
    //arg  : date
    //arg2 : category
    //shiftOpacity('eDayLayer', 12);
    //preloading();
    if(!arg2) arg2=1;
    ecCate = arg2;
    ecDate = arg;
        if(arg) sendRequest(eventDecoration, 'key=dnf&date='+arg+'&category='+arg2, 'GET', '/FRM/home/super_calendar_event.php', true, false);
}

function eventDecoration(obj){
    var str = decodeURIComponent(obj.responseText);
    ecal_MakeTbl = ecal_table_top;
    var ecal_table_mid='';
    var ecal_table_mid2='';
    if(str == '') return;

	ecData = { _ECAL_DATA:[] };

	try {
		if (typeof jQuery == "function") {
			if (typeof jQuery.evalJSON == "function") {
				ecData = jQuery.evalJSON(str);
			} else if (typeof String.prototype.parseJSON == "function") {
				ecData = str.parseJSON();
			}
		} else if (typeof String.prototype.parseJSON == "function") {
			ecData = str.parseJSON();
		}		
	} catch (e) {
	}
	
/*
        $rtn .='"title":"{$subject}",';
        $rtn .='"period":"{$stt_date} ~ {$end_date}",';
        $rtn .='"announce":"{$ann_date}",';
        $rtn .='"content":"{$simple_body}",';
        $rtn .='"link":"{$view_url}"},';
        $rtn .='"target":"{$special_target}",';
        $rtn .='{"img":"{$file_server}/{$file_location}"},';
*/
    switch(ecCate){
	 case 4: 
            ecal_table_mid =  "<h1></h1>"; 
            ecal_table_mid2 =  "<p><a href='/?GO=news|event&TO=&category=2&clickSV=dnf'><img src='"+js_img+"/home/0805/btn_more.gif' vspace='5' alt='´õº¸±â'></a></p>"; 
            break;
     case 2: 
            ecal_table_mid =  "<h1><a href='javascript:void(0);' style='cursor:hand;' onclick='prnEventCal(event,ecDate,1);return false;'>ÁøÇàÁß</a> <span style='color:#805F2C'>|</span> ÄíÆùÀÔ·Â <span style='color:#805F2C'>|</span> <a href='javascript:void(0);' style='cursor:hand;' onclick='prnEventCal(event,ecDate,3);return false;'> ´çÃ·ÀÚ¹ßÇ¥</a></h1>"; 
            ecal_table_mid2 =  "<p><a href='/?GO=news|event&TO=&category=2&clickSV=dnf'><img src='"+js_img+"/home/0805/btn_more.gif' vspace='5' alt='´õº¸±â'></a></p>"; 
            break;
     case 3: 
            ecal_table_mid =  "<h1><a href='javascript:void(0);' style='cursor:hand;' onclick='prnEventCal(event,ecDate,1);return false;'>ÁøÇàÁß</a> <span style='color:#805F2C'>|</span> <a href='javascript:void(0);' style='cursor:hand;' onclick='prnEventCal(event,ecDate,2);return false;'> ÄíÆùÀÔ·Â</a> <span style='color:#805F2C'>|</span> ´çÃ·ÀÚ¹ßÇ¥</h1>"; 
            ecal_table_mid2 =  "<p><a href='/?GO=news|event&TO=&category=3&clickSV=dnf'><img src='"+js_img+"/home/0805/btn_more.gif' vspace='5' alt='´õº¸±â'></a></p>"; 
            break;
     case 1: 
     default: 
            ecal_table_mid =  "<h1>ÁøÇàÁß <span style='color:#805F2C'>|</span> <a href='javascript:void(0);' style='cursor:hand;' onclick='prnEventCal(event,ecDate,2);return false;'> ÄíÆùÀÔ·Â</a> <span style='color:#805F2C'>|</span> <a href='javascript:void(0);' style='cursor:hand;' onclick='prnEventCal(event,ecDate,3);return false;'> ´çÃ·ÀÚ¹ßÇ¥</a></h1>"; 
            ecal_table_mid2 =  "<p><a href='/?GO=news|event&TO=&category=1&clickSV=dnf'><img src='"+js_img+"/home/0805/btn_more.gif' vspace='5' alt='´õº¸±â'></a></p>"; 

     break;   
     
    }
    ecal_MakeTbl += ecal_table_mid;

    ec_cnt = ecData._ECAL_DATA.length;
    for(i=0; i<=ec_cnt-1; i++){
        if(ecData._ECAL_DATA[i]['title']){
            ecal_MakeTbl += ecal_table_maker(ecData._ECAL_DATA[i]);
        }
    }
/*
    for(i=i; i<5; i++){
            ecal_MakeTbl += "<br><br>";
    }
*/
    ecal_MakeTbl += ecal_table_mid2;
	ecal_MakeTbl += ecal_table_bot;

    //shiftOpacity('eDayLayer', 12);
    var tagLayer = document.getElementById("eDayLayer");
//    tagLayer.style.height = 40 + 16*ec_cnt + 27;
    tagLayer.innerHTML=ecal_MakeTbl;
}
function ecal_table_maker(parm)
{
	var menu = "<li><a href='"+parm['link']+"' "+parm['target']+" title='"+parm['content']+"'>"+parm['title']+"</a></li>";

	return menu;
}

/// blending
function opacity(id, opacStart, opacEnd, millisec) { 
    //speed for each frame 
    var speed = Math.round(millisec / 100); 
    var timer = 0; 

    //determine the direction for the blending, if start and end are the same nothing happens 
    if(opacStart > opacEnd) { 
        for(i = opacStart; i >= opacEnd; i--) { 
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer++; 
        } 
    } else if(opacStart < opacEnd) { 
        for(i = opacStart; i <= opacEnd; i++) 
            { 
            setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * speed)); 
            timer++; 
        } 
    } 
} 

//change the opacity for different browsers 
function changeOpac(opacity, id) { 
    var object = document.getElementById(id).style; 
    object.opacity = (opacity / 100); 
    object.MozOpacity = (opacity / 100); 
    object.KhtmlOpacity = (opacity / 100); 
    object.filter = "alpha(opacity=" + opacity + ")"; 
} 

function shiftOpacity(id, millisec) { 
    //if an element is invisible, make it visible, else make it ivisible 
    if(document.getElementById(id).style.opacity == 0) { 
        opacity(id, 0, 100, millisec); 
    } else { 
        opacity(id, 100, 0, millisec); 
    } 
}


function toggleClass(arg){
    alert(arg);
    obj = arg.parentElement.parentElement;
    obj.className='dayover';
    
}
