/*-----------------------------------------------------------------------
 * KMPL kpl_Cookie.js
 *
 * DEPENDENCIES
 *
 * @version $Revision: 1.2 $
 *-----------------------------------------------------------------------
 */

// COOKIE取得、設定に関する定義
var  COOKIE_DOMAIN        ="keikotomanabu.net"; // ドメイン

var static_delimitor_cname='=';
var empty_value=' ';

var HAN_CD_VAL            ="HAN_CD"; // 版コード
var TODOFUKEN_CD_VAL      ="TODOFUKEN_CD"; // 都道府県コード
var DAI_AREA_CD_VAL       ="DAI_AREA_CD"; // 大エリアコード
var SHO_AREA_CD_VAL       ="SHO_AREA_CD"; // 小エリアコード
var FLOW_VAL              ="FLOW"; // FLOWキー
var form_name             ="kplSearchForm"; //FORM名


/*
 * クッキーの書き込みを行う
 * @param str     書き込みCookie情報
 */
function setCookie(str){

	var delimiterFlg = str.indexOf(static_delimitor_cname,0);

	var cookieName = str.substring(0, delimiterFlg);
	var cookieValue = str.substring(delimiterFlg+1, str.length);
	
	var cookie_str;

	if(cookieValue == ""){
		// Cookieの値がない場合はCookieを削除
		cookie_str = kpl_cookie_del_value(cookieName);
	}else{
		// Cookieの値がある場合はCookieに書き込み
		cookie_str = kpl_cookie_set_value(cookieName,cookieValue,km_session_expr());
	}

	document.cookie = cookie_str;
}


/*
 * クッキーの取得
 */
function getCookie(){
	var c = document.cookie;
//	alert("getCookieの値：" + c);
	return c;
}


/*
 * Submit処理を行う
 * @param url           遷移先URLアドレス
 * @param HAN_CD        版コード
 * @param TODOFUKEN_CD  都道府県コード
 * @param DAI_AREA_CD   大エリアコード
 * @param SHO_AREA_CD   小エリアコード
 */
function kplKensaku(url, HAN_CD, TODOFUKEN_CD, DAI_AREA_CD, SHO_AREA_CD){
	// hidden値の書き換えを行う。
	kplChgparam(HAN_CD, TODOFUKEN_CD, DAI_AREA_CD, SHO_AREA_CD);
	document.getElementById(form_name).action = url;
	document.getElementById(form_name).submit();
}


/*
 * hidden値の書き換え処理を行う
 * @param HAN_CD        版コード
 * @param TODOFUKEN_CD  都道府県コード
 * @param DAI_AREA_CD   大エリアコード
 * @param SHO_AREA_CD   小エリアコード
 */
function kplChgparam(HAN_CD, TODOFUKEN_CD, DAI_AREA_CD, SHO_AREA_CD){

	if (HAN_CD != undefined){
		if(HAN_CD == empty_value){
			document.getElementById(HAN_CD_VAL).value = "";
		}else{
			document.getElementById(HAN_CD_VAL).value = HAN_CD;
		}
	}else{
		document.getElementById(HAN_CD_VAL).value = "";
	}

	if (TODOFUKEN_CD != undefined){
		if(TODOFUKEN_CD == empty_value){
			document.getElementById(TODOFUKEN_CD_VAL).value = "";
		}else{
			document.getElementById(TODOFUKEN_CD_VAL).value = TODOFUKEN_CD;
		}
	}else{
		document.getElementById(TODOFUKEN_CD_VAL).value = "";
	}

	if (DAI_AREA_CD != undefined){
		if(DAI_AREA_CD == empty_value){
			document.getElementById(DAI_AREA_CD_VAL).value = "";
		}else{
			document.getElementById(DAI_AREA_CD_VAL).value = DAI_AREA_CD;
		}
	}else{
		document.getElementById(DAI_AREA_CD_VAL).value = "";
	}

	if (SHO_AREA_CD != undefined){
		if(SHO_AREA_CD == empty_value){
			document.getElementById(SHO_AREA_CD_VAL).value = "";
		}else{
			document.getElementById(SHO_AREA_CD_VAL).value = SHO_AREA_CD;
		}
	}else{
		document.getElementById(SHO_AREA_CD_VAL).value = "";
	}
}


/*
 * エリアhidden値を取得する
 */
function getkpl(){
	HAN_CD = document.getElementById(HAN_CD_VAL).value ;
	TODOFUKEN_CD = document.getElementById(TODOFUKEN_CD_VAL).value ;
	DAI_AREA_CD = document.getElementById(DAI_AREA_CD_VAL).value ;
	SHO_AREA_CD = document.getElementById(SHO_AREA_CD_VAL).value ;
	kplset = new Array(HAN_CD, TODOFUKEN_CD, DAI_AREA_CD, SHO_AREA_CD);
	return kplset;
}


/*
 * hidden項目(FLOW)値を取得する
 */
function getFlow(){
	FLOW = document.getElementById(FLOW_VAL).value ;
	return FLOW;
}


/*
 * 削除クッキー用の設定文字列を作成する
 * @param cookiename      対象名
 */
function kpl_cookie_del_value(cookiename) {

  dTime = new Date();
  dTime.setYear(dTime.getYear() - 1);
  
	str = cookiename + "=; domain=" + COOKIE_DOMAIN + "; path=/;expires=" + dTime.toGMTString() + ";expires=" + dTime.toGMTString();
	
	return str;
}


/*
 * クッキー用の設定文字列を作成する
 * @param cookiename      対象名
 * @param cookievalue     対象値
 * @param expr            対象時間(nullだと未設定）
 */
function kpl_cookie_set_value(cookiename, cookievalue, expr)
{
	var str;
	
	if(cookiename == null) {
		return null;
	}
	if(cookievalue == null) {
		cookievalue = "";
	}
	
	str = cookiename + "=" + escape(cookievalue) + "; domain=" + COOKIE_DOMAIN + "; path=/";
	if(expr != null) {
		str = str + "; Expires="+expr;
	}

	return str;
}


/*
 * クッキー用にExpire時間を生成する
 * ３ヶ月後の２５日を生成する
 *
 */
function km_session_expr(str)
{
	var nowtime;
	var nflag = 0;
	var datestr;
	var nmonth;
	var yobi = new Array("Sun", "Mon", "Tue", "Wed", "Thu", "Fir", "Sat");
	var tuki = new Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec");
	
	if(str == null || str.length == 0) {
		nowtime = new Date();
	} else {
		nowtime = new Date(str);
	}
	
	if(nowtime.getDate() > 25) {
		nflag = 1;
	}
	nowtime.setDate(25);

	if(nowtime.getMonth() > (8-nflag)) {
		nowtime.setFullYear(nowtime.getFullYear() + 1);
	}
	nmonth=(nowtime.getMonth() + 3 + nflag) % 12;
	nowtime.setMonth(nmonth);
	
	datestr = yobi[nowtime.getDay()]+", "+nowtime.getDate()+"-"+tuki[nowtime.getMonth()]+"-"+nowtime.getFullYear()+" 00:00:00 GMT";
	return datestr;
}


/*
 * クッキー用にExpire時間を生成する
 * 削除用の時間を返す
 *
 */
function km_session_expr_remove()
{
	return "Thu, 1-Jan-1970 00:00:00 GMT";
}

