/*************************************************************/
/*                                                           */
/*	mystyles.js                                              */
/*	use for customizing cocolog style.                       */
/*                                                           */
/*	http://feefifofum.cocolog-nifty.com/blog/                */
/*                                                           */
/*************************************************************/

/***************************************************************
*
*
*
****************************************************************/
function onLoadInitStyle() {

	/* remove li object which is incluedes "initStyle();" from div right */
	removeMyTag( "right", "li", "initStyle();");

	if( MODE_CONFIRM != getPageMode() ) {
		return;
	}

	changeStyles();
}

/***************************************************************
*
* onLoaded event
*
****************************************************************/
function initStyle() {

/*
alert("initStyle()");

	return;

	error when calls removeTagEx( "right", "h2", "CustomFunctions");
	comment out following codes.
*/

	changeStyles();
}

/***************************************************************
*
*
*
****************************************************************/
function changeStyles() {

	changePhoto();
	changeLeftItemCaptionStyle( "recent-comment", "Last Comments" );
	changeLeftItemCaptionStyle( "recent-entries", "Last Posts" );
	changeLeftItemCaptionStyle( "recent-trackback", "Last Trackbacks" );
	changeLeftItemCaptionStyle( "archive-category", "Categories" );
	changeLeftItemCaptionStyle( "archive-datebased", "Archives" );

	changeRightItemStyle( "profile", "Profile" );
	
	changeWeekStrings();
	changeDayBkg();
	drawArticleTimeStamp();
	changePostedName();

	removeTag( "right" ,"h2", "CustomFunctions" );

	/*
	*	remove li tag to delete the mark
	*/

	removeTagEx( "left", "h2", "Forex");
/*
	removeTagEx( "right", "h2", "Forecast");
	removeTagEx( "right", "h2", "Avatar");
	removeTagEx( "right", "h2", "TAG FRIENDS");
	removeTagEx( "right", "h2", "掲示板");
	removeTagEx( "right", "h2", "Climate Satellite");
	removeTagEx( "right", "h2", "Current Sun");
	removeTagEx( "right", "h2", "Current Moon Phase");
	removeTagEx( "right", "h2", "North Auroral Activity");
	removeTagEx( "right", "h2", "South Auroral Activity");
	removeTagEx( "left", "h2", "Forex");

	changeMyListName( "right", "h2", "BBS", "Tools", "1");
	changeMyListName( "right", "h2", "Books", "Books In My Life", "0");
	changeMyListName( "right", "h2", "掲示板", "BBS", "0");
*/
	/*
	changeMyListName( "right", "h2", "Books", "<table border=2 bordercolor='#FFFFEE' width='185px'  cellpadding='0' cellspacing='0'><tr><td align='center'  bgcolor='#4481B4'><font color='#FFFFFF'>Books In My Life</td></tr></table>", "0");
	changeMyListName( "right", "h2", "TAG FRIENDS", "<table border=2 bordercolor='#FFFFEE' width='185px'  cellpadding='0' cellspacing='0'><tr><td align='center'  bgcolor='#4481B4'><font color='#FFFFFF'>Tag Friends</td></tr></table>", "1");
	*/
}

/***************************************************************
*
* change profile photo
*
****************************************************************/
function changePhoto()
{
	var oObj = document.getElementById("photo");
	
	if( oObj == null ) {
		return;
	}
	
/*	oObj.innerHTML = "<a href="http://feefifofum.cocolog-nifty.com/about.html"><img src='http://feefifofum.cocolog-nifty.com/blog/images/mypic.jpg' width='150' alt='フォト' style='border:solid 1px #4481B4'' /></a>"
*/
/*	oObj.innerHTML = "<h2><span>About Me</span></h2><div class='module-top'></div><div class='module-body'><ul><li><img src='http://feefifofum.cocolog-nifty.com/blog/images/mypic.jpg' width='100' alt='フォト' ' /></li></ul></div>"
*/
/*	oObj.innerHTML = "<h2>About Me</h2></br><img src='http://feefifofum.cocolog-nifty.com/blog/images/mypic.jpg' width='180' alt='フォト' style='border:solid 1px #4481B4; margin-bottom:10px'' />"
*/
	oObj.innerHTML = "<h2>About Me</h2></br><a href=\"http://feefifofum.cocolog-nifty.com/about.html\" title=\"Profile\"><img src='http://feefifofum.cocolog-nifty.com/blog/images/mypic.jpg' width='180' alt='フォト' style='margin-bottom:10px'' /></a>" +
					"<li style='margin-bottom:10px; color:#96927d;'>シリルはギネス・ドラフトと鯖の塩焼き、しじみ汁を最近の主食としています</li>" +
					"<li style='margin-bottom:10px; color:#96927d;'>シリルは運動するとすぐに右ヒザが痛くなります</li>" +
					"<li style='margin-bottom:20px; color:#96927d;'>シリルは左利きです</li>" +
					"<li style='margin-bottom:20px; color:#96927d;'><a href=\"http://feefifofum.cocolog-nifty.com/about.html\" title=\"プロファイル\"><span><fadetext int=100 sr=0 sg=0 sb=0 er=0 eg=255 eb=0 cnt=25>プロファイル</fadetext></span></a></li>";

/*					"<img src=\"http://feefifofum.cocolog-nifty.com/blog/images/profile_icon.gif\"><b><font size=\"2px\"><a href=\"http://feefifofum.cocolog-nifty.com/about.html\" title=\"プロファイル\">プロファイルのページ</a></font></b>";
*/
}
/***************************************************************
*
*
*
****************************************************************/
function changePostedName()
{
	var spath = "";
	var sInsert = "";
	
	spath = usrURL;	// usrURL - defined in envparams.js

	if( MODE_CONFIRM == getPageMode() ) {
		var oObj = document.getElementById("container");
	}
	else {
		var oObj = document.getElementById("center");
	}

	if( oObj == null ) {
		return;
	}
		
	oObj = oObj.getElementsByTagName( "p" );
	
	if( oObj == null ) {
		return;
	}
	
	for( var i = 0; i < oObj.length; i++ ) {
		if( "posted" == oObj[i].className ) {

			sInsert = ("<img src='" + spath + "icons/100k/goods_025.gif' >");
			if( -1 != oObj[i].innerHTML.indexOf("mailto:",0) ) {
				sInsert += ("<img src='" + spath + "icons/system12/mail.gif' >: ");
			}
			else if( -1 != oObj[i].innerHTML.indexOf("TITLE=\"http",0) ) {
				sInsert += ("<img src='" + spath + "icons/system12/home.gif' >: ");
			}
			else if( -1 != oObj[i].innerHTML.indexOf("title=\"http",0) ) {
				sInsert += ("<img src='" + spath + "icons/system12/home.gif' >: ");
			}
			else {
				sInsert += ": ";
			}

			oObj[i].innerHTML = oObj[i].innerHTML.replace( "名前: ", sInsert );
			oObj[i].innerHTML = oObj[i].innerHTML.replace( "投稿 ", sInsert );
		}
	}
}


/********************************************************************/
/*                                                                  */
/* chenge left item caption                                         */
/*                                                                  */
/********************************************************************/
function changeLeftItemCaptionStyle( id_string, newString ) {

	var oElement = document.getElementById( id_string );
	
	if( oElement == null ) {
		return;
	}
	
	p = oElement.firstChild;
	
	if( p == null ) {
		return;
	}
	
	changeString( p, "span" , newString, 1, 0, 0 );

	oArray = oElement.getElementsByTagName("h2");
	
	if( oArray == null ) {
		return;
	}
	
	/*
	for( var i=0; i < oArray.length; i++ ) {
		oArray[i].style.background="url(" + usrURL + "styleimages/gradation-horizon.jpg)  no-repeat top left";
	}
	*/
}

/********************************************************************/
/*                                                                  */
/* chenge right item string                                         */
/*                                                                  */
/********************************************************************/
function changeRightItemStyle( id_string, newString ) {

	var oElement = document.getElementById( id_string );

	if( oElement == null ) {
		return;
	}
	
	var p = oElement.firstChild;
	
	if( p == null ) {
		return;
	}
	
	changeString( p, "a" , newString, 1, 0, 0 );
	
	var aL = oElement.getElementsByTagName("a");
	if( aL == null ) {
		return;
	}
	/*
	aL[0].style.color = "#4481B4";
	*/
}

/********************************************************************/
/*                                                                  */
/* remove my tag                                                    */
/*                                                                  */
/********************************************************************/
function removeMyTag( id_string, tag_string, oldString ) {

	var oId = null;
	var oArray = null;
	var oLi = null;
	var nIdx = 0;
	var oUl = null;

	if( null == (oId = document.getElementById( id_string )) ) {
		return;
	}
	
	if( null == (oArray = oId.getElementsByTagName( tag_string )) ) {
		return;
	}
	
	for( var i = 0; i < oArray.length; i++ ) {
	
		if( 0 <= oArray[i].innerHTML.indexOf( oldString, 0 ) ) {
			var Str_s = oArray[i].parentNode.innerHTML.replace( "<LI>","" );
			var Str_e = Str_s.replace( "</LI>","" );
			oArray[i].parentNode.innerHTML = Str_e;
			break;
		}
	}

}

/********************************************************************/
/*                                                                  */
/* remove                                                           */
/*                                                                  */
/********************************************************************/
function removeTag( id_string, tag_string, oldString ) {

	var oId = null;
	var oArray = null;
	var oLi = null;
	var nIdx = 0;
	var oPa = null;
	
	if( null == (oId = document.getElementById( id_string )) ) {
		return;
	}
	
	if( null == (oArray = oId.getElementsByTagName( tag_string )) ) {
		return;
	}
	for( var i = 0; i < oArray.length; i++ ) {
		if( oldString == oArray[i].innerHTML ) {
		
			/* remove specified string object */
			oArray[i].parentNode.removeChild( oArray[i] );

			break;
		}
	}

}

/********************************************************************/
/*                                                                  */
/* replace                                                           */
/*                                                                  */
/********************************************************************/
function removeTagEx( id_string, tag_string, oldString ) {

	var oId = null;
	var oArray = null;
	var oLi = null;
	var nIdx = 0;
	var oUl = null;

	if( null == (oId = document.getElementById( id_string )) ) {
		return;
	}
	
	if( null == (oArray = oId.getElementsByTagName( tag_string )) ) {
		return;
	}
	
	for( var i = 0; i < oArray.length; i++ ) {
		if( oldString == oArray[i].innerHTML ) {
			var Str_s = oArray[i].parentNode.innerHTML.replace( "LI class", "class" );
			var Str_e = Str_s.replace( "</LI>","" );
			oArray[i].parentNode.innerHTML = Str_e;
			break;
		}
	}

}

/********************************************************************/
/*                                                                  */
/* chenge My List title name                                        */
/*                                                                  */
/********************************************************************/
function changeMyListName( id_string, tag_string, oldString, newString, delFlg ) {

	var oId = null;
	var oArray = null;
	var oLi = null;
	var nIdx = 0;
	
	if( null == (oId = document.getElementById( id_string )) ) {
		return;
	}
	
	if( null == (oArray = oId.getElementsByTagName( tag_string )) ) {
		return;
	}

	if( null == (oLi = oId.getElementsByTagName( "li" )) ) {
		return;
	}

	for( var i = 0; i < oArray.length; i++ ) {

		if( oldString == oArray[i].innerHTML ) {

			if( delFlg == "1" ) {
				/* check there is BR */
				nIdx = oLi[i].innerHTML.toUpperCase().indexOf( "<BR/>",0 );

				if( nIdx >= 0 ) {
					oLi[i].innerHTML = oLi[i].innerHTML.substr( nIdx + 5, 2000 );
				}
				else {
					/* recheck */
					nIdx = oLi[i].innerHTML.toUpperCase().indexOf( "<BR>",0 );
					if( nIdx >= 0 ) {
						oLi[i].innerHTML = oLi[i].innerHTML.substr( nIdx + 4, 2000 );
					}
				}
			}

			oArray[i].innerHTML = newString;
		}
	}
}

/********************************************************************/
/*                                                                  */
/* insert date time string to article caption                       */
/*                                                                  */
/********************************************************************/
function drawArticleTimeStamp() {

	var oACenter = null;
	var oTagArray = null;
	var oDivArray = null;
	var strDay = "";
	var yStr = "";
	var mStr = "";
	var dStr = "";
	var i = 0;
	var divIdx = 0;
	
	if( null == (oAcenter = document.getElementById( "center" )) ) {
		return;
	}
	// entry-body-top
	if( null == (oDivArray = oAcenter.getElementsByTagName( "div" )) )  {
		return;
	}
	// post-footers
	if( null == (oTagArray = oAcenter.getElementsByTagName( "span" )) )  {
		return;
	}
	//	searching 'post-footers' tag which inclueds day string.
	//
	for( i = 0; i < oTagArray.length; i++ ) {
		
		if( "post-footers" == oTagArray[i].className ) {
			strDay = oTagArray[i].innerHTML.slice(0, 10);
			yStr = strDay.slice(0,4);
			mStr = strDay.slice(5,7);
			dStr = strDay.slice(8,10);
			// searching 'entry-top' div class
			// DON'T init divIdx,
			for( ; divIdx < oDivArray.length; divIdx++ ) {
				if( "entry-top" == oDivArray[divIdx].className ) {
					oDivArray[divIdx].innerHTML = 
						"<span style=\"vertical-align:-5px; line-height:22px; margin-left:15px; font-weight:bold;\">" +
						yStr + "年" + mStr + "月" + dStr + "日" + "</span>";
					divIdx++;
					i++;
					break;
				}
			}

		}
	}
}

/********************************************************************/
/*                                                                  */
/* change calender table day's cell background                      */
/*                                                                  */
/********************************************************************/
function changeDayBkg() {

	var strData = "";
	var inStr = "";
	
	oCal = document.getElementById( "calendar" );
	oElement = oCal.getElementsByTagName("td");
	
	if( oElement == null ) {
		return;
	}
	
	for( var i=0; i < oElement.length; i++ ) {

		strData = oElement[i].innerHTML;

		if( -1 != (nIdx = strData.toUpperCase().indexOf("<A", 0)) ) {
			/*oElement[i].style.background= "#B4CDE1";
			oElement[i].style.border = "1px solid #ED8233";
			*/
			oElement[i].style.borderTop = "1px solid #235961";
			oElement[i].style.borderLeft = "1px solid #235961";
			oElement[i].style.borderRight = "1px solid #000000";
			oElement[i].style.borderBottom = "1px solid #000000";
		}
		else {
			/*oElement[i].style.background= "#D9E0E6";*/
		}
	}
}

/********************************************************************/
/*                                                                  */
/* make week labels short, like "Sun"->"S"                          */
/*                                                                  */
/********************************************************************/
function changeWeekStrings() {

	oElement = document.getElementsByTagName("th");

	if( oElement == null ) {
		return;
	}

	for( var i=0; i < oElement.length; i++ ) {
		switch( oElement[i].innerHTML ) {
			case "Sun" :
				oElement[i].innerHTML = "<FONT color='red'>S</FONT>"
				break;
				
			case "Mon" :
				oElement[i].innerHTML = "<FONT color='black'>M</FONT>"
				break;

			case "Tue" :
				oElement[i].innerHTML = "<FONT color='black'>T</FONT>"
				break;

			case "Wed" :
				oElement[i].innerHTML = "<FONT color='black'>W</FONT>"
				break;

			case "Thu" :
				oElement[i].innerHTML = "<FONT color='black'>T</FONT>"
				break;

			case "Fri" :
				oElement[i].innerHTML = "<FONT color='black'>F</FONT>"
				break;

			case "Sat" :
				oElement[i].innerHTML = "<FONT color='blue'>S</FONT>"
				break;

			default :
				break;
		}
	}
}

function changeString(node, tag, string, whichcase, insertIndex, id){

	var classId = id;
    var tagcount = 0;
    var tmpIndex=0;
    
	if(!id || id.length == 0){
		classId = '';
	}

	while(node){
		if(node.firstChild){
			if(node.id == classId){
				changeString(node.firstChild, tag, string, whichcase, insertIndex, id);
			}
		}
		// 入れ替え対象タグ
		if(node.nodeName.toLowerCase() == tag.toLowerCase()){
			changestr(node, string, whichcase, insertIndex);
		}
		node = node.nextSibling;
    }
}


function changestr(node, string, whichcase, insertIndex){

	// replace
	if(whichcase == 1){
		node.innerHTML =string;
	}
	// insert
	else{
    	tmpIndex=insertIndex;

		if(insertIndex == -1 || insertIndex > node.innerHTML.length){
			tmpIndex = node.innerHTML.length;
		}
		var str = node.innerHTML;
       	node.innerHTML =str.substring(0, tmpIndex) + string + str.substring(tmpIndex);
	}
}
