//morinokujira2 two_column_left

function initStyle(){
	if(typeof(doLoaded) != "undefined"){doLoaded();}


	replaceFooter('<img src="http://template.cocolog-nifty.com/000046/two_column_left/component/p-permalink.gif" width="62" height="17" alt="固定リンク" border="0" align="absmiddle" />', 'permalink');
	replaceFooter('<img src="http://template.cocolog-nifty.com/000046/two_column_left/component/p-comment.gif" width="52" height="15" alt="コメント" border="0" align="absmiddle" />', 'comment');
	replaceFooter('<img src="http://template.cocolog-nifty.com/000046/two_column_left/component/p-trackback.gif" width="72" height="17" alt="トラックバック" border="0" align="absmiddle" />', 'trackback');

}


function preinsertHTML(replaceID, replaceTag, tag){
	var oElement = document.getElementById(replaceID);
	if(!oElement){
		return;
	}
	var regpre = new RegExp("<"+replaceTag, "i");
	var replen = replaceTag.length+1;

	var begin;
	var tmpbegin;
	if ((begin = oElement.innerHTML.search(regpre)) != -1) {
		var pre = oElement.innerHTML.substring(0, begin);
		oElement.innerHTML = pre + tag + oElement.innerHTML.substring(begin);
	}
}

function postinsertTagIdHTML(targetId,  targetTag, targetName, createTag, createAttr, createName){
	var classTag = targetTag;

	if(targetId.length == 0){
		return;
	}
	if(targetTag.length == 0){
		classTag = 'div';
	}

	var attr;
	if(createAttr == 1){
		attr = 'id';
	}
	else{
		attr = getclassBrowser();
	}

	var oElement = getByTagName(classTag);
	if(!oElement){
		return;
	}
    var len = oElement.length;
    var targetstr;
    var num;

    for (num=0; num<len; num++) {
		if(oElement[num] != null){
		    var pElement;
	        if (oElement[num].id == targetId) {
	        	cElement = oElement[num].firstChild;
		    	while(cElement) {
    	    	    cNext = cElement.nextSibling;
		        	if(cElement.nodeName.toLowerCase() == targetName.toLowerCase()){
			            var newT = document.createElement(createTag);
    			        newT.setAttribute(attr, createName);
			        	pElement = cElement.parentNode;
			        	if(cNext){
	        	    		pElement.insertBefore(newT, cNext);
		    	    	    cNext = cNext.nextSibling;
	        	    	}
    	    	    }
    	    	    cElement = cNext;
    	    	}
    	    }
    	}
	}
}


function replaceFooter(fString, fCode){
	if(fCode.length == 0){
		return;
	}
	if(fString.length == 0){
		return;
	}

	var oElement = getByTagName('p');
	if(!oElement){
		return;
	}
	var fID='posted';
    var len = oElement.length;
    for (num=0; num<len; num++) {
		if(oElement[num] != null){
		    var element = oElement[num];
		    if (element.className == fID) {
				var tmpinner = "";
	        	var p = element.firstChild;
				while(p){
					if(p.innerHTML){
						if(p.className == fCode ){
							end = p.innerHTML.length;
							for(count=0; count<end; count++){
								numchar = p.innerHTML.substring(count, count+1);
								if(numchar.match(/[0-9()]/i) != null){
									tmpinner += numchar;
								}
		    			}
							p.innerHTML = fString + tmpinner;
						}
					}
	        		p = p.nextSibling;
				}
			}
		}
	}
}

function replaceClassHTML(insertClass, targetTag, insertTag, insertString, targetId, insertNumber){
	var classTag = targetTag;
	var classId = targetId;
	var insertNum = insertNumber;

	if(insertTag.length == 0){
		return;
	}
	if(targetTag.length == 0){
		classTag = 'div';
	}
	if(!targetId || targetId.length == 0){
		classId = '';
	}
	if(insertNumber == ''){
		insertNum = 0;
	}

	var oElement = getByTagName(classTag);
	if(!oElement){
		return;
	}
    var len = oElement.length;
    var tagcount = 0;
    var num;
    for (num=0; num<len; num++) {
		if(oElement[num] != null){
		    var element = oElement[num];
	        if (element.className == insertClass) {
	        	var pLen = element.childNodes.length;
	        	var p;
	        	var pnum;
	        	for(pnum=0; pnum<pLen; pnum++){
	        		if(pnum == 0){
			        	p = element.firstChild;
						changeString(p, insertTag, insertString, 1, 0, targetId, insertNum);
	        		}
	        	}
    	    }
    	}
	}
}

function replaceidHTML(replaceID, replaceTag, replaceString){
	var oElement = document.getElementById(replaceID);
	if(!oElement){
		return;
	}
	if(replaceTag.length == 0){
		return;
	}
	if(replaceString.length == 0){
		return;
	}

    var len = oElement.length;
    var tagcount = 0;
    if (oElement.id == replaceID) {
		p = oElement.firstChild;
		changeString(p, replaceTag, replaceString, 1);
    }
}

function replaceidHTML2(replaceID, replaceTag, replaceString){
	var oElement = document.getElementById(replaceID);
	if(!oElement){
		return;
	}
	if(replaceTag.length == 0){
		return;
	}
	if(replaceString.length == 0){
		return;
	}

    var len = oElement.length;
    var tagcount = 0;
    if (oElement.id == replaceID) {
		p = oElement.firstChild;
		changeString2(p, replaceTag, replaceString, 1);
    }
}

function replaceId(replaceID, insertTag){
	var oElement = document.getElementById(replaceID);
	if(!oElement){
		return;
	}
	oElement.innerHTML = insertTag;
}

// inner function
function getclassBrowser(){
	var ua=navigator.userAgent;
	var classname;
    if(ua.match(/MSIE/) != null){
		classname = 'className';
	}
	else{
		classname = 'class';
	}
	return classname;
}

function changeString2(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){
				if(changeString2(node.firstChild, tag, string, whichcase, insertIndex, id) == -1){
					return -1;
				}
			}
		}
		// 入れ替え対象タグ
		if(node.nodeName.toLowerCase() == tag.toLowerCase()){
			changestr(node, string, whichcase, insertIndex);
			return -1;
		}
		node = node.nextSibling;
    }
}

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);
	}
}


// Common Javascript
var themeBaseURI = 'http://exaple.org/specialstyles';

// put image and flash files to themeBaseURI/THEME/
//  filename should be THEME-CLASSNAME.gif or THEME-ID.swf.
//  like mybow-comment.gif and mybow-recent-updates.swf

function insertFlashMovie (theme, divs) {
    for (i in divs) {
        var swfURL = themeBaseURI + '/' + theme + '/' + theme + '-' + divs[i] + '.swf';
        insertHTML(divs[i], '<embed src="' + swfURL + '" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" TYPE="application/x-shockwave-flash" </embed>');
    }
}

function insertHTML(divID, tag) {
    var e = getByID(divID);
    e.innerHTML = tag + e.innerHTML;
}

function insertHTML2(divID, tag) {
	var e = getByID(divID);
	e.innerHTML = e.innerHTML + tag;
}

function replaceHTML (divID, tag) {
  var e = getByID(divID);
	if(!e){
		return;
	}
  e.innerHTML = tag;
}

function replaceImage (theme, divs) {
    for (i in divs) {
        var imageURL = themeBaseURI + '/' + theme + '/' + theme + '-' + divs[i] + '.gif';        
        var tag = '<img src="' + imageURL + '" alt="' + divs[i] + '" />';
        replaceHTML(divs[i], tag);
    }
}

function replaceButton (theme, classes) {
    for (i in classes) {
        doReplaceLinkToImage(classes[i], theme + '/' + theme + '-' + classes[i] + '.gif', '');
    }
}

function doReplaceLinkToImage (className, imageFilename, title) {
    if (title) {
        title = 'alt="' + title + '" ';
    } else {
        title = '';
    }
    var imageURL = themeBaseURI + '/' + imageFilename;
    var tag = '<img src="' + imageURL + '" ' + title + '/>';
    doReplaceLinkInnerHTML (className, tag);
}

function doReplaceLinkInnerHTML (className, str) {
    var e = getByTagName('a');
    var len = e.length;
    for (i=0; i<len; i++) {
        if (e[i].className == className) {
            e[i].innerHTML = str;
        }
    }
}

function eraseSeparator () {
    var e = getByTagName('span');
    var len = e.length;
    for (i=0; i<len; i++) {
        if (e[i].className == 'separator') {
            e[i].innerHTML = '';
        }
    }
}

function getByID (n) {
    var d = window.document;
    if (d.getElementById)
        return d.getElementById(n);
    else if (d.all)
        return d.all[n];
}

function getByTagName (n) {
    var d = window.document;
    if (d.getElementsByTagName)
        return d.getElementsByTagName(n);
    else if (d.all)
        return d.all[n];
}