; E@c@s dZdklZdklZdklZdkZdkZdk Z dk Tdk Z dk l Z dklZdd d d d d dddddddddddgZd gZdZdZdefdYZdZedZdefd YZd!Zed"ZdS(#s,This files contains the class MPIWG Projects(sPageTemplateFile(s PageTemplate(sZopePageTemplateN(s*(s SimpleItem(sFolders WEB_titlesxdata_01sxdata_02sxdata_03sxdata_04sxdata_05sxdata_06sxdata_07sxdata_08sxdata_09sxdata_10sxdata_11sxdata_12sxdata_13sWEB_project_headersWEB_project_descriptionsWEB_related_pubcCst|d|dSdS(Ni(scmpsxsy(sxsy((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pyssortFscCs|did}|did}d}d}yx|tdD]n}y|dt ||}Wn|dd}nXy|dt ||}WqB|dd}qBXqBWt t |t |SWnt |d|dSnXdS(Nis.sis%04ii( sxssplitsxsplitsysysplitsxretsyretsrangesisintscmp(sxsysisxretsyretsysplitsxsplit((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pyssortIs$ s MPIWGRootcBstZdZddgZdZdZeedZdZe i hdd<d d %ss%sN(sretslistssplitspersonsspersonssplittedslensappends_[1]sressubs splittedNewsstringsjoinssearchsselfsMembersCatalogsprojsNones absolute_url( sselfslistssearchspersons splittedNewsrets_[1]spersonssprojssplittedssplit((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pysgetUrlFromPersons*6 "cCs|g}|i}x_|D]W}|id}|ihdti |d<}|o|i ||fqqW|SdS(sgive tuple member /projectss,sxdata_01s ANDN( sretsselfs getAllMemberssmemberssxssplitssplittedsProjectCatalogsstringsjoinsprojsappend(sselfsretsprojsmembersssplittedsx((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pysgetProjectsOfMemberss $c Cs |id}t|djo|id}ngi}|D]}|tidd|qC~}|ddjo |d=nt i |d}|dj o|i hd |<}n|o5gi}|D]}||i|igq~SngStSd S( sDcheck if person is in personfolder and return list of person objectss,is s\s(.*)s$1iss AND stitleN(snamessplitssplittedslensappends_[1]sressubs splittedNewsstringsjoinssearchsselfsMembersCatalogsprojsxslastNames firstNamesobjs( sselfsnamessearchs splittedNews_[1]sprojssplitssplittedsx((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pysgivePersonLists6 5cCsa|id}h}xA|D]9}|dj o%y|i|||%sN( sselfsWEB_project_descriptionssplitssplittedsnewsDescriptionCatalogsfoundslensappendsstringsjoin(sselfssplittedssplitsnewsfound((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys crossLinker[scCsnd}|}|ido|idnt|d}|i|||t j o|i dndS(s,Erzeuge Template fr defined fields not_useds index_htmlsTEXTs manage_mainN( sidstitlesselfs_getObs _delObjectsZopePageTemplatesnewObjs _setObjectsRESPONSEsNonesredirect(sselfsRESPONSEstitlesnewObjsid((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pysgenerateTemplateos cCsg||_||_|o)xGtD]}t||||q Wn"xtD]}t||dqIWdS(sinitieriere classesN(sidsselfstitlesargvs definedFieldssargssetattr(sselfsidsargvsarg((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys__init__~s  slabels Load New FilesactionsloadNewFileFormsEdit ProjectInfoseditMPIWGProjectFormsEdit BasisInfoseditMPIWGBasisFormsEdit Publicationss editMPIWGRelatedPublicationsFormcCs9g}x(tddD]}|id|qW|SdS(sgiveListofDatafieldsiis xdata_%02iN(sretsrangesxsappend(sselfsxsret((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys getDataFieldss cCstSdS(sshow all defined fieldsN(s definedFields(sself((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pysgetDefinedFieldsscCst||SdS(s get attrbiuteN(sgetattrsselfsfield(sselfsfield((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys getAttributescCsZd}xIt||D]8}y||7}Wqy |}WqNd}qNXqXqW|SdS(sInhalt des FeldesusERRORN(stextsgetattrsselfsfieldsx(sselfsfieldsxstext((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys getContents cCs tdi|}|SdS(s simple indexs,Products/MPIWGWeb/zpt/MPIWGProject_index.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys show_htmlscCs tdi|}|SdS(seditforms+Products/MPIWGWeb/zpt/edit_MPIWGProject.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pyseditMPIWGProjectFormscCs tdi|}|SdS(seditforms)Products/MPIWGWeb/zpt/edit_MPIWGBasis.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pyseditMPIWGBasisFormscCs tdi|}|SdS(sEdit related Publicationss7Products/MPIWGWeb/zpt/edit_MPIWGRelatedPublications.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys editMPIWGRelatedPublicationsFormscCsdx?tD]7}|ii|ot|||i|gqqW|tj o|idndS(sedit the projects manage_mainN( s definedFieldssxsselfsREQUESTshas_keyssetattrsRESPONSEsNonesredirect(sselfsRESPONSEsx((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pyseditMPIWGProjects" cCs tdi|}|SdS(sNeues XML-File einlesens.Products/MPIWGWeb/zpt/MPIWGProject_newfile.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pysloadNewFileFormscCs|id}|oe|i}|i}ti|}x>t D]2}y"||d}t |||Wq?q?Xq?Wn|tj o|idndS(seinlesen des neuen filess fileuploadis manage_mainN(sselfsREQUESTs fileuploadsfilenames file_namesreadsfiledatas xmlhelpers proj2hashsargvs definedFieldssargstempssetattrsRESPONSEsNonesredirect(sselfsRESPONSEs fileuploadstemps file_namesargvsargsfiledata((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys loadNewFiles     (s__name__s __module__s__doc__s meta_types crossLinkersNonesgenerateTemplates__init__sFoldersmanage_optionss getDataFieldssgetDefinedFieldss getAttributes getContents show_htmlseditMPIWGProjectFormseditMPIWGBasisForms editMPIWGRelatedPublicationsFormseditMPIWGProjectsloadNewFileForms loadNewFile(((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys MPIWGProjectVs"    a         cCs tdi|}|SdS(sform for adding the projects-Products/MPIWGWeb/zpt/addMPIWGProjectForm.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pysmanage_addMPIWGProjectFormscCs|iidoO|id}|o(|i}|i}ti |}nt ||}n t |}|i|||tj o|idndS(smethod to add a projects fileuploads manage_mainN(sselfsREQUESTshas_keys fileuploadsfilenames file_namesreadsfiledatas xmlhelpers proj2hashsargvs MPIWGProjectsidsnewObjs _setObjectsRESPONSEsNonesredirect(sselfsidsRESPONSEs fileuploads file_namesargvsfiledatasnewObj((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pysmanage_addMPIWGProjects     (s__doc__s'Products.PageTemplates.PageTemplateFilesPageTemplateFiles#Products.PageTemplates.PageTemplates PageTemplates'Products.PageTemplates.ZopePageTemplatesZopePageTemplates MPIWGStaffsstringsrestypess xmlhelpersOFS.SimpleItems SimpleItems OFS.FoldersFolders definedFieldss checkFieldsssortFssortIs MPIWGRootsmanage_addMPIWGRootFormsNonesmanage_addMPIWGRoots MPIWGProjectsmanage_addMPIWGProjectFormsmanage_addMPIWGProject(ssortIs definedFieldss MPIWGRootsstrings SimpleItemsmanage_addMPIWGProjects MPIWGStaffs checkFieldsssortFsZopePageTemplatesmanage_addMPIWGProjectFormsresPageTemplateFilesmanage_addMPIWGRootFormsFolders PageTemplates xmlhelpersmanage_addMPIWGRoots MPIWGProject((sQ/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/MPIWGWeb/MPIWGProjects.pys?s*         9