/*
----------------------------------------------
DDP main JavaScript

Created Date: 2009/07/29
Author: Yu Uno
Last Up Date : 2009/11/27
Author: Taiki Toyosawa
----------------------------------------------
*/

		var $j = jQuery.noConflict();

		$j(function(){
		
			//サムネールスライド変数・設定
			var moveSwitchThum = 'off';
			var commentSwitchThum = 'off';
			var swThum = 47;
			var vwThum = swThum * 4;
			var slideIdThum = $j("#slideListThumWrap");
			var maxSlideThum = (-swThum * $j("#slideListThum li").length) +vwThum;
			
			
			/*サムネールスライド*/
					
			$j("#navRightThum a").stop().click(function(){
				slideControlThum("right");
                //pageTracker._trackEvent(’topSlide’, ‘thumbRight’);
			});
			$j("#navLeftThum a").stop().click(function(){
				slideControlThum("left");
                //pageTracker._trackEvent(’topSlide’, ‘thumbLeft’);
			});
			function slideControlThum(direction){
				if (moveSwitchThum == "off"){
					moveSwitchThum = "on";
					var spThum = slideIdThum.css("left").replace('px','');
					if (direction == "right" && spThum > maxSlideThum){
						slideIdThum.animate({
							left: "-=" + swThum + "px"
						}, 400, "easeOutCubic",function(){
							var spThum = slideIdThum.css("left").replace('px','');
							if (spThum > maxSlideThum){
								$j("#slideNavThum li a").removeClass("end");
							} else {
								$j("#navRightThum a").addClass("end");
							};
							moveSwitchThum = "off";
						});
					} else if (direction == "left" && spThum < 0){
						slideIdThum.animate({
							left: "+=" + swThum + "px"
						}, 400, "easeOutCubic", function(){
							var spThum = slideIdThum.css("left").replace('px','');
							if (spThum < 0){
								$j("#slideNavThum li a").removeClass("end");
							} else {
								$j("#navLeftThum a").addClass("end");
							};
							moveSwitchThum = "off";
						});
					} else {
						moveSwitchThum = "off";
						return false;
					}
				} else {
					return false;
				}
			};
			
			//サムネールホバーコメント
			var onNum = "";
			$j("#slideListThum li").hover(
				function(){
					if(commentSwitchThum == "off"){
						commentSwitchThum = "on"
						var onNum = $j(this).attr("id").replace('thum','');
						var onCommentId = "#comment" + onNum;
						$j("#commentThum").css("display","block");
						$j(onCommentId).css({display:"block"});
						$j(onCommentId).css({backgroundImage:"url(http://communityfactory.com/cmn/img/home/bg_commentThum.png)"});
					} else { return false; }
				},
				function(){
					$j("#commentThum").css("display","none");
					$j("#commentThum li").css({display:"none"});
					$j("#commentThum li").css({backgroundImage:"none"});
					commentSwitchThum = "off"
				}
			);
			
			
			//ビルボードスライド変数・設定
			var moveSwitch = 'off';
			var sw = 940;
			var slideId = $j("#slideList");
			var maxSlide = (-940 * $j("ul#slideList li").length + 940);
			
			$j("#navLeft").hide()
			
			/*ビルボードスライド*/

			$j("#navRight a").stop().click(function(){
				slideControl("right");
                //pageTracker._trackEvent(’topSlide’, ‘boardRight’);
			});
			$j("#navLeft a").stop().click(function(){
				slideControl("left");
                //pageTracker._trackEvent(’topSlide’, ‘boardLeft’);
			});
			function slideControl(direction){
				if (moveSwitch == "off"){
					moveSwitch = "on";
					var sp = slideId.css("left").replace('px','');
					if (direction == "right" && sp > maxSlide){
						$j("#navLeft").fadeIn("400");
						slideId.animate({
							left: "-=" + sw + "px"
						}, 700, "easeOutCubic",function(){
							var sp = slideId.css("left").replace('px','');
							focusThum();
							locationNumber("right");
							moveSwitch = "off";
							navBtnHide("right");
						});
					} else if (direction == "left" && sp < 0){
						$j("#navRight").fadeIn("400");
						slideId.animate({
							left: "+=" + sw + "px"
						}, 700, "easeOutCubic",function(){
							var sp = slideId.css("left").replace('px','');
							focusThum();
							locationNumber("left");
							moveSwitch = "off";
							navBtnHide("left");
						});
					} else {
						moveSwitchThum = "off";
						return false;
					}
				} else {
					return false;
				}
			};
			function focusThum(){
				var sp = slideId.css("left").replace('px','');
				var nowSlideIdThum = "#thum" + -sp / sw;
				$j("#slideListThum li").removeClass("stay");
				$j(nowSlideIdThum).addClass("stay");
			}
			function navBtnHide(derection){
				var sp = slideId.css("left").replace('px','');
				if(derection == "right"){
					if (sp > maxSlide){
						$j("#navRight").fadeIn("400");
					} else {
						$j("#navRight").fadeOut("400");
					};
				} else if (derection == "left"){
					if (sp < 0){
						$j("#navLeft").fadeIn("400");
					} else {
						$j("#navLeft").fadeOut("400");
					};
				};
			};

			/*サムネール・ビルボード　連動*/
			
			$j("#slideListThum li a").click(function(){
				$j("#slideListThum li").removeClass("stay");
				$j(this).parent("li").addClass("stay");
				$j("ul#slideList").animate({
					left: -sw * $j(this).parent("li").attr("id").replace("thum","") + "px"
				}, 700, "easeOutCubic", function(){
					var sp = ($j("ul#slideList").css("left").replace("px",""));
					var maxSlide = (-sw * $j("ul#slideList li").length + sw);
					locationNumberDirect();
					if(sp < 0){
						$j("#navLeft").fadeIn("400");
						if(sp == maxSlide){
							$j("#navRight").fadeOut("400");
						} else {
							$j("#navRight").fadeIn("400");
							return false;
						}
					} else {
						$j("#navLeft").fadeOut("400");
						return false;
					}
				});
			});
			
			
			//各リンク先を取得
			var frameLink = [];
			$j('ul#slideList li a').each(function(i){
				frameLink[i] = $j(this).attr('href');
			});
			
			//設定されたframeNumberのリンク先へジャンプ			
			function frameLinkSet(i){
				$j("#slideFrame").unbind('click').click(function(){
					document.location = frameLink[i];
				});
			};
			frameLinkSet(0);

			//ビルボードスライドによるframeNumberの変化
			var frameNumber = 0;
			var maxNumber = $j('ul#slideList li a').length;
			function locationNumber(number){
				if(number == 'left'){
					if(frameNumber > 0){
						frameNumber -= 1;
						frameLinkSet(frameNumber);
					} else {
						return false;
					}
				} else if(number == 'right'){
					if(frameNumber < maxNumber){
						frameNumber += 1;
						frameLinkSet(frameNumber);
					} else {
						return false;
					}
				}
			}
			
			//サムネール・ビルボード連動スライドによるframeNumberの変化
			function locationNumberDirect(){
				var sp = slideId.css("left").replace('px','');
				var sn = -sp / sw;
				frameNumber = sn;
				frameLinkSet(frameNumber);
			}
		});

