
(function($){
		  
var visual = {};
var j2=0;
var prevpos = 0;
visual.schedule = [];
visual.scheduleEnd = [];
visual.scheduleSet = [];
visual.schedulePos = [];

var yy = new Array(31, 28 + leap(), 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

function leap(){ 
		return this.nowyear % 4 ? 0 : this.nowyear % 100 ? 1 : this.nowyear % 400 ? 0 : 1;	
}

var xmldataSet;
/* XMLǂݍ */
$(window).load(function(){
visual.schBox = document.createElement('div');
visual.schBox.className = 'schBox';

visual.schBox.appendChild(document.createElement('img'));

visual.countBox = document.createElement('div');
visual.countBox.className = 'countBox';

visual.countNum = document.createElement('p');
//visual.countNum.className = 'timeNum';
visual.countNum.innerHTML = '&nbsp;';


var i=0;
while(i<6){
var aa = visual.countNum.cloneNode(true);
aa.className = 'timeNum time'+i;
if(window.attachEvent && typeof document.documentElement.style.msInterpolationMode == 'undefined'){
	aa.style.backgroundImage = 'url(/JPN/TOP_VISUAL/IMAGES/num.gif)';
}
visual.countBox.appendChild(aa);
i++;
}
if(window.attachEvent && typeof document.documentElement.style.msInterpolationMode == 'undefined'){
	DD_belatedPNG.fix('div.countBox');
}

$.ajax( {
type : "GET",
url : "TOP_VISUAL/XML/visual.xml?"+ new Date().getTime(),
dataType : "xml",
timeout: 1000,
success : function(data){
visual.init(data);
}
});
});



visual.init = function(data){
	
	var imp = $('#impression');
	var mmi = $('#main-images');
	var btns = [];
	var btn = $('<div id="main-btn"><ul></ul></div>');
	
		
	visual.imgW = mmi.find('img').width();
	visual.imgH = mmi.find('img').height();
	
	mmi.css({'width':visual.imgW,'height':visual.imgH});
	imp.css({'width':visual.imgW,'height':visual.imgH});
	
	visual.width2_3 = Math.floor(visual.imgW/3)*2;
	
	var imgset = $(data).find('impression').get();
	visual.maxImg = parseInt(imgset[0].getAttribute('maxImage'),10);
	visual.farstdelay = parseInt(imgset[0].getAttribute('farstdelay'),10)*1000;
	visual.loop  = imgset[0].getAttribute('loopFlag')
	visual.randomFlg  = imgset[0].getAttribute('random')
	visual.count = $(data).find('img').length;
	
	visual.defclip = 'rect(0px '+ visual.imgW + 'px ' + visual.imgH  + 'px 0px)';
	
	if(visual.randomFlg == '1'){
	var startNum = Math.floor(Math.random()* visual.count);
	}else{
	var startNum = 0;
	}
	
	visual.delayArray = [];

	$(data).find('img').each(function(index){
	
	if(index >= visual.maxImg && visual.maxImg != null) return;
	
	
	
	if(this.getAttribute('href')){
	
	if(this.getAttribute('target')) var targetnum = this.getAttribute('target');
	else var targetnum = '_self';
		
	var pimg = $('<div class="impression_viewImg"><a href="'+this.getAttribute('href')+'" target="'+targetnum+'"><img src="'+this.getAttribute('src') +'" alt="'+ this.getAttribute('alt') +'" /></a></div>');
	
	}else{
	var pimg = $('<div class="impression_viewImg"><img src="'+this.getAttribute('src') +'" alt="'+ this.getAttribute('alt') +'" /></div>');
	}
	
	
	if(this.getAttribute('delay')){
		visual.delayArray.push(parseInt(this.getAttribute('delay'),10)*1000);
	}else{
		visual.delayArray.push(visual.farstdelay);
	}
		
	if(index == startNum) {
		pimg.attr('id','fstLoadImg');
		//pimg.css({'zIndex':100,'visibility':'hidden','position':'absolute','opacity':1});
		pimg.css({'zIndex':100,'clip':visual.defclip,'position':'absolute'});
	}else{
		//pimg.css({'zIndex':80,'visibility':'hidden','position':'absolute','opacity':1});
		pimg.css({'zIndex':80,'clip':visual.defclip,'visibility':'hidden','position':'absolute'});
	}
	
	pimg.append($(visual.schBox).attr('id','impression_sch'+index).clone());
	pimg.append($(visual.countBox).attr('id','impression_count'+index).clone());

	mmi.append(pimg);
	
	if((index+1) < 10) ii = '0' + (index+1);
	else ii = index+1;
	
	if(index==0) var litag = $('<li><span></span></li>');
	else var litag = $('<li><span></span></li>');
	
	litag.css('visibility','hidden');
	litag.click(visual.elmcl);
	
	litag.mouseover(function(){ $(this).children().addClass('over'); });
	litag.mouseout(function(){ if(this.className != 'stay') $(this).children().removeClass('over'); });
	
	btn.children().append(litag);
	
	
	visual.scheduleSet.push($(this).find('schedule'));
	

	});
	
	if(window.attachEvent && typeof document.documentElement.style.msInterpolationMode == 'undefined'){
	DD_belatedPNG.fix('div.schBox img');
	}
	
	//----------
	//schedule
	//----------
		
	$.each(visual.scheduleSet,function(index){
		
		var lng = visual.scheduleSet[index].length;
		
		for(i=0;i<lng;++i){
			
		var sc = visual.scheduleSet[index][i].getAttribute('end').split('/');
		var nowtime = new Date();
		var thisTime = new Date(sc[0],sc[1]-1,sc[2],0,0,0);
	
		if(nowtime < thisTime) {
		$('#impression_sch'+index+' img').attr('src',visual.scheduleSet[index][i].getAttribute('src'));
		
		var sc2 = visual.scheduleSet[index][i].getAttribute('count').split('/');
		var thisTime2 = new Date(sc2[0],sc2[1]-1,sc2[2],0,0,0);

		//visual.schedule[index]=[];
		visual.schedule[index] = thisTime2;
		visual.scheduleEnd[index] = thisTime;
		visual.schedulePos[index] = [];
		visual.schedulePos[index] = [i,lng-1];
		
		visual.scheduleSet[index][i].getAttribute('src')
		
		break;
		}else{
		
		
		if(i==lng-1){
		$('#impression_sch'+index+' img').attr('src',visual.scheduleSet[index][i].getAttribute('src'));
		visual.schedule[index] = thisTime;
		visual.scheduleEnd[index] = thisTime;
		visual.schedulePos[index] = [];
		visual.schedulePos[index] = [i,lng-1];
		}
			
		}
		
		}
	
	})
	

	mmi.after(btn);
	mmi.find('p:first').remove();
	
	visual.timecount2();

	visual.elm = mmi.find('div.impression_viewImg').get();
	visual.elmbtn = btn.find('span').get();
	
	j2 = startNum;
	
	$('#main-images img').load(function(){
	if(visual.count-- == 1) {		
		$('#fstLoadImg').css('visibility','visible');
		visual.elmbtn2();
		setInterval(visual.timecount,500);
	}
	});
}					  




visual.autoFlg = true;

visual.elmani2 = function(){
	
	if(visual.endFlg) return;

	visual.endFlg = true;	
	
	visual.elm[j2].style.display = 'block';
	visual.elm[j2].style.visibility = 'visible';
	visual.elm[j2].style.zIndex = 100;
	
	if(j2 == (visual.elm.length-1)){
	
	visual.elm[0].style.display = 'block';
	visual.elm[0].style.visibility = 'visible';

	$(visual.elm[0]).css('opacity','');
	$(visual.elm[0]).css({'clip':visual.defclip,'left':0});
	$(visual.elmbtn[visual.elmbtn.length-1]).removeClass('over');
	$(visual.elmbtn[visual.elmbtn.length-1]).parent().removeClass('stay');
	$(visual.elmbtn[0]).addClass('over');
	$(visual.elmbtn[0]).parent().addClass('stay');
	visual.timecount();

	}else{
	visual.elm[j2+1].style.display = 'block';
	visual.elm[j2+1].style.visibility = 'visible';
	$(visual.elm[j2+1]).css('opacity','');
	$(visual.elm[j2+1]).css({'clip':visual.defclip,'left':0});
	$(visual.elmbtn[j2]).removeClass('over');
	$(visual.elmbtn[j2]).parent().removeClass('stay');
	$(visual.elmbtn[j2+1]).addClass('over');
	$(visual.elmbtn[j2+1]).parent().addClass('stay');
	}


	
 $(visual.elm[j2]).stop().animate({"opacity":0,'clip':'rect(0px '+visual.imgW+'px '+visual.imgH+'px '+visual.imgW+'px)'}, 1000,'easeInOutCubic',function(){
	//new ukk.Effect.Clip(visual.elm[j2],[0,visual.imgW,visual.imgH,visual.imgW,2000,80],[function(){
	visual.elm[j2].style.zIndex = 90;
	//visual.elm[j2].style.display = 'none';
	visual.elm[j2].style.visibility = 'hidden';
	j2++
	if(j2 == (visual.elm.length)){
		j2=0;
		if(visual.loop == '0') visual.loopfix = true;
	}

	prevpos = j2;
	
	visual.endFlg = false;
		
	if(visual.autoFlg) {
		clearTimeout(visual.time);
		if(!visual.loopfix) visual.time = setTimeout(visual.elmani2,visual.delayArray[j2]);
	}
																								   });
	//},0]);

//new ukk.Effect.Move(visual.elm[j2],[500,0,800,-70]);
	

}

visual.elmbtn2 = function(){

var i=0;

var loopfunc = function(){
if(i>=visual.elmbtn.length) {
	clearInterval(settime);
	visual.time = setTimeout(visual.elmani2,visual.farstdelay);
	return;
}
$(visual.elmbtn[i]).css({'visibility':'visible','opacity':'0'});
$(visual.elmbtn[i]).animate({"opacity":1},500,'linear');	
//new ukk.Effect.Fade(visual.elmbtn[i],[0,100,1000,70]);
//new ukk.Effect.Move(visual.elmbtn[i],[,-50,500,100]);
i++;
}

var settime = setInterval(loopfunc,100);

}



visual.elmcl = function(){
	
	if(visual.endFlg) return;
	if(this.className == 'stay') return;
	clearTimeout(visual.time);
	visual.endFlg = true;
	
	$(this).parents('ul').find('.stay .over').removeClass('over');
	$(this).parents('ul').find('.stay').removeClass('stay');
	
	this.className = 'stay'
	
	j2 =  $('#main-btn li').index(this);
	
	visual.autoFlg = false;
	var visp_st = visual.elm[prevpos].style;
	var visj_st = visual.elm[j2].style;
	
	visj_st.display = 'block';
	visj_st.visibility = 'visible';

	visp_st.zIndex = 100;
	visj_st.zIndex = 90;
	$(visual.elm[j2]).css({'clip':visual.defclip,'left':0,'opacity':'1'});
	$(visual.elm[prevpos]).css({'clip':visual.defclip,'left':0});
	
	visual.timecount();
	//$(visual.elm[prevpos]).animate({"opacity":0},1500,'linear');
	$(visual.elm[prevpos]).stop().animate({"opacity":0,'clip':'rect(0px '+visual.imgW+'px '+visual.imgH+'px '+visual.imgW+'px)'}, 1000,'easeInOutCubic',function(){
	//new ukk.Effect.Clip(visual.elm[prevpos],[0,visual.imgW,visual.imgH,visual.imgW,2000,80],[function(){
	visp_st.zIndex = 80;
	visj_st.zIndex = 100;
	//visp_st.display = 'none';
	visp_st.visibility = 'hidden';
	prevpos = j2;
	visual.endFlg = false;
	//},0]);
	 });
	visual.autoFlg = true;
	if(!visual.loopfix) visual.time = setTimeout(visual.elmani2,visual.delayArray[j2]);
}


visual.timecount2 = function(){
	
	for(var j=0;j<visual.schedule.length;++j){
	var nowtime = new Date();
	var year = nowtime.getFullYear();
	var month =nowtime.getMonth() +1;	
	var day =nowtime.getDate();
	var houers =nowtime.getHours();
	var minutes =nowtime.getMinutes();
	
	var n_year = visual.schedule[j].getFullYear();
	var n_month = visual.schedule[j].getMonth() +1;
	var n_day =visual.schedule[j].getDate();
	var n_houers =visual.schedule[j].getHours();
	var n_minutes =visual.schedule[j].getMinutes();
	
	var get_y = n_year - year;
	var get_m = n_month - month;
	var get_d = n_day - day;
	var get_h = 24 - houers-1 + 16;
	var get_mi = 60 - minutes;
	
	//var hours =nowtime.getHours();
	//var minutes =nowtime.getMinutes();
	//var settime = visual.schedule[j2]-nowtime;
	if(get_m<0)	{
		get_y=get_y-1;
		get_m=12+get_m;
	}
	//if(get_d<0)	get_m=get_m-1;
	
//	if(get_h<0)	{
//		get_d=get_d-1;
	//}
//	yy[get_m-1]
	if(get_mi == 60) {
		get_mi = 0;
	if(get_h == 23){
		get_h =0;
		get_d +=1;
	}else{
		get_h +=1;
	}
	}	
	if(get_m >= 1){
		get_d=yy[month-1]-day+n_day;
//	}else{
		
	}

	var dd_plus =0;

	if(get_m > 1){	
		var i=0;
		while(i<get_m-1){
			
			var k = month+i;
			if(k ==12) k=0;
			dd_plus += yy[k];
		//	console.log(dd_plus);
			i++;
		}
		
	}
	
			
	if(nowtime > visual.schedule[j]){
		var dd_pos = 0;
		var hh_pos = 0;
		var mi_pos = 0;
		
		
	}else{
		var dd_pos = (get_d+dd_plus)-1;
		var hh_pos = get_h;
		var mi_pos = get_mi;
	}

	if(dd_pos <10) dd_pos = '0'+ dd_pos;
	else dd_pos = String(dd_pos);
	
	if(hh_pos <10) hh_pos = '0'+ hh_pos;
	else hh_pos = String(hh_pos);
	
	if(mi_pos <10) mi_pos = '0'+ mi_pos;
	else mi_pos = String(mi_pos);
	
	
	$('#impression_count' + j+' .time0').css('backgroundPosition','0 '+(parseInt(dd_pos.charAt(0)) *-24) + 'px');
	$('#impression_count' + j+' .time1').css('backgroundPosition','0 '+(parseInt(dd_pos.charAt(1)) *-24) + 'px');
	
	
	$('#impression_count' + j+' .time2').css('backgroundPosition','0 '+(parseInt(hh_pos.charAt(0)) *-24) + 'px');
	$('#impression_count' + j+' .time3').css('backgroundPosition','0 '+(parseInt(hh_pos.charAt(1)) *-24) + 'px');
	
	
	$('#impression_count' + j+' .time4').css('backgroundPosition','0 '+(parseInt(mi_pos.charAt(0)) *-24) + 'px');
	$('#impression_count' + j+' .time5').css('backgroundPosition','0 '+(parseInt(mi_pos.charAt(1)) *-24) + 'px');
	}

}



visual.timecount = function(){
	
	if(visual.endFlg) return;
	
	var nowtime = new Date();
	
	var year = nowtime.getFullYear();
	var month =nowtime.getMonth() +1;	
	var day =nowtime.getDate();
	var houers =nowtime.getHours();
	var minutes =nowtime.getMinutes();
	
	
	var n_year = visual.schedule[prevpos].getFullYear();
	var n_month = visual.schedule[prevpos].getMonth() +1;
	var n_day =visual.schedule[prevpos].getDate();
	var n_houers =visual.schedule[prevpos].getHours();
	var n_minutes =visual.schedule[prevpos].getMinutes();

	var get_y = n_year - year;
	var get_m = n_month - month;
	var get_d = n_day - day;
	var get_h = 24 - houers-1 + 16;
	var get_mi = 60 - minutes;
	
	//var hours =nowtime.getHours();
	//var minutes =nowtime.getMinutes();
	//var settime = visual.schedule[j2]-nowtime;
	if(get_m<0)	{
		get_y=get_y-1;
		get_m=12+get_m;
	}
	//if(get_d<0)	get_m=get_m-1;
	
//	if(get_h<0)	{
//		get_d=get_d-1;
	//}
//	yy[get_m-1]
	if(get_mi == 60) {
		get_mi = 0;
		if(get_h == 23){
		get_h =0;
		get_d +=1;
		}else{
		get_h +=1;
		}
	}

	if(get_m >= 1){
//	}else{
		get_d=yy[month-1]-day+n_day;

	}
	
	var dd_plus =0;

	if((get_m > 1)){
	
		var i=0;
		while(i<get_m){

			var k = month+i;
			if(k ==12) k=0;
			dd_plus += yy[k];
			i++;

		}

	}

		
	if(nowtime > visual.schedule[prevpos]){
		//
	
		if(nowtime > visual.scheduleEnd[prevpos]){
			
			if(visual.schedulePos[prevpos][0] != visual.schedulePos[prevpos][1]){
			visual.schedulePos[prevpos][0] = visual.schedulePos[prevpos][0]+1;
			
			var sc2 = visual.scheduleSet[prevpos][visual.schedulePos[prevpos][0]].getAttribute('count').split('/');
			var thisTime2 = new Date(sc2[0],sc2[1]-1,sc2[2],0,0,0);
			
			visual.schedule[prevpos] = thisTime2;
			$('#impression_sch'+prevpos+' img').attr('src',visual.scheduleSet[prevpos][visual.schedulePos[prevpos][0]].getAttribute('src'));
			}else{
				var dd_pos = 0;
				var hh_pos = 0;
				var mi_pos = 0;
			}
		}else{
		var dd_pos = 0;
	//	visual.schedule[prevpos] = 
		var hh_pos = 0;
		var mi_pos = 0;
		}
	}else{
		var dd_pos = (get_d+dd_plus)-1;
		var hh_pos = get_h;
		var mi_pos = get_mi;

	}

	if(dd_pos <10) dd_pos = '0'+ dd_pos;
	else dd_pos = String(dd_pos);
	
	if(hh_pos <10) hh_pos = '0'+ hh_pos;
	else hh_pos = String(hh_pos);
	
	if(mi_pos <10) mi_pos = '0'+ mi_pos;
	else mi_pos = String(mi_pos);

	
	$('#impression_count' + prevpos+' .time0').css('backgroundPosition','0 '+(parseInt(dd_pos.charAt(0)) *-24) + 'px');
	$('#impression_count' + prevpos+' .time1').css('backgroundPosition','0 '+(parseInt(dd_pos.charAt(1)) *-24) + 'px');
	
	
	$('#impression_count' + prevpos+' .time2').css('backgroundPosition','0 '+(parseInt(hh_pos.charAt(0)) *-24) + 'px');
	$('#impression_count' + prevpos+' .time3').css('backgroundPosition','0 '+(parseInt(hh_pos.charAt(1)) *-24) + 'px');
	
	
	$('#impression_count' + prevpos+' .time4').css('backgroundPosition','0 '+(parseInt(mi_pos.charAt(0)) *-24) + 'px');
	$('#impression_count' + prevpos+' .time5').css('backgroundPosition','0 '+(parseInt(mi_pos.charAt(1)) *-24) + 'px');
	
}


})(jq142);
