Meetup.DomDeco.FileUploadDisplay=function(){bindMethods(this)};Meetup.DomDeco.FileUploadDisplay.prototype={decorate:function(e){if(!e){LOG.error("no element passed in to Meetup.DomDeco.FileUploadDisplay.decorate()");return}this._base_el=e;var c=$tagClass("form",null,this._base_el)[0];this._fileInput=$("file");this._renameInput=$("rename_to");this._extension=$("extension");this._renameWarningTd=$("renameWarning");this._uploadButton=$tagClass(null,"D_submit",c)[0];var b=$tagClass(null,"displaynone",c);if(b[0]!=undefined){b[0].className=""}b=$tagClass(null,"filelist",this._base_el);var a=b[0].value.split("/");this._filelist=new Array();for(var d=0;d<a.length;d+=2){this._filelist[a[d]]=a[d+1]}b=$tagClass(null,"editMode",this._base_el);if(b&&b.length>0){this._editMode=b[0].value}b=$tagClass(null,"editId",this._base_el);if(b&&b.length>0){this._editId=b[0].value}b=$tagClass(null,"chapterId",this._base_el);this._editUrl="/"+b[0].value+"/files/edit/?edit_id=";this._replaceUrl="/"+b[0].value+"/files/edit/?replace_id=";if(this._fileInput){connect(this._fileInput,"onchange",this._fileInputEvent);connect(this._fileInput,"onmouseout",this._fileInputEvent);this._fileInputEvent()}connect(this._renameInput,"onkeyup",this._renameInputEvent);b=$tagClass(null,"permsWarning",this._base_el);if(b&&b.length>0){this._permsWarningTd=b[0];this._permissions=$tagClass(null,"permissions",c)[0];connect(this._permissions,"onchange",this._permissionsEvent)}this._renameInputEvent()},_fileInputEvent:function(){this._extension.innerHTML=this._getExtension(this._fileInput.value);if(this._fileInput.value!=""&&(this._renameInput.value==""||this._origRenameInput==this._renameInput.value)){this._origRenameInput=this._getDisplayName(this._fileInput.value);this._renameInput.value=this._origRenameInput;this._renameInputEvent()}},_renameInputEvent:function(){if(this._renameInput.value!=""){var a=this._renameInput.value+this._extension.innerHTML;if(this._isDuplicate(a)){this._showWarning(a,this._filelist[a.toLowerCase()])}else{this._hideWarning()}if(/[\\\/:*?\"<>|]/.test(a)){this._showBadCharWarning()}else{this._hideBadCharWarning()}}},_permissionsEvent:function(){if(this._permissions.value==0){this._showPrivatePermsWarning()}else{this._hidePrivatePermsWarning()}},_getDisplayName:function(a){var d=a.lastIndexOf("\\");if(d==-1){d=a.lastIndexOf("/")}var b=a.lastIndexOf(".");if(b<1){b=a.length}var c=a.substring(d+1,b);if(c.length>this._maxFilenameLength){c=c.substring(0,this._maxFilenameLength)}return c},_getExtension:function(a){var b=a.lastIndexOf(".");if(b<1){return""}return a.substring(b,a.length)},_isDuplicate:function(a){if(this._filelist[a.toLowerCase()]!=undefined){return true}return false},_showWarning:function(a,c){var b="";if(this._editMode=="copy"){b=Meetup.Copy.fileNameExists.replace("{FILE_NAME}",a)+" "+Meetup.Copy.chooseDifferentFileName}else{if(c=="-1"){b=Meetup.Copy.fileNameExists.replace("{FILE_NAME}",a)+" "+Meetup.Copy.selectDifferentFile}else{if(this._editMode=="edit"&&this._editId!=c){b=Meetup.Copy.fileNameExists.replace("{FILE_NAME}",a)+" "+Meetup.Copy.selectDifferentFileOrEdit.replace("{EDIT_URL}",this._editUrl+c)}else{if(this._editMode=="upload"||(this._editMode=="replace"&&this._editId!=c)){b=Meetup.Copy.fileNameExists.replace("{FILE_NAME}",a)+" "+Meetup.Copy.selectDifferentFileOrReplace.replace("{REPLACE_URL}",this._replaceUrl+c)}}}}if(b!=""){if(this._warning==null){this._warning=appendChildNodes(this._renameWarningTd,DIV(null,{"class":"warning"}))}else{this._renameWarningTd.appendChild(this._warning)}this._warning.innerHTML=b;this._uploadButton.disabled=true}},_hideWarning:function(){for(var a=0;a<this._renameWarningTd.childNodes.length;a++){if(this._warning==this._renameWarningTd.childNodes[a]){this._renameWarningTd.removeChild(this._warning)}}this._enableIfNoWarnings()},_showBadCharWarning:function(){if(this._badCharWarning==null){this._badCharWarning=DIV({"class":"warning"})}this._renameWarningTd.appendChild(this._badCharWarning);this._badCharWarning.innerHTML=Meetup.Copy.badCharWarning;this._uploadButton.disabled=true},_hideBadCharWarning:function(){for(var a=0;a<this._renameWarningTd.childNodes.length;a++){if(this._badCharWarning==this._renameWarningTd.childNodes[a]){this._renameWarningTd.removeChild(this._badCharWarning)}}this._enableIfNoWarnings()},_showPrivatePermsWarning:function(){if(this._privatePermsWarning==null){this._privatePermsWarning=DIV({"class":"warning"})}this._permsWarningTd.appendChild(this._privatePermsWarning);this._privatePermsWarning.innerHTML=Meetup.Copy.permsWarning},_hidePrivatePermsWarning:function(){for(var a=0;a<this._permsWarningTd.childNodes.length;a++){if(this._privatePermsWarning==this._permsWarningTd.childNodes[a]){this._permsWarningTd.removeChild(this._privatePermsWarning)}}},_enableIfNoWarnings:function(){for(var a=0;a<this._renameWarningTd.childNodes.length;a++){var b=this._renameWarningTd.childNodes[a];if(this._warning==b||this._badCharWarning==b){return}}this._uploadButton.disabled=false},_base_el:null,_fileInput:null,_renameInput:null,_extension:null,_filelist:null,_warning:null,_badCharWarning:null,_renameWarningTd:null,_editMode:null,_editId:null,_editUrl:null,_replaceUrl:null,_uploadButton:null,_origRenameInput:null,_permissions:null,_privatePermsWarning:null,_permsWarningTd:null,_maxFilenameLength:64};
