/*

2008-12-11 09:19:37

*/


$(function(){

	// dogs
	JCarouselSetting({
		id       : "photoslide-dogs",
		scroll   : 1,
		wrap     : "circular",
		easing   : "easeOutQuart",
		data     : PHOTOSLIDE_DOG_DATA,
		template : '<a href="${href}"><img src="${src}" width="78" height="120" alt="${alt}" class="rollover"></a>',
		callback : function(){
						// ローディング画像非表示
						$("#photoslide-dogs-loading").hide();

						$("#photoslide-dogs-block .jcarousel-prev-horizontal").mouseover(function() {
							$(this).css({"background": "transparent url(../../images/index_ps_nav001on.gif) no-repeat 0 0"});
						});
						$("#photoslide-dogs-block .jcarousel-prev-horizontal").mouseout(function() {
							$(this).css({"background": "transparent url(../../images/index_ps_nav001.gif) no-repeat 0 0"});
						});
						$("#photoslide-dogs-block .jcarousel-next-horizontal").mouseover(function() {
							$(this).css({"background": "transparent url(../../images/index_ps_nav002on.gif) no-repeat 0 0"});
						});
						$("#photoslide-dogs-block .jcarousel-next-horizontal").mouseout(function() {
							$(this).css({"background": "transparent url(../../images/index_ps_nav002.gif) no-repeat 0 0"});
						});
		}
	});

	// cats
	JCarouselSetting({
		id       : "photoslide-cats",
		scroll   : 1,
		wrap     : "circular",
		easing   : "easeOutQuart",//easeInOutCirc/easeInOutQuart/easeInOutCirc
		data     : PHOTOSLIDE_CAT_DATA,
		template : '<a href="${href}"><img src="${src}" width="78" height="120" alt="${alt}" class="rollover"></a>',
		callback : function(){
						// ローディング画像非表示
						$("#photoslide-cats-loading").hide();

						$("#photoslide-cats-block .jcarousel-prev-horizontal").mouseover(function() {
							$(this).css({"background": "transparent url(../../images/index_ps_nav003on.gif) no-repeat 0 0"});
						});
						$("#photoslide-cats-block .jcarousel-prev-horizontal").mouseout(function() {
							$(this).css({"background": "transparent url(../../images/index_ps_nav003.gif) no-repeat 0 0"});
						});
						$("#photoslide-cats-block .jcarousel-next-horizontal").mouseover(function() {
							$(this).css({"background": "transparent url(../../images/index_ps_nav004on.gif) no-repeat 0 0"});
						});
						$("#photoslide-cats-block .jcarousel-next-horizontal").mouseout(function() {
							$(this).css({"background": "transparent url(../../images/index_ps_nav004.gif) no-repeat 0 0"});
						});
		}
	});



	// 
	preloadImages( PHOTOSLIDE_DOG_DATA.concat(PHOTOSLIDE_CAT_DATA) );

	// rollover
	var roi = new RolloverImages("rollover", "on");
	roi.observe("photoslide-dogs-block");
	roi.observe("photoslide-cats-block");



	function JCarouselSetting( p ){
		if( !p || typeof p != "object" || !p.id || !p.data || !p.template ) return;

		jQuery('#'+p.id).jcarousel({
			wrap                   : p.wrap   || null,
			scroll                 : p.scroll || 3,
			easing                 : p.easing || null,
			itemVisibleInCallback  : { onBeforeAnimation : mycarousel_itemVisibleInCallback },
			itemVisibleOutCallback : { onAfterAnimation  : mycarousel_itemVisibleOutCallback },
			initCallback           : p.callback
		});

		function mycarousel_itemVisibleInCallback(carousel, item, i, state, evt){
			var idx = carousel.index(i, p.data.length);
			carousel.add(i, mycarousel_getItemHTML(p.data[idx - 1]));
		};

		function mycarousel_getItemHTML(item){
			var str = p.template;
			for( var key in item ){
				str = str.replace(new RegExp('\\$\\{' + key + '\\}', 'g'), item[key]);
			}
			return str;
		};

		function mycarousel_itemVisibleOutCallback(carousel, item, i, state, evt){
			carousel.remove(i);
		};
	}


	// preload images
	function preloadImages( obj ){
		if( typeof obj != "object" ) return;
		var preloadimages = [];
		$(obj).each(function(){
			if( this.src ){
				var img = new Image();
				img.src = this.src;
				preloadimages.push(img);
			}
		})
	}

});


/* for IE */
try {
	document.execCommand("BackgroundImageCache", false, true);
} catch(err) {}



/*  */
(function(){
	var html = ''
	+'<style type="text/css">'
	+'#photoslide-dogs-block,'
	+'#photoslide-cats-block,'
	+'#photoslide-dogs-loading,'
	+'#photoslide-cats-loading {'
	+'	display: block;'
	+'}'
	+'.attention {'
	+'	display: none;'
	+'}'
	+'</style>';

	document.write(html);
})()

