(new Image()).src='../images/icon_delete.gif';(new Image()).src='../images/icon_add.gif';(new Image()).src='../images/icon_delete_r.gif';(new Image()).src='../images/icon_add_r.gif';if(!window.Node){window.Node={};Node.ELEMENT_NODE=1;Node.ATTRIBUTE_NODE=2;Node.TEXT_NODE=3;Node.CDATA_SECTION_NODE=4;Node.ENTITY_REFERENCE_NODE=5;Node.ENTITY_NODE=6;Node.PROCESSING_INSTRUCTION_NODE=7;Node.COMMENT_NODE=8;Node.DOCUMENT_NODE=9;Node.DOCUMENT_TYPE_NODE=10;Node.DOCUMENT_FRAGMENT_NODE=11;Node.NOTATION_NODE=12};var ColumnCopy=function(container,initfn,cc,dd,level){var pointer=this;this.container=container;this.initfn=initfn;this.tbody=document.getElementById(this.container);this.cc=cc;if(typeof this.cc!='undefined'&&this.cc.length>=2){this.maxlength=this.cc.length}else if(typeof this.cc=='number'&&this.cc>=2){this.maxlength=this.cc}else{this.maxlength=2}this.level=level;if(!this.level){this.level=[]}this.divContainer=document.getElementById('ccdiv_'+this.container);if(this.level.length==0){for(var i=0;i<this.divContainer.childNodes.length;i++){if(ColumnCopy.isDataRow(this.divContainer.childNodes[i])){this.templateDiv=this.divContainer.childNodes[i];break}}if(!this.templateDiv){this.templateDiv=document.getElementById("template")}this.templateDiv.style.display='none'}else{var templateid=this.container.replace(/\[\d+\]/g,'[?]');this.templateDiv=document.getElementById('ccdiv_'+templateid);this.templateDiv.style.display='none'}intoBody(this.templateDiv);this.addIcon=new Image();this.addIcon.src=ColumnCopy.am;this.addIcon.style.cssText='cursor:pointer';this.addIcon.textAlign='absmiddle';this.addIcon.setAttribute('alt','新增');Event.observe(this.addIcon,'mouseover',function(){pointer.addIcon.src=ColumnCopy.am_active},false);Event.observe(this.addIcon,'mouseout',function(){pointer.addIcon.src=ColumnCopy.am},false);this.addFunction=function(event,initValues){var length=pointer.tbody.childNodes.length;var ev={tbody:pointer.tbody,len:length,pointer:pointer,div:pointer.tbody.childNodes[length-1].getElementsByTagName('DIV')[(pointer.level.length>0)?1:0]};if(pointer.onbeforeadd){if(!pointer.onbeforeadd(ev)){return false}}this.src=ColumnCopy.am;if(!pointer.columnCreate()){return}if(initValues){initValues(ev)}if(pointer.onafteradd){pointer.onafteradd(ev)}};Event.observe(this.addIcon,'click',this.addFunction,false);this.prepareDelIcon=new Image();this.prepareDelIcon.src=ColumnCopy.dm;this.delIcon=new Image();this.delIcon.style.cssText='cursor:pointer';this.delIcon.setAttribute('alt','刪除');this.delIconOver=function(){this.src=ColumnCopy.dm_active};this.delIconOut=function(){this.src=ColumnCopy.dm};var spans=this.templateDiv.getElementsByTagName('SPAN');var len=spans.length;this.controlIndex=-1;for(var i=0;i<len;i++){if(spans[i].className=='controlBoxCss'||spans[i].className=='controlBoxCss'){this.controlIndex=i;break}}this.dd=void 0;if(dd&&typeof DragDrop!='undefined'){this.dd=new DragDrop()}};ColumnCopy.dm='../images/icon_delete.gif';ColumnCopy.am='../images/icon_add.gif';ColumnCopy.dm_active='../images/icon_delete_r.gif';ColumnCopy.am_active='../images/icon_add_r.gif';ColumnCopy.isDataRow=function(obj){return __isNode(obj)&&obj.nodeType==Node.ELEMENT_NODE&&(obj.tagName=='DIV'||obj.tagName=='SPAN')};ColumnCopy.prototype.init=function(dotype){if(this.onbeforeinit){var ev={tbody:this.tbody};if(this.onbeforeinit(ev)===false){return false}};if(this.childs){for(var i=0;i<this.childs.length;i++){intoBody(document.getElementById('ccdiv_'+this.childs[i]))}};if(this.dd){this.seqsty="style='cursor:move;'"};var template;if(dotype=='add'){var pointer=this;if(this.dd){this.dd.plugin(this.tbody);this.dd.stopListener=function(ev){if(pointer.onafterdrap){pointer.onafterdrap(ev)}pointer.reAddIcon();pointer.trSeq();pointer.reId();pointer.reDelIconId();pointer.dealaddIcon()};if(this.onbeforedrap){this.dd.startListener=function(ev){pointer.onbeforedrap(ev)}}};this.columnCreate()}else if(dotype=='create'){del(this.divContainer);while(this.divContainer.childNodes.length>0){if(ColumnCopy.isDataRow(this.divContainer.childNodes[0])){var mrow=document.createElement("tr");this.tbody.appendChild(mrow);var idx=this.tbody.childNodes.length-1;if(typeof this.cc!='number'){this.createTD(mrow,'<span class="controlBoxCss" '+this.seqsty+'>'+this.cc[idx]+'</span>',15)}template=this.divContainer.childNodes[0];var control;var spans=this.divContainer.getElementsByTagName('SPAN');if(this.controlIndex>=0){control=spans[this.controlIndex]}else{control=element('SPAN');control.addClassName('controlBoxCss');template.appendChild(control)}var tempDelIcon=this.createDelIcon(idx);this.createTD(mrow,template);if(this.initfn){this.initfn(template,idx,dotype,{pointer:this})}control.appendChild(tempDelIcon);mrow.delIcon=control.childNodes[0];this.dealdelIcon(this.maxlength);if(this.tbody.childNodes.length<this.maxlength){this.addIcon.src=ColumnCopy.am;control.appendChild(this.addIcon);mrow.addIcon=control.childNodes[1]}else{try{this.addIcon.parentNode.removeChild(this.addIcon)}catch(e){}}mrow.controlBox=control}else{this.divContainer.removeChild(this.divContainer.childNodes[0])}};var pointer=this;if(this.dd){this.dd.plugin(this.tbody);this.dd.stopListener=function(ev){if(pointer.onafterdrap){pointer.onafterdrap(ev)}pointer.reAddIcon();pointer.trSeq();pointer.reId();pointer.reDelIconId();pointer.dealaddIcon()};if(this.onbeforedrap){this.dd.startListener=function(ev){pointer.onbeforedrap(ev)}}}if(this.tbody.childNodes.length==0){this.columnCreate()}}if(this.onafterinit){var ev={tbody:this.tbody,length:this.tbody.childNodes.length};this.onafterinit(ev)}};ColumnCopy.prototype.dealaddIcon=function(control,mrow){if(this.tbody.childNodes.length>=this.maxlength){this.addIcon.parentNode.removeChild(this.addIcon)}};ColumnCopy.prototype.columnCreate=function(){if(this.maxlength-1<this.tbody.childNodes.length){alert(e104.props.CCOPY_LIMIT1+this.maxlength+e104.props.CCOPY_LIMIT2);return false};var mrow=document.createElement("tr");this.tbody.appendChild(mrow);var idx=this.tbody.childNodes.length-1;if(typeof this.cc!='number'){this.createTD(mrow,'<span class="controlBoxCss" '+this.seqsty+'>'+this.cc[idx]+'</span>',15)}var newtcon=this.cloneTemplate();var control;var spans=newtcon.getElementsByTagName('SPAN');if(this.controlIndex>=0){control=spans[this.controlIndex]}else{control=element('SPAN');control.addClassName('controlBoxCss');newtcon.appendChild(control)}var tmpDelIcon=this.createDelIcon(idx);this.createTD(mrow,newtcon);this.reId2(mrow);if(this.initfn){this.initfn(newtcon,idx,'add',{pointer:this})}control.appendChild(tmpDelIcon);mrow.delIcon=control.childNodes[0];this.dealdelIcon(this.maxlength);if(this.tbody.childNodes.length<this.maxlength){this.addIcon.src=ColumnCopy.am;control.appendChild(this.addIcon);mrow.addIcon=control.childNodes[1]}else{this.addIcon.parentNode.removeChild(this.addIcon)}mrow.controlBox=control;if(this.dd){this.dd.regPlugin(mrow)}return true};ColumnCopy.prototype.dealdelIcon=function(){var clen=this.tbody.childNodes.length;try{if(clen==0){this.firstDelIcon.style.display='none'}else{this.firstDelIcon.style.display=''}}catch(e){}};ColumnCopy.prototype.createDelIcon=function(index){var img=this.delIcon.cloneNode(false);img.src=this.prepareDelIcon.src;img.onmouseover=this.delIconOver;img.onmouseout=this.delIconOut;if(index==0){this.firstDelIcon=img}this.setDelIconClick(img,index);return img};ColumnCopy.prototype.reId=function(){var clen=this.tbody.childNodes.length,oc=this.tbody.childNodes,i,e,idx;if(typeof this.cc!='number'){idx=1}else{idx=0}for(i=0;i<clen;i++){e=oc[i].childNodes[idx].firstChild;this.reIdAttr(e,'TBODY',i);this.reTag(e,'INPUT',i);this.reTag(e,'SELECT',i);this.reTag(e,'TEXTAREA',i);this.reIdAttr(e,'IMG',i);this.reIdAttr(e,'A',i);this.reIdAttr(e,'DIV',i);this.reIdAttr(e,'SPAN',i)}};ColumnCopy.prototype.reId2=function(row){var l=this.tbody.childNodes.length-1,e,idx;if(typeof this.cc!='number'){idx=1}else{idx=0}e=row.childNodes[idx].firstChild;this.reIdAttr(e,'TBODY',l);this.reTag(e,'INPUT',l);this.reTag(e,'SELECT',l);this.reTag(e,'TEXTAREA',l);this.reIdAttr(e,'IMG',l);this.reIdAttr(e,'A',l);this.reIdAttr(e,'DIV',l);this.reIdAttr(e,'SPAN',l);this.reForAttr(e,'LABEL',l)};ColumnCopy.prototype.removeAll=function(){while(this.tbody.childNodes.length>0){this.tbody.removeChild(this.tbody.childNodes[0])}};ColumnCopy.prototype.reTag=function(e,name,i){var list=e.getElementsByTagName(name),j=0,k;var sid,oldid,sname,levlen=this.level.length;var regx=/\[(\d+|[\?])\]/;var r;for(;j<list.length;j++){sid=list[j].getAttribute('id');r='';if(sid){for(k=0;k<levlen;k++){sid=sid.replace(regx,'{'+this.level[k]+'}')}sid=sid.replace(regx,'{'+i+'}').replace(/\{/g,'[').replace(/\}/g,']');list[j].removeAttribute('id');list[j].setAttribute('id',sid);list[j].setAttribute('idx',i);list[j].id=sid;if(Prototype.Browser.IE&&list[j].type=='radio'){r='<input type="radio" id="'+sid}}sname=list[j].getAttribute('name');if(sname){for(k=0;k<levlen;k++){sname=sname.replace(regx,'{'+this.level[k]+'}')}sname=sname.replace(regx,'{'+i+'}').replace(/\{/g,'[').replace(/\}/g,']');list[j].removeAttribute('name');list[j].setAttribute('name',sname);list[j].name=sname;if(Prototype.Browser.IE&&list[j].type=='radio'){r+='" name="'+sname}}if(Prototype.Browser.IE&&list[j].type=='radio'){r+='" value="'+list[j].value+'" idx="'+list[j].getAttribute('idx')+'"';if(list[j].checked){r+=' checked="checked"'}r+=' >';list[j].outerHTML=r}}};ColumnCopy.prototype.reIdAttr=function(e,name,i){var list=e.getElementsByTagName(name),j=0,k;var sid,levlen=this.level.length;var regx=/\[(\d+|[\?])\]/;for(;j<list.length;j++){sid=list[j].getAttribute('id');if(sid){for(k=0;k<levlen;k++){sid=sid.replace(regx,'{'+this.level[k]+'}')}sid=sid.replace(regx,'{'+i+'}').replace(/\{/g,'[').replace(/\}/g,']');list[j].setAttribute('id',sid);list[j].setAttribute('idx',i);list[j].id=sid}}};ColumnCopy.prototype.reForAttr=function(e,name,i){var list=e.getElementsByTagName(name),j=0,k;var sid,levlen=this.level.length;var regx=/\[(\d+|[\?])\]/;for(;j<list.length;j++){sid=list[j].getAttribute('for');if(sid){for(k=0;k<levlen;k++){sid=sid.replace(regx,'{'+this.level[k]+'}')}sid=sid.replace(regx,'{'+i+'}').replace(/\{/g,'[').replace(/\}/g,']');list[j].setAttribute('for',sid)}}};ColumnCopy.prototype.reDelIconId=function(){var clen=this.tbody.childNodes.length,mrow=this.tbody.childNodes,i;for(i=0;i<clen;i++){this.setDelIconClick(mrow[i].delIcon,i)}};ColumnCopy.prototype.setDelIconClick=function(img,index){var pointer=this;if(index==0){this.firstDelIcon=img}this.tbody.childNodes[index].currentDelIcon=img;function _performfn(){pointer.delRow(index);pointer.dealdelIcon()};var ev={tbody:this.tbody,idx:index,div:this.tbody.childNodes[index].getElementsByTagName('DIV')[(pointer.level.length>0)?1:0],pointer:this,performfn:_performfn};img.onclick=function _delclick(){if(pointer.onbeforedel){if(pointer.onbeforedel(ev)===false){return false}}if(pointer.overwritedel){pointer.overwritedel(ev)}else{_performfn()}if(pointer.onafterdel){pointer.onafterdel(ev)}}};ColumnCopy.prototype.reAddIcon=function(){var mrow=this.tbody.childNodes;this.addIcon.src=ColumnCopy.am;mrow[mrow.length-1].controlBox.appendChild(this.addIcon)};ColumnCopy.prototype.delRow=function(index){var mrow=this.tbody.childNodes[index];for(var i=0,l=mrow.childNodes.length;i<l;i++){mrow.childNodes[i].innerHTML=''}this.tbody.removeChild(mrow);if(this.tbody.childNodes.length==0){this.columnCreate()}this.reAddIcon();if(typeof this.cc!='number'){this.trSeq()}this.reDelIconId();this.reId()};ColumnCopy.prototype.trSeq=function(idx){var i,mrow=this.tbody.childNodes,clen=mrow.length;if(typeof this.cc!='number'){for(i=0;i<clen;i++){mrow[i].firstChild.firstChild.innerHTML=this.cc[i]}}};ColumnCopy.prototype.createTD=function(fo,content,w){var mcell=document.createElement("TD");mcell.style.cssText='vertical-align: top; padding-top:3px; border:0px solid transparent;';if(w){mcell.setAttribute("width","1%")}else{mcell.style.cssText+='width:100%;'}fo.appendChild(mcell);if(typeof content=='string'){mcell.innerHTML=content}else if(__isNode(content)&&content.nodeType==Node.ELEMENT_NODE){mcell.appendChild(content)}};ColumnCopy.prototype.cloneTemplate=function(){var newDiv=this.templateDiv.cloneNode(true);newDiv.removeAttribute('id');newDiv.style.display='';return newDiv};var __isNode=function(n){if(!n){return false}return typeof n.nodeType!="undefined"&&typeof n.nodeName!="undefined"};var intoBody=function(el){var body=getBody();if(body.childNodes.length>0){body.insertBefore(el,body.firstChild)}else{body.appendChild(el)}function getBody(){var __body=document.getElementsByTagName('body')[0];if(!__body){__body=document.getElementsByTagName('BODY')[0]}return __body}};var del=function(id){if(typeof id=='string'){var n=document.getElementById(id);if(n&&n.parentNode){return n.parentNode.removeChild(n)}}else if(__isNode(id)&&id.parentNode){return id.parentNode.removeChild(id)}};var element=function(element,attrsObj){if(typeof element=='string'){element=document.createElement(element)}else if(__isNode(element)&&element.nodeType==Node.ELEMENT_NODE){element=element}else{throw new Error('ArgumentsException! element(tagName/Node)');}Element.extend(element);if(attrsObj){for(var attr in attrsObj){element.setAttribute(attr,attrsObj[attr])}}return element};