//明示的に変数を宣言しエラー回避
mapInfo=new Array();
mapDetail=new Array();
function init(){
	//target変更
	changeTarget();
	//GoogleMapsAPI
	setGoogleMaps();
	//広告
	disp_ads();
}

/*==========================================================
target変更
==========================================================*/

function changeTarget(){
	targetDocs=document;
	for(i=0; i<targetDocs.getElementsByTagName("a").length; i++){
		if(targetDocs.getElementsByTagName("a")[i].href.indexOf("dimadima",0)==-1 && targetDocs.getElementsByTagName("a")[i].href.indexOf("javascript",0)==-1){
			targetDocs.getElementsByTagName("a")[i].target="_blank";
		}
	}
}

/*==========================================================
広告挿入
==========================================================*/
function disp_ads(){
new Ajax.Updater("header_ads_02","/affiriate/header_ads_02.html",{method:"get"});
}



/*==========================================================
Montly Archiveの表示コントロール
(トップページのみ)
==========================================================*/

/*==========================================================
ソーシャルブックマーク(個別ページのみ)
==========================================================*/
function sBookURL(){return window.location.href;}
function sBookTitle(){return document.title;}
function title_utf8(){return encodeURIComponent(sBookTitle());}
function url_utf8(){return encodeURIComponent(sBookURL());}; 
function SB_UrlOpen(strLink){location.href=strLink;}; 
function SB_CntSet(){
	if(document.getElementById( 'sp_h_cnt')){
		document.getElementById( 'sp_h_cnt').innerHTML = '<img src="http://b.hatena.ne.jp/entry/image/' + sBookURL() + '">';
	}
	if(document.getElementById( 'sp_l_cnt')){
		document.getElementById( 'sp_l_cnt').innerHTML = '<img src="http://image.clip.livedoor.com/counter/' + sBookURL() + '">';
	}
	if(document.getElementById( 'sp_b_cnt')){
		document.getElementById( 'sp_b_cnt').innerHTML = '<img src="http://api.buzzurl.jp/api/counter/' + sBookURL() + '">';
	}
}


/*==========================================================
楽天ウェブサービス
http://www.kawa.net/works/js/jkl/parsexml.htmlを参考にした
==========================================================*/

function disp_rakuten_item(mt_genre_id,item_len, image_w, text_w){
//表示するジャンルを決める
	switch(mt_genre_id){
		case('0100_travel')         : obj_id = '101383'; break;//ホテル・旅館（国内）
		case('0300_garden')         : obj_id = '204167'; break;//電動工具
		case('0400_child_care')     : obj_id = '101189'; break;//おもちゃ
		case('0500_web')            : obj_id = '100026'; break;//PC
		case('0600_book_review')    : obj_id = '111903'; break;//ダイエットフード
		case('0070_news_clipping')  : obj_id = '204675'; break;//ダイエットウエア・サポーター
		case('5100_tips_web')       : obj_id = '100026'; break;//PC
		case('5200_reference-site') : obj_id = '100026'; break;//PC
		case('9900_etc ')           : obj_id = '100083'; break;//デジカメ
		default                     : obj_id = '100227';     break;//スイーツ
		/*
		*/
	}



	//URL(アフィリエイトID入り)
	var url="http://api.rakuten.co.jp/rws/1.7/rest?developerId=d5469d1c82dc01b7fd3ccf6435f874ba&affiliateId=04211958.84e07c23.04211959.8eb863ce&operation=ItemSearch&version=2007-04-11&sort=-reviewCount&imageFlag=1&availability=1&genreId="+obj_id+"&page="+Math.ceil(Math.random()*5)+"&hits="+item_len;

	// JKL.ParseXMLオブジェクトを生成
	var http = new JKL.ParseXML("/get_page.php?file="+url);
	//var http = new JKL.ParseXML(url);
	// 呼び出し先関数を定義する
	var func = function(data){
		var html  = "";
		var nodes = data["Response"]["Body"]["itemSearch:ItemSearch"]["Items"];
		for (i=0; i<nodes["Item"].length; i++){
			html += '<a href="'+nodes["Item"][i]["affiliateUrl"]+'" style="width:+'+image_w+text_w+'+px;height:50px;display:block;background-color:#fff;color:#333;text-decoration:none;margin-bottom:5px;border-bottom:solid 1px #f5f5f5;background: url('+nodes["Item"][i]["smallImageUrl"]+') no-repeat 0px 0px;padding-left:'+image_w+';font-size:12px;line-height:135%;" target="_blank">';
			html += nodes["Item"][i]["itemName"]+"<br>";
			html += '価格：'+nodes["Item"][i]["itemPrice"]+'円　レビュー数：'+nodes["Item"][i]["reviewCount"];
			html += '</a>';
		}
		html += "<p style=\"font-size: 10px;text-align:right;\"><a href=\"http://webservice.rakuten.co.jp/\" target=\"_blank\">Supported by 楽天ウェブサービス</a></p>"
		document.getElementById("rakuten_ads").innerHTML=html;
	}
	// 呼び出し先関数を指定する
	http.async( func );
	// ダウンロード〜解析〜関数呼び出しする
	http.parse();
}

/*==========================================================
Google Maps
==========================================================*/

function setGoogleMaps(){
	var noWin =navigator.appVersion.indexOf("Win") ==-1;
	var noIE =navigator.userAgent.indexOf("MSIE") ==-1;
	var Opera =navigator.userAgent.indexOf("Opera")!=-1;
	if(noWin||noIE||Opera){
		//Windowds IE以外の場合
		if(mapInfo.length>0){
			document.getElementById(mapInfo[0]).style.height="5px";
			document.getElementById(mapInfo[0]).style.display=none;
		}
		}else{
		//Windows IEの場合
		dispGoogleMaps();
	}
}

function dispGoogleMaps(){
//参考サイト
// http://lotusblo.blog16.fc2.com/
// http://blog.livedoor.jp/cosmoworld/archives/cat_10001211.html
	//もし地図を描画するレイヤがあったなら地図描画を行う
	if(mapInfo.length>0){
		//-----------------------アイコン定義
		var icon = new GIcon();
		marker=new Array();
		var map = new GMap(document.getElementById(mapInfo[0]));
		//アイコンの定義
		icon.image = "http://labs.google.com/ridefinder/images/mm_20_red.png";
		icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
		icon.iconSize = new GSize(12, 20);
		icon.shadowSize = new GSize(22, 20);
		icon.iconAnchor = new GPoint(6, 20);
		icon.infoWindowAnchor = new GPoint(5, 1); 
		var infowindowStatus = 0;
		map.addControl(new GLargeMapControl());
		map.centerAndZoom(new GPoint(mapInfo[1],mapInfo[2]),mapInfo[3]);
		//地図か衛星画像かの指定：うまくいかないので放置
		//配列の4番目は無視することにする
		//type=(mapInfo[4]==null)?"G_MAP_TYPE":"G_SATELLITE_TYPE";
		//map.setMapType(type.toString());
		for(i=0; i<mapDetail.length; i++){
			marker[i] = new GMarker(new GPoint(mapDetail[i][0],mapDetail[i][1]),icon);
			//クリックされた時のイベント：for文の中に入れると動かない　謎
			GEvent.addListener(marker[i], "click", function() {
			marker[i].openInfoWindowHtml(mapDetail[i][2]);
			});
			map.addOverlay(marker[i]);
		}
	}
}