

function yhFirstFade (c, go) {
	var es = $ES(c, 'blocksPage');
	
	var firstParam = {};
	firstParam[0] = {opacity: [0.0, 0.5]};
	
	es.each(function(item, i) {
		item.setStyle('display', 'block');
		item.setStyle('opacity', 0);
		if ((go) && (i==0))
			var firstIn = new Fx.Elements(item, {wait: false, duration:800, transition:Fx.Transitions.Sine.easeInOut, onComplete:applyFades});	
		else
			var firstIn = new Fx.Elements(item, {wait: false, duration:800, transition:Fx.Transitions.Sine.easeInOut});	
		firstIn.start(firstParam);
	});
};


function yhFadeIn (bb, trigger, block) {

 	$(bb).setStyle('opacity', 0);
 	
 	var blockLeft = $(trigger).getStyle('left').toInt();
 	var blockWidth = $(trigger).getStyle('width').toInt();
 	var burstLeft = blockLeft + (blockWidth/2) - 200;
 	 	
 	$(bb).setStyle('top', 30);
	$(bb).setStyle('left', burstLeft);
	
	var fadeIn = new Fx.Elements($(bb), {wait: false, duration:1600, transition:Fx.Transitions.Sine.easeInOut});
	var brightIn = new Fx.Elements($(block), {wait: false, duration:800, transition:Fx.Transitions.Sine.easeInOut});	
	

	$(trigger).addEvent("mouseenter", function() {
		var brightParam = {};
		var blockOpacity = $(block).getStyle('opacity');
		brightParam[0] = {opacity: [blockOpacity, 1]};
		
		var fxParam = {};
		var currentOpacity = $(bb).getStyle('opacity');
		var currentTop = $(bb).getStyle('top').toInt();
		fxParam[0] = {opacity: [currentOpacity, 0.5], top: [currentTop, -10]};
		fadeIn.start(fxParam);
		brightIn.start(brightParam);
	}.bind(this));


	$(trigger).addEvent("mouseleave", function() {
		var brightParam = {};
		var blockOpacity = $(block).getStyle('opacity');
		brightParam[0] = {opacity: [blockOpacity, 0.5]};
		
		var fxParam = {};
		var currentOpacity = $(bb).getStyle('opacity');
		var currentTop = $(bb).getStyle('top').toInt();
		fxParam[0] = {opacity: [currentOpacity, 0], top: [currentTop, 30]};
		fadeIn.start(fxParam);
		brightIn.start(brightParam);
	}.bind(this));

};


function yhInfo (info, trigger, block) {
	//initial condition
	$(info).setStyle ('opacity', 0);
	$(info).setStyle ('top', 50);
 	var blockLeft = $(trigger).getStyle('left').toInt();
 	var blockWidth = $(trigger).getStyle('width').toInt() + 10;
 	var infoLeft = blockLeft + (blockWidth/2) - ((230+28)/2);
	$(info).setStyle('left', infoLeft);

	// effect
	var dropIn  = new Fx.Elements($(info), {wait: false, duration:1000, transition:Fx.Transitions.Sine.easeInOut});	
	var fadeOut = new Fx.Elements($(info), {wait: false, duration:500,  transition:Fx.Transitions.Sine.easeInOut});	

	// events
	$(trigger).addEvent("mouseenter", function() {
		var fxParam = {};
		var fakeParam = {};
		var infoOpacity = $(info).getStyle('opacity').toInt();
		var infoTop = $(info).getStyle('top').toInt();
		fxParam[0] = {opacity: [infoOpacity, 1], top: [infoTop, 0]};
		fakeParam[0] = {top: [infoTop, infoTop]};
		fadeOut.start(fxParam);
	}.bind(this));

	$(trigger).addEvent("mouseleave", function() {
		var fxParam = {};
		var infoOpacity = $(info).getStyle('opacity').toInt();
		var infoTop = $(info).getStyle('top').toInt();
		fxParam[0] = {opacity: [infoOpacity, 0], top: [infoTop, 50]};
		fadeOut.start(fxParam);
	}.bind(this));
};


function yhSaleWiggle (e) {
	$(e).setStyle ('display', 'block');
	var wiggle  = new Fx.Elements($(e), {wait: false, duration:1000, transition:Fx.Transitions.Elastic.easeOut, onComplete:function() {
		var v = new yhSaleWiggle (e);
	}});
	var p = {};
	var cr = $(e).getStyle('right').toInt();
	if (cr == 25)
		p[0] = {right: [25, 30], width: [64, 54], height:[51, 43]};
	else
		p[0] = {right: [30, 25], width: [54, 64], height:[43, 51]};
	
	(function(){wiggle.start(p);}).delay($random(2000, 6000));
};


function yhSaleEvents (e, f) {
	//initial condition
	$(f).setStyle ('opacity', 0);
	$(f).setStyle ('display', 'block');
	
	// effect
	var fadeIn = new Fx.Elements($(f), {wait: false, duration:500,  transition:Fx.Transitions.Sine.easeInOut});	

	// events
	$(e).addEvent("mouseenter", function() {
		var fxParam = {};
		var infoOpacity = $(f).getStyle('opacity').toInt();
		fxParam[0] = {opacity: [infoOpacity, 1]};
		fadeIn.start(fxParam);
	}.bind(this));

	$(e).addEvent("mouseleave", function() {
		var fxParam = {};
		var infoOpacity = $(f).getStyle('opacity').toInt();
		fxParam[0] = {opacity: [infoOpacity, 0]};
		fadeIn.start(fxParam);
	}.bind(this));
};


function applyFirstFades () {
	new yhFirstFade ('.outbox');
	new yhFirstFade ('.titlebox', 1);
};

function applyFades () {
	new yhFadeIn ('burst0', 'cover0', 'id0_outside');
	new yhFadeIn ('burst1', 'cover1', 'id1_outside');
	new yhFadeIn ('burst2', 'cover2', 'id2_outside');
	new yhFadeIn ('burst3', 'cover3', 'id3_outside');
	new yhFadeIn ('burst4', 'cover4', 'id4_outside');
	new yhFadeIn ('burst5', 'cover5', 'id5_outside');
	new yhFadeIn ('burst6', 'cover6', 'id6_outside');
	
	new yhInfo ('info0', 'cover0', 'id0_outside');
	new yhInfo ('info1', 'cover1', 'id0_outside');
	new yhInfo ('info2', 'cover2', 'id0_outside');
	new yhInfo ('info3', 'cover3', 'id0_outside');
	new yhInfo ('info4', 'cover4', 'id0_outside');
	new yhInfo ('info5', 'cover5', 'id0_outside');
	new yhInfo ('info6', 'cover6', 'id0_outside');
	
	new yhSaleWiggle ('box');
	new yhSaleEvents ('box', 'salepop');
};

window.onload = applyFirstFades;


