/*
	parseUri 1.2.1
	(c) 2007 Steven Levithan <stevenlevithan.com>
	MIT License
*/

function parseUri (str) {
	var	o   = parseUri.options,
		m   = o.parser[o.strictMode ? "strict" : "loose"].exec(str),
		uri = {},
		i   = 14;

	while (i--) uri[o.key[i]] = m[i] || "";

	uri[o.q.name] = {};
	uri[o.key[12]].replace(o.q.parser, function ($0, $1, $2) {
		if ($1) uri[o.q.name][$1] = $2;
	});

	return uri;
};

parseUri.options = {
	strictMode: false,
	key: ["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"],
	q:   {
		name:   "queryKey",
		parser: /(?:^|&)([^&=]*)=?([^&]*)/g
	},
	parser: {
		strict: /^(?:([^:\/?#]+):)?(?:\/\/((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?))?((((?:[^?#\/]*\/)*)([^?#]*))(?:\?([^#]*))?(?:#(.*))?)/,
		loose:  /^(?:(?![^:@]+:[^:@\/]*@)([^:\/?#.]+):)?(?:\/\/)?((?:(([^:@]*):?([^:@]*))?@)?([^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/
	}
};

/*        クッキーに登録する汎用関数              */
/* 書式 : mySetCookie(クッキー名,値,有効期限日数) */
/* 戻り値 : なし(void)                            */
function mySetCookie(myCookie,myValue,myDay){
   myExp = new Date();
   myExp.setTime(myExp.getTime()+(myDay*24*60*60*1000));
   myItem = "@" + myCookie + "=" + escape(myValue) + ";";
   myExpires = "expires="+myExp.toGMTString();
   document.cookie =  myItem + myExpires;
}

/*        クッキーを取り込む汎用関数              */
/* 書式 : myGetCookie(クッキー名)                 */
/* 戻り値 : 値(string)  null:該当なし             */
function myGetCookie(myCookie){
   myCookie = "@" + myCookie + "=";
   myValue = null;
   myStr = document.cookie + ";" ;
   myOfst = myStr.indexOf(myCookie);
   if (myOfst != -1){
      myStart = myOfst + myCookie.length;
      myEnd   = myStr.indexOf(";" , myStart);
      myValue = unescape(myStr.substring(myStart,myEnd));
   }
   return myValue;
}

function getJsParam(fn) {
	//読み込まれたスクリプトファイルの一覧を取得
	var scripts = document.getElementsByTagName( 'script' );
	var url;
	var s;

	//該当スクリプトファイルの抜き出し
	for ( var i=0; i<scripts.length; i++ ) {
		s = scripts.item( i );
		if( s.src.indexOf( fn ) != -1 ) {
			url = s.src;
			break;
		}
	}
	
	return url;
}

function direct(f_sel) { 
	var p_url = parseUri(document.URL);
	var arg;
	
	if(!p_url["queryKey"]["t"]){
		var ck = myGetCookie("headline")
		if(ck){
			arg = "?t=" + ck;
			location.href = p_url["protocol"] + "://" + p_url["host"] + p_url["path"] + arg;
		}
	} else {
		for(i=0; i < f_sel.options.length; i++){
			if(f_sel.options[i].value == p_url["queryKey"]["t"]){
				f_sel.selectedIndex = i;
			}
		}
	}
}

//this.options[this.selectedIndex].value
function direct_select(s) { 
	mySetCookie("headline", s, 30);
	var p_url = parseUri(document.URL);
	location.href = p_url["protocol"] + "://" + p_url["host"] + p_url["path"] + "?t=" + s;
}

