/**
 * Copyright � Zeta Bridge. since 2008
 */

// Cookie For Change Image
jQuery.fn.imageControl = function( imgMap, changeDispAreaMap, pageCookName, defaultID, imgClass ){
	var cookExpires = 365;
	var imgModeOn   = '_on.png';
	var imgModeOff  = '_off.png';
	
	if( $j.cookie( pageCookName ) == null ){
		$j.cookie( pageCookName, defaultID, { expires: cookExpires, path:'/' } );
	}
	var ctrImgId = $j.cookie( pageCookName );
	$j('#'+ctrImgId).get(0).src = imgMap[ctrImgId] + imgModeOn;
	var blockImgId = $j('#'+ctrImgId).get(0).id;
	$j( '#'+changeDispAreaMap[blockImgId] ).css( 'display', 'block' );
	
	var imgClassObj = $j('img.'+imgClass);
	imgClassObj.click(function(){
		var thisObj = $j(this).get(0);
		var ctrImgLeng = imgClassObj.length;
		
		thisObj.src = imgMap[thisObj.id] + imgModeOn;
		$j( '#'+changeDispAreaMap[thisObj.id] ).css( 'display', 'block' );
		$j.cookie( pageCookName, thisObj.id, { expires: cookExpires, path:'/' } );
		
		for( var i = 0; i < ctrImgLeng; i++ ){
			if( imgClassObj.get(i).id != thisObj.id ){
				$j( '#'+imgClassObj.get(i).id ).get(0).src = imgMap[imgClassObj.get(i).id] + imgModeOff;
				var noneImgId = $j('#'+imgClassObj.get(i).id).get(0).id;
				$j( '#'+changeDispAreaMap[noneImgId] ).css( 'display', 'none' );
			}
		}
	});
}

// Image Rotation With Animation
jQuery.fn.bannerRotation = function( staticDomain, banner_datas, animateData ){
	var defaultAnimateData = {
		isAnimate    : false,
		animateStyle : {
			opacity : 1
		},
		animateSpeed : 'slow'
	};
	animateData = jQuery.extend( defaultAnimateData, animateData || {} );
	
	return this.each(function(){
		var thisObj      = jQuery( this );
		var randNum      = BannerRandNo( banner_datas );
		var is_animate   = animateData.isAnimate;
		var imgOpacity   = is_animate ? 'filter:alpha(opacity=0);-moz-opacity:0;opacity:0;' : 'filter:alpha(opacity=100);-moz-opacity:1;opacity:1;';
		
		var appendStr = '';
		if( banner_datas[randNum].href != '' ){
			appendStr += '<a href="' + banner_datas[randNum].href + '">';
		}
		appendStr += '<img id="banRotaImg" style="' + imgOpacity + '" src="' + staticDomain + banner_datas[randNum].src + '" title="' + banner_datas[randNum].title + '" alt="' + banner_datas[randNum].alt + '" />';
		if( banner_datas[randNum].href != '' ){
			appendStr += '</a>';
		}
		thisObj.append( appendStr );
		
		if( is_animate ){
			var rotaImg = jQuery('#banRotaImg');
			rotaImg.animate( animateData.animateStyle, animateData.animateSpeed );
		}
	});
}

// Top Middle Banner
jQuery.fn.middleBanner = function( http, imgDomain, banners, dispNum, staticNum ){
	return this.each(function(){
		var randNoMap = {};
		while( true ){
			var randCount = 0;
			var bRNo  = BannerRandNo( banners );
			randNoMap[ bRNo ] = bRNo;
			for( var key in randNoMap ){
				randCount++;
			}
			if( randCount == dispNum ){
				var bannerCount = 0;
				for( var key_x in randNoMap ){
					createMiddleImg( http, imgDomain, banners, bannerCount+staticNum, key_x );
					bannerCount++;
				}
				break;
			}
		}
	});
}
var BannerRandNo = function( banners ){
	return Math.floor( Math.random() * banners.length );
};
var createMiddleImg = function( http, imgDomain, banners, count, no ){
	$j('#middle_banner_'+count).append(
		'<a href="' + http + banners[no]['href'] + '">'+
		'<img src="' + imgDomain + banners[no]['src'] + '" alt="' + banners[no]['alt'] + '" title="' + banners[no]['alt'] + '" />'+
		'</a>'
	);
	return;
};

// ranking icon
$j(function(){
	$j('div.pop_rank').toggle();
});

// similar button
$j(function(){
	$j('img.search_similar_btn').hover(
		function(){
			$j(this).get(0).src = '/images/btn/search_similar_on.gif';
		},
		function(){
			$j(this).get(0).src = '/images/btn/search_similar.gif';
		}
	);
});

// product grid border
$j(function(){
	$j('div.grid_border_1').hover(
		function(){
			$j(this).css( 'border', '1px solid #E4007F');
		},
		function(){
			$j(this).css( 'border', '1px dotted #AAAAAA');
		}
	);
});

jQuery.fn.layerLoadingImage = function( opts ){
	var defOpts = {
		loadBlockId	: 'loadimg_image',
		loadSrc		: null,
		loadMsg		: 'Now Loading...'
	};
	var opts = jQuery.extend( defOpts, opts );
	
	if( opts.loadSrc == null || opts.loadSrc.length == 0 ) return;
	
	this.each(function(){
		jQuery(this).click(function(){
			jQuery('BODY').append(
				'<div id="'+opts.loadBlockId+'">'+
					'<div id="loadimg_image_back"></div>'+
					'<div id="loadimg_image_img">'+
						'<div id="loadimg_image_msg">'+
							opts.loadMsg+
						'</div>'+
						'<img src="'+opts.loadSrc+'" />'+
					'</div>'+
				'</div>'
			);
		});
	});
}
