//************************
//実行
//************************
$(document).ready(function(){
	pageScroll(".to-top","#container");
	smartRollover();
	nav();
	acordion();
	newWin();
	newWinMdl();
	newWinSm();
	cateAcordion();
	fragment();
	if(document.getElementById("campaign-doc") || document.getElementById("product-list") || document.getElementById("market-list") || document.getElementById("gourmet-list")){
		MM_preloadImages("/list/images/btn_displg.gif", "/list/images/btn_dispsm_cr.gif");
		serveyDisp();
		listDisplay();
	}
	
	$("#contents a img").mouseover(function () {
	  $(this).fadeTo("fast", 0.8);
	});
	
	$("#contents a img").mouseout(function () {
	  $(this).fadeTo("fast", 1);
	});
	
		$("#contents input[type='image']").mouseover(function () {
				$(this).fadeTo("fast", 0.8);
		});
		
		$("#contents input[type='image']").mouseout(function () {
				$(this).fadeTo("fast", 1);
		});
});


//************************
//関数
//*********************	***

// 
// @name marquee.js
// @author miya2000
// @namespace http://d.hatena.ne.jp/miya2000/
// @version 1.0.0
// 

var Marquee = function ( id, opt ){
    if( ! document.getElementById(id) ) throw 'invalid id. [' + id + ']';
    var option = opt || {};
    this.id     = id;
    this.amount = option.amount || 6;
    this.delay  = option.delay  || 100;
    this.position = Number.POSITIVE_INFINITY; // means out of range.
    this._wrap();
    this.start();
}
Marquee.prototype = {
    /* wrap child nodes */
    _wrap : function() {
        var t = document.getElementById( this.id );
        with ( t.style ){
            position = 'relative'; // for ie6.
            overflow = 'hidden';
        }
        var w = document.createElement( 'div' );
        with ( w.style ){
            margin     = '0';
            padding    = '0';
            background = 'transparent';
            border     = 'none';
        }
        t.normalize();
        while( t.firstChild ){
            w.appendChild( t.removeChild( t.firstChild ) );
        }
        t.appendChild(w);
        /* get minimum width. */
        w.style.position = 'absolute';
        this.minWidth = w.offsetWidth;
        /* put back */
        w.style.position = 'relative';
        w.style.width = '100%'; // for ie6.
    },
    start : function() {
        this.stop();
        this._next();
    },
    _next : function() {
        var t = document.getElementById( this.id );
        this.curWidth = Math.min(t.offsetWidth,t.parentNode.offsetWidth); // dirty. (for "overflow:hidden" parent)
        this.position = this.position - this.amount;
        if ( this._isOutOfRange() ) {
            this.position = this._startPosition();
        }
        var w = t.firstChild;
        w.style.left = this.position + 'px';
        var self = this;
        this.tid = window.setTimeout(
            function(){ self._next(); },
            this.delay
        );
    },
    _startPosition : function() {
        return ( this.amount > 0 ) ?  this.curWidth
                                   : -this.minWidth;
    },
    _isOutOfRange : function() {
        return this.position < -this.minWidth || this.curWidth < this.position;
    },
    stop : function() {
        if ( this.tid ) window.clearTimeout( this.tid );
        this.tid = null;
    },
    isMarqueeing : function() {
        return ( this.tid ) ? true : false;
    }
}



//list display

	
function MM_preloadImages() { //v3.0
	try{
  		var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
	}catch(e){
			}
}

var serveyDisp = function(){
	var crCookier = ctrlCookie.getCookie("esdisplay");
	if(crCookier.indexOf("small") != -1){
		sm();
	}else if(crCookier.indexOf("large") != -1){
		lr();
	}else{
 	 $('.unit-estore-list .box').flatHeights();
	}
}


var listDisplay = function(){
	$(".disp-large").click(function(){
		lr();
		ctrlCookie.setCookie("esdisplay","large");
	});
	$(".disp-small").click(function(){
		sm();
		ctrlCookie.setCookie("esdisplay","small");
	});
}

var sm = function(){
		$(".button-liquid li").css("position","static");
		$(".unit-estore-list").attr("id","mm");
		$("#alpha-block .unit-estore-list .ph").attr("width","96");
		$("#alpha-block .unit-estore-list .ph").attr("height","96");
		$(".disp-large > img").attr("src","/list/images/btn_displg.gif");
		$(".disp-small > img").attr("src","/list/images/btn_dispsm_cr.gif");
		$(".button-liquid li").css("position","relative");
  $('.unit-estore-list .box').css("height","auto");
		
  $('.unit-estore-list .box').flatHeights();
}

var lr = function(){
		$(".button-liquid li").css("position","static");
		$(".unit-estore-list").attr("id","");
		$("#alpha-block .unit-estore-list .ph").attr("width","115");
		$("#alpha-block .unit-estore-list .ph").attr("height","115");
		$(".disp-large > img").attr("src","/list/images/btn_displg_cr.gif");
		$(".disp-small > img").attr("src","/list/images/btn_dispsm.gif");
		$(".button-liquid li").css("position","relative");
  $('.unit-estore-list .box').css("height","auto");
		
  $('.unit-estore-list .box').flatHeights();
}

//Fragment Navigation

var fragment = function(){
	$(".fragment-nav li a").click(function(){
		var target = $(this).attr("href");
		
		if(target.indexOf("#") != -1 ){
			$(this).blur();
			$('html,body').animate({ scrollTop: $(target).offset().top }, 'fast');
			return false;
		}
	});
}



//Category

var cateAcordion = function(){
	$("#side-category li ul").hide();
	$("#side-category li > a").click(
		function(){
			$(this).next().slideToggle();
			return false;
		}
	);
}


//アコーディオン 

var acordion = function(){
	$(".hide").hide();
	$(".sh-trg").click(function(){
																			
		var target = $(this).attr("href");
		
		if($(target).css("display") != "block"){
			$(this).attr("class","minus");
		}else{
			$(this).attr("class","plus");
		}
		
		$(target).slideToggle('fast');
		
		return false;
	});
}



//ナビゲションのカレント表示

var nav = function(){
	var docClass = $("body").attr("class");
		if(docClass == "home"){
		$("#nav li:eq(0) img").attr("src","/common/images/header/nav0_on.gif");
		}
		if(docClass == "campaign"){
		$("#nav li:eq(1) img").attr("src","/common/images/header/nav1_on.gif");
		}
		if(docClass == "gourmet"){
		$("#nav li:eq(2) img").attr("src","/common/images/header/nav2_on.gif");
		}
		if(docClass == "market"){
		$("#nav li:eq(3) img").attr("src","/common/images/header/nav3_on.gif");
		}
		if(docClass == "category-index"){
		$("#nav li:eq(4) img").attr("src","/common/images/header/nav4_on.gif");
		}
		if(docClass == "qa"){
		$("#nav li:eq(6) img").attr("src","/common/images/header/nav6_on.gif");
		}
		if(docClass == "contact"){
		$("#nav li:eq(7) img").attr("src","/common/images/header/nav7_on.gif");
		}
}

//新規ウィンドウ
//---------------------------
var newWin = function(){
	$(".new-win").click(function(){
		var w = window.open($(this).attr("href"), 'sub','width=720,height=660,resizable=yes,scrollbars=yes');
		w.focus();
		return false;		
	});
}

//新規ウィンドウ
//---------------------------
var newWinMdl = function(){
	$(".new-win-md").click(function(){
		var w = window.open($(this).attr("href"), 'sub','width=820,height=660,resizable=yes,scrollbars=yes');
		w.focus();
		return false;		
	});
}

//新規ウィンドウ
//---------------------------
var newWinSm = function(){
	$(".new-win-sm").click(function(){
		var w = window.open($(this).attr("href"), 'sub','width=400,height=300,resizable=yes,scrollbars=yes');
		w.focus();
		return false;		
	});
}


//スマートロールオーバー
//---------------------------
var smartRollover = function () {  
	if(document.getElementsByTagName) {  
		var images = document.getElementsByTagName("img");  
			for(var i=0; i < images.length; i++) {  
				if(images[i].getAttribute("src").match("_off.")){  
					images[i].onmouseover = function() {  
					this.setAttribute("src", this.getAttribute("src").replace("_off.", "_on."));  
				}
				images[i].onmouseout = function(){
					this.setAttribute("src", this.getAttribute("src").replace("_on.", "_off."));  
					}
				}
			}
		}  
}

//スマートスクロール
//---------------------------
var pageScroll = function (trg,target){
	$(trg).click(function () {
		$(this).blur();
		$('html,body').animate({ scrollTop: $(target).offset().top }, 'fast');
		return false;
	});
}

//テキスト
//---------------------------
$.fn.defaultInputText = function(options){
	// default configuration properties
	var defaults = {
		text   : 'default input', //default text
		f_color: '#333',          //focus color
		b_color: '#aaa'           //blur color

	};
	//merge
	var options = $.extend(defaults, options);  

	//get element
	var elements = this;

	//clear
	if(elements.val() == ""){
		elements.css("color",options.b_color);
		elements.val(options.text);
	}

	//focus
	this.focus(function(event){
		if(elements.val() == options.text){
			elements.css("color",options.f_color);
			elements.val("");
		}
	});

	//blur
	this.blur(function(event){
		if(elements.val() == ""){
			elements.css("color",options.b_color);
			elements.val(options.text);
		}
	});
}

/*ctrlCookie*/
var ctrlCookie = {};
// cookie取得
ctrlCookie.getCookie = function(name){
	if(!name) return;
	var val = "";
	var cookieName = name+"=";
	var tmpCookie = document.cookie + ";";
	var start = tmpCookie.indexOf(cookieName);
	if (start != -1) {
		var end = tmpCookie.indexOf(";", start);
		val = tmpCookie.substring(start + cookieName.length, end);
	}
	return val;
}

// cookie保存
ctrlCookie.setCookie = function (name,value){
	if(!name || !value) return;
	var cookieName = name+"=";
	var exp = new Date();
	exp.setTime(exp.getTime() + 31536000000);
	document.cookie = cookieName + value + "; path=/" + "; expires=" + exp.toGMTString();
}
// cookie削除
ctrlCookie.deleteCookie = function (name,value){
	var cookieName = name+"=";
	var deleteTime = new Date();
	deleteTime.setYear(deleteTime.getYear() - 1);
	document.cookie = cookieName + value + "; path=/" + ";expires=" + deleteTime.toGMTString();
}

