﻿//********************************************************************************
//** 插件功能:		文章内容关键字替换
//** 插件应用:		为Z-Blog开发(本脚本适用于任何系统)
//** 插件制作:		软件兔 (http://blog.wyshen.com/ SoftBunny+Soft@Gmail.com)
//** 备　　注:	
//**
//** 变更记录:	
//** 2007-05-12	基线版本
//********************************************************************************
var cnames,keys,urls,titles,windows;
var objAll,eCount,j,k;
//关键字定义 By 软件兔
cnames = "post-body,entry".split(',');
keys = new Array('zblog','藍色深海','小朵朵','西岸','douban','小強','表妹','magic','水滴','wingwing','sliver','什麼','Yorick','');
urls = new Array('http://www.rainbowsoft.org','http://slzhao.blog.sohu.com/','http://hi.baidu.com/ffvvjj9','http://scottie.cn/','http://www.douban.com','http://hi.baidu.com/ideaq','http://blog.sina.com.cn/u/1224043455','http://blog.roodo.com/magichagal','http://blog.sina.com.cn/u/1180792030','http://user.qzone.qq.com/79797278','http://sliver0205.blogcn.com','http://farm3.static.flickr.com/2132/2479708864_c8232f6f4c.jpg','http://www.pihai.net/','');
titles = new Array('很棒的asp Blog程序','如影随形的感恩的心','天下的朵朵都是小朵朵','道者？西岸是也..','豆瓣 記錄你的音樂圖書和電影','好像进入了青春期的 小強','我那可愛的表妹啊','magic 是個善良的姑娘。','水滴 還在為人民服務','叫她 積分.吧','激情青年 sliver 。小榜样。','我的名字叫什麼..','想知道什么較行云流水不？','');
windows = new Array('_blank','_blank','_blank','_blank','_blank','_blank','_blank','_blank','_blank','_blank','_blank','_blank','_blank','');
//关键字定义 By 软件兔

if (cnames.legnth != 1 || cnames[0] != "")
{
	objAll=document.getElementsByTagName("*");
	eCount=objAll.length;
	for (j=0; j<eCount; j++)
		if (objAll[j].innerHTML != "")
			if (objAll[j].className != null)
				for (k=0; k<cnames.length; k++)
					if (objAll[j].className.toLowerCase() == cnames[k].toLowerCase() && cnames[k] != "")
						objAll[j].innerHTML = RplKey(objAll[j].innerHTML);
}

function RplKey(str)
{
	var reg,patt,m;
	var i=0;
	var p=0;
	var s="";
	patt="<a [^>]*>[^<]*</a>|<[^>]*>|"+keys.join("|");
	patt=patt.substr(0,patt.length-1);
	
	reg = new RegExp(patt,"igm");  // 创建正则表达式对象。
	while ((m = reg.exec(str)) != null)
		if(m.toString().substr(0,1)!="<")
			for(i=0;i<keys.length-1;i++)
				if(m.toString().toLowerCase() == keys[i].toLowerCase())
				{
					s+=str.substring(p,m.index)+"<a href=\"" + urls[i] + "\" Class=\"keylink\" title=\"" + titles[i] + "\"";
					if (windows[i]!="")
						s+="Target=\"" + windows[i] + "\"";
					s+=">" + m.toString() + "</a>";
					//p=m.lastIndex;
					p=m.index+keys[i].length;
					continue;
				}
				s+=str.substring(p,str.length);
	return s;
}