websvn |
Subversion Repositories: |
Compare with Previous - Blame - Download
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
star-light - version 1.0.3 (2005/06/24)
Copyright 2005, Dean Edwards
License: http://creativecommons.org/licenses/LGPL/2.1/
-->
<!-- Thanks to James Crompton for more definitive RegExps -->
<public:component xmlns:public="urn:HTMLComponent" lightweight="true">
<public:property name="IGNORE" get="get_IGNORE"/>
<public:property name="LINE_COMMENT" get="get_LINE_COMMENT"/>
<public:property name="BLOCK_COMMENT" get="get_BLOCK_COMMENT"/>
<public:property name="SGML_COMMENT" get="get_SGML_COMMENT"/>
<public:property name="STRING1" get="get_STRING1"/>
<public:property name="STRING2" get="get_STRING2"/>
<public:property name="NUMBER" get="get_NUMBER"/>
<public:property name="parser" get="get_parser"/>
<public:property name="tabStop"/>
<public:property name="urls"/>
<public:property name="email"/>
<public:property name="autoRefresh"/>
<public:method name="refresh"/>
<public:attach event="ondocumentready" handler="parse"/>
<script type="text/javascript">
//<![CDATA[
function ICommon(that){if(that!=null){that.inherit=Common.prototype.inherit;that.specialize=Common.prototype.specialize}return that};ICommon.specialize=function(p,c){if(!p)p={};if(!c)c=p.constructor;if(c=={}.constructor)c=new Function("this.inherit()");c.valueOf=new Function("return this");c.valueOf.prototype=new this.valueOf;c.valueOf.prototype.specialize(p);c.prototype=new c.valueOf;c.valueOf.prototype.constructor=c.prototype.constructor=c;c.ancestor=this;c.specialize=arguments.callee;c.ancestorOf=this.ancestorOf;return c};ICommon.valueOf=new Function("return this");ICommon.valueOf.prototype={constructor:ICommon,inherit:function(){return arguments.callee.caller.ancestor.apply(this,arguments)},specialize:function(that){if(this==this.constructor.prototype&&this.constructor.specialize){return this.constructor.valueOf.prototype.specialize(that)}for(var i in that){switch(i){case"constructor":case"toString":case"valueOf":continue}if(typeof that[i]=="function"&&that[i]!=this[i]){that[i].ancestor=this[i]}this[i]=t
hat[i]}if(that.toString!=this.toString&&that.toString!={}.toString){that.toString.ancestor=this.toString;this.toString=that.toString}return this}};function Common(){};this.Common=ICommon.specialize({constructor:Common,toString:function(){return"[common "+(this.constructor.className||"Object")+"]"},instanceOf:function(klass){return this.constructor==klass||klass.ancestorOf(this.constructor)}});Common.className="Common";Common.ancestor=null;Common.ancestorOf=function(klass){while(klass&&klass.ancestor!=this)klass=klass.ancestor;return Boolean(klass)};Common.valueOf.ancestor=ICommon;if(/MSIE 5.0/.test(navigator.userAgent))new function(){var ap=function(f,o,a){f.apply(o,a)};if(''.replace(/^/,String)){var _15=String.prototype.replace;var _16=function(e,r){var m,n="",s=this;while(s&&(m=e.exec(s))){n+=s.slice(0,m.index)+ap(r,this,m);s=s.slice(m.lastIndex)}return n+s};String.prototype.replace=function(e,r){this.replace=(typeof r=="function")?_16:_15;return this.replace(e,r)}}if(!Function.apply){var APPLY="apply-"+Nu
mber(new Date);ap=function(f,o,a){var r;o[APPLY]=f;switch(a.length){case 0:r=o[APPLY]();break;case 1:r=o[APPLY](a[0]);break;case 2:r=o[APPLY](a[0],a[1]);break;case 3:r=o[APPLY](a[0],a[1],a[2]);break;case 4:r=o[APPLY](a[0],a[1],a[2],a[3]);break;default:var aa=[],i=a.length-1;do aa[i]="a["+i+"]";while(i--);eval("r=o[APPLY]("+aa+")")}delete o[APPLY];return r};if(typeof ICommon=="function")ICommon.valueOf.prototype.inherit=function(){return ap(arguments.callee.caller.ancestor,this,arguments)}}if(![].push)Array.prototype.push=function(){for(var i=0;i<arguments.length;i++){this[this.length]=arguments[i]}return this.length};if(![].pop)Array.prototype.pop=function(){var i=this[this.length-1];this.length--;return i}};function ParseMaster(){var E=0,R=1,L=2;var G=/\(/g,S=/\$\d/,I=/^\$\d+$/,T=/(['"])\1\+(.*)\+\1\1$/,ES=/\\./g,Q=/'/,DE=/\001[^\001]*\001/g;function D(m,o){return"\001"+m[o]+"\001"};this.add=function(e,r){if(!r)r=D;var l=(_5(String(e)).match(G)||"").length+1;if(typeof r=="string"&&S.test(r)){if(I.test(r)){r
=parseInt(r.slice(1))-1}else{var i=l;var q=Q.test(_5(r))?'"':"'";while(i)r=r.split("$"+i--).join(q+"+a[o+"+i+"]+"+q);r=new Function("a,o","return"+q+r.replace(T,"$1")+q)}}_14(e||"/^$/",r,l)};this.exec=function(s){return _10(_11(s,this.escapeChar).replace(new RegExp(_0,this.ignoreCase?"gi":"g"),_12),this.escapeChar).replace(DE,"")};this.reset=function(){_0.length=0};var _0=[];var _13=function(){return"("+String(this[E]).slice(1,-1)+")"};_0.toString=function(){return this.join("|")};function _14(){arguments.toString=_13;_0[_0.length]=arguments}function _12(){if(!arguments[0])return"";var i=1,j=0,p;while(p=_0[j++]){if(arguments[i]){var r=p[R];switch(typeof r){case"function":return r(arguments,i);case"number":return arguments[r+i];default:return r}}else i+=p[L]}};var _1=[];function _11(s,e){return e?s.replace(new RegExp("\\"+e+"(.)","g"),function(m,c){_1[_1.length]=c;return e}):s};function _10(s,e){var i=0;return e?s.replace(new RegExp("\\"+e,"g"),function(){return e+(_1[i++]||"")}):s};function _5(s){return s.re
place(ES,"")}};ParseMaster.prototype={constructor:ParseMaster,ignoreCase:false,escapeChar:""};function get_IGNORE(){return"$1"};function get_LINE_COMMENT(){return/\/\/[^\n]*\n/};function get_BLOCK_COMMENT(){return/\/\*[^*]*\*+([^\/][^*]*\*+)*\//};function get_SGML_COMMENT(){return/<!\s*(--([^-]|[\r\n]|-[^-])*--\s*)>/};function get_STRING1(){return/'[^']*'/};function get_STRING2(){return/"[^"]*"/};function get_NUMBER(){return/\b[+-]?(\d*\.?\d+|\d+\.?\d*)([eE][+-]?\d+)?\b/};function get_parser(){return _4};function refresh(){parse(true)};tabStop=-1;urls=false;email=false;userRefresh=false;function parse(refresh){try{if(refresh||!userRefresh){var p=parser.exec();if(p)innerHTML=p}}catch(i){}};var B="<span>$1</span>";var E=1;var T=3;var _4=ICommon(new ParseMaster);_4.specialize({add:function(e,s,r){if(typeof e=="string")e=new RegExp("\\b("+e+")\\b");if(s==IGNORE)s=r="";else if(s)r=_9(r||B,s);this.inherit(new RegExp(_2(String(e).slice(1,-1))),r||"$1")},exec:function(){var t=_2(_3(element));t=this.inherit(t);t=_7(t
);return _8(_6(t))}});function _9(r,s){return r.replace(/>/," style='"+s+"'>")};function _3(n){var t="";var c=n.childNodes;for(var i=0;(n=c[i]);i++){switch(n.nodeType){case E:t+=(n.tagName=="BR")?"\r":_3(n);break;case T:t+=n.nodeValue;break}}t=t.replace(/\r/g,"\n");if(!/\n$/.test(t))t+="\n";return t};function _8(t){var l=/(\n[ ]*) /g;while(l.test(t)){t=t.replace(l,"$1 ")}var s="";if(tabStop>0){var c=tabStop;while(c--)s+=" ";t=t.replace(/\t/g,s)}if(/MSIE/.test(navigator.appVersion)){t=t.replace(/\n(<\/\w+>)?/g,"$1<br>").replace(/<br><br>/g,"<p><br></p>")}return t};function _7(t){if(urls)t=t.replace(/(http:\/\/+[\w\/\-%&#=.,?+$]+)/g,"<a href='$1'>$1</a>");if(email)t=t.replace(/([\w.-]+@[\w.-]+\.\w+)/g,"<a href='mailto:$1'>$1</a>");return t};function _6(t){return t.split("\x02").join("<").split("\x03").join("&")};function _2(t){return t.split("<").join("\x02").split("&").join("\x03")};
//]]>
</script>
</public:component>