//alert("common javascript");
/* Update history:
Format:
Date /Modified parts
Item list

2008.03.18 by SNG, Javascript Comment Updated
Added "Updated history" into this javascript

2008.04.01 by SNG, summarized the javascript from cn-t/am/index_location.html to here
including: openwin_sb, openwin_sb980... (later, will create a new function for multi-purpose)
also preloader script

2008.06.20 by SNG, added comment for openwin* functions

2008.08.18 by SNG, added style display toggle on/off function

*/


/* Begin: html redirect script */
function redirectTo(destination) {
    location.replace(destination);
};
/* End: html redirect script */

/* this popup window functions is widely used on the site:
news column
update column
yugioh(individual common javascript file for it)
*/

/* Begin: openwin_sb */
/* list of openwin series functions
openwin_sb
openwin_konami
openwin_wide
openwin_normal
openwin
openwin_sb_980
*/

/* variable link, Width 760 x height variable, scrollbars N, resizable Y */

/* no scrollbar, fade it out later->change to openwin_sb760 & make it scrollable*/
function openwin(in_link,in_h) {
	konamiPopWin = window.open(in_link,'konamiPopWin','top=0,left=0,width=1015,height=' + in_h +',scrollbars=yes,resizable=yes'); /* optimized for 1024 x 768(1015 x 675) resolution */
	konamiPopWin.focus();
};

/* variable link, Width 1024 x height variable, scrollbars Y, resizable Y, menubar N */
function openwin_sb(in_link,in_h) {
	//user(applied in pages): 
	//cn-t/am/index_location.html:
	//format: window.open(URL,name,specs,replace) <- last one replace entry in history
	konamiPopWin = window.open(in_link,'konamiPopWin','top=0,left=0,width=1024,height=' + in_h +',scrollbars=yes,resizable=yes, menubar = no');
	konamiPopWin.focus();
	//error: window.open(in_link,'', 'top=0, left=0, width=1024, height = ' + in_h + ', scrollbars = yes, resizable = yes, menubar = no')
	/*news&update column version: width=1000, now normlized to above value*/
}

/* variable link, Width 1000 x height variable, scrollbars Y, resizable Y*/
/* since openwin_sb_980 is only used in asia root/index.html, removed and combined with this */
function openwin_sb_980(in_link,in_h)
{
	konamiPopWin = window.open(in_link,'konamiPopWin','top=0,left=0,width=1000,height=' + in_h +',scrollbars=yes,resizable=yes');
	konamiPopWin.focus();
}


/* variable link, Width variable x height variable, scrollbars Y, resizable Y */
function openwin_konami(in_link,in_h,in_w)
	//user(applied in pages): 
	//cn-t/th/index.html:
{
	konamiPopWin = window.open(in_link,'konamiPopWin','top=0,left=0,width=' + in_w + ',height=' + in_h +',scrollbars=yes,resizable=yes');
	konamiPopWin.focus();
}

/* variable link, Width 1000 x height variable, scrollbars Y */
function openwin_wide(in_link,in_h){
	//user(applied in pages): 
	//cn-t/th/index.html:
	konamiPopWin = window.open(in_link,'konamiPopWin','top=0,left=0,width=1000,height=' + in_h +',scrollbars=yes');
	konamiPopWin.focus();
}

/* variable link, Width 800 x height variable, scrollbars Y */
function openwin_normal(in_link,in_h){
	//user(applied in pages): 
	//cn-t/th/index.html:
	konamiPopWin = window.open(in_link,'konamiPopWin','top=0,left=0,width=800,height=' + in_h +',scrollbars=yes');
	konamiPopWin.focus();
}


//window.name = "Konami_Asia_Product";
/* variable link only */
function openwin_sbc(in_link)
{
	newwindow=window.open(in_link,'Konami_Asia_Company');
	if (window.focus) {newwindow.focus()}
}
/* End: openwin_sb */


/* Begin: custom preloader & macromedia preloader */
function newImage(arg) {
	if (document.images) {
		rslt = new Image();
		rslt.src = arg;
		return rslt;
	}
}

function changeImages() {
	//alert('changing images');
	if (document.images && (preloadFlag == true)) {
		for (var i=0; i<changeImages.arguments.length; i+=2) {
			document[changeImages.arguments[i]].src = changeImages.arguments[i+1];
		}
	}
}


var preloadFlag = false;
function preloadImages() {
	if (document.images) {
		top_lang_eng_over = newImage("../../image/common/top/hk/top_lang_eng-over.jpg");
		top_lang_chi_tra_over = newImage("../../image/common/top/hk/top_lang_chi_tra-over.jpg");
		top_lang_chi_sim_over = newImage("../../image/common/top/hk/top_lang_chi_sim-over.jpg");
		icon_am_over = newImage("../../image/common/top/hk/icon_am-over.jpg");
		icon_gs_over = newImage("../../image/common/top/hk/icon_gs-over.jpg");
		icon_th_over = newImage("../../image/common/top/hk/icon_th-over.jpg");
		icon_mb_over = newImage("../../image/common/top/hk/icon_mb-over.jpg");
		link_about_over = newImage("../../image/common/top/hk/link_about-over.jpg");
		link_global_over = newImage("../../image/common/top/hk/link_global-over.jpg");
		link_map_over = newImage("../../image/common/top/hk/link_map-over.jpg");
		link_contact_over = newImage("../../image/common/top/hk/link_contact-over.jpg");
		preloadFlag = true;
	}
}


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];}}
	preloadFlag = true; //added by TL
}

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;
  //alert(x.src);
}

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];}
   //alert(x.src);
}

/* End: custom preloader & macromedia preloader */


/* Begin: Disable right mouse click Script, turn off when update */
var message="Thanks for visiting Konami Digital Entertainment Limited!";


///////////////////////////////////
function clickIE4(){
	if (event.button==2){
		alert(message);
		return false;
	}
}

function clickNS4(e){
	if (document.layers||document.getElementById&&!document.all){
		if (e.which==2||e.which==3){
		alert(message);
		return false;
		}
	}
}

/*if (document.layers){
	document.captureEvents(Event.MOUSEDOWN);
	document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
	document.onmousedown=clickIE4;
}

document.oncontextmenu=new Function("alert(message);return false")*/
/* End: Disable right mouse click Script */



/**
 * image loading(sequence) control, the logic is not good enough, it is refered to the web
 * Last modified on 2008-05-21
 */
var loadingImage = false;
function LoadImage(imageName,imageFile, imageAlt){
	if ((!document.images) && loadingImage == true) {
		alert("image does not exist or is loading");
		return;
	} 
	
	if(imageAlt == null){
		imageAlt = "";
	}
	
	if (document.images[imageName].src.indexOf(imageFile)<0){
		loadingImage = true;
		document.images[imageName].alt = imageAlt;
		document.images[imageName].src = imageFile;
		//alert(document.images[imageName].src);
	} 
	loadingImage = false;
}

function altManage(imageName, imageAlt){
	if(imageAlt == null){
		imageAlt = "";
	}
	document.images[imageName].alt = imageAlt;
}


/* HTML DOM Function */
function toggle(id) { /* toggle on/off of ID to create on/off list effect*/
	var e = document.getElementById(id); 
	//alert(e.style.display);
	if(e.style.display == 'none' || e.style.display == '') /* tempoary measure to deal with no-property problem on 2008/08/18*/
		e.style.display = 'block';
	else
		e.style.display = 'none';
}

menuStatus="";
function changeStatus() { /* toggle on/off of ID to create on/off list effect*/
	var e = document.getElementById('submenuStatus'); 
	//alert(e.src);
	if(!(menuStatus == "open")) {
		e.src = "../../../cmn/images/submenu/submenu_open.png";
		menuStatus = "open"; }
	else {
		e.src = "../../../cmn/images/submenu/submenu_close.png";
		menuStatus = "close";}
}

/* selectedLang="cns" */;/* test only */
function changeLocation(curLang, targetLang) {
		
	str = document.URL;
	//alert(document.URL); 
	//alert(str.match("cn-t")); 
	
	if(str.match(curLang)){targetURL = str.replace(curLang,targetLang); this.href = targetURL;  return targetURL;}

	/* curLang ="cns";
	if(str.match(curLang)){targetURL = str.replace(curLang,selectedLang); document.open(targetURL); return targetURL;}
	
	curLang ="en";
	if(str.match(curLang)){targetURL = str.replace(curLang,selectedLang); document.open(targetURL); return targetURL;}	 */

}

/* End */


     
/***********************************************
* Ultimate Fade-In Slideshow (v1.51): © Dynamic Drive (http://www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
* modified by SNG on 2008/08/20, combined konami in-house function with slideHTML
***********************************************/
 
var fadebgcolor="white"

////NO need to edit beyond here/////////////
 
var fadearray=new Array() //array to cache fadeshow instances
var fadeclear=new Array() //array to cache corresponding clearinterval pointers
 
var dom=(document.getElementById) //modern dom browsers
var iebrowser=document.all
 
function fadeshow(theimages, fadewidth, fadeheight, borderwidth, delay, pause, displayorder){
this.pausecheck=pause
this.mouseovercheck=0
this.delay=delay
this.degree=10 //initial opacity degree (10%)
this.curimageindex=0
this.nextimageindex=1
fadearray[fadearray.length]=this
this.slideshowid=fadearray.length-1
this.canvasbase="canvas"+this.slideshowid
this.curcanvas=this.canvasbase+"_0"
if (typeof displayorder!="undefined")
theimages.sort(function() {return 0.5 - Math.random();}) //thanks to Mike (aka Mwinter) :)
this.theimages=theimages
this.imageborder=parseInt(borderwidth)
this.postimages=new Array() //preload images
for (p=0;p<theimages.length;p++){
this.postimages[p]=new Image()
this.postimages[p].src=theimages[p][0]
}
 
var fadewidth=fadewidth+this.imageborder*2
var fadeheight=fadeheight+this.imageborder*2
 
if (iebrowser&&dom||dom) //if IE5+ or modern browsers (ie: Firefox)
document.write('<div id="master'+this.slideshowid+'" style="position:relative;width:'+fadewidth+'px;height:'+fadeheight+'px;overflow:hidden; margin:0 auto;"><div id="'+this.canvasbase+'_0" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+fadebgcolor+'"></div><div id="'+this.canvasbase+'_1" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+fadebgcolor+'"></div></div>')
else
document.write('<div><img name="defaultslide'+this.slideshowid+'" src="'+this.postimages[0].src+'"></div>')
 
if (iebrowser&&dom||dom) //if IE5+ or modern browsers such as Firefox
this.startit()
else{
this.curimageindex++
setInterval("fadearray["+this.slideshowid+"].rotateimage()", this.delay)
}
}

function fadepic(obj){
if (obj.degree<100){
obj.degree+=10
if (obj.tempobj.filters&&obj.tempobj.filters[0]){
if (typeof obj.tempobj.filters[0].opacity=="number") //if IE6+
obj.tempobj.filters[0].opacity=obj.degree
else //else if IE5.5-
obj.tempobj.style.filter="alpha(opacity="+obj.degree+")"
}
else if (obj.tempobj.style.MozOpacity)
obj.tempobj.style.MozOpacity=obj.degree/101
else if (obj.tempobj.style.KhtmlOpacity)
obj.tempobj.style.KhtmlOpacity=obj.degree/100
else if (obj.tempobj.style.opacity&&!obj.tempobj.filters)
obj.tempobj.style.opacity=obj.degree/101
}
else{
clearInterval(fadeclear[obj.slideshowid])
obj.nextcanvas=(obj.curcanvas==obj.canvasbase+"_0")? obj.canvasbase+"_0" : obj.canvasbase+"_1"
obj.tempobj=iebrowser? iebrowser[obj.nextcanvas] : document.getElementById(obj.nextcanvas)
obj.populateslide(obj.tempobj, obj.nextimageindex)
obj.nextimageindex=(obj.nextimageindex<obj.postimages.length-1)? obj.nextimageindex+1 : 0
setTimeout("fadearray["+obj.slideshowid+"].rotateimage()", obj.delay)
}
}
 
fadeshow.prototype.populateslide=function(picobj, picindex){
var slideHTML=""
//alert("this.theimages[picindex]" + this.theimages[picindex]);
//alert("this.theimages[picindex][1]" + this.theimages[picindex][1]);
if (this.theimages[picindex][1]!="") //if associated link exists for image
//slideHTML='<a href="'+this.theimages[picindex][1]+'" target="'+this.theimages[picindex][2]+'">'
slideHTML='<a href="javascript:openwin_sb(&quot;'+this.theimages[picindex][1]+'&quot;, 500);">'
slideHTML+='<img src="'+this.postimages[picindex].src+'" border="'+this.imageborder+'px">'
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML+='</a>'
picobj.innerHTML=slideHTML
}
 
 
fadeshow.prototype.rotateimage=function(){
if (this.pausecheck==1) //if pause onMouseover enabled, cache object
var cacheobj=this
if (this.mouseovercheck==1)
setTimeout(function(){cacheobj.rotateimage()}, 100)
else if (iebrowser&&dom||dom){
this.resetit()
var crossobj=this.tempobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
crossobj.style.zIndex++
fadeclear[this.slideshowid]=setInterval("fadepic(fadearray["+this.slideshowid+"])",50)
this.curcanvas=(this.curcanvas==this.canvasbase+"_0")? this.canvasbase+"_1" : this.canvasbase+"_0"
}
else{
var ns4imgobj=document.images['defaultslide'+this.slideshowid]
ns4imgobj.src=this.postimages[this.curimageindex].src
}
this.curimageindex=(this.curimageindex<this.postimages.length-1)? this.curimageindex+1 : 0
}
 
fadeshow.prototype.resetit=function(){
this.degree=10
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
if (crossobj.filters&&crossobj.filters[0]){
if (typeof crossobj.filters[0].opacity=="number") //if IE6+
crossobj.filters(0).opacity=this.degree
else //else if IE5.5-
crossobj.style.filter="alpha(opacity="+this.degree+")"
}
else if (crossobj.style.MozOpacity)
crossobj.style.MozOpacity=this.degree/101
else if (crossobj.style.KhtmlOpacity)
crossobj.style.KhtmlOpacity=this.degree/100
else if (crossobj.style.opacity&&!crossobj.filters)
crossobj.style.opacity=this.degree/101
}
 
 
fadeshow.prototype.startit=function(){
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
this.populateslide(crossobj, this.curimageindex)
if (this.pausecheck==1){ //IF SLIDESHOW SHOULD PAUSE ONMOUSEOVER
var cacheobj=this
var crossobjcontainer=iebrowser? iebrowser["master"+this.slideshowid] : document.getElementById("master"+this.slideshowid)
crossobjcontainer.onmouseover=function(){cacheobj.mouseovercheck=1}
crossobjcontainer.onmouseout=function(){cacheobj.mouseovercheck=0}
}
this.rotateimage()
}
/* end of slideshow */

function chkDate(year,month,day,msg,defaultMsg){
	today = new Date();
	curYear = today.getFullYear();
	curMonth = today.getMonth()+1;
	curDay = today.getDate();
	
	/*alert(curYear);
	alert(curMonth);
	alert(curDay);*/
	
	if(curMonth == month && curDay > day && curYear == year){
		document.write(msg);	
	} else{document.write(defaultMsg);};
}