
function poem_setDefaultVar(){poemDefaultFont="simplified arabic,arial,time new roman";poemType="0",poemAlign="center",poemLine="0";poemUse="0";poemFontName="",poemFontSize="4",poemFontColor="",poemFontBold="",poemFontItalic="";poemBackColor="",poemBackImage="none";poemSideImage="none";poemBreakImage="none";poemBorderStyle="none",poemBorderWidth="4",poemBorderColor="gray";poemBorderShadow="";poemWidth="0";poemShadowColor="";poemShadowGlowColor="";poemGlowColor="";poemStretch="0";poemSerialNum="0",poemSerialNumColor="";}
var poemSpaceWidth,poemExtendWidth;var poemToolFix,poemPrevHTML;var poemLetters1="ÇÃÅÂÄÁÏÐÑÒæÉì"
var poemLetters2="ÇÃÅÂÄÆÈÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÝÞßáãäåæíÉì";var poemLetters3="óðõñöòúø";function poemVal(n){n=Math.round(n);if(isNaN(n))n=0;return n;}
function create_poemTestWidth_table(){if(!document.getElementById("poemtestWidth")){var HTML='<table border="0" width="1pt" style="visibility:hidden;position:absolute">';HTML+="<tr><td id='poemTestWidth' width=0 nowrap></td></tr>";HTML+="</table>";document.body.insertAdjacentHTML("afterBegin",HTML);}}
function poem_getValue(t,p){var r=new RegExp("([ \"]|^)"+t+"[ ]*=[ ]*\"[^\"]*\"","i");var m=p.match(r);if(!m){r=new RegExp("([ \"]|^)"+t+"[ ]*=[ ]*[^\" ]*([ ]|$)","i");m=p.match(r);if(!m)
return"";}
m=m[0];m=m.replace(/\"/gi,"");var i=m.search("=");return m.substring(i+1);}
function poem_getDefault(p,d){var r=((p)?p:d);return poem_trim(r);}
function poem_setArg(arg){var par,poemFontSize2;par=poem_getValue("font",arg)+",,,,";par=par.split(",");poemFontName=poem_getDefault(par[0],poemFontName);poemFontName=poemFontName.replace(/\-/g,",");poemFontSize2=poemVal(poem_getDefault(par[1],poemFontSize));if(poemFontSize2<1||poemFontSize2>7)
poemFontSize2=poemFontSize;poemFontSize=poemFontSize2;poemFontColor=poem_getDefault(par[2],poemFontColor);poemFontBold=poem_getDefault(par[3],poemFontBold);poemFontItalic=poem_getDefault(par[4],poemFontItalic);par=poem_getValue("border",arg)+",,";par=par.split(",");poemBorderStyle=poem_getDefault(par[0],poemBorderStyle);poemBorderWidth=poemVal(poem_getDefault(par[1],poemBorderWidth));poemBorderColor=poem_getDefault(par[2],poemBorderColor);poemBorderShadow=poem_getDefault(par[3],poemBorderShadow);par=poem_getValue("num",arg)+",";par=par.split(",");poemSerialNum=poemVal(poem_getDefault(par[0],poemSerialNum));poemSerialNumColor=poem_getDefault(par[1],poemSerialNumColor);par=poem_getValue("type",arg);poemType=poemVal(poem_getDefault(par,poemType));par=poem_getValue("align",arg);poemAlign=poem_getDefault(par,poemAlign).toLowerCase();par=poem_getValue("line",arg);poemLine=poemVal(poem_getDefault(par,poemLine));if(poemLine==0)
poemLine="padding-bottom:5pt";else
poemLine="padding-bottom:15pt";par=poem_getValue("break",arg);poemBreakImage=poem_getDefault(par,poemBreakImage);if(poemBreakImage=="none"||poemBreakImage=="")
poemBreakImage="-";else
poemBreakImage='<img border="0" src="'+poemBreakImage+'">';par=poem_getValue("use",arg);poemUse=poemVal(poem_getDefault(par,poemUse).toLowerCase());par=poem_getValue("shcolor",arg);poemShadowColor=poem_getDefault(par,poemShadowColor);par=poem_getValue("shgcolor",arg);poemShadowGlowColor=poem_getDefault(par,poemShadowGlowColor);par=poem_getValue("gwcolor",arg);poemGlowColor=poem_getDefault(par,poemGlowColor);par=poem_getValue("bkcolor",arg);poemBackColor=poem_getDefault(par,poemBackColor);par=poem_getValue("bkimage",arg);poemBackImage=poem_getDefault(par,poemBackImage);par=poem_getValue("sdimage",arg);poemSideImage=poem_getDefault(par,poemSideImage);par=poem_getValue("stretch",arg);poemStretch=poemVal(poem_getDefault(par,poemStretch));poemStretch=Math.round(poemStretch*0.75);par=poem_getValue("pwidth",arg);poemWidth=poemVal(poem_getDefault(par,poemWidth));poemWidth=Math.round(poemWidth*0.75);var facesize=new Array("xx-small","x-small","small","medium","large","x-large","xx-large");poemFontSize=facesize[poemFontSize-1];poemFontName+=","+poemDefaultFont;poemTestWidth.style.fontFamily=poemFontName;poemTestWidth.style.fontSize=poemFontSize;poemTestWidth.style.fontWeight=poemFontBold;poemTestWidth.style.fontStyle=poemFontItalic;}
function poem_trim(t){t=t.replace(/^[ ]+/,"");t=t.replace(/[ ]+$/,"");return t;}
function poem_textWidth(t){t=t.replace(/ /g," ");t=t.replace(/\|lt\|/g,"<");t=t.replace(/\|eq\|/g,"=");t=t.replace(/\|sp\|/g," ");t=t.replace(/\^/g,"");poemTestWidth.innerHTML=t;return(poemTestWidth.clientWidth-2)*0.75;}
function poem_strReplace(t,s1,s2,c){if(c<=0)
return;t=t.split(s1);var s="";for(var i=t.length-1;i>0;i--)
if(c-->0)
s=s2+t[i]+s;else
s=s1+t[i]+s;s=t[0]+s;return s;}
function poem_count(str,ch){var c=0;for(var i=0;i<str.length;i++)
c+=(str.charAt(i)==ch);return c;}
function poem_space(n){if(n==1)
return" ";return" "+poem_space(n-1);}
function poem_createExtend(t){var alef="ÇÃÅÂ";var s="";var befor="",ch="";t=t.replace(/Çááå/g,"alh");t=t.replace(/ááå/g,"lah");for(i=0;i<t.length;i++){ch=t.charAt(i);if(poemLetters2.indexOf(ch.charAt(0))!=-1||ch.charAt(0)=="Á"){if(befor!="")
if(poemLetters1.indexOf(befor.charAt(0))==-1&&poemLetters2.indexOf(ch.charAt(0))!=-1&&(befor.charAt(0)!="á"||alef.indexOf(ch.charAt(0))==-1))
s+="^";befor=ch;s+=ch;}
else{s+=ch;if(poemLetters3.indexOf(ch.charAt(0))==-1)
befor="";}}
s=s.replace(/alh/g,"Çááå");s=s.replace(/lah/g,"ááå");return s;}
function poem_extend(n){if(n<=0)
return"";if(n==1)
return"Ü";return"Ü"+poem_extend(n-1);}
function poem_justifyBYextend(t,w){var ex=0,i,d,n,p,m;ex=poem_count(t,"^");if(ex==0)return t;d=Math.floor((w-poem_textWidth(t.replace(/\^/g,"")))/poemExtendWidth);t=t.split(" ");n=0;for(i=0;i<t.length;i++)
n+=(t[i].indexOf("^")!=-1);p=Math.floor(d/n);m=d%n;for(i=t.length-1;i>=0;i--){ex=poem_count(t[i],"^");if(ex==0)
continue;d=p+(m-->0);n=Math.floor(d/ex);if(n>0)
t[i]=t[i].replace(/\^/g,"^"+poem_extend(n));if(d%ex>0)
t[i]=poem_strReplace(t[i],"^","Ü",d%ex);}
t=t.join(" ");t=t.replace(/\^/g,"");return t;}
function poem_justifyBYspace(t,w,dir){var sp=0,i,d,tw,n;sp=poem_count(t," ");if(sp!=0){d=Math.floor((w-poem_textWidth(t))/poemSpaceWidth);n=Math.floor(d/sp);if(n>0)
t=t.replace(/ /g,poem_space(n+1));if(d%sp>0)
t=poem_strReplace(t,poem_space(n+1),poem_space(n+2),d%sp);}
tw=w-poem_textWidth(t);if(tw>0){i=t.lastIndexOf(" ");if(i==-1)
if(dir==0)
return t;else
i=((dir==2)?-1:t.length-1);}else
tw=0;t=t.substr(0,i+1)+poemToolFix.replace(/%w%/,tw+"pt ")+t.substr(i+1);return t;}
function poem_justify(t,w,dir){if(poemUse==0)t=poem_justifyBYextend(t,w);return poem_justifyBYspace(t,w,dir);}
function showPoemLine(preview,html){if(preview)
poemPrevHTML+=html;else
document.write(html);}
function doPoem(preview){var found=0,pre,poem;poem_setDefaultVar();if(preview){pre=poemOBJECT;poemPrevHTML="";poem=pre.value;}
else{var d=document.getElementsByTagName("div");pre=d[d.length-1];poem=pre.innerHTML;}
if(!pre.tag)
pre.tag="";if(!preview)
pre.innerHTML="";var arg=pre.tag.replace(/\\\"/g,"'");create_poemTestWidth_table();poem_setArg(arg);poemToolFix="<span style='font-size:1pt;width:%w%;'></span>";poemToolFix=poemToolFix.replace(/ /g,"^");poem=poem.replace(/[\^\f\n\t\v]/g,"");poem=poem.replace(/<br>/gi,"\r");poem=poem.replace(/[ ]+/g," ");poem=poem.replace(/^[ ]|[ ]$/g,"");poem=poem.replace(/[ ]=|=[ ]/g,"=");poem=poem.replace(/[ ]\r|\r[ ]/g,"\r");poem=poem.replace(/^[\r]+|[\r]+$/gi,"");poem=poem.replace(/=Ü/g,"=ext1");poem=poem.replace(/Ü=/g,"ext2=");poem=poem.replace(/Ü/g,"");poem=poem.replace(/ext1/g,"Ü");poem=poem.replace(/ext2/g,"Ü");poem=poem.replace(/\|eq\|/g,"");poem=poem.replace(/\|sp\|/g,"");poem=poem.replace(/\|lt\|/g,"");poem=poem.replace(/\[c[ ]+#{0,1}([a-zA-Z0-9]+)\]([^=]*)\[\/c\]/gi,'<font color="$1">$2</font>');poem=poem.replace(/\[s[ ]+([1-7])\]([^=]*)\[\/s\]/gi,'<font size="$1">$2</font>');poem=poem.replace(/\[b\]([^=]*)\[\/b\]/gi,'<b>$1</b>');poem=poem.replace(/\[i\]([^=]*)\[\/i\]/gi,'<i>$1</i>');poem=poem.replace(/\[u\]([^=]*)\[\/u\]/gi,'<u>$1</u>');poem=poem.replace(/\[sp[ ]+#{0,1}([a-zA-Z0-9]+)\]([^=]*)\[\/sp\]/gi,'<sup style="font-size:75%;color:$1">$2</sup>');poem=poem.replace(/\[sb[ ]+#{0,1}([a-zA-Z0-9]+)\]([^=]*)\[\/sb\]/gi,'<sub style="font-size:75%;color:$1">$2</sub>');poem=poem.replace(/\[sp\]([^=]*)\[\/sp\]/gi,'<sup style="font-size:75%">$1</sup>');poem=poem.replace(/\[sb\]([^=]*)\[\/sb\]/gi,'<sub style="font-size:75%">$1</sub>');var ti,tj,tag;var re=/<[^<>\r]*>/;while(1){ti=poem.search(re);if(ti==-1)break;if(ti>-1){tj=poem.indexOf(">",ti);tag=poem.substring(ti,tj+1);tag=tag.replace(/</g,"|lt|");tag=tag.replace(/=/g,"|eq|");tag=tag.replace(/ /g,"|sp|");poem=poem.replace(re,tag);}}
poem=poem.replace(/\|lt\|br\|sp\|\/>/gi,"");poem=poem.replace(/\|lt\|br>/gi,"");poemExtendWidth=poem_textWidth("Ô"+"ÜÜ"+"Ô");poemExtendWidth-=poem_textWidth("Ô"+"Ü"+"Ô");poemSpaceWidth=poem_textWidth("Ô"+"  "+"Ô");poemSpaceWidth-=poem_textWidth("Ô"+" "+"Ô");var tmp,MTW,MW=0;tmp="\r"+poem+"\r";tmp=tmp.replace(/\r[^=]+\r/gi,"\r");tmp=tmp.replace(/=/g,"<br>");tmp=tmp.replace(/\r/g,"<br>");var MTW=poem_textWidth(tmp);tmp="";if(poemType==0)
MW=Math.floor((poemStretch*3)/7);else if(poemType==1)
MW=Math.floor((poemStretch-10)/2);else if(poemType==2)
MW=Math.floor(poemStretch/1.5);else if(poemType==3)
MW=poemStretch;if(MW>MTW)MTW=MW;if(poemUse==0)
poem=poem_createExtend(poem);var poemBodyStyle="",fonts="",filters="";fonts+=";font-family:"+poemFontName;fonts+=";font-size:"+poemFontSize;fonts+=";color:"+poemFontColor;fonts+=";font-weight:"+poemFontBold;fonts+=";font-style:"+poemFontItalic;poemBodyStyle+=";background-color:"+poemBackColor;if(poemBackImage!="none"&&poemBackImage!="")
poemBodyStyle+=";background-position:top right;";poemBodyStyle+=";border:"+poemBorderWidth+" "+poemBorderStyle+" "+poemBorderColor;poemBodyStyle+=";width:"+poemWidth+"pt";if(poemShadowColor!="")
filters+=" dropshadow(color="+poemShadowColor+")";if(poemShadowGlowColor!="")
filters+=" shadow(direction=135,color="+poemShadowGlowColor+")";if(poemGlowColor!="")
filters+=" glow(color="+poemGlowColor+")";showPoemLine(preview,'<div dir="rtl" align="'+poemAlign+'">');if(poemBorderShadow!=""){showPoemLine(preview,'<table border="0" width="1px" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111"><tr>');showPoemLine(preview,'<td height="100%" style="padding-top:10px"><div style="height:100%;width:5px;background-color:'+poemBorderShadow+';font-size:1pt"></div></td>');showPoemLine(preview,'<td width="1px" valign="top">');}
showPoemLine(preview,'<table background="'+poemBackImage+'" border="0" cellpadding="0" cellspacing="0" style="'+poemBodyStyle+'"><tr>');if(poemSideImage!="none"&&poemSideImage!=""){showPoemLine(preview,'<td width="1pt" background="'+poemSideImage+'" style="background-repeat:repeat-y">');showPoemLine(preview,'<img border="0" src="'+poemSideImage+'" style="visibility:hidden"></td>');}
showPoemLine(preview,'<td align="center" style="padding:15pt" valign="top">');showPoemLine(preview,'<table border="0" cellpadding="0" cellspacing="0" width="1px" style="'+fonts+'; filter:'+filters+'">');poem=poem+"\r";var L,R,i,j=0,cr=0,sn=0,sep;var poemSide,poemSideNum,wnum;if(poemSerialNum>0)
sn=poemSerialNum-1;while(1){poemSideNum="";poemSide="";sep=false;cr=poem.indexOf("\r",cr);if(cr==-1)break;if(poem.substring(j,cr)!=""){i=poem.indexOf("=",j);if(i==-1||i>cr)i=cr;L=poem.substring(j,i);if(L=="-"){sep=true;L=poemBreakImage;}else if(L!="\r"&&L!=""){if(i!=cr)
L=poem_justify(L,MTW,1);else{L=poem_justify(L,MTW,0);}
L=L.replace(/ /g," ");L=L.replace(/\^/g," ");}
R=poem.substring(i+1,cr);if(R=="-"){sep=true;R=poemBreakImage;}else if(R!="\r"&&R!=""){R=poem_justify(R,MTW,2);R=R.replace(/ /g," ");R=R.replace(/\^/g," ");}
if(poemType==0){if(i!=cr){if(L=="")L=poemToolFix.replace(/%w%/,MTW+"pt").replace(/\^/," ");if(R=="")R=poemToolFix.replace(/%w%/,MTW+"pt").replace(/\^/," ");poemSide=L+poemToolFix.replace(/%w%/,Math.floor(MTW/3)+"pt").replace(/\^/," ")+R;}else
poemSide=L;poemSide='<div align="center" style="'+poemLine+'">'+poemSide+'</div>';poemSideNum=((sep)?" ":++sn);}
else if(poemType==1){if(i==cr){poemSide='<div align="center" style="'+poemLine+'">'+L+'</div>';}else{poemSide='<div align="right" style="width:'+(2*MTW+10)+'pt;'+poemLine+'">'+L+'</div>';poemSide+='<div align="left" style="width:'+(2*MTW+10)+'pt;'+poemLine+'">'+R+'</div>';}
poemSideNum=((sep)?" ":++sn);}
else if(poemType==2){if(i==cr){poemSide='<div align="center" style="'+poemLine+'">'+L+'</div>';}else{poemSide='<div align="right" style="width:'+Math.floor(MTW*1.5)+'pt;'+poemLine+'">'+L+'</div>';poemSide+='<div align="left" style="width:'+Math.floor(MTW*1.5)+'pt;'+poemLine+'">'+R+'</div>';}
poemSideNum=((sep)?" ":++sn);}
else if(poemType==3){poemSideNum=((sep)?" ":++sn);if(L=="")L=" ";if(R=="")R=" ";poemSide='<div style="'+poemLine+'">'+L+'</div>';poemSide+='<div style="'+poemLine+'">'+R+'</div>';}}else
poemSide+=' ';poemSide=poemSide.replace(/\|eq\|/g,"=");poemSide=poemSide.replace(/\|sp\|/g," ");poemSide=poemSide.replace(/\|lt\|/g,"<");if(poemSerialNum>0&&poemSideNum!="")
showPoemLine(preview,'<tr><td align="left" valign="top" style="color:'+poemSerialNumColor+';padding-right:8pt;padding-left:4pt;'+poemLine+'" nowrap>'+poemSideNum+poemToolFix.replace(/%w%/,Math.floor(MTW/10)+"pt").replace(/\^/," ")+'</td>');showPoemLine(preview,'<td align="center" valign="middle" nowrap style="padding-right:8pt;padding-left:4pt">'+poemSide+'</td></tr>');cr+=1;j=cr;}
showPoemLine(preview,"</table></td></tr></table>");if(poemBorderShadow!=""){showPoemLine(preview,'</td></tr><tr>');showPoemLine(preview,'<td rowspan="3" colspan="2" width="100%" style="padding-left:10px"><div style="width:100%;height:5px;background-color:'+poemBorderShadow+';font-size:1pt"></div></td></td></table>');}
showPoemLine(preview,"</div>");if(preview)
poemPreview.innerHTML=poemPrevHTML;poemPrevHTML="";poem_textWidth("");}