/*@cc_on _d=document;eval('var document=_d')@*/

document.getElementsByClassName = function (className) {
	var i, j, eltClass;
	var objAll = document.getElementsByTagName ? document.getElementsByTagName("*") : document.all;
	var objCN = new Array();
	for (i = 0; i < objAll.length; i++) {
		eltClass = objAll[i].className.split(/\s+/);
		for (j = 0; j < eltClass.length; j++) {
			if (eltClass[j] == className) {
				objCN.push(objAll[i]);
				break;
			}
		}
	}
	return objCN;
}

var totalLenght = 0;

function adjustHtml(){
	var i;
	//処理する回数を取得
	var len = document.getElementsByClassName("gf-relativePublishedDate").length;
	totalLenght = len;
	
	for (i = 0; i < len; i++) {
		setWordAndDate(i);
		setLink(i);
	}
	
	//この関数は1回だけ動けばよいので止める
	if(len > 0){
		clearInterval(myTimer);
	}
}



function setWordAndDate(i){
	
	//===================広告を削除する処理↓===================
	//タイトルを抜き出す
	if(i == 0){
		var myTitle =  document.getElementsByClassName("gf-title")[i+1].firstChild.nodeValue;
	}else{
		var myTitle =  document.getElementsByClassName("gf-title")[(i*2)+1].firstChild.nodeValue;
	}
	//PR:の文字を検索
	var myErrorWords = myTitle.search("PR:");
	//見つかった場合はそのdivを不可視にして処理を中断する
	if(myErrorWords == 0){
		var myResult =  document.getElementsByClassName("gfc-result")[i];
		 myResult.style.display = 'none';
		totalCount();
		return;
	}
	//===================広告を削除する処理↑===================
	
	var myDate =  document.getElementsByClassName("gf-relativePublishedDate")[i].firstChild.nodeValue;
	var myLength = myDate.length;
	
	var mySnippet = document.getElementsByClassName("gf-snippet")[i].firstChild.nodeValue;
	
	var mySnippetLength = mySnippet.length;
	var mySearchWords = mySnippet.search("続きを");
	
	//1文字目からサーチした文字の直前までを抜き出す
	if(mySearchWords > -1){
		var newSnippet = mySnippet.substring(0,mySearchWords);
		document.getElementsByClassName("gf-snippet")[i].innerHTML = newSnippet　+　"...";
	//見つからなければ最後に...を足すだけ
	}else{
		document.getElementsByClassName("gf-snippet")[i].innerHTML = mySnippet　+　"...";
	}
	
	//日付で出る場合の分岐
	if (myLength >= 10) {
		//送られてくる日付部分が「01日」等の表示の場合の0を削除する処理を設定
		var deleteFirstZero = function(mySelectNum){
			var myDayFirstNum = myDate.slice(mySelectNum, mySelectNum + 1);	
			var myYearAndMonth = myDate.slice(0, mySelectNum);
			
			if(myDayFirstNum === '0'){
				var myDay = parseInt(myDate.slice(mySelectNum, mySelectNum + 2),10);
				var myNewDate = myYearAndMonth + 　myDay　 + "日";
				document.getElementsByClassName("gf-relativePublishedDate")[i].innerHTML = myNewDate;
			}else{
				document.getElementsByClassName("gf-relativePublishedDate")[i].innerHTML = myDate;
			}
		}
		
		//1.2.3月以外は必ず11文字になる
		if(myLength === 11){
			deleteFirstZero(8);
		//1.2.3月は必ず10文字以下になる	
		}else{
			deleteFirstZero(7);
		}
	//「○時間前」等の場合の分岐
	}else{
		document.getElementsByClassName("gf-relativePublishedDate")[i].innerHTML = myDate;
	}
	
	totalCount();
}


function setLink(i){
	/*===============Get Link and Set Link===================*/
	
	var myA = document.getElementsByClassName("gf-title")[(i * 2) + 1];
	
	var myTitle = myA.childNodes[0].nodeValue;
	var myLink = myA.href;
	
	var mySnippet2 = document.getElementsByClassName("gf-snippet")[i];
	
	var newNode = document.createElement("div");
	newNode.setAttribute("class", "press_link"); 
	
	newNode.style.marginLeft = '155px'; 
	newNode.style.width = '66px';
	newNode.style.height = '14px';
	newNode.style.display = 'block';
	newNode.style.cursor = 'pointer';
	newNode.style.textAlign = 'right';
	newNode.style.backgroundImage = 'url(img/press_read_icon.gif)';
	newNode.style.backgroundRepeat = 'no-repeat';  
	
	var newAnchor = document.createElement("a");
	newAnchor.setAttribute("href", myLink);
	newAnchor.setAttribute("title", "続きを読む");
	newAnchor.setAttribute("target", "_blank");
	
	var newSpan = document.createElement("span");
	newSpan.setAttribute("class", "textLink2");
	
	newSpan.style.visibility = "hidden"; 
	
	var textNode = document.createTextNode("続きを読む");
	
	newSpan.appendChild(textNode);
	newAnchor.appendChild(newSpan);
	
	newNode.appendChild(newAnchor);
	mySnippet2.parentNode.appendChild(newNode);
	
	totalCount();
}

var totalCountNumber = 0;

function totalCount(){
	totalCountNumber += 1;
	if(totalLenght*2 == totalCountNumber){
		myHideTimer = setInterval("hideSlowly()", 100);
	}
}

var alphaNum1 = 100;

function hideSlowly(){
	var myElement = document.getElementById("loadingImg"); 
	alphaNum1 -= Math.floor(alphaNum1/4) + 1;
	alphaNum2 = alphaNum1/100;
	myElement.style.filter =　'alpha(opacity=' + alphaNum1 + ')';
	myElement.style.opacity =　alphaNum2;
	if(alphaNum1 <= 1){
		myElement.style.display = 'none';
		clearInterval(myHideTimer);
	}
}

myTimer = setInterval("adjustHtml()", 1000);
