ZEXP (hhtq?U_Add_Python_Scripts_Permissionq@(hhtqAU_Define_permissions_PermissionqB(htqCU'_Change_Session_Data_Manager_PermissionqD(hhtqEU!_Change_cache_managers_PermissionqF(hhtqGU-_Add_Z_Gadfly_Database_Connections_PermissionqH(hhtqIU/_Add_Accelerated_HTTP_Cache_Managers_PermissionqJ(hhtqKU._Access_arbitrary_user_session_data_PermissionqL(hhtqMU _Log_to_the_Event_Log_PermissionqN(hhtqOU index_htmlqP(U Umem_dataq?u}q@(U meta_typeqAUScript (Python)qBUidqCU secure_skinqDu}qE(U meta_typeqFUScript (Python)qGUidqHUzwo_droits_folderqIu}qJ(U meta_typeqKUScript (Python)qLUidqMUzwo_cpyqNu}qO(hKhLhMU zwo_renameqPu}qQ(hKhLhMUzwo_user_groupsqRu}qS(hKhLhMUstandard_img_footerqTu}qU(hKhLhMUstandard_img_headerqVu}qW(hKhLhMhu}qX(hKhLhMUstandard_print_footerqYu}qZ(hKhLhMh u}q[(hKhLhMUstandard_print_homeq\u}q](U meta_typeq^UScript (Python)q_Uidq`Uzwo_initialise_passwordqau}qb(U meta_typeqcUScript (Python)qdUidqeUcheck_edit_repqfu}qg(U meta_typeqhUScript (Python)qiUidqjUstandard_html_footerqku}ql(hhhihjUstandard_html_headerqmu}qn(hhhihjUstandard_html_homeqou}qp(U meta_typeqqUFolderqrUidqsUinstallqtu}qu(hqUScript (Python)qvhsUstandard_minimal_footerqwu}qx(hqhvhsUstandard_minimal_headerqyu}qz(U meta_typeq{UFolderq|Uidq}Uparseq~u}q(U meta_typeq€UFolderqUidq‚Uusersqƒu}q„(U meta_typeq…UScript (Python)q†Uidq‡U get_headerqˆu}q‰(h…h†h‡U get_footerqŠu}q‹(h…UFolderqŒh‡U trackbackqu}qŽ(U meta_typeqUFolderqUidq‘Uepozq’utq“U get_headerq”(U (U <}q?(hUFolderq@ttQUsystemqAUlibqBUprogestqC(U <ŽqD(hUFolderqEttQU type_zwookqFUsystemqGUtitreqH(U u}qÎ(hËhÌhÍU navigationqÏu}qÐ(U meta_typeqÑUFolderqÒUidqÓUcontactqÔu}qÕ(hÑhÒhÓhu}qÖ(hÑhÒhÓUrss_aggregatorq×u}qØ(hÑhÒhÓU news_historyqÙu}qÚ(hÑhÒhÓUforums_historyqÛu}qÜ(U meta_typeqÝUFolderqÞUidqßUproductsqàu}qá(hÝhÞhßhQu}qâ(U meta_typeqãUFolderqäUidqåhCu}qæ(U meta_typeqçUFolderqèUidqéUnewsqêutqëUnewsqì(U <—qí(hUFolderqîttQUsubmited_monitorqï(U <‘qð(hUFolderqñttQh(U <šqò(hUFolderqóttQUhitsqô(U <›qõ(hUFolderqöttQh|(U <œq÷(hUFolderqøttQhs(U hu}q?(U meta_typeq@UScript (Python)qAUidqBU configboxqCu}qD(U meta_typeqEUScript (Python)qFUidqGU choixcouleurqHu}qI(U meta_typeqJUFolderqKUidqLUskinqMu}qN(U meta_typeqOUScript (Python)qPUidqQU presentationqRu}qS(hOhPhQUautourqTu}qU(U meta_typeqVUFolderqWUidqXUarboqYu}qZ(U meta_typeq[UFolderq\Uidq]Ueditq^utq_hH(U <¯q`(hU PythonScriptqattQU__ac_local_roles__qb}qch4Uzwo_boqdu. Mettez cette page en bookmark
Delogger vous ICI.
Vous devez ensuite cliquer sur Annuler/Cancel...
Revenez ensuite sur votre page bookmarkée
' #Check de premiere configuration. #pour réactivé cette premiere configuration (changement de password root) # mettre a 0 la propriété checkproperty de zwo_info. if not mem['racine_obj'].zwo_info.hasProperty("checkpasswd") or mem['racine_obj'].zwo_info.checkpasswd<>1: try: return context.zwo_lib.zwo_initialise_password(mem) except: #affichage avant premiere connection d'un message indiquant le login/password temporaire. return '

Se connecter avec l\'utilisateur "admin" et le mot de passe "admin"

Cliquer ici pour se connecter

' #Test si l'utilisateur a le droit de voir la page (ou l'objet) if mem['droit_vue_dossier']==0: print '



Cette page nécessite une identification.



' print ' Pour vous identifier sur le site,
cliquer sur Se connecter
' return printed # selon le mode d'affichage, appelle les fonctions header / home / footer correspondantes. if view=='html': print context.zwo_lib.standard_html_header(mem) print context.zwo_lib.standard_html_home(mem) print context.zwo_lib.standard_html_footer(mem) elif view=='print': print context.zwo_lib.standard_print_header(mem) print context.zwo_lib.standard_print_home(mem) print context.zwo_lib.standard_print_footer(mem) elif view=='img': print context.zwo_lib.standard_img_header(mem) print context.zwo_lib.standard_img_home(mem) print context.zwo_lib.standard_img_footer(mem) else: print 'type view inconnu.' return printed q Uwarningsq )UidqU index_htmlqU_codeqTÍc@sdd„ZdS(NshtmlcCsªtƒ}tttdƒdƒƒ}| odSnttt|dƒdƒdƒdƒ p%ttt|dƒdƒdƒdjoTy tttdƒd ƒ|ƒSWqÙd t|d ƒd t|d ƒdSqÙXnt|dƒdjoA|dIJ|dt|d ƒd t|d ƒdIJ|ƒSn|djoj|tttdƒdƒ|ƒIJ|tttdƒdƒ|ƒIJ|tttdƒdƒ|ƒIJnù|djoj|tttdƒdƒ|ƒIJ|tttdƒdƒ|ƒIJ|tttdƒdƒ|ƒIJn‚|djoj|tttdƒdƒ|ƒIJ|tttdƒdƒ|ƒIJ|tttdƒdƒ|ƒIJn |d IJ|ƒSdS(!Nszwo_libsmem_datas Vous utilisez un User Zope qui n'est pas enregistré dans Zwook !!!
Mettez cette page en bookmark
Delogger vous ICI.
Vous devez ensuite cliquer sur Annuler/Cancel...
Revenez ensuite sur votre page bookmarkée
s racine_objszwo_infos hasPropertys checkpasswdiszwo_initialise_passwords

Se connecter avec l'utilisateur "admin" et le mot de passe "admin"

Cliquer ici pour se connecter

sdroit_vue_dossieris^



Cette page nécessite une identification.



s> Pour vous identifier sur le site,
cliquer sur Se connecter
shtmlsstandard_html_headersstandard_html_homesstandard_html_footersprintsstandard_print_headersstandard_print_homesstandard_print_footersimgsstandard_img_headersstandard_img_homesstandard_img_footerstype view inconnu.(s_print_s_prints _getattr_scontextsmems _getitem_sview(sviews_print_s_prints _getattr_scontextsmems _getitem_((sScript (Python)s index_htmls2 H#. ,  ""& ""& ""& (s index_html(s index_html((sScript (Python)ssqU func_defaultsq(UhtmlqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq Uname_containerq!U containerq"usbU_dav_writelocksq#(U <±q$(U Persistenceq%UPersistentMappingq&ttQU__ac_local_roles__q'}q(Uxavq)]q*UOwnerq+asU _filepathq,U'Script (Python):/kzexp_zwook/index_htmlq-U_paramsq.U view='html'q/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4KU co_varnamesq5(Uviewq6U_print_q7U_printq8U _getattr_q9Ucontextq:Umemq;U _getitem_qsqU func_defaultsq(NtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextq Ucontextq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Uurlq(U AccessControlq)UgetSecurityManagerq*UaU _getattr_q+U containerq,tq-ubU__ac_local_roles__q.}q/Uxavq0]q1UOwnerq2asU _filepathq3U$Script (Python):/kzexp_zwook/acl_objq4U_paramsq5Uurl=Noneq6U_dav_writelocksq7(U <¶q8(U Persistenceq9UPersistentMappingq:ttQu. <[Í((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_FTP_access_Permissionq(UManagerqtqU_WebDAV_access_Permissionq(htq U_View_History_Permissionq (htq U_Take_ownership_Permissionq (htq U_Manage_properties_Permissionq(htqUrawqT5 ">




Vous êtes connecté
Redirection automatique.

Pour une redirection manuelle : cliquer ici Pour une redirection manuelle : ">cliquer ici
qUglobalsq}qU#_View_management_screens_Permissionq(htqU'_Access_contents_information_Permissionq(U AnonymousqU AuthenticatedqhtqUtitleqUnoyauqU_Change_DTML_Methods_Permissionq(htqUsystemqUlibqU_Delete_objects_Permissionq (htq!U type_zwookq"Usystemq#U_varsq$}q%U_Change_proxy_roles_Permissionq&(htq'U_Copy_or_Move_Permissionq((htq)U__name__q*Utest_connectionq+U!_Change_cache_settings_Permissionq,(htq-U_View_Permissionq.(hhtq/U_dav_writelocksq0(U <·q1(U Persistenceq2UPersistentMappingq3ttQU_WebDAV_Unlock_items_Permissionq4(htq5U!_Change_DTML_Documents_Permissionq6(htq7U_WebDAV_Lock_items_Permissionq8(htq9U_Undo_changes_Permissionq:(htq;U_Manage_WebDAV_Locks_Permissionq<(htq=U _propertiesq>(}q?(Utypeq@UstringqAUidqBUtitleqCUmodeqDUwu}qE(h@UstringqFhBU type_zwookqGu}qH(h@UstringqIhBUsystemqJutqKU_Change_permissions_PermissionqL(htqMU__ac_local_roles__qN}qOu. <\((U OFS.FolderqUFolderqtqNt.}q(Uusersq(U <¸q(hUFolderqttQUpacksq(U <¹q (hUFolderq ttQU _propertiesq (}q (Utypeq UstringqUidqUtitleqUmodeqUwu}q(h UstringqhU type_zwookqu}q(UtypeqUstringqUidqUsitequ}q(hUstringqhUsystemqu}q(hUstringqhUemailqu}q (Utypeq!Uintq"Uidq#U checkpasswdq$utq%hUzwo_infoq&Utitleq'UInformation sur le zwookq(Umodulesq)(U <ºq*(hUFolderq+ttQUsystemq,Udataq-Usiteq.UZwook Dream Controler Systemq/Ustandby_contentq0(U <»q1(hUFolderq2ttQU type_zwookq3Usystemq4Ugroupsq5(U <¼q6(hUFolderq7ttQh$KUimagesq8(U <½q9(hUFolderq:ttQU_objectsq;(}q<(U meta_typeq=UFolderq>Uidq?Uusersq@u}qA(h=h>h?UgroupsqBu}qC(U meta_typeqDUFolderqEUidqFUimagesqGu}qH(U meta_typeqIUFolderqJUidqKUcssqLu}qM(hIhJhKhu}qN(hIhJhKUskinsqOu}qP(hIhJhKUstandby_contentqQu}qR(U meta_typeqSUFolderqTUidqUh)utqVUskinsqW(U <¾qX(hUFolderqYttQU__ac_local_roles__qZ}q[Uemailq\Uzwook@zwook.orgq]Ucssq^(U <¿q_(hUFolderq`ttQu. <]½((UProducts.MailHost.MailHostqUMailHostqtqNt.}q(UtitleqUMailHost du siteqU smtp_portqKU smtp_hostqU localhostq U__ac_local_roles__q }q Up4q ]q UOwnerqasUidqUMailHostqu. <^ï((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUtitleqUGPLqUrawq T>KZEXP-ZWOOK version beta 1, Copyright (C) 2001-2004 Xavier Manach (xav@1et0.org). This file is part of KZEXP-ZWOOK. KZEXP-ZWOOK is the kernel of ZWOOK. KZEXP-ZWOOK is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA q Uglobalsq }q U__name__q UCOPYINGqU__ac_local_roles__q}qUadminq]qUOwnerqasu. <_–((U OFS.FolderqUFolderqtqNt.}q(U zwo_dossierq(U <Àq(hUFolderqttQU_Add_XML_Transforms_Permissionq(UManagerq tq Utexteq (U <Áq (hUFolderq ttQU!_Manage_XML_Transforms_Permissionq(h tqUliensq(U <Çq(hUFolderqttQU,_Add_XML_Transform_Cache_Managers_Permissionq(h tqUforumsq(U <Âq(hUFolderqttQUidqUzwookqU __ac_roles__q(UManagerqUOwnerqU AnonymousqU AuthenticatedqtqU actualitesq (U <Éq!(hUFolderq"ttQU_Change_user_folder_Permissionq#(h tq$Utitleq%UAccueilq&Usystemq'Uracineq(U&_Manage_XML_Transform_Cache_Permissionq)(h tq*Uversionq+U Active Rc5q,U type_zwookq-Usystemq.U#_Add_BZP_Serveur_objects_Permissionq/(UManagerq0tq1U_objectsq2(}q3(U meta_typeq4UFolderq5Uidq6U zwo_dossierq7u}q8(U meta_typeq9UFolderq:Uidq;hu}q<(U meta_typeq=UFolderq>Uidq?h u}q@(h=h>h?UforumsqAu}qB(h=h>h?U albumphotosqCu}qD(U meta_typeqEUImageqFUidqGU image.gifqHu}qI(U meta_typeqJUFolderqKUidqLUcontactqMu}qN(U meta_typeqOUFolderqPUidqQUtexteqRu}qS(U meta_typeqTUFileqUUidqVU feedparser.pyqWu}qX(U meta_typeqYUFileqZUidq[Usend_trackback_ping.pyq\utq]U image.gifq^(U <Ãq_(U OFS.Imageq`UImageqattQhW(U <Åqb(h`UFileqcttQUstandby_contentqdU0h\(U <Æqe(h`UFileqfttQU_Is_Membre_Permissionqg(h0tqhU_Edit_Permissionqi(htqjU)_Add_XSL_Transformer_Registrys_Permissionqk(h tqlU__ac_local_roles__qm}qn(Uadminqo]qp(Uadminqq(UOwnerqrttqsaUjamesqt]qu(Uadminqv(UOwnerqwttqxaUgregqy]qz(Uxavq{(UOwnerq|ttq}aUxavq~]q(Uxavq€(UOwnerqttq‚auU_Add_ChatItems_Permissionqƒ(UManagerq„U config_zwookq…tq†hC(U <Èq‡(hUFolderqˆttQUcontactq‰(U <ÄqŠ(hUFolderq‹ttQU _propertiesqŒ(}q(UtypeqŽUstringqUidqUtitleq‘Umodeq’Uwu}q“(hŽUstringq”hU type_zwookq•u}q–(hŽUstringq—hUsystemq˜u}q™(UtypeqšUstringq›Uidqœhdu}q(UtypeqžUstringqŸUidq Uversionq¡utq¢U_Add_ZRTChats_Permissionq£(h„tq¤U_Add_TestXav_objects_Permissionq¥(h0tq¦u. <`#‚((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T¸# Ce script gere les droits locaux. Il est donc critique pour la sécurité. # Ce scrit contient les listes de permissions correspondants aux: # non visiteur / visiteur / editeur de page. # le principe est simple, la carte des droits zwook permet de mappers # ces droits selon les groupes zwooks (qui sont les roles zope). # L'exception étant le role Manager, qui a de toute facon tous les droits. # (ceci peu être réglé en modifiant la liste nonvisible) # Le choix des ces parametres de securité sont critique. # Ils n'ont pas encore assez été étudier a mon avis. # Un perfectionnement et des tests seraient souhaitable. # Le module AccessControl permet de rendre le script inaccessible # en utilisant directement le navigateur. from AccessControl import getSecurityManager a=getSecurityManager() if a.calledByExecutable()<2: return 'non' ############################## # DEBUT LISTE PERMISSIONS #### ############################## chlistePermNonVisiteur="""Access Transient Objects Access arbitrary user session data Access contents information Access session data""" listePermNonVisiteur=chlistePermNonVisiteur.split('\n') chlistePermVisiteur="""Access Transient Objects Access arbitrary user session data Access contents information Access session data Add Documents, Images, and Files Add Folders Add Transient Object Container Change DTML Documents Change Images and Files Copy or Move Delete objects FTP access Import/Export objects Manage Transient Object Container Manage properties Query Vocabulary Search ZCatalog Undo changes Use mailhost services View View History""" listePermVisiteur=chlistePermVisiteur.split('\n') chlistePermEditeur="""Access Transient Objects Access arbitrary user session data Access contents information Access session data Add ChatItems Add Database Methods Add Documents, Images, and Files Add Folders Add MailHost objects Add Vocabularies Add Z Gadfly Database Connections Add ZCatalogs Change DTML Documents Change DTML Methods Change Database Connections Change Database Methods Change Images and Files Change Lock Information Change Page Templates Change configuration Change permissions Copy or Move Create Transient Objects Create class instances Delete objects Edit Factories FTP access Manage Access Rules Manage Transient Object Container Manage Vocabulary Manage WebDAV Locks Manage Z Classes Manage ZCatalog Entries Manage ZCatalogIndex Entries Manage properties Open/Close Database Connection Open/Close Database Connections Query Vocabulary Search ZCatalog Take ownership Test Database Connections Undo changes Use Database Methods Use Factories Use external editor Use mailhost services View View History View management screens""" listePermEditeur=chlistePermEditeur.split('\n') liste_perm=[] b=rep.permission_settings() for c in b: liste_perm.append(c['name']) ############################## # FIN LISTE PERMISSIONS ###### ############################## #liste des roles qui ne sont pas affectés par la map droits nonvisible=['Manager'] #on determine la listes des groupes zwooks affecté par la map droits. (lg) repgr=context.zwo_info.groups lg=[] for a in repgr.objectIds(): if not a in nonvisible: if a<>'' : lg.append(a) #Test si il y a aquisition des droits if rep.zwo_dossier.new_droits=='0': #Donne tous droits au groupe Manager rep.manage_role('Manager', liste_perm) #Configure tous droits en aquisition #Donne aucun droit au autres groupes. rep.manage_acquiredPermissions(liste_perm) for gr in lg: rep.manage_role(gr, []) return # Si il n'y as pas aquisition : # On recupere les listes de groupes editeurs (ge) et visiteurs (gv). chgv=rep.zwo_dossier.groupes_visiteurs chge=rep.zwo_dossier.groupes_editeurs gv=chgv.split('&') ge=chge.split('&') #on donne tous les droits au groupe Manager rep.manage_role('Manager', liste_perm) #Configure aucun droits en aquisition rep.manage_acquiredPermissions([]) #Donne les droits de non visiteurs a tous les groupes. for gr in lg: rep.manage_role(gr, listePermNonVisiteur) #Accorde les droits de visiteurs aux groupes visiteurs. for g in gv: if g<>'': rep.manage_role(g, listePermVisiteur) #Accorde les droits d'edition aux groupes editeurs. for g in ge: if g<>'': rep.manage_role(g, listePermEditeur) return q Utitleq Unoyauq U _filepathqU6Script (Python):/kzexp_zwook/zwo_lib/zwo_droits_folderqU_codeqT‚c@s d„ZdS(NcCsdkl}|ƒ}t|dƒƒdjodSnd}t|dƒdƒ}d}t|dƒdƒ}d } t| dƒdƒ} g} t|d ƒƒ} x0t | ƒD]"}t| d ƒt|d ƒƒq­Wd g}tttdƒdƒ}g}xVt t|dƒƒƒD]<}||j o(|djot|d ƒ|ƒqOqqWtt|dƒdƒdjo^t|dƒd | ƒt|dƒ| ƒx*t |ƒD]}t|dƒ|gƒq¨WdSntt|dƒdƒ}tt|dƒdƒ}t|dƒdƒ}t|dƒdƒ}t|dƒd | ƒt|dƒgƒx*t |ƒD]}t|dƒ||ƒq`Wx;t |ƒD]-}|djot|dƒ||ƒqqWx;t |ƒD]-}|djot|dƒ|| ƒqËqËWdSdS(N(sgetSecurityManagerscalledByExecutableisnonskAccess Transient Objects Access arbitrary user session data Access contents information Access session datassplits s¬Access Transient Objects Access arbitrary user session data Access contents information Access session data Add Documents, Images, and Files Add Folders Add Transient Object Container Change DTML Documents Change Images and Files Copy or Move Delete objects FTP access Import/Export objects Manage Transient Object Container Manage properties Query Vocabulary Search ZCatalog Undo changes Use mailhost services View View HistorysAccess Transient Objects Access arbitrary user session data Access contents information Access session data Add ChatItems Add Database Methods Add Documents, Images, and Files Add Folders Add MailHost objects Add Vocabularies Add Z Gadfly Database Connections Add ZCatalogs Change DTML Documents Change DTML Methods Change Database Connections Change Database Methods Change Images and Files Change Lock Information Change Page Templates Change configuration Change permissions Copy or Move Create Transient Objects Create class instances Delete objects Edit Factories FTP access Manage Access Rules Manage Transient Object Container Manage Vocabulary Manage WebDAV Locks Manage Z Classes Manage ZCatalog Entries Manage ZCatalogIndex Entries Manage properties Open/Close Database Connection Open/Close Database Connections Query Vocabulary Search ZCatalog Take ownership Test Database Connections Undo changes Use Database Methods Use Factories Use external editor Use mailhost services View View History View management screensspermission_settingssappendsnamesManagerszwo_infosgroupss objectIdsss zwo_dossiers new_droitss0s manage_rolesmanage_acquiredPermissionssgroupes_visiteurssgroupes_editeurss&(s AccessControlsgetSecurityManagersas _getattr_schlistePermNonVisiteurslistePermNonVisiteurschlistePermVisiteurslistePermVisiteurschlistePermEditeurslistePermEditeurs liste_permsrepsbs _getiter_scs _getitem_s nonvisiblescontextsrepgrslgsgrschgvschgesgvsgesg(sreps AccessControlsgetSecurityManagersas _getattr_schlistePermNonVisiteurslistePermNonVisiteurschlistePermVisiteurslistePermVisiteurschlistePermEditeurslistePermEditeurs liste_permsbs _getiter_scs _getitem_s nonvisiblescontextsrepgrslgsgrschgvschgesgvsgesg((sScript (Python)szwo_droits_folders`  2  "    (szwo_droits_folder(szwo_droits_folder((sScript (Python)ssqU func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathq Utraverse_subpathq!U name_contextq"Ucontextq#usbU_dav_writelocksq$(U <Êq%(U Persistenceq&UPersistentMappingq'tq(tq)QU__ac_local_roles__q*}q+Uxavq,]q-UOwnerq.asUidq/Uzwo_droits_folderq0U_paramsq1Urepq2U func_codeq3(cShared.DC.Scripts.Signature FuncCode q4oq5}q6(U co_argcountq7KU co_varnamesq8(Urepq9U AccessControlq:UgetSecurityManagerq;UaU _getattr_qUchlistePermVisiteurq?UlistePermVisiteurq@UchlistePermEditeurqAUlistePermEditeurqBU liste_permqCUbU _getiter_qDUcU _getitem_qEU nonvisibleqFUcontextqGUrepgrqHUlgqIUgrqJUchgvqKUchgeqLUgvqMUgeqNUgtqOubu.


Cette page nécessite une identification.



' print ' Pour vous identifier sur le site,
cliquer sur Se connecter
' return printed aff="" aff=aff+'' aff=aff+''+context.title+'' aff=aff+'' aff=aff+'' aff=aff+'' rett=rett+'
' return aff q Utitleq Unoyauq U _filepathqU:Script (Python):/kzexp_zwook/zwo_lib/standard_print_headerqU_codeqTHc@s d„ZdS(Nc Cs tƒ}t|dƒdjo0|dIJ|dt|dƒdIJ|ƒSnd}|d}|d ttd ƒd }|d }|d }|d}|SdS(Nsdroit_vue_dossieris^



Cette page nécessite une identification.



s> Pour vous identifier sur le site,
cliquer sur Se connecter
sss s���titles���sDs>s"
(s_print_s_prints _getitem_smemsaffs _getattr_scontext(smems_print_s_prints _getitem_saffs _getattr_scontext((sScript (Python)sstandard_print_headers      (sstandard_print_header(sstandard_print_header((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerq usbU func_codeq!(cShared.DC.Scripts.Signature FuncCode q"oq#}q$(U co_argcountq%KU co_varnamesq&(Umemq'U_print_q(U_printq)U _getitem_q*Uaffq+U _getattr_q,Ucontextq-tq.ubU__ac_local_roles__q/}q0Ugregq1]q2UOwnerq3asUidq4Ustandard_print_headerq5U_paramsq6Umemq7U_dav_writelocksq8(U =q9(U Persistenceq:UPersistentMappingq;tq' here_obj=here_obj[elem] """ here_obj=mem['rep_obj'] #~~~~~~~~~ parsing de l'objet courrant ~~~~~~~~~~~~~~~~~~~ parse_obj=here_obj if chemin<>'bui68ddlk44' and chemin<>'': id_list=chemin.split(".") for a in range(len(id_list)): parse_obj=parse_obj[id_list[a]] aff='\n' aff=aff+'' #~~~~~~~~~ cote ~~~~~~~~~~~~~~~~~~~ if cote==1: aff=aff+'' aff=aff+'
' aff=aff+'' aff=aff+'' #aff=aff+'
' aff=aff+' '+parse_obj.getId()+'' aff=aff+'
' for dos in parse_obj.objectIds('Folder'): lieni='' aff=aff+'  '+lieni+' '+lieni+dos+'' aff=aff+'
' aff=aff+'
' aff=aff+'


' aff=aff+'
' #~~~~~~~~~ parsing de l'objet courrant ~~~~~~~~~~~~~~~~~~~ aff=aff+'\n' #~boucle affichage des images last_line=0 n=0 for img in parse_obj.objectValues('Image'): if img.content_type=='image/jpeg' or img.content_type=='image/gif' or img.content_type=='image/png': if n==last_line: aff=aff+'\n' aff=aff+'\n' aff=aff+'\n' n=n+1 if n>last_line+w_line: aff=aff+'\n' aff=aff+'\n' last_line=n aff=aff+'
\n' #aff=aff+'/ n='+str(n)+'/ last_line='+str(last_line)+' / t='+str(last_line+w_line) #if img.width' #else: aff=aff+'
' aff=aff+'' aff=aff+'' aff=aff+'
\n' aff=aff+'' aff=aff+img.getId()[:12]+' '+str(img.width)+'x'+str(img.height) aff=aff+'\n' aff=aff+'
' aff=aff+'
\n' aff=aff+'
' print aff return printed q Utitleq Unoyauq U _filepathqU6Script (Python):/kzexp_zwook/zwo_lib/standard_img_homeqU_codeqT$c@s d„ZdS(NcCsÔtƒ}dkl}|ƒ}t|dƒƒdjodSnd}d}d} d} d } | d} d t |d ƒ}|}|djo |d joTt|d ƒdƒ}x<ttt|ƒƒƒD]}t |t ||ƒƒ}qÉWnd}|d}| djoÄ|d}|d}|d}|dt|dƒƒd}|d}xYtt|dƒdƒƒD]<}d|d}|d|d||d}|d}qnW|d}|d }|d!}n|d"}|d#}d$}d$}x¸tt|d%ƒd&ƒƒD]›}t|d'ƒd(jp)t|d'ƒd)jpt|d'ƒd*joS||jo|d+}|d,}n|d-}|d.}|dt|d/ƒƒd0}|d1t|d/ƒƒd2t|ƒd3t|ƒd4}|d5}|d}|t t|dƒƒdd6…ƒd7tt|d8ƒƒd9tt|d:ƒƒ}|d;}|d<}|d=}|d}||| jo|d>}|d?}|}q§q q W|d@}|d<}||IJ|ƒSdS(AN(sgetSecurityManagerscalledByExecutableisnons bui68ddlk44iKiis#FFFFCCsÔ id_list=context.REQUEST.URL1.split("/") here_obj=context.zwook_obj() #print id_list[4:] #print here_obj.absolute_url() for elem in id_list[4:]: #print here_obj[elem].getId()+'
' here_obj=here_obj[elem] srep_objsssplits.s@ ss<s') return 1 #printintcase : affiche l'interieur d'une case def printintcase(aff,idcase,writeok): # recuperation du contenu de la case(cc) cc=val['cc'][idcase] #quelques tests sur contenu de la case #pour detecter les deux cas spéciaux. if len(cc)==1: tabinlist=cc[0].split('T') if len(tabinlist)>1: #1er cas spécial détecté : case contient tableau return printtab(aff,'T'+tabinlist[1],writeok) if cc[0]=='######': #2nd cas spécial détecté : detection de la zone principale return action_zone_principale if writeok==0: return 0 kkch=0 # affichage de case standart. # on affiche les elements (el = id element) ncc=[] for el in cc: if el in obj_in_conteneur: #zelem = element a afficher zelem=conteneur[el] #on essaye d'afficher l'element try: af=context.zwo_modules[zelem.element].view_html(mem,zelem) if af<>'': kkch=1 aff.append(af) except Exception, e_txt: if debug_mode==1: aff.append(str(e_txt)) else: aff.append("BgMd[%s]" % zelem.element) kkch=1 #on affiche l'espacement entre elements, #grace à la propriété disposition des elements. if zelem.hasProperty('disposition'): sp=zelem.disposition else: sp='*' if sp=="+": aff.append("
") kkch=1 if sp=="-": aff.append(" ") kkch=1 if sp=="--": aff.append("  ") kkch=1 if sp=="++": aff.append("

") kkch=1 #affichage point si rien dans la case. if kkch==0: aff.append('') return 1 #affiche un tableau def printtab(aff,tab,writeok): pt=val['pt'][tab] table=val['ct'][tab] ppt=[] if tab=='T1': if pt['hauteur'].strip()<>'': ppt.append(' height="%s"' % pt['hauteur']) else: ppt.append(' height="100%"') if pt['largeur'].strip()<>'': ppt.append(' width="%s"' % pt['largeur']) else: ppt.append(' width="100%"') else: ppt.append(' height="100%"') ppt.append(' width="100%"') ppt.append(' cellspacing="0" cellpadding="0" border="0"') ptcadre=pt['cadre'] if ptcadre<>'0' and ptcadre<>'': aff.append('') ppt.append(' class=Skinbordure%s' % tab) margetab="0" if pt['marge']<>'': margetab=pt['marge'] couleurfondtab="" if pt['couleurfond']<>'': couleurfondtab=pt['couleurfond'] couleurtextetab="" if pt['couleurtexte']<>'': couleurtextetab=pt['couleurtexte'] aligntab="left" if pt['align']<>'': aligntab=pt['align'] valigntab="top" if pt['valign']<>'': valigntab=pt['valign'] if writeok==1: aff.append('\n' % ''.join(ppt)) for ligne in table: if len(ligne)>0: if writeok==1: aff.append(' ') for idcase in ligne: if idcase<>'': writeok=printtdcase(aff,idcase,margetab,couleurfondtab,couleurtextetab,aligntab,valigntab,writeok) if writeok==1: aff.append(' \n') if writeok==1: aff.append('\n
ssds; sgetIdss
s objectIdssFolders s   s7 ss
s


s
s3 is objectValuessImages content_types image/jpegs image/gifs image/pngs s6 s$ s s6 s
sv
s absolute_urls">s s2
i s swidthsxsheights s
s
(s_print_s_prints AccessControlsgetSecurityManagersas _getattr_scheminslimgsw_line1scotescouleursw_lines _getitem_smemshere_objs parse_objsid_lists _getiter_srangeslensaffsdosslienis last_linesnsimgsstr(smems_print_s_prints AccessControlsgetSecurityManagersas _getattr_scheminslimgsw_line1scotescouleursw_lines _getitem_shere_objs parse_objsid_lists _getiter_srangeslensaffsdosslienis last_linesnsimgsstr((sScript (Python)sstandard_img_homes~                ?    :  S         (sstandard_img_home(sstandard_img_home((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerq usbU func_codeq!(cShared.DC.Scripts.Signature FuncCode q"oq#}q$(U co_argcountq%KU co_varnamesq&(Umemq'U_print_q(U_printq)U AccessControlq*UgetSecurityManagerq+UaU _getattr_q,Ucheminq-Ulimgq.Uw_line1q/Ucoteq0Ucouleurq1Uw_lineq2U _getitem_q3Uhere_objq4U parse_objq5Uid_listq6U _getiter_q7Urangeq8Ulenq9Uaffq:Udosq;UlieniqUstrq?tq@ubU__ac_local_roles__qA}qBUxavqC]qDUOwnerqEasUidqFUstandard_img_homeqGU_paramsqHUmemqIU_dav_writelocksqJ(U <ÌqK(U PersistenceqLUPersistentMappingqMtqNtqOQu. sqU func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathq Utraverse_subpathq!Uname_containerq"U containerq#usbU func_codeq$(cShared.DC.Scripts.Signature FuncCode q%oq&}q'(U co_argcountq(KU co_varnamesq)(Uuserq*Urolesq+U AccessControlq,UgetSecurityManagerq-UaU _getattr_q.Ucontextq/UrU_write_q0Uauq1tq2ubU__ac_local_roles__q3}q4Uxavq5]q6UOwnerq7asUidq8Uzwo_user_groupsq9U_paramsq:U user,rolesq;U_dav_writelocksq<(U <Íq=(U Persistenceq>UPersistentMappingq?tq@tqAQu. 1: f[h[0]]=h[1] else: f[h[0]]='' pt[d[1]]=f elif d[0]=='PC': # chaine pc e=d[2].split('/') f={} for g in e: h=g.split('=') if len(h)>1: f[h[0]]=h[1] else: f[h[0]]='' pc[d[1]]=f data['ct']=ct data['cc']=cc data['pc']=pc data['pt']=pt return data q Uwarningsq )U _filepathqU/Script (Python):/kzexp_zwook/zwo_lib/tab_to_valqU_codeqTc@s d„ZdS(NcCsbdkl}|ƒ}t|dƒƒdjodSnh}h}h}h}h} t|dƒdƒo¯x¬t t|dƒƒD]‘} t| dƒdƒ} t | d ƒd jokgi}t tt | dƒdƒd ƒƒD]}|t|dƒd ƒƒqÞ~t|ƒt | d ƒsqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq usbU_dav_writelocksq!(U <Îq"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Uxavq)]q*UOwnerq+asUidq,U tab_to_valq-U_paramsq.Urepq/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4KU co_varnamesq5(Urepq6U AccessControlq7UgetSecurityManagerq8UaU _getattr_q9Udataq:Uctq;UccqU _getiter_q?UlUdU _getitem_q@UappendqAU$append0qBUiU_write_qCUeUfUgUhUlenqDtqEubu. r2.absolute_url(): new_roles(l2r1,r1,username) r2.manage_clone(r1[id],id2) new_roles(l1r2,r2,username) if r1.absolute_url()<>r2.absolute_url(): new_roles(l1r1,r1,username) return clone_ok(dep,dest,idobj,idfin) return q Utitleq Unoyauq U _filepathqU,Script (Python):/kzexp_zwook/zwo_lib/zwo_cpyqU_codeqTH c@sed„ZdS(Nc svdkl}|ƒ}t|dƒƒdjodSnd„‰d„‰t‡‡d†} | ||||ƒdSdS(N(sgetSecurityManagerscalledByExecutableisnoncCs|t|dƒƒ}g}g}x:t|ƒD],}t|dƒ|ƒt|dƒ|ƒq+Wt|dƒdƒ||fSdS(Nsget_local_rolessappendsOwner(s _getattr_suserslsl0sl1s _getiter_sa(srepsusers _getattr_slsl0sl1s _getiter_sa((sScript (Python)s listes_roless cCsOt|ƒdjot|dƒ|gƒdSnt|dƒ||ƒdSdS(Nismanage_delLocalRolessmanage_setLocalRoles(slenslistes _getattr_srepsusername(slistesrepsusernameslens _getattr_((sScript (Python)s new_roless  c s|tjo |}ntttdƒdƒ}t|ƒ} ˆ||ƒ\} } ˆ||ƒ\} }ˆ| || ƒt|dƒƒt|dƒƒjoˆ||| ƒnt|dƒt||ƒ|ƒˆ| || ƒt|dƒƒt|dƒƒjoˆ| || ƒndSdS(NsREQUESTsAUTHENTICATED_USERs absolute_urls manage_clone(sid2sNonesids _getattr_scontextsusersstrsusernames listes_rolessr2sl1r2sl2r2sr1sl1r1sl2r1s new_roless _getitem_(sr1sr2sidsid2sNones _getattr_scontextsusersstrsusernames listes_rolessl1r2sl2r2sl1r1sl2r1s new_roless _getitem_(s listes_roless new_roles(sScript (Python)sclone_ok#s   %%( s AccessControlsgetSecurityManagersas _getattr_s listes_roless new_rolessNonesclone_oksdepsdestsidobjsidfin( sdepsdestsidobjsidfins AccessControlsgetSecurityManagersas _getattr_s listes_roless new_rolessNonesclone_ok((s listes_roless new_rolessScript (Python)szwo_cpys   (sNoneszwo_cpy(sNoneszwo_cpy((sScript (Python)ssqU func_defaultsq(NtqU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextq U name_subpathq!Utraverse_subpathq"Uname_containerq#U containerq$usbU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_argcountq)KU co_varnamesq*(Udepq+Udestq,Uidobjq-Uidfinq.U AccessControlq/UgetSecurityManagerq0UaU _getattr_q1U listes_rolesq2U new_rolesq3UNoneq4Uclone_okq5tq6ubU__ac_local_roles__q7}q8Uxavq9]q:UOwnerq;asUidqUdep,dest,idobj,idfin=Noneq?U_dav_writelocksq@(U <ÏqA(U PersistenceqBUPersistentMappingqCtqDtqEQu. 1 and rap < 1: dec2=dec[1].split('/zwo_bo/skin/') cont=context.zwo_info.skins[dec2[0]] curl1=mem['rep_url']+'/zwo_info/skins/'+dec2[0] curl=curl1+'/zwo_bo/skin/' elif mem.has_key('inskin') and mem['inskin']==1 or (rap > 1 and len(dec)>1): cont=context.zwo_info.skins[rep.zwo_dossier.skin] curl1=mem['rep_url']+'/zwo_info/skins/'+rep.zwo_dossier.skin if rap>1: curl=curl1 else: curl=curl1+'/zwo_bo/skin/' else: cont=rep curl1=rep.absolute_url() curl=curl1+'/zwo_bo/edit/' ### Nouvelle valeur incluse dans mem : # mem['parent'] : conteneur de l'objet (repertoire ou skin) # mem['parent_bo_url'] : url pour atteindre le back office du conteneur mem['parent']=cont mem['parent_bo_url']=curl return mem q Uwarningsq )UidqU mem_mod_dataqU_codeqT[c@sed„ZdS(NcCsVdkl}|ƒ}t|dƒƒdjodSn| otttdƒdƒƒ}nt|dƒ}t|dƒ}t|d ƒd ƒ} tt d ƒ|d ƒ} t | ƒd jo | d jovtt| d ƒd ƒd ƒ} ttttdƒdƒt| dƒƒ}t|dƒd t| dƒ}|d }nðt|dƒdƒot|dƒd jp| d jot | ƒd jottttdƒdƒtt|dƒdƒƒ}t|dƒd tt|dƒdƒ}| d jo |}q.|d }n#|}t|dƒƒ}|d}|t|ƒd<|t|ƒd<|SdS(N(sgetSecurityManagerscalledByExecutableisnonszwo_libsmem_datasurlsrep_objssplits/zwo_info/skins/s rapidedit.htmis /zwo_bo/skin/szwo_infosskinsisrep_urlshas_keysinskins zwo_dossiersskins absolute_urls /zwo_bo/edit/sparents parent_bo_url(s AccessControlsgetSecurityManagersas _getattr_smemscontexts _getitem_surlsrepsdecsstringsrapslensdec2scontscurl1scurls_write_(smems AccessControlsgetSecurityManagersas _getattr_scontexts _getitem_surlsrepsdecsstringsrapslensdec2scontscurl1scurls_write_((sScript (Python)s mem_mod_datas6   * I3)   (sNones mem_mod_data(sNones mem_mod_data((sScript (Python)ssqU func_defaultsq(NtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerq U containerq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Umemq(U AccessControlq)UgetSecurityManagerq*UaU _getattr_q+Ucontextq,U _getitem_q-Uurlq.Urepq/Udecq0Ustringq1Urapq2Ulenq3Udec2q4Ucontq5Ucurl1q6Ucurlq7U_write_q8tq9ubU__ac_local_roles__q:}q;Uxavq<]q=UOwnerq>asU _filepathq?U1Script (Python):/kzexp_zwook/zwo_lib/mem_mod_dataq@U_paramsqAUmem=NoneqBU_dav_writelocksqC(U <ÐqD(U PersistenceqEUPersistentMappingqFtqGtqHQu. 1: suite_url=dec[1].split('?')[0] list_url=suite_url.split('/') else: list_url=[] # on determine le repertoire (rep) et l'objet (obj) courrant. rep=zwook obj=zwook b=0 stop=False for a in list_url: if a=="zwo_modules" or a=="zwo_bo": stop=True if not stop: if b==0: b=1 elif b==1: if a in rep.objectIds(): if rep[a].hasProperty("type_zwook"): if rep[a].type_zwook=='dossier': rep=rep[a] obj=rep elif rep[a].type_zwook=='element': obj=rep[a] b=2 #analyse du repertoire courrant. #conf : repertoire de configuration de rep conf=rep.zwo_dossier #zwook_info : repertoire de données délocalisés zwook_info=zwook.zwo_info #on determine le skin (skin) skin_id=conf.skin if skin_id in zwook_info.skins.objectIds('Folder'): skin=zwook_info.skins[skin_id] else: skin_id='default' skin=zwook_info.skins['default'] if context.REQUEST.has_key('impose_skin'): skin_id=context.REQUEST.impose_skin skin=zwook_info.skins[skin_id] #### info utilisateurs #on recupere mes informations utilisateurs #initialisation username='Inconnu' user=None zwuser=None list_roles=[] dr_vue=0 dr_edit=0 dr_skin=0 dr_arbo=0 dr_conf=0 user_avatar='0.gif' avatar=zwo_url+'/zwo_info/images/avatar/0.gif' #donnée liés au repertoire (pour les droits locaux) s_list_v=conf.groupes_visiteurs s_list_a=conf.groupes_editeurs list_v=string.split(s_list_v+'&'+s_list_a,'&') list_a=s_list_a.split('&') #test si l'utilisateur est connecté if str(context.REQUEST.AUTHENTICATED_USER)=='Anonymous User': #si l'utilisateur est annonyme, on regarde si le dossier permete : # - qu'il accede au contenu if 'Anonymous' in list_v: dr_vue=1 # - qu'il puisse edité le contenu if 'Anonymous' in list_a: dr_edit=1 else: ##### si l'utilisateur est connecté : #recup user zope user=context.REQUEST.AUTHENTICATED_USER #recup login de l'utilisateur username=user.getUserName() #Test si l'utilisateur est bien un user zwook, if not username in zwook.zwo_info.users.objectIds('Folder'): #l'utilisateur est connecté donc user zope #mais il n'est pas user zwook #la fonction retourne None pour permettre de detecter le probleme. return #recupertation d'un avatar, si il existe. if zwook.zwo_info.users[username].hasProperty('avatar'): if zwook.zwo_info.users[username].avatar in zwook.zwo_info.images.avatar.objectIds(): user_avatar=zwook.zwo_info.users[username].avatar avatar=zwo_url+'/zwo_info/images/avatar/'+user_avatar #list_roles : recuperation des groupes zwook (c'est a dire les roles zopes) userrolestuple=user.getRolesInContext(racine) for a in userrolestuple: if not a in list_roles: if str(a)==a: list_roles.append(a) #recuperation user zwook zwuser=context.zwo_info.users[username] #on determine les droits de lecture et ecriture sur le repertoire for a in list_v: if a<>'': if a in list_roles: dr_vue=1 for a in list_a: if a<>'': if a in list_roles: dr_edit=1 #check droit de configuration if 'config_zwook' in list_roles: dr_conf=1 dr_skin=1 dr_arbo=1 #check d'edition de skin if 'skin_editor' in list_roles: dr_skin=1 #check manage page. if 'pages_manager' in list_roles: dr_arbo=1 ############################################################## ### RECAPITULATIF DES VALEURS DE MEM #################### ############################################################## ################################### ## Gestion des objects et urls ################################### # url : url demandée par le navigateur. # la racine est le repertoire qui contient tout le zwook. # racine_obj : object racine du zwook. # racine_url : url de la racine du zwook. # zwook_obj : object qui contient les données localisés du zwook. # zwook_url : url qui contient les données localisés du zwook. # c'est a dire l'url du site. #rep_obj : repertoire qui contient l'objet de la requete url. #rep_url : url de ce repertoire. #rep_id : id (nom zope) de ce repertoire. #rep_toi : titre ou id de ce repertoire. #obj_obj : object visé par la requete url. #obj_id : id (nom zope) de cet objet. ####Exemple simple : http://serveur.test:8080/myzwook/zwook/rubrique #mem['url']=http://serveur.test:8080/myzwook//zwook/rubrique/index_html #mem['racine_url']=http://serveur.test:8080/myzwook #mem['zwo_url']=http://serveur.test:8080/myzwook/zwook #mem['rep_url']=http://serveur.test:8080/myzwook/zwook/rubrique ####Exemple back office : http://serveur.test:8080/myzwook/zwook/rubrique/zwo_bo/edit/index_html #mem['url']=http://serveur.test:8080/myzwook/zwo_bo/edit/zwook/rubrique/index_html #mem['racine_url']=http://serveur.test:8080/myzwook #mem['zwo_url']=http://serveur.test:8080/myzwook/zwook #mem['rep_url']=http://serveur.test:8080/myzwook/zwook/rubrique ####Exemple domaine mappé : http://www.domaine.com/rubrique #mem['url']=http://www.domaine.com/rubrique/index_html #mem['racine_url']=http://www.domaine.com #mem['zwo_url']=http://www.domaine.com #mem['rep_url']=http://www.domaine.com/rubrique mem['url']=url mem['racine_obj']=racine mem['racine_url']=racine.absolute_url() mem['zwo_obj']=zwook mem['zwo_url']=zwo_url mem['rep_obj']=rep mem['rep_url']=rep.absolute_url() mem['rep_id']=rep.getId() mem['rep_toi']=rep.title_or_id() mem['obj_obj']=obj mem['obj_id']=obj.getId() ################################### ## gestion des utilisateurs ################################### # mem['user_obj'] : Object user zope (acl_user) # mem['user_zw_obj'] : Object user zwook (zwo_info/users/nom) # mem['user_id'] : login du user # mem['user_roles_id'] : liste des roles zope de l'utilisateur (groupes) # mem['user_avatar_url'] : url pour afficher l'avatar de l'utilisateur mem['user_obj']=user mem['user_zw_obj']=zwuser mem['user_id']=username mem['user_roles_id']=list_roles mem['user_avatar_url']=avatar ################################### ## object utiles ################################### #mem['config_obj'] : objet info du repertoire conteneur (zwo_dossier) #mem['zwo_info'] : donnée délocalisé du zwook (zwo_info) mem['config_obj']=conf mem['zwo_info']=zwook_info ################################### ## skin ################################### #mem['skin_id'] : id (nom zope) du skin #mem['skin_obj'] : objet du skin mem['skin_id']=skin_id mem['skin_obj']=skin ################################### ## droits utilisateur ################################### # 0 : pas le droit # 1 : droit OK #mem['droit_vue_dossier'] : droit de voir le contenu du dossier #mem['droit_edit_dossier'] : droit d'éditer le contenu du dossier #mem['droit_arbo'] : droit d'administrer les dossiers #mem['droit_edit_skin'] : droit edition de skin #mem['droit_config_dossier'] : droit administration zwook. mem['droit_vue_dossier']=dr_vue mem['droit_edit_dossier']=dr_edit mem['droit_arbo']=dr_arbo mem['droit_edit_skin']=dr_skin mem['droit_config_dossier']=dr_conf return mem q Uwarningsq )U _filepathqU-Script (Python):/kzexp_zwook/zwo_lib/mem_dataqU_codeqT„c@s d„ZdS(Nc/9CsRdkl}|ƒ}t|dƒƒdjodSnh}tttdƒdƒ}ttdƒƒ}t|dƒ} t| d ƒƒ} t|d ƒ| ƒ} t | ƒd jo@t tt | d ƒd ƒd ƒd ƒ}t|d ƒdƒ}ng}| }| }d }t}xt|ƒD]}|djp |djo t}n| oÜ|d jo d }q)|d jo´|t|dƒƒjo—tt ||ƒdƒdƒottt ||ƒdƒdjot ||ƒ}|}qtt ||ƒdƒdjot ||ƒ}d}qq!q%q)qqWt|dƒ}t| dƒ}t|dƒ}|tt|dƒdƒdƒjot t|dƒ|ƒ}nd}t t|dƒdƒ}tttdƒdƒdƒo4tttdƒdƒ}t t|dƒ|ƒ}nd}t}t}g}d } d }!d }"d }#d }$d}%| d }&t|d!ƒ}'t|d"ƒ}(tt)d ƒ|'d#|(d#ƒ}*t|(d ƒd#ƒ}+t,tttdƒd$ƒƒd%jo2d&|*jo d } nd&|+jo d }!q-n2tttdƒd$ƒ}t|d'ƒƒ}|ttt| dƒd(ƒdƒdƒj odSntt tt| dƒd(ƒ|ƒdƒd)ƒoŠtt tt| dƒd(ƒ|ƒd)ƒtttt| dƒd*ƒd)ƒdƒƒjo.tt tt| dƒd(ƒ|ƒd)ƒ}%qn| d+|%}&t|d,ƒ|ƒ}-xPt|-ƒD]B}||j o.t,|ƒ|jot|d-ƒ|ƒqŠqHqHWt tttdƒd(ƒ|ƒ}x<t|*ƒD].}|d.jo||jo d } qêq¼q¼Wx<t|+ƒD].}|d.jo||jo d }!q)qûqûWd/|jod }$d }"d }#nd0|jo d }"nd1|jo d }#n|t.|ƒd2<|t.|ƒd3<|t.|ƒd?<|t.|ƒd@<|t.|ƒdA<|t.|ƒdB<|&t.|ƒdC<|t.|ƒdD<|t.|ƒd<|t.|ƒdE<|t.|ƒdF<| t.|ƒdG<|!t.|ƒdH<|#t.|ƒdI<|"t.|ƒdJ<|$t.|ƒdK<|SdS(LN(sgetSecurityManagerscalledByExecutableisnonsREQUESTsURLsacl_objszwooks absolute_urlssplitis?is/s zwo_modulesszwo_bos objectIdss hasPropertys type_zwooksdossierselements zwo_dossierszwo_infosskinsskinssFoldersdefaultshas_keys impose_skinsInconnus0.gifs/zwo_info/images/avatar/0.gifsgroupes_visiteurssgroupes_editeurss&sAUTHENTICATED_USERsAnonymous Users Anonymouss getUserNamesuserssavatarsimagess/zwo_info/images/avatar/sgetRolesInContextsappendss config_zwooks skin_editors pages_managersurls racine_objs racine_urlszwo_objszwo_urlsrep_objsrep_urlsgetIdsrep_ids title_or_idsrep_toisobj_objsobj_idsuser_objs user_zw_objsuser_ids user_roles_idsuser_avatar_urls config_objsskin_idsskin_objsdroit_vue_dossiersdroit_edit_dossiers droit_arbosdroit_edit_skinsdroit_config_dossier(/s AccessControlsgetSecurityManagersas _getattr_smems containersurlscontextsracineszwookszwo_urlsdecslens _getitem_s suite_urlslist_urlsrepsobjsbsFalsesstops _getiter_sTruesconfs zwook_infosskin_idsskinsusernamesNonesuserszwusers list_rolessdr_vuesdr_editsdr_skinsdr_arbosdr_confs user_avatarsavatarss_list_vss_list_asstringslist_vslist_asstrsuserrolestuples_write_(/s AccessControlsgetSecurityManagersas _getattr_smems containersurlscontextsracineszwookszwo_urlsdecslens _getitem_s suite_urlslist_urlsrepsobjsbsFalsesstops _getiter_sTruesconfs zwook_infosskin_idsskinsusernamesNonesuserszwusers list_rolessdr_vuesdr_editsdr_skinsdr_arbosdr_confs user_avatarsavatarss_list_vss_list_asstringslist_vslist_asstrsuserrolestuples_write_((sScript (Python)smem_datasö  '      %  %   /%X2 !            (  (smem_data(smem_data((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextq usbU_dav_writelocksq!(U <Ñq"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Uxavq)]q*UOwnerq+asUidq,Umem_dataq-U_paramsq.UU func_codeq/(cShared.DC.Scripts.Signature FuncCode q0oq1}q2(U co_argcountq3KU co_varnamesq4(U AccessControlq5UgetSecurityManagerq6UaU _getattr_q7Umemq8U containerq9Uurlq:Ucontextq;UracineqUdecq?Ulenq@U _getitem_qAU suite_urlqBUlist_urlqCUrepqDUobjqEUbUFalseqFUstopqGU _getiter_qHUTrueqIUconfqJU zwook_infoqKUskin_idqLUskinqMUusernameqNUNoneqOUuserqPUzwuserqQU list_rolesqRUdr_vueqSUdr_editqTUdr_skinqUUdr_arboqVUdr_confqWU user_avatarqXUavatarqYUs_list_vqZUs_list_aq[Ustringq\Ulist_vq]Ulist_aq^Ustrq_Uuserrolestupleq`U_write_qatqbubu. tq?tq@QUepoz_button_hyperlink.gifqA(U <ÞqB(hUImageqCtqDtqEQUepoz_button_tools.gifqF(U <ßqG(hUImageqHtqItqJQUtitleqKUUepoz_button_subscript.gifqL(U <àqM(hUImageqNtqOtqPQUepoz_button_strikethrough.gifqQ(U <áqR(hUImageqStqTtqUQUepoz_script_color.htmlqV(U <âqW(hU DTMLDocumentqXtqYtqZQUwysiwyg_support.ptq[(U <Ûq\(hUZopePageTemplateq]tq^tq_QUepoz_lang_zh-cn.js.dtmlq`(U <ãqa(hU DTMLDocumentqbtqctqdQU epoz_lang_frqe(U <äqf(hU DTMLDocumentqgtqhtqiQUepoz_button_textcolor.gifqj(U <åqk(hUImageqltqmtqnQUepoz_button_unformat.gifqo(U <æqp(hUImageqqtqrtqsQU vcXMLRPC.jsqt(U <çqu(hU DTMLDocumentqvtqwtqxQU_objectsqy(}qz(U meta_typeq{UImageq|h5hUOwnerr?ash~(U =r@(hUImagerAtrBtrCQu. sq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUjamesq]q UOwnerq!asUidq"U get_headerq#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_argcountq)KU co_varnamesq*(U _getattr_q+hUmemq,tq-ubu.

Bienvenue Zwookien

' print 'Acces non authorisé : vous êtes connecté avec votre utilisateur zope !

' print 'Méthode a suivre :
' print ' 1) Eteignez tous vos navigateurs pour vous déconnecter
' print ' 2) Connectez sur l\'url : '+mem['zwo_url']+'
' print ' 3) Utiliser le login "admin" et le mot de passe "admin".
' print ' 4) Suivre les instructions pour changer le mot de passe.
' print 'Bonne chance.
' print '' return printed #~ check droits rep zwook #~ ############# checkup roles ############ mem['zwo_obj'].manage_role('Anonymous',permissions=[]) mem['zwo_obj'].manage_role('Authenticated',permissions=[]) mem['zwo_obj'].manage_role('Manager',permissions=[]) mem['zwo_obj'].manage_role('config_zwook',permissions=[]) #Affiche le link vers le modificateur de password de admin. print '

Bienvenue Zwookien

' print '

Outil de première configuation :

' print 'Pour pouvoir activer votre zwook, changer votre mot de passe !' print '' return printed q U_WebDAV_access_Permissionq (hhtq U_View_History_Permissionq (hhtqU_Change_bindings_Permissionq(hhtqU'_Access_contents_information_Permissionq(hhtqUidqUzwo_initialise_passwordqU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q(U co_argcountqKU co_varnamesq(UmemqU_print_qU_printqU AccessControlqUgetSecurityManagerqUaU _getattr_q U _getitem_q!Ucontextq"tq#ubU!_Change_Python_Scripts_Permissionq$(hhtq%Uerrorsq&)U_Delete_objects_Permissionq'(hhtq(U Script_magicq)KU_codeq*T¤c@s d„ZdS(Nc )Csƒtƒ}dkl}|ƒ}t|dƒƒdjodSndtttt|dƒdƒdƒd ƒƒj oµttt|dƒdƒd ƒd ƒo,ttt|dƒdƒd ƒd gƒnttt|dƒdƒd ƒd ddƒttttdƒdƒdƒt|dƒƒdSndt|dƒj ov|dIJ|dIJ|dIJ|dIJ|dt|dƒdIJ|dIJ|dIJ|dIJ|dIJ|ƒSntt|d ƒd!ƒd"d#gƒtt|d ƒd!ƒd$d#gƒtt|d ƒd!ƒd%d#gƒtt|d ƒd!ƒdd#gƒ|dIJ|d&IJ|d't|dƒd(IJ|dIJ|ƒSdS()N(sgetSecurityManagerscalledByExecutableisnonsadmins racine_objszwo_infosuserss objectIdss hasPropertys checkpasswdsmanage_delPropertiessmanage_addPropertyisintsREQUESTsRESPONSEsredirectszwo_urls config_zwooks user_roles_ids'

Bienvenue Zwookien

sRAcces non authorisé : vous êtes connecté avec votre utilisateur zope !

sMéthode a suivre :
s= 1) Eteignez tous vos navigateurs pour vous déconnecter
s 2) Connectez sur l'url : s
s? 3) Utiliser le login "admin" et le mot de passe "admin".
s? 4) Suivre les instructions pour changer le mot de passe.
sBonne chance.
sszwo_objs manage_roles Anonymouss permissionss AuthenticatedsManagers)

Outil de première configuation :

s+Pour pouvoir activer votre zwook, changer votre mot de passe !( s_print_s_prints AccessControlsgetSecurityManagersas _getattr_s _getitem_smemscontext( smems_print_s_prints AccessControlsgetSecurityManagersas _getattr_s _getitem_scontext((sScript (Python)szwo_initialise_passwords<   >(,+%        """   (szwo_initialise_password(szwo_initialise_password((sScript (Python)ssq+U_View_Permissionq,(hhtq-U Python_magicq.U;ò q/Uwarningsq0)U_Change_proxy_roles_Permissionq1(hhtq2U_Copy_or_Move_Permissionq3(hhtq4U#_View_management_screens_Permissionq5(hhtq6U!_Change_cache_settings_Permissionq7(hhtq8U _filepathq9U """ aff.append(js) ################################################ # align global if fp('align')=='center': aff.append('
') if fp('align')=='right': aff.append('
') ################################################ ################################################ # affichage du skin ################################################ #recuperation de la structure de positionement (val) #elle indique la structure du tableau a afficher #ainsi que le contenu des cases. val=context.zwo_lib.tab_to_val(conteneur) # la fonction printtab affiche un tableau #en utilisant la fonction printtdcase et printintcase #qui affiche une case (les balises td et l'interieur). #descriptions des parametres des fonctions #englobant la case, et donc la couleur par défaut de la case. #margetab : marge du tableau #couleurfondtab : couleur de fond du tableau #couleurtextetab : couleur de text du tableau #aligntab : alignement horizontale du tableau #valigntab : alignement vertical du tableau #writeok : le flag qui indique si on est avant #la zone principale (c'est a dire ce qui doit être #afficher. La fonction retourne un nouvelle valeur pour writeok #idcase : identifiant de case #printtdcase : affiche la balise tds et appelle printintcase def printtdcase(aff,idcase,margetab,couleurfondtab,couleurtextetab,aligntab,valigntab,writeok): #affichage ouverture balises pc=val['pc'][idcase] margeint=margetab if pc['marge']<>'': margeint=pc['marge'] if writeok==1: pccc=[] if pc['colspan']<>'' and pc['colspan']<>'1': pccc.append(' colspan="%s"' % pc['colspan']) if pc['rowspan']<>'' and pc['rowspan']<>'1': pccc.append(' rowspan="%s"' % pc['rowspan']) ppc=[] if pc['hauteur']<>'': ppc.append(' height="%s"' % pc['hauteur']) if pc['largeur']<>'': ppc.append(' width="%s"' % pc['largeur']) if pc['align']<>'': ppc.append(' align="%s"' % pc['align']) else : ppc.append(' align="%s"' % aligntab) if pc['valign']<>'': ppc.append(' valign="%s"' % pc['valign']) else : ppc.append(' valign="%s"' % valigntab) if pc['couleurfond']<>'': ppc.append(' bgcolor="%s"' % pc['couleurfond']) elif couleurfondtab<>'': ppc.append(' bgcolor="%s"' % couleurfondtab) textcolor=couleurtextetab if pc['couleurtexte']<>'': textcolor=pc['couleurtexte'] ppc.append(' style="color:%s"' % textcolor) ppcc=[] pcase=pc['cadre'] if pcase<>'0' and pcase<>'': aff.append('') ppcc.append(' class="Skinbordure%s"' % idcase) afppc=''.join(ppc) afpccc=''.join(pccc) afppcc=''.join(ppcc) if margeint<>'0': aff.append('') else: aff.append('\n' % (afppc,afppcc,afpccc)) #Affichage cellule writeok=printintcase(aff,idcase,writeok) if writeok==0: return 0 #affichage fermetures balises if margeint<>'0': aff.append('\n \n
') aff.append('
') return writeok printtab(aff,'T1',initwriteok) return ''.join(aff) q Utitleq Unoyauq U _filepathqU=Script (Python):/kzexp_zwook_cvs/zwo_lib/standard_html_headerqU_codeqTâ.c@s d„ZdS(Nc$=sïtƒ}d‰tˆdƒdjoi|dIJ|dIJ|dIJ|dIJ|dtˆd ƒd IJ|d tˆd ƒd IJ|ƒSntttdƒdƒ}t|dƒdƒokt|dƒdjoQd}|d}|dttdƒd}|d}|d}|d}|Sq'ng}dt ˆƒdƒdjo-t|d"ƒd?|d>ƒ|d>ƒfƒnt|d"ƒd@ƒ|dAƒdjo-t|d"ƒdB|dAƒ|dAƒfƒnt|d"ƒdCƒ|dDƒdjo!t|d"ƒdE|dDƒƒn|dFƒdjo0t|d"ƒdGtˆd ƒ|dFƒfƒnt|d"ƒdHƒdI}t|d"ƒ|ƒ|dJƒdKjot|d"ƒdLƒn|dJƒdMjot|d"ƒdNƒntttdOƒdPƒˆƒ‰‡‡dQ†‰‡‡‡‡‡‡‡ dR†‰‡‡dS†‰ˆ|dT| ƒtddUƒ|ƒSdS(VNisdroit_vue_dossieris



s†

s2Cette page nécessite une identification.


s3

Pour vous identifier cliquer sur s [ Se connecter ]

s

[ Accueil ]

sREQUESTsSESSIONshas_keysvprints1sss s���titles���sDs>s"(s _getitem_svalsidcasespcsmargetabsmargeintswriteokspcccs _getattr_sppcsaligntabs valigntabscouleurfondtabscouleurtextetabs textcolorsppccspcasesaffsafppcsafpcccsafppccs printintcase(saffsidcasesmargetabscouleurfondtabscouleurtextetabsaligntabs valigntabswriteoks _getitem_svalspcsmargeintspcccs _getattr_sppcs textcolorsppccspcasesafppcsafpcccsafppccs printintcase(s printintcasesval(sScript (Python)s printtdcase¼sb  ,$,!!!$$!)7! csÃttˆdƒ|ƒ}t|ƒdjottt|dƒdƒdƒ}t|ƒdjo!ˆ|dt|dƒ|ƒSnt|dƒdjoˆSqŸn|djodSnd} g} xÔt |ƒD]Æ}|ˆjo³tˆ|ƒ}yattttdƒt|dƒƒd ƒˆ|ƒ}|d jod} t|d ƒ|ƒnWnetj oY}ˆdjot|d ƒt|ƒƒn!t|d ƒd t|dƒƒd} nXt|d ƒdƒot|dƒ}nd}|djot|d ƒdƒd} n|djot|d ƒdƒd} n|djot|d ƒdƒd} n|djot|d ƒdƒd} q“qÍqÍW| djot|d ƒdƒndSdS(NscciissplitsTs######s zwo_modulesselements view_htmlssappendsBgMd[%s]s hasPropertys dispositions*s+s
s-s s--s   s++s

s5(s _getitem_svalsidcasesccslens _getattr_s tabinlistsprinttabsaffswriteoksaction_zone_principaleskkchsnccs _getiter_selsobj_in_conteneurs conteneurszelemscontextsmemsafs Exceptionse_txts debug_modesstrssp(saffsidcaseswriteoks _getitem_svalsccslens _getattr_s tabinlistsprinttabsaction_zone_principaleskkchsnccs _getiter_selsobj_in_conteneurs conteneurszelemscontextsmemsafs Exceptionse_txts debug_modesstrssp(svalsmemsaction_zone_principales conteneursprinttabs debug_modesobj_in_conteneur(sScript (Python)s printintcaseÿsV!    3     c+sÒttˆdƒ|ƒ}ttˆdƒ|ƒ}g}|djo¶tt|dƒdƒƒdjo$t|dƒdt|dƒƒnt|dƒd ƒtt|d ƒdƒƒdjo$t|dƒd t|d ƒƒqt|dƒd ƒn't|dƒd ƒt|dƒd ƒt|dƒd ƒt|dƒ} | djo | djojt|dƒdƒt|dƒd|| t|dƒfƒt|dƒdƒt|dƒd|ƒnd} t|dƒdjot|dƒ} nd} t|dƒdjot|dƒ} nd} t|dƒdjot|dƒ} nd} t|dƒdjot|dƒ} nd}t|dƒdjot|dƒ}n|djo*t|dƒdtddƒ|ƒƒnx¼t|ƒD]®}t|ƒdjo•|djot|dƒd ƒnxFt|ƒD]8}|djo%ˆ||| | | | ||ƒ}q>q>W|djot|dƒd!ƒq¢qôqôW|djot|dƒd"ƒn|SdS(#NsptsctsT1shauteursstripssappends height="%s"s height="100%"slargeurs width="%s"s width="100%"s+ cellspacing="0" cellpadding="0" border="0"scadres0ss class=Skinbordure%ssmarges couleurfonds couleurtextesleftsalignstopsvalignis
sinskinsskin_objs objectIdssrep_toiszwo_objszwo_infossitesappends s%s - %s s config_objs hasPropertysmetasssplits!!s=scontents s s spages/cs/tˆdƒ|ƒotˆ|ƒSndSdS(Nshas_keys(s _getattr_stppskeys _getitem_(skeys _getattr_stpps _getitem_(stpp(sScript (Python)sfpfsssû salignscenters
srights
szwo_libs tab_to_valc,sdttˆdƒ|ƒ} |} t| dƒdjot| dƒ} n|djoªg} t| dƒdjot| dƒdjo$t| dƒdt| dƒƒnt| d ƒdjot| d ƒdjo$t| dƒd t| d ƒƒng}t| d ƒdjo$t|dƒd t| d ƒƒnt| d ƒdjo$t|dƒdt| d ƒƒnt| dƒdjo$t|dƒdt| dƒƒnt|dƒd|ƒt| dƒdjo$t|dƒdt| dƒƒnt|dƒd|ƒt| dƒdjo$t|dƒdt| dƒƒn)|djot|dƒd|ƒn|}t| dƒdjo*t| dƒ}t|dƒd|ƒng}t| dƒ}|djo |djojt|dƒdƒt|dƒd||t| dƒfƒt|dƒdƒt|dƒd|ƒntddƒ|ƒ}tddƒ| ƒ}tddƒ|ƒ}| djo7t|dƒd|||d | d!|d"ƒqþt|dƒd#|||fƒnˆ|||ƒ}|d$jod$Sn| djot|dƒd%ƒnt|dƒd&ƒdSdS('Nspcsmargesiscolspans1sappends colspan="%s"srowspans rowspan="%s"shauteurs height="%s"slargeurs width="%s"saligns align="%s"svaligns valign="%s"s couleurfonds bgcolor="%s"s couleurtextes style="color:%s"scadres0ss class="Skinbordure%s"sjoinss is
s
sjoinis s s
(s _getitem_svalstabsptstablesppts _getattr_sptcadresaffsmargetabscouleurfondtabscouleurtextetabsaligntabs valigntabswriteoks _getiter_sligneslensidcases printtdcase(saffstabswriteoks _getitem_svalsptstablesppts _getattr_sptcadresmargetabscouleurfondtabscouleurtextetabsaligntabs valigntabs _getiter_sligneslensidcases printtdcase(s printtdcasesval(sScript (Python)sprinttab?sd %$%$)'   )sT1sjoin($s_print_s_prints debug_modes _getitem_smems _getattr_scontextssessaffs_write_saction_zone_principales initwriteoks conteneursobj_in_conteneurs titre_pages titre_sites _getiter_slsdicosokschsdec2slensdico2sksstringscrsetstppsasdecsfpsjssvals printtdcases printintcasesprinttab($smems_print_s_prints debug_modes _getitem_s _getattr_scontextssessaffs_write_saction_zone_principales initwriteoks conteneursobj_in_conteneurs titre_pages titre_sites _getiter_slsdicosokschsdec2slensdico2sksstringscrsetstppsasdecsfpsjssvals printintcases printtdcasesprinttab(( smems printintcasesvalsaction_zone_principalesprinttabs conteneurs printtdcases debug_modestppsobj_in_conteneursScript (Python)sstandard_html_headers°           $ %)  $*1% .--0  C@A(sstandard_html_header(sstandard_html_header((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq usbU_dav_writelocksq!(U =q"(U Persistenceq#UPersistentMappingq$ttQU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asUidq*Ustandard_html_headerq+U_paramsq,Umemq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Umemq4U_print_q5U_printq6U debug_modeq7U _getitem_q8U _getattr_q9Ucontextq:Usesq;UaffqU initwriteokq?U conteneurq@Uobj_in_conteneurqAU titre_pageqBU titre_siteqCU _getiter_qDUlUdicoqEUokqFUchqGUdec2qHUlenqIUdico2qJUkUstringqKUcrsetqLUtppqMUaUdecqNUfpqOUjsqPUvalqQU printintcaseqRU printtdcaseqSUprinttabqTtqUubu. <Œa((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U =°q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U moderateurq Uxavier@emencia.comqUhelpq(U =±q(hU PythonScriptqtqtqQUtitleqUAnimation flashqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(hhhUnew_okqu}q(hhhhu}q(hhhU config_okq u}q!(U meta_typeq"UScript (Python)q#Uidq$U view_htmlq%u}q&(U meta_typeq'UScript (Python)q(Uidq)Uhelpq*u}q+(U meta_typeq,UImageq-Uidq.U icone.pngq/utq0U _propertiesq1(}q2(Utypeq3Ustringq4h$Utitleq5Umodeq6Uwu}q7(h3Ustringq8h$Uskinq9u}q:(Utypeq;Ustringqu}q?(Utypeq@UintqAUidqBUnoteqCu}qD(h@UstringqEhBUversionqFu}qG(h@hEhBUdevqHu}qI(h@hEhBU certifdevqJu}qK(h@hEhBh u}qL(h@hEhBh u}qM(UtypeqNUlinesqOUidqPU descriptionqQutqRh(U =³qS(hU PythonScriptqTtqUtqVQhHU80%qWhJUnonqXhCK7hFU0.9qYU view_htmlqZ(U =´q[(hU PythonScriptq\tq]tq^QUzone_principaleq_U1h (U =µq`(hU PythonScriptqatqbtqcQUskinqdU1h(U =²qe(hU PythonScriptqftqgtqhQU icone.pngqi(U =¶qj(U OFS.ImageqkUImageqltqmtqnQU__ac_local_roles__qo}qphUflashqqhQ(UDCe module permet d'intégrer des animations flash sur votre système. qrUf=> Il est cependant essentiel de rappeler que les utilisateurs finaux n'ont pas tous le plug in flash.qsUUUtqtu. <~((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U =)q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U moderateurq U p4@zwook.orgqU descriptionq(URss feed readerqUtqUtitleqULecteur de fil rssqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(U meta_typeqUScript (Python)qUidqUnew_okqu}q(U meta_typeq UScript (Python)q!Uidq"U config_htmlq#u}q$(h h!h"U config_okq%u}q&(U meta_typeq'UScript (Python)q(Uidq)U view_htmlq*u}q+(U meta_typeq,UImageq-Uidq.U icone.pngq/utq0Unew_htmlq1(U =+q2(hU PythonScriptq3tq4tq5QUdevq6U90%q7U certifdevq8Unonq9Unoteq:KKUversionq;U0.6q(hU PythonScriptq?tq@tqAQUzone_principaleqBU1U config_okqC(U =-qD(hU PythonScriptqEtqFtqGQU _propertiesqH(}qI(UtypeqJUstringqKUidqLUtitleqMUmodeqNUwu}qO(UtypeqPUstringqQUidqRU experimentalqSu}qT(UtypeqUUintqVUidqWUnoteqXu}qY(hUUstringqZhWUversionq[u}q\(hUhZhWUdevq]u}q^(hUhZhWU certifdevq_u}q`(hUhZhWU certifwebqau}qb(hUhZhWU moderateurqcu}qd(UtypeqeUlinesqfUidqgU descriptionqhu}qi(UtypeqjUstringqkUidqlhButqmUnew_okqn(U =*qo(hU PythonScriptqptqqtqrQh/(U =.qs(U OFS.ImageqtUImagequtqvtqwQU__ac_local_roles__qx}qyUidqzU rss_readerq{U experimentalq|Uu. <¡((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >Åq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUnew_htmlq (U >Æq (hU PythonScriptq tqtqQU moderateurqUaucunqU descriptionq(UtqUtitleqU^Base de code pour module : copier-coller ce dossier et le renomer pour faire un nouveau moduleqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(U meta_typeqUScript (Python)qUidqUnew_okq u}q!(U meta_typeq"UScript (Python)q#Uidq$U config_htmlq%u}q&(h"h#h$U config_okq'u}q((U meta_typeq)UScript (Python)q*Uidq+U view_htmlq,u}q-(U meta_typeq.UImageq/Uidq0U icone.pngq1utq2U certifwebq3Unonq4Udevq5U5%q6Uidq7Uexample_moduleq8Unoteq9JÿÿÿÿUversionq:U0.1q;U view_htmlq<(U >Èq=(hU PythonScriptq>tq?tq@QU config_okqA(U >ÉqB(hU PythonScriptqCtqDtqEQU _propertiesqF(}qG(UtypeqHUstringqIUidqJUtitleqKUmodeqLUwu}qM(UtypeqNUstringqOUidqPU experimentalqQu}qR(UtypeqSUintqTUidqUUnoteqVu}qW(hSUstringqXhUUversionqYu}qZ(hShXhUUdevq[u}q\(hShXhUU certifdevq]u}q^(hShXhUU certifwebq_u}q`(hShXhUU moderateurqau}qb(UtypeqcUlinesqdUidqeU descriptionqfutqgUnew_okqh(U >Çqi(hU PythonScriptqjtqktqlQh1(U >Êqm(U OFS.ImageqnUImageqotqptqqQU__ac_local_roles__qr}qsU certifdevqtUnonquU experimentalqvUu. <:((U OFS.FolderqUFolderqtqNt.}q(Uhelpq(U =/q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU config_okq (U =0q (hU PythonScriptq tqtqQUskinqU1Unew_okq(U =1q(hU PythonScriptqtqtqQUidqUtextqU certifwebqUnonqUtitleqU Texte brutqUnoteqKZUversionqUbeta 1qU view_htmlq(U =2q (hU PythonScriptq!tq"tq#QU_objectsq$(}q%(U meta_typeq&UScript (Python)q'hUnew_htmlq(u}q)(h&h'hhu}q*(h&h'hU config_htmlq+u}q,(h&h'hh u}q-(U meta_typeq.UScript (Python)q/Uidq0Urapidedit_htmlq1u}q2(h.h/h0U rapidedit_okq3u}q4(U meta_typeq5UScript (Python)q6Uidq7Uhelpq8u}q9(U meta_typeq:UScript (Python)q;Uidq(U meta_typeq?UImageq@UidqAU icone.pngqButqCh+(U =3qD(hU PythonScriptqEtqFtqGQh((U =4qH(hU PythonScriptqItqJtqKQh3(U =5qL(hU PythonScriptqMtqNtqOQU descriptionqP(UEditer du texte ou de l'HTML.qQU‹Option: vous pouvez decider d'activer le rapid edit. Cette option permet la modification rapide de textes sans rentrer dans le back office qRUUtqSh1(U =6qT(hU PythonScriptqUtqVtqWQU certifdevqXUnonqYU__ac_local_roles__qZ}q[Udevq\U99%q]Uzone_principaleq^U1U _propertiesq_(}q`(UtypeqaUstringqbUidqcUtitleqdUmodeqeUwu}qf(haUstringqghcUskinqhu}qi(UtypeqjUstringqkUidqlUzone_principaleqmu}qn(UtypeqoUintqpUidqqUnoteqru}qs(hoUstringqthqUversionquu}qv(hohthqUdevqwu}qx(hohthqU certifdevqyu}qz(hohthqU certifwebq{u}q|(hohthqU moderateurq}u}q~(UtypeqUlinesq€UidqU descriptionq‚utqƒhB(U =7q„(U OFS.Imageq…UImageq†tq‡tqˆQU moderateurq‰U xav@1et0.orgqŠu. <€’((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U =8q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U moderateurq Ugreg@emencia.comqUhelpq(U =9q(hU PythonScriptqtqtqQUtitleqUImageqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(hhhUnew_okqu}q(hhhhu}q(hhhU config_okq u}q!(U meta_typeq"UScript (Python)q#Uidq$U view_htmlq%u}q&(U meta_typeq'UScript (Python)q(Uidq)Uhelpq*u}q+(U meta_typeq,UImageq-Uidq.U icone.pngq/utq0U _propertiesq1(}q2(Utypeq3Ustringq4h$Utitleq5Umodeq6Uwu}q7(h3Ustringq8h$Uskinq9u}q:(Utypeq;Ustringqu}q?(Utypeq@UintqAUidqBUnoteqCu}qD(h@UstringqEhBUversionqFu}qG(h@hEhBUdevqHu}qI(h@hEhBU certifdevqJu}qK(h@hEhBh u}qL(h@hEhBh u}qM(UtypeqNUlinesqOUidqPU descriptionqQutqRh(U =;qS(hU PythonScriptqTtqUtqVQhHU95%qWhJUouiqXhCKqj(U OFS.ImageqkUImageqltqmtqnQU__ac_local_roles__qo}qphUimageqqhQ(Uq"Le module d'image vous permet d'uploader une image de votre disque dur sur votre site. Vous pourrez d\xe9finir:"qrU'- La balise "alt"'qsU,"- La taille de l'image (attention au poid)"qtU'- Y ajouter un lien'quU''qvU''qwU''qxU''qyUUUUtqzu. <–Š((U OFS.FolderqUFolderqtqNt.}q(Uedit_okq(U >+q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUskinq U1Unew_okq (U >,q (hU PythonScriptqtqtqQUidqU album_photoqU certifwebqUnonqUview_imgq(U >-q(hU PythonScriptqtqtqQUtitleqU Album photoqUnoteqKOUversionqU0.4.2qU view_htmlq(U >.q (hU PythonScriptq!tq"tq#QU add_image_okq$(U >/q%(hU PythonScriptq&tq'tq(QU_objectsq)(}q*(U meta_typeq+UScript (Python)q,Uidq-Unew_htmlq.u}q/(U meta_typeq0UScript (Python)q1Uidq2Unew_okq3u}q4(U meta_typeq5UScript (Python)q6Uidq7U view_htmlq8u}q9(U meta_typeq:UScript (Python)q;Uidq(U meta_typeq?UScript (Python)q@UidqAh$u}qB(U meta_typeqCUScript (Python)qDUidqEUdel_imgqFu}qG(U meta_typeqHUScript (Python)qIUidqJhu}qK(U meta_typeqLUScript (Python)qMUidqNU edit_htmlqOu}qP(hLhMhNhu}qQ(hLhMhNU config_htmlqRu}qS(U meta_typeqTUImageqUUidqVU icone.pngqWutqXUzone_principaleqYU1hR(U >1qZ(hU PythonScriptq[tq\tq]QUnew_htmlq^(U >2q_(hU PythonScriptq`tqatqbQU descriptionqc(UAffiche un album photo.qdUYPermet d'éditer et d'afficher le thumbnail, le titre et la description pour chaque image.qeU:Taille maximale des images vignette (thumbnail) : 105x105.qfUtqghF(U >3qh(hU PythonScriptqitqjtqkQh=(U >4ql(hU PythonScriptqmtqntqoQU certifdevqpUnonqqU__ac_local_roles__qr}qsUdevqtU60%quhO(U >0qv(hU PythonScriptqwtqxtqyQU _propertiesqz(}q{(Utypeq|Ustringq}Uidq~UtitleqUmodeq€Uwu}q(Utypeq‚UstringqƒUidq„U experimentalq…u}q†(Utypeq‡UintqˆUidq‰UnoteqŠu}q‹(h‡UstringqŒh‰Uversionqu}qŽ(h‡hŒh‰Udevqu}q(h‡hŒh‰U certifdevq‘u}q’(h‡hŒh‰U certifwebq“u}q”(h‡hŒh‰U moderateurq•u}q–(Utypeq—Ulinesq˜Uidq™U descriptionqšu}q›(UtypeqœUstringqUidqžhYu}qŸ(Utypeq Ustringq¡Uidq¢h utq£hW(U >5q¤(U OFS.Imageq¥UImageq¦tq§tq¨QU moderateurq©Uzwook@matisson.comqªU experimentalq«Uu. <¤((U OFS.FolderqUFolderqtqNt.}q(Uhelpq(U =?q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUdelfileq (U =@q (hU PythonScriptq tqtqQUaddfileq(U =Aq(hU PythonScriptqtqtqQU config_okq(U =Bq(hU PythonScriptqtqtqQUskinqU1Unew_okq(U =Cq(hU PythonScriptqtqtqQUidq U text_epozq!U certifwebq"Uouiq#Utitleq$U Texte Epozq%Unoteq&KXUversionq'U0.6q(U view_htmlq)(U =Dq*(hU PythonScriptq+tq,tq-QU_objectsq.(}q/(U meta_typeq0UScript (Python)q1h Unew_htmlq2u}q3(h0h1h hu}q4(h0h1h U config_htmlq5u}q6(h0h1h hu}q7(U meta_typeq8UScript (Python)q9Uidq:Urapidedit_htmlq;u}q<(h8h9h:U rapidedit_okq=u}q>(U meta_typeq?UScript (Python)q@UidqAUhelpqBu}qC(U meta_typeqDUScript (Python)qEUidqFU ttesview_htmlqGu}qH(hDhEhFU view_htmlqIu}qJ(U meta_typeqKUScript (Python)qLUidqMhu}qN(hKhLhMUtoolboxqOu}qP(hKhLhMh u}qQ(U meta_typeqRUImageqSUidqTU icone.pngqUutqVh5(U =EqW(hU PythonScriptqXtqYtqZQh2(U =Fq[(hU PythonScriptq\tq]tq^Qh=(U =Gq_(hU PythonScriptq`tqatqbQU descriptionqc(U$Editeur de texte visuel (a la Word).qdUUUUtqeh;(U =Hqf(hU PythonScriptqgtqhtqiQUtoolboxqj(U =Iqk(hU PythonScriptqltqmtqnQU certifdevqoUnonqpU__ac_local_roles__qq}qrhG(U =Jqs(hU PythonScriptqttqutqvQUdevqwU99%qxUzone_principaleqyU1U _propertiesqz(}q{(Utypeq|Ustringq}Uidq~UtitleqUmodeq€Uwu}q(h|Ustringq‚h~Uskinqƒu}q„(Utypeq…Ustringq†Uidq‡Uzone_principaleqˆu}q‰(UtypeqŠUintq‹UidqŒh&u}q(hŠUstringqŽhŒh'u}q(hŠhŽhŒhwu}q(hŠhŽhŒhou}q‘(hŠhŽhŒh"u}q’(hŠhŽhŒU moderateurq“u}q”(Utypeq•Ulinesq–Uidq—hcutq˜hU(U =Kq™(U OFS.ImageqšUImageq›tqœtqQh“Ugreg@emencia.comqžu. <‚G((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U =Lq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U descriptionq (U Menu simpleqUtqUtitleqU Menu simpleqU__ac_local_roles__q}qU _propertiesq(}q(UtypeqUstringqUidqUtitleqUmodeqUwu}q(hUstringqhUskinqu}q(UtypeqUintq Uidq!Unoteq"u}q#(hUstringq$h!Uversionq%u}q&(hh$h!Udevq'u}q((hh$h!U certifdevq)u}q*(hh$h!h u}q+(hh$h!U moderateurq,u}q-(Utypeq.Ulinesq/Uidq0h utq1Unew_htmlq2(U =Mq3(hU PythonScriptq4tq5tq6Qh'U100%q7h)Uouiq8h"K5h%Ubeta 1q9U view_htmlq:(U =Nq;(hU PythonScriptqQU config_okq?(U =Oq@(hU PythonScriptqAtqBtqCQUskinqDU1U_objectsqE(}qF(U meta_typeqGUScript (Python)qHUidqIh2u}qJ(hGhHhIhu}qK(U meta_typeqLUScript (Python)qMUidqNU config_okqOu}qP(U meta_typeqQUScript (Python)qRUidqSU view_htmlqTu}qU(U meta_typeqVUImageqWUidqXU icone.pngqYutqZU icone.pngq[(U =Pq\(U OFS.Imageq]UImageq^tq_tq`Qh,U xav@1et0.orgqahIU kzexpmenuqbU __ac_roles__qc(UManagerqdUOwnerqeU AnonymousqfU Authenticatedqgtqhu. <ƒt((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U =Qq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Uouiq U moderateurq U p4@zwook.orgqU descriptionq(UCIl s'agit d'une sous navigation automatique sous forme de dossiers.qUCIl permet d'afficher clairement les sous rubriques d'une navigationqUUUtqUtitleqU,Liste des dossiers contenus dans ce dossier.qU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(hhhUnew_okqu}q(U meta_typeqUScript (Python)qUidq U view_htmlq!u}q"(U meta_typeq#UScript (Python)q$Uidq%U config_htmlq&u}q'(h#h$h%U config_okq(u}q)(U meta_typeq*UFolderq+Uidq,Uimagesq-u}q.(U meta_typeq/UImageq0Uidq1U icone.pngq2utq3U _propertiesq4(}q5(Utypeq6Ustringq7Uidq8Utitleq9Umodeq:Uwu}q;(UtypeqU experimentalq?u}q@(UtypeqAUintqBUidqCUnoteqDu}qE(hAUstringqFhCUversionqGu}qH(hAhFhCUdevqIu}qJ(hAhFhCU certifdevqKu}qL(hAhFhCh u}qM(hAhFhCh u}qN(hAhFhCUskinqOu}qP(UtypeqQUlinesqRUidqShutqTh(U =SqU(hU PythonScriptqVtqWtqXQhIU90%qYhKUnonqZhDK4hGU0.9q[U view_htmlq\(U =Tq](hU PythonScriptq^tq_tq`QU config_okqa(U =Uqb(hU PythonScriptqctqdtqeQhOU1Uimagesqf(U =Vqg(hUFolderqhtqitqjQh(U =Rqk(hU PythonScriptqltqmtqnQU icone.pngqo(U =Wqp(U OFS.ImageqqUImageqrtqstqtQU__ac_local_roles__qu}qvhU folderbarqwU experimentalqxUu. <„:((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U =Xq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U moderateurq Ugreg@emencia.comqUhelpq(U =Yq(hU PythonScriptqtqtqQUtitleqUFichier a téléchargerqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(hhhUnew_okqu}q(hhhhu}q(hhhU config_okq u}q!(U meta_typeq"UScript (Python)q#Uidq$U view_htmlq%u}q&(U meta_typeq'UScript (Python)q(Uidq)Uhelpq*u}q+(U meta_typeq,UImageq-Uidq.U icone.pngq/utq0U _propertiesq1(}q2(Utypeq3Ustringq4h$Utitleq5Umodeq6Uwu}q7(h3Ustringq8h$Uskinq9u}q:(Utypeq;Ustringqu}q?(Utypeq@UintqAUidqBUnoteqCu}qD(h@UstringqEhBUversionqFu}qG(h@hEhBUdevqHu}qI(h@hEhBU certifdevqJu}qK(h@hEhBh u}qL(h@hEhBh u}qM(UtypeqNUlinesqOUidqPU descriptionqQutqRh(U =[qS(hU PythonScriptqTtqUtqVQhHU75%qWhJUnonqXhCKVhFU0.6qYU view_htmlqZ(U =\q[(hU PythonScriptq\tq]tq^QUzone_principaleq_U1h (U =]q`(hU PythonScriptqatqbtqcQUskinqdU1h(U =Zqe(hU PythonScriptqftqgtqhQh/(U =^qi(U OFS.ImageqjUImageqktqltqmQU__ac_local_roles__qn}qohUfileqphQ]qq(UCe module permet (aux personnes autorisés) d'uploader tout types de fichiers qui pourront être téléchargé par d'autre utilisateurs ou visiteurs.qrUUeu. <…‡((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T·pr=context.zwo_bo.presentation() # AFFICHAGE DU BANDEAU HAUT (head,spm,mid,spe,foot)=context.zwo_bo.autour(mem,pr,'module','Edition d\'element') print head titre='RETOUR' print context.zwo_bo.menu(mem['zwo_url'],pr,'nav',titre) print spm print mid print context.zwo_bo.edition(mem['zwo_url'],pr,'module','EDITION ELEMENT',prnt) print foot return printed q U_codeq T c@s d„ZdS(NcCstƒ}tttdƒdƒƒ}tttdƒdƒ||ddƒtƒ\}} } } } ||IJdt |dƒd}|tttdƒd ƒt |d ƒ|d |ƒIJ|| IJ|| IJ|tttdƒd ƒt |d ƒ|dd |ƒIJ|| IJ|ƒSdS(Nszwo_bos presentationsautoursmodulesEdition d'elementsRETOURsmenuszwo_urlsnavseditionsEDITION ELEMENT(s_print_s_prints _getattr_scontextsprsmems _getiter_sheadsspmsmidsspesfoots _getitem_stitresprnt(smemsprnts_print_s_prints _getattr_scontextsprs _getiter_sheadsspmsmidsspesfoots _getitem_stitre((sScript (Python)stotals$= 4  7 (stotal(stotal((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"Utotalq#U_paramsq$Umem,prntq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Uprntq-U_print_q.U_printq/U _getattr_q0Ucontextq1Uprq2U _getiter_q3Uheadq4Uspmq5Umidq6Uspeq7Ufootq8U _getitem_q9Utitreq:tq;ubu. <†°((U OFS.FolderqUFolderqtqNt.}q(U config_okq(U =_q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUimagesq (U =`q (hUFolderq tqtqQUnew_okq(U =aq(hU PythonScriptqtqtqQUidqUtodoqU realisationq(U =bq(hU PythonScriptqtqtqQU certifwebqUnonqUtitleqU Todo listqUnoteq KUterminerq!(U =cq"(hU PythonScriptq#tq$tq%QUversionq&U0.8q'U view_htmlq((U =dq)(hU PythonScriptq*tq+tq,QU_objectsq-(}q.(U meta_typeq/UScript (Python)q0Uidq1Unew_htmlq2u}q3(U meta_typeq4UScript (Python)q5Uidq6Unew_okq7u}q8(U meta_typeq9UScript (Python)q:Uidq;U config_htmlqu}q?(U meta_typeq@UScript (Python)qAUidqBU view_htmlqCu}qD(U meta_typeqEUScript (Python)qFUidqGU realisationqHu}qI(hEhFhGU edit_noteqJu}qK(U meta_typeqLUScript (Python)qMUidqNU edit_note_okqOu}qP(U meta_typeqQUScript (Python)qRUidqSU add_todo_itemqTu}qU(hQhRhSUadd_todo_item_okqVu}qW(U meta_typeqXUScript (Python)qYUidqZUoptionsq[u}q\(U meta_typeq]UScript (Python)q^Uidq_U options_okq`u}qa(U meta_typeqbUFolderqcUidqdUimagesqeu}qf(hbUScript (Python)qghdh!u}qh(U meta_typeqiUScript (Python)qjUidqkUview_html_appendqlu}qm(U meta_typeqnUImageqoUidqpU icone.pngqqutqrhO(U =eqs(hU PythonScriptqttqutqvQU config_htmlqw(U =fqx(hU PythonScriptqytqztq{QUnew_htmlq|(U =gq}(hU PythonScriptq~tqtq€QU descriptionq(UListe des choses à faireq‚UtqƒhV(U =hq„(hU PythonScriptq…tq†tq‡Qh`(U =iqˆ(hU PythonScriptq‰tqŠtq‹QhT(U =jqŒ(hU PythonScriptqtqŽtqQU certifdevqUnonq‘hl(U =kq’(hU PythonScriptq“tq”tq•QU__ac_local_roles__q–}q—hJ(U =lq˜(hU PythonScriptq™tqštq›QUdevqœU5%qUzone_principaleqžU1U _propertiesqŸ(}q (Utypeq¡Ustringq¢Uidq£Utitleq¤Umodeq¥Uwu}q¦(Utypeq§Ustringq¨Uidq©U experimentalqªu}q«(Utypeq¬Uintq­Uidq®Unoteq¯u}q°(h¬Ustringq±h®Uversionq²u}q³(h¬h±h®Udevq´u}qµ(h¬h±h®U certifdevq¶u}q·(h¬h±h®U certifwebq¸u}q¹(h¬h±h®U moderateurqºu}q»(Utypeq¼Ulinesq½Uidq¾U descriptionq¿u}qÀ(UtypeqÁUstringqÂUidqÃhžutqÄU icone.pngqÅ(U =mqÆ(U OFS.ImageqÇUImageqÈtqÉtqÊQU moderateurqËU p4@zwook.orgqÌUoptionsqÍ(U =nqÎ(hU PythonScriptqÏtqÐtqÑQU experimentalqÒUu. <‡C((U OFS.FolderqUFolderqtqNt.}q(Uedit_okq(U =rq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU editer_postq (U =vq (hU PythonScriptq tqtqQU verif_urlq(U =qq(hU PythonScriptqtqtqQU config_okq(U =oq(hU PythonScriptqtqtqQUnew_okq(U =sq(hU PythonScriptqtqtqQUidqU list_linksq U certifwebq!Unonq"Utitleq#UListe de liensq$U post_thanksq%(U =tq&(hU PythonScriptq'tq(tq)QUnoteq*KUUversionq+U0.4.4q,U view_htmlq-(U =uq.(hU PythonScriptq/tq0tq1QU_objectsq2(}q3(U meta_typeq4UScript (Python)q5Uidq6Unew_htmlq7u}q8(U meta_typeq9UScript (Python)q:Uidq;Unew_okqUScript (Python)q?Uidq@U config_okqAu}qB(U meta_typeqCUScript (Python)qDUidqEU view_htmlqFu}qG(U meta_typeqHUScript (Python)qIUidqJUpostqKu}qL(U meta_typeqMUScript (Python)qNUidqOUpost_okqPu}qQ(U meta_typeqRUScript (Python)qSUidqTh%u}qU(U meta_typeqVUScript (Python)qWUidqXU effacer_postqYu}qZ(hVhWhXU publier_postq[u}q\(hVhWhXh u}q](U meta_typeq^UScript (Python)q_Uidq`hu}qa(U meta_typeqbUImageqcUidqdU icone.pngqeu}qf(U meta_typeqgUScript (Python)qhUidqiU config_htmlqju}qk(U meta_typeqlUScript (Python)qmUidqnU verif_urlqoutqpU config_htmlqq(U =pqr(hU PythonScriptqstqttquQh[(U =wqv(hU PythonScriptqwtqxtqyQU descriptionqz(UDListes de liens avec possibilité de reviewing et tri par catégories.q{Utq|hP(U =xq}(hU PythonScriptq~tqtq€QUpostq(U =yq‚(hU PythonScriptqƒtq„tq…QU certifdevq†Unonq‡U__ac_local_roles__qˆ}q‰UdevqŠU70%q‹Uzone_principaleqŒU1U _propertiesq(}qŽ(UtypeqUstringqUidq‘Utitleq’Umodeq“Uwu}q”(Utypeq•Ustringq–Uidq—U experimentalq˜u}q™(UtypeqšUintq›UidqœUnotequ}qž(hšUstringqŸhœUversionq u}q¡(hšhŸhœUdevq¢u}q£(hšhŸhœU certifdevq¤u}q¥(hšhŸhœU certifwebq¦u}q§(hšhŸhœU moderateurq¨u}q©(UtypeqªUlinesq«Uidq¬U descriptionq­u}q®(Utypeq¯Ustringq°Uidq±hŒutq²Unew_htmlq³(U =zq´(hU PythonScriptqµtq¶tq·QhY(U ={q¸(hU PythonScriptq¹tqºtq»Qhe(U =|q¼(U OFS.Imageq½UImageq¾tq¿tqÀQU moderateurqÁUzwook@matisson.comqÂU experimentalqÃUu. <ˆ¶((U OFS.FolderqUFolderqtqNt.}q(U rss10.xmlq(U =}q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU config_okq (U =~q (hU PythonScriptq tqtqQUskinqU1Uimagesq(U =q(hUFolderqtqtqQUnew_okq(U =€q(hU PythonScriptqtqtqQUidqUforums_historyqU certifwebqUnonqUtitleqUForums historyq Unoteq!K%Uversionq"U0.1q#U view_htmlq$(U =q%(hU PythonScriptq&tq'tq(QU_objectsq)(}q*(U meta_typeq+UScript (Python)q,Uidq-Unew_htmlq.u}q/(U meta_typeq0UScript (Python)q1Uidq2Unew_okq3u}q4(U meta_typeq5UScript (Python)q6Uidq7U config_htmlq8u}q9(h5h6h7U config_okq:u}q;(U meta_typeqU view_htmlq?u}q@(U meta_typeqAUFolderqBUidqCUimagesqDu}qE(U meta_typeqFUScript (Python)qGUidqHU rss10.xmlqIu}qJ(U meta_typeqKUImageqLUidqMU icone.pngqNutqOU config_htmlqP(U =‚qQ(hU PythonScriptqRtqStqTQUnew_htmlqU(U =ƒqV(hU PythonScriptqWtqXtqYQU descriptionqZ(Utq[U certifdevq\Unonq]U__ac_local_roles__q^}q_Udevq`U5%qaU _propertiesqb(}qc(UtypeqdUstringqeUidqfUtitleqgUmodeqhUwu}qi(UtypeqjUstringqkUidqlU experimentalqmu}qn(UtypeqoUintqpUidqqUnoteqru}qs(hoUstringqthqUversionquu}qv(hohthqUdevqwu}qx(hohthqU certifdevqyu}qz(hohthqU certifwebq{u}q|(hohthqU moderateurq}u}q~(UtypeqUstringq€Uidqhu}q‚(UtypeqƒUlinesq„Uidq…hZutq†U icone.pngq‡(U =„qˆ(U OFS.Imageq‰UImageqŠtq‹tqŒQU moderateurqUgreg@emencia.comqŽU experimentalqUu. <‰ Ë((U OFS.FolderqUFolderqtqNt.}q(Uediter_commentq(U =…q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU editer_postq (U =Žq (hU PythonScriptq tqtqQUedit_okq(U =‡q(hU PythonScriptqtqtqQUimagesq(U =ˆq(hUFolderqtqtqQUnew_okq(U =‰q(hU PythonScriptqtqtqQUidqU documentsq Uediter_comment_okq!(U =Šq"(hU PythonScriptq#tq$tq%QU certifwebq&Unonq'Utitleq(UListe de documentsq)U repondre_okq*(U =q+(hU PythonScriptq,tq-tq.QUpost_comment_okq/(U =Œq0(hU PythonScriptq1tq2tq3QUnoteq4KPUversionq5U1.1q6U view_htmlq7(U =q8(hU PythonScriptq9tq:tq;QU_objectsq<(}q=(U meta_typeq>UScript (Python)q?Uidq@Unew_htmlqAu}qB(U meta_typeqCUScript (Python)qDUidqEUnew_okqFu}qG(U meta_typeqHUScript (Python)qIUidqJU config_htmlqKu}qL(hHhIhJU config_okqMu}qN(U meta_typeqOUScript (Python)qPUidqQU view_htmlqRu}qS(U meta_typeqTUScript (Python)qUUidqVUpostqWu}qX(U meta_typeqYUScript (Python)qZUidq[Upost_okq\u}q](U meta_typeq^UScript (Python)q_Uidq`U effacer_postqau}qb(h^h_h`h u}qc(U meta_typeqdUScript (Python)qeUidqfhu}qg(U meta_typeqhUScript (Python)qiUidqjU post_commentqku}ql(U meta_typeqmUScript (Python)qnUidqoh/u}qp(hmhnhohu}qq(hmhnhoUeffacer_commentqru}qs(hmhnhoh!u}qt(U meta_typequUScript (Python)qvUidqwUrepondreqxu}qy(U meta_typeqzUScript (Python)q{Uidq|h*u}q}(U meta_typeq~UScript (Python)qUidq€Uread_docqu}q‚(h~hh€Uview_logqƒu}q„(U meta_typeq…UImageq†Uidq‡U icone.pngqˆu}q‰(h…UFolderqŠh‡Uimagesq‹u}qŒ(U meta_typeqUScript (Python)qŽUidqUeffacer_post_okqutq‘U config_htmlq’(U =†q“(hU PythonScriptq”tq•tq–QUnew_htmlq—(U =q˜(hU PythonScriptq™tqštq›QU descriptionqœ(Uu}q?(h;h(U =¢qd(hU PythonScriptqetqftqgQU moderateurqhUzwook@matisson.comqih@(U =£qj(hU PythonScriptqktqltqmQUdevqnU75%qoUzone_principaleqpU1U _propertiesqq(}qr(UtypeqsUstringqtUidquUtitleqvUmodeqwUwu}qx(UtypeqyUstringqzUidq{U experimentalq|u}q}(Utypeq~UintqUidq€hu}q(h~Ustringq‚h€hu}qƒ(h~h‚h€hnu}q„(h~h‚h€hbu}q…(h~h‚h€hu}q†(h~h‚h€hhu}q‡(h~h‚h€hpu}qˆ(Utypeq‰UlinesqŠUidq‹h[u}qŒ(UtypeqUstringqŽUidqhZutqU icone.pngq‘(U =¤q’(U OFS.Imageq“UImageq”tq•tq–QU__ac_local_roles__q—}q˜U experimentalq™Uu. <‹¦((U OFS.FolderqUFolderqtqNt.}q(U css_mod_okq(U =¥q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU config_okq (U =¦q (hU PythonScriptq tqtqQUskinqU1Unew_okq(U =§q(hU PythonScriptqtqtqQUidqUscriptqU certifwebqUnonqUtitleqU Script pythonqUnoteqK)UversionqU0.6qU view_htmlq(U =¨q (hU PythonScriptq!tq"tq#QU_objectsq$(}q%(U meta_typeq&UScript (Python)q'hUnew_htmlq(u}q)(h&h'hhu}q*(h&h'hU config_htmlq+u}q,(h&h'hh u}q-(U meta_typeq.UScript (Python)q/Uidq0Urapidedit_htmlq1u}q2(h.h/h0U rapidedit_okq3u}q4(U meta_typeq5UScript (Python)q6Uidq7U view_htmlq8u}q9(U meta_typeq:U DTML Documentq;Uidq(h:UScript (Python)q?hYq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U descriptionq (U1Liste des derniers messages postés dans les blogsqUtqUtitleqU News historyqU moderateurqU p4@zwook.orgqUskinqU1Unew_okq(U >^q(hU PythonScriptqtqtqQUnew_htmlq(U >Zq(hU PythonScriptqtqtqQUdevqU85%q Uidq!U news_historyq"Unoteq#K&Uversionq$U0.8q%U view_htmlq&(U >[q'(hU PythonScriptq(tq)tq*QU config_okq+(U >\q,(hU PythonScriptq-tq.tq/QU _propertiesq0(}q1(Utypeq2Ustringq3Uidq4Utitleq5Umodeq6Uwu}q7(Utypeq8Ustringq9Uidq:U experimentalq;u}q<(Utypeq=Uintq>Uidq?Unoteq@u}qA(h=UstringqBh?UversionqCu}qD(h=hBh?UdevqEu}qF(h=hBh?U certifdevqGu}qH(h=hBh?U certifwebqIu}qJ(h=hBh?U moderateurqKu}qL(UtypeqMUlinesqNUidqOU descriptionqPu}qQ(UtypeqRUstringqSUidqThutqUUimagesqV(U >]qW(hUFolderqXtqYtqZQU_objectsq[(}q\(U meta_typeq]UScript (Python)q^Uidq_Unew_htmlq`u}qa(U meta_typeqbUScript (Python)qcUidqdUnew_okqeu}qf(U meta_typeqgUScript (Python)qhUidqiU config_htmlqju}qk(hghhhiU config_okqlu}qm(U meta_typeqnUScript (Python)qoUidqpU view_htmlqqu}qr(U meta_typeqsUFolderqtUidquUimagesqvu}qw(U meta_typeqxUImageqyUidqzU icone.pngq{utq|U icone.pngq}(U >_q~(U OFS.ImageqUImageq€tqtq‚QU__ac_local_roles__qƒ}q„U certifdevq…Unonq†U experimentalq‡Uu. <} è((U OFS.FolderqUFolderqtqNt.}q(Uadd_link_confirmq(U =q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUwwwq (U =q (hUFolderq tqtqQU arborescenceq(U =q(hU PythonScriptqtqtqQUadd_linkq(U =q(hU PythonScriptqtqtqQU config_okq(U =q(hU PythonScriptqtqtqQUnew_okq(U =q (hU PythonScriptq!tq"tq#QUmanage_links_okq$(U =q%(hU PythonScriptq&tq'tq(QUidq)Uannuaire_liensq*U certifwebq+Unonq,Utitleq-UAnnuaire de liensq.Unoteq/KRU__before_publishing_traverse__q0(cZPublisher.BeforeTraverse MultiHook q1oq2}q3(U_defined_in_classq4I00 U _hooknameq5h0U_priorq6NU_listq7]q8ubUversionq9U0.4q:U view_htmlq;(U =q<(hU PythonScriptq=tq>tq?QUbidonq@(U =qA(UOFS.DTMLMethodqBU DTMLMethodqCtqDtqEQUREADMEqF(U = qG(hU PythonScriptqHtqItqJQU__before_traverse__qK}qLU config_htmlqM(U =!qN(hU PythonScriptqOtqPtqQQUnew_htmlqR(U ="qS(hU PythonScriptqTtqUtqVQU admin_onlyqWU0U descriptionqX(U€Annuaire de liens à la yahoo, avec catégories et sous-catégories, hits, votes, propositions de rubriques et liens par les users.qYUUUUUUtqZU manage_linksq[(U =#q\(hU PythonScriptq]tq^tq_QUdel_category_okq`(U =$qa(hU PythonScriptqbtqctqdQU add_link_okqe(U =%qf(hU PythonScriptqgtqhtqiQUdel_category_confirmqj(U =&qk(hU PythonScriptqltqmtqnQU_objectsqo(}qp(U meta_typeqqUScript (Python)qrUidqsUnew_htmlqtu}qu(U meta_typeqvUScript (Python)qwUidqxUnew_okqyu}qz(U meta_typeq{UScript (Python)q|Uidq}U config_htmlq~u}q(h{h|h}U config_okq€u}q(U meta_typeq‚UScript (Python)qƒUidq„U view_htmlq…u}q†(U meta_typeq‡UImageqˆUidq‰U icone.pngqŠu}q‹(U meta_typeqŒUFolderqUidqŽh u}q(U meta_typeqUScript (Python)q‘Uidq’U arborescenceq“u}q”(U meta_typeq•U DTML Methodq–Uidq—Ubidonq˜u}q™(U meta_typeqšUScript (Python)q›Uidqœheu}q(hšh›hœhu}qž(U meta_typeqŸUScript (Python)q Uidq¡UTODOq¢u}q£(U meta_typeq¤UScript (Python)q¥Uidq¦hju}q§(h¤h¥h¦h`u}q¨(U meta_typeq©UScript (Python)qªUidq«hu}q¬(U meta_typeq­UScript (Python)q®Uidq¯UREADMEq°u}q±(U meta_typeq²UScript (Python)q³Uidq´h[u}qµ(U meta_typeq¶UScript (Python)q·Uidq¸h$utq¹h¢(U ='qº(hU PythonScriptq»tq¼tq½QU certifdevq¾Unonq¿U moderateurqÀUclaudiux@lenautilux.netqÁUdevqÂU40%qÃUzone_principaleqÄU1U _propertiesqÅ(}qÆ(UtypeqÇUstringqÈUidqÉUtitleqÊUmodeqËUwu}qÌ(UtypeqÍUstringqÎUidqÏU experimentalqÐu}qÑ(UtypeqÒUintqÓUidqÔUnoteqÕu}qÖ(hÒUstringq×hÔUversionqØu}qÙ(hÒh×hÔUdevqÚu}qÛ(hÒh×hÔU certifdevqÜu}qÝ(hÒh×hÔU certifwebqÞu}qß(hÒh×hÔU moderateurqàu}qá(UtypeqâUlinesqãUidqäU descriptionqåu}qæ(UtypeqçUstringqèUidqéhÄu}qê(UtypeqëUstringqìh‰hWutqíhŠ(U =(qî(U OFS.ImageqïUImageqðtqñtqòQU__ac_local_roles__qó}qôU experimentalqõUu. <Ž ›((U OFS.FolderqUFolderqtqNt.}q(U edit_prioriteq(U =Ìq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUedit_commentaireq (U =Þq (hU PythonScriptq tqtqQUedit_sentiment_okq(U =Ýq(hU PythonScriptqtqtqQU config_okq(U =Íq(hU PythonScriptqtqtqQUimagesq(U =Îq(hUFolderqtqtqQUnew_okq(U =Ïq (hU PythonScriptq!tq"tq#QUidq$Uprogestq%U realisationq&(U =Ðq'(hU PythonScriptq(tq)tq*QU certifwebq+Unonq,Utitleq-Uprogestq.U edit_url_okq/(U =Òq0(hU PythonScriptq1tq2tq3QUnoteq4KUversionq5U0.2q6U view_htmlq7(U =Óq8(hU PythonScriptq9tq:tq;QU_objectsq<(}q=(U meta_typeq>UScript (Python)q?Uidq@Unew_htmlqAu}qB(U meta_typeqCUScript (Python)qDUidqEUnew_okqFu}qG(U meta_typeqHUScript (Python)qIUidqJU config_htmlqKu}qL(hHhIhJU config_okqMu}qN(U meta_typeqOUScript (Python)qPUidqQU realisationqRu}qS(hOUFolderqThQUimagesqUu}qV(hOhPhQUoptionsqWu}qX(hOhPhQU options_okqYu}qZ(U meta_typeq[UScript (Python)q\Uidq]h u}q^(h[h\h]Uedit_commentaire_okq_u}q`(U meta_typeqaUScript (Python)qbUidqcU edit_tacheqdu}qe(hahbhcU edit_tache_okqfu}qg(hahbhcUsupprime_tacheqhu}qi(hahbhchu}qj(hahbhcUedit_priorite_okqku}ql(hahbhcUedit_urlqmu}qn(hahbhch/u}qo(U meta_typeqpUFolderqqUidqrUguyqsu}qt(U meta_typequUScript (Python)qvUidqwUedit_sentimentqxu}qy(huhvhwhu}qz(U meta_typeq{UScript (Python)q|Uidq}U remplacementq~u}q(U meta_typeq€UScript (Python)qUidq‚U add_todo_itemqƒu}q„(h€hh‚Uadd_todo_item_okq…u}q†(U meta_typeq‡UScript (Python)qˆUidq‰U view_htmlqŠu}q‹(U meta_typeqŒUImageqUidqŽU icone.pngqutqh~(U =äq‘(hU PythonScriptq’tq“tq”QU config_htmlq•(U =Ôq–(hU PythonScriptq—tq˜tq™QUnew_htmlqš(U =Õq›(hU PythonScriptqœtqtqžQhk(U =ÖqŸ(hU PythonScriptq tq¡tq¢QU descriptionq£(UXsert à gérer la conduite d'un projet dans une classe, en attribuant des tâches à chacun.q¤UUtq¥Uadd_todo_item_okq¦(U =Øq§(hU PythonScriptq¨tq©tqªQhx(U =Ùq«(hU PythonScriptq¬tq­tq®QhY(U =Úq¯(hU PythonScriptq°tq±tq²QU add_todo_itemq³(U =Ûq´(hU PythonScriptqµtq¶tq·QU certifdevq¸Unonq¹U moderateurqºUolpat@zwook.orgq»hf(U =Üq¼(hU PythonScriptq½tq¾tq¿QUdevqÀU10%qÁhh(U =ÑqÂ(hU PythonScriptqÃtqÄtqÅQhs(U =àqÆ(hUFolderqÇtqÈtqÉQUzone_principaleqÊU1hd(U =ßqË(hU PythonScriptqÌtqÍtqÎQU _propertiesqÏ(}qÐ(UtypeqÑUstringqÒUidqÓUtitleqÔUmodeqÕUwu}qÖ(Utypeq×UstringqØUidqÙU experimentalqÚu}qÛ(UtypeqÜUintqÝUidqÞUnoteqßu}qà(hÜUstringqáhÞUversionqâu}qã(hÜháhÞUdevqäu}qå(hÜháhÞU certifdevqæu}qç(hÜháhÞU certifwebqèu}qé(hÜháhÞU moderateurqêu}që(UtypeqìUlinesqíUidqîU descriptionqïu}qð(UtypeqñUstringqòUidqóhÊutqôhm(U =ãqõ(hU PythonScriptqötq÷tqøQU icone.pngqù(U =×qú(U OFS.ImageqûUImageqütqýtqþQU__ac_local_roles__qÿ}rUoptionsr(U =âr(hU PythonScriptrtrtrQU experimentalrUh_(U =ár(hU PythonScriptrtr tr Qu. <((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U =åq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U descriptionq (ULe module Titre permet de choisir une taille, une police (dans la limite des polices standards sur le web :-) et une couleur pour un texte bref.qUUUUUtqUtitleqUTitreqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(hhhUnew_okqu}q(hhhhu}q(hhhU config_okqu}q(U meta_typeqUScript (Python)qUidq U view_htmlq!u}q"(U meta_typeq#UImageq$Uidq%U icone.pngq&utq'U _propertiesq((}q)(Utypeq*Ustringq+h Utitleq,Umodeq-Uwu}q.(h*Ustringq/h Uskinq0u}q1(Utypeq2Ustringq3Uidq4Uzone_principaleq5u}q6(Utypeq7Ustringq8Uidq9U experimentalq:u}q;(UtypeqUnoteq?u}q@(hUversionqBu}qC(hUdevqDu}qE(hU certifdevqFu}qG(hh u}qH(hU moderateurqIu}qJ(UtypeqKUlinesqLUidqMh utqNh(U =çqO(hU PythonScriptqPtqQtqRQhDU85%qShFUnonqTh?K;hBU0.8qUU view_htmlqV(U =èqW(hU PythonScriptqXtqYtqZQUzone_principaleq[U1h(U =éq\(hU PythonScriptq]tq^tq_QUskinq`U1h(U =æqa(hU PythonScriptqbtqctqdQU icone.pngqe(U =êqf(U OFS.ImageqgUImageqhtqitqjQU__ac_local_roles__qk}qlhIU p4@zwook.orgqmhUtitreqnU experimentalqoUu. <Z((U OFS.FolderqUFolderqtqNt.}q(U inscriptionq(U =ëq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU config_okq (U =ìq (hU PythonScriptq tqtqQUskinqU1Uimagesq(U =íq(hUFolderqtqtqQUidqU login_managerqU __ac_roles__q(UManagerqUOwnerqU AnonymousqU AuthenticatedqtqUinscription_okq(U =îq(hU PythonScriptq tq!tq"QU certifwebq#Unonq$Utitleq%U Login Managerq&Unoteq'K(Uversionq(U1.5.2q)U view_htmlq*(U =ïq+(hU PythonScriptq,tq-tq.QU_objectsq/(}q0(U meta_typeq1UScript (Python)q2hUnew_htmlq3u}q4(h1h2hU config_htmlq5u}q6(U meta_typeq7UScript (Python)q8Uidq9U config_okq:u}q;(U meta_typeqU inscriptionq?u}q@(U meta_typeqAUScript (Python)qBUidqCU activationqDu}qE(hAhBhCUinscription_okqFu}qG(U meta_typeqHUScript (Python)qIUidqJU view_htmlqKu}qL(U meta_typeqMUFolderqNUidqOUimagesqPu}qQ(U meta_typeqRUScript (Python)qSUidqTU sendlogpassqUu}qV(U meta_typeqWUScript (Python)qXUidqYU oublilogpassqZu}q[(U meta_typeq\UImageq]Uidq^U icone.pngq_utq`h5(U =ðqa(hU PythonScriptqbtqctqdQh3(U =ñqe(hU PythonScriptqftqgtqhQU descriptionqi(T½Permet à l'administrateur du système et aux membres autorisés de se logger. Un formulaire d'inscription y est inclu afin de faciliter l'adhésion de nouveaux membres. Ce module est configurable. On peut choisir le nombre max de caractères pour le login et surtout on peut dorénavant modérer les inscriptions... Un même email ne peut être utilisé que par un user. Un nouveau formulaire de rappel du login et de régénération du password est inclus.qjUUtqkhZ(U =òql(hU PythonScriptqmtqntqoQU activationqp(U =óqq(hU PythonScriptqrtqstqtQU certifdevquUnonqvU__ac_local_roles__qw}qxUdevqyU70%qzhU(U =ôq{(hU PythonScriptq|tq}tq~QU _propertiesq(}q€(UtypeqUstringq‚UidqƒUtitleq„Umodeq…Uwu}q†(hUstringq‡hƒUskinqˆu}q‰(UtypeqŠUintq‹UidqŒh'u}q(hŠUstringqŽhŒh(u}q(hŠhŽhŒhyu}q(hŠhŽhŒhuu}q‘(hŠhŽhŒh#u}q’(hŠhŽhŒU moderateurq“u}q”(Utypeq•Ulinesq–Uidq—hiutq˜U icone.pngq™(U =õqš(U OFS.Imageq›UImageqœtqtqžQh“Uzwook@matisson.comqŸu. <’ H((U OFS.FolderqUFolderqtqNt.}q(Uview_PMq(U =üq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUmsg_luq (U >q (hU PythonScriptq tqtqQU config_okq(U =þq(hU PythonScriptqtqtqQUskinqU1Uimagesq(U =ÿq(hUFolderqtqtqQUnew_okq(U >q(hU PythonScriptqtqtqQUidq U directfriendsq!U add_dossierq"(U >q#(hU PythonScriptq$tq%tq&QU certifwebq'Unonq(Udeplacer_msg_okq)(U >q*(hU PythonScriptq+tq,tq-QUeffacerq.(U >q/(hU PythonScriptq0tq1tq2QU eff_dossierq3(U >q4(hU PythonScriptq5tq6tq7QUnoteq8KUdel_and_repondreq9(U >q:(hU PythonScriptq;tqU1.6q?U view_htmlq@(U >qA(hU PythonScriptqBtqCtqDQUadmin_dossiersqE(U >qF(hU PythonScriptqGtqHtqIQU_objectsqJ(}qK(U meta_typeqLUScript (Python)qMUidqNUnew_htmlqOu}qP(U meta_typeqQUScript (Python)qRUidqSUnew_okqTu}qU(U meta_typeqVUScript (Python)qWUidqXU config_htmlqYu}qZ(hVhWhXU config_okq[u}q\(U meta_typeq]UScript (Python)q^Uidq_Uconf_friends_listq`u}qa(U meta_typeqbUScript (Python)qcUidqdUdel_userqeu}qf(U meta_typeqgUScript (Python)qhUidqiUadd_userqju}qk(U meta_typeqlUFolderqmUidqnUimagesqou}qp(U meta_typeqqUScript (Python)qrUidqsUsend_PMqtu}qu(hqhrhsU send_PM_okqvu}qw(U meta_typeqxUScript (Python)qyUidqzUokq{u}q|(U meta_typeq}UScript (Python)q~Uidqhu}q€(h}h~hh.u}q(h}h~hh u}q‚(U meta_typeqƒUScript (Python)q„Uidq…Urepondreq†u}q‡(U meta_typeqˆUScript (Python)q‰UidqŠhEu}q‹(U meta_typeqŒUScript (Python)qUidqŽU add_dossierqu}q(hŒhhŽh3u}q‘(hŒhhŽUeff_dossier_confirmq’u}q“(U meta_typeq”UScript (Python)q•Uidq–U deplacer_msgq—u}q˜(h”h•h–h)u}q™(U meta_typeqšUScript (Python)q›Uidqœh9u}q(U meta_typeqžUScript (Python)qŸUidq U view_htmlq¡u}q¢(U meta_typeq£UScript (Python)q¤Uidq¥U signaleurq¦u}q§(U meta_typeq¨UScript (Python)q©UidqªU send_PM_inq«u}q¬(U meta_typeq­UImageq®Uidq¯U icone.pngq°utq±U config_htmlq²(U =ýq³(hU PythonScriptq´tqµtq¶QUnew_htmlq·(U > q¸(hU PythonScriptq¹tqºtq»QU descriptionq¼(UîCe module permet aux membres connectés de pouvoir être identifier comme "en ligne" par les autres membres. Il est également possible d'envoyer des messages (du type Post Message) afin de communiquer directement via l'interface du système.q½UUUUtq¾h`(U > q¿(hU PythonScriptqÀtqÁtqÂQUsend_PMqÃ(U > qÄ(hU PythonScriptqÅtqÆtqÇQhj(U > qÈ(hU PythonScriptqÉtqÊtqËQh’(U >qÌ(hU PythonScriptqÍtqÎtqÏQU send_PM_inqÐ(U >qÑ(hU PythonScriptqÒtqÓtqÔQU certifdevqÕUnonqÖh†(U >q×(hU PythonScriptqØtqÙtqÚQUokqÛ(U >qÜ(hU PythonScriptqÝtqÞtqßQU__ac_local_roles__qà}qáUtitleqâUMessages PersonnelsqãUdevqäU90%qåh—(U >qæ(hU PythonScriptqçtqètqéQhe(U >qê(hU PythonScriptqëtqìtqíQhv(U >qî(hU PythonScriptqïtqðtqñQU _propertiesqò(}qó(UtypeqôUstringqõUidqöUtitleq÷UmodeqøUwu}qù(UtypeqúUstringqûUidqühu}qý(UtypeqþUstringqÿUidrU experimentalru}r(UtyperUintrUidrh8u}r(jUstringrjh>u}r(jjjhäu}r (jjjhÕu}r (jjjh'u}r (jjjU moderateurr u}r (UtyperUlinesrUidrh¼utrh¦(U > r(hU PythonScriptrtrtrQU icone.pngr(U >r(U OFS.ImagerUImagertrtrQj U p4@zwook.orgrU experimentalrU1u. <“&((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U admin_onlyq U1U descriptionq(UtqUtitleqU Logs crawlerqU__ac_local_roles__q}qUnew_okq(U >q(hU PythonScriptqtqtqQUnew_htmlq(U >q(hU PythonScriptqtqtqQUdevqU60%qUidq U logs_crawlerq!Unoteq"K#Uversionq#U0.3q$U view_htmlq%(U >q&(hU PythonScriptq'tq(tq)QUzone_principaleq*U1U config_okq+(U >q,(hU PythonScriptq-tq.tq/QU _propertiesq0(}q1(Utypeq2Ustringq3Uidq4Utitleq5Umodeq6Uwu}q7(Utypeq8Ustringq9Uidq:U experimentalq;u}q<(Utypeq=Uintq>Uidq?Unoteq@u}qA(h=UstringqBh?UversionqCu}qD(h=hBh?UdevqEu}qF(h=hBh?U certifdevqGu}qH(h=hBh?U certifwebqIu}qJ(h=hBh?U moderateurqKu}qL(UtypeqMUlinesqNUidqOU descriptionqPu}qQ(UtypeqRUstringqSUidqTh*u}qU(hRhShTh utqVU_objectsqW(}qX(U meta_typeqYUScript (Python)qZUidq[Unew_htmlq\u}q](U meta_typeq^UScript (Python)q_Uidq`Unew_okqau}qb(U meta_typeqcUScript (Python)qdUidqeU config_htmlqfu}qg(hchdheU config_okqhu}qi(U meta_typeqjUScript (Python)qkUidqlU view_htmlqmu}qn(U meta_typeqoUImageqpUidqqU icone.pngqrutqsU icone.pngqt(U >qu(U OFS.ImageqvUImageqwtqxtqyQU moderateurqzUgreg@emencia.comq{U certifdevq|Unonq}U experimentalq~Uu. <”u((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U descriptionq (UInsérez un trait pour souligner ou différencier des éléments d'une page. Vous pouvez choisir la taille, la couleur et le positionnement du traitqUUtqUtitleqUTraitqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(U meta_typeqUScript (Python)qUidqUnew_okqu}q(U meta_typeqUScript (Python)qUidq U config_htmlq!u}q"(hhh U config_okq#u}q$(U meta_typeq%UScript (Python)q&Uidq'U view_htmlq(u}q)(U meta_typeq*UImageq+Uidq,U icone.pngq-utq.U _propertiesq/(}q0(Utypeq1Ustringq2Uidq3Utitleq4Umodeq5Uwu}q6(Utypeq7Ustringq8Uidq9U experimentalq:u}q;(UtypeqUzone_principaleq?u}q@(UtypeqAUintqBUidqCUnoteqDu}qE(hAUstringqFhCUversionqGu}qH(hAhFhCUdevqIu}qJ(hAhFhCU certifdevqKu}qL(hAhFhCh u}qM(hAhFhCU moderateurqNu}qO(hAhFhCUskinqPu}qQ(UtypeqRUlinesqSUidqTh utqUUnew_htmlqV(U >qW(hU PythonScriptqXtqYtqZQhIU90%q[hKUnonq\hDK:hGU0.2q]U view_htmlq^(U >q_(hU PythonScriptq`tqatqbQUzone_principaleqcU1U config_okqd(U > qe(hU PythonScriptqftqgtqhQhPU1Unew_okqi(U >qj(hU PythonScriptqktqltqmQU icone.pngqn(U >!qo(U OFS.ImageqpUImageqqtqrtqsQU__ac_local_roles__qt}quhNUmat@emencia.comqvUidqwUtraitqxU experimentalqyUu. <•)((U OFS.FolderqUFolderqtqNt.}q(Ueeq(U >"q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU config_okq (U >#q (hU PythonScriptq tqtqQUskinqU1Uimagesq(U >$q(hUFolderqtqtqQUnew_okq(U >%q(hU PythonScriptqtqtqQUidqUbrowsing_modesqUtprintq(U >&q(hU PythonScriptqtq tq!QU certifwebq"Unonq#Utitleq$U Browsing modeq%Unoteq&K2Uversionq'U0.1q(U view_htmlq)(U >'q*(hU PythonScriptq+tq,tq-QU_objectsq.(}q/(U meta_typeq0UScript (Python)q1Uidq2Unew_htmlq3u}q4(U meta_typeq5UScript (Python)q6Uidq7Unew_okq8u}q9(U meta_typeq:UScript (Python)q;Uidq(h:h;h(qZ(hU PythonScriptq[tq\tq]QUnew_htmlq^(U >)q_(hU PythonScriptq`tqatqbQU descriptionqc(UOBrowser d'images et de folders. Permet également d'afficher la vue d'impressionqdUUUUtqeU certifdevqfUnonqgU moderateurqhUgreg@emencia.comqiUdevqjU40%qkU _propertiesql(}qm(UtypeqnUstringqoUidqpUtitleqqUmodeqrUwu}qs(UtypeqtUstringquUidqvU experimentalqwu}qx(UtypeqyUintqzUidq{h&u}q|(hyUstringq}h{h'u}q~(hyh}h{hju}q(hyh}h{hfu}q€(hyh}h{h"u}q(hyh}h{hhu}q‚(UtypeqƒUlinesq„Uidq…hcu}q†(Utypeq‡UstringqˆUidq‰hutqŠU icone.pngq‹(U >*qŒ(U OFS.ImageqUImageqŽtqtqQU__ac_local_roles__q‘}q’U experimentalq“Uu. <¢ˆ((U OFS.FolderqUFolderqtqNt.}q(Uaffichage_moisq(U >Ëq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUskinq U1Unew_okq (U >Ìq (hU PythonScriptqtqtqQUcalendarq(U >Íq(hU PythonScriptqtqtqQUidqU minicalendarqU certifwebqUnonqUtitleqUMini calendrierqUnoteqKUversionqU0.1qU view_htmlq(U >Îq (hU PythonScriptq!tq"tq#QU_objectsq$(}q%(U meta_typeq&UScript (Python)q'Uidq(U view_htmlq)u}q*(U meta_typeq+UScript (Python)q,Uidq-U config_htmlq.u}q/(h+h,h-Unew_htmlq0u}q1(h+h,h-Unew_okq2u}q3(h+h,h-Uaffichage_moisq4u}q5(h+h,h-Ucalendarq6u}q7(U meta_typeq8UImageq9Uidq:U icone.pngq;u}q<(U meta_typeq=UScript (Python)q>Uidq?Ugestminiq@utqAU config_htmlqB(U >ÏqC(hU PythonScriptqDtqEtqFQUnew_htmlqG(U >ÐqH(hU PythonScriptqItqJtqKQU descriptionqL(UÅLe module calendrier permet d'informer indépendament vos différents groupes d'utilisateurs (visiteurs, membres, département marketing ou commercial, ...) d'évènements ou d'actions à venir ou passé.qMUESeul les personnes autorisés pourront publier de nouveaux évènements.qNU%Vu possible: Journaliére ou MensuelleqOUUUUUtqPU certifdevqQUnonqRU moderateurqSUxavier@emencia.comqTUdevqUU90%qVUgestminiqW(U >ÑqX(hU PythonScriptqYtqZtq[QU _propertiesq\(}q](Utypeq^Ustringq_Uidq`UtitleqaUmodeqbUwu}qc(UtypeqdUstringqeUidqfU experimentalqgu}qh(UtypeqiUintqjh-Unoteqku}ql(hiUstringqmh-Uskinqnu}qo(UtypeqpUstringqqUidqrhu}qs(hphqhrhUu}qt(hphqhrhQu}qu(hphqhrhu}qv(hphqhrhSu}qw(UtypeqxUlinesqyUidqzhLutq{U icone.pngq|(U >Òq}(U OFS.Imageq~UImageqtq€tqQU__ac_local_roles__q‚}qƒU experimentalq„Uu. <—((U OFS.FolderqUFolderqtqNt.}q(Uediter_commentq(U >6q(U#Products.PythonScripts.PythonScriptqU PythonScriptqttQU editer_postq (U >Fq (hU PythonScriptq ttQU publier_postq (U >Gq (hU PythonScriptqttQU rss10.xmlq(U >9q(hU PythonScriptqttQUedit_okq(U >:q(hU PythonScriptqttQUimagesq(U >;q(hUFolderqttQUnew_okq(U >=q(hUFolderqttQUpost_trackback2q (U >>q!(hU PythonScriptq"ttQU certifwebq#Unonq$Utitleq%UNewsq&U post_thanksq'(U >?q((hU PythonScriptq)ttQUpost_comment_okq*(U >@q+(hU PythonScriptq,ttQUconfirm_effacer_postq-(U >Xq.(hU PythonScriptq/ttQUnoteq0KUUpost_trackback3q1(U >Bq2(hU PythonScriptq3ttQUversionq4U1.1q5U view_htmlq6(U >Cq7(hU PythonScriptq8ttQU rss091.xmlq9(U >Dq:(hU PythonScriptq;ttQU_objectsq<(}q=(U meta_typeq>UScript (Python)q?Uidq@Unew_htmlqAu}qB(U meta_typeqCUScript (Python)qDUidqEUnew_okqFu}qG(U meta_typeqHUScript (Python)qIUidqJU config_htmlqKu}qL(hHhIhJU config_okqMu}qN(U meta_typeqOUScript (Python)qPUidqQUpostqRu}qS(U meta_typeqTUScript (Python)qUUidqVUpost_okqWu}qX(U meta_typeqYUScript (Python)qZUidq[h'u}q\(U meta_typeq]UScript (Python)q^Uidq_U effacer_postq`u}qa(h]h^h_h u}qb(h]h^h_h u}qc(U meta_typeqdUScript (Python)qeUidqfhu}qg(U meta_typeqhUScript (Python)qiUidqjU read_newsqku}ql(U meta_typeqmUScript (Python)qnUidqoU post_commentqpu}qq(U meta_typeqrUScript (Python)qsUidqth*u}qu(hrhshthu}qv(hrhshtUeffacer_commentqwu}qx(hrhshtUediter_comment_okqyu}qz(hrhshtUlisteq{u}q|(U meta_typeq}UScript (Python)q~UidqUrepondreq€u}q(U meta_typeq‚UScript (Python)qƒUidq„U repondre_okq…u}q†(U meta_typeq‡UScript (Python)qˆUidq‰U view_htmlqŠu}q‹(U meta_typeqŒUScript (Python)qUidqŽh-u}q(U meta_typeqUImageq‘Uidq’U icone.pngq“u}q”(U meta_typeq•UScript (Python)q–Uidq—h9u}q˜(h•UFolderq™h—Uimagesqšu}q›(U meta_typeqœUScript (Python)qUidqžhu}qŸ(U meta_typeq UScript (Python)q¡Uidq¢Upost_trackbackq£u}q¤(h h¡h¢h u}q¥(h h¡h¢Upost_trackback3q¦u}q§(h h¡h¢U trackbackq¨u}q©(h U DTML Documentqªh¢U post_styleq«u}q¬(U meta_typeq­UScript (Python)q®Uidq¯Uconfirm_effacer_commentq°u}q±(h­h®h¯Uconfirm_effacer_trackbackq²u}q³(h­h®h¯Ueffacer_trackbackq´u}qµ(h­UFolderq¶h¯Uhelpq·utq¸h°(U >Eq¹(hU PythonScriptqºttQU config_htmlq»(U >7q¼(hU PythonScriptq½ttQUnew_htmlq¾(U >8q¿(hU PythonScriptqÀttQhy(U >HqÁ(hU PythonScriptqÂttQUpost_trackbackqÃ(U >PqÄ(hU PythonScriptqÅttQU _propertiesqÆ(}qÇ(UtypeqÈUstringqÉUidqÊUtitleqËUmodeqÌUwu}qÍ(UtypeqÎUstringqÏUidqÐU experimentalqÑu}qÒ(UtypeqÓUintqÔUidqÕUnoteqÖu}q×(hÓUstringqØhÕUversionqÙu}qÚ(hÓhØhÕUdevqÛu}qÜ(hÓhØhÕU certifdevqÝu}qÞ(hÓhØhÕU certifwebqßu}qà(hÓhØhÕU moderateurqáu}qâ(UtypeqãUlinesqäUidqåU descriptionqæu}qç(UtypeqèUstringqéUidqêUzone_principaleqëutqìhW(U >Kqí(hU PythonScriptqîttQhw(U >Lqï(hU PythonScriptqðttQUlisteqñ(U >Mqò(hU PythonScriptqóttQU trackbackqô(U >Nqõ(hU PythonScriptqöttQUpostq÷(U >Oqø(hU PythonScriptqùttQU certifdevqúUnonqûUrepondreqü(U >Jqý(hU PythonScriptqþttQhp(U >Qqÿ(hU PythonScriptrttQh²(U >Rr(hU PythonScriptrttQhk(U >Sr(hU PythonScriptrttQU__ac_local_roles__r}rU config_okr(U >Tr(hU PythonScriptr ttQU descriptionr (U&Module liste de news avec commentairesr Utr Udevr U90%rh´(U >Ur(hU PythonScriptrttQhëU1U post_styler(U >Wr(UOFS.DTMLDocumentrU DTMLDocumentrttQh…(U >Ir(hU PythonScriptrttQh`(U >Vr(hU PythonScriptrttQU icone.pngr(U >Ar(U OFS.ImagerUImagerttQU moderateurrU p4@zwook.orgrU experimentalrUu. <‘`((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U =öq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U admin_onlyq U1U descriptionq(U6Affiche le contenu proposé non traité de tout le site.qUtqUtitleqUSubmited content MonitorqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(U meta_typeqUScript (Python)qUidqUnew_okqu}q(U meta_typeqUScript (Python)q Uidq!U config_htmlq"u}q#(hh h!U config_okq$u}q%(U meta_typeq&UScript (Python)q'Uidq(U view_htmlq)u}q*(U meta_typeq+UImageq,Uidq-U icone.pngq.utq/U _propertiesq0(}q1(Utypeq2Ustringq3Uidq4Utitleq5Umodeq6Uwu}q7(Utypeq8Ustringq9Uidq:U experimentalq;u}q<(Utypeq=Uintq>Uidq?Unoteq@u}qA(h=UstringqBh?UversionqCu}qD(h=hBh?UdevqEu}qF(h=hBh?U certifdevqGu}qH(h=hBh?U certifwebqIu}qJ(h=hBh?U moderateurqKu}qL(UtypeqMUlinesqNUidqOU descriptionqPu}qQ(UtypeqRUstringqSUidqTUskinqUu}qV(hRhShTh utqWUnew_htmlqX(U =øqY(hU PythonScriptqZtq[tq\QUdevq]U5%q^U certifdevq_Unonq`UnoteqaK"UversionqbU0.1qcU view_htmlqd(U =ùqe(hU PythonScriptqftqgtqhQU moderateurqiU p4@zwook.orgqjU config_okqk(U =úql(hU PythonScriptqmtqntqoQhUU1Unew_okqp(U =÷qq(hU PythonScriptqrtqstqtQU icone.pngqu(U =ûqv(U OFS.ImageqwUImageqxtqytqzQU__ac_local_roles__q{}q|Uidq}Usubmited_monitorq~U experimentalqUu. <šX((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >qq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U descriptionq (UtqU icone.pngq(U >wq(U OFS.ImageqUImageqtqtqQUtitleqU SpeedblogqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(U meta_typeqUScript (Python)qUidq Unew_okq!u}q"(U meta_typeq#UScript (Python)q$Uidq%U config_htmlq&u}q'(h#h$h%U config_okq(u}q)(U meta_typeq*UScript (Python)q+Uidq,U view_htmlq-u}q.(U meta_typeq/UScript (Python)q0Uidq1Upostq2u}q3(U meta_typeq4UImageq5Uidq6U icone.pngq7utq8U _propertiesq9(}q:(Utypeq;UstringqUmodeq?Uwu}q@(UtypeqAUstringqBUidqCU experimentalqDu}qE(UtypeqFUintqGUidqHUnoteqIu}qJ(hFUstringqKhHUversionqLu}qM(hFhKhHUdevqNu}qO(hFhKhHU certifdevqPu}qQ(hFhKhHU certifwebqRu}qS(hFhKhHU moderateurqTu}qU(UtypeqVUlinesqWUidqXU descriptionqYu}qZ(Utypeq[Ustringq\Uidq]Uskinq^utq_Unew_htmlq`(U >tqa(hU PythonScriptqbtqctqdQUdevqeU5%qfU certifdevqgUnonqhUnoteqiKUversionqjU0.2qkU view_htmlql(U >uqm(hU PythonScriptqntqotqpQU config_okqq(U >vqr(hU PythonScriptqstqttquQh^U1Unew_okqv(U >sqw(hU PythonScriptqxtqytqzQUpostq{(U >rq|(hU PythonScriptq}tq~tqQU__ac_local_roles__q€}qU moderateurq‚Ugreg@emencia.comqƒUidq„U speedblogq…U experimentalq†Uu. <›Š((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >xq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUnew_htmlq (U >yq (hU PythonScriptq tqtqQU descriptionq(U Compte chaque visite d'une page.qUZA chaque fois que la page qui contient ce module s'affiche, un compteur s'incrémente de 1.qUtqUtitleqUCompteur de hitsqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(U meta_typeqUScript (Python)qUidqUnew_okq u}q!(U meta_typeq"UScript (Python)q#Uidq$U config_htmlq%u}q&(h"h#h$U config_okq'u}q((U meta_typeq)UScript (Python)q*Uidq+U view_htmlq,u}q-(U meta_typeq.UImageq/Uidq0U icone.pngq1utq2U certifwebq3Unonq4Udevq5U70%q6U certifdevq7Unonq8Unoteq9K!Uversionq:U0.3.1q;U view_htmlq<(U >{q=(hU PythonScriptq>tq?tq@QUzone_principaleqAU1U config_okqB(U >|qC(hU PythonScriptqDtqEtqFQU _propertiesqG(}qH(UtypeqIUstringqJUidqKUtitleqLUmodeqMUwu}qN(UtypeqOUstringqPUidqQU experimentalqRu}qS(UtypeqTUintqUUidqVUnoteqWu}qX(hTUstringqYhVUversionqZu}q[(hThYhVUdevq\u}q](hThYhVU certifdevq^u}q_(hThYhVU certifwebq`u}qa(hThYhVU moderateurqbu}qc(UtypeqdUlinesqeUidqfU descriptionqgu}qh(UtypeqiUstringqjUidqkhAutqlUnew_okqm(U >zqn(hU PythonScriptqotqptqqQU icone.pngqr(U >}qs(U OFS.ImageqtUImagequtqvtqwQU__ac_local_roles__qx}qyU moderateurqzUzwook@matisson.comq{Uidq|Uhitsq}U experimentalq~Uu. <œ4((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >~q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U moderateurq Uxavier@emencia.comqU descriptionq(U¾Ce petit module est complémentaire au module "mini calendrier". Il permet aux utilisateurs (selon leurs droits) de visualiser le récapitulatif des évènements ou de leurs taches de la journéeqUU' évènements qu'ils leurs est destinées.qUUUUtqUtitleqUMes evenementsqU_objectsq(}q(U meta_typeqUScript (Python)qUidqU view_htmlqu}q(U meta_typeqUScript (Python)qUidqU config_htmlqu}q (hhhUnew_htmlq!u}q"(hhhUnew_okq#u}q$(U meta_typeq%UImageq&Uidq'U icone.pngq(utq)U _propertiesq*(}q+(Utypeq,Ustringq-Uidq.Utitleq/Umodeq0Uwu}q1(Utypeq2Ustringq3Uidq4U experimentalq5u}q6(Utypeq7Uintq8Uidq9Unoteq:u}q;(h7Ustringq(Utypeq?Ustringq@UidqAUversionqBu}qC(h?h@hAUdevqDu}qE(h?h@hAU certifdevqFu}qG(h?h@hAh u}qH(h?h@hAh u}qI(UtypeqJUlinesqKUidqLhutqMUnew_htmlqN(U >€qO(hU PythonScriptqPtqQtqRQhDU80%qShFUnonqTUnoteqUKhBU0.1qVU view_htmlqW(U >qX(hU PythonScriptqYtqZtq[QUskinq\U1Unew_okq](U >q^(hU PythonScriptq_tq`tqaQU icone.pngqb(U >‚qc(U OFS.ImageqdUImageqetqftqgQU__ac_local_roles__qh}qiUidqjU mesevenementsqkU experimentalqlUu. < %((U OFS.FolderqUFolderqtqNt.}q(Uno_post_anonymeq(U >ƒq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU edit_messageq (U >„q (hU PythonScriptq tqtqQU all_statsq(U >…q(hU PythonScriptqtqtqQUadd_thread_processq(U >†q(hU PythonScriptqtqtqQU config_okq(U >‡q(hU PythonScriptqtqtqQUimagesq(U >ˆq (hUFolderq!tq"tq#QUnew_okq$(U >‰q%(hU PythonScriptq&tq'tq(QUidq)Uforumq*Uedit_msg_processq+(U >Šq,(hU PythonScriptq-tq.tq/QU view_threadq0(U >‹q1(hU PythonScriptq2tq3tq4QU certifwebq5Unonq6Utitleq7UForum de discussionq8U add_messageq9(U >Œq:(hU PythonScriptq;tq(U >q?(hU PythonScriptq@tqAtqBQUnoteqCKSUversionqDU0.9qEU view_htmlqF(U >ŽqG(hU PythonScriptqHtqItqJQU thread_statsqK(U >qL(hU PythonScriptqMtqNtqOQU_objectsqP(}qQ(U meta_typeqRUScript (Python)qSUidqTUadd_msg_processqUu}qV(U meta_typeqWUScript (Python)qXUidqYU all_statsqZu}q[(U meta_typeq\UScript (Python)q]Uidq^U add_messageq_u}q`(h\h]h^U edit_messageqau}qb(U meta_typeqcUScript (Python)qdUidqeU add_threadqfu}qg(hchdheU del_messageqhu}qi(U meta_typeqjUScript (Python)qkUidqlh0u}qm(U meta_typeqnUScript (Python)qoUidqpUdetail_all_statsqqu}qr(hnhohpU thread_statsqsu}qt(U meta_typequUScript (Python)qvUidqwU config_htmlqxu}qy(huhvhwU config_okqzu}q{(huhvhwUnew_htmlq|u}q}(huhvhwUnew_okq~u}q(huhvhwU view_htmlq€u}q(U meta_typeq‚UScript (Python)qƒUidq„Uadd_thread_processq…u}q†(U meta_typeq‡UScript (Python)qˆUidq‰UsortqŠu}q‹(U meta_typeqŒUScript (Python)qUidqŽhu}q(U meta_typeqUScript (Python)q‘Uidq’U del_threadq“u}q”(hh‘h’Udel_thread_processq•u}q–(U meta_typeq—UScript (Python)q˜Uidq™h+u}qš(U meta_typeq›UScript (Python)qœUidqUdel_msg_processqžu}qŸ(U meta_typeq UImageq¡Uidq¢U icone.pngq£u}q¤(h UFolderq¥h¢Uimagesq¦utq§Usortq¨(U >q©(hU PythonScriptqªtq«tq¬QU config_htmlq­(U >‘q®(hU PythonScriptq¯tq°tq±QUnew_htmlq²(U >’q³(hU PythonScriptq´tqµtq¶Qh“(U >“q·(hU PythonScriptq¸tq¹tqºQU descriptionq»(U=Le forum sert a poster des messages, des fils de discussions.q¼UUtq½hž(U >”q¾(hU PythonScriptq¿tqÀtqÁQh•(U >•qÂ(hU PythonScriptqÃtqÄtqÅQU certifdevqÆUnonqÇhq(U >–qÈ(hU PythonScriptqÉtqÊtqËQU__ac_local_roles__qÌ}qÍUdevqÎU85%qÏUzone_principaleqÐU1hU(U >—qÑ(hU PythonScriptqÒtqÓtqÔQU _propertiesqÕ(}qÖ(Utypeq×UstringqØhwUtitleqÙUmodeqÚUwu}qÛ(h×UstringqÜhwUzone_principaleqÝu}qÞ(UtypeqßUstringqàUidqáU experimentalqâu}qã(UtypeqäUintqåUidqæhCu}qç(häUstringqèhæhDu}qé(hähèhæhÎu}qê(hähèhæhÆu}që(hähèhæh5u}qì(hähèhæU moderateurqíu}qî(UtypeqïUlinesqðUidqñh»utqòU del_messageqó(U >˜qô(hU PythonScriptqõtqötq÷QU icone.pngqø(U >™qù(U OFS.ImageqúUImageqûtqütqýQhíUgreg@emencia.comqþU experimentalqÿUu. <žÒ((U OFS.FolderqUFolderqtqNt.}q(Usupprime_evenementq(U >šq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUaffichage_moisq (U >›q (hU PythonScriptq tqtqQU index_htmlq(U >œq(hU PythonScriptqtqtqQUidqU calendrierqUmodifier_evenementq(U >q(hU PythonScriptqtqtqQU certifwebqUnonqUtitleqU CalendrierqUedit_evenementq (U >žq!(hU PythonScriptq"tq#tq$QUnoteq%JÿÿÿÿUversionq&U0.1q'U_objectsq((}q)(U meta_typeq*UScript (Python)q+Uidq,h u}q-(U meta_typeq.UScript (Python)q/Uidq0Ucreer_evenementq1u}q2(U meta_typeq3UScript (Python)q4Uidq5Uview_evenementq6u}q7(h3h4h5hu}q8(U meta_typeq9UScript (Python)q:Uidq;h u}q<(U meta_typeq=UScript (Python)q>Uidq?hu}q@(U meta_typeqAUScript (Python)qBUidqCUnew_htmlqDu}qE(U meta_typeqFUScript (Python)qGUidqHU index_htmlqIu}qJ(U meta_typeqKUScript (Python)qLUidqMU new_eventqNu}qO(hKhLhMU view_newsqPu}qQ(hKhLhMU edit_eventqRu}qS(U meta_typeqTUScript (Python)qUUidqVU new_evenementqWu}qX(U meta_typeqYUFolderqZUidq[Utousq\u}q](U meta_typeq^UImageq_Uidq`U icone.pngqautqbUnew_htmlqc(U >Ÿqd(hU PythonScriptqetqftqgQU edit_eventqh(U > qi(hU PythonScriptqjtqktqlQU descriptionqm(U¡Ce module ne doit pas être utilisé pour creer un element. Il contient juste des scripts necessaires a d'autres modules et il est installer de base dans le zwook.qnUtqoh1(U >¡qp(hU PythonScriptqqtqrtqsQU new_evenementqt(U >¥qu(hU PythonScriptqvtqwtqxQU new_eventqy(U >¢qz(hU PythonScriptq{tq|tq}Qh6(U >£q~(hU PythonScriptqtq€tqQU certifdevq‚UnonqƒU moderateurq„Uaucunq…Udevq†U80%q‡Utousqˆ(U >¤q‰(hUFolderqŠtq‹tqŒQU _propertiesq(}qŽ(UtypeqUstringqUidq‘Utitleq’Umodeq“Uwu}q”(hUintq•h‘h%u}q–(hhh‘h&u}q—(hhh‘h†u}q˜(hhh‘h‚u}q™(hhh‘hu}qš(hhh‘h„u}q›(UtypeqœUlinesqUidqžhmutqŸU icone.pngq (U >¦q¡(U OFS.Imageq¢UImageq£tq¤tq¥QU__ac_local_roles__q¦}q§U view_newsq¨(U >§q©(hU PythonScriptqªtq«tq¬Qu. <Ÿ((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >¨q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Uouiq U descriptionq (U9La locate bar affiche le chemin depuis la racine du site.qUUtqUtitleqU LocatebarqU moderateurqU p4@zwook.orgqU _propertiesq(}q(UtypeqUstringqUidqUtitleqUmodeqUwu}q(UtypeqUstringqUidqU experimentalqu}q (Utypeq!Uintq"Uidq#Unoteq$u}q%(h!Ustringq&h#Uversionq'u}q((h!h&h#Udevq)u}q*(h!h&h#U certifdevq+u}q,(h!h&h#h u}q-(h!h&h#hu}q.(h!h&h#Uskinq/u}q0(Utypeq1Ulinesq2Uidq3h utq4Unew_htmlq5(U >ªq6(hU PythonScriptq7tq8tq9Qh)U80%q:h+Unonq;h$K3U_objectsq<(}q=(U meta_typeq>UScript (Python)q?Uidq@h5u}qA(h>h?h@Unew_okqBu}qC(U meta_typeqDUScript (Python)qEhU view_htmlqFu}qG(U meta_typeqHUScript (Python)qIUidqJU config_htmlqKu}qL(hHhIhJU config_okqMu}qN(U meta_typeqOU DTML DocumentqPUidqQU default_cssqRu}qS(U meta_typeqTUImageqUUidqVU icone.pngqWutqXh'U0.9qYU view_htmlqZ(U >«q[(hU PythonScriptq\tq]tq^QU config_okq_(U >¬q`(hU PythonScriptqatqbtqcQh/U1hR(U >®qd(UOFS.DTMLDocumentqeU DTMLDocumentqftqgtqhQhB(U >©qi(hU PythonScriptqjtqktqlQU icone.pngqm(U >­qn(U OFS.ImageqoUImageqptqqtqrQU__ac_local_roles__qs}qth@U locatebarquU experimentalqvUu. <™k((U OFS.FolderqUFolderqtqNt.}q(Uplus.gifq(U >`q(U OFS.ImageqUImageqtq tq QU config_okq (U >aq (U#Products.PythonScripts.PythonScriptq U PythonScriptqtqtqQUnew_okq(U >bq(h U PythonScriptqtqtqQUidqU mp3_playlistqUplaylistq(U >cq(h U PythonScriptqtqtqQUtitleqU Mp3 playlistqU remove_itemq(U >dq (h U PythonScriptq!tq"tq#QUnoteq$KGUversionq%U0.1q&U view_htmlq'(U >eq((h U PythonScriptq)tq*tq+QU_objectsq,(}q-(U meta_typeq.UScript (Python)q/Uidq0Unew_htmlq1u}q2(U meta_typeq3UScript (Python)q4Uidq5Unew_okq6u}q7(U meta_typeq8UScript (Python)q9Uidq:U config_htmlq;u}q<(h8h9h:U config_okq=u}q>(U meta_typeq?UScript (Python)q@UidqAU view_htmlqBu}qC(U meta_typeqDU DTML DocumentqEUidqFUfsound_readme.txtqGu}qH(U meta_typeqIUFileqJUidqKU fsound.swfqLu}qM(hIhJhKU fsound.flaqNu}qO(hIhJhKUFSoundV1.1.0_playlist.xmlqPu}qQ(hIUScript (Python)qRhKhu}qS(hIhRhKUadd_itemqTu}qU(hIhRhKU add_item_okqVu}qW(U meta_typeqXUFileqYUidqZUpop.htmq[u}q\(hXUScript (Python)q]hZhu}q^(U meta_typeq_UImageq`UidqaU icone.pngqbu}qc(U meta_typeqdUImageqeUidqfhu}qg(hdhehfUdel.gifqhutqiU config_htmlqj(U >fqk(h U PythonScriptqltqmtqnQUnew_htmlqo(U >gqp(h U PythonScriptqqtqrtqsQU admin_onlyqtU1U descriptionqu(UtqvUFSoundV1.1.0_playlist.xmlqw(U >pqx(hUFileqytqztq{QU certifwebq|Unonq}hh(U >hq~(hUImageqtq€tqQU fsound.swfq‚(U >iqƒ(hUFileq„tq…tq†QhV(U >jq‡(h U PythonScriptqˆtq‰tqŠQU certifdevq‹UnonqŒU fsound.flaq(U >kqŽ(hUFileqtqtq‘QU__ac_local_roles__q’}q“Upop.htmq”(U >lq•(hUFileq–tq—tq˜QUdevq™U5%qšhT(U >mq›(h U PythonScriptqœtqtqžQhG(U >nqŸ(UOFS.DTMLDocumentq U DTMLDocumentq¡tq¢tq£QUzone_principaleq¤U1U _propertiesq¥(}q¦(Utypeq§Ustringq¨Uidq©UtitleqªUmodeq«Uwu}q¬(Utypeq­Ustringq®Uidq¯U experimentalq°u}q±(Utypeq²Uintq³Uidq´h$u}qµ(h²Ustringq¶h´h%u}q·(h²h¶h´h™u}q¸(h²h¶h´h‹u}q¹(h²h¶h´h|u}qº(h²h¶h´U moderateurq»u}q¼(Utypeq½Ustringq¾Uidq¿htu}qÀ(UtypeqÁUstringqÂUidqÃh¤u}qÄ(UtypeqÅUlinesqÆUidqÇhuutqÈhb(U >oqÉ(hUImageqÊtqËtqÌQh»Ugreg@emencia.comqÍU experimentalqÎUu. < P((U OFS.FolderqUFolderqtqNt.}q(U moderateurqUmat@emencia.comqU addchampsq(U =·q(U#Products.PythonScripts.PythonScriptq U PythonScriptq tq tq QU config_okq (U =¸q(h U PythonScriptqtqtqQUnew_okq(U =¹q(h U PythonScriptqtqtqQUidqUcontactqU certifwebqUnonqU deliochampsq(U =ºq(h U PythonScriptqtqtqQUtitleq UFormulaire de contactq!U new_verifq"(U =»q#(h U PythonScriptq$tq%tq&QU config_verifq'(U =¼q((h U PythonScriptq)tq*tq+QU modifchampsq,(U =½q-(h U PythonScriptq.tq/tq0QUnoteq1KUversionq2U1.1q3U view_htmlq4(U =¾q5(h U PythonScriptq6tq7tq8QU_objectsq9(}q:(U meta_typeq;UScript (Python)q(h;hÓq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU config_okq (U >Ôq (hU PythonScriptq tqtqQUnew_okq(U >Õq(hU PythonScriptqtqtqQUficheq(U >Öq(hU PythonScriptqtqtqQU del_entry_okq(U >×q(hU PythonScriptqtqtqQUidqUproductsq U certifwebq!Unonq"Utitleq#UProductsq$Unoteq%KNUaddq&(U >Øq'(hU PythonScriptq(tq)tq*QUversionq+U0.5q,U view_htmlq-(U >Ùq.(hU PythonScriptq/tq0tq1QU_objectsq2(}q3(U meta_typeq4UScript (Python)q5Uidq6Unew_htmlq7u}q8(U meta_typeq9UScript (Python)q:Uidq;Unew_okqUScript (Python)q?Uidq@U config_htmlqAu}qB(h>h?h@U config_okqCu}qD(U meta_typeqEUScript (Python)qFUidqGU view_htmlqHu}qI(U meta_typeqJUScript (Python)qKUidqLU del_entryqMu}qN(U meta_typeqOUScript (Python)qPUidqQhu}qR(U meta_typeqSUScript (Python)qTUidqUUaddqVu}qW(hShThUUadd_okqXu}qY(U meta_typeqZUScript (Python)q[Uidq\Umodq]u}q^(hZh[h\hu}q_(hZh[h\hu}q`(U meta_typeqaUImageqbUidqcU icone.pngqdutqeU config_htmlqf(U >Úqg(hU PythonScriptqhtqitqjQUnew_htmlqk(U >Ûql(hU PythonScriptqmtqntqoQU descriptionqp(UCatalogue produitsqqUtqrhX(U >Üqs(hU PythonScriptqttqutqvQhM(U >Ýqw(hU PythonScriptqxtqytqzQU certifdevq{Unonq|Umodq}(U >Þq~(hU PythonScriptqtq€tqQU__ac_local_roles__q‚}qƒUdevq„U60%q…Uzone_principaleq†U1U _propertiesq‡(}qˆ(Utypeq‰UstringqŠUidq‹UtitleqŒUmodeqUwu}qŽ(UtypeqUstringqUidq‘U experimentalq’u}q“(Utypeq”Uintq•Uidq–Unoteq—u}q˜(h”Ustringq™h–Uversionqšu}q›(h”h™h–Udevqœu}q(h”h™h–U certifdevqžu}qŸ(h”h™h–U certifwebq u}q¡(h”h™h–U moderateurq¢u}q£(Utypeq¤Ulinesq¥Uidq¦U descriptionq§u}q¨(Utypeq©UstringqªUidq«h†utq¬hd(U >ßq­(U OFS.Imageq®UImageq¯tq°tq±QU moderateurq²U p4@zwook.orgq³U experimentalq´Uu. <¤ ((U OFS.FolderqUFolderqtqNt.}q(Uedit_okq(U >ãq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU editer_postq (U >çq (hU PythonScriptq tqtqQU publier_postq(U >èq(hU PythonScriptqtqtqQU config_okq(U >àq(hU PythonScriptqtqtqQUnew_okq(U >äq(hU PythonScriptqtqtqQUidqUrss_aggregatorq U certifwebq!Unonq"Utitleq#UAgrégateur de fils rssq$U post_thanksq%(U >åq&(hU PythonScriptq'tq(tq)QUnoteq*KJUversionq+U0.6q,U view_htmlq-(U >æq.(hU PythonScriptq/tq0tq1QU_objectsq2(}q3(U meta_typeq4UScript (Python)q5Uidq6Unew_htmlq7u}q8(U meta_typeq9UScript (Python)q:Uidq;Unew_okqUScript (Python)q?Uidq@U config_okqAu}qB(U meta_typeqCUScript (Python)qDUidqEU view_htmlqFu}qG(U meta_typeqHUScript (Python)qIUidqJUpostqKu}qL(U meta_typeqMUScript (Python)qNUidqOUpost_okqPu}qQ(U meta_typeqRUScript (Python)qSUidqTh%u}qU(U meta_typeqVUScript (Python)qWUidqXU effacer_postqYu}qZ(hVhWhXhu}q[(hVhWhXh u}q\(U meta_typeq]UScript (Python)q^Uidq_hu}q`(U meta_typeqaUScript (Python)qbUidqcU config_htmlqdu}qe(U meta_typeqfUImageqgUidqhU icone.pngqiu}qj(hfUScript (Python)qkhhUreadqlutqmU config_htmlqn(U >áqo(hU PythonScriptqptqqtqrQUnew_htmlqs(U >âqt(hU PythonScriptqutqvtqwQU descriptionqx(UAgrégateur de fils rssqyUUtqzUreadq{(U >éq|(hU PythonScriptq}tq~tqQhP(U >êq€(hU PythonScriptqtq‚tqƒQUpostq„(U >ëq…(hU PythonScriptq†tq‡tqˆQU certifdevq‰UnonqŠU__ac_local_roles__q‹}qŒUdevqU70%qŽUzone_principaleqU1U _propertiesq(}q‘(Utypeq’Ustringq“Uidq”Utitleq•Umodeq–Uwu}q—(Utypeq˜Ustringq™UidqšU experimentalq›u}qœ(UtypeqUintqžUidqŸUnoteq u}q¡(hUstringq¢hŸUversionq£u}q¤(hh¢hŸUdevq¥u}q¦(hh¢hŸU certifdevq§u}q¨(hh¢hŸU certifwebq©u}qª(hh¢hŸU moderateurq«u}q¬(Utypeq­Ulinesq®Uidq¯U descriptionq°u}q±(Utypeq²Ustringq³Uidq´hutqµhY(U >ìq¶(hU PythonScriptq·tq¸tq¹QU icone.pngqº(U >íq»(U OFS.Imageq¼UImageq½tq¾tq¿QU moderateurqÀU p4@zwook.orgqÁU experimentalqÂUu. <¥|((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >îq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U admin_onlyq U1U descriptionq(UxCe module permet de répertorier tous les membres de votre site (avec leur adresse email et la date de leur inscription).qUUtqUtitleqUListe des membresqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(U meta_typeqUScript (Python)qUidqUnew_okqu}q(U meta_typeqUScript (Python)q Uidq!U config_htmlq"u}q#(hh h!U config_okq$u}q%(U meta_typeq&UScript (Python)q'Uidq(U view_htmlq)u}q*(U meta_typeq+UImageq,Uidq-U icone.pngq.utq/Unew_htmlq0(U >ðq1(hU PythonScriptq2tq3tq4QUdevq5U75%q6U certifdevq7Unonq8Unoteq9K$Uversionq:U0.5.2q;U view_htmlq<(U >ñq=(hU PythonScriptq>tq?tq@QUzone_principaleqAU1U config_okqB(U >òqC(hU PythonScriptqDtqEtqFQU _propertiesqG(}qH(UtypeqIUstringqJUidqKUtitleqLUmodeqMUwu}qN(UtypeqOUstringqPUidqQU experimentalqRu}qS(UtypeqTUintqUUidqVh9u}qW(hTUstringqXhVh:u}qY(hThXhVh5u}qZ(hThXhVh7u}q[(hThXhVh u}q\(hThXhVU moderateurq]u}q^(Utypeq_Ulinesq`Uidqahu}qb(UtypeqcUstringqdUidqeh u}qf(UtypeqgUstringqhUidqihAutqjUnew_okqk(U >ïql(hU PythonScriptqmtqntqoQU icone.pngqp(U >óqq(U OFS.ImageqrUImageqstqttquQU__ac_local_roles__qv}qwh]Uzwook@matisson.comqxUidqyU members_listqzU experimentalq{Uu. <¦j((U OFS.FolderqUFolderqtqNt.}q(U config_htmlq(U >ôq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU certifwebq Unonq U descriptionq (UtqUtitleqUrecherche googleqU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_htmlqu}q(U meta_typeqUScript (Python)qUidqUnew_okqu}q(U meta_typeqUScript (Python)qUidqU config_htmlq u}q!(hhhU config_okq"u}q#(U meta_typeq$UScript (Python)q%Uidq&U view_htmlq'u}q((U meta_typeq)UScript (Python)q*Uidq+U recherche_okq,u}q-(U meta_typeq.UImageq/Uidq0U icone.pngq1utq2U _propertiesq3(}q4(Utypeq5Ustringq6Uidq7Utitleq8Umodeq9Uwu}q:(Utypeq;Ustringqu}q?(Utypeq@UintqAUidqBUnoteqCu}qD(h@UstringqEhBUversionqFu}qG(h@hEhBUdevqHu}qI(h@hEhBU certifdevqJu}qK(h@hEhBU certifwebqLu}qM(h@hEhBU moderateurqNu}qO(UtypeqPUlinesqQUidqRU descriptionqSu}qT(UtypeqUUstringqVh+UskinqWutqXUnew_htmlqY(U >öqZ(hU PythonScriptq[tq\tq]QUdevq^U5%q_U certifdevq`UnonqaUnoteqbK2UversionqcU0.1qdU view_htmlqe(U >÷qf(hU PythonScriptqgtqhtqiQU config_okqj(U >øqk(hU PythonScriptqltqmtqnQhWU1h,(U >ùqo(hU PythonScriptqptqqtqrQUnew_okqs(U >õqt(hU PythonScriptqutqvtqwQU icone.pngqx(U >úqy(U OFS.ImageqzUImageq{tq|tq}QU__ac_local_roles__q~}qU moderateurq€Upatbriguet@freesurf.chqUidq‚Urecherche_googleqƒU experimentalq„Uu. <  ((U OFS.FolderqUFolderqtqNt.}q(Uadd_image_validq(U >¯q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU conf_menuq (U >µq (hU PythonScriptq tqtqQUrep_ajouter_images_validq(U >±q(hU PythonScriptqtqtqQU _propertiesq(}q(UtypeqUstringqUidqUtitleqUmodeqUwu}q(UtypeqUstringqUidqUskinq u}q!(Utypeq"Uintq#Uidq$Unoteq%u}q&(h"Ustringq'h$Uversionq(u}q)(h"h'h$Udevq*u}q+(h"h'h$U certifdevq,u}q-(h"h'h$U certifwebq.u}q/(h"h'h$U moderateurq0u}q1(Utypeq2Ulinesq3Uidq4U descriptionq5utq6Unew_okq7(U >³q8(hU PythonScriptq9tq:tq;QU__ac_local_roles__q<}q=Uidq>U navigationq?h.Unonq@UtitleqAUMenu de navigationqBUmenuqC(U >´qD(hU PythonScriptqEtqFtqGQUMIX_INFOqH(U >°qI(hU PythonScriptqJtqKtqLQUrep_ajouter_imagesqM(U >ÂqN(hU PythonScriptqOtqPtqQQh%K6h(U0.1qRU view_htmlqS(U >·qT(hU PythonScriptqUtqVtqWQU_objectsqX(}qY(U meta_typeqZUScript (Python)q[Uidq\Unew_htmlq]u}q^(U meta_typeq_UScript (Python)q`UidqaUnew_okqbu}qc(U meta_typeqdUScript (Python)qeUidqfU config_htmlqgu}qh(U meta_typeqiUScript (Python)qjUidqkh u}ql(hihjhkUmenuqmu}qn(hihjhkUconf_1qou}qp(hihjhkU conf_1_validqqu}qr(U meta_typeqsUScript (Python)qtUidquUconf_2qvu}qw(hshthuU conf_2_validqxu}qy(U meta_typeqzUScript (Python)q{Uidq|U add_imageq}u}q~(U meta_typeqUScript (Python)q€Uidqhu}q‚(U meta_typeqƒUScript (Python)q„Uidq…Uconf_3q†u}q‡(U meta_typeqˆUScript (Python)q‰UidqŠU conf_3_bisq‹u}qŒ(U meta_typeqUScript (Python)qŽUidqU conf_3_delqu}q‘(hhŽhU conf_3_validq’u}q“(U meta_typeq”UScript (Python)q•Uidq–Uconf_4q—u}q˜(U meta_typeq™UScript (Python)qšUidq›UMIX_INFOqœu}q(U meta_typeqžUScript (Python)qŸUidq hMu}q¡(U meta_typeq¢UScript (Python)q£Uidq¤hu}q¥(h¢h£h¤Urep_delete_imagesq¦u}q§(U meta_typeq¨UScript (Python)q©UidqªU view_htmlq«u}q¬(U meta_typeq­UImageq®Uidq¯U icone.pngq°utq±U config_htmlq²(U >¸q³(hU PythonScriptq´tqµtq¶QUnew_htmlq·(U >¹q¸(hU PythonScriptq¹tqºtq»Qh(U >ºq¼(hU PythonScriptq½tq¾tq¿Qh5(UØLe module de navigation automatique est indispensable pour générer les rubriques et sous rubriques de votre système. Il fait parti des modules les plus élaborés et demande une certaine rigueur pour sa mise en place. qÀUUUUtqÁUconf_4qÂ(U >»qÃ(hU PythonScriptqÄtqÅtqÆQh¦(U >¼qÇ(hU PythonScriptqÈtqÉtqÊQUconf_1qË(U >½qÌ(hU PythonScriptqÍtqÎtqÏQh}(U >¾qÐ(hU PythonScriptqÑtqÒtqÓQUconf_3qÔ(U >¿qÕ(hU PythonScriptqÖtq×tqØQUconf_2qÙ(U >ÀqÚ(hU PythonScriptqÛtqÜtqÝQhx(U >ÁqÞ(hU PythonScriptqßtqàtqáQh‹(U >¶qâ(hU PythonScriptqãtqätqåQh,Unonqæhq(U >Ãqç(hU PythonScriptqètqétqêQh*U90%qëh’(U >²qì(hU PythonScriptqítqîtqïQUskinqðU1U icone.pngqñ(U >Äqò(U OFS.ImageqóUImageqôtqõtqöQh0Uxavier@emencia.com q÷u. <§?n((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÚzwu=mem['zwo_url'] zwui=zwu+'/zwo_images/bo/' ret='' ret=ret+""" """ ret=ret+'Zwook - '+ch+'' ret=ret+'' ret=ret+'' ret=ret+'
' ret=ret+'' a=int(pr['largeur_cercle']) tot=0 if mem['droit_edit_dossier']==1: tot=tot+1 if mem['droit_arbo']==1: tot=tot+1 if mem['droit_edit_skin']==1: tot=tot+1 if mem['droit_config_dossier']==1: tot=tot+1 list_roles=mem['user_roles_id'] if 'Manager' in list_roles: tot=tot+1 lsp=int(pr['espacement']) l=tot*(a+lsp)+2*lsp def roll(nom,url,img,rol,help): hlptxt='' if help<>'': hlptxt=' title="aide"' rett='' return rett def roll2(typ,now,help): if typ==now: return roll('roll'+now,zwu+'/zwo_bo/'+now,zwui+'cercle_'+now+'.gif',zwui+'r_cercle_'+now+'.gif',help) else: return roll('roll'+now,zwu+'/zwo_bo/'+now,zwui+'f_cercle_'+now+'.gif',zwui+'r_cercle_'+now+'.gif',help) def roll2l(typ,now,help): if typ==now: return roll('roll'+now,mem['rep_url']+'/zwo_bo/'+now,zwui+'cercle_'+now+'.gif',zwui+'r_cercle_'+now+'.gif',help) else: return roll('roll'+now,mem['rep_url']+'/zwo_bo/'+now,zwui+'f_cercle_'+now+'.gif',zwui+'r_cercle_'+now+'.gif',help) ret=ret+'' sp='' sp2='' ret=ret+sp if mem['droit_edit_dossier']==1: ret=ret+sp2 ret=ret+roll2l(typ,"edit",'Edition du contenu')+' ' if mem['droit_edit_skin']==1: ret=ret+sp2 ret=ret+roll2l(typ,"skin",'Edition des skins')+' ' if mem['droit_arbo']==1: ret=ret+sp2 ret=ret+roll2l(typ,"arbo",'Administration des pages')+' ' if mem['droit_config_dossier']==1: ret=ret+sp2 ret=ret+roll2(typ,"admin",'Administration du zwook')+' ' list_roles=mem['user_roles_id'] if 'Manager' in list_roles: ret=ret+sp2 ret=ret+roll('rollzope',zwu+'/manage',zwui+'f_cercle_zope.gif',zwui+'r_cercle_zope.gif','Interface Zope') ret=ret+sp ll=760-l-int(pr['largeur_case_droite'])-int(pr['largeur_colonne']) ret=ret+'' ret=ret+pr['txt_'+typ] ret=ret+'
'+ch ret=ret+'
' ret=ret+'Exit' ret=ret+'
' #ret=ret+roll('rollhelp',zwu+'/help',zwui+'rond_help.gif',zwui+'r_rond_help.gif','Aide Zwook') #ret=ret+sp #ret=ret+roll('rollannule',zwu+'/annule',zwui+'rond_annule.gif',zwui+'r_rond_annule.gif','Annuler derniere modification') #ret=ret+sp #ret=ret+'EXIT ' ret=ret+roll('rollzwook',mem['rep_url'],zwui+'rond_zwook.gif',zwui+'r_rond_zwook.gif','Quitter Back Office') ret=ret+' ' ret=ret+'
' ret=ret+'
' ret=ret+'' ret=ret+'
' ret=ret+'' ret=ret+'
' head=ret spm='
' l=str(760-(int(pr['largeur_colonne']))-(int(pr['espacement']))) mid='
' mid=mid+'' spe='
' foot='
' foot=foot+"" return (head,spm,mid,spe,foot) q Uidq Uautourq U_codeqT c@s d„ZdS(Nc4s!tˆdƒ‰ˆd‰d}|d}|d|d}|dt|d|ƒd }|d }|d t|d ƒd }|dˆd|d}tt|dƒƒ} d} tˆdƒdjo| d} ntˆdƒdjo| d} ntˆdƒdjo| d} ntˆdƒdjo| d} ntˆdƒ} d| jo| d} ntt|dƒƒ} | | | d| } d„‰‡‡‡d†}‡‡‡d†}|dt| ƒd }dˆd t|dƒd!}dˆd ttt|dƒƒdƒd!}||}tˆdƒdjo(||}|||d"d#ƒd$}ntˆdƒdjo(||}|||d%d&ƒd$}ntˆdƒdjo(||}|||d'd(ƒd$}ntˆdƒdjo(||}|||d)d*ƒd+}ntˆdƒ} d| jo6||}|ˆd,ˆd-ˆd.ˆd/d0ƒ}n||}d1| tt|d2ƒƒtt|d ƒƒ}|d3t|ƒd4t|d5|ƒd }|t|d6|ƒ}|d7|}|d8t|d2ƒd9t|d5|ƒd }|d:tˆd;ƒd<}|d7}|ˆd=tˆd;ƒˆd>ˆd?d@ƒ}|d$}|dA}|dBt|dƒdCt|dƒdD}|dˆdEt|dƒdF}|dG}|dH}|d3t|d ƒdI}|}dJt|dƒdKt|d ƒdLˆdEt|dƒdM}td1tt|d ƒƒtt|dƒƒƒ} dt|dƒd }|d| dI}dJt|dƒdK| dLˆdEt|dƒdM}dN}|dO}|||||fSdS(PNszwo_urls/zwo_images/bo/s~sR sZwook - s���ssBs
s slargeur_cercleisdroit_edit_dossieris droit_arbosdroit_edit_skinsdroit_config_dossiers user_roles_idsManagers espacementicCsÔd}|djo d}nd|d|d}|d|d|d}|d}|d|d|d}|d }|d|d}|d }|d jo|d }n|d |d|d}|SdS(Nss title="aide"s (shlptxtshelpsurlsrettsnomsrolsimg(snomsurlsimgsrolshelpshlptxtsrett((sScript (Python)sroll}s      cs‰||jo>ˆd|ˆd|ˆd|dˆd|d|ƒSn;ˆd|ˆd|ˆd|dˆd|d|ƒSdS(Nsrolls/zwo_bo/scercle_s.gifs r_cercle_s f_cercle_(stypsnowsrollszwuszwuishelp(stypsnowshelpsrollszwuszwui(srollszwuszwui(sScript (Python)sroll2s >cs›||joGˆd|tˆdƒd|ˆd|dˆd|d|ƒSnDˆd|tˆdƒd|ˆd|dˆd|d|ƒSdS(Nsrollsrep_urls/zwo_bo/scercle_s.gifs r_cercle_s f_cercle_(stypsnowsrolls _getitem_smemszwuishelp(stypsnowshelpsrolls _getitem_smemszwui(smemsrollszwui(sScript (Python)sroll2l“s GsseditsEdition du contenus sskinsEdition des skinssarbosAdministration des pagessadminsAdministration du zwooks srollzopes/managesf_cercle_zope.gifsr_cercle_zope.gifsInterface Zopeiøslargeur_case_droites Exits rollzwooksrond_zwook.gifsr_rond_zwook.gifsQuitter Back Offices
s
s/zwo_images/pixel.gif" height="s width="1">s
sBs" valign="top">s:
s
s(s _getitem_smemszwuszwuisretschsprstypsintsastots list_rolesslspslsrollsroll2sroll2lsstrsspssp2sllsheadsspmsmidsspesfoot(smemsprstypschs _getitem_szwuszwuisretsintsastots list_rolesslspslsrollsroll2sroll2lsstrsspssp2sllsheadsspmsmidsspesfoot((smemszwusrollszwuisScript (Python)sautoursŽ  _   /       , 0-0 -  ,#  A28 (sautour(sautour((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U >ûq (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asU _filepathq*U3Script (Python):/test_kzexp_zwook_cvs/zwo_bo/autourq+U_paramsq,U mem,pr,typ,chq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Umemq4Uprq5Utypq6Uchq7U _getitem_q8Uzwuq9Uzwuiq:Uretq;UintqUlspq?UlUrollq@Uroll2qAUroll2lqBUstrqCUspqDUsp2qEUllqFUheadqGUspmqHUmidqIUspeqJUfootqKtqLubu. <¨ƒ((U OFS.FolderqUFolderqtqNt.}q(Uusersq(U >üq(hUFolderqtqtq QUparamokq (U >ýq (U#Products.PythonScripts.PythonScriptq U PythonScriptq tqtqQUtitleqUUmodulesq(U >þq(hUFolderqtqtqQU index_htmlq(U >ÿq(h U PythonScriptqtqtqQUgroupsq(U ?q(hUFolderqtqtqQU_objectsq (}q!(U meta_typeq"UFolderq#Uidq$Ugroupsq%u}q&(h"h#h$Umodulesq'u}q((U meta_typeq)UScript (Python)q*Uidq+U index_htmlq,u}q-(h)h*h+Uparamokq.u}q/(U meta_typeq0UFolderq1Uidq2Uusersq3u}q4(U meta_typeq5UFolderq6Uidq7Ucssq8utq9U__ac_local_roles__q:}q;Uidq(U ?q?(hUFolderq@tqAtqBQu. <©%5((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tdcolor=pr['color_'+c] colort=pr['color_t_'+c] l=str(2*int(pr['espacement'])+int(pr['largeur_rond']) ) ll=str( int(pr['largeur_colonne'])-int(l) ) li=str( int(pr['largeur_colonne'])-3*int(pr['espacement']) ) zwui=zwu+'/zwo_images/bo/' def roll(nom,url,img,rol): rett='' return rett idtitre=titre while string.find(idtitre,'>')<>-1: newtitre=string.split(idtitre,'<',1)[0]+string.split(idtitre,'>',1)[1] idtitre=newtitre newtitre="" for l in idtitre: if l in 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ': newtitre=newtitre+l idtitre=newtitre FFF=0 if pr.has_key('box'): if idtitre+'=F' in pr['box']: FFF=1 html=None rett='' rett=rett+'' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+titre rett=rett+'' if html: rett=rett+roll('roll'+idtitre,'configbox?typ=F&id='+idtitre,zwui+'rond_ferme.gif',zwui+'r_rond_ferme.gif') rett=rett+'
' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+'' if valid: rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+html rett=rett+'' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+valid rett=rett+'
' else: if FFF==0: rett=rett+'' else: rett=rett+roll('roll'+idtitre,'configbox?typ=O&id='+idtitre,zwui+'rond_ouvre.gif',zwui+'r_rond_ouvre.gif') rett=rett+'
' rett=rett+'' rett=rett+'
' return rett q U_codeq TVc@seed„ZdS(NcCsˆt}t} ||d|ƒ} ||d|ƒ} tdt ||dƒƒt ||dƒƒƒ}tt ||dƒƒt |ƒƒ}tt ||dƒƒdt ||dƒƒƒ}|d}d „}|}xq| td ƒ|d ƒd joP|| td ƒ|dd ƒdƒ|| td ƒ|d d ƒd ƒ}|}q×Wd}x)|D]!}|djo||}qUqUW|}d}| |dƒdƒo.|d||dƒjod }t}qÊnd||dƒd}|d||dƒd||dƒd| d}|d|d||dƒd}|d}|d||dƒd | d}|d|d!||dƒd"}|d#|d | d$}|d%| d}||}|d&|d | d'}|oê||d(|d)||d*|d+ƒ}|d}|d||d,ƒd||dƒd| d}|d|d||d,ƒd}|d-}|d||dƒd}|d||d.ƒd||dƒd||d/ƒd}|d|d||d.ƒd}|d0}|d1||dƒd ||d/ƒd}|d|d2||dƒd}|d3}|d1|d ||d/ƒd}|d%||d4ƒd}||}|d5}|d1||dƒd ||d/ƒd}|d|d2||dƒd}|d3}|d6||d7ƒd||dƒd||d/ƒd}|d|d||d7ƒd}|d}|oN|d8||dƒd9||d:ƒd;}|d<}||}|d=}n|d>}n¸|djo|d|d?}n*||d(|d@||dA|dBƒ}|d}|d||d,ƒd||dƒd| d}|d|d||d,ƒd}|d-}|SdS(CNscolor_scolor_t_is espacements largeur_rondslargeur_colonneis/zwo_images/bo/cCs¯d|d}|d|d|d}|d}|d|d|d}|d}|d|d}|d}|djo|d }n|d |d |d }|SdS( Ns (surlsrettsnomsrolsimg(snomsurlsimgsrolsrett((sScript (Python)sroll s    sfinds>issplitsss sss$srollsconfigbox?typ=F&id=srond_ferme.gifsr_rond_ferme.gifsmarge_bas_titressmarge_haut_htmlscolor_fond_menuss ssss,/zwo_images/pixel.gif" height="1" width="1">sconfigbox?typ=O&id=srond_ouvre.gifsr_rond_ouvre.gif(s _getitem_s_getitems _getattr_s_getattrsprscscolorscolortsstrsintslsllsliszwuszwuisrollstitresidtitresstringsnewtitresFFFsNoneshtmlsrettsvalid(szwusprscstitreshtmlsvalids _getitem_s_getitems _getattr_s_getattrscolorscolortsstrsintslsllsliszwuisrollsidtitresstringsnewtitresFFFsNonesrett((sScript (Python)smenusŠ2%2   F   4# ## ) 4# =# ,# #  ,# =# ,   ) 4# (sNonesmenu(sNonesmenu((sScript (Python)ssq U func_defaultsq(NNtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U ?q(U Persistenceq UPersistentMappingq!tq"tq#QU__ac_local_roles__q$}q%Uxavq&]q'UOwnerq(asUidq)Umenuq*U_paramsq+U#zwu,pr,c,titre,html=None,valid=Noneq,U func_codeq-(cShared.DC.Scripts.Signature FuncCode q.oq/}q0(U co_varnamesq1(Uzwuq2Uprq3UcUtitreq4Uhtmlq5Uvalidq6U _getitem_q7U_getitemq8U _getattr_q9U_getattrq:Ucolorq;UcolortqUlUllq?Uliq@UzwuiqAUrollqBUidtitreqCUstringqDUnewtitreqEUFFFqFUNoneqGUrettqHtqIU co_argcountqJKubu. <­ ((U OFS.FolderqUFolderqtqNt.}q(Uplaceokq(U ?Kq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUplace_zone_editokq (U ?+q (hU PythonScriptq tqtqQUskinsq(U ?,q(hUFolderqtqtqQU modif_li_coq(U ?-q(hU PythonScriptqtqtqQU modifproptabq(U ?.q(hU PythonScriptqtqtqQUdupliquer_elementsq(U ?/q (hU PythonScriptq!tq"tq#QU detruireokq$(U ?0q%(hU PythonScriptq&tq'tq(QU add_soustabokq)(U ?1q*(hU PythonScriptq+tq,tq-QUfusionokq.(U ?2q/(hU PythonScriptq0tq1tq2QUidq3Uskinq4U modifpropcasq5(U ?Aq6(hU PythonScriptq7tq8tq9QU delcolonneokq:(U ?3q;(hU PythonScriptqQUplace_zone_editq?(U ?4q@(hU PythonScriptqAtqBtqCQUtitleqDUU delligneokqE(U ?5qF(hU PythonScriptqGtqHtqIQUskinokqJ(U ?6qK(hU PythonScriptqLtqMtqNQUrenommer_elementsqO(U ?7qP(hU PythonScriptqQtqRtqSQU_objectsqT(}qU(U meta_typeqVUScript (Python)qWUidqXUplaceqYu}qZ(U meta_typeq[UScript (Python)q\Uidq]Udeplacer_elementsq^u}q_(h[h\h]Udetruire_elementsq`u}qa(U meta_typeqbUScript (Python)qcUidqdUdupliquer_elementsqeu}qf(U meta_typeqgUScript (Python)qhUidqiUrenommer_elementsqju}qk(U meta_typeqlUScript (Python)qmUidqnUannule_fusionokqou}qp(hlhmhnU del_soustabokqqu}qr(hlhmhnhEu}qs(hlhmhnh:u}qt(U meta_typequUFolderqvUidqwUskinsqxu}qy(U meta_typeqzUScript (Python)q{Uidq|Uplace_zone_editq}u}q~(U meta_typeqUScript (Python)q€UidqU ajout_elementq‚u}qƒ(hh€hU valid_selq„u}q…(hh€hUediter_elementq†u}q‡(hh€hU detruireokqˆu}q‰(hh€hU renommerokqŠu}q‹(hh€hU addligneokqŒu}q(hh€hU addcolonneokqŽu}q(hh€hU add_soustabokqu}q‘(hh€hUfusionokq’u}q“(hh€hU modifpropcasq”u}q•(hh€hUplace_zone_editokq–u}q—(hh€hU validationq˜u}q™(hh€hUdispoqšu}q›(hh€hUdispookqœu}q(hh€hUaideqžu}qŸ(U meta_typeq UScript (Python)q¡Uidq¢U index_htmlq£u}q¤(U meta_typeq¥UScript (Python)q¦Uidq§Uskinokq¨u}q©(U meta_typeqªUScript (Python)q«Uidq¬U modifproptabq­u}q®(hªh«h¬U dupliquerokq¯u}q°(hªh«h¬Uplaceokq±u}q²(U meta_typeq³UScript (Python)q´UidqµU modif_li_coq¶u}q·(U meta_typeq¸UScript (Python)q¹UidqºU list_elementq»utq¼Uediter_elementq½(U ?8q¾(hU PythonScriptq¿tqÀtqÁQho(U ?9qÂ(hU PythonScriptqÃtqÄtqÅQU ajout_elementqÆ(U ?;qÇ(hU PythonScriptqÈtqÉtqÊQhq(U ?qÕ(hU PythonScriptqÖtq×tqØQU addligneokqÙ(U ??qÚ(hU PythonScriptqÛtqÜtqÝQUaideqÞ(U ?@qß(hU PythonScriptqàtqátqâQUdeplacer_elementsqã(U ?:qä(hU PythonScriptqåtqætqçQU valid_selqè(U ?Bqé(hU PythonScriptqêtqëtqìQU list_elementqí(U ?Cqî(hU PythonScriptqïtqðtqñQUdispoqò(U ?Dqó(hU PythonScriptqôtqõtqöQU addcolonneokq÷(U ?Eqø(hU PythonScriptqùtqútqûQU dupliquerokqü(U ?Fqý(hU PythonScriptqþtqÿtrQU index_htmlr(U ?Gr(hU PythonScriptrtrtrQUplacer(U ?Hr(hU PythonScriptrtr tr QU validationr (U ?Jr (hU PythonScriptr trtrQU__ac_local_roles__r}rUdispookr(U ?Ir(hU PythonScriptrtrtrQu. <°Ï((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÔpr={} pr['color_fond_module']='#cceeff' pr['color_fond_edit']='#dddddd' pr['color_fond_skin']='#dddddd' pr['color_fond_admin']='#dddddd' pr['color_fond_arbo']='#dddddd' pr['color_fond_menu']='#f0f0ff' pr['color_fond_menu_valid']='#FF0000' pr['color_fond_edition']='#ffffff' pr['color_txt_module']='#000000' pr['color_txt_edit']='#000000' pr['color_txt_skin']='#000000' pr['color_txt_admin']='#000000' pr['color_txt_arbo']='#000000' pr['color_txt_menu']='#000000' pr['color_txt_edition']='#000000' pr['color_edit']='#ff9933' pr['color_t_edit']='#ffffff' pr['color_module']='#ff9933' pr['color_t_module']='#ffffff' pr['color_skin']='#990099' pr['color_t_skin']='#ffffff' pr['color_element']='#3399cc' pr['color_t_element']='#ffffff' pr['color_nav']='#ffff33' pr['color_t_nav']='#000000' pr['color_page']='#FFFFFF' pr['color_t_page']='#000000' pr['color_admin']='#AAFFAA' pr['color_t_admin']='#000000' pr['color_info']='#BBCCDD' pr['color_t_info']='#000000' pr['color_mem']='#999999' pr['color_t_mem']='#000000' pr['color_user']='#cc9999' pr['color_t_user']='#000000' pr['color_group']='#990033' pr['color_t_group']='#ffffff' pr['color_alert']='#ff0000' pr['color_t_alert']='#000000' pr['color_refer']='##01cccc' pr['color_t_refer']='#ffffff' pr['color_droits']='#019934' pr['color_t_droits']='#ffffff' pr['color_case_sel']='#ffcc99' pr['color_skin_case_sel']='#ffbbff' pr['color_action']='#999999' pr['txt_edit']='EDITION DU CONTENU' pr['txt_skin']='EDITION DES SKINS' pr['txt_admin']='ADMINISTRATION GENERALE' pr['txt_arbo']='CARTE DES PAGES' pr['txt_module']='EDITION D\'UN ELEMENT' pr['largeur_colonne']='200' pr['largeur_case_droite']='130' pr['espacement']='5' pr['largeur_cercle']='28' pr['largeur_rond']='14' pr['largeur_carre']='14' pr['hauteur_carre']='14' pr['marge_haut_titre']='1' pr['marge_bas_titre']='1' pr['marge_haut_html']='3' pr['marge_bas_html']='3' pr['epaisseur_tableau']='3' pr['epaisseur_case']='1' pr['espacement_tableau']='10' pr['hauteur_mini_case']='80' return pr q U _filepathq U0Script (Python):/kzexp_zwook/zwo_bo/presentationq U_codeqT$ c@s d„ZdS(NcCs.h}dt|ƒdsqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU_dav_writelocksq(U ?cq (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asUidq*U presentationq+U_paramsq,UU func_codeq-(cShared.DC.Scripts.Signature FuncCode q.oq/}q0(U co_argcountq1KU co_varnamesq2(Uprq3U_write_q4tq5ubu. <ª ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qU _proxy_rolesq(UManagerqtq Uwarningsq )U Script_magicq KU_bodyq Tmem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' uo=mem['user_zw_obj'] box='' if not uo.hasProperty('configbox'): uo.manage_addProperty('configbox',[id+'='+typ],'lines') else: box=[] oldbox=uo.configbox for l in oldbox: dec=string.split(l,'=') if dec[0]<>id: box.append(l) box.append(id+'='+typ) uo.manage_changeProperties(configbox=box) context.REQUEST.RESPONSE.redirect(context.REQUEST.HTTP_REFERER) return q UidqU configboxqU_codeqTc@s d„ZdS(Nc Csntttdƒdƒƒ}t|dƒdjodSnt|dƒ}d}t|dƒd ƒ o(t|d ƒd |d |gd ƒn£g}t|d ƒ}xYt |ƒD]K} tt d ƒ| d ƒ} t| dƒ|jot|dƒ| ƒq¯q¯Wt|dƒ|d |ƒt|dƒd |ƒttttdƒdƒdƒtttdƒdƒƒdSdS(Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s user_zw_objss hasPropertys configboxsmanage_addPropertys=slinesssplitisappendsmanage_changePropertiessREQUESTsRESPONSEsredirects HTTP_REFERER( s _getattr_scontextsmems _getitem_suosboxsidstypsoldboxs _getiter_slsstringsdec( stypsids _getattr_scontextsmems _getitem_suosboxsoldboxs _getiter_slsstringsdec((sScript (Python)s configboxs"% .(s configbox(s configbox((sScript (Python)ssqU func_defaultsqNUerrorsq)U _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerq U containerq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Utypq(Uidq)U _getattr_q*Ucontextq+Umemq,U _getitem_q-Uuoq.Uboxq/Uoldboxq0U _getiter_q1UlUstringq2Udecq3tq4ubU__ac_local_roles__q5}q6Uxavq7]q8UOwnerq9asU _filepathq:U6Script (Python):/test_kzexp_zwook_cvs/zwo_bo/configboxq;U_paramsq(U ?q?(U Persistenceq@UPersistentMappingqAtqBtqCQu. <«((U OFS.FolderqUFolderqtqNt.}q(Udeplacer_pagesq(U ?q(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QUplaceokq (U ?)q (hU PythonScriptq tqtqQU dupliquerokq(U ?"q(hU PythonScriptqtqtqQUdupliquer_pagesq(U ?q(hU PythonScriptqtqtqQUaideq(U ?q(hU PythonScriptqtqtqQU modif_li_coq(U ?q (hU PythonScriptq!tq"tq#QUdupliquer_elementsq$(U ? q%(hU PythonScriptq&tq'tq(QU detruireokq)(U ? q*(hU PythonScriptq+tq,tq-QU add_soustabokq.(U ? q/(hU PythonScriptq0tq1tq2QUfusionokq3(U ? q4(hU PythonScriptq5tq6tq7QUidq8Ueditq9Udetruire_pages_okq:(U ? q;(hU PythonScriptqQU delcolonneokq?(U ?q@(hU PythonScriptqAtqBtqCQUtitleqDUUrenommer_pagesqE(U ?qF(hU PythonScriptqGtqHtqIQU modifpropcasqJ(U ?qK(hU PythonScriptqLtqMtqNQUdetruire_pagesqO(U ?qP(hU PythonScriptqQtqRtqSQUrenommer_elementsqT(U ?qU(hU PythonScriptqVtqWtqXQU_objectsqY(}qZ(U meta_typeq[UScript (Python)q\Uidq]U list_elementq^u}q_(h[h\h]Uplaceq`u}qa(h[h\h]Uplaceokqbu}qc(U meta_typeqdUScript (Python)qeUidqfU valid_selqgu}qh(U meta_typeqiUScript (Python)qjUidqkUdeplacer_elementsqlu}qm(hihjhkUdetruire_elementsqnu}qo(hihjhkh)u}qp(U meta_typeqqUScript (Python)qrUidqsUdupliquer_elementsqtu}qu(U meta_typeqvUScript (Python)qwUidqxUrenommer_elementsqyu}qz(hvhwhxU renommerokq{u}q|(U meta_typeq}UScript (Python)q~UidqU modif_li_coq€u}q(U meta_typeq‚UScript (Python)qƒUidq„U addligneokq…u}q†(h‚hƒh„U addcolonneokq‡u}qˆ(h‚hƒh„h.u}q‰(h‚hƒh„Uannule_fusionokqŠu}q‹(h‚hƒh„U del_soustabokqŒu}q(h‚hƒh„h3u}qŽ(h‚hƒh„U delligneokqu}q(h‚hƒh„h?u}q‘(U meta_typeq’UScript (Python)q“Uidq”hJu}q•(U meta_typeq–UScript (Python)q—Uidq˜U ajout_elementq™u}qš(h–h—h˜Uediter_elementq›u}qœ(h–h—h˜Udispoqu}qž(h–h—h˜UdispookqŸu}q (h–h—h˜Uaideq¡u}q¢(U meta_typeq£UScript (Python)q¤Uidq¥U insertpageokq¦u}q§(h£h¤h¥Urenommer_pagesq¨u}q©(U meta_typeqªUScript (Python)q«Uidq¬Urenommer_pages_okq­u}q®(U meta_typeq¯UScript (Python)q°Uidq±h:u}q²(U meta_typeq³UScript (Python)q´UidqµU deplaceokq¶u}q·(h³h´hµUdeplacer_pagesq¸u}q¹(h³h´hµUdupliquer_pagesqºu}q»(h³h´hµUdupliquer_pages_okq¼u}q½(U meta_typeq¾UScript (Python)q¿UidqÀU change_refqÁu}qÂ(h¾h¿hÀUrefokqÃu}qÄ(U meta_typeqÅUScript (Python)qÆUidqÇU index_htmlqÈu}qÉ(U meta_typeqÊUScript (Python)qËUidqÌUdetruire_pagesqÍu}qÎ(U meta_typeqÏUScript (Python)qÐUidqÑU dupliquerokqÒutqÓUediter_elementqÔ(U ?qÕ(hU PythonScriptqÖtq×tqØQhŠ(U ?qÙ(hU PythonScriptqÚtqÛtqÜQU ajout_elementqÝ(U ?qÞ(hU PythonScriptqßtqàtqáQhŒ(U ?qâ(hU PythonScriptqãtqätqåQUdetruire_elementsqæ(U ?qç(hU PythonScriptqètqétqêQh{(U ?që(hU PythonScriptqìtqítqîQh…(U ?qï(hU PythonScriptqðtqñtqòQh­(U ?qó(hU PythonScriptqôtqõtqöQUdeplacer_elementsq÷(U ?qø(hU PythonScriptqùtqútqûQhg(U ?qü(hU PythonScriptqýtqþtqÿQUrefokr(U ?r(hU PythonScriptrtrtrQh^(U ?r(hU PythonScriptrtrtrQU deplaceokr (U ?r (hU PythonScriptr tr tr QUdispor(U ? r(hU PythonScriptrtrtrQh‡(U ?!r(hU PythonScriptrtrtrQU insertpageokr(U ?'r(hU PythonScriptrtrtrQU change_refr(U ?r(hU PythonScriptrtrtr QU index_htmlr!(U ?#r"(hU PythonScriptr#tr$tr%QUplacer&(U ?$r'(hU PythonScriptr(tr)tr*Qh¼(U ?&r+(hU PythonScriptr,tr-tr.QU__ac_local_roles__r/}r0h(U ?(r1(hU PythonScriptr2tr3tr4QUdispookr5(U ?%r6(hU PythonScriptr7tr8tr9Qu. <¬"((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TŠcc=string.split(c,'*') colorfond=pr['color_fond_menu'] if len(cc)>1: colorfond=pr['color_'+cc[1]] color=pr['color_'+cc[0]] colort=pr['color_t_'+cc[0]] l=str(2*int(pr['espacement'])+int(pr['largeur_rond']) ) lll=str( 760-int(pr['largeur_colonne'])-int(pr['espacement']) ) ll=str(int(lll)-int(l)) li=str( int(lll)-2*int(pr['espacement']) ) zwui=zwu+'/zwo_images/bo/' def roll(nom,url,img,rol): rett='' return rett idtitre=titre idtitre=string.replace(idtitre,'>','<') idtitre=string.replace(idtitre,'<','>') newtitre="" for l in idtitre: if l in 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ': newtitre=newtitre+l idtitre=newtitre FFF=0 if pr.has_key('box'): if idtitre+'=F' in pr['box']: html=None FFF=1 rett='' rett=rett+'' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'' rett=rett+titre rett=rett+'' if html: rett=rett+roll('roll'+idtitre,'configbox?typ=F&id='+idtitre,zwui+'rond_ferme.gif',zwui+'r_rond_ferme.gif') rett=rett+'
' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+html rett=rett+'' rett=rett+'' rett=rett+'
' rett=rett+'' rett=rett+'
' else: if FFF==0: rett=rett+'' else: rett=rett+roll('roll'+idtitre,'configbox?typ=O&id='+idtitre,zwui+'rond_ouvre.gif',zwui+'r_rond_ouvre.gif') rett=rett+'' rett=rett+'' rett=rett+'' rett=rett+'' return rett q U_codeq Túc@sed„ZdS(NcCsëttdƒ|dƒ}t|dƒ} t|ƒdjo t|dt|dƒƒ} nt|dt|dƒƒ} t|dt|dƒƒ} t dt t|d ƒƒt t|d ƒƒƒ}t d t t|d ƒƒt t|d ƒƒƒ}t t |ƒt |ƒƒ}t t |ƒdt t|d ƒƒƒ}|d }d„}|}ttdƒ|ddƒ}ttdƒ|ddƒ}d}x/t|ƒD]!}|djo||}qqW|}d}t|dƒdƒo.|dt|dƒjot}d}qnd|d}|dt|dƒdt|d ƒd| d}|d|d t|dƒd!}|d"}|d#|d$| d}|d%| d}|d|d&t|d ƒd}||}|d'|d$| d(}|o:||d)|d*||d+|d,ƒ}|d"}|dt|d-ƒd|d| d}|d|d t|d-ƒd!}|d.}|d|d}|dt|d/ƒd|d0| d}|d|d t|d/ƒd!}|d1}|d2t|d ƒd$| d}|d|d3t|d ƒd}|d4}|d2|d$| d}|d%t|d5ƒd}||}|d6}|d2t|d ƒd$| d}|d|d3t|d ƒd}|d4}|d7t|d8ƒd|d0| d}|d|d t|d8ƒd!}|d.}n¯|djo|d|d9}n*||d)|d:||d;|d<ƒ}|d"}|dt|d-ƒd|d| d}|d|d t|d-ƒd!}|d.}|SdS(=Nssplits*scolor_fond_menuiscolor_iscolor_t_is espacements largeur_rondiøslargeur_colonnes/zwo_images/bo/cCs¯d|d}|d|d|d}|d}|d|d|d}|d}|d|d}|d}|djo|d }n|d |d |d }|SdS( Ns (surlsrettsnomsrolsimg(snomsurlsimgsrolsrett((sScript (Python)srolls    sreplaces>s<sss ssrollsconfigbox?typ=F&id=srond_ferme.gifsr_rond_ferme.gifsmarge_bas_titressmarge_haut_htmls" colspan="3" bgcolor="ss sconfigbox?typ=O&id=srond_ouvre.gifsr_rond_ouvre.gif(s _getattr_sstringscsccs _getitem_sprs colorfondslenscolorscolortsstrsintslslllsllsliszwuszwuisrollstitresidtitresnewtitres _getiter_sFFFsNoneshtmlsrett(szwusprscstitreshtmls _getattr_sstringsccs _getitem_s colorfondslenscolorscolortsstrsintslslllsllsliszwuisrollsidtitresnewtitres _getiter_sFFFsNonesrett((sScript (Python)seditions‚ 22)     4# # ) +# +# ##   ## +# ) +# (sNonesedition(sNonesedition((sScript (Python)ssq U func_defaultsq(NtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq }q!(U co_argcountq"KU co_varnamesq#(Uzwuq$Uprq%UcUtitreq&Uhtmlq'U _getattr_q(Ustringq)Uccq*U _getitem_q+U colorfondq,Ulenq-Ucolorq.Ucolortq/Ustrq0Uintq1UlUlllq2Ullq3Uliq4Uzwuiq5Urollq6Uidtitreq7Unewtitreq8U _getiter_q9UFFFq:UNoneq;Urettq}q?Uxavq@]qAUOwnerqBasUidqCUeditionqDU_paramsqEUzwu,pr,c,titre,html=NoneqFU_dav_writelocksqG(U ?*qH(U PersistenceqIUPersistentMappingqJtqKtqLQu. <®q((U OFS.FolderqUFolderqtqNt.}q(Udeplacer_pagesq(U ?Lq(U#Products.PythonScripts.PythonScriptqU PythonScriptqtq tq QU change_refq (U ?_q (hU PythonScriptq tqtqQUdupliquer_pagesq(U ?Nq(hU PythonScriptqtqtqQU menucarteq(U ?Oq(hU PythonScriptqtqtqQUskinsq(U ?Pq(hU PythonScriptqtqtqQU detruireokq(U ?Qq (hU PythonScriptq!tq"tq#QUidq$Uarboq%Utitleq&UUrenommer_pagesq'(U ?Rq((hU PythonScriptq)tq*tq+QUdroitokq,(U ?Sq-(hU PythonScriptq.tq/tq0QUskinokq1(U ?Tq2(hU PythonScriptq3tq4tq5QUdetruire_pagesq6(U ?Uq7(hU PythonScriptq8tq9tq:QU change_skinq;(U ?Vq<(hU PythonScriptq=tq>tq?QUdroitsq@(U ?WqA(hU PythonScriptqBtqCtqDQU_objectsqE(}qF(U meta_typeqGUScript (Python)qHUidqIU insertpageokqJu}qK(U meta_typeqLUScript (Python)qMUidqNU dupliquerokqOu}qP(U meta_typeqQUScript (Python)qRUidqSUrenommer_pagesqTu}qU(U meta_typeqVUScript (Python)qWUidqXUdupliquer_pagesqYu}qZ(U meta_typeq[UScript (Python)q\Uidq]Udetruire_pagesq^u}q_(h[h\h]U detruireokq`u}qa(U meta_typeqbUScript (Python)qcUidqdUdeplacer_pagesqeu}qf(hbhchdU deplaceokqgu}qh(U meta_typeqiUScript (Python)qjUidqkh1u}ql(U meta_typeqmUScript (Python)qnUidqoUrefokqpu}qq(U meta_typeqrUScript (Python)qsUidqth,u}qu(U meta_typeqvUScript (Python)qwUidqxU valid_selqyu}qz(hvhwhxU renommerokq{u}q|(hvhwhxUskinsq}u}q~(hvhwhxU change_skinqu}q€(hvhwhxUrefersqu}q‚(hvhwhxU change_refqƒu}q„(hvhwhxUdroitsq…u}q†(hvhwhxU change_droitq‡u}qˆ(U meta_typeq‰UScript (Python)qŠUidq‹U droits_localqŒu}q(h‰hŠh‹U index_htmlqŽu}q(U meta_typeqUScript (Python)q‘Uidq’hutq“U renommerokq”(U ?Xq•(hU PythonScriptq–tq—tq˜QU change_droitq™(U ?Yqš(hU PythonScriptq›tqœtqQhp(U ?Zqž(hU PythonScriptqŸtq tq¡QUrefersq¢(U ?[q£(hU PythonScriptq¤tq¥tq¦QU valid_selq§(U ?\q¨(hU PythonScriptq©tqªtq«Qhg(U ?]q¬(hU PythonScriptq­tq®tq¯QU__ac_local_roles__q°}q±U dupliquerokq²(U ?Mq³(hU PythonScriptq´tqµtq¶QU index_htmlq·(U ?`q¸(hU PythonScriptq¹tqºtq»QhŒ(U ?aq¼(hU PythonScriptq½tq¾tq¿QhJ(U ?^qÀ(hU PythonScriptqÁtqÂtqÃQu. <¯b+((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T.couleur='#'+couleur print '' print 'Choix de la couleur' print """ """ print '' print '
' print '
Choisir une couleur.
' RR="ff" VV="ff" BB="ff" if couleur: if len(couleur)>=7: RR=couleur[1:3] VV=couleur[3:5] BB=couleur[5:7] print '' print """

""" print '
' print '' print '' print '' print '
[select]
' print ' ' print '
' print '' return printed q U _filepathq U0Script (Python):/kzexp_zwook/zwo_bo/choixcouleurq U_codeqTÑ0c@sed„ZdS(Nc ECsµtƒ}d|}|dIJ|dIJ|dIJ|d|d|dIJ|dIJ|d IJ|d IJ|d IJd }d }d }|oZt|ƒd joCt |dd…ƒ}t |dd…ƒ}t |dd …ƒ}qæn|dIJ|dIJ|dIJ|d|dIJ|d|dIJ|d|dIJ|d|||dIJ|dIJ|dIJ|d|||dIJ|dIJ|dIJ|d IJ|d!IJ|ƒSdS("Ns#s s"Choix de la couleurs# ss
sF
Choisir une couleur.
sffiiiisisì

s2s%s% [select]s s
s ( s_print_s_printscouleursnomformsnomchampsRRsVVsBBslens _getitem_( snomformsnomchampscouleurs_print_s_printsRRsVVsBBslens _getitem_((sScript (Python)s choixcouleursL   v      ÿÿÿÿÿÿÿé       (sNones choixcouleur(sNones choixcouleur((sScript (Python)ssqU func_defaultsq(NtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq (U ?bq!(U Persistenceq"UPersistentMappingq#tq$tq%QU__ac_local_roles__q&}q'Uxavq(]q)UOwnerq*asUidq+U choixcouleurq,U_paramsq-Unomform,nomchamp,couleur=Noneq.U func_codeq/(cShared.DC.Scripts.Signature FuncCode q0oq1}q2(U co_argcountq3KU co_varnamesq4(Unomformq5Unomchampq6Ucouleurq7U_print_q8U_printq9URRq:UVVq;UBBqtq?ubu. <±B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <²1¶((U OFS.FolderqUFolderqtqNt.}q(Urond_renommer_skin.pngq(U ?dq(U OFS.ImageqUImageqtq tq QU r_skin.gifq (U ?eq (hUImageq tqtqQU r_admin.gifq(U ?fq(hUImageqtqtqQUr_rond_plus.gifq(U ?gq(hUImageqtqtqQUr_rond_modif_li_co.gifq(U ?hq(hUImageqtqtqQUr_rond_refer.gifq(U ?iq (hUImageq!tq"tq#QUrond_edit_detruit_soustab.gifq$(U ?jq%(hUImageq&tq'tq(QUrond_detruit_col.gifq)(U ?kq*(hUImageq+tq,tq-QUrond_edit_user.gifq.(U ?lq/(hUImageq0tq1tq2QUici.gifq3(U ?mq4(hUImageq5tq6tq7QUcercle_admin.gifq8(U ?nq9(hUImageq:tq;tq(U ?oq?(hUImageq@tqAtqBQUzwook_edit.gifqC(U ?pqD(hUFileqEtqFtqGQUrond_select_elem.gifqH(U ?qqI(hUImageqJtqKtqLQUcercle_arbo.gifqM(U ?rqN(hUImageqOtqPtqQQUr_cercle_edit.gifqR(U ?sqS(hUImageqTtqUtqVQUrond_edit_annule_fusion.gifqW(U ?tqX(hUImageqYtqZtq[QUf_cercle_skin.gifq\(U ?uq](hUImageq^tq_tq`QUr_rond_detruire.gifqa(U ?vqb(hUImageqctqdtqeQUr_rond_fusion.gifqf(U ?wqg(hUImageqhtqitqjQUr_rond_annule_fusion.gifqk(U ?xql(hUImageqmtqntqoQU rond_skin.gifqp(U ?yqq(hUImageqrtqstqtQUrond_renommer_elem.gifqu(U ?zqv(hUImageqwtqxtqyQUrond_ferme.gifqz(U ?{q{(hUImageq|tq}tq~QUrond_detruire_elem.gifq(U ?|q€(hUImageqtq‚tqƒQUf_cercle_edit.gifq„(U ?}q…(hUImageq†tq‡tqˆQUrond_unselect_elem.gifq‰(U ?~qŠ(hUImageq‹tqŒtqQUrond_dupliquer_skin.gifqŽ(U ?q(hUImageqtq‘tq’QUr_rond_help.gifq“(U ?€q”(hUImageq•tq–tq—QUcercle_edit.gifq˜(U ?q™(hUImageqštq›tqœQUcarre_edit_ajout_colonne.gifq(U ?‚qž(hUImageqŸtq tq¡QUrond_detruit_groupe.gifq¢(U ?ƒq£(hUImageq¤tq¥tq¦QUr_rond_coche_case.gifq§(U ?•q¨(hUImageq©tqªtq«QUr_carre_ici.gifq¬(U ?£q­(hUImageq®tq¯tq°QUrond_detruit_ligne.gifq±(U ?†q²(hUImageq³tq´tqµQUr_rond_decoche.gifq¶(U ?‡q·(hUImageq¸tq¹tqºQUr_rond_detruit_soustab.gifq»(U ?ˆq¼(hUImageq½tq¾tq¿QU inconnu.gifqÀ(U ?‰qÁ(hUImageqÂtqÃtqÄQUr_rond_zone_edit.gifqÅ(U ?ŠqÆ(hUImageqÇtqÈtqÉQUrond_edit_groupe.gifqÊ(U ?‹qË(hUImageqÌtqÍtqÎQU p_inconnu.gifqÏ(U ?ŒqÐ(hUImageqÑtqÒtqÓQUrond_ouvre.gifqÔ(U ?qÕ(hUImageqÖtq×tqØQUr_rond_decoche_case.gifqÙ(U ?ŽqÚ(hUImageqÛtqÜtqÝQU rond_help.gifqÞ(U ?qß(hUImageqàtqátqâQUrond_editer_skin.gifqã(U ?qä(hUImageqåtqætqçQUzwook_skin.gifqè(U ?‘qé(hUFileqêtqëtqìQUf_cercle_arbo.gifqí(U ?’qî(hUImageqïtqðtqñQUr_rond_duplique.gifqò(U ?“qó(hUImageqôtqõtqöQU_objectsq÷(}qø(U meta_typeqùUFileqúUidqûhèu}qü(hùhúhûUzwook_arbo.gifqýu}qþ(hùhúhûUzwook_admin.gifqÿu}r(U meta_typerUImagerUidrh„u}r(jjjhRu}r(jjjh\u}r(jjjUr_cercle_skin.gifru}r(jjjhíu}r (jjjUr_cercle_arbo.gifr u}r (jjjUf_cercle_admin.gifr u}r (jjjUr_cercle_admin.gifru}r(jjjUf_cercle_zope.gifru}r(jjjUr_cercle_zope.gifru}r(jjjUcercle_edit.gifru}r(jjjUcercle_skin.gifru}r(jjjUcercle_arbo.gifru}r(jjjUcercle_admin.gifru}r(jjjUcercle_zope.gifru}r(jjjh“u}r(jjjhÞu}r(jjjUr_rond_annule.gifr u}r!(jjjUrond_annule.gifr"u}r#(jjjh>u}r$(U meta_typer%UImager&Uidr'hÔu}r((j%j&j'hzu}r)(U meta_typer*UImager+Uidr,Urond_list_elem.gifr-u}r.(j*j+j,U carre_ici.gifr/u}r0(U meta_typer1UImager2Uidr3Urond_edit_elem.gifr4u}r5(j1j2j3Urond_deplace_elem.gifr6u}r7(j1j2j3Urond_duplique_elem.gifr8u}r9(j1j2j3hu}r:(j1j2j3hHu}r;(j1j2j3h‰u}r<(j1j2j3huu}r=(U meta_typer>UImager?Uidr@Urond_coche_elem.gifrAu}rB(j>j?j@Urond_decoche_elem.gifrCu}rD(U meta_typerEUImagerFUidrGUr_rond_ferme.gifrHu}rI(jEjFjGUr_rond_ouvre.gifrJu}rK(U meta_typerLUImagerMUidrNhu}rO(U meta_typerPUImagerQUidrRUr_rond_edit.gifrSu}rT(jPjQjRUr_rond_coche.gifrUu}rV(jPjQjRh¶u}rW(jPjQjRUr_rond_deplace.gifrXu}rY(jPjQjRhau}rZ(jPjQjRhòu}r[(jPjQjRUr_rond_renommer.gifr\u}r](jPjQjRUr_rond_detruit_col.gifr^u}r_(jPjQjRh)u}r`(jPjQjRh±u}ra(jPjQjRUr_rond_detruit_ligne.gifrbu}rc(jPjQjRh§u}rd(jPjQjRhÙu}re(jPjQjRUrond_coche_case.gifrfu}rg(jPjQjRUrond_decoche_case.gifrhu}ri(U meta_typerjUImagerkUidrlUrond_modif_li_co.gifrmu}rn(jjjkjlhu}ro(U meta_typerpUImagerqUidrrUr_carre_ajout_colonne.gifrsu}rt(jpjqjrUcarre_edit_ajout_colonne.gifruu}rv(jpjqjrUcarre_edit_ajout_ligne.gifrwu}rx(jpjqjrUr_carre_ajout_ligne.gifryu}rz(jpjqjrUr_carre_detruit_colonne.gifr{u}r|(jpjqjrUr_carre_detruit_ligne.gifr}u}r~(jpjqjrUcarre_detruit_colonne.gifru}r€(jpjqjrUcarre_detruit_ligne.gifru}r‚(U meta_typerƒUImager„Uidr…Urond_edit_fusion.gifr†u}r‡(jƒj„j…hfu}rˆ(jƒj„j…hWu}r‰(jƒj„j…hku}rŠ(jƒj„j…Urond_edit_ajout_soustab.gifr‹u}rŒ(jƒj„j…Ur_rond_ajout_soustab.gifru}rŽ(jƒj„j…h$u}r(jƒj„j…h»u}r(U meta_typer‘UImager’Uidr“U mapcolor.jpgr”u}r•(U meta_typer–UImager—Uidr˜h¬u}r™(U meta_typeršUImager›UidrœUrond_detruire_skin.gifru}rž(jšj›jœhŽu}rŸ(jšj›jœhãu}r (jšj›jœUrond_plus_skin.gifr¡u}r¢(jšj›jœUcarre_skin_ajout_colonne.gifr£u}r¤(jšj›jœUcarre_skin_ajout_ligne.gifr¥u}r¦(U meta_typer§UImager¨Uidr©Urond_skin_ajout_soustab.gifrªu}r«(j§j¨j©Urond_skin_annule_fusion.gifr¬u}r­(j§j¨j©Urond_skin_coche_case.gifr®u}r¯(j§j¨j©Urond_skin_decoche_case.gifr°u}r±(j§j¨j©Urond_skin_detruit_soustab.gifr²u}r³(j§j¨j©Urond_skin_fusion.gifr´u}rµ(j§j¨j©Urond_skin_modif_li_co.gifr¶u}r·(U meta_typer¸UImager¹UidrºhÅu}r»(j¸j¹jºUrond_zone_edit.gifr¼u}r½(U meta_typer¾UImager¿UidrÀUr_rond_droit.gifrÁu}rÂ(j¾j¿jÀhu}rÃ(j¾j¿jÀUr_rond_skin.gifrÄu}rÅ(j¾j¿jÀUrond_droit.gifrÆu}rÇ(j¾j¿jÀUrond_refer.gifrÈu}rÉ(j¾j¿jÀhpu}rÊ(U meta_typerËUImagerÌUidrÍUrond_deplace_page.gifrÎu}rÏ(jËjÌjÍUrond_detruit_page.gifrÐu}rÑ(jËjÌjÍUrond_duplique_page.gifrÒu}rÓ(jËjÌjÍUrond_plus_page.gifrÔu}rÕ(jËjÌjÍUrond_renommer_page.gifrÖu}r×(U meta_typerØUImagerÙUidrÚh¢u}rÛ(jØjÙjÚUrond_detruit_user.gifrÜu}rÝ(jØjÙjÚUrond_duplique_groupe.gifrÞu}rß(jØjÙjÚh.u}rà(jØjÙjÚhÊu}rá(jØjÙjÚUrond_plus_groupe.gifrâu}rã(jØjÙjÚUrond_plus_user.gifräu}rå(U meta_typeræUImagerçUidrèU rond_bug.gifréu}rê(jæjçjèUr_rond_bug.gifrëu}rì(U meta_typeríUImagerîUidrïUr_rond_zwook.gifrðu}rñ(U meta_typeròUFileróUidrôUzwook_module.gifrõu}rö(U meta_typer÷UFolderrøUidrùUdisporúu}rû(U meta_typerüUImagerýUidrþUkillfolder.jpgrÿu}r(U meta_typerUImagerUidrhu}r(U meta_typerUImagerUidrU admin.gifru}r (jjjUarbo.gifr u}r (jjjUedit.gifr u}r (jjjU manage.gifru}r(jjjhu}r(jjjU r_arbo.gifru}r(jjjU r_edit.gifru}r(jjjU r_manage.gifru}r(jjjh u}r(jjjUskin.gifru}r(jjjhÏu}r(U meta_typerUImagerUidrU inconnu.gifru}r(U meta_typer UImager!Uidr"Ur_rond_dossier.gifr#u}r$(j j!j"Urond_dossier.gifr%u}r&(U meta_typer'UFiler(Uidr)hCu}r*(U meta_typer+UImager,Uidr-h3utr.j8(U ?”r/(hUImager0tr1tr2Qj6(U ?„r3(hUImager4tr5tr6QjU(U ?–r7(hUImager8tr9tr:Qj{(U ?—r;(hUImager<tr=tr>QjÞ(U ?˜r?(hUImager@trAtrBQj#(U ?™rC(hUImagerDtrEtrFQjé(U ?›rG(hUImagerHtrItrJQj†(U ?œrK(hUImagerLtrMtrNQj/(U ?rO(hUImagerPtrQtrRQjÒ(U ?žrS(hUImagerTtrUtrVQj(U ?ŸrW(hUImagerXtrYtrZQjÁ(U ?²r[(hUImager\tr]tr^Qjm(U ?¡r_(hUImager`tratrbQj£(U ?¢rc(hUImagerdtretrfQj(U ?…rg(hUImagerhtritrjQjð(U ?¤rk(hUImagerltrmtrnQjÔ(U ?¥ro(hUImagerptrqtrrQjÖ(U ?¦rs(hUImagerttrutrvQj(U ?§rw(hUImagerxtrytrzQjS(U ?¨r{(hUImager|tr}tr~Qj(U ?Ûr(hUImager€trtr‚Qjh(U ?©rƒ(hUImager„tr…tr†Qj(U ?ªr‡(hUImagerˆtr‰trŠQjª(U ?«r‹(hUImagerŒtrtrŽQj (U ?¬r(hUImagertr‘tr’Qj‹(U ?­r“(hUImager”tr•tr–Qj¡(U ?®r—(hUImager˜tr™tršQj (U ?¯r›(hUImagerœtrtržQj(U ?°rŸ(hUImager tr¡tr¢QjÜ(U ?±r£(hUImager¤tr¥tr¦Qj¬(U ? r§(hUImager¨tr©trªQjs(U ?³r«(hUImager¬tr­tr®Qj®(U ?´r¯(hUImager°tr±tr²Qjf(U ?µr³(hUImager´trµtr¶Qj(U ?¶r·(hUImager¸tr¹trºQj¥(U ?·r»(hUImager¼tr½tr¾QUcercle_zope.gifr¿(U ?¸rÀ(hUImagerÁtrÂtrÃQjâ(U ?¹rÄ(hUImagerÅtrÆtrÇQj´(U ?ºrÈ(hUImagerÉtrÊtrËQj\(U ?»rÌ(hUImagerÍtrÎtrÏQjX(U ?¼rÐ(hUImagerÑtrÒtrÓQj(U ?½rÔ(hUImagerÕtrÖtr×Qjy(U ?¾rØ(hUImagerÙtrÚtrÛQUcercle_skin.gifrÜ(U ?¿rÝ(hUImagerÞtrßtràQj°(U ?Àrá(hUImagerâtrãträQjH(U ?ßrå(hUImagerætrçtrèQUdisporé(U ?Ârê(hUFolderrëtrìtríQj (U ?Ãrî(hUImagerïtrðtrñQjb(U ?Ärò(hUImagerótrôtrõQjC(U ?Årö(hUImager÷trøtrùQjÆ(U ?Ærú(hUImagerûtrütrýQjä(U ?Çrþ(hUImagerÿtrtrQj (U ?Èr(hUImagertrtrQj¶(U ?Ér(hUImagertrtr Qj”(U ?Êr (hUImager tr tr QjÄ(U ?Ër(hUImagertrtrQj(U ?Ìr(hUImagertrtrQj(U ?Ír(hUImagertrtrQj¼(U ?Îr(hUImagertrtrQj(U ?Ïr(hUImagertr tr!Qjë(U ?Ðr"(hUImager#tr$tr%QUzwook_admin.gifr&(U ?Ñr'(hUFiler(tr)tr*Qj(U ?Òr+(hUImager,tr-tr.Qj4(U ?Ór/(hUImager0tr1tr2QjA(U ?ár3(hUImager4tr5tr6QhûUbor7jJ(U ?Õr8(hUImager9tr:tr;Qj%(U ?Ör<(hUImager=tr>tr?QjÈ(U ?×r@(hUImagerAtrBtrCQjÎ(U ?ØrD(hUImagerEtrFtrGQhý(U ?ÙrH(hUFilerItrJtrKQjÐ(U ?ÚrL(hUImagerMtrNtrOQjÿ(U ?šrP(hUImagerQtrRtrSQj"(U ?ÜrT(hUImagerUtrVtrWQj^(U ?ÝrX(hUImagerYtrZtr[Qj(U ?Þr\(hUImager]tr^tr_Qj-(U ?Ár`(hUImageratrbtrcQj²(U ?àrd(hUImageretrftrgQj (U ?Ôrh(hUImageritrjtrkQUzwook_module.gifrl(U ?ârm(hUFilerntrotrpQj}(U ?ãrq(hUImagerrtrstrtQj(U ?äru(hUImagervtrwtrxQU__ac_local_roles__ry}rzjw(U ?år{(hUImager|tr}tr~Qu. <³}((U OFS.FolderqUFolderqtqNt.}q(U_objectsq)U__ac_local_roles__q}qUxavq]q UOwnerq asUidq Umodulesq Utitleq Uu. <´M((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUgregq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qU pixel.gifqUsizeqL43L UdataqU+GIF89a€ÿÿÿ!ù,D;qU_dav_writelocksq(U ?æq(U PersistenceqUPersistentMappingqtqtqQu. <µ{((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qUadminq(U G^q(UAccessControl.Userq UUserq ttQss. <¶B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <·B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <¸ã((U OFS.FolderqUFolderqtqNt.}q(U date_creationqI00 U params_stringqUUadminq(U ?èq(hUFolderq tq tq QU params_floatq UUtitleq UUlenLoginqKUsystemqUdataqU params_linesqUUemailqI00 U type_zwookqUsystemqU params_intqUUinscriptionmodereeqKU _propertiesq(}q(UtypeqUstringqUidqh UmodeqUwu}q(hUstringqhU type_zwookqu}q (hUstringq!hUsystemq"u}q#(Utypeq$Ustringq%Uidq&hu}q'(h$Ustringq(h&hu}q)(h$Ubooleanq*h&Uavatarq+u}q,(h$Ubooleanq-h&Uemailq.u}q/(h$Ubooleanq0h&U date_creationq1u}q2(h$Ustringq3h&hu}q4(h$Ustringq5h&h u}q6(Utypeq7Uintq8Uidq9hu}q:(h7h8h9hutq;U_objectsq<(}q=(U meta_typeq>UFolderq?Uidq@UadminqAutqBU__ac_local_roles__qC}qDhUusersqEUavatarqFI01 u. <¹å((U OFS.FolderqUFolderqtqNt.}q(Ugameclanq(U ?éq(hUFolderqtqtq QUpersonal_websiteq (U ?êq (hUFolderq tq tqQUtitleqUUpersonal_home_intranetq(U ?ëq(hUFolderqtqtqQU_objectsq(}q(U meta_typeqUFolderqUidqUgameclanqu}q(U meta_typeqUFolderqUidqhu}q(U meta_typeq UFolderq!Uidq"h u}q#(U meta_typeq$UFolderq%Uidq&U usabilityq'utq(U__ac_local_roles__q)}q*Ujamesq+]q,UOwnerq-asUidq.Upacksq/h'(U ?ìq0(hUFolderq1tq2tq3Qu. <ºà((U OFS.FolderqUFolderqtqNt.}q(Uforums_historyq(U ?íq(hUFolderqtqtq QU calendrierq (U ?ðq (hUFolderq tq tqQUepozq(U ?îq(hUFolderqtqtqQU__ac_local_roles__q}qUadminq]qUOwnerqasUtitleqUU_objectsq(}q(U meta_typeqUFolderqUidqU calendrierqu}q (U meta_typeq!UFolderq"Uidq#hu}q$(U meta_typeq%UFolderq&Uidq'U news_historyq(u}q)(U meta_typeq*UFolderq+Uidq,Uepozq-utq.h((U ?ïq/(hUFolderq0tq1tq2QUidq3Umodulesq4u. <»ö((U OFS.FolderqUFolderqtqNt.}q(U_objectsq(}q(U meta_typeqU DTML DocumentqUidq Ulogq utq Utitleq UU__ac_local_roles__q }qUjamesq]qUOwnerqash Ustandby_contentqUlogq(U ?ñq(UOFS.DTMLDocumentqU DTMLDocumentqtqtqQu. <¼ß((U OFS.FolderqUFolderqtqNt.}q(U Authenticatedq(U ?òq(hUFolderqtqtq QUtitleq UUadminq (U ?óq (hUFolderq tqtqQUsystemqUdataqU config_zwookq(U ?ôq(hUFolderqtqtqQUManagerq(U ?õq(hUFolderqtqtqQU type_zwookqUsystemqU Anonymousq(U ?öq(hUFolderq tq!tq"QU _propertiesq#(}q$(Utypeq%Ustringq&Uidq'h Umodeq(Uwu}q)(h%Ustringq*h'U type_zwookq+u}q,(h%Ustringq-h'Usystemq.utq/U_objectsq0(}q1(U meta_typeq2UFolderq3Uidq4U Anonymousq5u}q6(h2h3h4U Authenticatedq7u}q8(h2h3h4UManagerq9u}q:(U meta_typeq;UFolderq(U meta_typeq?UFolderq@UidqAUadminqBu}qC(h?h@hAU iohih ihoihqDutqEU__ac_local_roles__qF}qGh'UgroupsqHhD(U ?÷qI(hUFolderqJtqKtqLQu. <½û((U OFS.FolderqUFolderqtqNt.}q(UtitleqUU__ac_local_roles__q}qUsystemqUdataq Uavatarq (U ?ùq (hUFolderq tq tqQU _propertiesq(}q(UtypeqUstringqUidqhUmodeqUwu}q(hUstringqhUsystemqu}q(hUstringqhU type_zwookqutqU_objectsq(}q(U meta_typeqUFolderqhUavatarq u}q!(hhhUfondsq"u}q#(U meta_typeq$UFolderq%Uidq&U navigationq'utq(Ufondsq)(U ?úq*(hUFolderq+tq,tq-QU navigationq.(U ?øq/(hUFolderq0tq1tq2QhUimagesq3U type_zwookq4Usystemq5u. <¾((U OFS.FolderqUFolderqtqNt.}q(UsystemeqUdataqU bluejordaneq(U ?ûq(hUFolderq ttQU paperblue1q (U @q (hUFolderq ttQUtitleq UUdefaultq(U ?üq(hUFolderqttQUmatrix2q(U @q(hUFolderqttQU speedlinkq(U ?ýq(hUFolderqttQUnew_clone_ploneq(U ?þq(hUFolderqttQU cooltempoq(U @q(hUFolderqttQU spaceblueq(U ?ÿq(hUFolderqttQU type_zwookq Usystemq!U _propertiesq"(}q#(Utypeq$Ustringq%Uidq&Utitleq'Umodeq(Uwu}q)(h$Ustringq*h&U type_zwookq+u}q,(h$Ustringq-h&hutq.Utestq/(U G_q0(hUFolderq1ttQU_objectsq2(}q3(U meta_typeq4UFolderq5Uidq6hu}q7(h4h5h6hu}q8(h4h5h6hu}q9(h4h5h6h u}q:(h4h5h6U paperblue2q;u}q<(h4h5h6hu}q=(U meta_typeq>UFolderq?Uidq@UdefaultqAu}qB(U meta_typeqCUFolderqDUidqEU usabilityqFu}qG(hChDhEU speedlinkqHu}qI(U meta_typeqJUFolderqKUidqLhu}qM(U meta_typeqNUFolderqOUidqPUtestqQutqRh;(U @qS(hUFolderqTttQU__ac_local_roles__qU}qVUadminqW]qX(UadminqY(UOwnerqZttq[asUidq\Uskinsq]hF(U @q^(hUFolderq_ttQu. <¿æ((U OFS.FolderqUFolderqtqNt.}q(UtitleqUUdefaultq(U @q(UOFS.DTMLMethodqU DTMLMethodq tq tq QUdefault.css_NEWq (U @q (U#Products.PythonScripts.PythonScriptqU PythonScriptqtqtqQU_objectsq(}q(U meta_typeqU DTML MethodqUidqUdefaultqu}q(U meta_typeqUScript (Python)qUidqh u}q(U meta_typeqU DTML MethodqUidqU default.cssq utq!U__ac_local_roles__q"}q#Uadminq$]q%UOwnerq&asUidq'Ucssq(U default.cssq)(U @q*(hU DTMLMethodq+tq,tq-Qu. <À Ì((U OFS.FolderqUFolderqtqNt.}q(Ugroupes_visiteursqUAuthenticated&AnonymousqUtitleqUinformation du dossierqU new_droitsq U1Uordreq U5presentation&actualites&articles&liens&forums&membresq Usystemq Udataq Utableauxq(UdPT:T1:hauteur=/largeur=/marge=/cadre=/couleurcadre=/couleurfond=/couleurtexte=/align=left/valign=topqUcPT:T2:hauteur=/largeur=100%/marge=0/cadre=0/couleurcadre=/couleurfond=/couleurtexte=/align=/valign=qUCT:T2:C8/C7/C12/C13/C14qUCC:C7:texte_introqUCC:C8:titre_bienvenueqU€PC:C7:colspan=1/rowspan=1/hauteur=/largeur=/marge=2/cadre=/couleurcadre=/couleurfond=#f8f8f8/couleurtexte=/align=left/valign=topqUŠPC:C8:colspan=1/rowspan=1/hauteur=/largeur=/marge=2/cadre=/couleurcadre=/couleurfond=#d4e2f0/couleurtexte=#000055/align=left/valign=middleqUCC:C12:qUCC:C13:titre_dernier_articlesqUCC:C14:scriptpythonqU‹PC:C13:colspan=1/rowspan=1/hauteur=/largeur=/marge=2/cadre=/couleurcadre=/couleurfond=#d4e2f0/couleurtexte=#000055/align=left/valign=middleqUPC:C14:colspan=1/rowspan=1/hauteur=/largeur=/marge=2/cadre=/couleurcadre=/couleurfond=#f8f8f8/couleurtexte=/align=left/valign=topqU{PC:C12:colspan=1/rowspan=1/hauteur=10/largeur=/marge=/cadre=/couleurcadre=/couleurfond=/couleurtexte=/align=left/valign=topqUcPT:T3:hauteur=/largeur=100%/marge=0/cadre=0/couleurcadre=/couleurfond=/couleurtexte=/align=/valign=qUCT:T3:C15/C16/C17qUCC:C15:qUCC:C16:newshistoryqU{PC:C15:colspan=1/rowspan=1/hauteur=/largeur=/marge=/cadre=/couleurcadre=/couleurfond=/couleurtexte=/align=center/valign=topq UyPC:C16:colspan=1/rowspan=1/hauteur=/largeur=/marge=/cadre=/couleurcadre=/couleurfond=/couleurtexte=/align=left/valign=topq!UCC:C17:forumshistoryq"UvPC:C17:colspan=1/rowspan=1/hauteur=100%/largeur=/marge=/cadre=/couleurcadre=/couleurfond=/couleurtexte=/align=/valign=q#U CT:T1:C18q$U;CC:C18:texte/feedparser.py/send_trackback_ping.py/image.gifq%UxPC:C18:colspan=1/rowspan=1/hauteur=/largeur=/marge=/cadre=/couleurcadre=/couleurfond=/couleurtexte=/align=center/valign=q&tq'Ugroupes_editeursq(U config_zwookq)Unew_refq*U1U type_zwookq+Usystemq,Uskinq-U paperblue1q.U _propertiesq/(}q0(Utypeq1Ustringq2Uidq3hUmodeq4Uwdq5u}q6(h1h2h3h+u}q7(h1h2h3h u}q8(h1h2h3Unew_skinq9u}q:(h1h2h3h-u}q;(h1h2h3h u}q<(h1h2h3hu}q=(h1h2h3h(u}q>(h1h2h3h u}q?(h1h2h3h*u}q@(h1UlinesqAh3UmetasqBu}qC(h1hAh3hutqDU__ac_local_roles__qE}qFUadminqG]qHUOwnerqIash3U zwo_dossierqJh9U1hB(Ucontent=!!name=authorqKUcontent=!!name=DescriptionqLU%content=!!http-equiv=content-languageqMU=content=text/html;charset=iso-8859-1!!http-equiv=content-typeqNU content=!!lang=fr!!name=keywordsqOU"content=!!http-equiv=revisit-afterqPU'content=index,follow!!http-equiv=robotsqQUcontent=!!http-equiv=expiresqRUcontent=!!http-equiv=copyrightqStqTu. <ÁÊ((U OFS.FolderqUFolderqtqNt.}q(U rapideditqU0UformatqUhtmlqUtitleqUtexteq Uelementq Utextq U type_zwookq h U dispositionq U++qU _propertiesq(}q(UtypeqUstringqUidqhUmodeqUwdqu}q(hhhh u}q(hhhh u}q(hhhhu}q(hhhhu}q(hhhh utqU_objectsq(}q(U meta_typeqU DTML DocumentqhUdocumentq utq!h (U @q"(UOFS.DTMLDocumentq#U DTMLDocumentq$tq%tq&QU__ac_local_roles__q'}q(Ujamesq)]q*UOwnerq+ashUtexteq,u. <Çø((U OFS.FolderqUFolderqtqNt.}q(U zwo_dossierq(U @q(hUFolderqtqtq QUtitleq ULiensq U listedeliensq (U @q (hUFolderqtqtqQUzwo_standby_contentq(U @q(hUFolderqtqtqQU type_zwookqUdossierqU _propertiesq(}q(UtypeqUstringqUidqh UmodeqUwdqu}q(hhhhutq U_objectsq!(}q"(U meta_typeq#UFolderq$hhu}q%(U meta_typeq&UFolderq'Uidq(U listedeliensq)u}q*(U meta_typeq+UFolderq,Uidq-hutq.U__ac_local_roles__q/}q0Ujamesq1]q2UOwnerq3ashUliensq4u. <Â((U OFS.FolderqUFolderqtqNt.}q(U zwo_dossierq(U @ q(hUFolderqtqtq QUforumq (U @ q (hUFolderq tq tqQUtitleqUForumsqU type_zwookqUdossierqU _propertiesq(}q(UtypeqUstringqUidqhUmodeqUwdqu}q(hhhhutqU_objectsq(}q(U meta_typeqUFolderqhhu}q (U meta_typeq!UFolderq"Uidq#Uforumq$utq%U__ac_local_roles__q&}q'Ujamesq(]q)UOwnerq*ashUforumsq+u. <ÉÂ((U OFS.FolderqUFolderqtqNt.}q(U zwo_dossierq(U @q(hUFolderqtqtq QU documentsq (U @q (hUFolderq tq tqQUtitleqU ActualitésqUtraitq(U @q(UOFS.DTMLDocumentqU DTMLDocumentqtqtqQUzwo_standby_contentq(U @q(hUFolderqtqtqQU type_zwookqUdossierqU _propertiesq(}q(Utypeq Ustringq!Uidq"hUmodeq#Uwdq$u}q%(h h!h"hutq&U_objectsq'(}q((U meta_typeq)UFolderq*h"hu}q+(h)h*h"Unewsq,u}q-(U meta_typeq.UFolderq/Uidq0U documentsq1u}q2(h.U DTML Documentq3h0Utraitq4u}q5(U meta_typeq6UFolderq7Uidq8hutq9Unewsq:(U @q;(hUFolderqQU__ac_local_roles__q?}q@(UjamesqA]qB(UadminqC(UOwnerqDttqEaUmanuqF]qGUOwnerqHauh"U actualitesqIu. <Ãk((U OFS.ImageqUImageqtqNt.}q(U preconditionqUU content_typeqU image/gifqUtitleqUUurlq UUbordureq U0Ulargeurq UU__ac_local_roles__q }q Ujamesq]qUOwnerqasUheightqK®UwidthqK¦U type_zwookqUelementqU dispositionqU++qU _propertiesq(}q(UtypeqUstringqUidqhu}q(hhhhUmodeqUwu}q(hhhhu}q(hhhhu}q (hhhhu}q!(hhhhu}q"(hhhh u}q#(hhhUhauteurq$u}q%(hhhh u}q&(hhhUaltq'u}q((hhhh u}q)(Utypeq*Ustringq+Uidq,hutq-U__name__q.U image.gifq/h'UhUimageq0Udataq1T>GIF89a¦®çþþþýýý÷÷÷ÝÝÝôôôäää„„„¥¥¥§§§yyy³³³ÉÉÉ€€€ÚÚÚüüüqqqßßßÈÈȾ¾¾®®®ÀÀÀ¬¬¬ŽŽŽÞÞÞ‚‚‚õõõÄÄÄÛÛÛûûûÍÍÍ©©©{{{øøøíííàààÃÃÃÏÏÏppp´´´½½½úúú°°°µµµ‹‹‹öööððð~~~âââ¼¼¼ËËËììì«««———ùùù”””ÇÇÇÂÂÂïïï………ŸŸŸ···»»»æææÓÓÓÙÙÙããã’’’£££ƒƒƒñññÁÁÁ†††‡‡‡ÖÖÖÆÆÆ›››çççòòò}}}ººº²²²ëëë¶¶¶‘‘‘tttèèè¿¿¿ÑÑÑéééêêꜜœˆˆˆîîªwwwÅÅÅ™™™ŒŒŒÌÌÌvvvÊÊʯ¯¯uuu­­­ÜÜܹ¹¹ØØØåååÒÒÒ×××ŠŠŠÎÎθ¸¸ááᘘ˜ÐÐб±±|||¤¤¤sss“““žžžÕÕÕ–––¦¦¦xxxÔÔÔóóó   ššš¡¡¡zzz•••¨¨¨‰‰‰¢¢¢UUUjjjccciiimmmkkk[[[]]]---NNNHHH+++!!!CCCTTTJJJrrreeeZZZ<<<"""333*** ...888 444hhh777nnn:::DDDQQQ###PPPAAA\\\>>> lll@@@ aaaLLLXXX$$$FFF222===???III))) MMM(((555BBB ,,,^^^'''%%%GGGVVV666EEE&&&999WWWOOOggg///```ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ,¦®þH° Áƒ*\Ȱ¡Ã‡#JœH±¢Å‹3j@À€lI²¤I‡ @@Á‘'cÊœY1ƒ<PBš@ƒ -@ÂP¨`ᆡP£žÌ aƒ@<|B„Ô¯`kB!D ŽLœ@á!¬Û· TH!PÅ °há®_¿/`´À!B3ðþ]ü 5,À4øÀÆ Æ~ÄùAŒÐpü¸0GÌn9H9g ’=ƒeH c  wœE5@•‡x Ä1æ„É&yôP À…>pó`‡˜ E`xB(æ ƒþY¨`:Tˆbˆ>ø „žÈ5Šâu ‘ ‹1?TÀ—mÄß@PHaFI&QÐV!À ð÷ٸౠD aIH$APJ(ôÂëIH“6 ÔEU g…m¼„#ÀA4aB 8¡bPì&?Ä+µaÇFOü( (Å ”µ$4H‡g&¬¡‘ Rd¸Àq¡0…—_ŽAY] ¤RI`'F:T@t%äÂHÑ93$À%¡L‰¼‘ÑPÄÀ ¥@…¢4©ÂA>äYBÉ0çEULðçUþäÌzRŠàaÐ Šˆà“ñà'"˜¥DVÈPd ¶ÒôÆÅ€‚tTF2Ã9AôÀ5¤Â ‰€E¬Ñ–äÁ]¤ìA(”ÀE €Ñ~e‘CA1Xi´K“ÐÔB/`@ñ @iAAA[pP0tÙÅ^Ìð¡Á#%ñEŠ béAz¨AgtÇÐ_xF †ˆqÅPpAƪ$kä…yj ðøÁµ"ÄCiñ*AU|aƉ $@õ^ x °`¡Ch¤‘WÁ¤ª±DÎPþk)6F !ó@mD=P=°‚x„§ƒWĈõq‚ aU°áÅß­æ@EÄÐþqOHî਑&+}%ÞF¢.´À.è½ÐCAQÐ@ƒ€ÁHzB—Aj@¡‚ˆ DÃAP…àë“©ÃèàO„6Èq<äÁ °Ó@²ð!$ì è(q‘&s™ÙBÔ7ܲ ?°ÀL7ؾ,ô`Ij>„ŒxÕÚ™—) ç þÙƒa "™x<¨ÃÕ8Â>¤ÓÁA´D”‹K8HÖH¢`gÙÂA x×!"i§@h̃” Œ0H )€ &ØØ5hì£Ù‚›$9HD ò‚>¨Ô¥ˆÀ°C”/§¡Á&b†f§kHiA‚𹂖I æGøªqƒš=.DaÖ‡² • €KÑÊ"¬U &ðéBFƒüAn ŠvzÇ9P‘¯Q+Ažä À [`¼&Ó„i„€Ø+dB ànM,*4(M `þž@œ`8À££mˆÚ©J&Ä ¨Ú.À€›ê‰]6x_n²Ûl– „À²'RÏ H? ò$ˆv¹i®@„°Ï†Ü@°É,Aº€JÐÓ+xÂû¹Á³ 1@I²…gz` nm¯®9_‡ @¤ÀïBÊ]ûÄp ºâçˆa¸'$ƒÈ¼Ø&lp4׌‚XúX\!ÃvØà\e6$‘ÂY¼‚l  0äΘbƒ€à®ôLHšWüËŒåV ¡P´Ç )~Û› $ ;ßTÂÁ0 Àé…P%”⊠DÌ a€þK ‚<ÙÃ~D§þ€†Ž™ 7(% »pÓ †˜!ŒÔ!À!^Oäb€!…/AVÀá6ÔnxC†å`çEr˜L¨Œ9ØÑ t°Â@š°D¨@˜A¼<¡ñèÑÈœ€u'(ˆÙ $ðò!6Jëüa®yÁâ†Ë&„ ÖTƒ1èÀ(ˆ0Qž<æ6Äl¸kB@M„l@ 2„gSPŒA¹bÃ1Õ1ßAx0nBxpß~±ua–@èÐ…<èàm Á<á™=&&“Âïd çSH1/W $ cÈþ\@ˆTà=0ñ@ €å&ÌXŒD€ÔB€DH˜Òž*8â9ÈäÊدÀÄO"¦?†¤Ô‰Ú2ÕkDE·Í!†Hí[`z!‚ƒ!P ûEˆ añ‚@¡HÓBžH°ôn†´ÐàÄ,0•dE¸#òp/0â ÓuÈÀº+„š}fðŒÀo‹ÝÀ€T>Á¬£õ*4 @H2€ƒ ”¡m—U(+‚h0C àƒ"Hà¿0iLP3$ uØ@Þ€Ø|:èA ‘òï ºË 6þT˜(T0#Dx€)À ÓsÃs<°²„èN0†çcf‚ØÂ_'`àÃQCÐ%8€Ü&5UU@!„0`&HÂ~âFTkBP!væ]Ð S Q ð|p”ócàuœäÁQB„Á@ :°ð|y ð)C"Hà£öwœÔ*XSpÐ#å¶0Æ_€.àgÒBØÐ*ç%Àð†5  á Xu`@! gq(°„hJÀ†adCòS¸gàö×(U žAþ+…bÔÚ&L`0@pjá2'!t`@c J8¦YW1& رi°EwWvE°‡ D(#pŠX.  –-`|e¡ÏA2p€Á}{ ñ p…pxHF‰ÒF•m@„˜UÔãPAÀ–¨1 k Qj0XÕ4@Êè@>h.mŒ®ôÝ¡~I @ÀÙ‡I`ßGB |Æ#©Å öT!(0Žñ[{y`Œy€-€E‘ÑÆ8P%æ%] ìBþ?àoŽp^±?0"f&&‰„ è? ðW Òa4l RQHñ)€ AÜäCÑ1¤SŒíRDVIf$°ðÈÀrå·èè*Ð’&/9 •*‚»ãeP€:Á? U°ƒC ß5H ŠÑrM8Nà˜€—(Äy’FY{ÐÎådb3Oa'…J”q6„ cU0·È*€@Z&Á`Chà{åÛe0B•o@ÑwV%0=ô2ðg£¯UÕ‰Q.Bþ‘5g"€‘ oÑ…D=JP—‘.4Z0DáN±I'#pÑ'äÀgD€î€Ti%fеIp=P}Ç‹K(`gšà€" .pª *à§3œÆ#‘g†Pˆ`…PMªp]9R( { Z8P!€3*G~Ð )!>ÀZ°2e0c0qð@0z$ñ0h`€pŒÐ+hDÈI&РI'8° zQª–/|T@Sp&лz‹ÀE P`‹ g`CCÅz„7pË¢g H&0MŒ HyÐfP‹Ú„ð\ð¥{à.rþŠP;@âÉ#& h0²ÓÁRPR@@©9`O€æj;@ðœƒB0î# k`¢mh€ÐŽEó6ûçíøû„A#±SòS°«P90xp’MPØ…À ¼³ ð'"Ðh5Y + $DÇn¹>ë)À+F]3Àµ £ m`ñA¨BÇ45 ÅcX°M‘+2ÐÇaHQà2ñ;U‹P°ñˆP.`’Á1ð¬ÀKpq` nð8 @¼\QЄ|x`ÙÀ1°V°¼z2Üþà T08p #@K`kaoiP’(²£vî|o0 ´€ ™\grð‡ÀÕÅF,Oë(uàiàG kyD¹p ±  P00Í8Å|°”±Œ G°”‘Ú]Àò|±p º`GJðP8 ^/°)P+F6 !@D«0c2[Ð#» D %`‘yßá°V@Y°G0 ¤ ¥€Ž-F °A@pºTY prj9Ð20Øw#Pà6¦p ¨ F€: þS0ð˪b´1PŒÀ |€¤=_.¬ © «ÀfPaÐݲiÄ'ºÐ P‚%` 0§e`¨J>1¬é­`·Ì†4PÀAcÀœ°Ðà¢u‘v è¹h:€£ ®À+ L–8žP,¾ 6yl#ð ­Šð[0 Jh¼1õÀ@X oD‹„>Y¢ä ÐÍæ<G Â0 © Ynp INmp>Z ¾[ h¡’3‘ž Ä€*6°0œÔ“9Ó=ÿR¬Öu? «ÊþàÐ0„ð^ ¿)Æš`ñÊòWP ©` ßsð,°Lk~`Ep£á¾Çð #„0TQSÐ7õÞæ?4§ E°ö$xÈÖí =PùYA°ŽX\/ÀT@ÙÔñ%°÷BÝ=°ŽDA`±ò‚ ë„ ‘ž =@î$ìðð‘Ð'MI°QBàl¼´žÿùžE`qQ  é§° tí\làù@Û™p°lÀµ‘éš%ú[ð0nX‹_`UÌpúÈß Xðõ@Èþú‡ *Â@ ‘ Î@¾¥, ŠŸ íÐ 6ÿðTÚðý_ :\@0\AE°¯rüÏú£Ð üÏ)ÏððáÊU*‚ÐD€‘‘†NDKUlÕªb©\aÀ¡7M¬(-ì¦êvíäÊZY4¾„SæL˜"ÐÄ™S Ã:@^2[”`± [ICjÀ4‚§¦h99íŤҨirS±b§¢m•@cˆÙ¶Ûôõ”š’B…¶ÌW.Ã@$æÞ@$`^VËX°µZÃN’àÙÉ…ÒJ°á¤«%NÎbXBeÅh¥hAþ vjX†B€¥rŒ–¦l©²ÚDg¯É Áy¸W¼½ar°â;狈š[áÁfA3à8².Nr"d™ f“RAĆ€ É\§‚Áð@ª`©’íÁ N3ö©Ü1¤}ÒW‚ñÂý¿Ä!Hë¿—b¸é 74RAˆ>1Ä }ðâ mNÚ†‡çjŒ ê¬#;íRÁÌn\Ûä#•MPb¨‹RAbE?\;%Ù‚Ò£@ÿ ;¼ØâG𨢠Fúã’ÓÜ Š­ Sépºê®Ëî2ºÈ… U”ÒHˆT¦)&Dx%T²™â¥?|f“Zð þ* #Ì Œ @!ÉHTƒƒ†@R(o`h1£óðʳ܀$X‰(^º ¢S¸Ù‹”T|Ùä—Ú8Å•MÈ¡s¥>î4ðJxå„~!…P¡= ]é”oœÐHQ*µÄTDÔ2Gê#%‹°œïR…¡G"JÅxCl/Ùq¥qìð‘ÕÞˆ0bXb™Â…ÿ$è¢;4òäº]– 'ßp(Ù”jxI褻&cqI¢Ž“ÀaH‘`‚yq>B!GÓM,`HW¼J…IÄè’«S@Hu%r ‘†E)ƒsåz ‡.N0gï¤sN²Ä“åÜ«NºTÐIç$h4Ê`1¯|ñâTÔ)â¥,zѺ˜kJñÚ"¨(Ùn'à˜€!tW0¨’ \aŽ*Ê}‚W¡¾áí (×ÁÁƒj $ã%( è¤U$q¦ Pé$ià!—öT Q£|–âÎ=§²XD èO¦*øÀ#WAÒBÄÂy+þ\`‰·' †PH˜x€ †BfƒüÁä$( B`ˆ ø!È …F„À….dã'?¤2Ð@ Þ`™ˆà I@Ñ=ç%°…tŠŒid ֨Ș´1¯–ŒU4Ð ‚`…Ð y@€ 0(@/ºÛA°Ð9´QLÀ‚¾ÐF2l@#"˜‚A0+˜T!j@„ƒEò¸‘ „ô²°E  Ãèð†`(ÐÀ!¹INbq Mt`(<ð€ °„9´ Mëd,ei.ÔA&p‚Š  n³f0}=… $ e¸C%…¹Lf¬p ·„84Óš×Ä Êà‡=Ì!hà!6Å)N!|g:Õ¹Nvâ$ ;q2h$UUsizeq3L7486L u. <Åä((U OFS.ImageqUFileqtqNt.}q(U preconditionqUU descriptionqUUtitleqUUdataq(U @ q (hUPdataq tq tq QUelementq UfileqU content_typeqUapplication/octet-streamqU type_zwookqh U dispositionqU+U _propertiesq(}q(UtypeqUstringqUidqhu}q(hhhhu}q(hhhhu}q(hhhh u}q(hhhhu}q(UtypeqUstringqUidqhutq U__name__q!U feedparser.pyq"U_EtagSupport__etagq#U ts97911690.64q$U__ac_local_roles__q%}q&Uadminq']q(UOwnerq)asUsizeq*L111235L u. <Æö((U OFS.ImageqUFileqtqNt.}q(U preconditionqUU descriptionqUUtitleqUUdataqT%#~ From p4 / Zwook project: http://www.zwook.org #~ This script is under GPL import urllib2 from urllib import urlencode def send_ping(destination_url,url,title,excerpt,blog_name): #~ sends a trackback ping data={} data['url']=url data['title']=title data['excerpt']=excerpt data['blog_name']=blog_name data=urlencode(data) request=urllib2.Request(destination_url,data) request.add_header("Content-type","application/x-www-form-urlencoded; charset=iso-8859-1") file=urllib2.urlopen(request) print file.read() file.close() q Uelementq Ufileq U content_typeq Uapplication/octet-streamq U type_zwookqh U dispositionqU++qU _propertiesq(}q(UtypeqUstringqUidqhu}q(hhhh u}q(hhhhu}q(hhhh u}q(hhhhu}q(UtypeqUstringqUidqhutqU__name__qUsend_trackback_ping.pyq U_EtagSupport__etagq!U ts97911701.22q"U__ac_local_roles__q#}q$Uadminq%]q&UOwnerq'asUsizeq(M%u. <Ș((U OFS.FolderqUFolderqtqNt.}q(U zwo_dossierq(U @q(hUFolderqtqtq QUtitleq U Album Photosq U albumphotoq (U @q (hUFolderqtqtqQU type_zwookqUdossierqU _propertiesq(}q(UtypeqUstringqUidqh UmodeqUwdqu}q(hhhhutqU_objectsq(}q(U meta_typeqUFolderqhhu}q (U meta_typeq!UFolderq"Uidq#h utq$U__ac_local_roles__q%}q&Umanuq']q(UOwnerq)ashU albumphotosq*u. <ĵ((U OFS.FolderqUFolderqtqNt.}q(U zwo_dossierq(U @ q(hUFolderqtqtq QUtitleq UContactq Ucontactq (U @ q (UOFS.DTMLDocumentqU DTMLDocumentqtqtqQU type_zwookqUdossierqU _propertiesq(}q(UtypeqUstringqUidqh UmodeqUwdqu}q(hhhhutqU_objectsq(}q(U meta_typeqUFolderq hhu}q!(U meta_typeq"U DTML Documentq#Uidq$Ucontactq%utq&U__ac_local_roles__q'}q(Ujamesq)]q*UOwnerq+ashUcontactq,u. <ÊB((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <˘((U OFS.FolderqUFolderqtqNt.}q(UtitleqUU parse_testerq(U @q(U#Products.PythonScripts.PythonScriptqU PythonScriptq tq tq QU parse_rssq (U @q (U&Products.ExternalMethod.ExternalMethodqUExternalMethodqtqtqQU_objectsq(}q(U meta_typeqUExternal MethodqUidqU parse_rssqu}q(hUScript (Python)qhU parse_testerqutqU__ac_local_roles__q}qUjamesq]qUOwnerq ashUrssq!u. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <ÌB((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <ÍB((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <ÎB((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <ÏB((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <ÐB((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <ÑB((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. <ÒN((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqT // Epoz-Language-File: ru (Russian (windows-1251)) // Sergey V. Volobuev, 2003 EpozLang["Normal"]='Îáû÷íûé'; EpozLang["Paragraph"]='Àáçàö'; EpozLang["Heading1"]='Çàãîëîâîê 1'; EpozLang["Heading2"]='Çàãîëîâîê 2'; EpozLang["Heading3"]='Çàãîëîâîê 3'; EpozLang["Heading4"]='Çàãîëîâîê 4'; EpozLang["Heading5"]='Çàãîëîâîê 5'; EpozLang["Heading6"]='Çàãîëîâîê 6'; EpozLang["Formatted"]='Ôîðìàòèðîâàííûé'; EpozLang["Bold"]='Ïîëóæèðíûé'; EpozLang["Italic"]='Êóðñèâ'; EpozLang["Underline"]='Ïîä÷åðêíóòûé'; EpozLang["Subscript"]='Íèæíèé èíäåêñ'; EpozLang["Superscript"]='Âåðõíèé èíäåêñ'; EpozLang["TextColor"]='Öâåò øðèôòà'; EpozLang["BackColor"]='Öâåò ôîíà'; EpozLang["AlignLeft"]='Ïî ëåâîìó êðàþ'; EpozLang["Center"]='Ïî öåíòðó'; EpozLang["AlignRight"]='Ïî ïðàâîìó êðàþ'; EpozLang["OrderedList"]='Íóìåðàöèÿ'; EpozLang["UnorderedList"]='Ìàðêåðû'; EpozLang["Outdent"]='Óìåíüøèòü îòñòóï'; EpozLang["Indent"]='Óâåëè÷èòü îòñòóï'; EpozLang["InsertLink"]='Âñòàâèòü ãèïåðññûëêó'; EpozLang["InsertImage"]='Âñòàâèòü èçîáðàæåíèå'; EpozLang["InsertRule"]='Âñòàâèòü ëèíåéêó'; EpozLang["InsertTable"]='Âñòàâèòü òàáëèöó'; EpozLang["Toolbox"]='Èíñòðóìåíòû'; EpozLang["Undo"]='Îòìåíèòü'; EpozLang["Redo"]='Ïîâòîðèòü'; EpozLang["EnterLinkURL"]='Ââåäèòå URL ñòðàíèöû'; EpozLang["EnterImageURL"]='Ââåäèòå URL èçîáðàæåíèÿ'; EpozLang["EnterTableRows"]='×èñëî ñòðîê'; EpozLang["EnterTableColumns"]='×èñëî ñòîëáöîâ'; EpozLang["EnterTableBorder"]='Øèðèíà ãðàíèöû'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_ru.js.dtmlqu. <Ó*˜((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTî)//##### //### Epoz - a cross-browser-wysiwyg-editor for Zope //## Copyright (C) 2004 Maik Jablonski (maik.jablonski@uni-bielefeld.de) //# // Just to prevent typos when fetching the Epoz-IFrame... var Epoz = "EpozEditor"; // Speed-Up-Storage for document.getElementById(Epoz); var EpozElement; var EpozTextArea; // Global storages var form_data; // the document-data var form_name; // the name of the form-element var form_path; // path to buttons, font-selectors, ... var form_toolbox; // path to optional toolbox var form_area_style; // css-definition for wysiwyg-area var form_button_style; // css-definition for buttons var form_css; // css-style for iframe var form_customcss; // customized css-style for iframe var form_charset; // charset for iframe var form_pageurl; // real url for the edited page // Detect browser type and create Epoz- or Default-Textbox function InitEpoz(name, data, path, toolbox, style, button, css, customcss, charset, pageurl) { form_name = name; form_data = data; form_path = path; form_toolbox = toolbox; form_area_style = style; form_button_style = button; form_css = css; form_customcss = customcss; form_charset = charset; form_pageurl = pageurl; if (browser.isIE55 || browser.isIE6up) { // Mac-IE doesn't support RichText-Edit at the moment if (browser.isMac) { CreateTextarea(); } else { CreateEpoz(); } } else if (browser.isGecko) { //check to see if midas is enabled try { // Just a few cleanups for Mozilla form_data = form_data.replace(//ig,''); form_data = form_data.replace(/]*)>/ig,''); form_data = form_data.replace(/<\/strong>/ig,''); form_data = form_data.replace(//ig,''); form_data = form_data.replace(/]*)>/ig,''); form_data = form_data.replace(/<\/em>/ig,''); document.getElementById('EpozIFrame').contentDocument.designMode = "on"; document.getElementById('EpozIFrame').contentWindow.document.execCommand("undo", false, null); CreateEpoz(); } catch (e) { CreateTextarea(); } } else { CreateTextarea(); } } // Needs to be called by timeout for Mozilla... function EnableDesignMode() { if (browser.isIE5up) { frames[Epoz].document.designMode = "On"; } else { // just a try-catch-poll to see // when Mozilla is ready to go... try { EpozElement.contentDocument.designMode = "on"; } catch (e) { setTimeout(EnableDesignMode, 10); return; } } // Set all forms in sync with Epoz if (document.getElementsByTagName) var x = document.getElementsByTagName('FORM'); else if (document.all) var x = document.all.tags('FORM'); for (var i=0;i'; InsertHTML(anchorhtml); } } // Create a Hyperlink - IE has its own implementation function CreateLink(URL) { if (browser.isIE5up == false && ((URL == null) || (URL == ""))) { URL = prompt(EpozLang["EnterLinkURL"], ""); if ((URL != null) && (URL != "")) { EpozElement.contentWindow.document.execCommand("CreateLink",false,URL) } else { EpozElement.contentWindow.document.execCommand("Unlink",false, "") } } else { EpozElement.contentWindow.document.execCommand("CreateLink",false,URL) } } // Insert image via a URL function CreateImage(URL) { if ((URL == null) || (URL == "")) { URL = prompt(EpozLang["EnterImageURL"], ""); } if ((URL != null) && (URL != "")) { EpozElement.contentWindow.focus() EpozElement.contentWindow.document.execCommand('InsertImage', false, URL); } } // Creates a simple table function CreateTable(rows, cols, border, head) { rows = parseInt(rows); cols = parseInt(cols); if ((rows > 0) && (cols > 0)) { table = ' \n'; for (var i=0; i < rows; i++) { table = table + " \n"; for (var j=0; j < cols; j++) { if(i==0 && head=="1") { table += " \n"; } else { table += " \n"; } } table += " \n"; } table += "
##
\n"; InsertHTML(table); } EpozElement.contentWindow.focus() } // Sets selected formats function SelectFormat(selectname) { // First one is only a label if (selectname.selectedIndex != 0) { EpozElement.contentWindow.document.execCommand(selectname.id, false, selectname.options[selectname.selectedIndex].value); selectname.selectedIndex = 0; } EpozElement.contentWindow.focus(); } // Sets foreground-color function SetTextColor() { EpozColorCommand='forecolor'; window.open(form_path+'epoz_script_color.html','EpozColor','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=220,height=220'); } // Sets background-color function SetBackColor() { EpozColorCommand='backcolor'; window.open(form_path+'epoz_script_color.html','EpozColor','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=220,height=220'); } // Submit color-command to Rich-Text-Controls function SetColor(color) { if (browser.isGecko) { EpozElement.contentWindow.document.execCommand('useCSS',false, false); } EpozElement.contentWindow.document.execCommand(EpozColorCommand, false, color); EpozElement.contentWindow.focus(); } // Switch between Source- and Wysiwyg-View function SwitchViewMode(source_mode) { var html = GetHTML(!source_mode); if (source_mode) { EpozTextArea.value=TidyHTML(html); document.getElementById("EpozToolbar").style.display="none"; EpozTextArea.style.display="inline"; } else { EpozElement.contentWindow.document.body.innerHTML = html; document.getElementById("EpozToolbar").style.display="inline"; EpozTextArea.style.display="none"; if (browser.isGecko) { EpozElement.contentDocument.designMode = "on"; } } } qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_script_mainqu. <ìŠ((U'Products.PageTemplates.ZopePageTemplateqUZopePageTemplateqtqNt.}q(U _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq }q U name_subpathq Utraverse_subpathq ssbU__ac_local_roles__q }qUadminq]qUOwnerqasUidqUepoz_toolbox.ptqU content_typeqU text/htmlqU_textqTO Title or Id
Search Terms
Search results
Title Title Metatype Insert Link
qu. <Õ•((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_image.gifqUdataqT®GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù þ,‹ý H° Áƒ*\Ȱ¡Ã‡Iœ8ÄÕÃ@ÿ2þ ”®¢CŒÍ”!ÃØÑ"CŒË’ÝÒ3¤å†ø!»µÍ+Q^ž´ ,[ÄL±Ò¹0P;^Ójbj(Lqµ–J¥)“Ó“×^£úIÒÕ¢ÌR‰â”I¤¯ ±ZËv-Q….㺄H·®Ý»x;qUsizeqL942L u. <ö|((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTÎ// Epoz-Language-File: fi (Finnish) // petri.savolainen@iki.fi, 2003 EpozLang["Normal"]='Normaali'; EpozLang["Paragraph"]='Kappale'; EpozLang["Heading1"]='Otsikko 1'; EpozLang["Heading2"]='Otsikko 2'; EpozLang["Heading3"]='Otsikko 3'; EpozLang["Heading4"]='Otsikko 4'; EpozLang["Heading5"]='Otsikko 5'; EpozLang["Heading6"]='Otsikko 6'; EpozLang["Formatted"]='Muotoiltu'; EpozLang["Bold"]='Lihavoitu'; EpozLang["Italic"]='Kursivoitu'; EpozLang["Underline"]='Alleviivattu'; EpozLang["Strikethrough"]='Yliviivattu'; EpozLang["Subscript"]='Alaindeksi'; EpozLang["Superscript"]='Yläindeksi'; EpozLang["TextColor"]='Tekstin väri'; EpozLang["BackColor"]='Taustan väri'; EpozLang["AlignLeft"]='Tasaa vasemmalle'; EpozLang["Center"]='Keskitä'; EpozLang["AlignRight"]='Tasaa oikealle'; EpozLang["OrderedList"]='Järjestetty lista'; EpozLang["UnorderedList"]='Järjestämätön lista'; EpozLang["Outdent"]='Vähennä sisennystä'; EpozLang["Indent"]='Kasvata sisennystä'; EpozLang["InsertLink"]='Lisää linkki'; EpozLang["InsertImage"]='Lisää kuva'; EpozLang["InsertRule"]='Lisää viiva'; EpozLang["InsertTable"]='Lisää taulukko'; EpozLang["Toolbox"]='Työkalupakki'; EpozLang["Undo"]='Peru'; EpozLang["Redo"]='Tee uudelleen'; EpozLang["EnterLinkURL"]='Anna linkin URL'; EpozLang["EnterImageURL"]='Anna kuvan URL'; EpozLang["EnterTableRows"]='Anna rivimäärä'; EpozLang["EnterTableColumns"]='Anna sarakemäärä'; EpozLang["EnterTableBorder"]='Anna kehyksen määrittely'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_fi.js.dtmlqu. <ÖX((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_hr.gifqUdataqTtGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Qÿ H° Áƒ*\Ȱ¡Ã‡z™H±¢Å‹/jܱ£Çÿ¼„Ìr"I„"GŽLÉò`J•"[ž$ø²bÉ—* ÊŒy§N˜@}‚J´¨Ñ€;qUsizeqL884L u. <Ø~((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_table.gifqUdataqT—GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù þ,tý H° Áƒ*\Ȱ¡Ã†^"JœH1¢A/œ2jܸq–—‹Cjôxñß?W&O¦DiÒÕÇ‚^Z®œÙò%A/®rêÜÉÓæÀ˜*e =éS P–A“º¼È³é΢þŽÒT UêP¤Ka:ÝZµ¢W‰ÊKVa@;qUsizeqL919L u. <úƒ((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqT×// Browser Detect v2.1.6 // documentation: http://www.dithered.com/javascript/browser_detect/index.html // license: http://creativecommons.org/licenses/by/1.0/ // code by Chris Nott (chris[at]dithered[dot]com) function BrowserDetect() { var ua = navigator.userAgent.toLowerCase(); // browser engine name this.isGecko = (ua.indexOf('gecko') != -1 && ua.indexOf('safari') == -1); this.isAppleWebKit = (ua.indexOf('applewebkit') != -1); // browser name this.isKonqueror = (ua.indexOf('konqueror') != -1); this.isSafari = (ua.indexOf('safari') != - 1); this.isOmniweb = (ua.indexOf('omniweb') != - 1); this.isOpera = (ua.indexOf('opera') != -1); this.isIcab = (ua.indexOf('icab') != -1); this.isAol = (ua.indexOf('aol') != -1); this.isIE = (ua.indexOf('msie') != -1 && !this.isOpera && (ua.indexOf('webtv') == -1) ); this.isMozilla = (this.isGecko && ua.indexOf('gecko/') + 14 == ua.length); this.isFirebird = (ua.indexOf('firebird/') != -1); this.isNS = ( (this.isGecko) ? (ua.indexOf('netscape') != -1) : ( (ua.indexOf('mozilla') != -1) && !this.isOpera && !this.isSafari && (ua.indexOf('spoofer') == -1) && (ua.indexOf('compatible') == -1) && (ua.indexOf('webtv') == -1) && (ua.indexOf('hotjava') == -1) ) ); // spoofing and compatible browsers this.isIECompatible = ( (ua.indexOf('msie') != -1) && !this.isIE); this.isNSCompatible = ( (ua.indexOf('mozilla') != -1) && !this.isNS && !this.isMozilla); // rendering engine versions this.geckoVersion = ( (this.isGecko) ? ua.substring( (ua.lastIndexOf('gecko/') + 6), (ua.lastIndexOf('gecko/') + 14) ) : -1 ); this.equivalentMozilla = ( (this.isGecko) ? parseFloat( ua.substring( ua.indexOf('rv:') + 3 ) ) : -1 ); this.appleWebKitVersion = ( (this.isAppleWebKit) ? parseFloat( ua.substring( ua.indexOf('applewebkit/') + 12) ) : -1 ); // browser version this.versionMinor = parseFloat(navigator.appVersion); // correct version number if (this.isGecko && !this.isMozilla) { this.versionMinor = parseFloat( ua.substring( ua.indexOf('/', ua.indexOf('gecko/') + 6) + 1 ) ); } else if (this.isMozilla) { this.versionMinor = parseFloat( ua.substring( ua.indexOf('rv:') + 3 ) ); } else if (this.isIE && this.versionMinor >= 4) { this.versionMinor = parseFloat( ua.substring( ua.indexOf('msie ') + 5 ) ); } else if (this.isKonqueror) { this.versionMinor = parseFloat( ua.substring( ua.indexOf('konqueror/') + 10 ) ); } else if (this.isSafari) { this.versionMinor = parseFloat( ua.substring( ua.lastIndexOf('safari/') + 7 ) ); } else if (this.isOmniweb) { this.versionMinor = parseFloat( ua.substring( ua.lastIndexOf('omniweb/') + 8 ) ); } else if (this.isOpera) { this.versionMinor = parseFloat( ua.substring( ua.indexOf('opera') + 6 ) ); } else if (this.isIcab) { this.versionMinor = parseFloat( ua.substring( ua.indexOf('icab') + 5 ) ); } this.versionMajor = parseInt(this.versionMinor); // dom support this.isDOM1 = (document.getElementById); this.isDOM2Event = (document.addEventListener && document.removeEventListener); // css compatibility mode this.mode = document.compatMode ? document.compatMode : 'BackCompat'; // platform this.isWin = (ua.indexOf('win') != -1); this.isWin32 = (this.isWin && ( ua.indexOf('95') != -1 || ua.indexOf('98') != -1 || ua.indexOf('nt') != -1 || ua.indexOf('win32') != -1 || ua.indexOf('32bit') != -1 || ua.indexOf('xp') != -1) ); this.isMac = (ua.indexOf('mac') != -1); this.isUnix = (ua.indexOf('unix') != -1 || ua.indexOf('sunos') != -1 || ua.indexOf('bsd') != -1 || ua.indexOf('x11') != -1) this.isLinux = (ua.indexOf('linux') != -1); // specific browser shortcuts this.isNS4x = (this.isNS && this.versionMajor == 4); this.isNS40x = (this.isNS4x && this.versionMinor < 4.5); this.isNS47x = (this.isNS4x && this.versionMinor >= 4.7); this.isNS4up = (this.isNS && this.versionMinor >= 4); this.isNS6x = (this.isNS && this.versionMajor == 6); this.isNS6up = (this.isNS && this.versionMajor >= 6); this.isNS7x = (this.isNS && this.versionMajor == 7); this.isNS7up = (this.isNS && this.versionMajor >= 7); this.isIE4x = (this.isIE && this.versionMajor == 4); this.isIE4up = (this.isIE && this.versionMajor >= 4); this.isIE5x = (this.isIE && this.versionMajor == 5); this.isIE55 = (this.isIE && this.versionMinor == 5.5); this.isIE5up = (this.isIE && this.versionMajor >= 5); this.isIE6x = (this.isIE && this.versionMajor == 6); this.isIE6up = (this.isIE && this.versionMajor >= 6); this.isIE4xMac = (this.isIE4x && this.isMac); } var browser = new BrowserDetect();qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_script_detectqu. <Úx((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTÊ// Epoz-Language-File: hu (Hungarian) // dtamas@pressflex.com, 2003 EpozLang["Normal"]='Normál'; EpozLang["Paragraph"]='Bekezdés'; EpozLang["Heading1"]='Címsor 1'; EpozLang["Heading2"]='Címsor 2'; EpozLang["Heading3"]='Címsor 3'; EpozLang["Heading4"]='Címsor 4'; EpozLang["Heading5"]='Címsor 5'; EpozLang["Heading6"]='Címsor 6'; EpozLang["Formatted"]='Formázott'; EpozLang["Bold"]='Félkövér'; EpozLang["Italic"]='Kurzív'; EpozLang["Underline"]='Aláhúzott'; EpozLang["Strikethrough"]='Áthúzott'; EpozLang["Subscript"]='Alsó index'; EpozLang["Superscript"]='Felsô index'; EpozLang["TextColor"]='Szövegszín'; EpozLang["BackColor"]='Háttérszín'; EpozLang["AlignLeft"]='Balra igazított'; EpozLang["Center"]='Közép'; EpozLang["AlignRight"]='Jobbra igazított'; EpozLang["OrderedList"]='Sorszámozott lista'; EpozLang["UnorderedList"]='Felsorolás'; EpozLang["Outdent"]='Kihúzás'; EpozLang["Indent"]='Behúzás'; EpozLang["InsertLink"]='Hivatkozás beszúrása'; EpozLang["InsertImage"]='Kép beszúrása'; EpozLang["InsertRule"]='Elválasztó beszúrása'; EpozLang["InsertTable"]='Táblázat beszúrása'; EpozLang["Toolbox"]='Eszköztár'; EpozLang["Undo"]='Vissza'; EpozLang["Redo"]='Újra'; EpozLang["EnterLinkURL"]='Írja be a hivatkozás URL-jét'; EpozLang["EnterImageURL"]='Írja be a kép URL-jét'; EpozLang["EnterTableRows"]='Sorok száma'; EpozLang["EnterTableColumns"]='Oszlopok száma'; EpozLang["EnterTableBorder"]='Keretvastagság'; EpozLang["TableWithHead"]='Táblázat fejléccel'; EpozLang["TableWithoutHead"]='Táblázat fejléc nélkül'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_hu.js.dtmlqu. <Üå((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqT7// Epoz-Language-File: es (Spanish) // Thanks to Pedro J. Rey Sanchiz EpozLang["Normal"]='Normal'; EpozLang["Paragraph"]='Párrafo'; EpozLang["Heading1"]='Cabecera 1'; EpozLang["Heading2"]='Cabecera 2'; EpozLang["Heading3"]='Cabecera 3'; EpozLang["Heading4"]='Cabecera 4'; EpozLang["Heading5"]='Cabecera 5'; EpozLang["Heading6"]='Cabecera 6'; EpozLang["Formatted"]='Formateado'; EpozLang["Bold"]='Negrita'; EpozLang["Italic"]='Cursiva'; EpozLang["Underline"]='Subrayado'; EpozLang["Subscript"]='Subíndice'; EpozLang["Superscript"]='Superíndice'; EpozLang["TextColor"]='Color'; EpozLang["BackColor"]='Color de fondo'; EpozLang["AlignLeft"]='Alineación izquierda'; EpozLang["Center"]='Centrado'; EpozLang["AlignRight"]='Alineación derecha'; EpozLang["OrderedList"]='Lista numerada'; EpozLang["UnorderedList"]='Viñetas'; EpozLang["Outdent"]='Sangrar más'; EpozLang["Indent"]='Sangrar menos'; EpozLang["InsertLink"]='Insertar hipervínculo'; EpozLang["InsertImage"]='Insertar imagen'; EpozLang["InsertRule"]='Insertar regla horizontal'; EpozLang["InsertTable"]='Insertar tabla'; EpozLang["Toolbox"]='Toolbox'; EpozLang["Undo"]='Deshacer'; EpozLang["Redo"]='Rehacer'; EpozLang["EnterLinkURL"]='Introduzca la dirección del hipervínculo'; EpozLang["EnterImageURL"]='Introduzca la situaci?n de la imagen'; EpozLang["EnterTableRows"]='Introduzca el número de líneas'; EpozLang["EnterTableColumns"]='Introduzca el número de columnas'; EpozLang["EnterTableBorder"]='Introduzca el ancho del borde'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_es.js.dtmlqu. <ݦ((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_anchor.gifqUdataqUÁGIF89aã YYY‘‘‘¹¹¹ÇÇÇÈÈÈÜÜÜçççêêêïïïóóó!þCreated with The GIMP!ù ,UðÉI«½•<û Áz`˜Àœçp²’»Þ3mO(ý츕 u°ÔÑ@-}¿´æœF‹O+id&nWï±7“YÛ¢”%PmµPxЭÐ;qUsizeqL193L u. <Þ²((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_hyperlink.gifqUdataqTÇGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,¤ÿ H° Áƒ*\Ȱ¡Ã‡]š8ÄÕC‰æÄ±ÆlHņøJDH!;f†0”˜ˆ’&JêõióQa b”H±ºÇŽR 6VTÚìÆ Õ¬yê¸Í<%4a k☙b&Î+Nžš" ÄÌÚ#Jt)ãŪ’Öƒíô ÔÇ/XY-. d¦Í›6fXyjt!F-V¢,ñ(·¡D5!*^̸±c…;qUsizeqL967L u. <ßÑ((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_tools.gifqUdataqTêGIF89aÆ  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ!ù ,G€‚ƒ„…†‡ˆ‰Š‹ŒŽ‡^’ƒ^•–‰’™†“ˆœ››˜ž‘Ÿœ…¨š„¡­ª—‚®¡«£²¯¬µ²‹¶¢»¼”ÀÁÂÃć;qUsizeqL490L u. <àG((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_subscript.gifqUdataqT\GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,9ÿ H° Áƒ*\Ȱ¡Ã‡#JœH± //J¼¨qbÇAfÄø‘"F“Oš,Y±¥Ë—;qUsizeqL860L u. <áW((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_strikethrough.gifqUdataqThGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ!ù ÿ,Eÿ H° Áƒ*\Ȱ¡Ã‡z™èå_ŇfÄxQ`dž5F É‘¢I’%GjÜèð#K_2¬h2¢Í›8sê<;qUsizeqL872L u. <âw((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTÇ Epoz
qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_script_color.htmlqu. <ÛÎ((U'Products.PageTemplates.ZopePageTemplateqUZopePageTemplateqtqNt.}q(U _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq }q U name_subpathq Utraverse_subpathq ssbU__ac_local_roles__q }qUadminq]qUOwnerqasUidqUwysiwyg_support.ptqU content_typeqU text/htmlqU_textqT
If you are unsure of which format to use, just select Plain Text and type the document as you usually do.


qu. <ã((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTn// Epoz-Language-File: zh (Chinese) // panjy@plone.cn, 2003 var EpozLang=[]; EpozLang['Normal']='常规'; EpozLang['Paragraph']='段è½'; EpozLang['Heading1']='标题 1'; EpozLang['Heading2']='标题 2'; EpozLang['Heading3']='标题 3'; EpozLang['Heading4']='标题 4'; EpozLang['Heading5']='标题 5'; EpozLang['Heading6']='标题 6'; EpozLang['Formatted']='ä¿æŒæ ¼å¼'; EpozLang['Bold']='加粗'; EpozLang['Italic']='倾斜'; EpozLang['Underline']='下划线'; EpozLang["Strikethrough"]='中划线'; EpozLang['Subscript']='下标'; EpozLang['Superscript']='上标'; EpozLang["RemoveFormat"]='去除格å¼'; EpozLang['TextColor']='文字颜色'; EpozLang['BackColor']='背景颜色'; EpozLang['AlignLeft']='左对é½'; EpozLang['Center']='居中'; EpozLang['AlignRight']='å³å¯¹é½'; EpozLang['OrderedList']='æœ‰åºæ¸…å•'; EpozLang['UnorderedList']='æ— åºæ¸…å•'; EpozLang['Outdent']='å‡å°‘缩进'; EpozLang['Indent']='增加缩进'; EpozLang['InsertLink']='添加链接'; EpozLang["InsertAnchor"]='添加书签(Anchor)'; EpozLang['InsertImage']='添加图片'; EpozLang['InsertRule']='添加尺线'; EpozLang['InsertTable']='添加表格'; EpozLang['Toolbox']='工具箱'; EpozLang['Undo']='撤销'; EpozLang['Redo']='æ¢å¤'; EpozLang['EnterLinkURL']='输入链接的URL地å€'; EpozLang["EnterAnchorName"]='输入书签(Anchor)å'; EpozLang['EnterImageURL']='输入图片的UR地å€'; EpozLang['EnterTableRows']='输入行数'; EpozLang['EnterTableColumns']='输入列数'; EpozLang['EnterTableBorder']='输入边框'; EpozLang["TableWithHead"]='带标题的表格'; EpozLang["TableWithoutHead"]='ä¸å¸¦æ ‡é¢˜çš„表格'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_zh-cn.js.dtmlqu. <ä÷((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTQ// Epoz-Language-File: fr (French) // Jean.Laroque@saint-gobain.com EpozLang["Normal"]='Normal'; EpozLang["Paragraph"]='Paragraphe'; EpozLang["Heading1"]='Titre 1'; EpozLang["Heading2"]='Titre 2'; EpozLang["Heading3"]='Titre 3'; EpozLang["Heading4"]='Titre 4'; EpozLang["Heading5"]='Titre 5'; EpozLang["Heading6"]='Titre 6'; EpozLang["Formatted"]='Formaté'; EpozLang["Bold"]='Gras'; EpozLang["Italic"]='Italique'; EpozLang["Underline"]='Souligné'; EpozLang["Strikethrough"]='Barré'; EpozLang["Subscript"]='Indice'; EpozLang["Superscript"]='Exposant'; EpozLang["TextColor"]='Couleur Texte'; EpozLang["BackColor"]='Couleur Fond'; EpozLang["AlignLeft"]='Aligner à Gauche'; EpozLang["Center"]='Centrer'; EpozLang["AlignRight"]='Aligner à Droite'; EpozLang["OrderedList"]='Liste Ordonnée'; EpozLang["UnorderedList"]='Liste Désordonnée'; EpozLang["Outdent"]='Diminuer le retrait'; EpozLang["Indent"]='Augmenter le retrait'; EpozLang["InsertLink"]='Insertion Lien'; EpozLang["InsertImage"]='Insertion Image'; EpozLang["InsertRule"]='Insertion Trait'; EpozLang["InsertTable"]='Insertion Tableau'; EpozLang["Toolbox"]='Boite à Outil'; EpozLang["Undo"]='Annuler'; EpozLang["Redo"]='Rétablir'; EpozLang["EnterLinkURL"]='Entrer Lien URL'; EpozLang["EnterImageURL"]='Entrer Image URL'; EpozLang["EnterTableRows"]='Nombre de Lignes'; EpozLang["EnterTableColumns"]='Nombre de Colonnes'; EpozLang["EnterTableBorder"]='Type de Bordure'; EpozLang["TableWithHead"]='Tableau avec Entête'; EpozLang["TableWithoutHead"]='Tableau sans Entête'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qU epoz_lang_frqu. <åc((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_textcolor.gifqUdataqTxGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Uÿ H° Áƒ*\È🗆yÑ —‹ J¼H1£Ã‡3JÈ1ãÅ“!ŽX²aÊU>ÔØ2!J–(gz„˜³ç̓>ƒ" ês§Ñ£Hw;qUsizeqL888L u. <æe((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_unformat.gifqUdataqT{GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ!ù ÿ,Xÿ H° Áƒ*\Ȱ¡Ã‡½H”øbC/N¼˜£À 1ŠÌXÑc‘(A†ÔHÒâC“c~ôr"̈[’\ÙÑâ̓6uþ4H³$M•2“*] 1 ;qUsizeqL891L u. <çJ™((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTôI// // Copyright (C) 2000, 2001, 2002 Virtual Cowboys info@virtualcowboys.nl // // Author: Ruben Daniels // Version: 0.91 // Date: 29-08-2001 // Site: www.vcdn.org/Public/XMLRPC/ // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation; either version 2 of the License, or // (at your option) any later version. // // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // // You should have received a copy of the GNU General Public License // along with this program; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Object.prototype.toXMLRPC = function(){ var wo = this.valueOf(); if(wo.toXMLRPC == this.toXMLRPC){ retstr = ""; for(prop in this){ if(typeof wo[prop] != "function"){ retstr += "" + prop + "" + XMLRPC.getXML(wo[prop]) + ""; } } retstr += ""; return retstr; } else{ return wo.toXMLRPC(); } } String.prototype.toXMLRPC = function(){ // return "";//.replace(/" + this + ""; } else if(this == parseFloat(this)){ return "" + this + ""; } else{ return false.toXMLRPC(); } } Boolean.prototype.toXMLRPC = function(){ if(this) return "1"; else return "0"; } Date.prototype.toXMLRPC = function(){ //Could build in possibilities to express dates //in weeks or other iso8601 possibillities //hmmmm ???? //19980717T14:08:55 return "" + doYear(this.getUTCYear()) + doZero(this.getMonth()) + doZero(this.getUTCDate()) + "T" + doZero(this.getHours()) + ":" + doZero(this.getMinutes()) + ":" + doZero(this.getSeconds()) + ""; function doZero(nr) { nr = String("0" + nr); return nr.substr(nr.length-2, 2); } function doYear(year) { if(year > 9999 || year < 0) XMLRPC.handleError(new Error("Unsupported year: " + year)); year = String("0000" + year) return year.substr(year.length-4, 4); } } Array.prototype.toXMLRPC = function(){ var retstr = ""; for(var i=0;i"; } return retstr + ""; } function VirtualService(servername, oRPC){ this.version = '0.91'; this.URL = servername; this.multicall = false; this.autoroute = true; this.onerror = null; this.rpc = oRPC; this.receive = {}; this.purge = function(receive){ return this.rpc.purge(this, receive); } this.revert = function(){ this.rpc.revert(this); } this.add = function(name, alias, receive){ this.rpc.validateMethodName();if(this.rpc.stop){this.rpc.stop = false;return false} if(receive) this.receive[name] = receive; this[(alias || name)] = new Function('var args = new Array(), i;for(i=0;i mask/s * -------------------- * undefined -> 0/1 [default] * number -> 2 * boolean -> 4 * string -> 8 * function -> 16 * object -> 32 * -------------------- * Examples: * Want [String] only: (eqv. (typeof(vDunno) == 'string') ) * Soya.Common.typematch(unknown, 8) * Anything else than 'undefined' acceptable: * Soya.Common.typematch(unknown) * Want [Number], [Boolean] or [Function]: * Soya.Common.typematch(unknown, 2 + 4 + 16) * Want [Number] only: * Soya.Common.typematch(unknown, 2) **/ typematch : function (vDunno, nCase){ var nMask; switch(typeof(vDunno)){ case 'number' : nMask = 2; break; case 'boolean' : nMask = 4; break; case 'string' : nMask = 8; break; case 'function': nMask = 16; break; case 'object' : nMask = 32; break; default : nMask = 1; break; } return Boolean(nMask & (nCase || 62)); }, getNode : function(data, tree){ var nc = 0;//nodeCount //node = 1 if(data != null){ for(i=0;i 1){ tree.shift(); data = this.getNode(data, tree); } return data; } nc++ } } } return false; }, toObject : function(data){ var ret, i; switch(data.tagName){ case "string": var s="" //Mozilla has many textnodes with a size of 4096 chars each instead of one large one. //They all need to be concatenated. for(var j=0;j 0) return sEncoded; /* Use NN's built-in base64 decoder if available. This procedure is horribly slow running under NN4, so the NN built-in equivalent comes in very handy. :) */ else if(typeof(atob) != 'undefined') return atob(sEncoded); var nBits, i, sDecoded = ''; var base64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='; sEncoded = sEncoded.replace(/\W|=/g, ''); for(i=0; i < sEncoded.length; i += 4){ nBits = (base64.indexOf(sEncoded.charAt(i)) & 0xff) << 18 | (base64.indexOf(sEncoded.charAt(i+1)) & 0xff) << 12 | (base64.indexOf(sEncoded.charAt(i+2)) & 0xff) << 6 | base64.indexOf(sEncoded.charAt(i+3)) & 0xff; sDecoded += String.fromCharCode( (nBits & 0xff0000) >> 16, (nBits & 0xff00) >> 8, nBits & 0xff); } // not sure if the following statement behaves as supposed under // all circumstances, but tests up til now says it does. return sDecoded.substring(0, sDecoded.length - ((sEncoded.charCodeAt(i - 2) == 61) ? 2 : (sEncoded.charCodeAt(i - 1) == 61 ? 1 : 0))); }, getObject : function(type, message){ if(type == "HTTP"){ if(isIE) obj = new ActiveXObject("microsoft.XMLHTTP"); else if(isNS) obj = new XMLHttpRequest(); } else if(type == "XMLDOM"){ if(isIE){ obj = new ActiveXObject("microsoft.XMLDOM"); obj.loadXML(message) }else if(isNS){ obj = new DOMParser(); obj = obj.parseFromString(message, "text/xml"); } } else{ this.handleError(new Error("Unknown Object")); } return obj; }, validateMethodName : function(name){ /*do Checking: The string may only contain identifier characters, upper and lower-case A-Z, the numeric characters, 0-9, underscore, dot, colon and slash. */ if(/^[A-Za-z0-9\._\/:]+$/.test(name)) return true else this.handleError(new Error("Incorrect method name")); }, getXML : function(obj){ if(typeof obj == "function"){ this.handleError(new Error("Cannot Parse functions")); }else if(obj == null || obj == undefined || (typeof obj == "number" && !isFinite(obj))) return false.toXMLRPC(); else return obj.toXMLRPC(); }, handleError : function(e){ if(!this.onerror || !this.onerror(e)){ //alert("An error has occured: " + e.message); throw e; } this.stop = true; this.lastError = e; }, cancel : function(id){ //You can only cancel a request when it was executed async (I think) if(!this.queue[id]) return false; this.queue[id][0].abort(); return true; }, send : function(serverAddress, functionName, args, receive, multicall, autoroute){ var id, http; //default is sync this.validateMethodName(); if(this.stop){this.stop = false; return false;} //setting up multicall multicall = (multicall != null) ? multicall : this.multicall; if(multicall){ if(!this.stack[serverAddress]) this.stack[serverAddress] = new Array(); this.stack[serverAddress].push({methodName : functionName, params : args}); return true; } //creating http object var http = this.getObject("HTTP"); //setting some things for async/sync transfers if(!receive || isNS){; async = false; } else{ async = true; /* The timer functionality is implemented instead of the onreadystatechange event because somehow the calling of this event crashed IE5.x */ id = this.queue.push([http, receive, null, new Date()])-1; this.queue[id][2] = new Function("var id='" + id + "';var dt = new Date(new Date().getTime() - XMLRPC.queue[id][3].getTime());diff = parseInt(dt.getSeconds()*1000 + dt.getMilliseconds());if(diff > XMLRPC.timeout){if(XMLRPC.ontimeout) XMLRPC.ontimeout(); clearInterval(XMLRPC.timers[id]);XMLRPC.cancel(id);return};if(XMLRPC.queue[id][0].readyState == 4){XMLRPC.queue[id][0].onreadystatechange = function(){};XMLRPC.receive(id);clearInterval(XMLRPC.timers[id])}"); this.timers[id] = setInterval("XMLRPC.queue[" + id + "][2]()", 20); } //setting up the routing autoroute = (autoroute || this.autoroute); //'active' is only set when direct sending the message has failed var srv = (autoroute == "active") ? this.routeServer : serverAddress; try{ http.open('POST', srv, async); http.setRequestHeader("User-Agent", "vcXMLRPC v0.91 (" + navigator.userAgent + ")"); http.setRequestHeader("Host", srv.replace(/^https?:\/{2}([:\[\]\-\w\.]+)\/?.*/, '$1')); http.setRequestHeader("Content-type", "text/xml"); if(autoroute == "active"){ http.setRequestHeader("X-Proxy-Request", serverAddress); http.setRequestHeader("X-Compress-Response", "gzip"); } } catch(e){ if(autoroute == true){ //Access has been denied, Routing call. autoroute = "active"; if(id){ delete this.queue[id]; clearInterval(this.timers[id]); } return this.send(serverAddress, functionName, args, receive, multicall, autoroute); } //Routing didn't work either..Throwing error this.handleError(new Error("Could not sent XMLRPC Message (Reason: Access Denied on client)")); if(this.stop){this.stop = false;return false} } //Construct the message var message = '' + functionName + ''; for(i=0;i'; } message += ''; var xmldom = this.getObject('XMLDOM', message); if(self.DEBUG) alert(message); try{ //send message http.send(xmldom); } catch(e){ //Most likely the message timed out(what happend to your internet connection?) this.handleError(new Error("XMLRPC Message not Sent(Reason: " + e.message + ")")); if(this.stop){this.stop = false;return false} } if(!async && receive) return [autoroute, receive(this.processResult(http))]; else if(receive) return [autoroute, id]; else return [autoroute, this.processResult(http)]; }, receive : function(id){ //Function for handling async transfers.. if(this.queue[id]){ var data = this.processResult(this.queue[id][0]); this.queue[id][1](data); delete this.queue[id]; } else{ this.handleError(new Error("Error while processing queue")); } }, processResult : function(http){ if(self.DEBUG) alert(http.responseText); if(http.status == 200){ //getIncoming message dom = http.responseXML; if(dom){ var rpcErr, main; //Check for XMLRPC Errors rpcErr = dom.getElementsByTagName("fault"); if(rpcErr.length > 0){ rpcErr = this.toObject(rpcErr[0].firstChild); this.handleError(new Error(rpcErr.faultCode, rpcErr.faultString)); return false } //handle method result main = dom.getElementsByTagName("param"); if(main.length == 0) this.handleError(new Error("Malformed XMLRPC Message")); data = this.toObject(this.getNode(main[0], [0])); //handle receiving if(this.onreceive) this.onreceive(data); return data; } else{ this.handleError(new Error("Malformed XMLRPC Message")); } } else{ this.handleError(new Error("HTTP Exception: (" + http.status + ") " + http.statusText + "\n\n" + http.responseText)); } } } //Smell something ver = navigator.appVersion; app = navigator.appName; isNS = Boolean(navigator.productSub) //moz_can_do_http = (parseInt(navigator.productSub) >= 20010308) isIE = (ver.indexOf("MSIE 5") != -1 || ver.indexOf("MSIE 6") != -1) ? 1 : 0; isIE55 = (ver.indexOf("MSIE 5.5") != -1) ? 1 : 0; isOTHER = (!isNS && !isIE) ? 1 : 0; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qU vcXMLRPC.jsqu. <è=((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqT// Epoz-Language-File: pl (Polish) // qbak@qbak.net, 2003 EpozLang["Normal"]='Normalny'; EpozLang["Paragraph"]='Akapit'; EpozLang["Heading1"]='Nag³ówek 1'; EpozLang["Heading2"]='Nag³ówek 2'; EpozLang["Heading3"]='Nag³ówek 3'; EpozLang["Heading4"]='Nag³ówek 4'; EpozLang["Heading5"]='Nag³ówek 5'; EpozLang["Heading6"]='Nag³ówek 6'; EpozLang["Formatted"]='Sformatowany'; EpozLang["Bold"]='Pogrubienie'; EpozLang["Italic"]='Kursywa'; EpozLang["Underline"]='Podkre¶lenie'; EpozLang["Subscript"]='Indeks dolny'; EpozLang["Superscript"]='Indeks górny'; EpozLang["TextColor"]='Kolor tekstu'; EpozLang["BackColor"]='Kolor t³a'; EpozLang["AlignLeft"]='Wyrównanie do lewej'; EpozLang["Center"]='Wy¶rodkowanie'; EpozLang["AlignRight"]='Wyrównanie do prawej'; EpozLang["OrderedList"]='Lista numerowana'; EpozLang["UnorderedList"]='Lista wypunktowana'; EpozLang["Outdent"]='Zmniejsz wciêcie'; EpozLang["Indent"]='Zwiêksz wciêcie'; EpozLang["InsertLink"]='Wstaw odno¶nik'; EpozLang["InsertImage"]='Wstaw obrazek'; EpozLang["InsertRule"]='Wstaw linijkê'; EpozLang["InsertTable"]='Wstaw tabelê'; EpozLang["Toolbox"]='Narzêdzia'; EpozLang["Undo"]='Cofnij'; EpozLang["Redo"]='Powtórz'; EpozLang["EnterLinkURL"]='Wprowad¼ URL odno¶nika'; EpozLang["EnterImageURL"]='Wprowad¼ URL obrazka'; EpozLang["EnterTableRows"]='Wprowad¼ wiersze'; EpozLang["EnterTableColumns"]='Wprowad¼ kolumny'; EpozLang["EnterTableBorder"]='Wprowad¼ ramkê'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_pl.js.dtmlqu. <éV((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_underline.gifqUdataqTkGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Hÿ H° Áƒ*\Ȱ¡Ã‡z™èåÅŠ'Ôø£EŒAzlèq$Ã’ IŠLyÒ‹ ‚L¶¤±&Á‹8mêÜɳgÄ€;qUsizeqL875L u. <êX((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_outdent.gifqUdataqToGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Lÿ H° Áƒ*\È🗆z™ø¢Å‰3þ“Bð¢E„R8ôHñ`È“†ìx‘¡HSjüH£L†4ÞÜ “§ÏŸ@;qUsizeqL879L u. <ëJ((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_bold.gifqUdataqTdGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Aÿ H° Áƒ*\Ȱ¡Ã‡#>ôB±"Eˆft¸qcÃŽ9Z )Ò‹F’ Aš,yreÊ‘(%ÊœI³¦M™;qUsizeqL868L u. <Ô((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_space.gifqUdataqU+GIF89a€ÿÿÿ!ù,D;qUsizeqL43L u. <íK((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_redo.gifqUdataqTeGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Bÿ H° Áƒ*\Ȱ¡Ã‡#JœøO—‹^"Z$xq`F… fì!Æ…!9žT¸QåJ‚(ÊœI³¦Í›;qUsizeqL869L u. <îX((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_numbered_list.gifqUdataqTiGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Fÿ H° Áƒ*\Ȱ¡A)J(ЋŋRŒHpâFŽ %~ ù"Æ“I ô¨²åʉ-7žÄ¸pdD˜.sêÜé0 ;qUsizeqL873L u. <ïR((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqT¤// Epoz-Language-File: de (Deutsch) // maik.jablonski@uni-bielefeld.de, 2003 EpozLang["Normal"]='Normal'; EpozLang["Paragraph"]='Absatz'; EpozLang["Heading1"]='Überschrift 1'; EpozLang["Heading2"]='Überschrift 2'; EpozLang["Heading3"]='Überschrift 3'; EpozLang["Heading4"]='Überschrift 4'; EpozLang["Heading5"]='Überschrift 5'; EpozLang["Heading6"]='Überschrift 6'; EpozLang["Formatted"]='Formatiert'; EpozLang["Bold"]='Fett'; EpozLang["Italic"]='Kursiv'; EpozLang["Underline"]='Unterstrichen'; EpozLang["Strikethrough"]='Durchgestrichen'; EpozLang["Subscript"]='Tiefstellen'; EpozLang["Superscript"]='Hochstellen'; EpozLang["RemoveFormat"]='Formatierung entfernen'; EpozLang["TextColor"]='Textfarbe'; EpozLang["BackColor"]='Hintergrundfarbe'; EpozLang["AlignLeft"]='Linksbündig'; EpozLang["Center"]='Zentriert'; EpozLang["AlignRight"]='Rechtsbündig'; EpozLang["OrderedList"]='Aufzählung'; EpozLang["UnorderedList"]='Liste'; EpozLang["Outdent"]='Ausrücken'; EpozLang["Indent"]='Einrücken'; EpozLang["InsertLink"]='Link einfügen'; EpozLang["InsertAnchor"]='Anker einfügen'; EpozLang["InsertImage"]='Bild einfügen'; EpozLang["InsertRule"]='Linie einfügen'; EpozLang["InsertTable"]='Tabelle einfügen'; EpozLang["Toolbox"]='Werkzeuge'; EpozLang["Undo"]='Undo'; EpozLang["Redo"]='Redo'; EpozLang["EnterLinkURL"]='URL des Links eingeben'; EpozLang["EnterAnchorName"]='Namen des Ankers eingeben'; EpozLang["EnterImageURL"]='URL des Bildes eingeben'; EpozLang["EnterTableRows"]='Anzahl der Reihen'; EpozLang["EnterTableColumns"]='Anzahl der Spalten'; EpozLang["EnterTableBorder"]='Randstärke'; EpozLang["TableWithHead"]='Tabelle mit Kopf'; EpozLang["TableWithoutHead"]='Tabelle ohne Kopf'; EpozLang["HTML"]='HTML'; EpozLang["TidyStart"]='HTML-Bereinigung...'; EpozLang["TidyStop"]='HTML-Bereinigung abgeschlossen.' EpozLang["TidyError"]='Fehler im HTML-Quelltext.'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_de.js.dtmlqu. <ðG((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_italic.gifqUdataqT_GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,<ÿ H° Áƒ*\Ȱ¡Ã‡#Jüç¥bʼnMt£9z™HñãÆŽ3¦´ˆ’¤Ë—0cÊT;qUsizeqL863L u. <ñ}((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTÏ// Epoz-Language-File: pt (Portuguese) // nteixeira@bmc.pt, 2003 EpozLang["Normal"]='Normal'; EpozLang["Paragraph"]='Parágrafo'; EpozLang["Heading1"]='Cabeçalho 1'; EpozLang["Heading2"]='Cabeçalho 2'; EpozLang["Heading3"]='Cabeçalho 3'; EpozLang["Heading4"]='Cabeçalho 4'; EpozLang["Heading5"]='Cabeçalho 5'; EpozLang["Heading6"]='Cabeçalho 6'; EpozLang["Formatted"]='Formatado'; EpozLang["Bold"]='Negrito'; EpozLang["Italic"]='Itálico'; EpozLang["Underline"]='Sublinhado'; EpozLang["Strikethrough"]='Traçado'; EpozLang["Subscript"]='Subescrito'; EpozLang["Superscript"]='Sobrescrito'; EpozLang["RemoveFormat"]='Retirar Formatação'; EpozLang["TextColor"]='Cor do texto'; EpozLang["BackColor"]='Cor do fundo'; EpozLang["AlignLeft"]='Alinhar à esquerda'; EpozLang["Center"]='Centrar'; EpozLang["AlignRight"]='Alinhar à direita'; EpozLang["OrderedList"]='Lista numerada'; EpozLang["UnorderedList"]='Lista ordenada'; EpozLang["Outdent"]='Diminuir parágrafo'; EpozLang["Indent"]='Aumentar parágrafo'; EpozLang["InsertLink"]='Inserir Link'; EpozLang["InsertImage"]='Inserir Imagem'; EpozLang["InsertRule"]='Inserir Linha'; EpozLang["InsertTable"]='Inserir Tabela'; EpozLang["Toolbox"]='Caixa de ferramentas'; EpozLang["Undo"]='Desfazer'; EpozLang["Redo"]='Refazer'; EpozLang["EnterLinkURL"]='URL do link'; EpozLang["EnterImageURL"]='URL da imagem'; EpozLang["EnterTableRows"]='Número de Linhas'; EpozLang["EnterTableColumns"]='Número de Colunas'; EpozLang["EnterTableBorder"]='Tamanho das Bordas'; EpozLang["TableWithHead"]='Tabela com cabeçalho'; EpozLang["TableWithoutHead"]='Tabela sem cabeçalho'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_pt.js.dtmlqu. <ò$((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUtitleqUUrawqTæ#// // Create HTML for Epoz-Editor // // Comment out the parts you don't want to be shown. // function CreateEpoz() { var widget = ''; widget += '
'; /* The select-box for formats */ widget += ''; widget += '
'; /* The font-face-buttons (bold, italic, underline) */ widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''; /* The sub-/superscript-buttons */ widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''; /* The remove-format-button */ widget += ''+EpozLang['; widget += ''; /* The color-selections (foreground, background) */ widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''; /* Alignment-controls */ widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''; /* Lists and In/Outdent */ widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''; /* Insert Link, Image, Rule, Table */ widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''+EpozLang['; widget += ''+EpozLang['; /* The optional toolbox */ if ((form_toolbox != null) && (form_toolbox != "")) { widget += ''; widget += ''+EpozLang['; } widget += ''; /* Undo & Redo */ widget += ''+EpozLang['; widget += ''+EpozLang['; /* Don't remove!!! And better not touch...;) */ widget += '\n
\n'; widget += ''; //widget += ''; widget += '
'; widget += ''; widget += '
 ' + EpozLang["HTML"] + '
'; document.writeln(widget); } // Create a default-textbox for browsers without Rich-Text-Features function CreateTextarea() { document.writeln(''); } q Uglobalsq }q U__name__q Uepoz_script_widgetq U__ac_local_roles__q}qUadminq]qUOwnerqasu. <ó((U'Products.PageTemplates.ZopePageTemplateqUZopePageTemplateqtqNt.}q(U _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq }q U name_subpathq Utraverse_subpathq ssbU__ac_local_roles__q }qUadminq]qUOwnerqasUidqUepoz_blank_iframe.htmlqU content_typeqU text/htmlqU_textqT× qu. <ôK((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_list.gifqUdataqTeGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Bÿ H° Áƒ*\Ȱ¡Ã‡R">,QŠ@/3fLXq¢Ç%‚ìøO£IŽ"Aª\IäG’&5¢´È²¦Í› ;qUsizeqL869L u. <õL((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_undo.gifqUdataqTfGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Cÿ H° Áƒ*\Ȱ¡Ã‡#JœhЋE/‚zh‘ Æ…7VÙñ È„Oz$y±àlj‚TRœI³¦Í›8;qUsizeqL870L u. <×H((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_right_just.gifqUdataqT\GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,9ÿ H° Áƒ*\Ȱ¡C‡^"Jœ8ñ¡Å‚)^|˜±£—=FÙP¤F’E¢\ɲ¥Ë—;qUsizeqL860L u. <÷D((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_centre.gifqUdataqT\GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,9ÿ H° Áƒ*\Ȱ¡Ã‡^"Jœ8ñ¡Å)^¼˜±£—=F QdE’ M¢\ɲ¥Ë—;qUsizeqL860L u. <øL((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_superscript.gifqUdataqT_GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,<ÿ H° Áƒ*\Ȱ¡C^¼, 2004 EpozLang["Normal"]='Normal'; EpozLang["Paragraph"]='Parágrafo'; EpozLang["Heading1"]='Cabeçalho 1'; EpozLang["Heading2"]='Cabeçalho 2'; EpozLang["Heading3"]='Cabeçalho 3'; EpozLang["Heading4"]='Cabeçalho 4'; EpozLang["Heading5"]='Cabeçalho 5'; EpozLang["Heading6"]='Cabeçalho 6'; EpozLang["Formatted"]='Formatado'; EpozLang["Bold"]='Negrito'; EpozLang["Italic"]='Itálico'; EpozLang["Underline"]='Sublinhado'; EpozLang["Strikethrough"]='Riscado'; EpozLang["Subscript"]='Subescrito'; EpozLang["Superscript"]='Sobrescrito'; EpozLang["RemoveFormat"]='Remover formatação'; EpozLang["TextColor"]='Cor do texto'; EpozLang["BackColor"]='Cor do fundo'; EpozLang["AlignLeft"]='Alinhar à esquerda'; EpozLang["Center"]='Centralizar'; EpozLang["AlignRight"]='Alinhar à direita'; EpozLang["OrderedList"]='Lista numerada'; EpozLang["UnorderedList"]='Lista ordenada'; EpozLang["Outdent"]='Diminuir parágrafo'; EpozLang["Indent"]='Aumentar parágrafo'; EpozLang["InsertLink"]='Inserir Link'; EpozLang["InsertAnchor"]='Inserir âncora'; EpozLang["InsertImage"]='Inserir Imagem'; EpozLang["InsertRule"]='Inserir Linha'; EpozLang["InsertTable"]='Inserir Tabela'; EpozLang["Toolbox"]='Caixa de ferramentas'; EpozLang["Undo"]='Voltar'; EpozLang["Redo"]='Refazer'; EpozLang["EnterLinkURL"]='URL do link'; EpozLang["EnterAnchorName"]='Nome da âncora'; EpozLang["EnterImageURL"]='URL da imagem'; EpozLang["EnterTableRows"]='Linhas'; EpozLang["EnterTableColumns"]='Colunas'; EpozLang["EnterTableBorder"]='Bordas'; EpozLang["TableWithHead"]='Tabela com cabeçalho'; EpozLang["TableWithoutHead"]='Tabela sem cabeçalho'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_pt-br.js.dtmlqu. <ÙW((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_indent.gifqUdataqToGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,Lÿ H° Áƒ*\È🗆z™ø¢Å‰3þ“Bð¢Å„R8 ôHñ`È“†è‘¡È‘SjüH£L†4ÞÜ9’§ÏŸ@;qUsizeqL879L u. <ûG((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_left_just.gifqUdataqT\GIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ÿ,9ÿ H° Áƒ*\Ȱ¡Ã‡^"Jœ8ñ¡Å)^܈1£GŽ =JiQdF’ MzAɲ¥Ë—/;qUsizeqL860L u. <ü$((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTv// Epoz-Language-File: da (Danish) // maik.jablonski@uni-bielefeld.de, 2003 // Translated by overby@opentobusiness.com EpozLang["Normal"]='Normal'; EpozLang["Paragraph"]='Citat'; EpozLang["Heading1"]='Overskift 1'; EpozLang["Heading2"]='Overskift 2'; EpozLang["Heading3"]='Overskift 3'; EpozLang["Heading4"]='Overskift 4'; EpozLang["Heading5"]='Overskift 5'; EpozLang["Heading6"]='Overskift 6'; EpozLang["Formatted"]='Formatteret'; EpozLang["Bold"]='Fed'; EpozLang["Italic"]='Kursiv'; EpozLang["Underline"]='Understreg'; EpozLang["Strikethrough"]='Gennemstreg'; EpozLang["Subscript"]='Sænket skrift'; EpozLang["Superscript"]='Hævet skrift'; EpozLang["RemoveFormat"]='Fjern formattering'; EpozLang["TextColor"]='Skriftfarve'; EpozLang["BackColor"]='Baggrundsfarve'; EpozLang["AlignLeft"]='Venstrejusteret'; EpozLang["Center"]='Centreret'; EpozLang["AlignRight"]='Højrejusteret'; EpozLang["OrderedList"]='Nummereret liste'; EpozLang["UnorderedList"]='Punktliste'; EpozLang["Outdent"]='Formindsk indrykning'; EpozLang["Indent"]='Forøg indrykning'; EpozLang["InsertLink"]='Indsæt link'; EpozLang["InsertImage"]='Indsæt billede'; EpozLang["InsertRule"]='Indsæt linie'; EpozLang["InsertTable"]='Indsæt table'; EpozLang["Toolbox"]='Værktøjskasse'; EpozLang["Undo"]='Fortryd'; EpozLang["Redo"]='Annuller fortryd'; EpozLang["EnterLinkURL"]='Indsæt link adresse'; EpozLang["EnterImageURL"]='Indsæt bille placering'; EpozLang["EnterTableRows"]='Indsæt række'; EpozLang["EnterTableColumns"]='Indsæt kolonne'; EpozLang["EnterTableBorder"]='Kant'; EpozLang["TableWithHead"]='Tabel med hoved'; EpozLang["TableWithoutHead"]='Tabel uden hoved'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_da.js.dtmlqu. <ýV((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqT¨// Epoz-Language-File: it (Italiano) // maik.jablonski@uni-bielefeld.de, 2003 // nbe@libero.it, 2003 traduzione EpozLang["Normal"]='Normale'; EpozLang["Paragraph"]='Paragrafo'; EpozLang["Heading1"]='Titolo 1'; EpozLang["Heading2"]='Titolo 2'; EpozLang["Heading3"]='Titolo 3'; EpozLang["Heading4"]='Titolo 4'; EpozLang["Heading5"]='Titolo 5'; EpozLang["Heading6"]='Titolo 6'; EpozLang["Formatted"]='Formattato'; EpozLang["Bold"]='Grassetto'; EpozLang["Italic"]='Italico'; EpozLang["Underline"]='Sottolineato'; EpozLang["Subscript"]='Pedice'; EpozLang["Superscript"]='Apice'; EpozLang["TextColor"]='Colore testo'; EpozLang["BackColor"]='Colore sfondo'; EpozLang["AlignLeft"]='Allinea sinistra'; EpozLang["Center"]='Centra'; EpozLang["AlignRight"]='Allinea destra'; EpozLang["OrderedList"]='Lista numerata'; EpozLang["UnorderedList"]='Lista puntata'; EpozLang["Outdent"]='Riduci rientro'; EpozLang["Indent"]='Aumenta rientro'; EpozLang["InsertLink"]='Inserisci link'; EpozLang["InsertImage"]='Inserisci immagine'; EpozLang["InsertRule"]='Inserisci separatore'; EpozLang["InsertTable"]='Inserisci tabella'; EpozLang["Toolbox"]='Toolbox'; EpozLang["Undo"]='Annulla'; EpozLang["Redo"]='Ripeti'; EpozLang["EnterLinkURL"]='Inserisci URL link'; EpozLang["EnterImageURL"]='Inserisci immagine link'; EpozLang["EnterTableRows"]='Inserisci righe'; EpozLang["EnterTableColumns"]='Inserisci colonne'; EpozLang["EnterTableBorder"]='Inserisci bordo'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_it.js.dtmlqu. <þQ((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqT«// Epoz-Language-File: en (English) // maik.jablonski@uni-bielefeld.de, 2003 // Global Epoz language-strings dictionary // Should be present only in "default" language file var EpozLang=[]; EpozLang["Normal"]='Normal'; EpozLang["Paragraph"]='Paragraph'; EpozLang["Heading1"]='Heading 1'; EpozLang["Heading2"]='Heading 2'; EpozLang["Heading3"]='Heading 3'; EpozLang["Heading4"]='Heading 4'; EpozLang["Heading5"]='Heading 5'; EpozLang["Heading6"]='Heading 6'; EpozLang["Formatted"]='Formatted'; EpozLang["Bold"]='Bold'; EpozLang["Italic"]='Italic'; EpozLang["Underline"]='Underline'; EpozLang["Strikethrough"]='Strikethrough'; EpozLang["Subscript"]='Subscript'; EpozLang["Superscript"]='Superscript'; EpozLang["RemoveFormat"]='Remove Format'; EpozLang["TextColor"]='Text Color'; EpozLang["BackColor"]='Background Color'; EpozLang["AlignLeft"]='Align Left'; EpozLang["Center"]='Center'; EpozLang["AlignRight"]='Align Right'; EpozLang["OrderedList"]='Ordered List'; EpozLang["UnorderedList"]='Unordered List'; EpozLang["Outdent"]='Outdent'; EpozLang["Indent"]='Indent'; EpozLang["InsertLink"]='Insert Link'; EpozLang["InsertAnchor"]='Insert Anchor'; EpozLang["InsertImage"]='Insert Image'; EpozLang["InsertRule"]='Insert Rule'; EpozLang["InsertTable"]='Insert Table'; EpozLang["Toolbox"]='Toolbox'; EpozLang["Undo"]='Undo'; EpozLang["Redo"]='Redo'; EpozLang["EnterLinkURL"]='Enter Link URL'; EpozLang["EnterAnchorName"]='Enter Anchor Name'; EpozLang["EnterImageURL"]='Enter Image URL'; EpozLang["EnterTableRows"]='Enter Rows'; EpozLang["EnterTableColumns"]='Enter Columns'; EpozLang["EnterTableBorder"]='Enter Border'; EpozLang["TableWithHead"]='Table with Head'; EpozLang["TableWithoutHead"]='Table without Head'; EpozLang["HTML"]='HTML'; // Browser-Status-Messages // don't use any entities for translations EpozLang["TidyStart"]='Tidying...'; EpozLang["TidyStop"]='Tidying complete.' EpozLang["TidyError"]='Detected errors in the HTML block.'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qU epoz_lang_enqu. <ÿ/((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqT// Epoz-Language-File: nl (Dutch) // ad.schellevis@imasgroep.nl, 2003 EpozLang["Normal"]='Normaal'; EpozLang["Paragraph"]='Paragraaf'; EpozLang["Heading1"]='Kop 1'; EpozLang["Heading2"]='Kop 2'; EpozLang["Heading3"]='Kop 3'; EpozLang["Heading4"]='Kop 4'; EpozLang["Heading5"]='Kop 5'; EpozLang["Heading6"]='Kop 6'; EpozLang["Formatted"]='Opgemaakt'; EpozLang["Bold"]='Vet'; EpozLang["Italic"]='Cursief'; EpozLang["Underline"]='Onderstreept'; EpozLang["Subscript"]='Subscript'; EpozLang["Superscript"]='Superscript'; EpozLang["TextColor"]='Tekst kleur'; EpozLang["BackColor"]='Achtergrond kleur'; EpozLang["AlignLeft"]='Links uitlijnen'; EpozLang["Center"]='Centreren'; EpozLang["AlignRight"]='Rechts uitlijnen'; EpozLang["OrderedList"]='Nummering'; EpozLang["UnorderedList"]='Opsommingstekens'; EpozLang["Outdent"]='Inspringen verkleinen'; EpozLang["Indent"]='Inspringen vergroten'; EpozLang["InsertLink"]='Hyperlink invoegen'; EpozLang["InsertImage"]='Plaatje invoegen'; EpozLang["InsertRule"]='Rand invoegen'; EpozLang["InsertTable"]='Tabel invoegen'; EpozLang["Toolbox"]='Toolbox'; EpozLang["Undo"]='Ongedaan maken'; EpozLang["Redo"]='Herhalen'; EpozLang["EnterLinkURL"]='Ingeven hyperlink URL'; EpozLang["EnterImageURL"]='Ingeven locatie plaatje'; EpozLang["EnterTableRows"]='Invoeren Rijen'; EpozLang["EnterTableColumns"]='Invoegen Kolommen'; EpozLang["EnterTableBorder"]='Invoegen Kader'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_nl.js.dtmlqu. =œ((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTì Epoz
qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_script_table.htmlqu. =t((UOFS.DTMLDocumentqU DTMLDocumentqtqNt.}q(U_varsq}qUrawqTÆ// Epoz-Language-File: no (Norwegian) // einar.ness.jensen@hf.ntnu.no, 2004 EpozLang["Normal"]='Normal'; EpozLang["Paragraph"]='Avsnitt'; EpozLang["Heading1"]='Overskrift 1'; EpozLang["Heading2"]='Overskrift 2'; EpozLang["Heading3"]='Overskrift 3'; EpozLang["Heading4"]='Overskrift 4'; EpozLang["Heading5"]='Overskrift 5'; EpozLang["Heading6"]='Overskrift 6'; EpozLang["Formatted"]='Preformatert'; EpozLang["Bold"]='Fet'; EpozLang["Italic"]='Kursiv'; EpozLang["Underline"]='Understreket'; EpozLang["Strikethrough"]='Gjennomstreket'; EpozLang["Subscript"]='Subskrift'; EpozLang["Superscript"]='Superskrift'; EpozLang["RemoveFormat"]='Fjern Formatering'; EpozLang["TextColor"]='Tekstfarge'; EpozLang["BackColor"]='Bakgrunnsfarge'; EpozLang["AlignLeft"]='Venstrejustert'; EpozLang["Center"]='Midtjustert'; EpozLang["AlignRight"]='Høyrejustert'; EpozLang["OrderedList"]='Ordnet Liste'; EpozLang["UnorderedList"]='Uordnet Liste'; EpozLang["Outdent"]='Minsk Innrykk'; EpozLang["Indent"]='Øk Innrykk'; EpozLang["InsertLink"]='Sett inn Lenke'; EpozLang["InsertAnchor"]='Sett inn Anker'; EpozLang["InsertImage"]='Sett inn Bilde'; EpozLang["InsertRule"]='Sett inn Horisontal Linje'; EpozLang["InsertTable"]='Sett inn Tabell'; EpozLang["Toolbox"]='Verktøy'; EpozLang["Undo"]='Angre'; EpozLang["Redo"]='Gjenta'; EpozLang["EnterLinkURL"]='Skriv inn Lenke-URL'; EpozLang["EnterAnchorName"]='Skriv inn Navn på Anker'; EpozLang["EnterImageURL"]='Skriv inn Bilde-URL'; EpozLang["EnterTableRows"]='Antall Rader'; EpozLang["EnterTableColumns"]='Antall Kolonner'; EpozLang["EnterTableBorder"]='Bredde Kantlinje'; EpozLang["TableWithHead"]='Tabell med Topplinje'; EpozLang["TableWithoutHead"]='Tabell uten Topplinje'; qUglobalsq }q U__ac_local_roles__q }q Uadminq ]qUOwnerqasU__name__qUepoz_lang_no.js.dtmlqu. =ž((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUadminq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/gifqU__name__qUepoz_button_bgcolor.gifqUdataqTµGIF89aç  !!!"""###$$$%%%&&&'''((()))***+++,,,---...///000111222333444555666777888999:::;;;<<<===>>>???@@@AAABBBCCCDDDEEEFFFGGGHHHIIIJJJKKKLLLMMMNNNOOOPPPQQQRRRSSSTTTUUUVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccdddeeefffggghhhiiijjjkkklllmmmnnnooopppqqqrrrssstttuuuvvvwwwxxxyyyzzz{{{|||}}}~~~€€€‚‚‚ƒƒƒ„„„………†††‡‡‡ˆˆˆ‰‰‰ŠŠŠ‹‹‹ŒŒŒŽŽŽ‘‘‘’’’“““”””•••–––———˜˜˜™™™ššš›››œœœžžžŸŸŸ   ¡¡¡¢¢¢£££¤¤¤¥¥¥¦¦¦§§§¨¨¨©©©ªªª«««¬¬¬­­­®®®¯¯¯°°°±±±²²²³³³´´´µµµ¶¶¶···¸¸¸¹¹¹ººº»»»¼¼¼½½½¾¾¾¿¿¿ÀÀÀÁÁÁÂÂÂÃÃÃÄÄÄÅÅÅÆÆÆÇÇÇÈÈÈÉÉÉÊÊÊËËËÌÌÌÍÍÍÎÎÎÏÏÏÐÐÐÑÑÑÒÒÒÓÓÓÔÔÔÕÕÕÖÖÖ×××ØØØÙÙÙÚÚÚÛÛÛÜÜÜÝÝÝÞÞÞßßßàààáááâââãããäääåååæææçççèèèéééêêêëëëìììíííîîîïïïðððñññòòòóóóôôôõõõööö÷÷÷øøøùùùúúúûûûüüüýýýþþþÿÿÿ!ù ý,’û H° Áƒ*\ÈÐÕ!®"¢Ä‚zÑtqàCkCæmìØoˆ5qCüåó„‰D“èt ÑÅ®eË…C°µûÇOW:nÎl*ÒmÞ?}ñÌaSÖ‹ Kœ*ቫfLf¿›8Ù‹6ìÅ«qŒÖ×~a_Ê:»Ð‹Û·pãz9(·î[ºvë’ÜË·¯ß‚;qUsizeqL949L u. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T&uconf=mem['zwo_obj'].zwo_info.users err='' #~ ############# check if user exists if user_id not in uconf.objectIds(): err=err+'User '+str(user_id)+' not exists!' #~ ############# check if user folder exists nor create it width edit rights for the user if not user_id in uplace.objectIds(): rep=uplace rep.manage_addFolder(user_id,'') obj=rep[user_id] obj.manage_addProperty('type_zwook','dossier','string') obj.manage_addFolder('zwo_dossier','information du dossier') obj2=obj['zwo_dossier'] obj2.manage_addProperty('type_zwook','system','string') obj2.manage_addProperty('system','data','string') obj2.manage_addProperty('new_skin','0','string') obj2.manage_addProperty('skin',rep.zwo_dossier.skin,'string') obj2.manage_addProperty('new_droits','1','string') obj2.manage_addProperty('groupes_visiteurs',rep.zwo_dossier.groupes_visiteurs,'string') #~ check if user_id group exists nor create it if user_id not in mem['zwo_info'].groups.objectIds(): mem['zwo_info'].groups.manage_addProduct['OFSP'].manage_addFolder(user_id,'') newobj=mem['zwo_info'].groups[user_id] newobj.manage_addProperty('type_zwook','group','string') newobj.manage_addProperty('ok','1','string') request={'role':user_id} mem['racine_obj'].manage_defined_roles(submit='Add Role',REQUEST=request) #~ affect edit rights to the user_id group and inherit parent object (uplace) edit rights obj2.manage_addProperty('groupes_editeurs',rep.zwo_dossier.groupes_editeurs+'&'+user_id,'string') obj2.manage_addProperty('ordre','','string') obj2.manage_addProperty('new_ref','0','string') obj2.manage_addProperty('metas',rep.zwo_dossier.metas,'lines') l=[] l.append('PT:T1:hauteur=/largeur=/marge=/cadre=/couleurcadre=/couleurfond=/couleurtexte=/align=left/valign=top') l.append('CT:T1:C1') l.append('PC:C1:couleurcadre=/hauteur=/couleurfond=/valign=/marge=/cadre=/couleurtexte=/largeur=/align=/colspan=1/rowspan=1') l.append('CC:C1:') obj2.manage_addProperty('tableaux',l,'lines') #~ ############# output if err<>'': return err else: return 1 q U_codeq T c@s d„ZdS(NcCs¥ttt|dƒdƒdƒ}d}|t|dƒƒjo|dt|ƒd}n|t|dƒƒj o|}t|dƒ|dƒt||ƒ} t| d ƒd d d ƒt| dƒd dƒt| d ƒ} t| d ƒd dd ƒt| d ƒddd ƒt| d ƒddd ƒt| d ƒdtt|d ƒdƒd ƒt| d ƒddd ƒt| d ƒdtt|d ƒdƒd ƒ|ttt|dƒdƒdƒƒjoÅttttt|dƒdƒdƒdƒdƒ|dƒttt|dƒdƒ|ƒ} t| d ƒd dd ƒt| d ƒddd ƒhd|<} tt|dƒdƒdd d!| ƒnt| d ƒd"tt|d ƒd"ƒd#|d ƒt| d ƒd$dd ƒt| d ƒd%dd ƒt| d ƒd&tt|d ƒd&ƒd'ƒg} t| d(ƒd)ƒt| d(ƒd*ƒt| d(ƒd+ƒt| d(ƒd,ƒt| d ƒd-| d'ƒn|djo|Snd.SdS(/Nszwo_objszwo_infosusersss objectIdssUser s not exists!smanage_addFoldersmanage_addPropertys type_zwooksdossiersstrings zwo_dossiersinformation du dossierssystemsdatasnew_skins0sskins new_droitss1sgroupes_visiteurssgroupssmanage_addProductsOFSPsgroupsoksroles racine_objsmanage_defined_rolesssubmitsAdd RolesREQUESTsgroupes_editeurss&sordresnew_refsmetasslinessappendsdPT:T1:hauteur=/largeur=/marge=/cadre=/couleurcadre=/couleurfond=/couleurtexte=/align=left/valign=topsCT:T1:C1sqPC:C1:couleurcadre=/hauteur=/couleurfond=/valign=/marge=/cadre=/couleurtexte=/largeur=/align=/colspan=1/rowspan=1sCC:C1:stableauxi(s _getattr_s _getitem_smemsuconfserrsuser_idsstrsuplacesrepsobjsobj2snewobjsrequestsl(smemsuplacesuser_ids _getattr_s _getitem_suconfserrsstrsrepsobjsobj2snewobjsrequestsl((sScript (Python)screate_user_foldersH! +(:+$&3(  (screate_user_folder(screate_user_folder((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUjamesq]q UOwnerq!asUidq"Ucreate_user_folderq#U_paramsq$Umem, uplace, user_idq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Uuplaceq-Uuser_idq.U _getattr_q/U _getitem_q0Uuconfq1Uerrq2Ustrq3Urepq4Uobjq5Uobj2q6Unewobjq7Urequestq8Ultq9ubu. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =Û((U&Products.ExternalMethod.ExternalMethodqUExternalMethodqtqNt.}q(U_moduleqUsend_trackback_pingqU _functionqU send_pingqU__ac_local_roles__q }q Up4q ]q UOwnerq asUidqUsend_trackback_pingqUtitleqUu. =Š((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T,container.REQUEST.RESPONSE.setHeader('Content-Type','text/xml') resp = '\n' resp += '\n' resp += '' + str(errorCode) + '\n' if errorMsg != '': resp += '' + errorMsg + '\n' resp += '\n' return resp q U_codeq TÛc@s d„ZdS(NcCs…ttttdƒdƒdƒddƒd}|d7}|dt|ƒd 7}|d jo |d |d 7}|d 7}n|SdS(NsREQUESTsRESPONSEs setHeaders Content-Typestext/xmls, s ss ss s s (s _getattr_s containersrespsstrs errorCodeserrorMsg(s errorCodeserrorMsgs _getattr_s containersrespsstr((sScript (Python)s responseXMLs(  (s responseXML(s responseXML((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUp4q]q UOwnerq!asUidq"U responseXMLq#U_paramsq$UerrorCode, errorMsgq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(U errorCodeq,UerrorMsgq-U _getattr_q.hUrespq/Ustrq0tq1ubu. = €((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T^isok=None #~ ############## retrieve values ############### if form.has_key('url'): url=form['url'] if not form.has_key('title'): title=url else: title=form['title'] excerpt='' blog_name='' if form.has_key('excerpt'): excerpt=form['excerpt'] if form.has_key('blog_name'): blog_name=form['blog_name'] #~ ############## control ping validity ######### if url<>'' and url.find('http://')>=0: isok=1 if title=='': title=url #~ ############## record the ping ############### if isok: #~ infos to record pdate=DateTime('GMT+0') id=str(pdate.timeTime()) ipadr=context.REQUEST['REMOTE_ADDR'] if context.REQUEST.has_key('HTTP_X_FORWARDED_FOR'): ipadr=context.REQUEST['HTTP_X_FORWARDED_FOR'] #~ record if not recobj.hasProperty('num_trackbacks'): recobj.manage_addProperty('num_trackbacks',0,'int') ntb=recobj.num_trackbacks+1 recobj.manage_changeProperties(num_trackbacks=ntb) recobj.manage_addDTMLDocument(id,title) recobj[id].manage_addProperty('url',url,'string') recobj[id].manage_addProperty('excerpt',excerpt,'string') recobj[id].manage_addProperty('blog_name',blog_name,'string') recobj[id].manage_addProperty('date',pdate,'date') recobj[id].manage_addProperty('ip',ipadr,'string') #~ fire response if isok: return container.responseXML(0,"") else: return container.responseXML(1,"Url not ok") q U_codeq Tc@s d„ZdS(NcCsát}t|dƒdƒo¡t|dƒ}t|dƒdƒ o |}nt|dƒ}d}d} t|dƒdƒot|dƒ}nt|dƒdƒot|dƒ} q½n|djot|dƒdƒd jo!d }|djo |}qn|o˜t d ƒ} t t| d ƒƒƒ} ttt d ƒdƒ}ttt d ƒdƒdƒottt d ƒdƒ}nt|dƒdƒ ot|dƒdd dƒnt|dƒd }t|dƒd|ƒt|dƒ| |ƒtt|| ƒdƒd|dƒtt|| ƒdƒd|dƒtt|| ƒdƒd| dƒtt|| ƒdƒd| dƒtt|| ƒdƒd|dƒn|ottdƒd dƒSnttdƒd dƒSdS(Nshas_keysurlstitlessexcerpts blog_namesfindshttp://iisGMT+0stimeTimesREQUESTs REMOTE_ADDRsHTTP_X_FORWARDED_FORs hasPropertysnum_trackbackssmanage_addPropertysintsmanage_changePropertiessmanage_addDTMLDocumentsstringsdatesips responseXMLs Url not ok(sNonesisoks _getattr_sforms _getitem_surlstitlesexcerpts blog_namesDateTimespdatesstrsidscontextsipadrsrecobjsntbs container(srecobjsformsNonesisoks _getattr_s _getitem_surlstitlesexcerpts blog_namesDateTimespdatesstrsidscontextsipadrsntbs container((sScript (Python)sreceive_trackback_pingsD   )  """" (sreceive_trackback_ping(sreceive_trackback_ping((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q }q!Up4q"]q#UOwnerq$asUidq%Ureceive_trackback_pingq&U_paramsq'U recobj, formq(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Urecobjq/Uformq0UNoneq1Uisokq2U _getattr_q3U _getitem_q4Uurlq5Utitleq6Uexcerptq7U blog_nameq8UDateTimeq9Updateq:Ustrq;UidqUntbq?U containerq@tqAubu. = B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. = B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tmem=context.zwo_lib.mem_data() packs=mem['racine_obj'].zwo_info.packs skins=mem['racine_obj'].zwo_info.skins roles=mem['user_roles_id'] try: pack=packs[pack] except: return 'Ce pack n\'existe pas' pack_id=pack.getId() def canInstall(): if 'config_zwook' in roles: return 1 if not canInstall(): return '' print context.zwo_lib.standard_minimal_header(mem) print '

Install log for pack '+pack.title+'

' print '
    ' #~ ######## on checke si le(s) skin est présent ou on le rajoute ############ skin_idl=pack.skin.objectIds() for skin_id in pack.skin.objectIds(): if skin_id not in skins.objectIds(): skins.manage_clone(pack.skin[skin_id],skin_id) print '
  • Skin '+skin_id+' copied
  • ' else: print '
  • Skin '+skin_id+' was already there
  • ' #~ ######## on change la feuille de style ############ style=mem['racine_obj'].zwo_info.css.default new_style=pack.style.default.document_src() style.manage_edit(new_style,'') cssdefault=mem['racine_obj'].zwo_info.css if 'default.css'in cssdefault.objectIds(): cssdefault.manage_delObjects('default.css') mem['racine_obj'].zwo_info.css.manage_clone(style,'default.css') print '
  • Css stylesheet updated
  • ' #~ ######## on change le contenu ############ #~ on efface l'ancien mem['racine_obj'].manage_delObjects('zwook') #~ on met le nouvo mem['racine_obj'].manage_clone(pack.content.zwook,'zwook') print '
  • Content objects updated
  • ' #~ ############# checkup roles ############ mem['zwo_obj'].manage_role('Anonymous',permissions=[]) mem['zwo_obj'].manage_role('Authenticated',permissions=[]) mem['zwo_obj'].manage_role('Manager',permissions=[]) mem['zwo_obj'].manage_role('config_zwook',permissions=[]) #~ ######## on copie les données spécifiques aux modules ############ #~ on efface l'ancien mem['racine_obj'].zwo_info.manage_delObjects('modules') #~ on met le nouvo mem['racine_obj'].zwo_info.manage_clone(pack.infos.modules,'modules') print '
  • Modules configuration updated
  • ' print '
' print '

Voir le résultat ]

' print context.zwo_lib.standard_minimal_footer(mem) return printed q U _filepathq UGScript (Python):/dev/zwook_active_rc5_beta1/zwo_lib/install/installer_2q U_codeqT c@s d„ZdS(Nc2sHtƒ}tttdƒdƒƒ}ttt|dƒdƒdƒ}ttt|dƒdƒdƒ}t|dƒ‰yt||ƒ}Wn dSnXt|d ƒƒ} ‡d †} | ƒ od Sn|tttdƒd ƒ|ƒIJ|d t|dƒdIJ|dIJtt|dƒdƒƒ} x’t tt|dƒdƒƒƒD]o}|t|dƒƒjo>t|dƒtt|dƒ|ƒ|ƒ|d|dIJqK|d|dIJqKWtttt|dƒdƒdƒdƒ}ttt|dƒdƒdƒƒ}t|dƒ|d ƒttt|dƒdƒdƒ}dt|dƒƒjot|dƒdƒntttt|dƒdƒdƒdƒ|dƒ|dIJtt|dƒdƒdƒtt|dƒdƒtt|d ƒdƒdƒ|d!IJtt|d"ƒd#ƒd$d%gƒtt|d"ƒd#ƒd&d%gƒtt|d"ƒd#ƒd'd%gƒtt|d"ƒd#ƒd(d%gƒttt|dƒdƒdƒd)ƒttt|dƒdƒdƒtt|d*ƒd)ƒd)ƒ|d+IJ|d,IJ|d-t|d.ƒd/IJ|tttdƒd0ƒ|ƒIJ|ƒSdS(1Nszwo_libsmem_datas racine_objszwo_infospackssskinss user_roles_idsCe pack n'existe passgetIdcsdˆjodSndS(Ns config_zwooki(sroles(sroles(sroles(sScript (Python)s canInstall s ssstandard_minimal_headers

Install log for pack stitles

s
    sskins objectIdss manage_clones
  • Skin s copied
  • s was already therescsssdefaultsstyles document_srcs manage_edits default.csssmanage_delObjectss
  • Css stylesheet updated
  • szwookscontents
  • Content objects updated
  • szwo_objs manage_roles Anonymouss permissionss AuthenticatedsManagers config_zwooksmodulessinfoss&
  • Modules configuration updated
  • s
s&

Voir le résultat ]

sstandard_minimal_footer(s_print_s_prints _getattr_scontextsmems _getitem_spackssskinssrolesspackspack_ids canInstallsskin_idls _getiter_sskin_idsstyles new_styles cssdefault(spacks_print_s_prints _getattr_scontextsmems _getitem_spackssskinssrolesspack_ids canInstallsskin_idls _getiter_sskin_idsstyles new_styles cssdefault((srolessScript (Python)s installer_2sT$!!  " "%*'! %+"""%%1  "(s installer_2(s installer_2((sScript (Python)ssqU func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerq U containerq!usbU__ac_local_roles__q"}q#Ujamesq$]q%UOwnerq&asUidq'U installer_2q(U_paramsq)Upackq*U func_codeq+(cShared.DC.Scripts.Signature FuncCode q,oq-}q.(U co_argcountq/KU co_varnamesq0(Upackq1U_print_q2U_printq3U _getattr_q4Ucontextq5Umemq6U _getitem_q7Upacksq8Uskinsq9Urolesq:Upack_idq;U canInstallqUskin_idq?Ustyleq@U new_styleqAU cssdefaultqBtqCubu. = ’((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T‰mem=context.zwo_lib.mem_data() packs=mem['racine_obj'].zwo_info.packs print context.zwo_lib.standard_minimal_header(mem) print "


Attention : l'installation d'un pack supprime tout le contenu courrant de tout le site.
" print "Veiller à sauvegarder vos données avant d\'installer un pack !


" print '

[ OK CONTINUER ]

' print '

ou

' print '

[LAISSER TOMBER]

' print context.zwo_lib.standard_minimal_footer(mem) return printed q U_codeq T…c@s d„ZdS(NcCsÆtƒ}tttdƒdƒƒ}ttt|dƒdƒdƒ}|tttdƒdƒ|ƒIJ|dIJ|dIJ|d IJ|d IJ|d IJ|tttdƒd ƒ|ƒIJ|ƒSdS( Nszwo_libsmem_datas racine_objszwo_infospackssstandard_minimal_headers¥


Attention : l'installation d'un pack supprime tout le contenu courrant de tout le site.
sHVeiller à sauvegarder vos données avant d'installer un pack !


sB

[ OK CONTINUER ]

s

ou

sP

[LAISSER TOMBER]

sstandard_minimal_footer(s_print_s_prints _getattr_scontextsmems _getitem_spacks(s_print_s_prints _getattr_scontextsmems _getitem_spacks((sScript (Python)s installer_0s$!"     "(s installer_0(s installer_0((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUjamesq]q UOwnerq!asUidq"U installer_0q#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_argcountq)KU co_varnamesq*(U_print_q+U_printq,U _getattr_q-Ucontextq.Umemq/U _getitem_q0Upacksq1tq2ubu. = à((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T mem=context.zwo_lib.mem_data() packs=mem['racine_obj'].zwo_info.packs print context.zwo_lib.standard_minimal_header(mem) print '

Séléctionner un pack à installer

' print "

Attention : l'installation d'un pack supprime tout le contenu courrant de tout le site.
" print "Veiller à sauvegarder vos données avant d\'installer un pack !

" print '' for pack in packs.objectValues(): img_url=pack["visual.png"].absolute_url() packid=pack.getId() des='' for el in pack.description: des=des+el+'
' print '' print '' print '' print '
' print '
' print '
' print '

'+pack.title+'

' print des print '

Installer ce pack ]' print '

' print context.zwo_lib.standard_minimal_footer(mem) return printed q U_codeq Tc@s d„ZdS(Nc 2CsÅtƒ}tttdƒdƒƒ}ttt|dƒdƒdƒ}|tttdƒdƒ|ƒIJ|dIJ|dIJ|d IJ|d IJxütt|d ƒƒƒD]â}tt|d ƒd ƒƒ} t|dƒƒ} d} x+tt|dƒƒD]} | | d} q÷W|dIJ|dIJ|d| dIJ|dIJ|dt|dƒdIJ|| IJ|d| dIJ|dIJ|dIJq¨W|dIJ|tttdƒdƒ|ƒIJ|ƒSdS( Nszwo_libsmem_datas racine_objszwo_infospackssstandard_minimal_headers)

Séléctionner un pack à installer

Attention : l'installation d'un pack supprime tout le contenu courrant de tout le site.
sAVeiller à sauvegarder vos données avant d'installer un pack !

s2s objectValuess visual.pngs absolute_urlsgetIdss descriptions
ssss
s
s&
s

stitles

s4

Installer ce pack ]s

sstandard_minimal_footer( s_print_s_prints _getattr_scontextsmems _getitem_spackss _getiter_spacksimg_urlspackidsdessel( s_print_s_prints _getattr_scontextsmems _getitem_spackss _getiter_spacksimg_urlspackidsdessel((sScript (Python)s installer_1s4$!"          "(s installer_1(s installer_1((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUjamesq]q UOwnerq!asUidq"U installer_1q#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_argcountq)KU co_varnamesq*(U_print_q+U_printq,U _getattr_q-Ucontextq.Umemq/U _getitem_q0Upacksq1U _getiter_q2Upackq3Uimg_urlq4Upackidq5Udesq6Uelq7tq8ubu. = B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. = B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =B((U PersistenceqUPersistentMappingqtqNt.}qU _containerq}qs. =° ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÈif mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' print '
' print '' #print 'Identifiant : '+instance.title+'

' print 'Nouveau flash (swf):

' print 'hauteur : PARAMETRE OBLIGATOIRE

' print 'largeur : PARAMETRE OBLIGATOIRE

' print '' print '' print '' print '' print '
' return printed q U_codeq Tlc@s d„ZdS(Nc#Csñtƒ}t|dƒdjodSn|dIJ|dIJ|dIJ|dt|dƒd IJ|d t|d ƒd IJ|d t|d ƒdIJ|dt|dƒƒdIJ|dt|dƒƒdIJ|dIJ|dIJ|ƒSdS(Nsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sW
ss>Nouveau flash (swf):

s<hauteur : PARAMETRE OBLIGATOIRE

s<largeur : s+s
(s_print_s_prints _getitem_smems _getattr_sinstancesrep(smemsrepsinstances_print_s_prints _getitem_s _getattr_((sScript (Python)s config_htmls     (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Urepq$Uinstanceq%U_print_q&U_printq'U _getitem_q(U _getattr_q)tq*ubU__ac_local_roles__q+}q,Uxavq-]q.UOwnerq/asUidq0U config_htmlq1U_paramsq2Umem,rep, instanceq3U_dav_writelocksq4(U @rq5(U Persistenceq6UPersistentMappingq7tq8tq9Qu. =±ç((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T½print 'Paramètre de l\'annimation flash à configurer obligatoirement :

' print '' print ' Largeur : Regle la largeur de l\'annimation flash. Doit obligatoirement être précisé.

' print ' Hauteur : Règle la hauteur de l\'animation flash. Doit obligatoirement être précisée.

' print '


' return printed q U_codeq Tãc@s d„ZdS(NcCsFtƒ}|dIJ|dIJ|dIJ|dIJ|dIJ|ƒSdS(Ns{Paramètre de l'annimation flash à configurer obligatoirement :

ssi Largeur : Regle la largeur de l'annimation flash. Doit obligatoirement être précisé.

si Hauteur : Règle la hauteur de l'animation flash. Doit obligatoirement être précisée.

s


(s_print_s_print(s_print_s_print((sScript (Python)shelps     (shelp(shelp((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUgregq]q UOwnerq!asUidq"Uhelpq#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_varnamesq)(U_print_q*U_printq+tq,U co_argcountq-Kubu. =³ ©((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÜif mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' print '
' print '' print 'Fichier flash swf :

' print 'Identifiant * : (nom du fichier flash par défaut)

' #print 'Description (alt) * :

' print 'Largeur : PARAMETRE OBLIGATOIRE

' print 'Hauteur : PARAMETRE OBLIGATOIRE

' #print 'Bordure * :

' #print '* optionnel

' if dossier.type_zwook=="skin": print '' else: print '' print '' print '' print '
' return printed q U_codeq Tþc@s d„ZdS(Nc%CsÎtƒ}t|dƒdjodSn|dIJ|dIJ|dIJ|dIJ|dIJ|d IJt|d ƒd jo|d IJn |d IJ|dt|dƒƒdIJ|dIJ|dIJ|ƒSdS(Nsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sT
ss=Fichier flash swf :

s†Identifiant * : (nom du fichier flash par défaut)

s‚Largeur : PARAMETRE OBLIGATOIRE

s‚Hauteur : PARAMETRE OBLIGATOIRE

s type_zwooksskins.s1s's0s
(s_print_s_prints _getitem_smems _getattr_sdossier(smemsdossiers_print_s_prints _getitem_s _getattr_((sScript (Python)snew_htmls         (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Udossierq$U_print_q%U_printq&U _getitem_q'U _getattr_q(tq)ubU__ac_local_roles__q*}q+Uxavq,]q-UOwnerq.asUidq/Unew_htmlq0U_paramsq1U mem,dossierq2U_dav_writelocksq3(U @tq4(U Persistenceq5UPersistentMappingq6tq7tq8Qu. =´R((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T‘url=instance.absolute_url() nom=instance.getId() txt='' txt=txt+'' txt=txt+' ' txt=txt+' ' txt=txt+'' return txt q U_codeq THc@s d„ZdS(NcCs°t|dƒƒ}t|dƒƒ}d}|d}|d|d|d}|d|d |d }|d t|d ƒd t|dƒd}|d}|d}|SdS(Ns absolute_urlsgetIdsss s s (s _getattr_sinstancesurlsnomstxt(smemsinstances _getattr_surlsnomstxt((sScript (Python)s view_htmls ,  (s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"U view_htmlq#U_paramsq$U mem,instanceq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Uinstanceq-U _getattr_q.Uurlq/Unomq0Utxtq1tq2ubu. =µ»((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÁmem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=nom_ins if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] obj=skin[nom_ins] lieu=skin else: dossier=mem['rep_obj'] obj=dossier[nom_ins] lieu=dossier if data and len(data.read())<>0: titre_data='' if hasattr(data,'filename'): filename=data.filename titre_data=filename[max(string.rfind(filename, '/'), string.rfind(filename, '\\'), string.rfind(filename, ':'), )+1:] id_data=context.zwo_lib.mix_id_zope(titre_data) idobj=id_data lieu.manage_delObjects(nom_ins) lieu.manage_addImage(idobj,data,titre_data) newobj=lieu[idobj] newobj.manage_addProperty('type_zwook','element','string') newobj.manage_addProperty('element','flash','string') newobj.manage_addProperty('type_rep',type_rep,'string') newobj.manage_addProperty('nom_rep',nom_rep,'string') newobj.manage_addProperty('largeur',largeur,'string') newobj.manage_addProperty('hauteur',hauteur,'string') pl_init=dossier.zwo_dossier.placement pl_actu=string.replace(pl_init,':'+nom_ins+':',':'+idobj+':') dossier.zwo_dossier.manage_changeProperties(placement=pl_actu) else: obj.manage_changeProperties(largeur=largeur) obj.manage_changeProperties(hauteur=hauteur) context.REQUEST.RESPONSE.redirect('../../index_html?nom='+nom_rep+'&popup=1') q U_codeq Tˆc@sed„ZdS(NcCs tttdƒdƒƒ}t|dƒdjodSn|} |djo:ttttdƒdƒ|ƒ} t| |ƒ} | } n%t|d ƒ}t||ƒ} |} |ot t|d ƒƒƒd joßd }t|d ƒont|d ƒ}t|tttdƒ|dƒttdƒ|dƒttdƒ|dƒƒdd…ƒ}ntttdƒdƒ|ƒ}|} t| dƒ|ƒt| dƒ| ||ƒt| | ƒ}t|dƒdddƒt|dƒdddƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒtt|dƒdƒ}ttd ƒ|d|dd| dƒ}tt|dƒd!ƒd|ƒn-t| d!ƒd|ƒt| d!ƒd|ƒttttd"ƒd#ƒd$ƒd%|d&ƒdS('Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objsreadissfilenamesrfinds/s\s:s mix_id_zopesmanage_delObjectssmanage_addImagesmanage_addPropertys type_zwookselementsstringsflashstype_repsnom_repslargeurshauteurs zwo_dossiers placementsreplacesmanage_changePropertiessREQUESTsRESPONSEsredirects../../index_html?nom=s&popup=1(s _getattr_scontextsmems _getitem_snom_inssidobjstype_repsnom_repsskinsobjslieusdossiersdataslens titre_datashasattrsfilenamesmaxsstringsid_datasnewobjslargeurshauteurspl_initspl_actu(slargeurshauteurstype_repsnom_repsnom_inssdatas _getattr_scontextsmems _getitem_sidobjsskinsobjslieusdossierslens titre_datashasattrsfilenamesmaxsstringsid_datasnewobjspl_initspl_actu((sScript (Python)s config_oksD ! &!) 1 (sNones config_ok(sNones config_ok((sScript (Python)ssq U func_defaultsq(NtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq ]q!UOwnerq"asUidq#U config_okq$U_paramsq%U7largeur, hauteur, type_rep, nom_rep, nom_ins, data=Noneq&U func_codeq'(cShared.DC.Scripts.Signature FuncCode q(oq)}q*(U co_argcountq+KU co_varnamesq,(Ulargeurq-Uhauteurq.Utype_repq/Unom_repq0Unom_insq1Udataq2U _getattr_q3Ucontextq4Umemq5U _getitem_q6Uidobjq7Uskinq8Uobjq9Ulieuq:Udossierq;UlenqUfilenameq?Umaxq@UstringqAUid_dataqBUnewobjqCUpl_initqDUpl_actuqEtqFubu. =²((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tªmem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if not data: return 'Pas de fichier indiqué !' if len(data.read())<=0: return 'Pas de fichier indiqué !' titre_data='' if hasattr(data,'filename'): filename=data.filename titre_data=filename[max(string.rfind(filename, '/'), string.rfind(filename, '\\'), string.rfind(filename, ':'), )+1:] id_data=context.zwo_lib.mix_id_zope(titre_data) idobj=context.zwo_lib.mix_id_zope(titre) if idobj=='': idobj=id_data if type=="skin": skin=context.zwo_info.skins[nom] #skin.manage_addFolder(idobj,titre) skin.manage_addFile(idobj,data,titre) obj=skin[idobj] else: dossier=mem['rep_obj'] #dossier.manage_addFolder(idobj,titre) dossier.manage_addFile(idobj,data,titre) obj=dossier[idobj] obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element','flash','string') obj.manage_addProperty('largeur',largeur,'string') obj.manage_addProperty('hauteur',hauteur,'string') context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U_codeq Tüc@s d„ZdS(NcCsutttdƒdƒƒ}t|dƒdjodSn| odSntt|dƒƒƒdjodSnd } t|d ƒont|d ƒ} t| t tt d ƒ| d ƒtt d ƒ| d ƒtt d ƒ| dƒƒdd…ƒ} ntttdƒdƒ| ƒ}tttdƒdƒ|ƒ}|d jo |}n|djoMttttdƒdƒ|ƒ}t|dƒ|||ƒt||ƒ}n8t|dƒ}t|dƒ|||ƒt||ƒ}t|dƒdddƒt|dƒdddƒt|dƒd|dƒt|dƒd|dƒttttdƒdƒdƒd|d |ƒdSdS(!Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sPas de fichier indiqué !sreadissfilenamesrfinds/s\s:s mix_id_zopesskinszwo_infosskinssmanage_addFilesrep_objsmanage_addPropertys type_zwookselementsstringsflashslargeurshauteursREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s _getattr_scontextsmems _getitem_sdataslens titre_datashasattrsfilenamesmaxsstringsid_datastitresidobjstypesnomsskinsobjsdossierslargeurshauteur(slargeurshauteurstitresdatastypesnoms _getattr_scontextsmems _getitem_slens titre_datashasattrsfilenamesmaxsstringsid_datasidobjsskinsobjsdossier((sScript (Python)snew_oks:!)   $((snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @sq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_okq)U_paramsq*U&largeur,hauteur,titre, data, type, nomq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Ulargeurq2Uhauteurq3Utitreq4Udataq5Utypeq6Unomq7U _getattr_q8Ucontextq9Umemq:U _getitem_q;UlenqUfilenameq?Umaxq@UstringqAUid_dataqBUidobjqCUskinqDUobjqEUdossierqFtqGubu. =¶Ž((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqU½‰PNG  IHDR*º† pHYs  šœtIMEÔ -5ShK\IDATxÚcüÿÿ_ôBB hi<3ßmE"Àñu™ˆ,í…0ú¢2£Ž(S!æALD‰S)²:8›—:ÌÀf"RºRL÷p+®xf!FÔTü–"» !J€re§IEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqK½u. =) ð((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T¦# RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() # EXEMPLE FORMULAIRE EDITION print '
' # Personalisation Formulaire print '

Url du fil rss:

' print '

Titre du fil:

' # Fin Formulaire print '' print '' print '' print '' print '
' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMDAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' return printed q U_codeq T^c@s d„ZdS(NcCsÙtƒ}ttdƒƒ}|d|dIJ|dt|dƒdIJ|dt|dƒdIJ|d IJ|d t|d ƒd IJ|d t|dƒƒd IJ|dt|dƒƒd IJ|dIJ|ƒSdS(NsgetIds(
sC

Url du fil rss:

sC

Titre du fil: s,s+' print '' print '

Identifiant :

' print '

Titre du fil:

' # partie specifique à ce module print '

Url du fil rss:

' # suite standard print '

' if dossier.type_zwook=="skin": print '' else: print '' print '' print '
' return printed q U_codeq TØc@s d„ZdS(Nc "Cs'tƒ}ttdƒƒ}ttdƒƒ}|}|} d} x8| t|dƒƒjo| d} |t | ƒ} qBW|d|dIJ|dIJ|d | d IJ|d IJ|d IJ|d IJt|dƒdjo|dIJn |dIJ|dt|dƒƒdIJ|dIJ|ƒSdS(NsgetIds title_or_idis objectIdsis(
ssB

Identifiant :

sI

Titre du fil:

sH

Url du fil rss:

s6

s type_zwooksskins.s1s's
( s_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstr( smemsdossiers_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmls*        (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Udossierq$U_print_q%U_printq&U _getattr_q'U containerq(Utypemodq)Unamemodq*Uexemple_titre_baseq+U exemple_titreq,Uindiceq-Ustrq.tq/ubU__ac_local_roles__q0}q1Uxavq2]q3UOwnerq4asUidq5Unew_htmlq6U_paramsq7U mem,dossierq8U_dav_writelocksq9(U @%q:(U Persistenceq;UPersistentMappingqQu. =, Ï((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T\parselib=mem['zwo_obj'].zwo_lib.parse.rss urlfeed=instance.furl titlefeed=instance.ftitle def parse_feed(furl): aff=[] data=parselib.parse_rss(furl) for el in data: title=str(el[0]) link=str(el[1]) summary=str(el[2]) modified=str(el[3]) author=str(el[4]) aff.append('

'+title+'

') if modified<>' ' and author<>' ' and author<>'' and modified<>'': aff.append('
Le '+modified+' par '+author+'
') aff.append('

'+summary+'

') return '\n'.join(aff) return '

'+titlefeed+'

'+parse_feed(urlfeed) q Uidq U view_htmlq U_codeqT3c@s d„ZdS(Ncsntttt|dƒdƒdƒdƒ‰t|dƒ}t|dƒ}‡d†}d|d ||ƒSdS( Nszwo_objszwo_libsparsesrsssfurlsftitlec sKg}tˆdƒ|ƒ}xt|ƒD]}tt|dƒƒ} tt|dƒƒ} tt|dƒƒ} tt|dƒƒ} tt|dƒƒ} t|dƒd| d | d ƒ| d jo$| d jo| d jo | d jo't|dƒd | d| dƒnt|dƒd| dƒq(Wtddƒ|ƒSdS(Ns parse_rssiiiiisappends

s

s ss
Le s par s
s

s

s sjoin(saffs _getattr_sparselibsfurlsdatas _getiter_selsstrs _getitem_stitleslinkssummarysmodifiedsauthor(sfurlsaffs _getattr_sparselibsdatas _getiter_selsstrs _getitem_stitleslinkssummarysmodifiedsauthor(sparselib(sScript (Python)s parse_feeds  7's

s

(s _getattr_s _getitem_smemsparselibsinstancesurlfeeds titlefeeds parse_feed(smemsinstances _getattr_s _getitem_sparselibsurlfeeds titlefeeds parse_feed((sparselibsScript (Python)s view_htmls* (s view_html(s view_html((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Umemq%Uinstanceq&U _getattr_q'U _getitem_q(Uparselibq)Uurlfeedq*U titlefeedq+U parse_feedq,tq-ubU__ac_local_roles__q.}q/Uxavq0]q1UOwnerq2asU _filepathq3U@Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/view_htmlq4U_paramsq5U mem,instanceq6U_dav_writelocksq7(U @&q8(U Persistenceq9UPersistentMappingq:tq;tq1: return 'Vous n\'avez pas les droits pour cette action !' # EXEMPLE MODIFICATION obj.manage_changeProperties(furl=furl) obj.manage_changeProperties(ftitle=ftitle) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q Uidq U config_okq U_codeqTc@s d„ZdS(Nc Csÿtttdƒdƒƒ}|djoFy%ttttdƒdƒ|ƒ} Wn dSnXt| |ƒ} nt|dƒ} t| |ƒ} t|dƒd jod Snt| d ƒd |ƒt| d ƒd |ƒttttdƒdƒdƒdƒdS(Nszwo_libs mem_mod_datasskinszwo_infosskinssnooosrep_objsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !smanage_changePropertiessfurlsftitlesREQUESTsRESPONSEsredirects../../( s _getattr_scontextsmemstype_reps _getitem_snom_repsskinsinstidsobjsdossiersfurlsftitle( sinstidsnom_repstype_repsfurlsftitles _getattr_scontextsmems _getitem_sskinsobjsdossier((sScript (Python)s config_oks ( (s config_ok(s config_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Uinstidq%Unom_repq&Utype_repq'Ufurlq(Uftitleq)U _getattr_q*Ucontextq+Umemq,U _getitem_q-Uskinq.Uobjq/Udossierq0tq1ubU__ac_local_roles__q2}q3Uxavq4]q5UOwnerq6asU _filepathq7U@Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/config_okq8U_paramsq9U&instid, nom_rep,type_rep, furl, ftitleq:U_dav_writelocksq;(U @'q<(U Persistenceq=UPersistentMappingq>tq?tq@Qu. =*½((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TH# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() if type=="skin": skin=context.zwo_info.skins[nom] lieu=skin else: dossier=mem['rep_obj'] lieu=dossier url_lieu=lieu.absolute_url() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId() print '' print '

Cet identifiant '+idobj+' est déja pris
' print 'Veuillez en choisir un autre
' print 'Redirection automatique dans 2 secondes.

' print 'Si la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIETE en fonction du module obj.manage_addProperty('furl',furl,'string') obj.manage_addProperty('ftitle',ftitle,'string') #obj.manage_addProperty('nom_propriete','valeur default',type) # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier chois comme type uniquement) #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q Uidq Unew_okq U_codeqTÑc@s d„ZdS(NcCstƒ}tttdƒdƒƒ} |djo+ttttdƒdƒ|ƒ} | } nt| dƒ} | } t| dƒƒ}t| dƒd jod Sntttdƒd ƒ|ƒ}|t| d ƒƒjoud ttdƒƒ}|d|dIJ|d|dIJ|dIJ|dIJ|d|dIJ|dIJ|ƒSnt| dƒ||ƒt| |ƒ}t|dƒdddƒt|dƒdttdƒƒdƒt|dƒd|dƒt|dƒd|dƒttttdƒd ƒd!ƒd"|d#|ƒdSdS($Nszwo_libs mem_mod_datasskinszwo_infosskinssrep_objs absolute_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopes objectIdss../ajout_element?type=sgetIds7s.

Cet identifiant s est déja pris
s"Veuillez en choisir un autre
s6Redirection automatique dans 2 secondes.

sGSi la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstringsfurlsftitlesREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s_print_s_prints _getattr_scontextsmemstypes _getitem_snomsskinslieusdossiersurl_lieustitresidobjs containersurlsobjsfurlsftitle(stitrestypesnomsfurlsftitles_print_s_prints _getattr_scontextsmems _getitem_sskinslieusdossiersurl_lieusidobjs containersurlsobj((sScript (Python)snew_oks6  !    %((snew_ok(snew_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @$q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Ugregq']q(UOwnerq)asU _filepathq*U=Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/new_okq+U_paramsq,Utitre, type, nom, furl, ftitleq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Utitreq4Utypeq5Unomq6Ufurlq7Uftitleq8U_print_q9U_printq:U _getattr_q;UcontextqUskinq?Ulieuq@UdossierqAUurl_lieuqBUidobjqCU containerqDUurlqEUobjqFtqGubu. =.…((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUUdataqU±‰PNG  IHDRb&ÅB PLTEfÌÌ™Ìÿf™Ì3™ÌÈã^RtRNS@æØfbKGDˆH pHYs  šœtIMEÔ ÕïRdIDATxÚc°ÿÿÿÃÿÿÿ? ±õ0•—ý0]©Û(IEND®B`‚qUheightq KUwidthq KU content_typeq U image/pngq U__name__q U icone.pngqU__ac_local_roles__q}qUjamesq]qUOwnerqasUsizeqK±u. >Å ¨((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TG# RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() # EXEMPLE FORMULAIRE EDITION print '
' # Personalisation Formulaire #print '

Propriété :

' # Fin Formulaire print '' print '' print '' print '' print '
' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMDAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' return printed q U_codeq Tuc@s d„ZdS(NcCs£tƒ}ttdƒƒ}|d|dIJ|dIJ|dt|dƒdIJ|dt|dƒƒdIJ|d t|dƒƒdIJ|d IJ|ƒSdS( NsgetIds(
s(s,s+Æ ²((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T# typemod est l'id du module et namemod est son title typemod=container.getId() namemod=container.title_or_id() # proposition de nom pour l'element exemple_titre_base=namemod exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) # debut formulaire HTML simple de création d'element print '' print '' print '

Identifiant :

' # partie specifique à ce module print '

EXEMPLE

' # suite standard print '

' if dossier.type_zwook=="skin": print '' else: print '' print '' print '
' return printed q U_codeq T€c@s d„ZdS(Nc Cstƒ}ttdƒƒ}ttdƒƒ}|}|} d} x8| t|dƒƒjo| d} |t | ƒ} qBW|d|dIJ|dIJ|d | d IJ|d IJ|d IJt|d ƒdjo|dIJn |dIJ|dt|dƒƒdIJ|dIJ|ƒSdS(NsgetIds title_or_idis objectIdsis(
ssB

Identifiant :

sJ

EXEMPLE

s6

s type_zwooksskins.s1s's
( s_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstr( smemsdossiers_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmls(       (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U ABq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_htmlq)U_paramsq*U mem,dossierq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Udossierq3U_print_q4U_printq5U _getattr_q6U containerq7Utypemodq8Unamemodq9Uexemple_titre_baseq:U exemple_titreq;Uindicequbu. >Èß((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq U‹#recuperation parametres #exemple=instance.exemple #affichage du module : aff=[] #aff.append('

'+exemple+'

') return '\n'.join(aff) q U _filepathq U@Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/view_htmlq U_codeqTOc@s d„ZdS(NcCsg}tddƒ|ƒSdS(Ns sjoin(saffs _getattr_(smemsinstancesaffs _getattr_((sScript (Python)s view_htmls(s view_html(s view_html((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U ADq (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asUidq*U view_htmlq+U_paramsq,U mem,instanceq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Umemq4Uinstanceq5Uaffq6U _getattr_q7tq8ubu. >ɶ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tç# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() if type_rep=="skin": try: skin=context.zwo_info.skins[nom_rep] except: return 'nooo' obj=skin[instid] else: dossier=mem['rep_obj'] obj=dossier[instid] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' # EXEMPLE MODIFICATION #obj.manage_changeProperties(exemple=exemple) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q U _filepathq U@Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/config_okq U_codeqT{c@s d„ZdS(Nc CsÓtttdƒdƒƒ}|djoFy%ttttdƒdƒ|ƒ}Wn dSnXt||ƒ}nt|dƒ} t| |ƒ}t|dƒd jod Snttttd ƒd ƒd ƒdƒdS(Nszwo_libs mem_mod_datasskinszwo_infosskinssnooosrep_objsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sREQUESTsRESPONSEsredirects../../( s _getattr_scontextsmemstype_reps _getitem_snom_repsskinsinstidsobjsdossier( sinstidsnom_repstype_reps _getattr_scontextsmems _getitem_sskinsobjsdossier((sScript (Python)s config_oks ((s config_ok(s config_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U AEq (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asUidq*U config_okq+U_paramsq,Uinstid, nom_rep,type_repq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Uinstidq4Unom_repq5Utype_repq6U _getattr_q7Ucontextq8Umemq9U _getitem_q:Uskinq;Uobjqubu. >ÇJ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() if type=="skin": skin=context.zwo_info.skins[nom] lieu=skin else: dossier=mem['rep_obj'] lieu=dossier url_lieu=lieu.absolute_url() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId() print '' print '

Cet identifiant '+idobj+' est déja pris
' print 'Veuillez en choisir un autre
' print 'Redirection automatique dans 2 secondes.

' print 'Si la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIETE en fonction du module obj.manage_addProperty('exemple',exemple,'string') #obj.manage_addProperty('nom_propriete','valeur default',type) # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier chois comme type uniquement) #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U _filepathq U=Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/new_okq U_codeqTžc@s d„ZdS(NcCstƒ}tttdƒdƒƒ}|djo+ttttdƒdƒ|ƒ} | } nt|dƒ} | } t| dƒƒ} t|dƒd jod Sntttdƒd ƒ|ƒ} | t| d ƒƒjoud ttdƒƒ}|d|dIJ|d| dIJ|dIJ|dIJ|d|dIJ|dIJ|ƒSnt| dƒ| |ƒt| | ƒ}t|dƒdddƒt|dƒdttdƒƒdƒt|dƒdtdƒttttdƒdƒd ƒd!|d"| ƒdSdS(#Nszwo_libs mem_mod_datasskinszwo_infosskinssrep_objs absolute_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopes objectIdss../ajout_element?type=sgetIds7s.

Cet identifiant s est déja pris
s"Veuillez en choisir un autre
s6Redirection automatique dans 2 secondes.

sGSi la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstringsexemplesREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s_print_s_prints _getattr_scontextsmemstypes _getitem_snomsskinslieusdossiersurl_lieustitresidobjs containersurlsobjsexemple(stitrestypesnoms_print_s_prints _getattr_scontextsmems _getitem_sskinslieusdossiersurl_lieusidobjs containersurlsobjsexemple((sScript (Python)snew_oks4  !    %((snew_ok(snew_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Utitreq%Utypeq&Unomq'U_print_q(U_printq)U _getattr_q*Ucontextq+Umemq,U _getitem_q-Uskinq.Ulieuq/Udossierq0Uurl_lieuq1Uidobjq2U containerq3Uurlq4Uobjq5Uexempleq6tq7ubU__ac_local_roles__q8}q9Ugregq:]q;UOwnerqU_paramsq?Utitre, type, nomq@U_dav_writelocksqA(U ACqB(U PersistenceqCUPersistentMappingqDtqEtqFQu. >Ê((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUUdataqU«‰PNG  IHDRíf0âPLTEÿÿÿ™ÌÿfÌÌf™Ì3™ÌÉ(øîtRNS@æØfbKGDˆH pHYs  šœtIMEÔÔqÛIDATxÚc`q  µ“SÁêIEND®B`‚qUheightq KUwidthq KU content_typeq U image/pngq U__name__q U icone.pngqU__ac_local_roles__q}qUjamesq]qUOwnerqasUsizeqK«u. =/î((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tprint """ Les formats de textes :
- text : le format texte classique.
- html : permet l'utilisation de html.
- structured text : un format spécial.
doc sur le structured text de nos amis d'objectis

L'option Rapid Edit :
Permet d'éditer le texte rapidement (sans passer par l'édition du contenu).
Visible uniquement par les personnes ayant le droit d'éditer la page.
""" return printed q U _filepathq U;Script (Python):/test_kzexp_zwook_cvs/zwo_modules/text/helpq U_codeqT c@s d„ZdS(NcCstƒ}|dIJ|ƒSdS(Nsè Les formats de textes :
- text : le format texte classique.
- html : permet l'utilisation de html.
- structured text : un format spécial.
doc sur le structured text de nos amis d'objectis

L'option Rapid Edit :
Permet d'éditer le texte rapidement (sans passer par l'édition du contenu).
Visible uniquement par les personnes ayant le droit d'éditer la page.
(s_print_s_print(s_print_s_print((sScript (Python)shelps (shelp(shelp((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @(q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Ugregq']q(UOwnerq)asUidq*Uhelpq+U_paramsq,UU func_codeq-(cShared.DC.Scripts.Signature FuncCode q.oq/}q0(U co_varnamesq1(U_print_q2U_printq3tq4U co_argcountq5Kubu. =0 Ð((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tžmem=context.zwo_lib.mem_data() modname=container.getId() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] obj=skin[nom_ins] else: dossier=mem['rep_obj'] obj=dossier[nom_ins] #t='La dernière modification a été effectuée par '+mem['user_id'] date=DateTime().strftime(" le %d/%m/%y à %H:%M") t='La derniere modification a été effectuée par '+mem['user_id']+date obj.document.manage_edit(data,t) obj.manage_changeProperties(format=format) if obj.hasProperty('rapidedit'): if rapidedit=='non': obj.manage_changeProperties(rapidedit='0') else: obj.manage_changeProperties(rapidedit='1') else: if rapidedit=='non': obj.manage_addProperty('rapidedit','0','string') else: obj.manage_addProperty('rapidedit','1','string') context.REQUEST.RESPONSE.redirect('../../index_html?nom='+nom_rep+'&popup=1') q Uidq U config_okq U_codeqTec@sdd„ZdS(NsnoncCsÙtttdƒdƒƒ}ttdƒƒ} t|dƒdjodSn|djo4ttttdƒd ƒ|ƒ} t| |ƒ} nt|d ƒ}t||ƒ} tt ƒd ƒd ƒ}d t|dƒ|}tt| dƒdƒ||ƒt| dƒd|ƒt| dƒdƒoA|djot| dƒddƒq¨t| dƒddƒnD|djot| dƒdddƒnt| dƒdddƒttttdƒdƒdƒd|dƒdS(Nszwo_libsmem_datasgetIdsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objsstrftimes le %d/%m/%y à %H:%Ms-La derniere modification a été effectuée par suser_idsdocuments manage_editsmanage_changePropertiessformats hasPropertys rapideditsnons0s1smanage_addPropertysstringsREQUESTsRESPONSEsredirects../../index_html?nom=s&popup=1(s _getattr_scontextsmems containersmodnames _getitem_stype_repsnom_repsskinsnom_inssobjsdossiersDateTimesdatestsdatasformats rapidedit(sformatsdatastype_repsnom_repsnom_inss rapidedits _getattr_scontextsmems containersmodnames _getitem_sskinsobjsdossiersDateTimesdatest((sScript (Python)s config_oks( !(s config_ok(s config_ok((sScript (Python)ssqU func_defaultsq(UnonqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq usbU func_codeq!(cShared.DC.Scripts.Signature FuncCode q"oq#}q$(U co_argcountq%KU co_varnamesq&(Uformatq'Udataq(Utype_repq)Unom_repq*Unom_insq+U rapideditq,U _getattr_q-Ucontextq.Umemq/U containerq0Umodnameq1U _getitem_q2Uskinq3Uobjq4Udossierq5UDateTimeq6Udateq7Uttq8ubU__ac_local_roles__q9}q:Uxavq;]qU@Script (Python):/test_kzexp_zwook_cvs/zwo_modules/text/config_okq?U_paramsq@U8format, data, type_rep, nom_rep, nom_ins,rapidedit='non'qAU_dav_writelocksqB(U @)qC(U PersistenceqDUPersistentMappingqEtqFtqGQu. =1 >((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T]mem=context.zwo_lib.mem_data() modname=container.getId() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) if type=="skin": skin=context.zwo_info.skins[nom] skin.manage_addFolder(idobj,titre) obj=skin[idobj] else: dossier=mem['rep_obj'] dossier.manage_addFolder(idobj,titre) obj=dossier[idobj] obj.manage_addDTMLDocument('document','Texte original') obj.document.manage_edit(data,'Texte original') obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element','text','string') obj.manage_addProperty('format',format,'string') if rapidedit=='oui': obj.manage_addProperty('rapidedit','1','string') else: obj.manage_addProperty('rapidedit','0','string') context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q Uidq Unew_okq U_codeqTc@sdd„ZdS(NsnoncCsðtttdƒdƒƒ}ttdƒƒ} t|dƒdjodSntttdƒdƒ|ƒ} |djoJttttd ƒd ƒ|ƒ} t| d ƒ| |ƒt| | ƒ}n5t|d ƒ}t|d ƒ| |ƒt|| ƒ}t|d ƒddƒtt|dƒdƒ|dƒt|dƒdddƒt|dƒdddƒt|dƒd|dƒ|djot|dƒdddƒnt|dƒdddƒttttdƒdƒdƒd|d| ƒdSdS( Nszwo_libsmem_datasgetIdsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopesskinszwo_infosskinssmanage_addFoldersrep_objsmanage_addDTMLDocumentsdocumentsTexte originals manage_editsmanage_addPropertys type_zwookselementsstringstextsformatsouis rapidedits1s0sREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s _getattr_scontextsmems containersmodnames _getitem_stitresidobjstypesnomsskinsobjsdossiersdatasformats rapidedit(stitresformatsdatastypesnoms rapidedits _getattr_scontextsmems containersmodnames _getitem_sidobjsskinsobjsdossier((sScript (Python)snew_oks* $((snew_ok(snew_ok((sScript (Python)ssqU func_defaultsq(UnonqtqU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathq Utraverse_subpathq!Uname_containerq"U containerq#usbU func_codeq$(cShared.DC.Scripts.Signature FuncCode q%oq&}q'(U co_argcountq(KU co_varnamesq)(Utitreq*Uformatq+Udataq,Utypeq-Unomq.U rapideditq/U _getattr_q0Ucontextq1Umemq2U containerq3Umodnameq4U _getitem_q5Uidobjq6Uskinq7Uobjq8Udossierq9tq:ubU__ac_local_roles__q;}qUOwnerq?asU _filepathq@U=Script (Python):/test_kzexp_zwook_cvs/zwo_modules/text/new_okqAU_paramsqBU/titre, format, data, type, nom, rapidedit='non'qCU_dav_writelocksqD(U @*qE(U PersistenceqFUPersistentMappingqGtqHtqIQu. =2?((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tfrom Products.PythonScripts.standard import html_quote mem=context.zwo_lib.mem_mod_data(mem) if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' doc=instance.document.document_src() lignes=doc.split('\n') message=[] #~ &&&&&&&&&&&&&&&&&&&&&&& texte &&&&&&&&&&&&&&&&&&& if instance.format=='text': a=0 for ligne in lignes: ligne=html_quote(ligne) ligne=string.replace(ligne,'$URL',mem['zwo_url']) if a==0: a=1 message.append(ligne) else: message.append('
\n'+ligne) #~ &&&&&&&&&&&&&&&&&&&&&&& htlm &&&&&&&&&&&&&&&&&&& elif instance.format=='html': for ligne in lignes: ligne=string.replace(ligne,'$URL',mem['zwo_url']) message.append(ligne+'\n') elif instance.format=='stx': from Products.PythonScripts.standard import structured_text message.append(structured_text(string.join(lignes,'\n'))) if instance.hasProperty('rapidedit'): if instance.rapidedit=="1": if mem['droit_edit_dossier']==1: message.append(' [E]') return "".join(message) q Uidq U view_htmlq U_codeqTc@s d„ZdS(NcCs‚dkl}tttdƒdƒ|ƒ}t|dƒdjodSntt|dƒdƒƒ}t|d ƒd ƒ}g} t|d ƒd jo’d } xGt |ƒD]w} || ƒ} tt dƒ| dt|dƒƒ} | d jod} t| dƒ| ƒq¨t| dƒd| ƒq¨Wn¿t|d ƒdjoVx¥t |ƒD]A} tt dƒ| dt|dƒƒ} t| dƒ| d ƒqJWnSt|d ƒdjo<dkl}t| dƒ|tt dƒ|d ƒƒƒnt|dƒdƒopt|dƒdjoVt|dƒdjo<t| dƒdt|dƒdt|dƒƒdƒqgqkntd dƒ| ƒSdS(!N(s html_quoteszwo_libs mem_mod_datasdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !sdocuments document_srcssplits sformatstextisreplaces$URLszwo_urlsappends
shtmlsstx(sstructured_textsjoins hasPropertys rapidedits1sdroit_edit_dossiers [E]s(sProducts.PythonScripts.standards html_quotes _getattr_scontextsmems _getitem_sinstancesdocslignessmessagesas _getiter_slignesstringsstructured_text(smemsinstancesProducts.PythonScripts.standards html_quotes _getattr_scontexts _getitem_sdocslignessmessagesas _getiter_slignesstringsstructured_text((sScript (Python)s view_htmls:   $   '/A(s view_html(s view_html((sScript (Python)ssqU func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextq Ucontextq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Umemq(Uinstanceq)UProducts.PythonScripts.standardq*U html_quoteq+U _getattr_q,Ucontextq-U _getitem_q.Udocq/Ulignesq0Umessageq1UaU _getiter_q2Uligneq3Ustringq4Ustructured_textq5tq6ubU__ac_local_roles__q7}q8Uxavq9]q:UOwnerq;asU _filepathqU mem,instanceq?U_dav_writelocksq@(U @+qA(U PersistenceqBUPersistentMappingqCtqDtqEQu. =3æ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tbmodname=container.getId() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' print '
' print '' #~ ############### options module print '

Identifiant : ' print '

' print '

Format :

' message='' fst=1 doc=instance.document.document_src() message=doc print '

Texte :

' chkd="" if instance.hasProperty('rapidedit'): if instance.rapidedit=="1": chkd=' checked' print ' Afficher le Rapid Edit [E] pour ceux qui ont le droit d\'édition

' print '' print '' print '' print '

' print '
' return printed q U_codeq Tc c@s d„ZdS(Nc>Cs&tƒ}ttdƒƒ}t|dƒdjodSn|dIJ|dIJ|dIJ|dt|dƒƒd IJ|d IJd } t|d ƒd jod} |dIJn |dIJt|d ƒdjo|dIJn |dIJt|d ƒdjo|dIJn |dIJ|dIJd} d} tt|dƒdƒƒ} | } |d| dIJd} t|dƒdƒo$t|dƒdjo d} qžn|d | d!IJ|d"t|d#ƒd$IJ|d%t|dƒƒd$IJ|d&t|dƒƒd$IJ|d'IJ|d(IJ|ƒSdS()NsgetIdsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s8
ss.

Identifiant : s1

s#

Format :

ssdocuments document_srcs;

Texte :

s hasPropertys rapidedits1s checkedsC Afficher le Rapid Edit [E] pour ceux qui ont le droit d'édition

s,s+

s
(s_print_s_prints _getattr_s containersmodnames _getitem_smemsinstanceshelsmessagesfstsdocschkdsrep(smemsrepsinstances_print_s_prints _getattr_s containersmodnames _getitem_shelsmessagesfstsdocschkd((sScript (Python)s config_htmlsF           (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @,q(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U config_htmlq)U_paramsq*Umem, rep, instanceq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Urepq3Uinstanceq4U_print_q5U_printq6U _getattr_q7U containerq8Umodnameq9U _getitem_q:Uhelq;UmessageqUchkdq?tq@ubu. =4((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T #choix du nom proposé par defaut modname=container.getId() exemple_titre_base='texte' exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) print '
' print '' #~ ################ autres propriétés ################## print 'Identifiant : ' print 'Format :

' print 'Texte :

' print ' Afficher le Rapid Edit [E] pour ceux qui ont le droit d\'édition

' if dossier.type_zwook=="skin": print '' else: print '' print '' print '' print '
' return printed q U_codeq Tôc@s d„ZdS(Nc 1CsGtƒ}ttdƒƒ}d}|}d} x8|t|dƒƒjo| d} |t | ƒ}q0W|d|dIJ|dIJ|d |d IJ|d IJ|d IJ|d IJ|dIJ|dIJ|dIJ|dIJt|dƒdjo|dIJn |dIJ|dt|dƒƒd IJ|dIJ|dIJ|ƒSdS(NsgetIdstexteis objectIdsis(
ss\Identifiant : s Format :

sHTexte :

s• Afficher le Rapid Edit [E] pour ceux qui ont le droit d'édition

s type_zwooksskins.s1s's
( s_print_s_prints _getattr_s containersmodnamesexemple_titre_bases exemple_titresindicesdossiersstr( smemsdossiers_print_s_prints _getattr_s containersmodnamesexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmls2             (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @-q(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_htmlq)U_paramsq*U mem,dossierq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Udossierq3U_print_q4U_printq5U _getattr_q6U containerq7Umodnameq8Uexemple_titre_baseq9U exemple_titreq:Uindiceq;Ustrq1: return 'Vous n\'avez pas les droits pour cette action !' if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] obj=skin[nom_ins] else: dossier=mem['rep_obj'] obj=dossier[nom_ins] date=DateTime().strftime(" le %d/%m/%y à %H:%M") t='La derniere modification a été effectuée par '+mem['user_id']+date obj.document.manage_edit(data,t) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q U _filepathq UCScript (Python):/test_kzexp_zwook_cvs/zwo_modules/text/rapidedit_okq U_codeqTŠc@s d„ZdS(NcCstttdƒdƒƒ}t|dƒdjodSn|djo4ttttdƒdƒ|ƒ}t||ƒ} nt|d ƒ} t| |ƒ} tt ƒd ƒd ƒ} d t|d ƒ| } tt| dƒdƒ|| ƒttttdƒdƒdƒt|dƒƒdS(Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objsstrftimes le %d/%m/%y à %H:%Ms-La derniere modification a été effectuée par suser_idsdocuments manage_editsREQUESTsRESPONSEsredirectsrep_url(s _getattr_scontextsmems _getitem_stype_repsnom_repsskinsnom_inssobjsdossiersDateTimesdatestsdata(sdatastype_repsnom_repsnom_inss _getattr_scontextsmems _getitem_sskinsobjsdossiersDateTimesdatest((sScript (Python)s rapidedit_oks !"(s rapidedit_ok(s rapidedit_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @.q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asUidq*U rapidedit_okq+U_paramsq,U data, type_rep, nom_rep, nom_insq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Udataq4Utype_repq5Unom_repq6Unom_insq7U _getattr_q8Ucontextq9Umemq:U _getitem_q;UskinqUDateTimeq?Udateq@UttqAubu. =6 8((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tdmem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] url_lieu=mem['parent'].absolute_url() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' instance=lieu[idobj] #print '

RapidEdit

' print '
' print '' message=instance.document.document_src() print '

'+instance.document.title+'

' print '

' print '' print '' print '' print '' print '
' return printed q U_codeq TÑc@s d„ZdS(Nc !CsVtƒ}tttdƒdƒƒ}t|dƒ}tt|dƒdƒƒ}t|dƒdjodSnt||ƒ} |dIJ|d IJtt| d ƒd ƒƒ} |d tt| d ƒd ƒdIJ|d| dIJ|dt|dƒdIJ|dt|dƒƒdIJ|dt| dƒƒdIJ|dIJ|dIJ|ƒSdS(Nszwo_libs mem_mod_datasparents absolute_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s;
ssdocuments document_srcs

stitles

s3

s,s+s
( s_print_s_prints _getattr_scontextsmems _getitem_slieusurl_lieusidobjsinstancesmessage( sidobjs_print_s_prints _getattr_scontextsmems _getitem_slieusurl_lieusinstancesmessage((sScript (Python)srapidedit_htmls $  $  (srapidedit_html(srapidedit_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Uidobjq#U_print_q$U_printq%U _getattr_q&Ucontextq'Umemq(U _getitem_q)Ulieuq*Uurl_lieuq+Uinstanceq,Umessageq-tq.ubU__ac_local_roles__q/}q0Uxavq1]q2UOwnerq3asUidq4Urapidedit_htmlq5U_paramsq6Uidobjq7U_dav_writelocksq8(U @/q9(U Persistenceq:UPersistentMappingq;tq1: return 'Vous n\'avez pas les droits pour cette action !' if instance.hasProperty('url'): url=instance.url else: url="" print '
' print '
'+context.zwo_modules.image.view_html(mem,instance)+'
' print '
' print '
' print '' print '' print '' print '' print '' print '' print '
' print '' print 'Nouvelle image : ' print '' print '' print '
' print '' print 'Description (alt) * : ' print '' print '' print '
' print '' print 'Lien (url) * : ' print '' print '' print '
' print '' print 'Largeur * : ' print '' print ' ' print '( Largeur réelle de l\'image : '+str(instance.width)+' pixels )' print '
' print '' print 'Hauteur * :' print '' print ' ' print '( Hauteur réelle de l\'image : '+str(instance.height)+' pixels )' print '
' print '' print 'Bordure * : ' print '' print '' print '

' print '* optionnel

' print '' print '' print '' print '' print '
' return printed q U_codeq Tô c@s d„ZdS(Nc ›Cs*tƒ}t|dƒdjodSnt|dƒdƒot|dƒ}nd}|dIJ|dttttd ƒd ƒd ƒ||ƒd IJ|dIJ|d IJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dt|dƒdIJ|dIJ|dIJ|dIJ|dIJ|dIJ|d|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dt|dƒdIJ|dtt|d ƒƒd!IJ|dIJ|dIJ|dIJ|d"IJ|dIJ|d#t|d$ƒdIJ|d%tt|d&ƒƒd!IJ|dIJ|dIJ|dIJ|d'IJ|dIJ|d(t|d)ƒdIJ|d*IJ|d+IJ|d,t|d-ƒd.IJ|d/t|d0ƒƒd.IJ|d1t|d0ƒƒd.IJ|d2IJ|d3IJ|ƒSdS(4Nsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s hasPropertysurlss
s
s zwo_modulessimages view_htmls
sW
s2s#sDescription (alt) * : s/sLien (url) * : s/ s=( Largeur réelle de l'image : swidths pixels )s Hauteur * :s2( Hauteur réelle de l'image : sheights Bordure * : s2s+s( s_print_s_prints _getitem_smems _getattr_sinstancesurlscontextsstrsrep( smemsrepsinstances_print_s_prints _getitem_s _getattr_surlscontextsstr((sScript (Python)s config_htmlsl  6                       !     !         (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Urepq$Uinstanceq%U_print_q&U_printq'U _getitem_q(U _getattr_q)Uurlq*Ucontextq+Ustrq,tq-ubU__ac_local_roles__q.}q/Uxavq0]q1UOwnerq2asUidq3U config_htmlq4U_paramsq5Umem,rep,instanceq6U_dav_writelocksq7(U @0q8(U Persistenceq9UPersistentMappingq:tq;tqOptions de l\'image :

' print '' print ' Description (alt) : la description s\'affiche si le navigateur n\'arrive pas à lire l\'image. Elle est utile pour le référencement des pages. ' print 'De plus, sur certain navigateurs (dont internet explorer) la description s\'affiche lorsqu\'on laisse la souris sur l\'image 1 seconde.

' print ' Lien (url) : . exemple :   http://www.zwook.com . Lien lorsque l\'on clique sur l\'image.

' print ' Largeur : par default prend la largeur de l\'image. Permet de modifier la largeur en pixel de l\'image.

' print ' Hauteur : par default prend la hauteur de l\'image. Permet de modifier la hauteur en pixel de l\'image.

' print ' Bordure : rajoute un cadre à l\'image. Indiquer le nombre de pixels d\'épaisseur du cadre.

' print '


' return printed q U_codeq TSc@s d„ZdS(NcCsntƒ}|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|d IJ|ƒSdS( NsQOptions de l'image :

ss” Description (alt) : la description s'affiche si le navigateur n'arrive pas à lire l'image. Elle est utile pour le référencement des pages. sDe plus, sur certain navigateurs (dont internet explorer) la description s'affiche lorsqu'on laisse la souris sur l'image 1 seconde.

Lien (url) : . exemple :   http://www.zwook.com . Lien lorsque l'on clique sur l'image.

sz Largeur : par default prend la largeur de l'image. Permet de modifier la largeur en pixel de l'image.

sz Hauteur : par default prend la hauteur de l'image. Permet de modifier la hauteur en pixel de l'image.

sn Bordure : rajoute un cadre à l'image. Indiquer le nombre de pixels d'épaisseur du cadre.

s


(s_print_s_print(s_print_s_print((sScript (Python)shelps        (shelp(shelp((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUgregq]q UOwnerq!asUidq"Uhelpq#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_varnamesq)(U_print_q*U_printq+tq,U co_argcountq-Kubu. =;œ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tñif mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' #choix du nom proposé par default print '
' print '
ssNouvelle image : s*ss
' print '' print '' print '' print '' print '' print '' print '
' print '' print 'Image : ' print '' print '' print '
' print '' print 'Identifiant * : ' print '' print ' (nom de l\'image par défaut)' print '
' print '' print 'Description (alt) * : ' print '' print '' print '
' print '' print 'Lien (url) * : ' print '' print '' print '
' print '' print 'Largeur * : ' print '' print '' print '
' print '' print 'Hauteur * : ' print '' print '' print '
' print '' print 'Bordure * : ' print '' print '' print '

' print '* optionnel

' if dossier.type_zwook=="skin": print '' else: print '' print '' print '' print '' return printed q U_codeq TÜc@s d„ZdS(NcšCsTtƒ}t|dƒdjodSn|dIJ|dIJ|dIJ|dIJ|dIJ|d IJ|d IJ|d IJ|dIJ|dIJ|d IJ|d IJ|d IJ|d IJ|dIJ|dIJ|dIJ|d IJ|dIJ|d IJ|dIJ|dIJ|dIJ|d IJ|dIJ|d IJ|dIJ|dIJ|dIJ|d IJ|dIJ|d IJ|dIJ|dIJ|dIJ|d IJ|dIJ|d IJ|dIJ|dIJ|dIJ|d IJ|dIJ|dIJ|dIJt|dƒdjo|dIJn |dIJ|dt|dƒƒd IJ|d!IJ|d"IJ|ƒSdS(#Nsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sT
s2s#sIdentifiant * : sf(nom de l'image par défaut)sDescription (alt) * : s*sLien (url) * : s*s Largeur * : s-s Hauteur * : s-s Bordure * : s7s
ssImage : s*ss

s* optionnel

s type_zwooksskins.s1s's0s
(s_print_s_prints _getitem_smems _getattr_sdossier(smemsdossiers_print_s_prints _getitem_s _getattr_((sScript (Python)snew_htmlsj                                                (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Udossierq$U_print_q%U_printq&U _getitem_q'U _getattr_q(tq)ubU__ac_local_roles__q*}q+Uxavq,]q-UOwnerq.asUidq/Unew_htmlq0U_paramsq1U mem,dossierq2U_dav_writelocksq3(U @2q4(U Persistenceq5UPersistentMappingq6tq7tq8Qu. =< y((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÓif not mem: mem=mem=context.zwo_lib.mem_data() if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' largeur=instance.largeur hauteur=instance.hauteur bordure=instance.bordure url=instance.absolute_url() alt=instance.alt if largeur=='': la=instance.width else: la=largeur if hauteur=='': he=instance.height else: he=hauteur if bordure=='': bordure='0' t1='' t2='' if instance.hasProperty('url'): churl=string.strip(instance.url) if churl<>"": churl=string.replace(churl,'$URL',mem['zwo_url']) t1='' t2='' ret=t1+''+alt+''+t2 return ret q U_codeq TÂc@s d„ZdS(NcCs×| o#tttdƒdƒƒ}}nt|dƒdjodSnt|dƒ}t|dƒ}t|dƒ}t|d ƒƒ}t|d ƒ} |d jot|d ƒ} n|} |d jot|d ƒ} n|} |d jo d}nd } d } t|dƒdƒokttdƒt|dƒƒ}|d jo<ttdƒ|dt|dƒƒ}d|d} d} q‡n| d|dt| ƒdt| ƒdt|ƒd| d| }|SdS(Nszwo_libsmem_datasdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !slargeurshauteursbordures absolute_urlsaltsswidthsheights0s hasPropertysurlsstripsreplaces$URLszwo_urls ss s���(smems _getattr_scontexts _getitem_sinstanceslargeurshauteursborduresurlsaltslashest1st2sstringschurlsstrsret(smemsinstances _getattr_scontexts _getitem_slargeurshauteursborduresurlsaltslashest1st2sstringschurlsstrsret((sScript (Python)s view_htmls4#      $H(s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"U view_htmlq#U_paramsq$U mem,instanceq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Uinstanceq-U _getattr_q.Ucontextq/U _getitem_q0Ulargeurq1Uhauteurq2Ubordureq3Uurlq4Ualtq5Ulaq6Uheq7Ut1q8Ut2q9Ustringq:Uchurlq;Ustrqubu. ==”((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T¿mem=context.zwo_lib.mem_data() idobj=nom_ins if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] obj=skin[nom_ins] lieu=skin foldertab=skin else: dossier=mem['rep_obj'] obj=dossier[nom_ins] lieu=dossier foldertab=dossier.zwo_dossier if data and len(data.read())<>0: titre_data='' if hasattr(data,'filename'): filename=data.filename titre_data=filename[max(string.rfind(filename, '/'), string.rfind(filename, '\\'), string.rfind(filename, ':'), )+1:] id_data=context.zwo_lib.mix_id_zope(titre_data) idobj=id_data lieu.manage_delObjects(nom_ins) lieu.manage_addImage(idobj,data,titre_data) newobj=lieu[idobj] newobj.manage_addProperty('type_zwook','element','string') newobj.manage_addProperty('element','image','string') newobj.manage_addProperty('type_rep',type_rep,'string') newobj.manage_addProperty('nom_rep',nom_rep,'string') newobj.manage_addProperty('largeur',largeur,'string') newobj.manage_addProperty('hauteur',hauteur,'string') newobj.manage_addProperty('bordure',bordure,'string') newobj.manage_addProperty('alt',alt,'string') newobj.manage_addProperty('url',url,'string') pl_init=foldertab.tableaux pl_actu=[] for l in pl_init: l1=l+'/' l2=string.replace(l1,'/'+nom_ins+'/','/'+idobj+'/') l3=string.replace(l2,':'+nom_ins+'/',':'+idobj+'/') pl_actu.append(l3[:-1]) foldertab.manage_changeProperties(tableaux=pl_actu) else: obj.manage_changeProperties(alt=alt) obj.manage_changeProperties(hauteur=hauteur) obj.manage_changeProperties(largeur=largeur) obj.manage_changeProperties(bordure=bordure) if obj.hasProperty('url'): obj.manage_changeProperties(url=url) else: obj.manage_addProperty('url',url,'string') context.REQUEST.RESPONSE.redirect('../../index_html?nom='+nom_rep+'&popup=1') q U_codeq T¼ c@sed„ZdS(Nc "CsDtttdƒdƒƒ} |} t| dƒdjodSn|djo@ttttdƒdƒ|ƒ}t||ƒ}|}|}n4t| d ƒ}t||ƒ}|}t|d ƒ}|ott|d ƒƒƒd jod }t|dƒont|dƒ}t|tttdƒ|dƒttdƒ|dƒttdƒ|dƒƒdd…ƒ}ntttdƒdƒ|ƒ}|} t|dƒ|ƒt|dƒ| ||ƒt|| ƒ}t|dƒdddƒt|dƒdddƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒt|dƒd |dƒt|dƒd!|dƒt|d"ƒ}g}x—t|ƒD]‰}|d}ttd#ƒ|d|dd| dƒ} ttd#ƒ| d|dd| dƒ}!t|d$ƒt|!dd …ƒƒqËWt|d%ƒd"|ƒn¢t|d%ƒd |ƒt|d%ƒd|ƒt|d%ƒd|ƒt|d%ƒd|ƒt|d&ƒd!ƒot|d%ƒd!|ƒnt|dƒd!|dƒttttd'ƒd(ƒd)ƒd*|d+ƒdS(,Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objs zwo_dossiersreadissfilenamesrfinds/s\s:s mix_id_zopesmanage_delObjectssmanage_addImagesmanage_addPropertys type_zwookselementsstringsimagestype_repsnom_repslargeurshauteursborduresaltsurlstableauxsreplacesappendsmanage_changePropertiess hasPropertysREQUESTsRESPONSEsredirects../../index_html?nom=s&popup=1("s _getattr_scontextsmemsnom_inssidobjs _getitem_stype_repsnom_repsskinsobjslieus foldertabsdossiersdataslens titre_datashasattrsfilenamesmaxsstringsid_datasnewobjslargeurshauteursborduresaltsurlspl_initspl_actus _getiter_slsl1sl2sl3("saltshauteurslargeursbordurestype_repsnom_repsnom_inssurlsdatas _getattr_scontextsmemsidobjs _getitem_sskinsobjslieus foldertabsdossierslens titre_datashasattrsfilenamesmaxsstringsid_datasnewobjspl_initspl_actus _getiter_slsl1sl2sl3((sScript (Python)s config_oksd ! &!)   +.'(sNones config_ok(sNones config_ok((sScript (Python)ssq U func_defaultsq(NtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @3q(U Persistenceq UPersistentMappingq!tq"tq#QU__ac_local_roles__q$}q%Uxavq&]q'UOwnerq(asUidq)U config_okq*U_paramsq+UJalt, hauteur, largeur, bordure, type_rep, nom_rep, nom_ins, url, data=Noneq,U func_codeq-(cShared.DC.Scripts.Signature FuncCode q.oq/}q0(U co_argcountq1K U co_varnamesq2(Ualtq3Uhauteurq4Ulargeurq5Ubordureq6Utype_repq7Unom_repq8Unom_insq9Uurlq:Udataq;U _getattr_qUidobjq?U _getitem_q@UskinqAUobjqBUlieuqCU foldertabqDUdossierqEUlenqFU titre_dataqGUhasattrqHUfilenameqIUmaxqJUstringqKUid_dataqLUnewobjqMUpl_initqNUpl_actuqOU _getiter_qPUlUl1qQUl2qRUl3qStqTubu. =:)((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tåmem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if not data: return 'Pas de fichier indiqué !' if len(data.read())<=0: return 'Pas de fichier indiqué !' titre_data='' if hasattr(data,'filename'): filename=data.filename titre_data=filename[max(string.rfind(filename, '/'), string.rfind(filename, '\\'), string.rfind(filename, ':'), )+1:] id_data=context.zwo_lib.mix_id_zope(titre_data) idobj=context.zwo_lib.mix_id_zope(titre) if idobj=='': idobj=id_data if type=="skin": skin=context.zwo_info.skins[nom] skin.manage_addImage(idobj,data,titre) obj=skin[idobj] else: dossier=mem['rep_obj'] dossier.manage_addImage(idobj,data,titre) obj=dossier[idobj] obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element','image','string') obj.manage_addProperty('largeur',largeur,'string') obj.manage_addProperty('hauteur',hauteur,'string') obj.manage_addProperty('bordure',bordure,'string') obj.manage_addProperty('alt',alt,'string') obj.manage_addProperty('url',url,'string') context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U_codeq T¢c@s d„ZdS(Nc CsÀtttdƒdƒƒ} t| dƒdjodSn| odSntt|dƒƒƒdjodSnd }t|d ƒont|d ƒ}t|t tt d ƒ|d ƒtt d ƒ|d ƒtt d ƒ|dƒƒdd…ƒ}ntttdƒdƒ|ƒ}tttdƒdƒ|ƒ}|d jo |}n|djoMttttdƒdƒ|ƒ}t|dƒ|||ƒt||ƒ}n8t| dƒ}t|dƒ|||ƒt||ƒ}t|dƒdddƒt|dƒdddƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒttttdƒd ƒd!ƒd"|d#|ƒdSdS($Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sPas de fichier indiqué !sreadissfilenamesrfinds/s\s:s mix_id_zopesskinszwo_infosskinssmanage_addImagesrep_objsmanage_addPropertys type_zwookselementsstringsimageslargeurshauteursborduresaltsurlsREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s _getattr_scontextsmems _getitem_sdataslens titre_datashasattrsfilenamesmaxsstringsid_datastitresidobjstypesnomsskinsobjsdossierslargeurshauteursborduresaltsurl(stitresdatastypesnomslargeurshauteursborduresurlsalts _getattr_scontextsmems _getitem_slens titre_datashasattrsfilenamesmaxsstringsid_datasidobjsskinsobjsdossier((sScript (Python)snew_oks@!)   $((snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!K U co_varnamesq"(Utitreq#Udataq$Utypeq%Unomq&Ulargeurq'Uhauteurq(Ubordureq)Uurlq*Ualtq+U _getattr_q,Ucontextq-Umemq.U _getitem_q/Ulenq0U titre_dataq1Uhasattrq2Ufilenameq3Umaxq4Ustringq5Uid_dataq6Uidobjq7Uskinq8Uobjq9Udossierq:tq;ubU__ac_local_roles__q<}q=Uxavq>]q?UOwnerq@asUidqAUnew_okqBU_paramsqCU;titre, data, type, nom, largeur, hauteur, bordure, url, altqDU_dav_writelocksqE(U @1qF(U PersistenceqGUPersistentMappingqHtqItqJQu. =>Œ((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqU»‰PNG  IHDR*º† pHYs  šœtIMEÔ + hïìZIDATxÚcüÿÿ_ôBB hi<3ßmE"ÀñuYàšð¨ƒXËQ‡ß ,È|+¹((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TF# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['rep_obj'][instid] #lieu=mem['parent'] # url_lieu=mem['parent_url'] obj=lieu[imgid] thumbnail=obj.thumbnail if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' # upload nouvelle image if not data or len(data.read())<=0: obj.manage_changeProperties(title=context.REQUEST.titre) obj.manage_changeProperties(description=context.REQUEST.description) obj.manage_changeProperties(affiche_titre=affiche_titre_change) obj.manage_changeProperties(affiche_description=affiche_description_change) else: dossier=lieu if imgid in dossier.objectIds(): dossier.manage_delObjects([imgid]) dossier.manage_addImage(imgid,data,context.REQUEST.titre) dossier[imgid].manage_addProperty('type_zwook','element','string') dossier[imgid].manage_addProperty('element','image','string') dossier[imgid].manage_addProperty('description',context.REQUEST.description,'lines') dossier[imgid].manage_addProperty('affiche_description',affiche_description_change,'string') dossier[imgid].manage_addProperty('affiche_titre',affiche_titre_change,'string') dossier[imgid].manage_addProperty('thumbnail',thumbnail,'int') # upload nouveau thumbnail if not thumb or len(thumb.read())<=0: a=1 else: dossierthumb=lieu['thumbnails'] if imgid in dossierthumb.objectIds(): dossierthumb.manage_delObjects([imgid]) dossierthumb.manage_addImage(imgid,thumb,obj.title) obj.manage_changeProperties(thumbnail=1) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q U_codeq TÍc@sddd„ZdS(Ns0cCs,tttdƒdƒƒ}tt|dƒ|ƒ} t| |ƒ} t| dƒ} t|dƒdjodSn| pt t|dƒƒƒd jo€t| d ƒd tttd ƒd ƒƒt| d ƒdtttd ƒdƒƒt| d ƒd|ƒt| d ƒd|ƒnC| }|t|dƒƒjot|dƒ|gƒnt|dƒ||tttd ƒd ƒƒtt||ƒdƒdddƒtt||ƒdƒdddƒtt||ƒdƒdtttd ƒdƒdƒtt||ƒdƒd|dƒtt||ƒdƒd|dƒtt||ƒdƒd| dƒ| pt t|dƒƒƒd jo d}n{t| dƒ}|t|dƒƒjot|dƒ|gƒnt|dƒ||t| d ƒƒt| d ƒddƒttttd ƒdƒdƒdƒdS(Nszwo_libs mem_mod_datasrep_objs thumbnailsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sreadismanage_changePropertiesstitlesREQUESTstitres descriptions affiche_titresaffiche_descriptions objectIdssmanage_delObjectssmanage_addImagesmanage_addPropertys type_zwookselementsstringsimageslinessints thumbnailssRESPONSEsredirects../../(s _getattr_scontextsmems _getitem_sinstidslieusimgidsobjs thumbnailsdataslensaffiche_titre_changesaffiche_description_changesdossiersthumbsas dossierthumb(sinstidsimgidsthumbsdatasaffiche_titre_changesaffiche_description_changes _getattr_scontextsmems _getitem_slieusobjs thumbnailslensdossiersas dossierthumb((sScript (Python)sedit_oks:*((.""4""' "(sedit_ok(sedit_ok((sScript (Python)ssq U func_defaultsq(U0U0tqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @âq(U Persistenceq UPersistentMappingq!tq"tq#QU__ac_local_roles__q$}q%Uxavq&]q'UOwnerq(asUidq)Uedit_okq*U_paramsq+UTinstid, imgid, thumb, data, affiche_titre_change='0', affiche_description_change='0'q,U func_codeq-(cShared.DC.Scripts.Signature FuncCode q.oq/}q0(U co_argcountq1KU co_varnamesq2(Uinstidq3Uimgidq4Uthumbq5Udataq6Uaffiche_titre_changeq7Uaffiche_description_changeq8U _getattr_q9Ucontextq:Umemq;U _getitem_qU thumbnailq?Ulenq@UdossierqAUaU dossierthumbqBtqCubu. >,Á((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tð# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] url_lieu=mem['parent_bo_url'] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId() print '' print '

Cet identifiant '+idobj+' est déja pris
' print 'Veuillez en choisir un autre
' print 'Redirection automatique dans 2 secondes.

' print 'Si la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) lieu[idobj].manage_addFolder('thumbnails','thumbnails') #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIETE en fonction du module #obj.manage_addProperty('exemple',exemple,'string') #obj.manage_addProperty('nom_propriete','valeur default',type) # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier choisi comme type uniquement) #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) context.REQUEST.RESPONSE.redirect('../../place?obj='+idobj) return q U_codeq TÈc@s d„ZdS(Nc Cs¿tƒ}tttdƒdƒƒ}t|dƒ}t|dƒ}t|dƒdjodSntttdƒdƒ|ƒ} | t|d ƒƒjoud tt d ƒƒ} |d | d IJ|d| dIJ|dIJ|dIJ|d| dIJ|dIJ|ƒSnt|dƒ| |ƒtt|| ƒdƒddƒt|| ƒ} t| dƒdddƒt| dƒdtt d ƒƒdƒttttdƒdƒdƒd| ƒdSdS(Nszwo_libs mem_mod_datasparents parent_bo_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopes objectIdss../ajout_element?type=sgetIds7s.

Cet identifiant s est déja pris
s"Veuillez en choisir un autre
s6Redirection automatique dans 2 secondes.

sGSi la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFolders thumbnailssmanage_addPropertys type_zwookselementsstringsREQUESTsRESPONSEsredirects../../place?obj=( s_print_s_prints _getattr_scontextsmems _getitem_slieusurl_lieustitresidobjs containersurlsobj( stitres_print_s_prints _getattr_scontextsmems _getitem_slieusurl_lieusidobjs containersurlsobj((sScript (Python)snew_oks,    + (snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @ãq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Ugregq%]q&UOwnerq'asUidq(Unew_okq)U_paramsq*Utitreq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Utitreq2U_print_q3U_printq4U _getattr_q5Ucontextq6Umemq7U _getitem_q8Ulieuq9Uurl_lieuq:Uidobjq;U containerqtq?ubu. >-((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T4mem=context.zwo_lib.mem_mod_data() from Products.PythonScripts.standard import newline_to_br n=int(n) lieu=mem['rep_obj'][instid] li=lieu.objectValues('Image') #obj=lieu[img] obj=li[n] num_img=lieu.num_img aff=[] aff.append(context.zwo_lib.standard_html_header(mem)) aff.append('') aff.append('') aff.append('') aff.append('') aff.append('
') aff.append('[ Sommaire ]

') if n>0: n1=str(n-1) aff.append('<< ') aff.append(str(n+1)+' / '+str(num_img)) if n>> ') aff.append('

') aff.append('
') aff.append(''+string.join(obj.description,'<p></p>')+'') aff.append('
') aff.append('

') aff.append(obj.title) aff.append('

') aff.append('
') aff.append(string.join(obj.description,'

')) aff.append('
') aff.append(context.zwo_lib.standard_html_footer(mem)) return ''.join(aff) q U_codeq T¸c@s d„ZdS(NcCsstttdƒdƒƒ}dkl}t|ƒ}tt|dƒ|ƒ} t| dƒdƒ} t| |ƒ} t| dƒ} g} t| dƒtttdƒd ƒ|ƒƒt| dƒd ƒt| dƒd ƒt| dƒd t|d ƒdƒ|djo7t|dƒ}t| dƒd|d|dƒnt| dƒt|dƒdt| ƒƒ|| djo7t|dƒ}t| dƒd|d|dƒnt| dƒdƒt| dƒdƒt| dƒd ƒt| dƒdt| dƒƒdtt| dƒƒdtt| dƒƒdttd ƒt| d!ƒdƒd"ƒt| dƒdƒt| dƒd ƒt| dƒd#ƒt| dƒt| d$ƒƒt| dƒd%ƒt| dƒdƒt| dƒd ƒt| dƒttd ƒt| d!ƒdƒƒt| dƒd&ƒt| dƒtttdƒd'ƒ|ƒƒtd(d ƒ| ƒSdS()Nszwo_libs mem_mod_data(s newline_to_brsrep_objs objectValuessImagesnum_imgsappendsstandard_html_headers?s$s s���joins���descriptions���s

stitles

s
s[ Sommaire ]

iis << s / s >> s

s
sstandard_html_footers(s _getattr_scontextsmemsProducts.PythonScripts.standards newline_to_brsintsns _getitem_sinstidslieuslisobjsnum_imgsaffsstrsn1sn2sstring(sinstidsns _getattr_scontextsmemsProducts.PythonScripts.standards newline_to_brsints _getitem_slieuslisobjsnum_imgsaffsstrsn1sn2sstring((sScript (Python)sview_imgsB   +! '('x.((sview_img(sview_img((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqU config_zwookqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerq usbU__ac_local_roles__q!}q"Uadminq#]q$UOwnerq%asUidq&Uview_imgq'U_paramsq(U instid, nq)U func_codeq*(cShared.DC.Scripts.Signature FuncCode q+oq,}q-(U co_argcountq.KU co_varnamesq/(Uinstidq0UnU _getattr_q1Ucontextq2Umemq3UProducts.PythonScripts.standardq4U newline_to_brq5Uintq6U _getitem_q7Ulieuq8Uliq9Uobjq:Unum_imgq;UaffqUn2q?Ustringq@tqAubu. >.š((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tà instid=instance.getId() lieu=mem['rep_obj'][instid] lieuthumb=instance['thumbnails'] typemod=container.getId() #affichage du module : aff=[] if mem['droit_edit_dossier']==1: aff.append('
') aff.append('[ Ajouter une image ]') aff.append('


') w_line=4 li=instance.objectValues('Image') if len(li)>0: aff.append('\n') #~boucle affichage des images last_line=0 n=0 for img in li: affiche_titre,affiche_description=1,1 if img.hasProperty('affiche_titre'): affiche_titre=img.affiche_titre else: img.manage_addProperty('affiche_titre',affiche_titre,'string') if img.hasProperty('affiche_description'): affiche_description=img.affiche_description else: img.manage_addProperty('affiche_description',affiche_description,'string') idobj=img.getId() if img.thumbnail==1 and idobj in lieuthumb.objectIds(): # s'il y a un thumbnail imgthumb = lieuthumb[idobj] wimg=imgthumb.width himg=imgthumb.height else: # s'il n'y a pas de thumbnail imgthumb = img wimg=105 himg=105 if imgthumb.width<105: wimg=imgthumb.width if imgthumb.height<105: himg=imgthumb.height if imgthumb.content_type=='image/jpeg' or imgthumb.content_type=='image/gif' or imgthumb.content_type=='image/png': if n==last_line: aff.append('\n') aff.append('\n') aff.append('\n') n=n+1 if n>last_line+w_line: aff.append('\n') aff.append('\n') aff.append('') last_line=n aff.append('
\n') aff.append('') aff.append('') aff.append('
') aff.append('') aff.append('') if mem['droit_edit_dossier']==1: aff.append('
\n') aff.append(idobj+'
'+str(imgthumb.width)+'x'+str(imgthumb.height)) aff.append('
Editer ]') aff.append('
Effacer ]') if img.affiche_titre=='1': aff.append('
') aff.append('

') aff.append(img.title) aff.append('

') if img.affiche_description=='1': aff.append('
') #aff.append('') aff.append(string.join(img.description,'
')) #aff.append('
') aff.append('
') aff.append('

\n') return ''.join(aff) q U_codeq T&c@s d„ZdS(Nc1Cst|dƒƒ}tt|dƒ|ƒ}t|dƒ}ttdƒƒ}g} t|dƒdjoMt| dƒdƒt| dƒd|d |d ƒt| dƒd ƒnd } t|d ƒdƒ} t | ƒdjot| dƒdƒd} d}xÖt| ƒD]È}ddftƒ\}}t|dƒdƒot|dƒ}nt|dƒd|dƒt|dƒdƒot|dƒ}nt|dƒd|dƒt|dƒƒ}t|dƒdjo|t|dƒƒjo1t||ƒ}t|dƒ}t|dƒ}ne|}d}d}t|dƒdjot|dƒ}nt|dƒdjot|dƒ}nt|dƒdjp)t|dƒdjpt|dƒdjo || jo*t| dƒdƒt| dƒd ƒnt| dƒd!ƒt| dƒd"ƒt| dƒd#|d$|d%t|ƒd&ƒt| dƒd't|d(ƒƒd)t|ƒd*t|ƒd+ƒt|dƒdjo®t| dƒd,ƒt| dƒ|d-tt|dƒƒd.tt|dƒƒƒt| dƒd/|d0|d1|d2ƒt| dƒd/|d3|d1|d4ƒnt|dƒd5jolt| dƒd6ƒt| dƒd7ƒt| dƒd8ƒt| dƒt|d9ƒƒt| dƒd:ƒnt|dƒd5joXt| dƒd6ƒt| dƒd7ƒt| dƒttd;ƒt|d<ƒd-ƒƒnt| dƒd=ƒt| dƒd>ƒ|d}|| | joCt| dƒd?ƒt| dƒd@ƒt| dƒdAƒ|} qÖqqWt| dƒdBƒntdCd;ƒ| ƒSdS(DNsgetIdsrep_objs thumbnailssdroit_edit_dossierisappends

is objectValuessImageis@ s hasPropertys affiche_titresmanage_addPropertysstringsaffiche_descriptions thumbnails objectIdsswidthsheightiis content_types image/jpegs image/gifs image/pngs s6 s! s s6 ss
sƒs$
ss s2
s
sxs"
Editer ]s /del_img?img=s">Effacer ]s1s
s

stitles

sjoins descriptions
s

s(s _getattr_sinstancesinstids _getitem_smemslieus lieuthumbs containerstypemodsaffsw_lineslislens last_linesns _getiter_simgs affiche_titresaffiche_descriptionsidobjsimgthumbswimgshimgsstrsstring(smemsinstances _getattr_sinstids _getitem_slieus lieuthumbs containerstypemodsaffsw_lineslislens last_linesns _getiter_simgs affiche_titresaffiche_descriptionsidobjsimgthumbswimgshimgsstrsstring((sScript (Python)s view_htmlsˆ# ,?1@A+,2 (s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @äq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U view_htmlq)U_paramsq*U mem,instanceq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Uinstanceq3U _getattr_q4Uinstidq5U _getitem_q6Ulieuq7U lieuthumbq8U containerq9Utypemodq:Uaffq;Uw_lineqU last_lineq?UnU _getiter_q@UimgqAU affiche_titreqBUaffiche_descriptionqCUidobjqDUimgthumbqEUwimgqFUhimgqGUstrqHUstringqItqJubu. >/~((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÊmem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if not data: return 'Pas de fichier indiqué !' if len(data.read())<=0: return 'Pas de fichier indiqué !' titre_data='' if hasattr(data,'filename'): filename=data.filename titre_data=filename[max(string.rfind(filename, '/'), string.rfind(filename, '\\'), string.rfind(filename, ':'), )+1:] id_data=context.zwo_lib.mix_id_zope(titre_data) idobj=context.zwo_lib.mix_id_zope(titre) if idobj=='': idobj=id_data dossier=mem['rep_obj'][instid] while idobj in dossier.objectIds(): idobj='new_'+idobj dossier.manage_addImage(idobj,data,titre) obj=dossier[idobj] # thumbnails if not thumb or len(thumb.read())<=0: obj.manage_addProperty('thumbnail',0,'int') else: titre_thumb=idobj idobjthumb=context.zwo_lib.mix_id_zope(titre_thumb) dossierthumb=mem['rep_obj'][instid]['thumbnails'] if idobjthumb in dossierthumb.objectIds(): dossierthumb.manage_delObjects([idobjthumb]) dossierthumb.manage_addImage(idobjthumb,thumb,titre_thumb) obj.manage_addProperty('thumbnail',1,'int') obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element','image','string') obj.manage_addProperty('description',description,'lines') obj.manage_addProperty('affiche_description',affiche_description,'string') obj.manage_addProperty('affiche_titre',affiche_titre,'string') #compteur global if not dossier.hasProperty('num_img'): dossier.manage_addProperty('num_img',0,'int') n2=dossier.num_img+1 dossier.manage_changeProperties(num_img=n2) rurl=mem['rep_url'] context.REQUEST.RESPONSE.redirect(rurl) return q U_codeq T´ c@sddd„ZdS(Nsc*Cs¶tttdƒdƒƒ} t| dƒdjodSn| odSntt|dƒƒƒdjodSnd } t|d ƒont|d ƒ}t|t tt d ƒ|d ƒtt d ƒ|d ƒtt d ƒ|dƒƒdd…ƒ} ntttdƒdƒ| ƒ}tttdƒdƒ|ƒ}|d jo |}ntt| dƒ|ƒ}x(|t|dƒƒjod|}qbWt|dƒ|||ƒt||ƒ}| ptt|dƒƒƒdjot|dƒdddƒn«|}tttdƒdƒ|ƒ}ttt| dƒ|ƒdƒ}|t|dƒƒjot|dƒ|gƒnt|dƒ|||ƒt|dƒdddƒt|dƒdddƒt|dƒdddƒt|dƒd|dƒt|dƒd|dƒt|dƒd |dƒt|d!ƒd"ƒ ot|dƒd"ddƒnt|d"ƒd}t|d#ƒd"|ƒt| d$ƒ}ttttd%ƒd&ƒd'ƒ|ƒdSdS((Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sPas de fichier indiqué !sreadissfilenamesrfinds/s\s:s mix_id_zopesrep_objs objectIdssnew_smanage_addImagesmanage_addPropertys thumbnailsints thumbnailssmanage_delObjectss type_zwookselementsstringsimages descriptionslinessaffiche_descriptions affiche_titres hasPropertysnum_imgsmanage_changePropertiessrep_urlsREQUESTsRESPONSEsredirect(s _getattr_scontextsmems _getitem_sdataslens titre_datashasattrsfilenamesmaxsstringsid_datastitresidobjsinstidsdossiersobjsthumbs titre_thumbs idobjthumbs dossierthumbs descriptionsaffiche_descriptions affiche_titresn2srurl(stitresinstidsthumbsdatas descriptions affiche_titresaffiche_descriptions _getattr_scontextsmems _getitem_slens titre_datashasattrsfilenamesmaxsstringsid_datasidobjsdossiersobjs titre_thumbs idobjthumbs dossierthumbsn2srurl((sScript (Python)s add_image_oksV!)  *!(s add_image_ok(s add_image_ok((sScript (Python)ssq U func_defaultsq(UNtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq }q!(U co_argcountq"KU co_varnamesq#(Utitreq$Uinstidq%Uthumbq&Udataq'U descriptionq(U affiche_titreq)Uaffiche_descriptionq*U _getattr_q+Ucontextq,Umemq-U _getitem_q.Ulenq/U titre_dataq0Uhasattrq1Ufilenameq2Umaxq3Ustringq4Uid_dataq5Uidobjq6Udossierq7Uobjq8U titre_thumbq9U idobjthumbq:U dossierthumbq;Un2qubU__ac_local_roles__q?}q@UxavqA]qBUOwnerqCasUidqDU add_image_okqEU_paramsqFUNtitre, instid, thumb, data, description='', affiche_titre, affiche_descriptionqGU_dav_writelocksqH(U @åqI(U PersistenceqJUPersistentMappingqKtqLtqMQu. >1ø((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T# RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() # EXEMPLE FORMULAIRE EDITION print '
' print 'Identifiant : '+instance.title+'

' print '' # Personalisation Formulaire #print 'Propriété :

' print 'Pas de config' # Fin Formulaire #print '' print '


' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMEDAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' return printed q U_codeq Tùc@s d„ZdS(NcCs…tƒ}ttdƒƒ}|d|dIJ|dt|dƒdIJ|dt|dƒƒdIJ|d IJ|d IJ|ƒSdS( NsgetIds(
sIdentifiant : stitles

s)s Pas de configs


(s_print_s_prints _getattr_s containerstypemodsinstance(smemsrepsinstances_print_s_prints _getattr_s containerstypemod((sScript (Python)s config_htmls   (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Urepq$Uinstanceq%U_print_q&U_printq'U _getattr_q(U containerq)Utypemodq*tq+ubU__ac_local_roles__q,}q-Uxavq.]q/UOwnerq0asUidq1U config_htmlq2U_paramsq3Umem, rep, instanceq4U_dav_writelocksq5(U @çq6(U Persistenceq7UPersistentMappingq8tq9tq:Qu. >2 ›((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T8# typemod est l'id du module et namemod est son title typemod=container.getId() namemod=container.title_or_id() # proposition de nom pour l'element exemple_titre_base=namemod exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) # debut formulaire HTML simple de création d'element print '
' print '' print 'Identifiant :

' # partie specifique à ce module #print '
EXEMPLE
' # suite standart print '' print '
' return printed q U_codeq T:c@s d„ZdS(Nc CsÍt}tƒ}|tdƒƒ}|tdƒƒ}|} | } d} x8| ||dƒƒjo| d} | t | ƒ} qHW|d|dIJ|dIJ|d | d IJ|d IJ|d IJ|ƒSdS( NsgetIds title_or_idis objectIdsis(
ss?Identifiant :

s0s
( s _getattr_s_getattrs_print_s_prints containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstr( smemsdossiers _getattr_s_getattrs_print_s_prints containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmls    (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @èq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_htmlq)U_paramsq*U mem,dossierq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_varnamesq0(Umemq1Udossierq2U _getattr_q3U_getattrq4U_print_q5U_printq6U containerq7Utypemodq8Unamemodq9Uexemple_titre_baseq:U exemple_titreq;UindiceqU co_argcountq?Kubu. >3ß((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T$mem=context.zwo_lib.mem_mod_data() lieu=mem['rep_obj'][instid] lieu.manage_delObjects([img]) if img in lieu['thumbnails'].objectIds(): lieu['thumbnails'].manage_delObjects([img]) n2=lieu.num_img-1 lieu.manage_changeProperties(num_img=n2) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q U_codeq T0c@s d„ZdS(Nc Csétttdƒdƒƒ}tt|dƒ|ƒ}t|dƒ|gƒ|tt|dƒdƒƒjo#tt|dƒdƒ|gƒnt|dƒd}t|d ƒd|ƒttttd ƒd ƒd ƒt|d ƒƒdS(Nszwo_libs mem_mod_datasrep_objsmanage_delObjectss thumbnailss objectIdssnum_imgismanage_changePropertiessREQUESTsRESPONSEsredirectsrep_url(s _getattr_scontextsmems _getitem_sinstidslieusimgsn2(sinstidsimgs _getattr_scontextsmems _getitem_slieusn2((sScript (Python)sdel_imgs((sdel_img(sdel_img((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUp4q]q UOwnerq!asUidq"Udel_imgq#U_paramsq$U instid, imgq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Uinstidq,Uimgq-U _getattr_q.Ucontextq/Umemq0U _getitem_q1Ulieuq2Un2q3tq4ubu. >4&((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÆmem=context.zwo_lib.mem_mod_data() if not mem['droit_edit_dossier']==1: return 'Vous n\'avez pas le droit d\'ajouter un photo' #affichage du module : aff=[] aff.append(context.zwo_lib.standard_html_header(mem)) #choix du nom proposé par default aff.append('
') aff.append('') aff.append('') aff.append('') aff.append('') aff.append('
') aff.append('Image : ') aff.append('') aff.append('') aff.append('
') aff.append('Thumbnail (petite image) * : ') aff.append('') aff.append('') aff.append('
') aff.append('Titre * : ') aff.append('') aff.append(' ') aff.append('
') aff.append('Description (alt) * : ') aff.append('') aff.append('') aff.append('

') aff.append('') aff.append(' Afficher le titre sous l\'image dans la page album (là où apparaissent toutes les images ensembles)
') aff.append('') aff.append(' Afficher la description sous l\'image dans la page album

') aff.append('* champ optionnel

Si on ne crée pas de thumbnail, l\'image est automatiquement affichée a la taille de 105x105 pixels (max) dans la page "sommaire" (mais garde le même poids, ce qui n\'est pas génial...)

Si vous laissez le titre vide, c\'est le nom du fichier image qui deviendra le titre.

') aff.append('') aff.append('') aff.append('
') aff.append(context.zwo_lib.standard_html_footer(mem)) return ''.join(aff) q U_codeq T™ c@s d„ZdS(Nc Csïtttdƒdƒƒ}t|dƒdj odSng}t|dƒtttdƒdƒ|ƒƒt|dƒdƒt|dƒd ƒt|dƒd ƒt|dƒd ƒt|dƒd ƒt|dƒd ƒt|dƒdƒt|dƒd ƒt|dƒdƒt|dƒd ƒt|dƒdƒt|dƒdƒt|dƒd ƒt|dƒdƒt|dƒd ƒt|dƒdƒt|dƒdƒt|dƒd ƒt|dƒdƒt|dƒd ƒt|dƒdƒt|dƒdƒt|dƒdƒt|dƒdƒt|dƒdƒt|dƒdƒt|dƒdƒt|dƒd|dƒt|dƒdƒt|dƒdƒt|dƒtttdƒd ƒ|ƒƒtd!d"ƒ|ƒSdS(#Nszwo_libs mem_mod_datasdroit_edit_dossieris+Vous n'avez pas le droit d'ajouter un photosappendsstandard_html_headersH
s2s#sThumbnail (petite image) * : s s s Titre * : sKsDescription (alt) * : s;s
sImage : s#ss

s>sx Afficher le titre sous l'image dans la page album (là où apparaissent toutes les images ensembles)
sDsD Afficher la description sous l'image dans la page album

s;* champ optionnel

Si on ne crée pas de thumbnail, l'image est automatiquement affichée a la taille de 105x105 pixels (max) dans la page "sommaire" (mais garde le même poids, ce qui n'est pas génial...)

Si vous laissez le titre vide, c'est le nom du fichier image qui deviendra le titre.

s*s1s
sstandard_html_footerssjoin(s _getattr_scontextsmems _getitem_saffsinstid(sinstids _getattr_scontextsmems _getitem_saff((sScript (Python)s add_imagesH +((s add_image(s add_image((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @éq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U add_imageq)U_paramsq*Uinstidq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Uinstidq2U _getattr_q3Ucontextq4Umemq5U _getitem_q6Uaffq7tq8ubu. >0 <((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tx mem=context.zwo_lib.mem_mod_data() lieu=mem['rep_obj'][instid] instance=lieu[img] if img in lieu['thumbnails'].objectIds(): thumb=lieu['thumbnails'][img] else: thumb=0 # RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() # VERIF DES DROITS :# if not mem['droit_edit_dossier']==1: return 'Vous n\'avez pas le droit d\'ajouter un photo' #affichage du module : aff=[] aff.append(context.zwo_lib.standard_html_header(mem)) #Formulaire aff.append('
') aff.append('') aff.append('') aff.append('') if thumb: aff.append('') aff.append('') aff.append('') aff.append('
') aff.append(''+string.join(instance.description,'<br />')+'') aff.append('
') aff.append('Modifier l\'image : ') aff.append('') aff.append('') aff.append('
') aff.append(''+string.join(instance.description,'<br />')+'') aff.append('
') aff.append('Modifier le thumbnail : ') else: aff.append('
') aff.append('Ajouter un thumbnail : ') aff.append('') aff.append('') aff.append('
') aff.append('Titre : ') aff.append('') aff.append(' ') aff.append('
') aff.append('Description (alt) : ') aff.append('') message='' fst=1 for l in instance.description: if fst==1: fst=0 else: message=message+'\n' message=message+l message=string.replace(message,'<','<') aff.append('') aff.append('

') aff.append('') aff.append(' Afficher le titre sous l\'image dans la page album (là où apparaissent toutes les images ensembles)
') aff.append('') aff.append(' Afficher la description sous l\'image dans la page album

') aff.append('* Aucun champ n\'est obligatoire.

') aff.append('') aff.append('') aff.append('') aff.append('
') aff.append(context.zwo_lib.standard_html_footer(mem)) return ''.join(aff) # EXEMPLE DE LIENS VERS UN SCRIPT INTERMEDAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' q U_codeq TŠc@s d„ZdS(Nc"Cs tttdƒdƒƒ}tt|dƒ|ƒ}t||ƒ}|tt|dƒdƒƒjott|dƒ|ƒ}nd}tt dƒƒ} t|dƒd j od Sng} t| d ƒtttdƒd ƒ|ƒƒt| d ƒd ƒt| d ƒdƒt| d ƒdƒt| d ƒdt|dƒƒdt t|dƒƒdt t|dƒƒdtt dƒt|dƒdƒdƒt| d ƒdƒt| d ƒdƒt| d ƒdƒt| d ƒdƒt| d ƒdƒt| d ƒd ƒ|oÈt| d ƒdƒt| d ƒdt|dƒƒdt t|dƒƒdt t|dƒƒdtt dƒt|dƒdƒdƒt| d ƒdƒt| d ƒdƒt| d ƒd!ƒn't| d ƒdƒt| d ƒd"ƒt| d ƒdƒt| d ƒd#ƒt| d ƒdƒt| d ƒdƒt| d ƒd$ƒt| d ƒdƒt| d ƒd%t|d&ƒd'ƒt| d ƒd ƒt| d ƒdƒt| d ƒd(ƒt| d ƒdƒd)}d }xHtt|dƒƒD]1}|d jo d}n |d*}||}qWtt d+ƒ|d,d-ƒ}t| d ƒd.|d/ƒt| d ƒd0ƒt| d ƒd1ƒt|d2ƒd3jot| d ƒd4ƒnt| d ƒd5ƒt| d ƒd6ƒt| d ƒd7ƒt|d8ƒd3jot| d ƒd4ƒnt| d ƒd5ƒt| d ƒd9ƒt| d ƒd:ƒt| d ƒd;t|dƒƒd<ƒt| d ƒd=|d<ƒt| d ƒd>ƒt| d ƒd?ƒt| d ƒtttdƒd@ƒ|ƒƒtd)dƒ| ƒSdS(ANszwo_libs mem_mod_datasrep_objs thumbnailss objectIdsisgetIdsdroit_edit_dossieris+Vous n'avez pas le droit d'ajouter un photosappendsstandard_html_headersC
s2s!s#sModifier le thumbnail : sAjouter un thumbnail : s sTitre : s1sDescription (alt) : ss sreplacess s
s s���joins���descriptions���<br />s���s
sModifier l'image : s#ss

s<sx Afficher le titre sous l'image dans la page album (là où apparaissent toutes les images ensembles)
sB
s3* Aucun champ n'est obligatoire.

s)s*s
sstandard_html_footer(s _getattr_scontextsmems _getitem_sinstidslieusimgsinstancesthumbs containerstypemodsaffsstrsstringsmessagesfsts _getiter_sl(sinstidsimgs _getattr_scontextsmems _getitem_slieusinstancesthumbs containerstypemodsaffsstrsstringsmessagesfsts _getiter_sl((sScript (Python)s edit_htmls†" +x x$   '((s edit_html(s edit_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Uinstidq#Uimgq$U _getattr_q%Ucontextq&Umemq'U _getitem_q(Ulieuq)Uinstanceq*Uthumbq+U containerq,Utypemodq-Uaffq.Ustrq/Ustringq0Umessageq1Ufstq2U _getiter_q3Ultq4ubU__ac_local_roles__q5}q6Uxavq7]q8UOwnerq9asUidq:U edit_htmlq;U_paramsq(U @æq?(U Persistenceq@UPersistentMappingqAtqBtqCQu. >5•((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUjamesq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/pngqU__name__qU icone.pngqUdataqUÁ‰PNG  IHDRb&ÅB PLTEÿÿÿ™ÌA—<¹tRNS@æØfbKGDˆH pHYs  šœtIMEÔ Ó8C1IDATxÚcÐZµªaÕªU –††.`X¶j%2± DL ³2a‚»*sêË „,è¶IEND®B`‚qUsizeqKÁu. =?'ß((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tòprint 'Sommaire aide texte :

' print ' - Mise en forme du texte
' print ' - Texte, Texte non formaté et HTML
' print ' - Mise en forme du texte : Options Complexes
' print '
' print '' print '' print 'Mise en forme du texte

' print '' print 'Pour écrire en gras, utiliser la syntaxe : texte en **gras*
' print 'Cela donne : texte en gras

' print 'Pour écrire en italique, utiliser la syntaxe : texte en ^^italique^
' print 'Cela donne : texte en italique

' print 'Pour écrire en un peu plus gros, utiliser la syntaxe : texte en ++gros+
' print 'Cela donne : texte en Gros

' print 'Pour écrire en un peu plus petit, utiliser la syntaxe : texte en --petit-
' print 'Cela donne : texte en Petit

' print '


' print '' print '' print 'Texte, Texte non formaté et HTML

' print '' print 'Le type Texte est le type par default il permet les mise en forme spéciale et les options avancées.

' print 'Le type Texte non formaté est réservé à ceux qui veulent respecter les indentations... Par exemple pour afficher des scripts python... Mais attention, tous les espaces deviennent insécables.

' print 'Le type HTML est prévu pour inclure un script HTML, réservé au webmaster confirmé.

' print '


' print '' print '' print 'Mise en forme du texte : Options Complexes

' print 'Pour centrer un paragraphe :
syntaxe : $CENTexte a centrer$CE
' print 'Cela donne :
Texte a centrer


' print 'Pour changer la couleur d\'une partie de texte :
syntaxe : $COL#FF0000$couleur rvb ff0000$CO
' print 'Cela donne : couleur rvb ff0000

' print 'Pour changer la taille d\'une partie de texte :
syntaxe : $SIZ+2$taille +2$SI
' print 'Cela donne : taille +2

' print 'Pour changer la police de caractères d\'une partie de texte :
syntaxe : $FAC#courier$Police Proportionnelle$FA
' print 'Cela donne : Police Proportionnelle

' print 'Pour faire un lien :
syntaxe $LNKhttp://www.zwook.com$le site zwook$LN
' print 'Cela donne : le site zwook

' print 'Pour integrer une image déja existante :
syntaxe : $IMGhttp://www.emencia.com/fr/images/interface/logo.gif$IM
' print 'Cela donne :

' print '

' """ print 'Pour faire un lien écrire : ceci est {un lien vers Zwook.com:url:http://www.zwook.com}
' print 'Cela donne : ceci est un lien vers Zwook.com

' print 'Pour une adresse email écrire : ceci est une {addresse@exemple.com":mail:addresse@exemple.com}
' print 'Cela donne : ceci est addresse@exemple.com

' print 'Pour une image écrire : {Mon image:img:zwo_info/images/avatar/0.gif}
' print 'Cela donne : Mon image

' """ """ print 'Pour une annotation écrire :
Ici je vais renvoyer vers une annotation [1]
' print 'Ecrire ensuite ici la suite du texte
' print 'Pour la note de bas de page écrire :
.. [1] Ma note. Les deux points (..) suivis d\'un espace puis d\'un texte en crochets génére le point d\'ancrage.
' print 'Cela donne :
Ici je vais renvoyer vers une annotation [1]
' print 'Ecrire ensuite ici la suite du texte
' print '[1] Ma note. Les deux points (..) suivis d\'un espace puis d\'un texte en crochets génére le point d\'ancrage.

' """ return printed q U_codeq TZc@s d„ZdS(Nc€CsÀtƒ}|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|d IJ|d IJ|d IJ|d IJ|d IJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|d IJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|d IJ|d!IJ|d"IJ|d#IJ|d$IJ|d%IJ|dIJd&d'|ƒSdS((NsRSommaire aide texte :

sJ - Mise en forme du texte
sT - Texte, Texte non formaté et HTML
s^ - Mise en forme du texte : Options Complexes
s
ssCsSMise en forme du texte

ssAPour écrire en gras, utiliser la syntaxe : texte en **gras*
s-Cela donne : texte en gras

sIPour écrire en italique, utiliser la syntaxe : texte en ^^italique^
s1Cela donne : texte en italique

sMPour écrire en un peu plus gros, utiliser la syntaxe : texte en ++gros+
s=Cela donne : texte en Gros

sOPour écrire en un peu plus petit, utiliser la syntaxe : texte en --petit-
s>Cela donne : texte en Petit

s


ss]Texte, Texte non formaté et HTML

svLe type Texte est le type par default il permet les mise en forme spéciale et les options avancées.

sÑLe type Texte non formaté est réservé à ceux qui veulent respecter les indentations... Par exemple pour afficher des scripts python... Mais attention, tous les espaces deviennent insécables.

seLe type HTML est prévu pour inclure un script HTML, réservé au webmaster confirmé.

ssgMise en forme du texte : Options Complexes

sIPour centrer un paragraphe :
syntaxe : $CENTexte a centrer$CE
s9Cela donne :
Texte a centrer


sgPour changer la couleur d'une partie de texte :
syntaxe : $COL#FF0000$couleur rvb ff0000$CO
sHCela donne : couleur rvb ff0000

sXPour changer la taille d'une partie de texte :
syntaxe : $SIZ+2$taille +2$SI
s9Cela donne : taille +2

syPour changer la police de caractères d'une partie de texte :
syntaxe : $FAC#courier$Police Proportionnelle$FA
sKCela donne : Police Proportionnelle

sRPour faire un lien :
syntaxe $LNKhttp://www.zwook.com$le site zwook$LN
sICela donne : le site zwook

syPour integrer une image déja existante :
syntaxe : $IMGhttp://www.emencia.com/fr/images/interface/logo.gif$IM
stCela donne :

s[ print 'Pour faire un lien écrire : ceci est {un lien vers Zwook.com:url:http://www.zwook.com}
' print 'Cela donne : ceci est un lien vers Zwook.com

' print 'Pour une adresse email écrire : ceci est une {addresse@exemple.com":mail:addresse@exemple.com}
' print 'Cela donne : ceci est addresse@exemple.com

' print 'Pour une image écrire : {Mon image:img:zwo_info/images/avatar/0.gif}
' print 'Cela donne : Mon image

' s] print 'Pour une annotation écrire :
Ici je vais renvoyer vers une annotation [1]
' print 'Ecrire ensuite ici la suite du texte
' print 'Pour la note de bas de page écrire :
.. [1] Ma note. Les deux points (..) suivis d'un espace puis d'un texte en crochets génére le point d'ancrage.
' print 'Cela donne :
Ici je vais renvoyer vers une annotation [1]
' print 'Ecrire ensuite ici la suite du texte
' print '[1] Ma note. Les deux points (..) suivis d'un espace puis d'un texte en crochets génére le point d'ancrage.

' (s_print_s_print(s_print_s_print((sScript (Python)shelpsX                                         (shelp(shelp((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_varnamesq!(U_print_q"U_printq#tq$U co_argcountq%KubU__ac_local_roles__q&}q'Ugregq(]q)UOwnerq*asUidq+Uhelpq,U_paramsq-UU_dav_writelocksq.(U @4q/(U Persistenceq0UPersistentMappingq1tq2tq3Qu. =@ =((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TËmem=context.zwo_lib.mem_mod_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' urlt=mem['rep_url']+'/zwo_modules/text_epoz/toolbox' from Products.PythonScripts.standard import url_quote message='L\'image \''+ id +'\' a été effacée' lieu=mem['rep_obj'][idobj] lieu.image.manage_delObjects([id]) return context.REQUEST.RESPONSE.redirect("%s?message=%s&idobj=%s" % (urlt, url_quote(message),url_quote(idobj))) q U_codeq T2c@sdd„ZdS(Nsnulc Csàtttdƒdƒƒ}t|dƒdjodSnt|dƒd}dkl}d |d } tt|d ƒ|ƒ} tt| d ƒd ƒ|gƒttttdƒdƒdƒd||| ƒ||ƒfƒSdS(Nszwo_libs mem_mod_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !srep_urls/zwo_modules/text_epoz/toolbox(s url_quotes L'image 's' a été effacéesrep_objsimagesmanage_delObjectssREQUESTsRESPONSEsredirects%s?message=%s&idobj=%s( s _getattr_scontextsmems _getitem_surltsProducts.PythonScripts.standards url_quotesidsmessagesidobjslieu( sidsidobjs _getattr_scontextsmems _getitem_surltsProducts.PythonScripts.standards url_quotesmessageslieu((sScript (Python)sdelfiles (sdelfile(sdelfile((sScript (Python)ssq U func_defaultsq(UnulqtqU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextq Ucontextq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Uidq(Uidobjq)U _getattr_q*Ucontextq+Umemq,U _getitem_q-Uurltq.UProducts.PythonScripts.standardq/U url_quoteq0Umessageq1Ulieuq2tq3ubU__ac_local_roles__q4}q5Ugregq6]q7UOwnerq8asUidq9Udelfileq:U_paramsq;Uid,idobj='nul'q(U Persistenceq?UPersistentMappingq@tqAtqBQu. =A*((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T”""" Adds a file to the library. """ mem=context.zwo_lib.mem_mod_data() lieu=mem['rep_obj'][idobj] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' urlt=mem['rep_url']+'/zwo_modules/text_epoz/toolbox' from Products.PythonScripts.standard import url_quote if file.filename=='': message="il n'y a pas de fichier" return context.REQUEST.RESPONSE.redirect("%s?message=%s&idobj=%s" % (urlt, url_quote(message),url_quote(idobj))) if titre == '': titre=file.filename idimg=context.zwo_lib.mix_id_zope(file.filename) if idimg in lieu.image.objectIds(): message='L\' image \''+idimg+'\' est déjà dans le répertoire' return context.REQUEST.RESPONSE.redirect("%s?message=%s&idobj=%s" % (urlt, url_quote(message),url_quote(idobj))) # create the file lieu.image.manage_addProduct['OFSP'].manage_addImage(id=idimg, title=titre, file=file) # create a success message message="Fichier '%s' Enregistré" % file.filename # redirect to main page - this is necessary to make all the URLs # on the main page work correctly. return context.REQUEST.RESPONSE.redirect("%s?message=%s&idobj=%s" % (urlt, url_quote(message),url_quote(idobj))) q U_codeq TYc@s d„ZdS(NcCstttdƒdƒƒ}tt|dƒ|ƒ}t|dƒdjodSnt|dƒd} d kl} t|d ƒd joHd } ttttd ƒdƒdƒd| | | ƒ| |ƒfƒSn|d jot|d ƒ}ntttdƒdƒt|d ƒƒ} | tt|dƒdƒƒjoPd| d} ttttd ƒdƒdƒd| | | ƒ| |ƒfƒSntttt|dƒdƒdƒdƒd| d|d|ƒdt|d ƒ} ttttd ƒdƒdƒd| | | ƒ| |ƒfƒSdS(Nszwo_libs mem_mod_datasrep_objsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !srep_urls/zwo_modules/text_epoz/toolbox(s url_quotesfilenamessil n'y a pas de fichiersREQUESTsRESPONSEsredirects%s?message=%s&idobj=%ss mix_id_zopesimages objectIdss L' image 's' est déjà dans le répertoiresmanage_addProductsOFSPsmanage_addImagesidstitlesfilesFichier '%s' Enregistré( s _getattr_scontextsmems _getitem_sidobjslieusurltsProducts.PythonScripts.standards url_quotesfilesmessagestitresidimg(sidentstitresfilesidobjs _getattr_scontextsmems _getitem_slieusurltsProducts.PythonScripts.standards url_quotesmessagesidimg((sScript (Python)saddfiles$ B '"N1(saddfile(saddfile((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Uidentq#Utitreq$Ufileq%Uidobjq&U _getattr_q'Ucontextq(Umemq)U _getitem_q*Ulieuq+Uurltq,UProducts.PythonScripts.standardq-U url_quoteq.Umessageq/Uidimgq0tq1ubU__ac_local_roles__q2}q3Uadminq4]q5UOwnerq6asUidq7Uaddfileq8U_paramsq9Uident,titre,file,idobjq:U_dav_writelocksq;(U @6q<(U Persistenceq=UPersistentMappingq>tq?tq@Qu. =B·((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T|mem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] obj=skin[nom_ins] else: dossier=mem['rep_obj'] obj=dossier[nom_ins] idinstance=obj.getId() def doublereplaceefface(chaine,init,clos,txtav,txtap): a=string.split(chaine,init) result=a[0] if len(a)>1: for i in range(len(a)-1): j=i+1 if string.find(a[j],clos)<>-1: b=string.split(a[j],clos,1) fileap=string.split(b[0],'/') result=result+txtav+str(fileap[len(fileap)-1])+txtap+b[1] else: result=result+a[j] return result data=doublereplaceefface(data,'src="','"','src="'+idinstance+'/image/','"') obj.manage_changeProperties(format=format) obj.document.manage_edit(data,obj.document.title) if obj.hasProperty('utilisateur'): #~filtre anti aqueur ! utilisateur=string.replace(utilisateur,'>','>') utilisateur=string.replace(utilisateur,'<','<') obj.manage_changeProperties(utilisateur=utilisateur) else: #~filtre anti aqueur ! utilisateur=string.replace(utilisateur,'>','>') utilisateur=string.replace(utilisateur,'<','<') obj.manage_addProperty('utilisateur',utilisateur,'string') if obj.hasProperty('rapidedit'): if rapidedit=='non': obj.manage_changeProperties(rapidedit='0') else: obj.manage_changeProperties(rapidedit='1') else: if rapidedit=='non': obj.manage_addProperty('rapidedit','0','string') else: obj.manage_addProperty('rapidedit','1','string') context.REQUEST.RESPONSE.redirect('../../index_html?nom='+nom_rep+'&popup=1') q U_codeq T€ c@sddd„ZdS(NsnonscCsštttdƒdƒƒ} t| dƒdjodSn|djo4ttttdƒdƒ|ƒ} t| |ƒ} nt| d ƒ} t| |ƒ} t| d ƒƒ}d „}||d d d |dd ƒ}t| dƒd|ƒtt| dƒdƒ|tt| dƒdƒƒt| dƒdƒoPttdƒ|ddƒ}ttdƒ|ddƒ}t| dƒd|ƒnPttdƒ|ddƒ}ttdƒ|ddƒ}t| dƒd|dƒt| dƒdƒoA|djot| dƒddƒqit| dƒdd ƒnD|djot| dƒdddƒnt| dƒdd dƒttttd!ƒd"ƒd#ƒd$|d%ƒdS(&Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objsgetIdcCs4ttdƒ||ƒ}t|dƒ} t|ƒdjoòxïtt t|ƒdƒƒD]Í} | d}ttdƒt||ƒ|ƒd jottdƒt||ƒ|dƒ}ttdƒt|dƒdƒ}| |tt|t|ƒdƒƒ|t|dƒ} qW| t||ƒ} qWWn| SdS(Nssplitiisfinds/(s _getattr_sstringschainesinitsas _getitem_sresultslens _getiter_srangesisjsclossbsfileapstxtavsstrstxtap(schainesinitsclosstxtavstxtaps _getattr_sstringsas _getitem_sresultslens _getiter_srangesisjsbsfileapsstr((sScript (Python)sdoublereplaceefface s )$!<ssrc="s"s/image/smanage_changePropertiessformatsdocuments manage_editstitles hasPropertys utilisateursreplaces>s>ssq U func_defaultsq(UnonqUtqU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextq Ucontextq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Uformatq(Udataq)Utype_repq*Unom_repq+Unom_insq,U rapideditq-U utilisateurq.U _getattr_q/Ucontextq0Umemq1U _getitem_q2Uskinq3Uobjq4Udossierq5U idinstanceq6Udoublereplaceeffaceq7Ustringq8tq9ubU__ac_local_roles__q:}q;Uxavq<]q=UOwnerq>asUidq?U config_okq@U_paramsqAUGformat, data, type_rep, nom_rep, nom_ins,rapidedit='non',utilisateur=''qBU_dav_writelocksqC(U @7qD(U PersistenceqEUPersistentMappingqFtqGtqHQu. =CW((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T)mem=context.zwo_lib.mem_data() modname=container.getId() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) if type=="skin": skin=context.zwo_info.skins[nom] skin.manage_addFolder(idobj,titre) obj=skin[idobj] else: dossier=mem['rep_obj'] dossier.manage_addFolder(idobj,titre) obj=dossier[idobj] obj.manage_addDTMLDocument('document','Main document') obj.document.manage_edit(data,'Main document') obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element','text_epoz','string') obj.manage_addProperty('format',format,'string') obj.manage_addProperty('utilisateur',utilisateur,'string') if rapidedit=='non': obj.manage_addProperty('rapidedit','0','string') else: obj.manage_addProperty('rapidedit','1','string') # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier chois comme type uniquement) obj.manage_addFolder('image','image_epoz') return context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U_codeq Tœc@sdd„ZdS(NsnoncCstttdƒdƒƒ} ttdƒƒ} t| dƒdjodSntttdƒdƒ|ƒ} |djoJttttd ƒd ƒ|ƒ}t|d ƒ| |ƒt|| ƒ}n5t| d ƒ}t|d ƒ| |ƒt|| ƒ}t|d ƒddƒtt|dƒdƒ|dƒt|dƒdddƒt|dƒdddƒt|dƒd|dƒt|dƒd|dƒ|djot|dƒdddƒnt|dƒdddƒt|d ƒddƒttttdƒdƒd ƒd!|d"| ƒSdSdS(#Nszwo_libsmem_datasgetIdsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopesskinszwo_infosskinssmanage_addFoldersrep_objsmanage_addDTMLDocumentsdocuments Main documents manage_editsmanage_addPropertys type_zwookselementsstrings text_epozsformats utilisateursnons rapidedits0s1simages image_epozsREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s _getattr_scontextsmems containersmodnames _getitem_stitresidobjstypesnomsskinsobjsdossiersdatasformats utilisateurs rapidedit(stitresformatsdatastypesnoms utilisateurs rapidedits _getattr_scontextsmems containersmodnames _getitem_sidobjsskinsobjsdossier((sScript (Python)snew_oks. $1(snew_ok(snew_ok((sScript (Python)ssq U func_defaultsq(UnonqtqU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerq U containerq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Utitreq(Uformatq)Udataq*Utypeq+Unomq,U utilisateurq-U rapideditq.U _getattr_q/Ucontextq0Umemq1U containerq2Umodnameq3U _getitem_q4Uidobjq5Uskinq6Uobjq7Udossierq8tq9ubU__ac_local_roles__q:}q;Uxavq<]q=UOwnerq>asUidq?Unew_okq@U_paramsqAU;titre, format, data, type, nom, utilisateur,rapidedit='non'qBU_dav_writelocksqC(U @8qD(U PersistenceqEUPersistentMappingqFtqGtqHQu. =Dæ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tmem=context.zwo_lib.mem_mod_data(mem) if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idinstance=instance.getId() if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' try: doc=instance.document.document_src() except: doc='nouvelle version' lignes=doc.split('\n') message='' def doublereplaceefface(chaine,init,clos,txtav,txtap): a=string.split(chaine,init) result=a[0] if len(a)>1: for i in range(len(a)-1): j=i+1 if string.find(a[j],clos)<>-1: b=string.split(a[j],clos,1) fileap=string.split(b[0],'/') result=result+txtav+str(fileap[len(fileap)-1])+txtap+b[1] else: result=result+a[j] return result if instance.hasProperty('utilisateur'): utilisateur=instance.utilisateur else: utilisateur='' #~ &&&&&&&&&&&&&&&&&&&&&&& htlm &&&&&&&&&&&&&&&&&&& for ligne in lignes: ligne=string.replace(ligne,'$URL',mem['zwo_url']) ligne=doublereplaceefface(ligne,'img src="','"','img src="'+instance.absolute_url()+'/image/','"') if utilisateur != '': ligne=string.replace(ligne,utilisateur,mem['user_id']) message=message+ligne+'\n' lieu=mem['parent'] url_lieu=lieu.absolute_url() iu=instance.absolute_url() p=string.rfind(iu,'/') iur=iu[:p] #iur='' if instance.hasProperty('rapidedit'): if instance.rapidedit=="1": if mem['droit_edit_dossier']==1: message=message+' [E]' return message q U_codeq TQ c@s d„ZdS(NcCsttttdƒdƒ|ƒ}t|dƒdjodSnt|dƒƒ}t|dƒdjodSnytt|dƒdƒƒ}Wn d }nXt|d ƒd ƒ}d }d „} t|dƒdƒot|dƒ} nd } x§t |ƒD]™} tt dƒ| dt|dƒƒ} | | dddt|dƒƒddƒ} | d jo(tt dƒ| | t|dƒƒ} n|| d }qûWt|dƒ}t|dƒƒ}t|dƒƒ}tt dƒ|dƒ}t|d|…ƒ}t|dƒdƒo^t|dƒdjoDt|dƒdjo*|d|dt|dƒƒd }qhqln|SdS(!Nszwo_libs mem_mod_datasdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !sgetIdsdocuments document_srcsnouvelle versionssplits scCs4ttdƒ||ƒ}t|dƒ} t|ƒdjoòxïtt t|ƒdƒƒD]Í} | d}ttdƒt||ƒ|ƒd jottdƒt||ƒ|dƒ}ttdƒt|dƒdƒ}| |tt|t|ƒdƒƒ|t|dƒ} qW| t||ƒ} qWWn| SdS(Nssplitiisfinds/(s _getattr_sstringschainesinitsas _getitem_sresultslens _getiter_srangesisjsclossbsfileapstxtavsstrstxtap(schainesinitsclosstxtavstxtaps _getattr_sstringsas _getitem_sresultslens _getiter_srangesisjsbsfileapsstr((sScript (Python)sdoublereplaceeffaces )$!<s hasPropertys utilisateursreplaces$URLszwo_urls img src="s"s absolute_urls/image/suser_idsparentsrfinds/s rapidedits1sdroit_edit_dossiers [E](s _getattr_scontextsmems _getitem_sinstances idinstancesdocslignessmessagesdoublereplaceeffaces utilisateurs _getiter_slignesstringslieusurl_lieusiuspsiur(smemsinstances _getattr_scontexts _getitem_s idinstancesdocslignessmessagesdoublereplaceeffaces utilisateurs _getiter_slignesstringslieusurl_lieusiuspsiur((sScript (Python)s view_htmls>"   $, (2(s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU_dav_writelocksq (U @9q!(U Persistenceq"UPersistentMappingq#tq$tq%QU__ac_local_roles__q&}q'Uxavq(]q)UOwnerq*asUidq+U view_htmlq,U_paramsq-U mem,instanceq.U func_codeq/(cShared.DC.Scripts.Signature FuncCode q0oq1}q2(U co_argcountq3KU co_varnamesq4(Umemq5Uinstanceq6U _getattr_q7Ucontextq8U _getitem_q9U idinstanceq:Udocq;UlignesqU utilisateurq?U _getiter_q@UligneqAUstringqBUlieuqCUurl_lieuqDUiuqEUpUiurqFtqGubu. =E#Š((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tæ modname=container.getId() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' print '
' print '' #print 'Identifiant : '+instance.title+'

' if instance.hasProperty('utilisateur')!=0: utilisatrice=instance.utilisateur else: utilisatrice='zwookutilisateur' print 'remplacer : ' print '( le mot \'zwookutilisateur\' sera remplacé par le nom de l\' utilisateur. )

' idinstance=instance.getId() doc=instance.document.document_src() message=doc quotes = (("\\","\\\\"), ("\n","\\n"), ("\r","\\r"), ("'","\\'")) print 'Texte :
' for item in quotes: message = message.replace(item[0], item[1]) def doublereplaceefface(chaine,init,clos,txtav,txtap): a=string.split(chaine,init) result=a[0] if len(a)>1: for i in range(len(a)-1): j=i+1 if string.find(a[j],clos)<>-1: b=string.split(a[j],clos,1) fileap=string.split(b[0],'/') result=result+txtav+str(fileap[len(fileap)-1])+txtap+b[1] else: result=result+a[j] return result message=doublereplaceefface(message,'src="','"','src="'+instance.absolute_url()+'/image/','"') epoz=mem['zwo_obj'].zwo_lib.epoz print '' print '' print '' print '' print '' print '' print '' print '' #print 'Texte :


' chkd="" if instance.hasProperty('rapidedit'): if instance.rapidedit=="1": chkd=' checked' print ' Afficher le Rapid Edit [E] pour ceux qui ont le droit d\'éditions
' print '' print '' print '' print '' print '' print '
' return printed q U_codeq T&c@s d„ZdS(NcUCsætƒ}ttdƒƒ}t|dƒdjodSn|d|dIJ|dIJt|dƒd ƒd jot|d ƒ} nd } |d | d IJ|dIJt|dƒƒ} tt|dƒdƒƒ} | } ddfddfddfddff} |dIJx>t | ƒD]0}t| dƒt|d ƒt|dƒƒ} qWd„}|| dddt|dƒƒddƒ} ttt|d ƒd!ƒd"ƒ}|d#IJ|d$tt|d%ƒdƒƒd&IJ|d$tt|d'ƒdƒƒd&IJ|d$tt|d(ƒdƒƒd&IJ|d$tt|d)ƒdƒƒd&IJ|d$tt|d*ƒdƒƒd&IJ|d+IJ|d,IJt|dƒƒd-}|d.| d/t|dƒƒd0|d1d2d3tt|d4ƒdƒƒd5IJ|d6IJ|d7IJ|d8| d9IJd:}t|dƒd;ƒo$t|d;ƒd<jo d=}qTn|d>|d?IJ|d@t|dAƒd IJ|dBt|dƒƒd IJ|dCt|dƒƒd IJ|dDIJ|dEIJ|dFIJ|ƒSdS(GNsgetIdsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s(
ss hasPropertys utilisateuriszwookutilisateurs`remplacer : sz( le mot 'zwookutilisateur' sera remplacé par le nom de l' utilisateur. )

sdocuments document_srcs\s\\s s\ns s\rs's\'s Texte :
sreplacecCs4ttdƒ||ƒ}t|dƒ} t|ƒdjoòxïtt t|ƒdƒƒD]Í} | d}ttdƒt||ƒ|ƒd jottdƒt||ƒ|dƒ}ttdƒt|dƒdƒ}| |tt|t|ƒdƒƒ|t|dƒ} qW| t||ƒ} qWWn| SdS(Nssplitiisfinds/(s _getattr_sstringschainesinitsas _getitem_sresultslens _getiter_srangesisjsclossbsfileapstxtavsstrstxtap(schainesinitsclosstxtavstxtaps _getattr_sstringsas _getitem_sresultslens _getiter_srangesisjsbsfileapsstr((sScript (Python)sdoublereplaceeffaces )$!<ssrc="s"s absolute_urls/image/szwo_objszwo_libsepozsjs:s epoz_lang_frsepoz_script_widgetsepoz_script_detectsepoz_script_mains5s`ss rapidedits1s checkedsC Afficher le Rapid Edit [E] pour ceux qui ont le droit d'éditions
s,s(s
(s_print_s_prints _getattr_s containersmodnames _getitem_smemsinstances utilisatrices idinstancesdocsmessagesquotess _getiter_sitemsdoublereplaceeffacesepozs toolboxpathschkdsrep(smemsrepsinstances_print_s_prints _getattr_s containersmodnames _getitem_s utilisatrices idinstancesdocsmessagesquotess _getiter_sitemsdoublereplaceeffacesepozs toolboxpathschkd((sScript (Python)s config_htmlsZ  *  . ,! '''''  S      (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Urepq$Uinstanceq%U_print_q&U_printq'U _getattr_q(U containerq)Umodnameq*U _getitem_q+U utilisatriceq,U idinstanceq-Udocq.Umessageq/Uquotesq0U _getiter_q1Uitemq2Udoublereplaceeffaceq3Uepozq4U toolboxpathq5Uchkdq6tq7ubU__ac_local_roles__q8}q9Uxavq:]q;UOwnerqU_paramsq?Umem, rep, instanceq@U_dav_writelocksqA(U @:qB(U PersistenceqCUPersistentMappingqDtqEtqFQu. =F((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tv #choix du nom proposé par default modname=container.getId() utilisatrice='zwookutilisateur' exemple_titre_base='texte_epoz' exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) print '
' print '' print 'Identifiant : ' print '( Mettre un identifiant, sert à retrouver vos éléments.)

' print 'remplacer : ' print '( le mot \'zwookutilisateur\' sera remplacé par le nom de l\' utilisateur. )

' """ quotes = (("\\","\\\\"), ("\n","\\n"), ("\r","\\r"), ("'","\\'")) for item in quotes: message = message.replace(item[0], item[1]) """ message='' epoz=mem['zwo_obj'].zwo_info.modules.epoz print '' print '' print '' print '' print '' print '' print '' print '' #print '

' print ' Afficher le Rapid Edit [E] pour ceux qui ont le droit d\'éditions
' if dossier.type_zwook=="skin": print '' else: print '' print '' print '' print '' print '
' return printed q U_codeq Týc@s d„ZdS(NcOCsòtƒ}ttdƒƒ}d}d}|} d} x8| t|dƒƒjo| d} |t | ƒ} q6W|d|dIJ|d IJ|d | d IJ|d IJ|d |d IJ|dIJdd} tttt |dƒdƒdƒdƒ}|dIJ|dtt|dƒdƒƒdIJ|dtt|dƒdƒƒdIJ|dtt|dƒdƒƒdIJ|dtt|dƒdƒƒdIJ|dtt|dƒdƒƒdIJ|dIJ|dIJd }d!kl}d"||ƒ}|d#| d$t|dƒƒd%|d&d'd(tt |d)ƒdƒƒd*IJ|d+IJ|d,IJ|d-| d.IJ|d/IJt|d0ƒd1jo|d2IJn |d3IJ|d4IJ|d5t|dƒƒd IJ|d6IJ|d7IJ|ƒSdS(8NsgetIdszwookutilisateurs texte_epozis objectIdsis(
ss\Identifiant : si( Mettre un identifiant, sert à retrouver vos éléments.)

s`remplacer : ( le mot 'zwookutilisateur' sera remplacé par le nom de l' utilisateur. )


s€ quotes = (("\","\\"), (" ","\n"), (" ","\r"), ("'","\'")) for item in quotes: message = message.replace(item[0], item[1]) sszwo_objszwo_infosmodulessepozsgs:s epoz_lang_frsepoz_script_widgetsepoz_script_detectsepoz_script_mains5s`s’ Afficher le Rapid Edit [E] pour ceux qui ont le droit d'éditions
s type_zwooksskins.s1s0s's
(s_print_s_prints _getattr_s containersmodnames utilisatricesexemple_titre_bases exemple_titresindicesdossiersstrsmessages _getitem_smemsepozspmessagesProducts.PythonScripts.standards url_quotes toolboxpath(smemsdossiers_print_s_prints _getattr_s containersmodnames utilisatricesexemple_titre_bases exemple_titresindicesstrsmessages _getitem_sepozspmessagesProducts.PythonScripts.standards url_quotes toolboxpath((sScript (Python)snew_htmlsT     * '''''   S       (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @;q(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_htmlq)U_paramsq*U mem,dossierq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Udossierq3U_print_q4U_printq5U _getattr_q6U containerq7Umodnameq8U utilisatriceq9Uexemple_titre_baseq:U exemple_titreq;UindiceqU _getitem_q?Uepozq@UpmessageqAUProducts.PythonScripts.standardqBU url_quoteqCU toolboxpathqDtqEubu. =Gf((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qU _proxy_rolesq(UManagerqtq Uwarningsq )U Script_magicq KU_bodyq TOmem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] obj=skin[nom_ins] else: dossier=mem['rep_obj'] obj=dossier[nom_ins] idinstance=obj.getId() def doublereplaceefface(chaine,init,clos,txtav,txtap): a=string.split(chaine,init) result=a[0] if len(a)>1: for i in range(len(a)-1): j=i+1 if string.find(a[j],clos)<>-1: b=string.split(a[j],clos,1) fileap=string.split(b[0],'/') result=result+txtav+str(fileap[len(fileap)-1])+txtap+b[1] else: result=result+a[j] return result data=doublereplaceefface(data,'src="','"','src="'+idinstance+'/image/','"') obj.document.manage_edit(data,obj.document.title) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q U_codeqT¼c@s d„ZdS(Nc Cs6tttdƒdƒƒ}t|dƒdjodSn|djo4ttttdƒdƒ|ƒ}t||ƒ} nt|d ƒ} t| |ƒ} t| d ƒƒ} d „} | |d d d | dd ƒ}tt| dƒdƒ|tt| dƒdƒƒttttdƒdƒdƒt|dƒƒdS(Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objsgetIdcCs4ttdƒ||ƒ}t|dƒ} t|ƒdjoòxïtt t|ƒdƒƒD]Í} | d}ttdƒt||ƒ|ƒd jottdƒt||ƒ|dƒ}ttdƒt|dƒdƒ}| |tt|t|ƒdƒƒ|t|dƒ} qW| t||ƒ} qWWn| SdS(Nssplitiisfinds/(s _getattr_sstringschainesinitsas _getitem_sresultslens _getiter_srangesisjsclossbsfileapstxtavsstrstxtap(schainesinitsclosstxtavstxtaps _getattr_sstringsas _getitem_sresultslens _getiter_srangesisjsbsfileapsstr((sScript (Python)sdoublereplaceefface s )$!<ssrc="s"s/image/sdocuments manage_editstitlesREQUESTsRESPONSEsredirectsrep_url( s _getattr_scontextsmems _getitem_stype_repsnom_repsskinsnom_inssobjsdossiers idinstancesdoublereplaceeffacesdata( sdatastype_repsnom_repsnom_inss _getattr_scontextsmems _getitem_sskinsobjsdossiers idinstancesdoublereplaceefface((sScript (Python)s rapidedit_oks ! &4(s rapidedit_ok(s rapidedit_ok((sScript (Python)ssqU func_defaultsqNUerrorsq)U _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU_dav_writelocksq (U @Udossierq?U idinstanceq@UdoublereplaceeffaceqAtqBubu. =Hâ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T9 mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] #return lieu.absolute_url() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' print context.zwo_lib.standard_html_header(mem) instance=lieu[idobj] print '
' print '' doc=instance.document.document_src() message=doc #message=string.replace(message,'<','<') #message=string.replace(message,'>','>') quotes = (("\\","\\\\"), ("\n","\\n"), ("\r","\\r"), ("'","\\'")) for item in quotes: message = message.replace(item[0], item[1]) def doublereplaceefface(chaine,init,clos,txtav,txtap): a=string.split(chaine,init) result=a[0] if len(a)>1: for i in range(len(a)-1): j=i+1 if string.find(a[j],clos)<>-1: b=string.split(a[j],clos,1) fileap=string.split(b[0],'/') result=result+txtav+str(fileap[len(fileap)-1])+txtap+b[1] else: result=result+a[j] return result message=doublereplaceefface(message,'src="','"','src="'+instance.absolute_url()+'/image/','"') epoz=mem['zwo_obj'].zwo_lib.epoz print '' print '' print '' print '' print '' print '' print '' print '' print '' print '' print '' print '' print '
' print context.zwo_lib.standard_html_footer(mem) return printed q U_codeq T^c@s d„ZdS(NcLCs\tƒ}tttdƒdƒƒ}t|dƒ}t|dƒdjodSn|tttdƒdƒ|ƒIJt||ƒ}|dIJ|d IJtt|d ƒd ƒƒ} | } d d fddfddfddff} x>t | ƒD]0} t| dƒt| dƒt| dƒƒ} qîWd„}|| dddt|dƒƒddƒ} ttt|dƒdƒdƒ}|dIJ|dtt|dƒdƒƒd IJ|dtt|d!ƒdƒƒd IJ|dtt|d"ƒdƒƒd IJ|dtt|d#ƒdƒƒd IJ|dtt|d$ƒdƒƒd IJ|d%IJ|d&IJt|d'ƒd(|}|d)| d*t|dƒƒd+|d,IJ|d-IJ|d.IJ|d/| d0IJ|d1t|d2ƒd3IJ|d4t|d5ƒƒd3IJ|d6t|d5ƒƒd3IJ|d7IJ|d8IJ|tttdƒd9ƒ|ƒIJ|ƒSdS(:Nszwo_libs mem_mod_datasparentsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sstandard_html_headers@
ssdocuments document_srcs\s\\s s\ns s\rs's\'sreplaceicCs4ttdƒ||ƒ}t|dƒ} t|ƒdjoòxïtt t|ƒdƒƒD]Í} | d}ttdƒt||ƒ|ƒd jottdƒt||ƒ|dƒ}ttdƒt|dƒdƒ}| |tt|t|ƒdƒƒ|t|dƒ} qW| t||ƒ} qWWn| SdS(Nssplitiisfinds/(s _getattr_sstringschainesinitsas _getitem_sresultslens _getiter_srangesisjsclossbsfileapstxtavsstrstxtap(schainesinitsclosstxtavstxtaps _getattr_sstringsas _getitem_sresultslens _getiter_srangesisjsbsfileapsstr((sScript (Python)sdoublereplaceeffaces )$!<ssrc="s"s absolute_urls/image/szwo_objsepozsls:s epoz_lang_frsepoz_script_widgetsepoz_script_detectsepoz_script_mains5s`s,s+s
sstandard_html_footer(s_print_s_prints _getattr_scontextsmems _getitem_slieusidobjsinstancesdocsmessagesquotess _getiter_sitemsdoublereplaceeffacesepozs toolboxpath(sidobjs_print_s_prints _getattr_scontextsmems _getitem_slieusinstancesdocsmessagesquotess _getiter_sitemsdoublereplaceeffacesepozs toolboxpath((sScript (Python)srapidedit_htmlsH$"  * . ,! '''''  .    "(srapidedit_html(srapidedit_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Uidobjq#U_print_q$U_printq%U _getattr_q&Ucontextq'Umemq(U _getitem_q)Ulieuq*Uinstanceq+Udocq,Umessageq-Uquotesq.U _getiter_q/Uitemq0Udoublereplaceeffaceq1Uepozq2U toolboxpathq3tq4ubU__ac_local_roles__q5}q6Uxavq7]q8UOwnerq9asUidq:Urapidedit_htmlq;U_paramsq(U @=q?(U Persistenceq@UPersistentMappingqAtqBtqCQu. =I((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tp mem=context.zwo_lib.mem_data() skinounon= string.find(container.REQUEST.URL,'/zwo_info/skins/') if skinounon>0: nomskin=container.REQUEST.URL[skinounon+16:] idobj=nomskin nomskin=nomskin[:string.find(nomskin,'/')] idobj=idobj[len(nomskin)+1:] idobj=idobj[:string.find(idobj,'/')] skin=context.zwo_info.skins repskin=skin[nomskin] print repskin.absolute_url() #return printed if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' print ' Epoz-Toolbox' if message!= 'nul': print '

'+message+'

' if message!='Veuillez d\'abord créer l\'instance avant de pouvoir ajouter des images': print '

Pour ajouter une image

' print '
' print '' print '' print '' print '' print '' if idobj=='nul': print'' idobj=mem['obj_obj'].getId() else: print'' print '' print'' print '
' print 'Identification:
titre:
Recherche fichier
' #print '
' if skinounon>0: lieu=repskin [idobj] else: lieu=mem['rep_obj'][idobj] dos=lieu.image.objectValues(['Image']) if len(dos)>0: print'

Liste des images du dossier

' print '' for object in dos: objectid=object.getId() print '' print '' print '
' print objectid+'
' print str(object.width)+' x '+str(object.height)+' pixels' print '
' print ''+object.title+' [ Effacer ]' print '

' return printed q Utitleq U PythonScript1q U_codeqT‚ c@sddd„ZdS(NsnulceCstƒ}tttdƒdƒƒ}ttdƒtttdƒdƒdƒ} | djoßttttdƒdƒ| dd…ƒ} | }t| dttdƒ| d ƒ…ƒ} t|t | ƒd d…ƒ}t|dttdƒ|d ƒ…ƒ}tttd ƒd ƒ} t| | ƒ}|t|d ƒƒIJnt|dƒd jodSn|dIJ|djo|d|dIJn|djos|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|djoF|dtt|dƒdƒƒd IJtt|dƒdƒƒ}n|d|d IJ|d!IJ|d"IJ|d#IJ| djot||ƒ}ntt|d$ƒ|ƒ}tt|d%ƒd&ƒd'gƒ}t |ƒdjo0|d(IJ|d)IJx t|ƒD]ý}t|dƒƒ}|d*IJ||d+IJ|tt|d,ƒƒd-tt|d.ƒƒd/IJ|d0IJ|d1t|d ƒƒd2IJ|d3IJ|d4t|d5ƒd2IJ|d6IJ|d7t|d ƒƒd8|d9|d:IJ|d;IJ|d<IJqòW|d=IJqn|ƒSdS(>Nszwo_libsmem_datasfindsREQUESTsURLs/zwo_info/skins/iis/iszwo_infosskinss absolute_urlsdroit_edit_dossiers.Vous n'avez pas les droits pour cette action !sL Epoz-Toolboxsnuls

s

sEVeuillez d'abord créer l'instance avant de pouvoir ajouter des imagess"

Pour ajouter une image

sZ
sss s?sLs)sSss
s=Identification:
titre:
Recherche fichier
srep_objsimages objectValuessImages&

Liste des images du dossier

s2s%s;s
s
swidths x sheights pixelss&
s s���titles���   style= [ Effacer ]s

(s_print_s_prints _getattr_scontextsmemsstrings containers skinounons _getitem_snomskinsidobjslensskinsrepskinsmessageslieusdoss _getiter_sobjectsobjectidsstr(smessagesidobjs_print_s_prints _getattr_scontextsmemsstrings containers skinounons _getitem_snomskinslensskinsrepskinslieusdoss _getiter_sobjectsobjectidsstr((sScript (Python)stoolboxsl$* +''            '    !    4   . (stoolbox(stoolbox((sScript (Python)ssqU func_defaultsq(UnulqhtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextq usbU func_codeq!(cShared.DC.Scripts.Signature FuncCode q"oq#}q$(U co_argcountq%KU co_varnamesq&(Umessageq'Uidobjq(U_print_q)U_printq*U _getattr_q+Ucontextq,Umemq-Ustringq.U containerq/U skinounonq0U _getitem_q1Unomskinq2Ulenq3Uskinq4Urepskinq5Ulieuq6Udosq7U _getiter_q8Uobjectq9Uobjectidq:Ustrq;tqUadminq?]q@UOwnerqAasUidqBUtoolboxqCU_paramsqDUmessage='nul',idobj='nul',qEU_dav_writelocksqF(U @>qG(U PersistenceqHUPersistentMappingqItqJtqKQu. =J l((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq(U5expected an indented block (Script (Python), line 50)qtq Uwarningsq )U Script_magicq KU_bodyq T¥mem=context.zwo_lib.mem_mod_data(mem) if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idinstance=instance.getId() if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' try: doc=instance.document.document_src() except: doc='nouvelle version' lignes=doc.split('\n') message='' def doublereplace(chaine,init,clos,txtav,txtap): a=string.split(chaine,init) result=a[0] if len(a)>1: for i in range(len(a)-1): j=i+1 if string.find(a[j],clos)<>-1: b=string.split(a[j],clos,1) result=result+txtav+b[0]+txtap+b[1] else: result=result+a[j] return result def doublereplaceefface(chaine,init,clos,txtav,txtap): a=string.split(chaine,init) result=a[0] if len(a)>1: for i in range(len(a)-1): j=i+1 if string.find(a[j],clos)<>-1: b=string.split(a[j],clos,1) fileap=string.split(b[0],'/') result=result+txtav+str(fileap[len(fileap)-1])+txtap+b[1] else: result=result+a[j] return result if instance.hasProperty('utilisateur'): utilisateur=instance.utilisateur else: utilisateur='' #~ &&&&&&&&&&&&&&&&&&&&&&& texte &&&&&&&&&&&&&&&&&&& #~ &&&&&&&&&&&&&&&&&&&&&&& htlm &&&&&&&&&&&&&&&&&&& for ligne in lignes: ligne=string.replace(ligne,'$URL',mem['zwo_url']) ligne=doublereplaceefface(ligne,'img src="','"','img src="'+idinstance+'/image/','"') if utilisateur != '': ligne=string.replace(ligne,utilisateur,mem['user_id']) message=message+ligne+'\n' #~ &&&&&&&&&&&&&&&&&&&&&&& non formaté &&&&&&&&&&&&&&&&&&& lieu=mem['parent'] url_lieu=lieu.absolute_url() iu=instance.absolute_url() p=string.rfind(iu,'/') iur=iu[:p] if instance.hasProperty('rapidedit'): if instance.rapidedit=="1": if mem['droit_edit_dossier']==1: message=message+' [E]' return message q U_codeqNU func_defaultsq)U _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @?q(U Persistenceq UPersistentMappingq!tq"tq#QU__ac_local_roles__q$}q%Uxavq&]q'UOwnerq(asUidq)U ttesview_htmlq*U_paramsq+U mem,instanceq,U func_codeq-(cShared.DC.Scripts.Signature FuncCode q.oq/}q0(U co_argcountq1KU co_varnamesq2)ubu. =K›((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUgregq ]q UOwnerq asUheightq KUwidthq KU content_typeqU image/pngqU__name__qU icone.pngqUdataqUȉPNG  IHDRíf0âPLTEÊéô™ÌÌåÿÿÿïøûÿÿÿÊìBñ pHYs  šœtIMEÔ2ÔPIIDATxÚ=ÊÁ À A§ƒ,(œ]I”þ{ƒ”ýŒu²½d1<+>ZZAÛÞ!«¨(÷Æ8;ŽUË•£mþsú½6÷^ 2› bãIEND®B`‚qUsizeqKÈu. =L ö((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÇmem=context.zwo_lib.mem_data() print 'Modification du menu

' print '
' print '' print '' print '' print '' print 'depart du menu (url relative à la racine) : ' print '
' print 'Couleur 1 (claire) : ' print '
' print 'Couleur 2 (foncé) : ' print '
' print '' print '
' return printed q U _filepathq UAScript (Python):/kzexp_zwook/zwo_modules/kzexpconnect/config_htmlq U_codeqTc@s d„ZdS(Nc,Cs'tƒ}tttdƒdƒƒ}|dIJ|dIJ|dIJ|dt|dƒdIJ|d t|d ƒƒdIJ|d t|d ƒƒdIJ|d IJ|d t|dƒdIJ|dIJ|dt|dƒdIJ|dIJ|dt|dƒdIJ|dIJ|dIJ|ƒSdS(Nszwo_libsmem_datasEModification du menu

s=
ss,s+depart du menu (url relative à la racine) : s'
s9Couleur 1 (claire) : s(Couleur 2 (foncé) : s(s
(s_print_s_prints _getattr_scontextsmemsrepsinstance(smemsrepsinstances_print_s_prints _getattr_scontext((sScript (Python)s config_htmls$        (s config_html(s config_html((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Umemq%Urepq&Uinstanceq'U_print_q(U_printq)U _getattr_q*Ucontextq+tq,ubU__ac_local_roles__q-}q.Uxavq/]q0UOwnerq1asUidq2U config_htmlq3U_paramsq4Umem,rep,instanceq5U_dav_writelocksq6(U @@q7(U Persistenceq8UPersistentMappingq9tq:tq;Qu. =M 0((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÒ#choix du nom proposé par default mem=context.zwo_lib.mem_data() exemple_titre_base='kzexpmenu' exemple_titre=exemple_titre_base indice=1 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) nom=dossier.getId() titre=exemple_titre idobj=context.zwo_lib.mix_id_zope(titre) skin=dossier skin.manage_addFolder(idobj,titre) obj=skin[idobj] obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element','kzexpmenu','string') obj.manage_addProperty('start','','string') obj.manage_addProperty('color1','#ffffff','string') obj.manage_addProperty('color2','#000000','string') context.REQUEST.RESPONSE.redirect('place?nom='+nom+'&obj='+idobj) q Uidq Unew_htmlq U_codeqTêc@s d„ZdS(Nc Cs{tttdƒdƒƒ}d}|}d}x8|t|dƒƒjo|d}|t|ƒ}q0Wt|dƒƒ}|} tttdƒdƒ| ƒ} |} t| dƒ| | ƒt | | ƒ} t| d ƒd d d ƒt| d ƒd dd ƒt| d ƒd dd ƒt| d ƒddd ƒt| d ƒddd ƒttttdƒdƒdƒd|d| ƒdS(Nszwo_libsmem_datas kzexpmenuis objectIdssgetIds mix_id_zopesmanage_addFoldersmanage_addPropertys type_zwookselementsstringsstartsscolor1s#ffffffscolor2s#000000sREQUESTsRESPONSEsredirects place?nom=s&obj=(s _getattr_scontextsmemsexemple_titre_bases exemple_titresindicesdossiersstrsnomstitresidobjsskins _getitem_sobj(smemsdossiers _getattr_scontextsexemple_titre_bases exemple_titresindicesstrsnomstitresidobjsskins _getitem_sobj((sScript (Python)snew_htmls(  (snew_html(snew_html((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Umemq%Udossierq&U _getattr_q'Ucontextq(Uexemple_titre_baseq)U exemple_titreq*Uindiceq+Ustrq,Unomq-Utitreq.Uidobjq/Uskinq0U _getitem_q1Uobjq2tq3ubU__ac_local_roles__q4}q5Uxavq6]q7UOwnerq8asU _filepathq9U>Script (Python):/kzexp_zwook/zwo_modules/kzexpconnect/new_htmlq:U_paramsq;U mem,dossierq(U Persistenceq?UPersistentMappingq@tqAtqBQu. =N((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T #actu : tableau des repertoires de la position actuelle. pre_actu=(mem["rep_url"].split(mem["zwo_url"]))[1].split('/') actu=[] for i in pre_actu: if i<>'': actu.append(i) #start : tableau des repertoires de la position de depart. start=instance.start.split("/") #on atteint le repertoire de départ. fini=0 r=mem["zwo_obj"] lr=r.objectIds() for i in start: if i in lr: r=r[i] lr=r.objectIds() if len(actu)>0 and i==actu[0]: actu.remove(i) else: fini=1 def listrepinrep(rep): if rep.zwo_dossier.hasProperty('ordre'): ordre=rep.zwo_dossier.ordre lordre=ordre.split('&') else: lordre=[] listrep=[] for r in rep.objectValues('Folder'): if r.hasProperty('type_zwook') and r.type_zwook=="dossier": listrep.append(r.getId()) listpage=[] for i in lordre: if i in listrep and not i in listpage: listpage.append(i) for i in listrep: if not i in listpage: listpage.append(i) return listpage def af(dec,isok,url,id): if isok: aff.append('' % instance.color2 ) for i in range(dec): aff.append('  ') aff.append('%s\n' % (url,instance.color1,id)) else: aff.append('' % instance.color1) for i in range(dec): aff.append('  ') aff.append('%s\n' % (url,instance.color2,id)) def affiche_rep(decalage,r): decalage+=1 lr=listrepinrep(r) nextr='' if len(actu)>0: nextr=actu[0] actu.remove(nextr) for sr in lr: sro=r[sr] if sr<>nextr: af(decalage,0,sro.absolute_url(),sro.title_or_id()) elif nextr<>'': if len(actu)>0: af(decalage,0,r[nextr].absolute_url(),r[nextr].title_or_id()) else: af(decalage,1,r[nextr].absolute_url(),r[nextr].title_or_id()) affiche_rep(decalage,r[nextr]) aff=[] aff.append('\n') if len(actu)==0 and fini==0: af(0,1,r.absolute_url(),r.title_or_id()) else: af(0,0,r.absolute_url(),r.title_or_id()) if fini==0: affiche_rep(1,r) aff.append("
") return string.join(aff,"") q Uidq U view_htmlq U_codeqTÎc@s d„ZdS(Nc#s_tttt|dƒdƒt|dƒƒdƒdƒdƒ}g‰x8t|ƒD]*}|djotˆdƒ|ƒqRqRWttˆdƒdƒdƒ}d } t|d ƒ} t| d ƒƒ} xŒt|ƒD]~}|| jokt| |ƒ} t| d ƒƒ} t ˆƒd jo|tˆd ƒjotˆd ƒ|ƒqPd} qÒqÒWd „‰‡‡d†‰‡‡‡‡d†‰g‰tˆdƒdƒt ˆƒd jo | d jo/ˆd dt| dƒƒt| dƒƒƒn,ˆd d t| dƒƒt| dƒƒƒ| d joˆd| ƒntˆdƒdƒttdƒˆdƒSdS(Nsrep_urlssplitszwo_urlis/ssappendsstartiszwo_objs objectIdssremovec Csdtt|dƒdƒdƒo1tt|dƒdƒ}t|dƒdƒ}ng}g}xrtt|dƒdƒƒD]U}t|dƒdƒot|dƒd jo#t|d ƒt|d ƒƒƒqxqxWg}xFt|ƒD]8}||jo ||j ot|d ƒ|ƒqäqäWx9t|ƒD]+}||j ot|d ƒ|ƒq-q-W|SdS( Ns zwo_dossiers hasPropertysordressplits&s objectValuessFolders type_zwooksdossiersappendsgetId( s _getattr_srepsordreslordreslistreps _getiter_srslistpagesi( sreps _getattr_sordreslordreslistreps _getiter_srslistpagesi((sScript (Python)s listrepinreps& ,$  c s|o}tˆdƒdtˆdƒƒx-tt|ƒƒD]} tˆdƒdƒq:Wtˆdƒd|tˆdƒ|fƒnztˆdƒdtˆdƒƒx-tt|ƒƒD]} tˆdƒdƒq·Wtˆdƒd|tˆdƒ|fƒdS(Nsappends2scolor2s   sD%s scolor1( sisoks _getattr_saffsinstances _getiter_srangesdecsisurlsid( sdecsisoksurlsids _getattr_saffsinstances _getiter_srangesi(sinstancesaff(sScript (Python)saf-s  - css|d7}ˆ|ƒ}d}tˆƒdjo&tˆdƒ}tˆdƒ|ƒnxt |ƒD] } t|| ƒ} | |jo/ˆ|dt| dƒƒt| dƒƒƒqb|djo«tˆƒdjoAˆ|dtt||ƒdƒƒtt||ƒdƒƒƒn>ˆ|dtt||ƒdƒƒtt||ƒdƒƒƒˆ|t||ƒƒqbqbWdS(Nisisremoves absolute_urls title_or_id(sdecalages listrepinrepsrslrsnextrslensactus _getitem_s _getattr_s _getiter_ssrssrosafs affiche_rep(sdecalagesrs listrepinrepslrsnextrslensactus _getitem_s _getattr_s _getiter_ssrssrosafs affiche_rep(s listrepinreps affiche_repsactusaf(sScript (Python)s affiche_rep9s     / A=s@ s absolute_urls title_or_ids
sjoin(s _getattr_s _getitem_smemspre_actusactus _getiter_sisinstancesstartsfinisrslrslens listrepinrepsafs affiche_repsaffsstring(smemsinstances _getattr_s _getitem_spre_actusactus _getiter_sisstartsfinisrslrslens listrepinrepsaffsafs affiche_repsstring((sinstances affiche_repsafsaffsactus listrepinrepsScript (Python)s view_htmls<?   ,    /+ (s view_html(s view_html((sScript (Python)ssqU func_defaultsqNU _proxy_rolesq(UManagerqU config_zwookqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathq U name_m_selfq!Uscriptq"usbU func_codeq#(cShared.DC.Scripts.Signature FuncCode q$oq%}q&(U co_argcountq'KU co_varnamesq((Umemq)Uinstanceq*U _getattr_q+U _getitem_q,Upre_actuq-Uactuq.U _getiter_q/UiUstartq0Ufiniq1UrUlrq2Ulenq3U listrepinrepq4Uaffq5Uafq6U affiche_repq7Ustringq8tq9ubU__ac_local_roles__q:}q;Uadminq<]q=UOwnerq>asU _filepathq?U;Script (Python):/kzexp_zwook/zwo_modules/kzexpnav/view_htmlq@U_paramsqAU mem,instanceqBU_dav_writelocksqC(U @BqD(U PersistenceqEUPersistentMappingqFtqGtqHQu. =O š((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÒmem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] obj=skin[nom_ins] else: dossier=mem['rep_obj'] obj=dossier[nom_ins] obj.manage_changeProperties(start=start) obj.manage_changeProperties(color1=color1) obj.manage_changeProperties(color2=color2) context.REQUEST.RESPONSE.redirect('../../index_html?nom='+nom_rep+'&popup=1') q Uidq U config_okq U_codeqT@c@s d„ZdS(Nc Cs tttdƒdƒƒ}t|dƒdjodSn|djo4ttttdƒdƒ|ƒ} t| |ƒ} nt|d ƒ} t| |ƒ} t| d ƒd |ƒt| d ƒd |ƒt| d ƒd |ƒttttdƒdƒdƒd|dƒdS(Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objsmanage_changePropertiessstartscolor1scolor2sREQUESTsRESPONSEsredirects../../index_html?nom=s&popup=1( s _getattr_scontextsmems _getitem_stype_repsnom_repsskinsnom_inssobjsdossiersstartscolor1scolor2( stype_repsnom_repsnom_inssstartscolor1scolor2s _getattr_scontextsmems _getitem_sskinsobjsdossier((sScript (Python)s config_oks !(s config_ok(s config_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Utype_repq%Unom_repq&Unom_insq'Ustartq(Ucolor1q)Ucolor2q*U _getattr_q+Ucontextq,Umemq-U _getitem_q.Uskinq/Uobjq0Udossierq1tq2ubU__ac_local_roles__q3}q4Uxavq5]q6UOwnerq7asU _filepathq8U?Script (Python):/kzexp_zwook/zwo_modules/kzexpconnect/config_okq9U_paramsq:U/type_rep, nom_rep, nom_ins, start,color1,color2q;U_dav_writelocksq<(U @Cq=(U Persistenceq>UPersistentMappingq?tq@tqAQu. =P”((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqUÉPNG  IHDR*º† pHYs  šœtIMEÔ -42çbIDATxÚcüÿÿ_ôBB hi<3ßmE"Àñu™ˆ,póú¢BhâB¬¢øL%Æg,È~ÄåìÀc 1®DWŠÇ 8€Ë"CŠ„ØbÂ=X“ Sù'¤k:N.IEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqKÃu. =Q ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tk# RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() sens='horizontal' if instance.hasProperty('sens'): sens=instance.sens # EXEMPLE FORMULAIRE EDITION print '
' print '' print 'Affichage :
' if sens=='vertical': c1=' checked' c2='' else: c2=' checked' c1='' print ' Horizontal
' print ' Vertical

' # Fin Formulaire print '' print '' print '' print '' print '


' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMDAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' return printed q U_codeq T•c@s d„ZdS(Nc %CsGtƒ}ttdƒƒ}d}t|dƒdƒot|dƒ}n|d|dIJ|dt|dƒƒdIJ|d IJ|d jod } d } n d } d } |d | dIJ|d| dIJ|dIJ|dt|dƒƒdIJ|dt|dƒdIJ|dt|dƒƒdIJ|dIJ|ƒSdS(NsgetIds horizontals hasPropertyssenss(
s)sAffichage :
sverticals checkedss3 Horizontal
s0 Vertical

s(s*Uc2q?tq@ubu. =S e((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T¾#choix du nom proposé par default name=container.getId() exemple_titre_base='folderbar' exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) print '' print '' print 'Identifiant :

' print 'Affichage :
' print ' Horizontal
' print ' Vertical

' if dossier.type_zwook=="skin": print '' else: print '' print '' print '' print '
' return printed q U_codeq TÅc@s d„ZdS(Nc %Cstƒ}ttdƒƒ}d}|}d} x8|t|dƒƒjo| d} |t | ƒ}q0W|d|dIJ|dIJ|d |d IJ|d IJ|d IJ|d IJt|dƒdjo|dIJn |dIJ|dt|dƒƒdIJ|dIJ|dIJ|ƒSdS(NsgetIds folderbaris objectIdsis(
ss?Identifiant :

sAffichage :
sM Horizontal
sF Vertical

s type_zwooksskins.s1s's0s
( s_print_s_prints _getattr_s containersnamesexemple_titre_bases exemple_titresindicesdossiersstr( smemsdossiers_print_s_prints _getattr_s containersnamesexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmls*         (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU__ac_local_roles__q }q!Uxavq"]q#UOwnerq$asUidq%Unew_htmlq&U_paramsq'U mem,dossierq(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Umemq/Udossierq0U_print_q1U_printq2U _getattr_q3U containerq4Unameq5Uexemple_titre_baseq6U exemple_titreq7Uindiceq8Ustrq9tq:ubu. =T ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tïmem=context.zwo_lib.mem_mod_data(mem) name=container.getId() iconpath=container.absolute_url()+'/images' #~ ####### basic security check ######### if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' lis=mem['rep_obj'].objectValues('Folder') #~ sens sens='horizontal' if instance.hasProperty('sens'): sens=instance.sens esp='  ' if sens=='vertical': esp='
' aff='' #~ ####### print html ######### for dos in lis: if dos.hasProperty('type_zwook') and dos.type_zwook=='dossier' : name_m=dos.title_or_id() url=dos.absolute_url() aff=aff+' '+name_m+'' aff=aff+esp print aff return printed q U_codeq T¨c@s d„ZdS(NcCs‰tƒ}tttdƒdƒ|ƒ}ttdƒƒ}ttdƒƒd}t|dƒdjodSntt|d ƒd ƒd ƒ} d } t|d ƒdƒot|dƒ} nd} | djo d} nd} x”t| ƒD]†}t|d ƒdƒot|dƒdjoTt|dƒƒ}t|dƒƒ}| d|d|d|d} | | } qêqêW|| IJ|ƒSdS(Nszwo_libs mem_mod_datasgetIds absolute_urls/imagessdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !srep_objs objectValuessFolders horizontals hasPropertyssenss  sverticals
ss type_zwooksdossiers title_or_ids  s(s_print_s_prints _getattr_scontextsmems containersnamesiconpaths _getitem_slisssenssinstancesespsaffs _getiter_sdossname_msurl(smemsinstances_print_s_prints _getattr_scontexts containersnamesiconpaths _getitem_slisssenssespsaffs _getiter_sdossname_msurl((sScript (Python)s view_htmls*'    )" (s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqU config_zwookqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerq usbU func_codeq!(cShared.DC.Scripts.Signature FuncCode q"oq#}q$(U co_argcountq%KU co_varnamesq&(Umemq'Uinstanceq(U_print_q)U_printq*U _getattr_q+Ucontextq,U containerq-Unameq.Uiconpathq/U _getitem_q0Ulisq1Usensq2Uespq3Uaffq4U _getiter_q5Udosq6Uname_mq7Uurlq8tq9ubU__ac_local_roles__q:}q;Uxavq<]q=UOwnerq>asUidq?U view_htmlq@U_paramsqAU mem,instanceqBU_dav_writelocksqC(U @FqD(U PersistenceqEUPersistentMappingqFtqGtqHQu. =UÊ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TØ# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() if type_rep=="skin": try: skin=context.zwo_info.skins[nom_rep] except: return 'nooo' obj=skin[instid] else: dossier=mem['rep_obj'] obj=dossier[instid] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' # MODIFICATION obj.manage_changeProperties(sens=sens) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q U_codeq TÔc@s d„ZdS(Nc Csétttdƒdƒƒ}|djoFy%ttttdƒdƒ|ƒ} Wn dSnXt| |ƒ} nt|dƒ} t| |ƒ} t|dƒd jod Snt| d ƒd |ƒttttd ƒdƒdƒdƒdS(Nszwo_libs mem_mod_datasskinszwo_infosskinssnooosrep_objsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !smanage_changePropertiesssenssREQUESTsRESPONSEsredirects../../( s _getattr_scontextsmemstype_reps _getitem_snom_repsskinsinstidsobjsdossierssens( sinstidsnom_repstype_repsidobjssenss _getattr_scontextsmems _getitem_sskinsobjsdossier((sScript (Python)s config_oks ( (s config_ok(s config_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @Gq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U config_okq)U_paramsq*U"instid,nom_rep,type_rep,idobj,sensq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Uinstidq2Unom_repq3Utype_repq4Uidobjq5Usensq6U _getattr_q7Ucontextq8Umemq9U _getitem_q:Uskinq;Uobjqubu. =VÝ((U OFS.FolderqUFolderqtqNt.}q(UidqUimagesqU_objectsq(}q(U meta_typeq UImageq Uidq U dossier.gifq utq h (U @Hq(U OFS.ImageqUImageqtqtqQU__ac_local_roles__q}qUgregq]qUOwnerqasUtitleqUu. =R e((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tlmem=context.zwo_lib.mem_data() name=container.getId() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) if type=="skin": skin=context.zwo_info.skins[nom] skin.manage_addFolder(idobj,titre) obj=skin[idobj] else: dossier=mem['rep_obj'] dossier.manage_addFolder(idobj,titre) obj=dossier[idobj] obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',name,'string') obj.manage_addProperty('sens',sens,'string') context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U_codeq Tßc@s d„ZdS(NcCsxtttdƒdƒƒ}ttdƒƒ}t|dƒdjodSntttdƒdƒ|ƒ} |djoJttttd ƒd ƒ|ƒ} t| d ƒ| |ƒt| | ƒ} n5t|d ƒ} t| d ƒ| |ƒt| | ƒ} t| d ƒdddƒt| d ƒd|dƒt| d ƒd|dƒttttdƒdƒdƒd|d| ƒdSdS(Nszwo_libsmem_datasgetIdsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopesskinszwo_infosskinssmanage_addFoldersrep_objsmanage_addPropertys type_zwookselementsstringssenssREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s _getattr_scontextsmems containersnames _getitem_stitresidobjstypesnomsskinsobjsdossierssens(stitrestypesnomssenss _getattr_scontextsmems containersnames _getitem_sidobjsskinsobjsdossier((sScript (Python)snew_oks  $((snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @Eq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_okq)U_paramsq*Utitre, type, nom,sensq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Utitreq2Utypeq3Unomq4Usensq5U _getattr_q6Ucontextq7Umemq8U containerq9Unameq:U _getitem_q;UidobjqUdossierq?tq@ubu. =W}((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqU¬‰PNG  IHDR*º† pHYs  šœtIMEÔ NÆ®ÚKIDATxÚcüÿÿ_ôBB hi<3ßmE"Àñu™ :0ÍÀTÍ‚&w ¦œæbL&¢ .ÇaŠ0öF- ÒÔáÄ'€4ô7cCIEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqK¬u. =X ½((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T$if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' print '
' print '' #print 'Identifiant : '+titre_i+'

' print 'Nouveau fichier :

' print 'Description * :

' print '* optionnel

' print '' print '' print '' print '' print '
' return printed q U_codeq Tc@s d„ZdS(Nc#Csàtƒ}t|dƒdjodSn|dIJ|dIJ|dIJ|dt|dƒd IJ|d IJ|d t|d ƒd IJ|dt|dƒƒd IJ|dt|dƒƒd IJ|dIJ|dIJ|ƒSdS(Nsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sV
ss;Nouveau fichier :

sGDescription * :

s* optionnel

s,s+s
(s_print_s_prints _getitem_smems _getattr_sinstancesrep(smemsrepsinstances_print_s_prints _getitem_s _getattr_((sScript (Python)s config_htmls      (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"U config_htmlq#U_paramsq$Umem,rep, instanceq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Urepq-Uinstanceq.U_print_q/U_printq0U _getitem_q1U _getattr_q2tq3ubu. =YZ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tîprint 'Options du fichier :

' print '' print ' Description : Parametre facultatif, la description s\'affiche a coté du fichier a télécharger pour faire comprendre a l\'utilisateur a quoi correspond le fichier.
' print 'exemple :
' print 'nomfichier.truc : description du fichier
' print '

' print '


' return printed q U_codeq T%c@s d„ZdS(NcCsZtƒ}|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|ƒSdS(NsQOptions du fichier :

s Description : Parametre facultatif, la description s'affiche a coté du fichier a télécharger pour faire comprendre a l'utilisateur a quoi correspond le fichier.
sexemple :
sPnomfichier.truc : description du fichier
s

s


(s_print_s_print(s_print_s_print((sScript (Python)shelps      (shelp(shelp((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUgregq]q UOwnerq!asUidq"Uhelpq#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_varnamesq)(U_print_q*U_printq+tq,U co_argcountq-Kubu. =[ -((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T\if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' print '
' print '' print 'Fichier :

' print 'Identifiant * : (nom du fichier par défaut)

' print 'Description * :

' print '* optionnel

' if dossier.type_zwook=="skin": print '' else: print '' print '' print '' print '
' return printed q U_codeq TNc@s d„ZdS(Nc%CsÎtƒ}t|dƒdjodSn|dIJ|dIJ|dIJ|dIJ|dIJ|d IJt|d ƒd jo|d IJn |d IJ|dt|dƒƒdIJ|dIJ|dIJ|ƒSdS(Nsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sS
ss3Fichier :

s€Identifiant * : (nom du fichier par défaut)

sNDescription * :

s* optionnel

s type_zwooksskins.s1s's0s
(s_print_s_prints _getitem_smems _getattr_sdossier(smemsdossiers_print_s_prints _getitem_s _getattr_((sScript (Python)snew_htmls         (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"Unew_htmlq#U_paramsq$U mem,dossierq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Udossierq-U_print_q.U_printq/U _getitem_q0U _getattr_q1tq2ubu. =\Â((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq U¶des=instance.description ido=instance.title_or_id() url=instance.absolute_url() if des=='': aff='' else: aff=' : '+des print ''+ido+''+aff return printed q U_codeq Tzc@s d„ZdS(Nc Cs†tƒ}t|dƒ}t|dƒƒ}t|dƒƒ}|djo d}n d|}|d|d|d|IJ|ƒSdS( Ns descriptions title_or_ids absolute_urlss : s s(s_print_s_prints _getattr_sinstancesdessidosurlsaff( smemsinstances_print_s_prints _getattr_sdessidosurlsaff((sScript (Python)s view_htmls   (s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"U view_htmlq#U_paramsq$U mem,instanceq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Uinstanceq-U_print_q.U_printq/U _getattr_q0Udesq1Uidoq2Uurlq3Uaffq4tq5ubu. =]=((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TYmem=context.zwo_lib.mem_data() idobj=nom_ins if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] obj=skin[nom_ins] lieu=skin else: dossier=mem['rep_obj'] obj=dossier[nom_ins] lieu=dossier if data and len(data.read())<>0: titre_data='' if hasattr(data,'filename'): filename=data.filename titre_data=filename[max(string.rfind(filename, '/'), string.rfind(filename, '\\'), string.rfind(filename, ':'), )+1:] id_data=context.zwo_lib.mix_id_zope(titre_data) idobj=id_data lieu.manage_delObjects(nom_ins) lieu.manage_addFile(idobj,file=data,title=titre_data) newobj=lieu[idobj] newobj.manage_addProperty('type_zwook','element','string') newobj.manage_addProperty('element','file','string') newobj.manage_addProperty('type_rep',type_rep,'string') newobj.manage_addProperty('nom_rep',nom_rep,'string') newobj.manage_addProperty('description',description,'string') """ #~ OLD code ###### pl_init=dossier.zwo_dossier.placement pl_actu=string.replace(pl_init,':'+nom_ins+':',':'+idobj+':') dossier.zwo_dossier.manage_changeProperties(placement=pl_actu) """ tab=dossier.zwo_dossier.tableaux ntab=[] for l in tab: l=string.replace(l,nom_ins,idobj) ntab.append(l) dossier.zwo_dossier.manage_changeProperties(tableaux=ntab) else: obj=lieu[nom_ins] obj.manage_changeProperties(description=description) context.REQUEST.RESPONSE.redirect('../../index_html?nom='+nom_rep+'&popup=1') q U_codeq Tu c@sed„ZdS(NcCstttdƒdƒƒ}|}t|dƒdjodSn|djo:ttttdƒdƒ|ƒ} t| |ƒ} | } n%t|d ƒ} t| |ƒ} | } |ot t|d ƒƒƒd joðd }t|d ƒont|d ƒ}t|tttdƒ|dƒttdƒ|dƒttdƒ|dƒƒdd…ƒ}ntttdƒdƒ|ƒ}|}t| dƒ|ƒt| dƒ|d|d|ƒt| |ƒ}t|dƒdddƒt|dƒdddƒt|dƒd|dƒt|dƒd|dƒt|dƒd|dƒdtt| dƒd ƒ}g}xBt|ƒD]4}ttd!ƒ|||ƒ}t|d"ƒ|ƒqeWtt| dƒd#ƒd |ƒn&t| |ƒ} t| d#ƒd|ƒttttd$ƒd%ƒd&ƒd'|d(ƒdS()Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objsreadissfilenamesrfinds/s\s:s mix_id_zopesmanage_delObjectssmanage_addFilesfilestitlesmanage_addPropertys type_zwookselementsstringstype_repsnom_reps descriptions #~ OLD code ###### pl_init=dossier.zwo_dossier.placement pl_actu=string.replace(pl_init,':'+nom_ins+':',':'+idobj+':') dossier.zwo_dossier.manage_changeProperties(placement=pl_actu) s zwo_dossierstableauxsreplacesappendsmanage_changePropertiessREQUESTsRESPONSEsredirects../../index_html?nom=s&popup=1(s _getattr_scontextsmemsnom_inssidobjs _getitem_stype_repsnom_repsskinsobjslieusdossiersdataslens titre_datashasattrsfilenamesmaxsstringsid_datasnewobjs descriptionstabsntabs _getiter_sl(s descriptionstype_repsnom_repsnom_inssdatas _getattr_scontextsmemsidobjs _getitem_sskinsobjslieusdossierslens titre_datashasattrsfilenamesmaxsstringsid_datasnewobjstabsntabs _getiter_sl((sScript (Python)s config_oksL ! &!)  (sNones config_ok(sNones config_ok((sScript (Python)ssq U func_defaultsq(NtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq ]q!UOwnerq"asUidq#U config_okq$U_paramsq%U2description, type_rep, nom_rep, nom_ins, data=Noneq&U func_codeq'(cShared.DC.Scripts.Signature FuncCode q(oq)}q*(U co_argcountq+KU co_varnamesq,(U descriptionq-Utype_repq.Unom_repq/Unom_insq0Udataq1U _getattr_q2Ucontextq3Umemq4Uidobjq5U _getitem_q6Uskinq7Uobjq8Ulieuq9Udossierq:Ulenq;U titre_dataqUmaxq?Ustringq@Uid_dataqAUnewobjqBUtabqCUntabqDU _getiter_qEUltqFubu. =ZR((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tmem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if not data: return 'Pas de fichier indiqué !' if len(data.read())<=0: return 'Pas de fichier indiqué !' titre_data='' if hasattr(data,'filename'): filename=data.filename titre_data=filename[max(string.rfind(filename, '/'), string.rfind(filename, '\\'), string.rfind(filename, ':'), )+1:] id_data=context.zwo_lib.mix_id_zope(titre_data) idobj=context.zwo_lib.mix_id_zope(titre) if idobj=='': idobj=id_data if type=="skin": skin=context.zwo_info.skins[nom] lieu=skin else: dossier=mem['rep_obj'] lieu=dossier lieu.manage_addFile(idobj, file=data, title=titre) obj=lieu[idobj] obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element','file','string') obj.manage_addProperty('description',description,'string') context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U_codeq TÎc@s d„ZdS(NcCsFtttdƒdƒƒ}t|dƒdjodSn| odSntt|dƒƒƒdjodSnd } t|d ƒont|d ƒ} t| t tt d ƒ| d ƒtt d ƒ| d ƒtt d ƒ| dƒƒdd…ƒ} ntttdƒdƒ| ƒ}tttdƒdƒ|ƒ}|d jo |}n|djo+ttttdƒdƒ|ƒ}|}nt|dƒ}|}t|dƒ|d|d|ƒt||ƒ}t|dƒdddƒt|dƒdddƒt|dƒd|dƒttttdƒdƒdƒd|d |ƒdSdS(!Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sPas de fichier indiqué !sreadissfilenamesrfinds/s\s:s mix_id_zopesskinszwo_infosskinssrep_objsmanage_addFilesfilestitlesmanage_addPropertys type_zwookselementsstrings descriptionsREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s _getattr_scontextsmems _getitem_sdataslens titre_datashasattrsfilenamesmaxsstringsid_datastitresidobjstypesnomsskinslieusdossiersobjs description(stitresdatastypesnoms descriptions _getattr_scontextsmems _getitem_slens titre_datashasattrsfilenamesmaxsstringsid_datasidobjsskinslieusdossiersobj((sScript (Python)snew_oks8!)   !  ((snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @Iq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_okq)U_paramsq*U#titre, data, type, nom, descriptionq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Utitreq2Udataq3Utypeq4Unomq5U descriptionq6U _getattr_q7Ucontextq8Umemq9U _getitem_q:Ulenq;U titre_dataqUmaxq?Ustringq@Uid_dataqAUidobjqBUskinqCUlieuqDUdossierqEUobjqFtqGubu. =^!((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqUUdataqULGIF89a‘Êéô™ÌÿÿÿÌå!ù,TŽy–â¬Ðƒ1Ì*^zß *TÄ”˜‚Za;qUheightq KUwidthq KU content_typeq U image/gifq U__name__q U icone.pngqU__ac_local_roles__q}qUxavq]qUOwnerqasUsizeqL76L u. =_¤((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T~# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] url_lieu=mem['parent_url'] obj=lieu[idobj] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' # EXEMPLE MODIFICATION obj.manage_changeProperties(exemple=exemple) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q U_codeq T:c@s d„ZdS(Nc Cs¥tttdƒdƒƒ}t|dƒ}t|dƒ}t||ƒ}t|dƒdjodSnt|dƒd |ƒttttd ƒd ƒd ƒd ƒdS(Nszwo_libs mem_mod_datasparents parent_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !smanage_changePropertiessexemplesREQUESTsRESPONSEsredirects../../( s _getattr_scontextsmems _getitem_slieusurl_lieusidobjsobjsexemple( sidobjsexemples _getattr_scontextsmems _getitem_slieusurl_lieusobj((sScript (Python)s config_oks (s config_ok(s config_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @Jq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U config_okq)U_paramsq*U idobj,exempleq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Uidobjq2Uexempleq3U _getattr_q4Ucontextq5Umemq6U _getitem_q7Ulieuq8Uurl_lieuq9Uobjq:tq;ubu. =`((U OFS.FolderqUFolderqtqNt.}q(Uon.pngq(U @Kq(U OFS.ImageqUImageqtq tq QUoff.pngq (U @Lq (hUImageq tqtqQUtitleqUU_objectsq(}q(U meta_typeqUImageqUidqh u}q(hhhhutqU__ac_local_roles__q}qUgregq]qUOwnerqasUidqUimagesqu. =a((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type=="skin": skin=context.zwo_info.skins[nom] lieu=skin else: dossier=mem['rep_obj'] lieu=dossier url_lieu=lieu.absolute_url() idobj=context.zwo_lib.mix_id_zope(titre) classes=('Perso','Business','Zwook') priorites=('Cool:=:lime','Normal:=:yellow','Urgent:=:orange','Très urgent:=:red','Prioritaire:=:black') # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId() print '' print '

Cet identifiant '+idobj+' est déja pris
' print 'Veuillez en choisir un autre
' print 'Redirection automatique dans 2 secondes.

' print 'Si la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIETE en fonction du module obj.manage_addProperty('groups_admin',groups_admin,'string') obj.manage_addProperty('list_title',list_title,'string') obj.manage_addProperty('classes',classes,'lines') obj.manage_addProperty('priorites',priorites,'lines') # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier chois comme type uniquement) #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U_codeq TC c@sdd„ZdS(Ns Todo listcCsqtƒ}tttdƒdƒƒ} t| dƒdjodSn|djo+ttttdƒdƒ|ƒ} | } nt| d ƒ} | } t| d ƒƒ}tttdƒd ƒ|ƒ}d d df}dddddf}|t| dƒƒjoudttdƒƒ}|d|dIJ|d|dIJ|dIJ|dIJ|d|dIJ|dIJ|ƒSnt| d ƒ||ƒt| |ƒ}t|d!ƒd"d#d$ƒt|d!ƒd#ttdƒƒd$ƒt|d!ƒd%|d$ƒt|d!ƒd&|d$ƒt|d!ƒd'|d(ƒt|d!ƒd)|d(ƒttttd*ƒd+ƒd,ƒd-|d.|ƒdSdS(/Nszwo_libs mem_mod_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinssrep_objs absolute_urls mix_id_zopesPersosBusinesssZwooks Cool:=:limesNormal:=:yellowsUrgent:=:orangesTrès urgent:=:redsPrioritaire:=:blacks objectIdss../ajout_element?type=sgetIds7s.

Cet identifiant s est déja pris
s"Veuillez en choisir un autre
s6Redirection automatique dans 2 secondes.

sGSi la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstrings groups_admins list_titlesclassessliness prioritessREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s_print_s_prints _getattr_scontextsmems _getitem_stypesnomsskinslieusdossiersurl_lieustitresidobjsclassess prioritess containersurlsobjs groups_admins list_title(stitrestypesnoms groups_admins list_titles_print_s_prints _getattr_scontextsmems _getitem_sskinslieusdossiersurl_lieusidobjsclassess prioritess containersurlsobj((sScript (Python)snew_oks>  !    %((snew_ok(snew_ok((sScript (Python)ssq U func_defaultsq(U Todo listqtqU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerq U containerq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Utitreq(Utypeq)Unomq*U groups_adminq+U list_titleq,U_print_q-U_printq.U _getattr_q/Ucontextq0Umemq1U _getitem_q2Uskinq3Ulieuq4Udossierq5Uurl_lieuq6Uidobjq7Uclassesq8U prioritesq9U containerq:Uurlq;Uobjq}q?Ugregq@]qAUOwnerqBasUidqCUnew_okqDU_paramsqEU3titre, type,nom,groups_admin,list_title='Todo list'qFU_dav_writelocksqG(U @MqH(U PersistenceqIUPersistentMappingqJtqKtqLQu. =b ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÎmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid] #~ ######### security checks ######### def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in instance.groups_admin: if el in mem['user_roles_id']: return 1 if not can_edit(): return "Operation not permited" obj=instance[mod] obj.manage_changeProperties(realisation=int(float(per))) url=mem['rep_url']+'?mode='+str(mode) context.REQUEST.RESPONSE.redirect(url) q U_codeq Tdc@sdd„ZdS(NsNormalc sÌtttdƒdƒƒ‰ttˆdƒ|ƒ‰‡‡d†} | ƒ odSntˆ|ƒ} t| dƒdt t |ƒƒƒtˆdƒd t |ƒ}ttttd ƒd ƒd ƒ|ƒdS( Nszwo_libs mem_mod_datasrep_objc s`tˆdƒdjodSnx;ttˆdƒƒD]$}|tˆdƒjodSq4q4WdS(Nsdroit_edit_dossieris groups_admins user_roles_id(s _getitem_smems _getiter_s _getattr_sinstancesel(s _getitem_smems _getiter_s _getattr_sinstancesel(smemsinstance(sScript (Python)scan_edits sOperation not permitedsmanage_changePropertiess realisationsrep_urls?mode=sREQUESTsRESPONSEsredirect(s _getattr_scontextsmems _getitem_sinstidsinstancescan_editsmodsobjsintsfloatspersstrsmodesurl(sinstidspersmodsmodes _getattr_scontextsmems _getitem_sinstancescan_editsobjsintsfloatsstrsurl((smemsinstancesScript (Python)s realisations&(s realisation(s realisation((sScript (Python)ssq U func_defaultsq(UNormalqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}q Up4q!]q"UOwnerq#asUidq$U realisationq%U_paramsq&Uinstid, per,mod,mode='Normal'q'U func_codeq((cShared.DC.Scripts.Signature FuncCode q)oq*}q+(U co_argcountq,KU co_varnamesq-(Uinstidq.Uperq/Umodq0Umodeq1U _getattr_q2Ucontextq3Umemq4U _getitem_q5Uinstanceq6Ucan_editq7Uobjq8Uintq9Ufloatq:Ustrq;Uurlqsq U func_defaultsq(UnormalqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}q Ugregq!]q"UOwnerq#asUidq$Uterminerq%U_paramsq&Uinstid,modid,end,mode='normal'q'U func_codeq((cShared.DC.Scripts.Signature FuncCode q)oq*}q+(U co_argcountq,KU co_varnamesq-(Uinstidq.Umodidq/Uendq0Umodeq1U _getattr_q2Ucontextq3Umemq4U _getitem_q5Uinstanceq6Umodq7Ucan_editq8Ustrq9Uurlq:tq;ubu. =d,ì((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T¡modname='todo' #recuperation parametres instid=instance.getId() form=context.REQUEST.form groups_admin=instance.groups_admin list_title=instance.list_title img_on='' img_off='' priorite_color={} for el in instance.priorites: li=el.split(':=:') nom=li[0] col=li[1] priorite_color[nom]=col #~ ######### security checks ######### def is_conf(): if 'config_zwook' in mem['user_roles_id']: return 1 def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in groups_admin: if el in mem['user_roles_id']: return 1 def is_manager(): if 'Manager' in mem['user_roles_id']: return 1 mode='normal' if form.has_key('mode'): mode=str(form['mode']) #~ ############## affichage du module ################ print '' print '' print '' print '' modli=instance.objectValues() modli.reverse() for mod in modli: modid=mod.getId() afmod=1 if mode<>'term': if mod.over=='on': afmod=None if afmod: modid=mod.getId() over=mod.over classe=mod.classe priorite=mod.priorite realisation=mod.realisation notes='' sep='
' a=0 notesli=mod.notes lenotes=len(notesli) isnote=None for note in notesli: if a==lenotes-1: sep='' notes=notes+note+sep if note<>'': isnote=1 a=a+1 if not isnote: notes=' ' print '' print '' print '' print '' print '' c='Non terminé' d='white' if over=='on': c='Terminé' d='#D5DAF4' print '' print '' ed='' if can_edit(): ed=' [E]' print '' print '' print '
'+list_title+'' print '' if can_edit(): print ' [ Add item ]' print ' [ Options ]' if mode=='normal': print ' '+img_on+'' elif mode=='term': print ' '+img_off+'' print '' print '
'+mod.title+'
'+classe print '' print '' i=0 while i<=100: color='#CCCCCC' if i<=realisation: color='lime' print '' i=i+10 print '' print '
' print ''+str(i)+'%
' print '
'+priorite+'' if is_manager(): print '' print '[Mod]' print '
' print c+'
' if can_edit(): print '' if over=='on': print '[Remettre]
' else: print '[Terminer]
' print '
' print '
'+notes+ed+'
' return printed q U_codeq Tõc@s d„ZdS(Nc0fs^tƒ}d}t|dƒƒ}tttdƒdƒ}t|dƒ‰t|dƒ} d|d} d|d } h} x`t t|d ƒƒD]I}t|d ƒd ƒ}t|d ƒ}t|dƒ}|t| ƒ||d?t|+ƒd@|dA|dBt|+ƒdCIJ|+dD}+qW|dEIJ|dFIJ|dGt| |!ƒd<|!d$IJdH}-dI}.|d)jodJ}-dK}.n|dL|.d<IJ|ƒo6|dMIJ|dNt|dOƒƒdPIJ|dQIJn||-d.IJ|ƒo}|dMIJ|d)jo.|dR|dS|dT|dU|dVIJn+|dR|dS|dT|dW|dXIJ|d#IJn|dYIJ|dZIJd-}/|ƒo"d[|d\|dT|d]}/n|d^|#|/d$IJ|d%IJqUqUW|dFIJ|ƒSdS(_NstodosgetIdsREQUESTsforms groups_admins list_titless/images/off.png" border="0" />s prioritesssplits:=:iics"dtˆdƒjodSndS(Ns config_zwooks user_roles_idi(s _getitem_smem(s _getitem_smem(smem(sScript (Python)sis_confsc sWtˆdƒdjodSnx2tˆƒD]$}|tˆdƒjodSq+q+WdS(Nsdroit_edit_dossieris user_roles_id(s _getitem_smems _getiter_s groups_adminsel(s _getitem_smems _getiter_s groups_adminsel(smems groups_admin(sScript (Python)scan_edits  cs"dtˆdƒjodSndS(NsManagers user_roles_idi(s _getitem_smem(s _getitem_smem(smem(sScript (Python)s is_managerssnormalshas_keysmodessssEss objectValuessreversesoversonsclassespriorites realisationss
snotess ss-s/ss [E]sGs? s* ssdates+ s s- sG surls+ sE sI sI ss+Prioritaire (2): s+Ordre (3): sK sJ sK sL s,
sss [ Add item ]s/options?instid=s">Options ]s3 ssterms5 ss
stitles
s<shids#CCCCCCslimesCi s#s
ss %
s,
s [Mod]s
s[Remettre]
s &end=1&mode=s">Terminer]
s
(/s_print_s_printsmodnames _getattr_sinstancesinstidscontextsforms groups_admins list_titlesimg_onsimg_offspriorite_colors _getiter_selslis _getitem_snomscols_write_sis_confscan_edits is_managersmodesstrsmodlismodsmodidsafmodsNonesoversclassespriorites realisationsnotesssepsasnoteslislenslenotessisnotesnotesiscolorscsdsed(0smemsinstances_print_s_printsmodnames _getattr_sinstidscontextsforms groups_admins list_titlesimg_onsimg_offspriorite_colors _getiter_selslis _getitem_snomscols_write_sis_confscan_edits is_managersmodesstrsmodlismodsmodidsafmodsNonesoversclassespriorites realisationsnotesssepsasnoteslislenslenotessisnotesnotesiscolorscsdsed((smems groups_adminsScript (Python)s view_htmlsÒ       &*        $          F  #       .*   " (s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Uinstanceq$U_print_q%U_printq&Umodnameq'U _getattr_q(Uinstidq)Ucontextq*Uformq+U groups_adminq,U list_titleq-Uimg_onq.Uimg_offq/Upriorite_colorq0U _getiter_q1Uelq2Uliq3U _getitem_q4Unomq5Ucolq6U_write_q7Uis_confq8Ucan_editq9U is_managerq:Umodeq;UstrqUmodidq?Uafmodq@UNoneqAUoverqBUclasseqCUprioriteqDU realisationqEUnotesqFUsepqGUaUnotesliqHUlenqIUlenotesqJUisnoteqKUnoteqLUiUcolorqMUcUdUedqNtqOubU__ac_local_roles__qP}qQUxavqR]qSUOwnerqTasUidqUU view_htmlqVU_paramsqWU mem,instanceqXU_dav_writelocksqY(U @NqZ(U Persistenceq[UPersistentMappingq\tq]tq^Qu. =e Å((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÌmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid] mod=instance[modid] modname='modules_manager' #~ ######### security checks ######### def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in instance.groups_admin: if el in mem['user_roles_id']: return 1 if not can_edit(): return 'Operation not permited' mod.manage_changeProperties(notes=str(note.strip())) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q U_codeq T6c@s d„ZdS(Nc sÄtttdƒdƒƒ‰ttˆdƒ|ƒ‰tˆ|ƒ}d} ‡‡d†} | ƒ odSnt|dƒdt t|d ƒƒƒƒttttd ƒd ƒd ƒtˆd ƒƒdS(Nszwo_libs mem_mod_datasrep_objsmodules_managerc s`tˆdƒdjodSnx;ttˆdƒƒD]$}|tˆdƒjodSq4q4WdS(Nsdroit_edit_dossieris groups_admins user_roles_id(s _getitem_smems _getiter_s _getattr_sinstancesel(s _getitem_smems _getiter_s _getattr_sinstancesel(smemsinstance(sScript (Python)scan_edits sOperation not permitedsmanage_changePropertiessnotessstripsREQUESTsRESPONSEsredirectsrep_url( s _getattr_scontextsmems _getitem_sinstidsinstancesmodidsmodsmodnamescan_editsstrsnote( sinstidsmodidsnotes _getattr_scontextsmems _getitem_sinstancesmodsmodnamescan_editsstr((smemsinstancesScript (Python)s edit_note_oks.(s edit_note_ok(s edit_note_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUp4q]q UOwnerq!asUidq"U edit_note_okq#U_paramsq$Uinstid,modid,noteq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Uinstidq,Umodidq-Unoteq.U _getattr_q/Ucontextq0Umemq1U _getitem_q2Uinstanceq3Umodq4Umodnameq5Ucan_editq6Ustrq7tq8ubu. =f ¤((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T# RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() return "No config" # EXEMPLE FORMULAIRE EDITION print '
' print 'Identifiant : '+instance.title+'

' print '' # Personalisation Formulaire print 'Propriété :

' # Fin Formulaire print '' print '


' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMDAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' return printed q U_codeq Tªc@s d„ZdS(NcCs¤tƒ}ttdƒƒ}dS|d|dIJ|dt|dƒdIJ|dt|dƒƒd IJ|d t|d ƒd IJ|d IJ|dIJ|ƒSdS(NsgetIds No configs(
sIdentifiant : stitles

s)s9Propriété :

s(s


(s_print_s_prints _getattr_s containerstypemodsinstance(smemsrepsinstances_print_s_prints _getattr_s containerstypemod((sScript (Python)s config_htmls   (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @Oq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U config_htmlq)U_paramsq*Umem, rep, instanceq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Urepq3Uinstanceq4U_print_q5U_printq6U _getattr_q7U containerq8Utypemodq9tq:ubu. =gM((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tn# typemod est l'id du module et namemod est son title typemod=container.getId() namemod=container.title_or_id() # proposition de nom pour l'element exemple_titre_base=namemod exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) # debut formulaire HTML simple de création d'element print '
' print '' print '

Identifiant :

' # partie specifique à ce module print '

Titre de la liste :

' print '

Groupes pouvant gérer la todo list (1) : ' print '

' # suite standart if dossier.type_zwook=="skin": print '' else: print '' print '' print '

' print '
' print '' print "

(1) Noms de groupes séparés par des virgules sans espace : exemple : Anonymous,Authenticated,mongroupe. A noter : les utilisateurs ayant le droit d'édit sur la page ont automatiquement le droit d'admin de la todo list

" print '

Liste des groupes :

    ' for gr in mem['zwo_obj'].zwo_info.groups.objectIds('Folder'): print '
  • '+gr+'
  • ' print '
' print '
' return printed q U_codeq T¢c@s d„ZdS(Nc;Cs¶tƒ}ttdƒƒ}ttdƒƒ}|}|} d} x8| t|dƒƒjo| d} |t | ƒ} qBW|d|dIJ|dIJ|d | d IJ|d IJ|d IJ|d IJt|dƒdjo|dIJn |dIJ|dt|dƒƒdIJ|dIJ|dIJ|dIJ|dIJ|dIJxPt tttt |dƒdƒdƒdƒdƒƒD]}|d|dIJq{W|dIJ|d IJ|ƒSdS(!NsgetIds title_or_idis objectIdsis(
ssB

Identifiant :

sS

Titre de la liste :

s7

Groupes pouvant gérer la todo list (1) : sJ

s type_zwooksskins.s1s's7

s
s

(1) Noms de groupes séparés par des virgules sans espace : exemple : Anonymous,Authenticated,mongroupe. A noter : les utilisateurs ayant le droit d'édit sur la page ont automatiquement le droit d'admin de la todo list

s%

Liste des groupes :

    szwo_objszwo_infosgroupssFolders
  • s
  • s
s
(s_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstrs _getiter_s _getitem_smemsgr(smemsdossiers_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstrs _getiter_s _getitem_sgr((sScript (Python)snew_htmls<            7  (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @Pq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_htmlq)U_paramsq*U mem,dossierq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Udossierq3U_print_q4U_printq5U _getattr_q6U containerq7Utypemodq8Unamemodq9Uexemple_titre_baseq:U exemple_titreq;UindiceqU _getitem_q?Ugrq@tqAubu. =hm((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TŸmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid] modname='todo' #~ ######### security checks ######### def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in instance.groups_admin: if el in mem['user_roles_id']: return 1 if not can_edit(): return 'Operation not permited' def add_item(titre,classe,realisation,notes,over,priorite): timegmt=str(DateTime('GMT+2').timeTime()) instance.manage_addFolder(timegmt,titre) obj=instance[timegmt] obj.manage_addProperty('classe',classe,'string') obj.manage_addProperty('notes',notes,'lines') obj.manage_addProperty('realisation',int(realisation),'int') obj.manage_addProperty('over',over,'string') obj.manage_addProperty('priorite',priorite,'string') return 1 if add_item(titre,classe,realisation,notes,over,priorite): return context.REQUEST.RESPONSE.redirect(mem['rep_url']) else: return 'Problem adding item' q U_codeq T¨c@sdd„ZdS(Nsoffcs½tttdƒdƒƒ‰ttˆdƒ|ƒ‰d} ‡‡d†} | ƒ odSn‡d†}|||||||ƒo2ttttdƒd ƒd ƒtˆd ƒƒSnd SdS( Nszwo_libs mem_mod_datasrep_objstodoc s`tˆdƒdjodSnx;ttˆdƒƒD]$}|tˆdƒjodSq4q4WdS(Nsdroit_edit_dossieris groups_admins user_roles_id(s _getitem_smems _getiter_s _getattr_sinstancesel(s _getitem_smems _getiter_s _getattr_sinstancesel(smemsinstance(sScript (Python)scan_edits sOperation not permitedcsÎtttdƒdƒƒƒ} tˆdƒ| |ƒtˆ| ƒ} t| dƒd|dƒt| dƒd|dƒt| dƒd t |ƒd ƒt| dƒd |dƒt| dƒd |dƒd SdS(NsGMT+2stimeTimesmanage_addFoldersmanage_addPropertysclassesstringsnotessliness realisationsintsoversprioritei(sstrs _getattr_sDateTimestimegmtsinstancestitres _getitem_sobjsclassesnotessints realisationsoverspriorite(stitresclasses realisationsnotessoversprioritesstrs _getattr_sDateTimestimegmtsinstances _getitem_sobjsint(sinstance(sScript (Python)sadd_items!sREQUESTsRESPONSEsredirectsrep_urlsProblem adding item(s _getattr_scontextsmems _getitem_sinstidsinstancesmodnamescan_editsadd_itemstitresclasses realisationsnotessoverspriorite(sinstidstitresclasses realisationsnotessprioritesovers _getattr_scontextsmems _getitem_sinstancesmodnamescan_editsadd_item((smemsinstancesScript (Python)sadd_todo_item_oks 2(sadd_todo_item_ok(sadd_todo_item_ok((sScript (Python)ssq U func_defaultsq(UoffqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}q Up4q!]q"UOwnerq#asUidq$Uadd_todo_item_okq%U_paramsq&U:instid,titre, classe,realisation,notes,priorite,over='off'q'U func_codeq((cShared.DC.Scripts.Signature FuncCode q)oq*}q+(U co_argcountq,KU co_varnamesq-(Uinstidq.Utitreq/Uclasseq0U realisationq1Unotesq2Uprioriteq3Uoverq4U _getattr_q5Ucontextq6Umemq7U _getitem_q8Uinstanceq9Umodnameq:Ucan_editq;Uadd_itemqsq U func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q }q!Ugregq"]q#UOwnerq$asUidq%U options_okq&U_paramsq'Uinstid,classes,prioritesq(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Uinstidq/Uclassesq0U prioritesq1U _getattr_q2Ucontextq3Umemq4Umodnameq5U _getitem_q6Uinstanceq7Ucan_editq8tq9ubu. =j²((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tnmem=context.zwo_lib.mem_data() modname='todo' instance=mem['rep_obj'][instid] #~ ######### security checks ######### def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in instance.groups_admin: if el in mem['user_roles_id']: return 1 if not can_edit(): return 'Operation not permited' print mem['zwo_obj'].zwo_lib.standard_html_header(mem) #print '

Add todo item

' print '
' print '

Titre :

' print '

Classe : ' print '

Priorité :

' print '

' print 'Terminé

' print '

Pourcentage de réalisation : ' print ' %

' print '

Notes :

' print '

' print '' print '

' print mem['zwo_obj'].zwo_lib.standard_html_footer(mem) return printed q U_codeq Tr c@s d„ZdS(NcBs tƒ}tttdƒdƒƒ‰d}ttˆdƒ|ƒ‰‡‡d†} | ƒ odSn|tttˆdƒdƒdƒˆƒIJ|d IJ|d IJ|d IJxUt tˆd ƒƒD]>} tt| d ƒdƒdƒ} |d| d| dIJqÃW|dIJ|dIJxUt tˆdƒƒD]>} tt| d ƒdƒdƒ} |d| d| dIJq/W|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|d|dIJ|dIJ|tttˆdƒdƒd ƒˆƒIJ|ƒSdS(!Nszwo_libsmem_datastodosrep_objc s`tˆdƒdjodSnx;ttˆdƒƒD]$}|tˆdƒjodSq4q4WdS(Nsdroit_edit_dossieris groups_admins user_roles_id(s _getitem_smems _getiter_s _getattr_sinstancesel(s _getitem_smems _getiter_s _getattr_sinstancesel(smemsinstance(sScript (Python)scan_edits sOperation not permitedszwo_objsstandard_html_headers.
s@

Titre :

s"

Classe : s&

Priorité :

s

sATerminé

s

Pourcentage de réalisation : sA %

sK

Notes :

s.

s*s

sstandard_html_footer(s_print_s_prints _getattr_scontextsmemsmodnames _getitem_sinstidsinstancescan_edits _getiter_sclassesopspr(sinstids_print_s_prints _getattr_scontextsmemsmodnames _getitem_sinstancescan_edits _getiter_sclassesopspr((smemsinstancesScript (Python)s add_todo_items:$+             +(s add_todo_item(s add_todo_item((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUp4q]q UOwnerq!asUidq"U add_todo_itemq#U_paramsq$Uinstidq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Uinstidq,U_print_q-U_printq.U _getattr_q/Ucontextq0Umemq1Umodnameq2U _getitem_q3Uinstanceq4Ucan_editq5U _getiter_q6Uclasseq7Uopq8Uprq9tq:ubu. =k,ó((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T¡modname='todo' #recuperation parametres instid=instance.getId() form=context.REQUEST.form groups_admin=instance.groups_admin list_title=instance.list_title img_on='' img_off='' priorite_color={} for el in instance.priorites: li=el.split(':=:') nom=li[0] col=li[1] priorite_color[nom]=col #~ ######### security checks ######### def is_conf(): if 'config_zwook' in mem['user_roles_id']: return 1 def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in groups_admin: if el in mem['user_roles_id']: return 1 def is_manager(): if 'Manager' in mem['user_roles_id']: return 1 mode='normal' if form.has_key('mode'): mode=str(form['mode']) #~ ############## affichage du module ################ print '' print '' print '' print '' modli=instance.objectValues() modli.reverse() for mod in modli: modid=mod.getId() afmod=1 if mode<>'term': if mod.over=='on': afmod=None if afmod: modid=mod.getId() over=mod.over classe=mod.classe priorite=mod.priorite realisation=mod.realisation notes='' sep='
' a=0 notesli=mod.notes lenotes=len(notesli) isnote=None for note in notesli: if a==lenotes-1: sep='' notes=notes+note+sep if note<>'': isnote=1 a=a+1 if not isnote: notes=' ' print '' print '' print '' print '' print '' c='Non terminé' d='white' if over=='on': c='Terminé' d='#D5DAF4' print '' print '' ed='' if can_edit(): ed=' [E]' print '' print '' print '
'+list_title+'' print '' if can_edit(): print ' [ Add item ]' print ' [ Options ]' if mode=='normal': print ' '+img_on+'' elif mode=='term': print ' '+img_off+'' print '' print '
'+mod.title+'
'+classe print '' print '' i=0 while i<=100: color='#CCCCCC' if i<=realisation: color='lime' print '' i=i+10 print '' print '
' print ''+str(i)+'%
' print '
'+priorite+'' if is_manager(): print '' print '[Mod]' print '
' print c+'
' if can_edit(): print '' if over=='on': print '[Remettre]
' else: print '[Terminer]
' print '
' print '
'+notes+ed+'
' return printed q U_codeq Tõc@s d„ZdS(Nc0fs^tƒ}d}t|dƒƒ}tttdƒdƒ}t|dƒ‰t|dƒ} d|d} d|d } h} x`t t|d ƒƒD]I}t|d ƒd ƒ}t|d ƒ}t|dƒ}|t| ƒ||d?t|+ƒd@|dA|dBt|+ƒdCIJ|+dD}+qW|dEIJ|dFIJ|dGt| |!ƒd<|!d$IJdH}-dI}.|d)jodJ}-dK}.n|dL|.d<IJ|ƒo6|dMIJ|dNt|dOƒƒdPIJ|dQIJn||-d.IJ|ƒo}|dMIJ|d)jo.|dR|dS|dT|dU|dVIJn+|dR|dS|dT|dW|dXIJ|d#IJn|dYIJ|dZIJd-}/|ƒo"d[|d\|dT|d]}/n|d^|#|/d$IJ|d%IJqUqUW|dFIJ|ƒSdS(_NstodosgetIdsREQUESTsforms groups_admins list_titless/images/off.png" border="0" />s prioritesssplits:=:iics"dtˆdƒjodSndS(Ns config_zwooks user_roles_idi(s _getitem_smem(s _getitem_smem(smem(sScript (Python)sis_confsc sWtˆdƒdjodSnx2tˆƒD]$}|tˆdƒjodSq+q+WdS(Nsdroit_edit_dossieris user_roles_id(s _getitem_smems _getiter_s groups_adminsel(s _getitem_smems _getiter_s groups_adminsel(smems groups_admin(sScript (Python)scan_edits  cs"dtˆdƒjodSndS(NsManagers user_roles_idi(s _getitem_smem(s _getitem_smem(smem(sScript (Python)s is_managerssnormalshas_keysmodessssEss objectValuessreversesoversonsclassespriorites realisationss
snotess ss-s/ss [E]sGsss
sss [ Add item ]s/options?instid=s">Options ]s3 ssterms5 ss
stitles
s<shids#CCCCCCslimesCi s#s
ss %
s,
s [Mod]s
s[Remettre]
s &end=1&mode=s">Terminer]
s
(/s_print_s_printsmodnames _getattr_sinstancesinstidscontextsforms groups_admins list_titlesimg_onsimg_offspriorite_colors _getiter_selslis _getitem_snomscols_write_sis_confscan_edits is_managersmodesstrsmodlismodsmodidsafmodsNonesoversclassespriorites realisationsnotesssepsasnoteslislenslenotessisnotesnotesiscolorscsdsed(0smemsinstances_print_s_printsmodnames _getattr_sinstidscontextsforms groups_admins list_titlesimg_onsimg_offspriorite_colors _getiter_selslis _getitem_snomscols_write_sis_confscan_edits is_managersmodesstrsmodlismodsmodidsafmodsNonesoversclassespriorites realisationsnotesssepsasnoteslislenslenotessisnotesnotesiscolorscsdsed((smems groups_adminsScript (Python)s view_htmlsÒ       &*        $          F  #       .*   " (s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @Qq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Uview_html_appendq)U_paramsq*U mem,instanceq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Uinstanceq3U_print_q4U_printq5Umodnameq6U _getattr_q7Uinstidq8Ucontextq9Uformq:U groups_adminq;U list_titleqUpriorite_colorq?U _getiter_q@UelqAUliqBU _getitem_qCUnomqDUcolqEU_write_qFUis_confqGUcan_editqHU is_managerqIUmodeqJUstrqKUmodliqLUmodqMUmodidqNUafmodqOUNoneqPUoverqQUclasseqRUprioriteqSU realisationqTUnotesqUUsepqVUaUnotesliqWUlenqXUlenotesqYUisnoteqZUnoteq[UiUcolorq\UcUdUedq]tq^ubu. =l ”((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TEmem=context.zwo_lib.mem_mod_data() #~ ######### security checks ######### def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in instance.groups_admin: if el in mem['user_roles_id']: return 1 if not can_edit(): return "Operation not permited" #print context.standard_html_header(mem) mod=mem['rep_obj'][instid][modid] noteli=mod.notes note='' for el in noteli: note=note+el+'\n' print '
' print '

'+mod.title+'

' print '

' print '' print '' print '

' print '
' #print context.standard_html_footer(mem) return printed q U_codeq Tc@s d„ZdS(Nc stƒ}tttdƒdƒƒ‰‡d†}|ƒ odSntttˆdƒ|ƒ|ƒ} t| dƒ} d} x"t | ƒD]} | | d} q†W|d IJ|d t| d ƒd IJ|d | dIJ|d|dIJ|d|dIJ|dIJ|dIJ|ƒSdS(Nszwo_libs mem_mod_datac s`tˆdƒdjodSnx;tttdƒƒD]$}|tˆdƒjodSq4q4WdS(Nsdroit_edit_dossieris groups_admins user_roles_id(s _getitem_smems _getiter_s _getattr_sinstancesel(s _getitem_smems _getiter_s _getattr_sinstancesel(smem(sScript (Python)scan_edits sOperation not permitedsrep_objsnotesss s*
s

stitles

s-

s*s)

s
(s_print_s_prints _getattr_scontextsmemscan_edits _getitem_sinstidsmodidsmodsnotelisnotes _getiter_sel(sinstidsmodids_print_s_prints _getattr_scontextsmemscan_edits _getitem_smodsnotelisnotes _getiter_sel((smemsScript (Python)s edit_notes $ !    (s edit_note(s edit_note((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUp4q]q UOwnerq!asUidq"U edit_noteq#U_paramsq$U instid, modidq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Uinstidq,Umodidq-U_print_q.U_printq/U _getattr_q0Ucontextq1Umemq2Ucan_editq3U _getitem_q4Umodq5Unoteliq6Unoteq7U _getiter_q8Uelq9tq:ubu. =mw((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqU¦‰PNG  IHDR*º† pHYs  šœtIMEÔ Ct=EIDATxÚcüÿÿÿû5² „€`ÈcÆw«eˆ,ï×È †' print '

Les classes sont des catégories personalisées. Les priorités sont à définir avec une couleur d\'affichage : une par ligne sous la forme : priorité:=:code_couleur

' print '

Classes : ' print '

Priorités :

' print '

' print '

' print '' print '' print mem['zwo_obj'].zwo_lib.standard_html_footer(mem) return printed q U_codeq Tl c@s d„ZdS(Nc2s'tƒ}tttdƒdƒƒ‰d}ttˆdƒ|ƒ‰tˆdƒ} tˆdƒ} ‡‡d†} | ƒ odSn|tttˆd ƒdƒd ƒˆƒIJ|d IJ|d IJ|d IJd} t | ƒd}xOt| ƒD]A}|}d}|djo d}n| ||} |d}qîW|| dIJ|dIJd} t | ƒd}xOt| ƒD]A}|}d}|djo d}n| ||} |d}qnW|| dIJ|dIJ|dIJ|d|dIJ|dIJ|tttˆd ƒdƒdƒˆƒIJ|ƒSdS(Nszwo_libsmem_datastodosrep_objsclassess prioritesc s`tˆdƒdjodSnx;ttˆdƒƒD]$}|tˆdƒjodSq4q4WdS(Nsdroit_edit_dossieris groups_admins user_roles_id(s _getitem_smems _getiter_s _getattr_sinstancesel(s _getitem_smems _getiter_s _getattr_sinstancesel(smemsinstance(sScript (Python)scan_edit s sOperation not permitedszwo_objsstandard_html_headers(

Les classes sont des catégories personalisées. Les priorités sont à définir avec une couleur d'affichage : une par ligne sous la forme : priorité:=:code_couleur

s9

Classes : s=

Priorités :

s

s2

s*s
sstandard_html_footer(s_print_s_prints _getattr_scontextsmemsmodnames _getitem_sinstidsinstancesclassess prioritesscan_editsaslensis _getiter_sclassesopssepspr(sinstids_print_s_prints _getattr_scontextsmemsmodnames _getitem_sinstancesclassess prioritesscan_editsaslensis _getiter_sclassesopssepspr((smemsinstancesScript (Python)soptionssJ$+         +(soptions(soptions((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUgregq]q UOwnerq!asUidq"Uoptionsq#U_paramsq$Uinstidq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Uinstidq,U_print_q-U_printq.U _getattr_q/Ucontextq0Umemq1Umodnameq2U _getitem_q3Uinstanceq4Uclassesq5U prioritesq6Ucan_editq7UaUlenq8UiU _getiter_q9Uclasseq:Uopq;Usepqubu. =rÒ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T³ mem=context.zwo_lib.mem_mod_data() oldid=id rep=mem['rep_obj'] modid=container.getId() instance=rep[instid] grpsact=instance.grpsact grpsview=instance.grpsview #enablehtml=instance.enablehtml #enablejavascript=instance.enablejavascript #~ controle des permissions perm_edit=0 perm_submit=0 roli=mem['user_roles_id'] for g in roli: if g in grpsview: perm_submit=1 for g in roli: if g in grpsact: perm_edit=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsview: perm_submit=1 if 'Anonymous' in grpsact: perm_edit=1 if mem['droit_edit_dossier']==1: perm_edit=1 if str(sb)=='1': lieu=rep.zwo_standby_content[modid] else: lieu=instance # recup de positionurl (si l'url fait référence au site zwook ou à un autre site web) : # si propriété n'existe pas on la crée : if not lieu[id].hasProperty('positionurl'): lieu[id].manage_addProperty('positionurl',positionurl,'string') positionurl=lieu[id].positionurl # vérification de l'url #url=context.verif_url(url,positionurl) """if url == 'url0': #~ on retourne remplir le formulaire si l'url n'est pas correcte #retour=context.REQUEST['HTTP_REFERER'] retour='javascript:history.back()' print context.zwo_lib.standard_html_header(mem) print 'Veuillez saisir une URL (adresse de site web) valide.' print 'ok' print context.zwo_lib.standard_html_footer(mem) return printed else: """ a=1 if a==1: # supprime les espaces et sauts de ligne en début et fin de description description=string.strip(description) # coupe la description en lignes à chaque retour chariot description=string.split(description,'\n') if string.strip(texte)=='': if positionurl=='': texte=string.replace(url,'http://','') i=string.find(texte,'/') if str(i)<>'-1': texte=texte[0:i] z=string.find(texte,'?') if str(z)<>'-1': texte=texte[0:z] else: texte=string.replace(url,mem['rep_url'],'') z=string.find(texte,'?') if str(z)<>'-1': texte=texte[0:z] i=string.rfind(texte,'/') if str(i)<>'-1': texte=texte[i:len(texte)] texte=string.replace(texte,'/','') if perm_edit==1: lieu[id].manage_changeProperties(url=url) lieu[id].manage_changeProperties(texte=texte) lieu[id].manage_changeProperties(description=description) lieu[id].manage_changeProperties(categories=categories) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q Utitleq UIFO - moderateur - validation du form editer_post si modif du post proposéq U_codeqTñ c@sdddddd„ZdS(Nss0c#Cs€tttdƒdƒƒ} |} t| dƒ} ttdƒƒ}t| |ƒ}t|dƒ}t|dƒ}d}d}t| dƒ}x+t|ƒD]}||jo d }q—q—Wx+t|ƒD]}||jo d }qÅqÅWd |jo2d |jo d }nd |jo d }q%nt| d ƒd jo d }nt|ƒd jott| dƒ|ƒ}n|}tt||ƒdƒdƒ o&tt||ƒdƒd|dƒntt||ƒdƒ}dd }|d jo_ttdƒ|ƒ}ttdƒ|dƒ}ttdƒ|ƒdjo…|djo§ttdƒ|ddƒ}ttdƒ|dƒ}t|ƒdjot|d|…ƒ}nttdƒ|dƒ}t|ƒdjot|d|…ƒ}q¹q½ttdƒ|t| dƒdƒ}ttdƒ|dƒ}t|ƒdjot|d|…ƒ}nttdƒ|dƒ}t|ƒdjo:t||t|ƒ…ƒ}ttdƒ|ddƒ}q½n|d jo€tt||ƒd ƒd!|ƒtt||ƒd ƒd"|ƒtt||ƒd ƒd#|ƒtt||ƒd ƒd$|ƒqNnttttd%ƒd&ƒd'ƒt| dƒƒdS((Nszwo_libs mem_mod_datasrep_objsgetIdsgrpsactsgrpsviewis user_roles_idis Authenticateds Anonymoussdroit_edit_dossiers1szwo_standby_contents hasPropertys positionurlsmanage_addPropertysstrings•if url == 'url0': #~ on retourne remplir le formulaire si l'url n'est pas correcte #retour=context.REQUEST['HTTP_REFERER'] retour='javascript:history.back()' print context.zwo_lib.standard_html_header(mem) print 'Veuillez saisir une URL (adresse de site web) valide.' print 'ok' print context.zwo_lib.standard_html_footer(mem) return printed else: sstripssplits ssreplaceshttp://sfinds/s-1s?srep_urlsrfindsmanage_changePropertiessurlstextes descriptions categoriessREQUESTsRESPONSEsredirect(s _getattr_scontextsmemsidsoldids _getitem_sreps containersmodidsinstidsinstancesgrpsactsgrpsviews perm_edits perm_submitsrolis _getiter_sgsstrssbslieus positionurlsasstrings descriptionstextesurlsiszslens categories(sinstidsurlstextes positionurls descriptionsids categoriesssbs _getattr_scontextsmemsoldids _getitem_sreps containersmodidsinstancesgrpsactsgrpsviews perm_edits perm_submitsrolis _getiter_sgsstrslieusasstringsiszslen((sScript (Python)sedit_okst         &   $#*(sedit_ok(sedit_ok((sScript (Python)ssqU func_defaultsq(UUUUU0tqU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathq U name_m_selfq!Uscriptq"usbU__ac_local_roles__q#}q$Ugregq%]q&UOwnerq'asUidq(Uedit_okq)U_paramsq*UPinstid, url, texte, positionurl='', description='', id='', categories='', sb='0'q+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Uinstidq2Uurlq3Utexteq4U positionurlq5U descriptionq6Uidq7U categoriesq8Usbq9U _getattr_q:Ucontextq;UmemqUrepq?U containerq@UmodidqAUinstanceqBUgrpsactqCUgrpsviewqDU perm_editqEU perm_submitqFUroliqGU _getiter_qHUgUstrqIUlieuqJUaUstringqKUiUzUlenqLtqMubu. =vï((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T! mem=context.zwo_lib.mem_mod_data() rep=mem['rep_obj'] instance=rep[instid] modid=container.getId() if str(sb)=='1': obj=rep.zwo_standby_content[modid][id] else: obj=instance[id] cats=instance.categories catslink=obj.categories grpsact=instance.grpsact grpsview=instance.grpsview url=obj.url texte=obj.texte description=obj.description i=0 des='' for l in description: des=des+l if i+1<>len(description): des=des+'\n' i=i+1 #~ controle des permissions perm_edit=0 perm_submit=0 roli=mem['user_roles_id'] for g in roli: if g in grpsview: perm_submit=1 for g in roli: if g in grpsact: perm_edit=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsview: perm_submit=1 if 'Anonymous' in grpsact: perm_edit=1 if mem['droit_edit_dossier']==1: perm_edit=1 print context.zwo_lib.standard_html_header(mem) desti='edit_ok' #~ editer if perm_edit==1: print '

Editer le lien

' print '
' print '' print '' print '' print '' print '' print '' print '' print '' print '
' print 'Url (1):' print '' print '' print '
' print 'Texte (2):' print '' print '' print '
' print 'Description :' print '' print '

' print'
' if len(cats)>1: print 'Catégories (3):' print '' print '' print '' print '' print'
' print '

' print '

' print '(1) Adresse internet : par exemple : http://www.zwook.org/documentation
' print '(2) Texte sur lequel va cliquer l\'utilisateur
' if len(cats)>1: print '(3) Utiliser la touche Ctrl pour sélectionner plusieurs catégories' print '

' print '' print '' print '' print '
' print context.zwo_lib.standard_html_footer(mem) return printed q Utitleq U+FO - moderateur - formulaire éditer le lienq U_codeqTc@sdd„ZdS(Ns0c ‚Cstƒ}tttdƒdƒƒ}t|dƒ} t| |ƒ} tt dƒƒ} t |ƒdjo%ttt| dƒ| ƒ|ƒ}nt| |ƒ}t| dƒ}t|dƒ}t| dƒ}t| d ƒ}t|d ƒ}t|d ƒ}t|d ƒ}d }d}xMt|ƒD]?}||}|dt|ƒjo|d}n|d}qWd }d }t|dƒ}x+t|ƒD]}||jo d}qˆqˆWx+t|ƒD]}||jo d}q¶q¶Wd|jo2d|jo d}nd|jo d}qnt|dƒdjo d}n|tttdƒdƒ|ƒIJd}|djo|dIJ|d|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|d|dIJ|d IJ|dIJ|d!IJ|dIJ|dIJ|d"|dIJ|d IJ|dIJ|d#IJ|dIJ|dIJ|d$|d%IJ|d&IJ|dIJt|ƒdjo»|d'IJ|dIJ|dIJ|d(IJd }x||t|ƒjoh|d)t||ƒd*IJt||ƒ|jo|d+IJn|d,t||ƒd-IJ|d}q«W|d.IJn|d/|dIJ|d0IJ|d1IJ|d2IJ|d3IJ|d4IJ|d5IJt|ƒdjo|d6IJn|d7IJ|d8|dIJ|d9IJ|d:|dIJ|d;IJn|tttdƒd<ƒ|ƒIJ|ƒSdS(=Nszwo_libs mem_mod_datasrep_objsgetIds1szwo_standby_contents categoriessgrpsactsgrpsviewsurlstextes descriptionisis s user_roles_ids Authenticateds Anonymoussdroit_edit_dossiersstandard_html_headersedit_oks

Editer le lien

s
s2s#ssCatégories (3):s,s*s
sUrl (1):ss/s

s
s

s

sM(1) Adresse internet : par exemple : http://www.zwook.org/documentation
s3(2) Texte sur lequel va cliquer l'utilisateur
sB(3) Utiliser la touche Ctrl pour sélectionner plusieurs catégoriess

s&s&sqU func_defaultsq(U0tqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q }q!Ugregq"]q#UOwnerq$asUidq%U editer_postq&U_paramsq'Uid, instid, sb='0'q(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Uidq/Uinstidq0Usbq1U_print_q2U_printq3U _getattr_q4Ucontextq5Umemq6U _getitem_q7Urepq8Uinstanceq9U containerq:Umodidq;UstrqUcatslinkq?Ugrpsactq@UgrpsviewqAUurlqBUtexteqCU descriptionqDUiUdesqEU _getiter_qFUlUlenqGU perm_editqHU perm_submitqIUroliqJUgUdestiqKtqLubu. =q h((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)UtitleqUVérifie la syntaxe d'une URLq U Script_magicq KU_bodyq T›mem=context.zwo_lib.mem_data() zwo_url=mem['zwo_url'] # vérification de la syntaxe d'une url if url=='': url = 'url0' else: # on enleve les espaces en début et fin d'url url=string.strip(url) #faut il faire un controle autonakeur ? #interdits=['<','>'] #for interdit in interdits: # if string.find(url,interdit) # verif caractères : caracteres=string.ascii_letters+string.digits+'.'+'/'+':'+'?'+'&'+'='+'_' espace=string.find(url,' ') point=string.find(url,'.') prot=string.find(url,'http://') protzwook=string.find(url,zwo_url) # si l'url n'est pas sur le site zwook lui même mais sur le web : if positionurl <> '1' : if str(point)=='-1' or espace<>-1: url='url0' else: for c in url: if c not in caracteres: url='url0' if url <> 'url0' and prot==-1: url = 'http://' + url # si l'url est sur le site zwook : else: if espace<>-1 or (prot<>-1 and protzwook==-1): url='url0' else: for c in url: if c not in caracteres: url='url0' if string.find(url,'/',0,1)==-1: zwook = zwo_url + '/' else: zwook = zwo_url if url <> 'url0' and protzwook==-1: url = zwook + url return url q Uwarningsq )U_codeqT¦c@sdd„ZdS(NicCsNtttdƒdƒƒ}t|dƒ}|djo d}nttdƒ|ƒ}ttdƒttdƒd d d d d dd}ttdƒ|dƒ} ttdƒ|d ƒ} ttdƒ|dƒ} ttdƒ||ƒ} |djo†t | ƒdjp | d jo d}n/x+t|ƒD]}||jo d}q3q3W|djo | d jod|}qFnÆ| d jp| d jo | d jo d}n/x+t|ƒD]}||jo d}qÂqÂWttdƒ|d ddƒd jo|d }n|}|djo | d jo||}n|SdS(Nszwo_libsmem_dataszwo_urlssurl0sstrips ascii_letterssdigitss.s/s:s?s&s=s_sfinds shttp://s1s-1ii(s _getattr_scontextsmems _getitem_szwo_urlsurlsstrings caracteressespacespointsprots protzwooks positionurlsstrs _getiter_scszwook(surls positionurls _getattr_scontextsmems _getitem_szwo_urlsstrings caracteressespacespointsprots protzwooksstrs _getiter_scszwook((sScript (Python)s verif_urls<  8 !   *   &(s verif_url(s verif_url((sScript (Python)ssqU func_defaultsq(KtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q }q!Uadminq"]q#UOwnerq$asUidq%U verif_urlq&U_paramsq'Uurl, positionurl=0q(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Uurlq/U positionurlq0U _getattr_q1Ucontextq2Umemq3U _getitem_q4Uzwo_urlq5Ustringq6U caracteresq7Uespaceq8Upointq9Uprotq:U protzwookq;Ustrqtq?ubu. =oþ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T¡# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] url_lieu=lieu.absolute_url() obj=lieu[idobj] if type_rep=="skin": try: skin=context.zwo_info.skins[nom_rep] except: return 'nooo' obj=skin[instid] else: dossier=mem['rep_obj'] instance=dossier[instid] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' g1=string.split(grpsact,',') g2=string.split(grpsview,',') categoriesnew = string.split(categoriesnew,'\r\n') #catsold=instance.categories # création d'une nouvelle liste avec catsold + catsnew catsnew=[''] for cat in categoriesnew: if cat <>'': catsnew.append(cat) catsnew.sort() #i = 0 #while i < len(catsold): # cats.append(catsold[i]) # i = i + 1 #i=0 #while i < len(catsnew): # cats.append(catsnew[i]) # i = i + 1 # EXEMPLE MODIFICATION obj.manage_changeProperties(grpsact=g1) obj.manage_changeProperties(grpsview=g2) obj.manage_changeProperties(enablehtml=enablehtml) obj.manage_changeProperties(enablejavascript=enablejavascript) obj.manage_changeProperties(categories=catsnew) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q Utitleq U1BO - validation de la modification d'une instanceq U_codeqTc@sddddd„ZdS(Nssoffc Cs tttdƒdƒƒ} t| dƒ} t| dƒƒ}t| |ƒ}|djoFy%ttttdƒdƒ|ƒ}Wn dSnXt||ƒ}nt| d ƒ}t||ƒ}t| d ƒd jod Snttd ƒ|dƒ}ttd ƒ|dƒ}ttd ƒ|dƒ}dg}x8t|ƒD]*}|djot|dƒ|ƒq8q8Wt|dƒƒt|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd|ƒttttdƒdƒdƒdƒdS(Nszwo_libs mem_mod_datasparents absolute_urlsskinszwo_infosskinssnooosrep_objsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !ssplits,s ssappendssortsmanage_changePropertiessgrpsactsgrpsviews enablehtmlsenablejavascripts categoriessREQUESTsRESPONSEsredirects../../(s _getattr_scontextsmems _getitem_slieusurl_lieusidobjsobjstype_repsnom_repsskinsinstidsdossiersinstancesstringsgrpsactsg1sgrpsviewsg2s categoriesnewscatsnews _getiter_scats enablehtmlsenablejavascript(sidobjsinstidsnom_repstype_repsgrpsactsgrpsviews categoriesnews enablehtmlsenablejavascripts _getattr_scontextsmems _getitem_slieusurl_lieusobjsskinsdossiersinstancesstringsg1sg2scatsnews _getiter_scat((sScript (Python)s config_oks8 (   (s config_ok(s config_ok((sScript (Python)ssqU func_defaultsq(UUUoffqhtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq usbU_dav_writelocksq!(U @Rq"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Uxavq)]q*UOwnerq+asUidq,U config_okq-U_paramsq.Ujidobj,instid,nom_rep,type_rep,grpsact,grpsview='',categoriesnew='',enablehtml='off',enablejavascript='off'q/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4K U co_varnamesq5(Uidobjq6Uinstidq7Unom_repq8Utype_repq9Ugrpsactq:Ugrpsviewq;U categoriesnewqU _getattr_q?Ucontextq@UmemqAU _getitem_qBUlieuqCUurl_lieuqDUobjqEUskinqFUdossierqGUinstanceqHUstringqIUg1qJUg2qKUcatsnewqLU _getiter_qMUcatqNtqOubu. =sd((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÏ# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] url_lieu=lieu.absolute_url() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId() print '' print '

Cet identifiant '+idobj+' est déja pris
' print 'Veuillez en choisir un autre
' print 'Redirection automatique dans 2 secondes.

' print 'Si la redirection automatique ne fonctionne pas, cliquez ici : redirection manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIÉTÉS OBLIGATOIRES DU MODULE obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') g1=string.split(grpsact,',') g2=string.split(grpsview,',') # AJOUT D'AUTRES PROPRIÉTÉS en fonction du module obj.manage_addProperty('grpsact',g1,'lines') obj.manage_addProperty('grpsview',g2,'lines') obj.manage_addProperty('enablehtml',enablehtml,'string') obj.manage_addProperty('enablejavascript',enablejavascript,'string') #obj.manage_addProperty('nom_propriete','valeur default',type) # creation d'une propriété categories de type 'lines' # cette propriété pourra etre déplacé dans zwo_info plus tard categories = string.split(categories,'\r\n') catsnew=[''] for cat in categories: if cat <>'': catsnew.append(cat) catsnew.sort() obj.manage_addProperty('categories',categories,'lines') # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier chois comme type uniquement) #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) context.REQUEST.RESPONSE.redirect('../../place?obj='+idobj) return q Utitleq U-BO - validation de la création d'une instanceq U_codeqT| c@sddddd„ZdS(NssoffcCs¼tƒ}tttdƒdƒƒ} t| dƒ} t| dƒƒ} t| dƒdjodSntttdƒdƒ|ƒ}|t| d ƒƒjoud tt d ƒƒ}|d |d IJ|d|dIJ|dIJ|dIJ|d|dIJ|dIJ|ƒSnt| dƒ||ƒt| |ƒ}t|dƒdddƒt|dƒdtt d ƒƒdƒtt dƒ|dƒ}tt dƒ|dƒ}t|dƒd|dƒt|dƒd|dƒt|dƒd|dƒt|dƒd |dƒtt dƒ|d!ƒ}d"g}x8t|ƒD]*}|d"jot|d#ƒ|ƒq4q4Wt|d$ƒƒt|dƒd%|dƒttttd&ƒd'ƒd(ƒd)|ƒdSdS(*Nszwo_libs mem_mod_datasparents absolute_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopes objectIdss../ajout_element?type=sgetIds7s.

Cet identifiant s est déja pris
s"Veuillez en choisir un autre
s6Redirection automatique dans 2 secondes.

sGSi la redirection automatique ne fonctionne pas, cliquez ici : redirection manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstringssplits,sgrpsactslinessgrpsviews enablehtmlsenablejavascripts ssappendssorts categoriessREQUESTsRESPONSEsredirects../../place?obj=(s_print_s_prints _getattr_scontextsmems _getitem_slieusurl_lieustitresidobjs containersurlsobjsstringsgrpsactsg1sgrpsviewsg2s enablehtmlsenablejavascripts categoriesscatsnews _getiter_scat(stitresgrpsactsgrpsviews categoriess enablehtmlsenablejavascripts_print_s_prints _getattr_scontextsmems _getitem_slieusurl_lieusidobjs containersurlsobjsstringsg1sg2scatsnews _getiter_scat((sScript (Python)snew_oksF    "   (snew_ok(snew_ok((sScript (Python)ssqU func_defaultsq(UUUoffqhtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerq usbU_dav_writelocksq!(U @Tq"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Ugregq)]q*UOwnerq+asUidq,Unew_okq-U_paramsq.UOtitre,grpsact,grpsview='',categories='',enablehtml='off',enablejavascript='off'q/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4KU co_varnamesq5(Utitreq6Ugrpsactq7Ugrpsviewq8U categoriesq9U enablehtmlq:Uenablejavascriptq;U_print_qUcontextq?Umemq@U _getitem_qAUlieuqBUurl_lieuqCUidobjqDU containerqEUurlqFUobjqGUstringqHUg1qIUg2qJUcatsnewqKU _getiter_qLUcatqMtqNubu. =tï((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)UtitleqU/FO - publicateur - Résultat html du form "post"q U Script_magicq KU_bodyq T³mem=context.zwo_lib.mem_mod_data() aff=[] aff.append(context.zwo_lib.standard_html_header(mem)) aff.append('

') aff.append('Merci d\'avoir posté ce lien. Votre proposition a été enregistrée et le lien sera publié dès acceptation par un responsable éditorial.') aff.append('

Ok

') aff.append('

') aff.append(context.zwo_lib.standard_html_footer(mem)) return ''.join(aff) q Uwarningsq )U_codeqT”c@s d„ZdS(NcCsëtttdƒdƒƒ}g}t|dƒtttdƒdƒ|ƒƒt|dƒdƒt|dƒdƒt|dƒdt|dƒd ƒt|dƒd ƒt|dƒtttdƒd ƒ|ƒƒtd d ƒ|ƒSdS(Nszwo_libs mem_mod_datasappendsstandard_html_headers

s…Merci d'avoir posté ce lien. Votre proposition a été enregistrée et le lien sera publié dès acceptation par un responsable éditorial.s

Ok

s

sstandard_html_footerssjoin(s _getattr_scontextsmemsaffs _getitem_(s _getattr_scontextsmemsaffs _getitem_((sScript (Python)s post_thankss +$((s post_thanks(s post_thanks((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}q Ugregq!]q"UOwnerq#asUidq$U post_thanksq%U_paramsq&UU func_codeq'(cShared.DC.Scripts.Signature FuncCode q(oq)}q*(U co_argcountq+KU co_varnamesq,(U _getattr_q-Ucontextq.Umemq/Uaffq0U _getitem_q1tq2ubu. =u*8((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T‚#recuperation parametres grpsact=instance.grpsact grpsview=instance.grpsview modid=container.getId() instid=instance.getId() enablehtml=instance.enablehtml enablejavascript=instance.enablejavascript categories=instance.categories #~ controle des permissions perm_edit=0 perm_submit=0 roli=mem['user_roles_id'] for g in roli: if g in grpsview: perm_submit=1 for g in roli: if g in grpsact: perm_edit=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsview: perm_submit=1 if 'Anonymous' in grpsact: perm_edit=1 if mem['droit_edit_dossier']==1: perm_edit=1 aff='' #~ affichage des liens en attente if perm_edit==1: if 'zwo_standby_content' in mem['rep_obj'].objectIds(): att=[] if modid in mem['rep_obj'].zwo_standby_content.objectIds(): for a in mem['rep_obj'].zwo_standby_content[modid].objectValues(): att.append(a) att.reverse() if len(att)<>0: aff=aff+'

Liens en attente

' for mes in att: des='' if len(mes.description)>1: des=des+'//n//' i=0 for l in mes.description: des=des+l if i+1<>len(mes.description): des=des+'//n//' i=i+1 texte=mes.texte url=mes.url if enablehtml=='off': texte=string.replace(texte,'<','<') texte=string.replace(texte,'>','>') des=string.replace(des,'<','<') des=string.replace(des,'>','>') des=string.replace(des,'//n//','
') if enablejavascript=='off': texte=string.replace(texte,'' print '' print '' print '' print '' print '' if liste!=[]: fin_choix = 'sous-rubrique à la rubrique choisie' print ' \n\n\n' if fixbox and len(liste)>nb_cat_wo_fixbox: print ' ' print ' ' else: fin_choix = 'rubrique' print ' ' print '' if perm_edit: debut_choix='Ajoutez' bouton_submit='Ajouter' else: debut_choix='Proposez' bouton_submit='Proposer' print '\n \n \n' print ' ' print ' \n' print '\n ' print '\n' print ' \n ' print '\n' print ' \n ' print '\n' print ' \n ' print '' print '
' print '

Choisissez (COCHEZ) une rubrique:

' print '
' #print ' ' print ' ' print ' ' else: print ' ' racine_sel = '' if chem==['']: racine_sel = ' checked' print ' ' + folder_icon + ' (Racine de l\'annuaire)
' for l in liste: print ' ' + l print '
' print ' (Aucune rubrique n\'a encore été créée)' print '
' print '

'+debut_choix+' éventuellement une '+fin_choix+':

' print '
' print '
 ' print ' ' print ' ' print '
' print '

'+ debut_choix + ' un lien dans cette rubrique:

' print '
\n URL: \n \n \n
\n Titre: \n \n
\n Description: \n \n \n   ' print '
' print '' print context.zwo_lib.standard_html_footer(mem) #print context.zwo_lib.standard_minimal_footer(mem) return printed q Utitleq U*formulaire d'ajout de lien ou de catégorieq U_codeqT¶6c@sddddddd„ZdS(Nsc@×sÜtƒ}tttdƒdƒƒ‰d‰d} d} dkl ‰|djodSnt t ˆdƒ|ƒ}|}ttd ƒƒ‰ttd ƒƒ}d ˆd ‰d ˆd‰t|dƒ}t|dƒ}ttd ƒƒ}t|d ƒƒ}t|dƒƒ‰t|dƒ}t|dƒ}tttdƒdƒ}|t|ƒdIJ|d?IJ|d@IJ|dAIJ|dBIJ|dCIJ|dDIJ|dEIJ|dF|dGIJ|dHIJ|dIIJ|9gjoádJ};|dKIJ|dLIJ|dMIJ| ot6|9ƒ| jo,|dNIJ|dOIJ|dPIJ|dQIJn |dRIJd}<ˆ dgjo dS}<n|dTˆdU|<dVIJx"t&|9ƒD]}=|dT|=IJqW|dPIJn%dW};|dXIJ|dYIJ|dPIJ|dZIJˆ od[}>d\}?n d]}>d^}?|d_IJ|d`|>da|;dbIJ|dcIJ|ddIJ|deIJ|dfIJ|dg|dGIJ|dh|?diIJ|djIJ|dkIJ|d`|>dlIJ|dPIJ|ddIJ|dm|dnIJ|ddIJ|do|dpIJ|ddIJ|dq|drIJ|ds|?dtIJ|dZIJ|duIJ|dvIJ|tttdƒdwƒˆƒIJ|ƒSdS(xsM Affiche l'arbre T dans la liste l. niveau est la profondeur actuelle. szwo_libsmem_dataii(s html_quotessErreur! instid est vide!srep_objs absolute_urlsgetIdss_sgrpsactsgrpsviewsgetPhysicalPaths enablehtmlsenablejavascriptsREQUESTsSESSIONsinstids HTTP_REFERERs retour_hrefs racine_urlszwo_urls startswithsOKsreplaceiNssplits/s sBADs user_roles_ids Authenticateds Anonymoussdroit_edit_dossiers"Vous n'avez aucun droit pour cela!scategory_path=s maketranss translates 's,schem=srepcat=cs2dˆdt|ƒdttdƒƒdSdS(Ns-(sabs_urlsstrsindexs _getattr_sscript(sindexsabs_urlsstrs _getattr_sscript(sabs_url(sScript (Python)s f_minus_iconmscs2dˆdt|ƒdttdƒƒdSdS(Ns+(sabs_urlsstrsindexs _getattr_sscript(sindexsabs_urlsstrs _getattr_sscript(sabs_url(sScript (Python)s f_plus_iconoscCsct|dƒƒt|dƒƒjo d Sn2t|dƒƒt|dƒƒjodSndSdS(NsgetIdii(s _getattr_sxsy(sxsys _getattr_((sScript (Python)s cmp_folders1ts % %c Cs¾t|dƒƒ}t|dƒƒ}d}d}t|dƒdƒott|dƒƒ}nt|dƒdƒott|dƒƒ}nd}d} t|dƒdƒot|dƒ}nt|dƒdƒot|dƒ} n||jo d Sn¹||jodSn¤|djo | djo/|| jo d Sq‹|| jodSq‹n,|djo d Sn| djodSn||jo d Sn||jodSndSdS(Ns title_or_idis hasPropertyspriorsorderi( s _getattr_sxsxtsysytsxpsypsintsxosyo( sxsys _getattr_sxtsytsxpsypsintsxosyo((sScript (Python)s cmp_folders2|s>$            c%sôttt|dƒƒƒdƒttˆƒdd …ƒdƒ} t| dƒdƒot| dƒdddƒ} ntttt| dd …ƒdƒddƒdƒd dƒd ƒd ƒ} d } t| d |…ƒtˆ d |…ƒj} d } |d jo*t|d ƒd} t|d ƒƒt|dƒ| ƒd}x(t t|dƒƒD]}|ˆ}qTWt|dƒdƒ}t|dƒˆƒ|gjo(ttt|d ƒdƒƒdƒdƒo/| o|ˆ |ƒ}q|ˆ| ƒ}n |ˆ}|ˆ }ˆ o‘d}t| dd…ƒtˆ dd…ƒjod}|d}n|d|dˆ| ƒdt|dƒƒdt|dƒƒd}nd}ˆovd| dt| ƒdt|ƒd t| ƒd!tt| d |…ƒƒd"ttˆ d |…ƒƒd#}nd}|gjo?ˆ djp2t|d$ƒd%ƒot|d%ƒtˆd%ƒjod&t| ƒd'}nt|d$ƒd(ƒo t|d(ƒo;t|dƒ|d)t|d*ƒƒd+||d,ƒq+t|dƒ|d-t|d*ƒƒ||d,ƒn| o¾t|dƒdƒ} t| dƒˆƒx“t | ƒD]}"tt|"dƒƒdƒdƒoYd }#t| d |…ƒtˆ d |…ƒjo d}#nˆ||"|d|| ƒqgqgWndS(.sM Affiche l'arbre T dans la liste l. niveau est la profondeur actuelle. sgetPhysicalPathsreplaceiss startswiths(, s, s's ssplits,ispopsappends objectValuessFolderssortsgetIdscatNs checked ss)s (relPhysicalPath=s | l_chem=s | niveau=s | deployed=s| l_chem[0:niveau]=s| chem[0:niveau]=s)s hasPropertysuser_ids" [suppr] son_fronts s title_or_ids s
s (%s _getattr_sstrsTs _getitem_sinstpathsrelPhysicalPathsl_chemsdeployedsniveauschems l_ind_rads index_radiossesps _getiter_srangesis blank_iconsT_sorteds cmp_folders1s f_minus_iconsparent_ind_rads f_plus_icons folder_icons boutons_radios is_it_checkeds html_quotes debug_strsdebugs ahref_deletes perm_editsmemsls T_sorted2s cmp_folders2srsdepls affiche_arbre(%slsTsniveaus index_radiossparent_ind_rads _getattr_sstrs _getitem_sinstpathsrelPhysicalPathsl_chemsdeployedschems l_ind_radsesps _getiter_srangesis blank_iconsT_sorteds cmp_folders1s f_minus_icons f_plus_icons folder_icons boutons_radios is_it_checkeds html_quotes debug_strsdebugs ahref_deletes perm_editsmems T_sorted2s cmp_folders2srsdepls affiche_arbre(s cmp_folders1sinstpathsmems html_quotes f_plus_icons affiche_arbresdebugs blank_icons cmp_folders2s boutons_radioschems perm_edits f_minus_icons folder_icon(sScript (Python)s affiche_arbre¨s`CI* 8  +LvO&;4 + s sstandard_html_headers [Retour]sA

Ajout d'une rubrique et/ou d'un lien:

s?
s5s2s.s*s?ss#sous-rubrique à la rubrique choisies* s s sAjoutezsAjoutersProposezsProposersDs. s# s/s˜ s  s
s.

Choisissez (COCHEZ) une rubrique:

s
s s, s checkeds s‰ (Racine de l'annuaire)
srubriques,
s* (Aucune rubrique n'a encore été créée)s
s

s éventuellement une s:

s5
s
 s6 s
s" un lien dans cette rubrique:s” URL:  Titre:  Description:    s
s
sstandard_html_footer(@s_print_s_prints _getattr_scontextsmemsdebugsfixboxsnb_cat_wo_fixboxsProducts.PythonScripts.standards html_quotesinstids _getitem_srepsinstances containersabs_urlsscripts script_ids blank_icons folder_iconsgrpsactsgrpsviewsmodidsinstpaths enablehtmlsenablejavascriptsSESSIONs_write_shttp_refs retour_hrefsmessages category_pathst_paths path_listsstrs perm_edits perm_submitsrolis _getiter_sgsstringstablescheminschemsrepcatschs f_minus_icons f_plus_icons boutons_radios cmp_folders1s cmp_folders2s index_radioss affiche_arbreslisteslens fin_choixs racine_selsls debut_choixs bouton_submitsnewcatslink_urls link_titres link_desc(@sinstidsnewcatslink_urls link_titres link_descs category_paths_print_s_prints _getattr_scontextsmemsdebugsfixboxsnb_cat_wo_fixboxsProducts.PythonScripts.standards html_quotes _getitem_srepsinstances containersabs_urlsscripts script_ids blank_icons folder_iconsgrpsactsgrpsviewsmodidsinstpaths enablehtmlsenablejavascriptsSESSIONs_write_shttp_refs retour_hrefsmessagest_paths path_listsstrs perm_edits perm_submitsrolis _getiter_sgsstringstablescheminschemsrepcatschs f_minus_icons f_plus_icons boutons_radios cmp_folders1s cmp_folders2s index_radioss affiche_arbreslisteslens fin_choixs racine_selsls debut_choixs bouton_submit((s cmp_folders1sabs_urlsmems html_quotes blank_iconsinstpaths affiche_arbresdebugs f_plus_icons cmp_folders2s boutons_radioschems perm_edits f_minus_icons folder_iconsScript (Python)sadd_links<$    ( $ *                 * 3:"                                            "(sadd_link(sadd_link((sScript (Python)ssqU func_defaultsq(UUUUUUtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q }q!Uadminq"]q#UOwnerq$asUidq%Uadd_linkq&U_paramsq'UKinstid='',newcat='',link_url='',link_titre='',link_desc='',category_path=''q(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Uinstidq/Unewcatq0Ulink_urlq1U link_titreq2U link_descq3U category_pathq4U_print_q5U_printq6U _getattr_q7Ucontextq8Umemq9Udebugq:Ufixboxq;Unb_cat_wo_fixboxqU _getitem_q?Urepq@UinstanceqAU containerqBUabs_urlqCUscriptqDU script_idqEU blank_iconqFU folder_iconqGUgrpsactqHUgrpsviewqIUmodidqJUinstpathqKU enablehtmlqLUenablejavascriptqMUSESSIONqNU_write_qOUhttp_refqPU retour_hrefqQUmessageqRUt_pathqSU path_listqTUstrqUU perm_editqVU perm_submitqWUroliqXU _getiter_qYUgUstringqZUtableq[Ucheminq\Uchemq]Urepcatq^Uchq_U f_minus_iconq`U f_plus_iconqaU boutons_radioqbU cmp_folders1qcU cmp_folders2qdU index_radiosqeU affiche_arbreqfUlisteqgUlenqhU fin_choixqiU racine_selqjUlU debut_choixqkU bouton_submitqltqmubu. =((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tñ# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] obj=lieu[idobj] if type_rep=="skin": try: skin=context.zwo_info.skins[nom_rep] except: return 'nooo' obj=skin[instid] else: dossier=mem['rep_obj'] instance=dossier[instid] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' g1=string.split(grpsact,',') g2=string.split(grpsview,',') # EXEMPLE MODIFICATION obj.manage_changeProperties(grpsact=g1) obj.manage_changeProperties(grpsview=g2) obj.manage_changeProperties(enablehtml=enablehtml) obj.manage_changeProperties(enablejavascript=enablejavascript) obj.manage_changeProperties(nb_days_is_new=nb_days_is_new) obj.manage_changeProperties(count_hits=count_hits) obj.manage_changeProperties(permit_votes=permit_votes) obj.manage_changeProperties(nb_rubs_aff=nb_rubs_aff) obj.manage_changeProperties(nb_liens_aff=nb_liens_aff) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q Utitleq U#Validation de la configuration - OKq U _filepathqU@Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/config_okqU_codeqT6c @s%ddddddddd„ZdS(Nsiiidic Csçtttdƒdƒƒ}t|dƒ}t||ƒ}|djoFy%ttttdƒdƒ|ƒ}Wn dSnXt||ƒ}nt|dƒ}t||ƒ}t|d ƒd jod Sntt d ƒ|d ƒ}tt d ƒ|d ƒ}t|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd| ƒt|dƒd| ƒt|dƒd| ƒt|dƒd| ƒttttdƒdƒdƒdƒdS(Nszwo_libs mem_mod_datasparentsskinszwo_infosskinssnooosrep_objsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !ssplits,smanage_changePropertiessgrpsactsgrpsviews enablehtmlsenablejavascriptsnb_days_is_news count_hitss permit_votess nb_rubs_affs nb_liens_affsREQUESTsRESPONSEsredirects../../(s _getattr_scontextsmems _getitem_slieusidobjsobjstype_repsnom_repsskinsinstidsdossiersinstancesstringsgrpsactsg1sgrpsviewsg2s enablehtmlsenablejavascriptsnb_days_is_news count_hitss permit_votess nb_rubs_affs nb_liens_aff(sidobjsinstidsnom_repstype_repsgrpsactsgrpsviews enablehtmlsenablejavascriptsnb_days_is_news count_hitss permit_votess nb_rubs_affs nb_liens_affs _getattr_scontextsmems _getitem_slieusobjsskinsdossiersinstancesstringsg1sg2((sScript (Python)s config_oks0 ((s config_ok(s config_ok((sScript (Python)ssqU func_defaultsq(UKKKKKKdKtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfq Uscriptq!usbU_dav_writelocksq"(U @q#(U Persistenceq$UPersistentMappingq%tq&tq'QU__ac_local_roles__q(}q)Uxavq*]q+UOwnerq,asUidq-U config_okq.U_paramsq/UŸidobj,instid,nom_rep,type_rep,grpsact,grpsview='',enablehtml=0,enablejavascript=0,nb_days_is_new=15,count_hits=0,permit_votes=0,nb_rubs_aff=100,nb_liens_aff=20q0U func_codeq1(cShared.DC.Scripts.Signature FuncCode q2oq3}q4(U co_argcountq5K U co_varnamesq6(Uidobjq7Uinstidq8Unom_repq9Utype_repq:Ugrpsactq;UgrpsviewqUnb_days_is_newq?U count_hitsq@U permit_votesqAU nb_rubs_affqBU nb_liens_affqCU _getattr_qDUcontextqEUmemqFU _getitem_qGUlieuqHUobjqIUskinqJUdossierqKUinstanceqLUstringqMUg1qNUg2qOtqPubu. =2((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tõ # RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] url_lieu=mem['parent_bo_url'] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId() print '' print '

Cet identifiant '+idobj+' est déja pris
' print 'Veuillez en choisir un autre
' print 'Redirection automatique dans 2 secondes.

' print 'Si la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIETE en fonction du module obj.manage_addFolder('links','Tous les liens') g1=string.split(grpsact,',') g2=string.split(grpsview,',') obj.manage_addProperty('nb_rubs_aff',nb_rubs_aff,'int') obj.manage_addProperty('nb_liens_aff',nb_liens_aff,'int') obj.manage_addProperty('grpsact',g1,'lines') obj.manage_addProperty('grpsview',g2,'lines') obj.manage_addProperty('enablehtml',enablehtml,'boolean') obj.manage_addProperty('enablejavascript',enablejavascript,'boolean') obj.manage_addProperty('nb_days_is_new',nb_days_is_new,'int') obj.manage_addProperty('count_hits',count_hits,'boolean') obj.manage_addProperty('permit_votes',permit_votes,'boolean') # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier chois comme type uniquement) #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) """ numz=mem['zwo_obj'].zwo_info.annuaires_liens.num nu=int(numz)+1 mem['zwo_obj'].zwo_info.annuaires_liens.manage_changeProperties(num=nu) li=mem['zwo_obj'].zwo_info.annuaires_liens.url niou=obj.absolute_url()+'#/#'+obj.title li.append(niou) mem['zwo_obj'].zwo_info.annuaires_liens.manage_changeProperties(url=li) """ context.REQUEST.RESPONSE.redirect(url_lieu+'place?obj='+idobj) return q Utitleq U-validation de la création d'une instance - OKq UidqUnew_okqU_codeqTy c @s%ddddddddd„ZdS(Nsiidiic CsÏtƒ} tttdƒdƒƒ}t|dƒ}t|dƒ}t|dƒdjodSntttdƒdƒ|ƒ}|t|d ƒƒjoud tt d ƒƒ}| d |d IJ| d|dIJ| dIJ| dIJ| d|dIJ| dIJ| ƒSnt|dƒ||ƒt||ƒ}t|dƒdddƒt|dƒdtt d ƒƒdƒt|dƒddƒtt dƒ|dƒ}tt dƒ|dƒ}t|dƒd|dƒt|dƒd |dƒt|dƒd!|d"ƒt|dƒd#|d"ƒt|dƒd$|d%ƒt|dƒd&|d%ƒt|dƒd'|dƒt|dƒd(|d%ƒt|dƒd)| d%ƒd*ttttd+ƒd,ƒd-ƒ|d.|ƒdSdS(/Nszwo_libs mem_mod_datasparents parent_bo_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopes objectIdss../ajout_element?type=sgetIds7s.

Cet identifiant s est déja pris
s"Veuillez en choisir un autre
s6Redirection automatique dans 2 secondes.

sGSi la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstringslinkssTous les liensssplits,s nb_rubs_affsints nb_liens_affsgrpsactslinessgrpsviews enablehtmlsbooleansenablejavascriptsnb_days_is_news count_hitss permit_votess8 numz=mem['zwo_obj'].zwo_info.annuaires_liens.num nu=int(numz)+1 mem['zwo_obj'].zwo_info.annuaires_liens.manage_changeProperties(num=nu) li=mem['zwo_obj'].zwo_info.annuaires_liens.url niou=obj.absolute_url()+'#/#'+obj.title li.append(niou) mem['zwo_obj'].zwo_info.annuaires_liens.manage_changeProperties(url=li) sREQUESTsRESPONSEsredirects place?obj=(s_print_s_prints _getattr_scontextsmems _getitem_slieusurl_lieustitresidobjs containersurlsobjsstringsgrpsactsg1sgrpsviewsg2s nb_rubs_affs nb_liens_affs enablehtmlsenablejavascriptsnb_days_is_news count_hitss permit_votes(stitresgrpsactsgrpsviews enablehtmlsenablejavascripts nb_rubs_affs nb_liens_affsnb_days_is_news count_hitss permit_votess_print_s_prints _getattr_scontextsmems _getitem_slieusurl_lieusidobjs containersurlsobjsstringsg1sg2((sScript (Python)snew_oksD    % $(snew_ok(snew_ok((sScript (Python)ssqU func_defaultsq(UKKKdKKKKtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfq Uscriptq!usbU_dav_writelocksq"(U @q#(U Persistenceq$UPersistentMappingq%tq&tq'QU__ac_local_roles__q(}q)Ugregq*]q+UOwnerq,asU _filepathq-U=Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/new_okq.U_paramsq/U‡titre,grpsact,grpsview='',enablehtml=0,enablejavascript=0,nb_rubs_aff=100,nb_liens_aff=20,nb_days_is_new=15,count_hits=0,permit_votes=0q0U func_codeq1(cShared.DC.Scripts.Signature FuncCode q2oq3}q4(U co_argcountq5K U co_varnamesq6(Utitreq7Ugrpsactq8Ugrpsviewq9U enablehtmlq:Uenablejavascriptq;U nb_rubs_affqU count_hitsq?U permit_votesq@U_print_qAU_printqBU _getattr_qCUcontextqDUmemqEU _getitem_qFUlieuqGUurl_lieuqHUidobjqIU containerqJUurlqKUobjqLUstringqMUg1qNUg2qOtqPubu. =¼((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tá#FIXME: Passer category_path en param pour revenir au bon endroit mem=context.zwo_lib.mem_data() # Import a standard function, and get the HTML request and response objects. from Products.PythonScripts.standard import html_quote REQUEST = container.REQUEST RESPONSE = REQUEST.RESPONSE linkotheque=mem['rep_obj'][instid]['links'] lk = linkotheque[link] try: title = REQUEST['title'] lk.manage_changeProperties(title=title) except: pass try: url = REQUEST['url'] lk.manage_changeProperties(url=url) except: pass try: desc = REQUEST['desc'] lk.manage_changeProperties(desc=desc) except: pass try: prior = REQUEST['prior'] lk.manage_changeProperties(prior=prior) except: pass try: order = REQUEST['order'] lk.manage_changeProperties(order=order) except: pass try: hits = REQUEST['hits'] lk.manage_changeProperties(hits=hits) except: pass try: votes = REQUEST['votes'] lk.manage_changeProperties(votes=votes) except: pass try: points = REQUEST['points'] lk.manage_changeProperties(points=points) except: pass try: status = REQUEST['status'] old_status = lk.status reps=[] rep_parent=mem['rep_obj'][instid] #print 'path='+ path #return printed if path != '': reps = path.split('/') for r in reps: if r!='': rep_parent = rep_parent[r] #print rep_parent.absolute_url() #return printed if str(status)=='ok' and old_status!=status and rep_parent.hasProperty('nb_links'): new_nb_links = int(rep_parent.nb_links) + 1 rep_parent.manage_changeProperties(nb_links=new_nb_links) elif str(old_status)=='ok' and old_status!=status and rep_parent.hasProperty('nb_links') and int(rep_parent.nb_links)>0: new_nb_links = int(rep_parent.nb_links) - 1 rep_parent.manage_changeProperties(nb_links=new_nb_links) lk.manage_changeProperties(status=status) except: pass date_last_change = DateTime('GMT+0') lk.manage_changeProperties(date_last_change=date_last_change) context.REQUEST.RESPONSE.redirect(http_ref) q U_codeq Tø c@sddd„ZdS(Nsc"*Cstttdƒdƒƒ}dkl}ttdƒ} t| dƒ} ttt|dƒ|ƒdƒ} t| |ƒ}y)t| dƒ}t|d ƒd|ƒWnnXy)t| d ƒ}t|d ƒd |ƒWnnXy)t| d ƒ}t|d ƒd |ƒWnnXy)t| d ƒ}t|d ƒd |ƒWnnXy)t| d ƒ}t|d ƒd |ƒWnnXy)t| dƒ}t|d ƒd|ƒWnnXy)t| dƒ}t|d ƒd|ƒWnnXy)t| dƒ}t|d ƒd|ƒWnnXy¡t| dƒ}t|dƒ}g}tt|dƒ|ƒ}|djoPt|dƒdƒ}x8t|ƒD]&}|djot||ƒ}q|q|Wnt|ƒdjo ||jot|dƒdƒo3tt|dƒƒd}t|d ƒd|ƒn†t|ƒdjo<||jo/t|dƒdƒott|dƒƒdjo3tt|dƒƒd}t|d ƒd|ƒnt|d ƒd|ƒWnnXtdƒ}!t|d ƒd|!ƒttttdƒdƒdƒ|ƒdS(Nszwo_libsmem_data(s html_quotesREQUESTsRESPONSEsrep_objslinksstitlesmanage_changePropertiessurlsdescspriorsordershitssvotesspointssstatussssplits/soks hasPropertysnb_linksiisGMT+0sdate_last_changesredirect("s _getattr_scontextsmemsProducts.PythonScripts.standards html_quotes containersREQUESTsRESPONSEs _getitem_sinstids linkothequeslinkslkstitlesurlsdescspriorsordershitssvotesspointssstatuss old_statussrepss rep_parentspaths _getiter_srsstrsints new_nb_linkssDateTimesdate_last_changeshttp_ref("sinstidslinkspathshttp_refs _getattr_scontextsmemsProducts.PythonScripts.standards html_quotes containersREQUESTsRESPONSEs _getitem_s linkothequeslkstitlesurlsdescspriorsordershitssvotesspointssstatuss old_statussrepss rep_parents _getiter_srsstrsints new_nb_linkssDateTimesdate_last_change((sScript (Python)smanage_links_oksx !   6R(smanage_links_ok(smanage_links_ok((sScript (Python)ssq U func_defaultsq(UUtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUadminq ]q!UOwnerq"asUidq#Umanage_links_okq$U_paramsq%Uinstid,link='',path='',http_refq&U func_codeq'(cShared.DC.Scripts.Signature FuncCode q(oq)}q*(U co_argcountq+KU co_varnamesq,(Uinstidq-Ulinkq.Upathq/Uhttp_refq0U _getattr_q1Ucontextq2Umemq3UProducts.PythonScripts.standardq4U html_quoteq5U containerq6UREQUESTq7URESPONSEq8U _getitem_q9U linkothequeq:Ulkq;UtitleqUpriorq?Uorderq@UhitsqAUvotesqBUpointsqCUstatusqDU old_statusqEUrepsqFU rep_parentqGU _getiter_qHUrUstrqIUintqJU new_nb_linksqKUDateTimeqLUdate_last_changeqMtqNubu. =<§((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T0debug=0 #recuperation parametres grpsact=instance.grpsact grpsview=instance.grpsview modid=container.getId() instid=instance.getId() enablehtml=instance.enablehtml enablejavascript=instance.enablejavascript REQUEST=context.REQUEST URL=REQUEST.URL1 SESSION=context.REQUEST.SESSION SESSION['instid']=instid PATH_TRANSLATED=REQUEST.PATH_TRANSLATED time_actu=DateTime('GMT+0') time_actu_split=str(time_actu).split(' ',1) year_month_day=time_actu_split[0].split('/') def approx_days_between(str1, str2): time1 = str(str1); time2 = str(str2) time1_split = time1.split(' ',1); time2_split = time2.split(' ',1) ymd1 = time1_split[0].split('/'); ymd2 = time2_split[0].split('/') y1 = int(ymd1[0]); y2 = int(ymd2[0]); m1 = int(ymd1[1]); m2 = int(ymd2[1]); d1 = int(ymd1[2]); d2 = int(ymd2[2]); return abs((y2-y1)*365+(m2-m1)*30+d2-d1) #~ controle des permissions perm_edit=0 perm_submit=0 roli=mem['user_roles_id'] for g in roli: if g in grpsview: perm_submit=1 for g in roli: if g in grpsact: perm_edit=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsview: perm_submit=1 if 'Anonymous' in grpsact: perm_edit=1 if mem['droit_edit_dossier']==1: perm_edit=1 aff='

Annuaire de liens

' #~ affichage du lien proposer/publier : mot='Proposer' if perm_edit==1: mot='Publier' if perm_submit==1 or perm_edit==1: aff=aff+' [ '+mot+' une rubrique et/ou un lien ] ' aff=aff+'
' # Recuperation des paramètres généraux de police de caractère #~ Affichage du module : #if URL in [mem['zwo_url'],mem['racine_url']]: if not(URL.startswith(instance.absolute_url())): URL=instance.absolute_url() chemin=URL.replace(instance.absolute_url(),'') if debug: #aff=aff+str(mem['rep_obj'][instid].absolute_url())+'
' aff=aff+'instance.absolute_url()='+str(instance.absolute_url())+'
' aff=aff+'URL='+URL+'
' aff=aff+PATH_TRANSLATED+'
' aff=aff+'chemin='+chemin+'
' repactu=mem['rep_obj'][instid] linkotheque=mem['rep_obj'][instid]['links'] reps=string.split(chemin, '/') aff_chemin='

/' i=0 for r in reps: if r!='': i=i+1 repactu=repactu[r] if i!=1: aff_chemin = aff_chemin + '/' aff_chemin = aff_chemin + ''+ repactu.title_or_id() +'' aff = aff + aff_chemin + '

' lines_cat=[] lines_links=[] def cmp_folders(x, y): xt = x.title_or_id(); yt = y.title_or_id() xp = 0 ; yp = 0 if x.hasProperty('prior'): xp = int(x.prior) if y.hasProperty('prior'): yp = int(y.prior) xo = 0 ; yo = 0 if x.hasProperty('order'): xo = x.order if y.hasProperty('order'): yo = y.order if xp > yp: # la plus grande priorité est placée avant return -1 elif xp < yp: return 1 else: if xo>0 and yo>0: # chacun a un ordre défini if xo < yo: # le plus petit numéro d'ordre est placé avant return -1 elif xo > yo: return 1 else: # ordre identique pass elif xo > 0: #yo=0 # celui qui a un numéro d'ordre nul est placé après return -1 elif yo > 0: #xo=0 return 1 else: # aucun n'a d'ordre défini pass if xt < yt: return -1 elif xt > yt: return 1 else: return 0 folders=repactu.objectValues('Folder') folders.sort(cmp_folders) for r in folders: if r.getId().startswith('cat') and ((r.hasProperty('status') and r.status=='ok') or perm_edit or (perm_submit and r.hasProperty('user_id') and mem['user_id']==r.user_id)): # rubecat est une chaîne indiquant le nombre de sous-rubriques et de liens d'une rubrique: rubetcat = '' if r['nb_subcat']>0: rubetcat = rubetcat + str(r['nb_subcat']) +' rubrique' if r['nb_subcat']>1: rubetcat = rubetcat + 's' if r['nb_subcat']>0 and r['nb_links']>0: rubetcat = rubetcat + ' et ' if r['nb_links']>0: rubetcat = rubetcat + str(r['nb_links']) +' lien' if r['nb_links']>1: rubetcat = rubetcat + 's' if rubetcat!='': rubetcat = ' ('+ rubetcat +')' # l est la ligne qui sera ajoutée à la liste lines_cat l = ''+r.title_or_id()+''+ rubetcat i=0 for subr in r.objectValues('Folder'): if subr.hasProperty('on_front') and subr['on_front']: i=i+1 if i==1: l = l + '
  ' l = l + ''+subr.title_or_id()+'' + ', ' if i>0: l = l + '...' lines_cat.append(l) elif r.getId().startswith('sl'): id_link = r.getId().replace('sl', 'link') lk = linkotheque[id_link] if (lk.hasProperty('status') and lk.status=='ok') or perm_edit or (perm_submit and lk.hasProperty('user_id') and mem['user_id']==r.user_id): img_new='' if instance.nb_days_is_new > 0: if approx_days_between(str(time_actu),str(lk.date))<=instance.nb_days_is_new: img_new=' [New!] ' img_waiting=''; img_manage='' if perm_edit: img_manage=' [M] ' if lk.hasProperty('status') and lk.status=='waiting': img_waiting=' [Waiting] ' #lines_links.append('

'+lk.title_or_id()+'
 '+ str(lk['desc']) +'
 '+lk['url']+'

') #lines_links.append('

'+lk.title_or_id()+'('+str((lk.date))+')'+'
 '+ str(lk['desc']) +'
 '+lk['url']+'

') lines_links.append('

'+lk.title_or_id()+''+ img_new + img_waiting + img_manage +'
 '+ str(lk['desc']) +'
 '+lk['url']+'

') # else: # pass if lines_cat!=[]: aff = aff + '

Rubriques

' aff = aff + '' i=1 for l in lines_cat: i=1-i if i==0: aff = aff + '' else: aff = aff + '' #aff = aff + l + '
' #aff = aff + '

' if i==1: aff = aff + '' aff = aff + '
' + l + '' + l + '
 
' if lines_links!=[]: aff = aff + '

Liens

' for l in lines_links: aff = aff + l return aff q Utitleq U75%q U _filepathqU@Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/view_htmlqU_codeqTCc@s d„ZdS(Nc39Cs_ d}t|dƒ}t|dƒ}ttdƒƒ}t|dƒƒ}t|dƒ} t|dƒ} tt dƒ} t| dƒ} ttt dƒd ƒ}|t|ƒd |+d?}+nd+t|&d!ƒƒdt|&d,ƒƒd-|+},d}%x¨tt|&d0ƒd1ƒƒD]‹}-t|-d4ƒd@ƒo t|-d@ƒo_|%d}%|%djo|,dA},n|,d+t|-d!ƒƒdt|-d,ƒƒd-dB},ququW|%djo|,dC},nt|'dDƒ|,ƒqutt|&dƒƒd ƒdEƒott|&dƒƒd"ƒdEdFƒ}.t|!|.ƒ}/t|/d4ƒd5ƒot|/d5ƒd6jp@|p9|o2t|/d4ƒd7ƒot|d7ƒt|&d7ƒjosd#}0t|dGƒdjoB|t|ƒtt|/dHƒƒƒt|dGƒjo dI}0qXnd#}1d#}2|o}dJt|dƒd|dK|dLt|/dƒƒdM|dN}2t|/d4ƒd5ƒot|/d5ƒdOjo dP}1qènt|(dDƒdQt|/dRƒdt|/d,ƒƒd-|0|1|2dStt|/dTƒƒdUt|/dRƒdt|/dRƒdVƒqq ququW|'gjo™|dW}|dX}d}%xSt|'ƒD]E},d|%}%|%djo|dY|,dZ}q© |d[|,d\}q© W|%djo|d]}n|d^}n|(gjo/|d_}x"t|(ƒD]},||,}q? Wn|SdS(`NisgrpsactsgrpsviewsgetIds enablehtmlsenablejavascriptsREQUESTsURL1sSESSIONsinstidsPATH_TRANSLATEDsGMT+0ssplits is/cCs0t|ƒ}t|ƒ}t|dƒddƒ}t|dƒddƒ}tt|dƒdƒdƒ} tt|dƒdƒdƒ} t t| dƒƒ} t t| dƒƒ} t t| dƒƒ}t t| dƒƒ}t t| dƒƒ}t t| dƒƒ}dt| | d||d||ƒSdS( Nssplits iis/iimi(sstrsstr1stime1sstr2stime2s _getattr_s time1_splits time2_splits _getitem_symd1symd2sintsy1sy2sm1sm2sd1sd2sabs(sstr1sstr2sstrstime1stime2s _getattr_s time1_splits time2_splits _getitem_symd1symd2sintsy1sy2sm1sm2sd1sd2sabs((sScript (Python)sapprox_days_betweens 0<‚s user_roles_ids Authenticateds Anonymoussdroit_edit_dossiers

Annuaire de liens

sProposersPubliers [ s" une rubrique et/ou un lien ] s
s startswiths absolute_urlsreplacessinstance.absolute_url()=sURL=schemin=srep_objslinkss

/s [M] swaitings [Waiting] s

s!

ss
 
s

Liens

(3sdebugs _getattr_sinstancesgrpsactsgrpsviews containersmodidsinstids enablehtmlsenablejavascriptscontextsREQUESTsURLsSESSIONs_write_sPATH_TRANSLATEDsDateTimes time_actusstrstime_actu_splits _getitem_syear_month_daysapprox_days_betweens perm_edits perm_submitsmemsrolis _getiter_sgsaffsmotscheminsrepactus linkothequesstringsrepss aff_cheminsisrs lines_cats lines_linkss cmp_folderssfolderssrubetcatslssubrsid_linkslksimg_news img_waitings img_manage(3smemsinstancesdebugs _getattr_sgrpsactsgrpsviews containersmodidsinstids enablehtmlsenablejavascriptscontextsREQUESTsURLsSESSIONs_write_sPATH_TRANSLATEDsDateTimes time_actusstrstime_actu_splits _getitem_syear_month_daysapprox_days_betweens perm_edits perm_submitsrolis _getiter_sgsaffsmotscheminsrepactus linkothequesstringsrepss aff_cheminsisrs lines_cats lines_linkss cmp_folderssfolderssrubetcatslssubrsid_linkslksimg_news img_waitings img_manage((sScript (Python)s view_htmls             3#$$!    : & ‹) 2 #  > $l4 F)Š          (s view_html(s view_html((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq usbU_dav_writelocksq!(U @ q"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Uxavq)]q*UOwnerq+asUidq,U view_htmlq-U_paramsq.U mem,instanceq/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4KU co_varnamesq5(Umemq6Uinstanceq7Udebugq8U _getattr_q9Ugrpsactq:Ugrpsviewq;U containerqU enablehtmlq?Uenablejavascriptq@UcontextqAUREQUESTqBUURLqCUSESSIONqDU_write_qEUPATH_TRANSLATEDqFUDateTimeqGU time_actuqHUstrqIUtime_actu_splitqJU _getitem_qKUyear_month_dayqLUapprox_days_betweenqMU perm_editqNU perm_submitqOUroliqPU _getiter_qQUgUaffqRUmotqSUcheminqTUrepactuqUU linkothequeqVUstringqWUrepsqXU aff_cheminqYUiUrU lines_catqZU lines_linksq[U cmp_foldersq\Ufoldersq]Urubetcatq^UlUsubrq_Uid_linkq`UlkqaUimg_newqbU img_waitingqcU img_manageqdtqeubu. =³((UOFS.DTMLMethodqU DTMLMethodqtqNt.}q(U_varsq}qUtitleqU&utile aux tests, pour afficher REQUESTqUrawq Uè

This is the Document in the Folder.

q Uglobalsq }q U__name__q UbidonqU__ac_local_roles__q}qUadminq]qUOwnerqasu. = Ü((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TCprint """ ################################################# # Module Annuaire de liens de Zwook (zwook.org) # # Mainteneur: Claudiux # # # # DOCUMENTATION # ################################################# N.B. J'anticipe un peu sur ce que sera ce module en fin de développement. Ce module implémente dans Zwook un annuaire de liens à la yahoo. Il est modéré par un ou des admins, mais chaque utilisateur peut proposer des rubriques et des liens. Les groupes d'utilisateurs et d'admins sont désignés dans l'interface de création/modification. Tant qu'une proposition n'est pas validée par un admin, seul l'utilisateur ayant fait cette proposition peut la voir, la supprimer ou la modifier (ainsi que les admins, bien entendu). L'utilisateur ne peut pas supprimer une de ses rubriques tant que celle-ci n'est pas vide (ni sous-rubrique, ni lien). Un même lien peut être proposé dans plusieurs rubriques. Par contre, ce n'est pas le cas d'une rubrique. FIXME. """ return printed q U_codeq TOc@s d„ZdS(NcCstƒ}|dIJ|ƒSdS(Ns' ################################################# # Module Annuaire de liens de Zwook (zwook.org) # # Mainteneur: Claudiux # # # # DOCUMENTATION # ################################################# N.B. J'anticipe un peu sur ce que sera ce module en fin de développement. Ce module implémente dans Zwook un annuaire de liens à la yahoo. Il est modéré par un ou des admins, mais chaque utilisateur peut proposer des rubriques et des liens. Les groupes d'utilisateurs et d'admins sont désignés dans l'interface de création/modification. Tant qu'une proposition n'est pas validée par un admin, seul l'utilisateur ayant fait cette proposition peut la voir, la supprimer ou la modifier (ainsi que les admins, bien entendu). L'utilisateur ne peut pas supprimer une de ses rubriques tant que celle-ci n'est pas vide (ni sous-rubrique, ni lien). Un même lien peut être proposé dans plusieurs rubriques. Par contre, ce n'est pas le cas d'une rubrique. FIXME. (s_print_s_print(s_print_s_print((sScript (Python)sREADMEs(sREADME(sREADME((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUadminq]q UOwnerq!asUidq"UREADMEq#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_argcountq)KU co_varnamesq*(U_print_q+U_printq,tq-ubu. =!((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÊ # RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() g1=instance.grpsact g2=instance.grpsview enablehtml=instance.enablehtml enablejavascript=instance.enablejavascript nb_days_is_new=instance.nb_days_is_new count_hits=instance.count_hits permit_votes=instance.permit_votes nb_rubs_aff=instance.nb_rubs_aff nb_liens_aff=instance.nb_liens_aff grpsact='' s=',' i=0 l=len(g1) for g in g1: grpsact=grpsact+g if i<>l-1: grpsact=grpsact+s i=i+1 grpsview='' s=',' i=0 l=len(g2) for g in g2: grpsview=grpsview+g if i<>l-1: grpsview=grpsview+s i=i+1 if len(g1)==0: grpsact='' if len(g2)==0: grpsview='' # EXEMPLE FORMULAIRE EDITION print '
' print 'Identifiant : '+instance.title+'

' print '' # Personalisation Formulaire print 'Groupes pouvant proposer un lien (1) :
' print 'Groupes pouvant publier et valider un lien (2) :
' c='' if enablehtml: c=' checked' print ' Accepter le html' c='' if enablejavascript: c=' checked' print ' Accepter le javascript
' print 'Nombre de jours pendant lesquels les liens sont "nouveaux" :
' c='' if count_hits: c=' checked' print ' Comptabiliser les hits   ' c='' if permit_votes: c=' checked' print ' Permettre les votes

' print '

' print '(1) Noms de groupes séparés par des virgules : exemple : Anonymous,skin_editor,mongroupe
' print '(2) A noter : celui qui a les droits d\'édition sur une page a automatiquement le droit de publier et valider un lien
' print '
Liste des groupes :
    ' for gr in mem['zwo_obj'].zwo_info.groups.objectIds('Folder'): print '
  • '+gr+'
  • ' print '
' # Fin Formulaire print '' print '' print '' print '' print '


' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMDAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' return printed q Utitleq U Formulaire de configuration - OKq U_codeqTTc@s d„ZdS(NcSCsÒtƒ}ttdƒƒ}t|dƒ}t|dƒ} t|dƒ} t|dƒ} t|dƒ} t|dƒ} t|dƒ}t|d ƒ}t|d ƒ}d }d }d }t|ƒ}xGt|ƒD]9}||}||djo||}n|d}qÍWd }d }d }t| ƒ}xGt| ƒD]9}||}||djo||}n|d}q5Wt|ƒd jo d }nt| ƒd jo d }n|d|dIJ|dt|dƒdIJ|dt|dƒƒdIJ|d|dIJ|d|dIJd }| o d}n|d|dIJd }| o d}n|d|dIJ|dt| ƒdIJd }| o d}n|d |d!IJd }|o d}n|d"|d#IJ|d$IJ|d%IJ|d&IJ|d'IJxPttttt|d(ƒd)ƒd*ƒd+ƒd,ƒƒD]}|d-|d.IJq6W|d/IJ|d0t|d1ƒdIJ|d2t|dƒƒdIJ|d3t|dƒƒdIJ|d4IJ|d5IJ|ƒSdS(6NsgetIdsgrpsactsgrpsviews enablehtmlsenablejavascriptsnb_days_is_news count_hitss permit_votess nb_rubs_affs nb_liens_affss,iis(
sIdentifiant : stitles

s)sfGroupes pouvant proposer un lien (1) :
soGroupes pouvant publier et valider un lien (2) : Accepter le htmls. Accepter le javascript
svNombre de jours pendant lesquels les liens sont "nouveaux" :
s( Comptabiliser les hits   s* Permettre les votes

s

s^(1) Noms de groupes séparés par des virgules : exemple : Anonymous,skin_editor,mongroupe
sz(2) A noter : celui qui a les droits d'édition sur une page a automatiquement le droit de publier et valider un lien
s*
Liste des groupes :
    szwo_objszwo_infosgroupss objectIdssFolders
  • s
  • s
s,s


(s_print_s_prints _getattr_s containerstypemodsinstancesg1sg2s enablehtmlsenablejavascriptsnb_days_is_news count_hitss permit_votess nb_rubs_affs nb_liens_affsgrpsactsssislensls _getiter_sgsgrpsviewscsstrs _getitem_smemsgrsrep(smemsrepsinstances_print_s_prints _getattr_s containerstypemodsg1sg2s enablehtmlsenablejavascriptsnb_days_is_news count_hitss permit_votess nb_rubs_affs nb_liens_affsgrpsactsssislensls _getiter_sgsgrpsviewscsstrs _getitem_sgr((sScript (Python)s config_htmlsŒ                 7   (s config_html(s config_html((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @!q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asUidq*U config_htmlq+U_paramsq,Umem, rep, instanceq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Umemq4Urepq5Uinstanceq6U_print_q7U_printq8U _getattr_q9U containerq:Utypemodq;Ug1qUenablejavascriptq?Unb_days_is_newq@U count_hitsqAU permit_votesqBU nb_rubs_affqCU nb_liens_affqDUgrpsactqEUsUiUlenqFUlU _getiter_qGUgUgrpsviewqHUcUstrqIU _getitem_qJUgrqKtqLubu. ="~((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)UtitleqU*formulaire de création d'une instance - OKq U Script_magicq KU_bodyq Tš# typemod est l'id du module et namemod est son title typemod=container.getId() namemod=container.title_or_id() # proposition de nom pour l'element exemple_titre_base=namemod exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) # debut formulaire HTML simple de création d'element print '
' print '' print 'Identifiant de l\'annuaire :

' # partie specifique à ce module #print '
EXEMPLE
' print 'Groupes pouvant proposer un lien (1) :
' print 'Groupes pouvant publier et valider un lien (2) :
' print ' Accepter le html ' print ' Accepter le javascript
' print 'Nombre max de rubriques par page :
' print 'Nombre max de liens par page :

' print 'Nombre de jours pendant lesquels les liens sont "nouveaux" :

' print ' Comptabiliser les hits   ' print ' Permettre les votes

' print '(1) Noms de groupes séparés par des virgules : exemple : Anonymous,skin_editor,mongroupe
' print '(2) A noter : celui qui a les droits d\'édition sur une page a automatiquement le droit de publier et valider un lien
' print '
Liste des groupes :
    ' for gr in mem['zwo_obj'].zwo_info.groups.objectIds('Folder'): print '
  • '+gr+'
  • ' print '
' # suite standard print '' print '
' return printed q Uwarningsq )U_codeqTp c@s d„ZdS(NcBCsœtƒ}ttdƒƒ}ttdƒƒ}|}|} d} x8| t|dƒƒjo| d} |t | ƒ} qBW|d|dIJ|dIJ|d | d IJ|d IJ|d IJ|d IJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJxPt tttt |dƒdƒdƒdƒdƒƒD]}|d|dIJqWW|dIJ|dIJ|dIJ|ƒSdS( NsgetIds title_or_idis objectIdsis(
ssMIdentifiant de l'annuaire :

s…Groupes pouvant proposer un lien (1) :
sƒGroupes pouvant publier et valider un lien (2) :
s; Accepter le html sL Accepter le javascript
seNombre max de rubriques par page :
sgNombre max de liens par page :

sˆNombre de jours pendant lesquels les liens sont "nouveaux" :

sM Comptabiliser les hits   sK Permettre les votes

s^(1) Noms de groupes séparés par des virgules : exemple : Anonymous,skin_editor,mongroupe
sz(2) A noter : celui qui a les droits d'édition sur une page a automatiquement le droit de publier et valider un lien
s*
Liste des groupes :
    szwo_objszwo_infosgroupssFolders
  • s
  • s
s0s
(s_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstrs _getiter_s _getitem_smemsgr(smemsdossiers_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstrs _getiter_s _getitem_sgr((sScript (Python)snew_htmls>               7   (snew_html(snew_html((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @"q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asUidq*Unew_htmlq+U_paramsq,U mem,dossierq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Umemq4Udossierq5U_print_q6U_printq7U _getattr_q8U containerq9Utypemodq:Unamemodq;Uexemple_titre_baseqUstrq?U _getiter_q@U _getitem_qAUgrqBtqCubu. =#C-((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tx#FIXME: Passer category_path en param pour revenir au bon endroit mem=context.zwo_lib.mem_data() debug=0 # Import a standard function, and get the HTML request and response objects. from Products.PythonScripts.standard import html_quote request = container.REQUEST RESPONSE = request.RESPONSE #recuperation parametres rep = mem['rep_obj'] instance = rep[instid] grpsact=instance.grpsact grpsview=instance.grpsview modid=container.getId() instid=instance.getId() enablehtml=instance.enablehtml enablejavascript=instance.enablejavascript #~ controle des permissions perm_edit=0 perm_submit=0 roli=mem['user_roles_id'] for g in roli: if g in grpsview: perm_submit=1 for g in roli: if g in grpsact: perm_edit=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsview: perm_submit=1 if 'Anonymous' in grpsact: perm_edit=1 if mem['droit_edit_dossier']==1: perm_edit=1 if not (perm_edit or perm_submit): return 'Vous n\'avez aucun droit pour cela!' http_ref=request['HTTP_REFERER'] instance = rep[instid] linkotheque=instance['links'] print context.zwo_lib.standard_html_header(mem) if link!='': lk = linkotheque[link] print '

Modification d\'un lien:

' print '
' print '' print '' print '' print '' print '' if lk.hasProperty('user_id'): print '' print ' ' print ' ' print '' perm_ok = perm_edit or (perm_submit and mem['user_id']==lk.user_id) else: perm_ok = perm_edit if lk.hasProperty('date'): print '' print ' ' print ' ' print '' if lk.hasProperty('date') and lk.hasProperty('date_last_change') and lk.date != lk.date_last_change: print '' print ' ' print ' ' print '' print '' print ' ' print ' ' print '' if lk.hasProperty('url'): print '' print ' ' if perm_ok: print ' ' else: print ' ' print '' if lk.hasProperty('desc'): print '' print ' ' if perm_ok: print ' ' else: print ' ' print '' if lk.hasProperty('status') and lk.hasProperty('statuslist'): print '' print ' ' print ' ' print '' if lk.hasProperty('prior'): if perm_edit: print '' print ' ' print ' ' else: print '' if lk.hasProperty('order'): print '' print ' ' if perm_edit: print ' ' else: print ' ' print '' if instance.count_hits and lk.hasProperty('hits'): print '' print ' ' if perm_edit: print ' ' else: print ' ' print '' if instance.permit_votes and lk.hasProperty('votes'): print '' print ' ' if perm_edit: print ' ' else: print ' ' print '' if instance.permit_votes and lk.hasProperty('points'): print '' print ' ' if perm_edit: print ' ' else: print ' ' print '' if perm_ok: print '' print ' ' print '' print '' print ' ' print '' print '' print ' ' print '' print '' print ' ' print '' print '
Proposé par: '+ lk.user_id +'
Le: '+ str(lk.date) +'
Mofifié le: '+ str(lk.date_last_change) +'
Titre:
URL: '+ lk.url +'
Description: '+ lk.desc +'
Etat (1): ' if perm_edit: print '' else: print ''+ str(lk.status) print '
Prioritaire (2): ' print'' print '
Ordre (3): '+ str(lk.order) +'
Nb de Hits: '+ str(lk.hits) +'
Nb de Votes: '+ str(lk.votes) +'
Total de points: '+ str(lk.points) +'
 
' print '(1):
' print '

  ok : lien affiché et visible par tous, modifiable par l\'admin uniquement.

' print '

  waiting : lien en attente de validation, proposé par un utilisateur, et visible et modifiable par celui-ci jusqu\'à la validation.

' print '

  rejected : lien refusé, non visible par les utilisateurs.

' print '

  standby : lien non affiché (à utiliser après validation).

' print '

  dead : lien mort, non affiché.

' print '
' print '(2):
' print '

  Prioritaire : lien affiché en haut de la page, avant tout autre.

' print '
' print '(3):
' print '

  Ordre : Ordre d\'affichage des liens. 0 : pas d\'ordre imposé (sauf ordre alphabétique des titres.) 1,2,3, ... pour les premiers, seconds, troisièmes, etc.

' print '

  Deux liens ayant le même ordre sont affichés par ordre alphabétique de leurs titres.

' print '
' print '
' print context.zwo_lib.standard_html_footer(mem) return printed q U_codeq TÞ c@sdddd„ZdS(Nsc!ŸCs tƒ}tttdƒdƒƒ}d}dkl} ttdƒ} t| dƒ} t |dƒ}t ||ƒ}t|dƒ}t|d ƒ}ttd ƒƒ}t|d ƒƒ}t|d ƒ}t|d ƒ}d}d}t |d ƒ}x+t|ƒD]}||jo d}qûqûWx+t|ƒD]}||jo d}q)q)Wd|jo2d|jo d}nd|jo d}q‰nt |dƒdjo d}n|p| odSnt | dƒ}t ||ƒ}t |dƒ}|tttdƒdƒ|ƒIJ|djoÒt ||ƒ}|dIJ|dIJ|d|dIJ|d|dIJ|d|dIJ|d|dIJ|dIJt|dƒd ƒoi|d!IJ|d"IJ|d#t|d ƒd$IJ|d%IJ|p#|ot |d ƒt|d ƒj}n|}t|dƒd&ƒoC|d!IJ|d'IJ|d(tt|d&ƒƒd$IJ|d%IJnt|dƒd&ƒo2t|dƒd)ƒot|d&ƒt|d)ƒjoC|d!IJ|d*IJ|d(tt|d)ƒƒd$IJ|d%IJn|d!IJ|d+IJ|d,t|d-ƒd.IJ|d%IJt|dƒd/ƒot|d!IJ|d0IJ|o|d1t|d/ƒd.IJn-|d2t|d/ƒdt|d/ƒd$IJ|d%IJnt|dƒd3ƒot|d!IJ|d4IJ|o|d5t|d3ƒd6IJn-|d7t|d3ƒdt|d3ƒd$IJ|d%IJnt|dƒd8ƒot|dƒd9ƒo |d%IJ|d:IJ|d(IJ|o˜|d;IJx}tt|d9ƒƒD]f} |d<t| ƒd=IJt| ƒtt|d8ƒƒjo|d>IJn|d?t| ƒd@IJq»W|dAIJn5|dBtt|d8ƒƒdtt|d8ƒƒIJ|dCIJ|d%IJnt|dƒdDƒoŠ|o^|d!IJ|dEIJ|d(IJ|dFIJt|dDƒo|dGIJn|d?IJ|d%IJq|dHtt|dDƒƒdIJnt|dƒdIƒo†|d!IJ|dJIJ|o%|dKtt|dIƒƒd.IJn9|dLtt|dIƒƒdtt|dIƒƒd$IJ|d%IJnt|dMƒot|dƒdNƒo†|d!IJ|dOIJ|o%|dPtt|dNƒƒd.IJn9|dQtt|dNƒƒdtt|dNƒƒd$IJ|d%IJnt|dRƒot|dƒdSƒo†|d!IJ|dTIJ|o%|dUtt|dSƒƒd.IJn9|dVtt|dSƒƒdtt|dSƒƒd$IJ|d%IJnt|dRƒot|dƒdWƒo†|d!IJ|dXIJ|o%|dYtt|dWƒƒd.IJn9|dZtt|dWƒƒdtt|dWƒƒd$IJ|d%IJn|o*|d!IJ|d[|d\IJ|d%IJn|d!IJ|d]IJ|d^IJ|d_IJ|d`IJ|daIJ|dbIJ|dcIJ|dCIJ|d%IJ|d!IJ|d]IJ|ddIJ|deIJ|dCIJ|d%IJ|d!IJ|d]IJ|dfIJ|dgIJ|dhIJ|dCIJ|d%IJ|diIJ|djIJn|tttdƒdkƒ|ƒIJ|ƒSdS(lNszwo_libsmem_datai(s html_quotesREQUESTsRESPONSEsrep_objsgrpsactsgrpsviewsgetIds enablehtmlsenablejavascripts user_roles_idis Authenticateds Anonymoussdroit_edit_dossiers"Vous n'avez aucun droit pour cela!s HTTP_REFERERslinkssstandard_html_headerss3

Modification d'un lien:

s>
s*s(s hasPropertysuser_ids
Proposé par: s
Le: sdate_last_changes2 Mofifié le: Titre: URL: Description: Etat (1): Nb de Hits: Nb de Votes: Total de points:  s (1):
sW

  ok : lien affiché et visible par tous, modifiable par l'admin uniquement.

s

  waiting : lien en attente de validation, proposé par un utilisateur, et visible et modifiable par celui-ci jusqu'à la validation.

sG

  rejected : lien refusé, non visible par les utilisateurs.

sG

  standby : lien non affiché (à utiliser après validation).

s,

  dead : lien mort, non affiché.

s (2):
sN

  Prioritaire : lien affiché en haut de la page, avant tout autre.

s (3):

  Ordre : Ordre d'affichage des liens. 0 : pas d'ordre imposé (sauf ordre alphabétique des titres.) 1,2,3, ... pour les premiers, seconds, troisièmes, etc.

sb

  Deux liens ayant le même ordre sont affichés par ordre alphabétique de leurs titres.

s
ssstandard_html_footer(!s_print_s_prints _getattr_scontextsmemsdebugsProducts.PythonScripts.standards html_quotes containersrequestsRESPONSEs _getitem_srepsinstidsinstancesgrpsactsgrpsviewsmodids enablehtmlsenablejavascripts perm_edits perm_submitsrolis _getiter_sgshttp_refs linkothequeslinkslkspathsperm_oksstrss(!sinstidslinkspaths_print_s_prints _getattr_scontextsmemsdebugsProducts.PythonScripts.standards html_quotes containersrequestsRESPONSEs _getitem_srepsinstancesgrpsactsgrpsviewsmodids enablehtmlsenablejavascripts perm_edits perm_submitsrolis _getiter_sgshttp_refs linkothequeslksperm_oksstrss((sScript (Python)s manage_linkssN           "       0   !H  !     ,  ,)    "4       (  %8#  %8#  %8#  %8                         "(s manage_links(s manage_links((sScript (Python)ssq U func_defaultsq(UUUtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUadminq ]q!UOwnerq"asUidq#U manage_linksq$U_paramsq%Uinstid='',link='',path=''q&U func_codeq'(cShared.DC.Scripts.Signature FuncCode q(oq)}q*(U co_argcountq+KU co_varnamesq,(Uinstidq-Ulinkq.Upathq/U_print_q0U_printq1U _getattr_q2Ucontextq3Umemq4Udebugq5UProducts.PythonScripts.standardq6U html_quoteq7U containerq8Urequestq9URESPONSEq:U _getitem_q;UrepqUgrpsviewq?Umodidq@U enablehtmlqAUenablejavascriptqBU perm_editqCU perm_submitqDUroliqEU _getiter_qFUgUhttp_refqGU linkothequeqHUlkqIUperm_okqJUstrqKUstqLubu. =$5((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)UtitleqU,Validation de la suppression d'une catégorieq U Script_magicq KU_bodyq Ti request = container.REQUEST RESPONSE = request.RESPONSE debug=0 mem=context.zwo_lib.mem_data() url = mem['zwo_url'] #if category_url=='': # category_url=url+'/'+instid rep=mem['rep_obj'][instid] instance=rep instpath=instance.getPhysicalPath() #~ recuperation parametres grpsact=instance.grpsact grpsview=instance.grpsview modid=container.getId() enablehtml=instance.enablehtml enablejavascript=instance.enablejavascript SESSION=context.REQUEST.SESSION SESSION['instid']=instid #~ controle des permissions perm_edit=0 perm_submit=0 roli=mem['user_roles_id'] for g in roli: if g in grpsview: perm_submit=1 for g in roli: if g in grpsact: perm_edit=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsview: perm_submit=1 if 'Anonymous' in grpsact: perm_edit=1 if mem['droit_edit_dossier']==1: perm_edit=1 if not(perm_edit or perm_submit): return 'Vous n\'avez aucun droit !' print context.zwo_lib.standard_html_header(mem) if debug: print 'instid='+instid+'
' print 'category_path='+str(category_path)+'
' print 'arbo='+ arbo+'
' print 'HTTP_REFERER='+ container.REQUEST.HTTP_REFERER+'
' #return printed table = string.maketrans(' ',' ') chemin = str(category_path[1:-1]) chemin = string.translate(chemin,table,' \'') chem = chemin.split(',') if debug: print 'chem='+str(chem)+'
' #return printed repcat = rep for ch in chem: if ch!='': parent = repcat repcat = repcat[ch] #date = DateTime('GMT+0') if debug: print 'repcat='+str(repcat.title_or_id())+'
' print 'parent='+str(parent.title_or_id())+'
' #return printed #FIXME : Vérifier les droits de celui qui va supprimer la catégorie if repcat.hasProperty('status') and repcat.status=='ok': if debug: print 'status ok'+'
' #return printed if parent.hasProperty('nb_subcat') and int(parent.nb_subcat)>0: new_nb_subcat = int(parent.nb_subcat) - 1 parent.manage_changeProperties(nb_subcat = new_nb_subcat) else: if debug: print 'status pas ok'+'
' #return printed pass repcat_title = repcat.title_or_id() try: parent.manage_delObjects([repcat.getId()]) except: print '

Erreur ! Impossible de supprimer la sous-rubrique '+ repcat_title +' de la rubrique '+ parent.title_or_id() + ' !

' relPhysicalPath=str(parent.getPhysicalPath()).replace(str(instpath)[1:-1],'') if relPhysicalPath.startswith('(, '): relPhysicalPath = relPhysicalPath.replace(', ', '', 1) print '
' print '' print '' print '

La sous-rubrique '+ repcat_title +' de la rubrique '+ parent.title_or_id() +' a bien été supprimée

' print '' print '
' print context.zwo_lib.standard_html_footer(mem) return printed q Uwarningsq )U_codeqT{c@s d„ZdS(Nc)ACsÍtƒ}ttdƒ}t|dƒ}d}tttdƒdƒƒ} t | dƒ} t t | dƒ|ƒ} | }t|dƒƒ}t|d ƒ}t|d ƒ}ttd ƒƒ}t|d ƒ}t|d ƒ}tttdƒdƒ}|t|ƒdIJ|tttdƒd?ƒ| ƒIJ|ƒSdS(@NsREQUESTsRESPONSEiszwo_libsmem_dataszwo_urlsrep_objsgetPhysicalPathsgrpsactsgrpsviewsgetIds enablehtmlsenablejavascriptsSESSIONsinstids user_roles_idis Authenticateds Anonymoussdroit_edit_dossiersVous n'avez aucun droit !sstandard_html_headersinstid=s
scategory_path=sarbo=s HTTP_REFERER=s HTTP_REFERERs maketranss s translates 'ssplits,schem=ssrepcat=s title_or_idsparent=s hasPropertysstatussoks status oks nb_subcatsmanage_changePropertiess status pas oksmanage_delObjectss5

Erreur ! Impossible de supprimer la sous-rubrique s de la rubrique s !

sreplaces startswiths(, s, s=
s*s1s
sstandard_html_footer()s_print_s_prints _getattr_s containersrequestsRESPONSEsdebugscontextsmems _getitem_surlsinstidsrepsinstancesinstpathsgrpsactsgrpsviewsmodids enablehtmlsenablejavascriptsSESSIONs_write_s perm_edits perm_submitsrolis _getiter_sgsstrs category_pathsarbosstringstablescheminschemsrepcatschsparentsints new_nb_subcats repcat_titlesrelPhysicalPath()sinstids category_paths_print_s_prints _getattr_s containersrequestsRESPONSEsdebugscontextsmems _getitem_surlsrepsinstancesinstpathsgrpsactsgrpsviewsmodids enablehtmlsenablejavascriptsSESSIONs_write_s perm_edits perm_submitsrolis _getiter_sgsstrsarbosstringstablescheminschemsrepcatschsparentsints new_nb_subcats repcat_titlesrelPhysicalPath((sScript (Python)sdel_category_oksž         "(  $+)/&*C &  "(sdel_category_ok(sdel_category_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}q Uadminq!]q"UOwnerq#asUidq$Udel_category_okq%U_paramsq&Uinstid,category_pathq'U func_codeq((cShared.DC.Scripts.Signature FuncCode q)oq*}q+(U co_argcountq,KU co_varnamesq-(Uinstidq.U category_pathq/U_print_q0U_printq1U _getattr_q2U containerq3Urequestq4URESPONSEq5Udebugq6Ucontextq7Umemq8U _getitem_q9Uurlq:Urepq;UinstanceqUgrpsviewq?Umodidq@U enablehtmlqAUenablejavascriptqBUSESSIONqCU_write_qDU perm_editqEU perm_submitqFUroliqGU _getiter_qHUgUstrqIUarboqJUstringqKUtableqLUcheminqMUchemqNUrepcatqOUchqPUparentqQUintqRU new_nb_subcatqSU repcat_titleqTUrelPhysicalPathqUtqVubu. =%/M((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tn# Import a standard function, and get the HTML request and response objects. from Products.PythonScripts.standard import html_quote from string import split request = container.REQUEST RESPONSE = request.RESPONSE debug=0 mem=context.zwo_lib.mem_data() url = mem['zwo_url'] if category_url=='': category_url=url+'/'+instid rep=mem['rep_obj'][instid] instance=rep instpath=instance.getPhysicalPath() #~ recuperation parametres grpsact=instance.grpsact grpsview=instance.grpsview modid=container.getId() enablehtml=instance.enablehtml enablejavascript=instance.enablejavascript SESSION=context.REQUEST.SESSION SESSION['instid']=instid #~ controle des permissions perm_edit=0 perm_submit=0 roli=mem['user_roles_id'] for g in roli: if g in grpsview: perm_submit=1 for g in roli: if g in grpsact: perm_edit=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsview: perm_submit=1 if 'Anonymous' in grpsact: perm_edit=1 if mem['droit_edit_dossier']==1: perm_edit=1 if not(perm_edit or perm_submit): return 'Vous n\'avez aucun droit !' if debug: print 'instid='+instid print 'category='+category print 'category_url='+category_url print 'category_path='+str(category_path) print 'newcat='+newcat #return printed table = string.maketrans(' ',' ') chemin = str(category_path[1:-1]) chemin = string.translate(chemin,table,' \'') chem = chemin.split(',') if debug: print 'chem='+str(chem) #return printed repcat = rep for ch in chem: if ch!='': repcat = repcat[ch] date = DateTime('GMT+0') if debug: print 'repcat='+str(repcat) return printed #~ Ajout de la category: id_cat = '' if newcat != '': id_cat = 'cat'+str(date.timeTime()) repcat.manage_addFolder(id_cat, newcat) if debug: print str(repcat) repcat[id_cat].manage_addProperty('user_id', mem['user_id'], 'string') # (utilisateur qui a proposé la category) repcat[id_cat].manage_addProperty('prior', 0, 'boolean') # (affichage prioritaire, en tête et en gras, si prior==1) repcat[id_cat].manage_addProperty('order', 0, 'int') # (ordre d'affichage dans un même niveau de priorité.0: affichage après tous les autres.1: en 1er, 2: en 2nd, etc.) repcat[id_cat].manage_addProperty('on_front', 0, 'boolean') # (si 1, le titre de cette category sera affiché sur la page faisant référence à la category parente *) repcat[id_cat].manage_addProperty('nb_subcat', 0, 'int') # (nb de sous-categories) repcat[id_cat].manage_addProperty('nb_links', 0,'int') # (nb de liens) repcat[id_cat].manage_addProperty('date',date,'date') repcat[id_cat].manage_addProperty('date_last_change',date,'date') repcat[id_cat].manage_addProperty('statuslist',['ok','waiting','rejected','standby'],'lines') repcat[id_cat].manage_addProperty('status','statuslist','selection') if perm_edit: repcat[id_cat].manage_changeProperties(status='ok') else: repcat[id_cat].manage_changeProperties(status='waiting') if repcat.hasProperty('nb_subcat') and perm_edit: new_nb_subcat = repcat['nb_subcat']+1 repcat.manage_changeProperties(nb_subcat = new_nb_subcat) repcat=repcat[id_cat] relPhysicalPath=str(repcat.getPhysicalPath()).replace(str(instpath)[1:-1],'') if relPhysicalPath.startswith('(, '): relPhysicalPath = relPhysicalPath.replace(', ', '', 1) #~ Ajout du lien: linkotheque = instance['links'] id_link='' if link_url!='' and link_titre!='' and link_desc!='': id_link='link'+str(date.timeTime()) linkotheque.manage_addFolder(id_link, link_titre) linkotheque[id_link].manage_addProperty('url',link_url,'string') linkotheque[id_link].manage_addProperty('desc',link_desc,'string') linkotheque[id_link].manage_addProperty('categories',[repcat.getId()],'lines') linkotheque[id_link].manage_addProperty('user_id', mem['user_id'], 'string') # (utilisateur qui a proposé le lien) linkotheque[id_link].manage_addProperty('prior', 0, 'boolean') linkotheque[id_link].manage_addProperty('order', 0, 'int') linkotheque[id_link].manage_addProperty('hits',0,'int') linkotheque[id_link].manage_addProperty('votes',0,'int') linkotheque[id_link].manage_addProperty('points',0,'int') linkotheque[id_link].manage_addProperty('date',date,'date') linkotheque[id_link].manage_addProperty('date_last_change',date,'date') linkotheque[id_link].manage_addProperty('statuslist',['ok','waiting','rejected','standby','dead'],'lines') linkotheque[id_link].manage_addProperty('status','statuslist','selection') if perm_edit: linkotheque[id_link].manage_changeProperties(status='ok') else: linkotheque[id_link].manage_changeProperties(status='waiting') if repcat.hasProperty('nb_links') and perm_edit: new_nb_links = repcat['nb_links']+1 repcat.manage_changeProperties(nb_links = new_nb_links) #~ Lien symbolique: id_sl='sl'+str(date.timeTime()) repcat.manage_addFolder(id_sl,'') #redirection = split(context.REQUEST['HTTP_REFERER'],'?',1)[0] redirection=context.REQUEST['URL1']+'/add_link' if debug: return printed else: #context.REQUEST.RESPONSE.redirect(redirection+'?instid='+instid+'&arbo='+arbo+'&sel='+id_cat+'#'+arbo) context.REQUEST.RESPONSE.redirect(redirection+'?instid='+instid+'&category_path='+relPhysicalPath+'#diese') q Utitleq U*validation d'ajout de lien ou de catégorieq U_codeqTcc @s%ddddddddd„ZdS(Nsc 75CsÓ tƒ} dkl} dkl}ttdƒ}t|dƒ}d}ttt dƒdƒƒ}t |dƒ}|d jo|d |}nt t |d ƒ|ƒ}|}t|d ƒƒ}t|d ƒ}t|dƒ}ttdƒƒ}t|dƒ}t|dƒ}ttt dƒdƒ} |t| ƒdƒ|"o#tt |+|/ƒd?ƒd=d8ƒn tt |+|/ƒd?ƒd=d9ƒt|+d@ƒd3ƒo|"o-t |+d3ƒd}0t|+d?ƒd3|0ƒnt |+|/ƒ}+ntt!t|+d ƒƒƒdAƒt t!|ƒdd …ƒd ƒ}1t|1dBƒdCƒot|1dAƒdDd dƒ}1nt |dEƒ}2d }3|d jo|d jo |d joÜdFt!t|.d)ƒƒƒ}3t|2d*ƒ|3|ƒtt |2|3ƒd+ƒdG|d-ƒtt |2|3ƒd+ƒdH|d-ƒtt |2|3ƒd+ƒdIt|+dƒƒgd<ƒtt |2|3ƒd+ƒd,t |d,ƒd-ƒtt |2|3ƒd+ƒd.dd/ƒtt |2|3ƒd+ƒd0dd1ƒtt |2|3ƒd+ƒdJdd1ƒtt |2|3ƒd+ƒdKdd1ƒtt |2|3ƒd+ƒdLdd1ƒtt |2|3ƒd+ƒd5|.d5ƒtt |2|3ƒd+ƒd6|.d5ƒtt |2|3ƒd+ƒd7d8d9d:d;dMgd<ƒtt |2|3ƒd+ƒd=d7d>ƒ|"o#tt |2|3ƒd?ƒd=d8ƒn tt |2|3ƒd?ƒd=d9ƒt|+d@ƒd4ƒo|"o-t |+d4ƒd}4t|+d?ƒd4|4ƒndNt!t|.d)ƒƒƒ}5t|+d*ƒ|5d ƒnt tt dƒdOƒdP}6|o | ƒSn:tttt dƒdƒdQƒ|6dR|dS|1dTƒdS(UN(s html_quote(ssplitsREQUESTsRESPONSEiszwo_libsmem_dataszwo_urlss/srep_objsgetPhysicalPathsgrpsactsgrpsviewsgetIds enablehtmlsenablejavascriptsSESSIONsinstids user_roles_idis Authenticateds Anonymoussdroit_edit_dossiersVous n'avez aucun droit !sinstid=s category=s category_url=scategory_path=snewcat=s maketranss s translates 'ssplits,schem=sGMT+0srepcat=scatstimeTimesmanage_addFoldersmanage_addPropertysuser_idsstringspriorsbooleansordersintson_fronts nb_subcatsnb_linkssdatesdate_last_changes statuslistsokswaitingsrejectedsstandbyslinessstatuss selectionsmanage_changePropertiess hasPropertysreplaces startswiths(, s, slinksslinksurlsdescs categoriesshitssvotesspointssdeadsslsURL1s /add_linksredirects?instid=s&category_path=s#diese(6s_print_s_printsProducts.PythonScripts.standards html_quotesstringssplits _getattr_s containersrequestsRESPONSEsdebugscontextsmems _getitem_surls category_urlsinstidsrepsinstancesinstpathsgrpsactsgrpsviewsmodids enablehtmlsenablejavascriptsSESSIONs_write_s perm_edits perm_submitsrolis _getiter_sgscategorysstrs category_pathsnewcatstablescheminschemsrepcatschsDateTimesdatesid_cats new_nb_subcatsrelPhysicalPaths linkothequesid_linkslink_urls link_titres link_descs new_nb_linkssid_sls redirection(7sinstidscategorys category_urls category_pathsnewcatsarboslink_urls link_titres link_descs_print_s_printsProducts.PythonScripts.standards html_quotesstringssplits _getattr_s containersrequestsRESPONSEsdebugscontextsmems _getitem_surlsrepsinstancesinstpathsgrpsactsgrpsviewsmodids enablehtmlsenablejavascriptsSESSIONs_write_s perm_edits perm_submitsrolis _getiter_sgsstrstablescheminschemsrepcatschsDateTimesdatesid_cats new_nb_subcatsrelPhysicalPaths linkothequesid_links new_nb_linkssid_sls redirection((sScript (Python)s add_link_oksè                  +""""""". #C'""1+"""""""1 #(s add_link_ok(s add_link_ok((sScript (Python)ssqU func_defaultsq(UUUUUUUUtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q }q!Uadminq"]q#UOwnerq$asUidq%U add_link_okq&U_paramsq'Ulinstid,category='',category_url='',category_path='',newcat='',arbo='',link_url='',link_titre='',link_desc=''q(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-K U co_varnamesq.(Uinstidq/Ucategoryq0U category_urlq1U category_pathq2Unewcatq3Uarboq4Ulink_urlq5U link_titreq6U link_descq7U_print_q8U_printq9UProducts.PythonScripts.standardq:U html_quoteq;UstringqU containerq?Urequestq@URESPONSEqAUdebugqBUcontextqCUmemqDU _getitem_qEUurlqFUrepqGUinstanceqHUinstpathqIUgrpsactqJUgrpsviewqKUmodidqLU enablehtmlqMUenablejavascriptqNUSESSIONqOU_write_qPU perm_editqQU perm_submitqRUroliqSU _getiter_qTUgUstrqUUtableqVUcheminqWUchemqXUrepcatqYUchqZUDateTimeq[Udateq\Uid_catq]U new_nb_subcatq^UrelPhysicalPathq_U linkothequeq`Uid_linkqaU new_nb_linksqbUid_slqcU redirectionqdtqeubu. =&”((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T request = container.REQUEST RESPONSE = request.RESPONSE debug=0 mem=context.zwo_lib.mem_data() url = mem['zwo_url'] #if category_url=='': # category_url=url+'/'+instid rep=mem['rep_obj'][instid] instance=rep #~ recuperation parametres grpsact=instance.grpsact grpsview=instance.grpsview modid=container.getId() enablehtml=instance.enablehtml enablejavascript=instance.enablejavascript SESSION=context.REQUEST.SESSION SESSION['instid']=instid #~ controle des permissions perm_edit=0 perm_submit=0 roli=mem['user_roles_id'] for g in roli: if g in grpsview: perm_submit=1 for g in roli: if g in grpsact: perm_edit=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsview: perm_submit=1 if 'Anonymous' in grpsact: perm_edit=1 if mem['droit_edit_dossier']==1: perm_edit=1 if not(perm_edit or perm_submit): return 'Vous n\'avez aucun droit !' print context.zwo_lib.standard_html_header(mem) if debug: print 'instid='+instid print 'category_path='+str(category_path) print 'arbo='+ arbo print 'HTTP_REFERER='+ container.REQUEST.HTTP_REFERER #return printed table = string.maketrans(' ',' ') chemin = str(category_path[1:-1]) chemin = string.translate(chemin,table,' \'') chem = chemin.split(',') if debug: print 'chem='+str(chem) #return printed repcat = rep for ch in chem: if ch!='': parent = repcat repcat = repcat[ch] date = DateTime('GMT+0') if debug: print 'repcat='+str(repcat.title_or_id()) #return printed print '
' print '' print '' if parent==instance: fin_de_phrase = ' supprimer la rubrique '+ repcat.title_or_id() +' de l\'annuaire ?

' else: fin_de_phrase = ' supprimer la sous-rubrique '+ repcat.title_or_id() +' de la rubrique '+ parent.title_or_id() +' ?

' if repcat.objectValues('Folder')==[]: #on ne peut supprimer que des categories vides (ni sous-cat ni liens) print '

Voulez-vous VRAIMENT'+ fin_de_phrase print ' ' else: print '

IMPOSSIBLE de'+ fin_de_phrase print '

Veuillez vous assurer qu\'elle est bien vide (aucune sous-rubrique, aucun lien).

' print '' print '
' print context.zwo_lib.standard_html_footer(mem) return printed q Utitleq U.Confirmation de la suppression d'une catégorieq U_codeqTRc@sdd„ZdS(Nsc'>Csjtƒ}ttdƒ}t|dƒ}d}tttdƒdƒƒ} t | dƒ} t t | dƒ|ƒ} | }t|dƒ}t|d ƒ}ttd ƒƒ}t|d ƒ}t|d ƒ}tttdƒd ƒ}|t|ƒd
s*s1 s

IMPOSSIBLE desV

Veuillez vous assurer qu'elle est bien vide (aucune sous-rubrique, aucun lien).

s^s
sstandard_html_footer('s_print_s_prints _getattr_s containersrequestsRESPONSEsdebugscontextsmems _getitem_surlsinstidsrepsinstancesgrpsactsgrpsviewsmodids enablehtmlsenablejavascriptsSESSIONs_write_s perm_edits perm_submitsrolis _getiter_sgsstrs category_pathsarbosstringstablescheminschemsrepcatschsparentsDateTimesdates fin_de_phrase('sinstids category_paths_print_s_prints _getattr_s containersrequestsRESPONSEsdebugscontextsmems _getitem_surlsrepsinstancesgrpsactsgrpsviewsmodids enablehtmlsenablejavascriptsSESSIONs_write_s perm_edits perm_submitsrolis _getiter_sgsstrsarbosstringstablescheminschemsrepcatschsparentsDateTimesdates fin_de_phrase((sScript (Python)sdel_category_confirmsŠ         "$   $  .   "(sdel_category_confirm(sdel_category_confirm((sScript (Python)ssqU func_defaultsq(UtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q }q!Uadminq"]q#UOwnerq$asUidq%Udel_category_confirmq&U_paramsq'Uinstid,category_path=''q(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Uinstidq/U category_pathq0U_print_q1U_printq2U _getattr_q3U containerq4Urequestq5URESPONSEq6Udebugq7Ucontextq8Umemq9U _getitem_q:Uurlq;UrepqUgrpsviewq?Umodidq@U enablehtmlqAUenablejavascriptqBUSESSIONqCU_write_qDU perm_editqEU perm_submitqFUroliqGU _getiter_qHUgUstrqIUarboqJUstringqKUtableqLUcheminqMUchemqNUrepcatqOUchqPUparentqQUDateTimeqRUdateqSU fin_de_phraseqTtqUubu. =',((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Toprint """ ************************* * TODO list du 30/08/04 * ************************* view_html: Ne faire afficher que les liens et rubriques de status 'ok', ou appartenant à l'user en cours. -> FAIT Distinguer, pour l'admin et l'user proposant, les liens et rubriques de status différent de 'ok'. Ne faire afficher que le nombre maxi de liens (et rubriques ?) par page. Faire afficher une image "new" à côté des nouveaux liens. -> Partiellement fait (affiche [New!]). Prendre en compte hits et votes (cf. ci-dessous) Trier les rubriques et liens par priorité, ordre, hits, votes, alphabétique. -> Fait, sans prise en charge pour l'instant des hits ni des votes add_link: Créer un bouton de retour à la rubrique consultée avant l'appel de ce script. -> FAIT add_link_ok: Faire un formulaire de confirmation avant enregistrement, -> FAIT et proposer d'enregistrer le lien dans d'autres rubriques. Créer les scripts manage et manage_ok permettant d'effectuer toutes les opérations de copier-coller, suppression, édition de rubriques/liens. Permettre de piocher dans la liste des liens orphelins pour alimenter les rubriques, valider les liens et rubriques 'waiting', changer le status des rubriques/liens, rendre frontale une sous-rubrique. Créer un script count_hits, et modifier view_html pour que les liens "passent" (optionnellement, option à créer dans new_html et dans config_html) par ces scripts. Créer, dans new_html et dans config_html, l'option "vote". Créer les scripts vote et vote_ok. Créer un formulaire de recherche, et afficher le résultat. Achever la rédaction du fichier README. """ return printed q U_codeq Tuc@s d„ZdS(NcCstƒ}|dIJ|ƒSdS(NsS ************************* * TODO list du 30/08/04 * ************************* view_html: Ne faire afficher que les liens et rubriques de status 'ok', ou appartenant à l'user en cours. -> FAIT Distinguer, pour l'admin et l'user proposant, les liens et rubriques de status différent de 'ok'. Ne faire afficher que le nombre maxi de liens (et rubriques ?) par page. Faire afficher une image "new" à côté des nouveaux liens. -> Partiellement fait (affiche [New!]). Prendre en compte hits et votes (cf. ci-dessous) Trier les rubriques et liens par priorité, ordre, hits, votes, alphabétique. -> Fait, sans prise en charge pour l'instant des hits ni des votes add_link: Créer un bouton de retour à la rubrique consultée avant l'appel de ce script. -> FAIT add_link_ok: Faire un formulaire de confirmation avant enregistrement, -> FAIT et proposer d'enregistrer le lien dans d'autres rubriques. Créer les scripts manage et manage_ok permettant d'effectuer toutes les opérations de copier-coller, suppression, édition de rubriques/liens. Permettre de piocher dans la liste des liens orphelins pour alimenter les rubriques, valider les liens et rubriques 'waiting', changer le status des rubriques/liens, rendre frontale une sous-rubrique. Créer un script count_hits, et modifier view_html pour que les liens "passent" (optionnellement, option à créer dans new_html et dans config_html) par ces scripts. Créer, dans new_html et dans config_html, l'option "vote". Créer les scripts vote et vote_ok. Créer un formulaire de recherche, et afficher le résultat. Achever la rédaction du fichier README. (s_print_s_print(s_print_s_print((sScript (Python)sTODOs"(sTODO(sTODO((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUadminq]q UOwnerq!asUidq"UTODOq#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_argcountq)KU co_varnamesq*(U_print_q+U_printq,tq-ubu. =(/((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU planète - OKqU__ac_local_roles__q}q Uxavq ]q UOwnerq asUheightq KUwidthqKU content_typeqU image/gifqU__name__qU icone.pngqUdataqUOGIF89a¡™Ìÿÿÿÿÿÿÿÿÿ!ù, Žy¦íß‚ pN@“Ýùp¯]^‡I£ˆPßcAî‹0®P;qUsizeqKOu. =ÌÔ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Txmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] #~ ######### security checks ######### if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' evaluateurs=instance.evaluateurs def can_evalue(): if mem['droit_edit_dossier']==1: return 1 for el in evaluateurs.split(','): if el in mem['user_roles_id']: return 1 if not mem['user_id']==membre and not can_evalue(): return "Opération non autorisée" print context.zwo_lib.standard_html_header(mem) print '
' print '

Priorité :

' if fini=="on": print '

Terminé

' else: print '

Terminé

' print '' print '' print '' print '

' print '
' print context.zwo_lib.standard_html_footer(mem) return printed q U _filepathq U7Script (Python):/phil/zwo_modules/progest/edit_prioriteq U_codeqT¼ c@s d„ZdS(Nc6s tƒ}tttdƒdƒƒ‰tttˆdƒ|ƒ|ƒ} tˆdƒdjodSnt| dƒ‰‡‡d†} tˆd ƒ|j o| ƒ od Sn|tttdƒd ƒˆƒIJ|d IJ|d IJxt t| dƒƒD]h}tt|dƒdƒdƒ}||j o|d||fIJn|d||fIJ|dIJq÷W|dIJ|djo|dIJn |dIJ|d|dIJ|d|dIJ|d|dIJ|dIJ|dIJ|tttdƒdƒˆƒIJ|ƒSdS( Nszwo_libs mem_mod_datasrep_objsdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !s evaluateursc sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s evaluateurssel(s _getitem_smems _getiter_s _getattr_s evaluateurssel(smems evaluateurs(sScript (Python)s can_evalues suser_idsOpération non autoriséesstandard_html_headers.
s'

Priorité :

sonsS

Terminé

sC

Terminé

s*s'

s
sstandard_html_footer(s_print_s_prints _getattr_scontextsmems _getitem_sinstidsmembresinstances evaluateurss can_evalues _getiter_sprsopsprioritesfinismod(sinstidsmodsmembresprioritesfinis_print_s_prints _getattr_scontextsmems _getitem_sinstances evaluateurss can_evalues _getiter_sprsop((smems evaluateurssScript (Python)s edit_priorites6$!'"       "(s edit_priorite(s edit_priorite((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @‰q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Up4q']q(UOwnerq)asUidq*U edit_prioriteq+U_paramsq,Uinstid,mod,membre,priorite,finiq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Uinstidq4Umodq5Umembreq6Uprioriteq7Ufiniq8U_print_q9U_printq:U _getattr_q;UcontextqUinstanceq?U evaluateursq@U can_evalueqAU _getiter_qBUprqCUopqDtqEubu. =Þ ý((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TDmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] #~ ######### security checks ######### if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' ##commentateurs=instance.commentateurs ##def can_commente(): ## if mem['droit_edit_dossier']==1: ## return 1 ## for el in commentateurs.split(','): ## if el in mem['user_roles_id']: ## return 1 #if not mem['user_id']==membre and not can_commente(): return "Vous n'avez pas les droits pour cette opération." print context.zwo_lib.standard_html_header(mem) ## print '
' print '

Commentaire:

' print '

' print '' print '' print '' print '

' print '
' print context.zwo_lib.standard_html_footer(mem) return printed q U _filepathq U:Script (Python):/phil/zwo_modules/progest/edit_commentaireq U_codeqTPc@s d„ZdS(Nc 'Cs"tƒ}tttdƒdƒƒ}ttt|dƒ|ƒ|ƒ} t|dƒdjodSn|tttdƒdƒ|ƒIJ|dIJ|d IJ|d |d IJ|d |d IJ|d|d IJ|d|d IJ|dIJ|dIJ|tttdƒdƒ|ƒIJ|ƒSdS(Nszwo_libs mem_mod_datasrep_objsdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !sstandard_html_headers1
s

Commentaire:

s3

s*s'

s
sstandard_html_footer( s_print_s_prints _getattr_scontextsmems _getitem_sinstidsmembresinstances commentairesmod( sinstidsmodsmembres commentaires_print_s_prints _getattr_scontextsmems _getitem_sinstance((sScript (Python)sedit_commentaires$! "    "(sedit_commentaire(sedit_commentaire((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @¥q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Up4q']q(UOwnerq)asUidq*Uedit_commentaireq+U_paramsq,Uinstid,mod,membre,commentaireq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Uinstidq4Umodq5Umembreq6U commentaireq7U_print_q8U_printq9U _getattr_q:Ucontextq;Umemqtq?ubu. =ÝG((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÛmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid] modname='modules_manager' ###~ ######### security checks ######### ##def can_edit(): ## if mem['droit_edit_dossier']==1: ## return 1 ## for el in instance.groups_admin: ## if el in mem['user_roles_id']: ## return 1 ## ##if not can_edit(): return 'Operation not permited' obj=instance[membre] obj.manage_changeProperties(sentiment=sentiment) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q Uidq Uedit_sentiment_okq U_codeqTc@s d„ZdS(Nc Cstttdƒdƒƒ}tt|dƒ|ƒ}d}t||ƒ} t| dƒd|ƒttttdƒdƒd ƒt|d ƒƒdS( Nszwo_libs mem_mod_datasrep_objsmodules_managersmanage_changePropertiess sentimentsREQUESTsRESPONSEsredirectsrep_url( s _getattr_scontextsmems _getitem_sinstidsinstancesmodnamesmembresobjs sentiment( sinstidsmembres sentiments _getattr_scontextsmems _getitem_sinstancesmodnamesobj((sScript (Python)sedit_sentiment_oks  (sedit_sentiment_ok(sedit_sentiment_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Uinstidq%Umembreq&U sentimentq'U _getattr_q(Ucontextq)Umemq*U _getitem_q+Uinstanceq,Umodnameq-Uobjq.tq/ubU__ac_local_roles__q0}q1Up4q2]q3UOwnerq4asU _filepathq5U;Script (Python):/phil/zwo_modules/progest/edit_sentiment_okq6U_paramsq7Uinstid,membre,sentimentq8U_dav_writelocksq9(U @¤q:(U Persistenceq;UPersistentMappingqQu. =Í ³((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tc# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() if type_rep=="skin": try: skin=context.zwo_info.skins[nom_rep] except: return 'nooo' obj=skin[instid] else: dossier=mem['rep_obj'] obj=dossier[instid] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' # EXEMPLE MODIFICATION #obj.manage_changeProperties(exemple=exemple) #phil-->progest if obj.hasProperty('titre_projet'): obj.manage_changeProperties(titre_projet=titre_projet) obj.manage_changeProperties(groupe=groupe) obj.manage_changeProperties(fixe_taches=fixe_taches) obj.manage_changeProperties(progress=progress) obj.manage_changeProperties(commentateurs=commentateurs) obj.manage_changeProperties(evaluateurs=evaluateurs) #progest-->fin # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q U _filepathq U@Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/config_okq U_codeqTdc@s d„ZdS(Nc Csqtttdƒdƒƒ} |djoFy%ttttdƒdƒ|ƒ} Wn dSnXt| |ƒ}nt| dƒ}t||ƒ}t| dƒd jod Snt|d ƒd ƒot|d ƒd |ƒnt|d ƒd|ƒt|d ƒd|ƒt|d ƒd|ƒt|d ƒd|ƒt|d ƒd|ƒttttdƒdƒdƒdƒdS(Nszwo_libs mem_mod_datasskinszwo_infosskinssnooosrep_objsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s hasPropertys titre_projetsmanage_changePropertiessgroupes fixe_tachessprogresss commentateurss evaluateurssREQUESTsRESPONSEsredirects../../(s _getattr_scontextsmemstype_reps _getitem_snom_repsskinsinstidsobjsdossiers titre_projetsgroupes fixe_tachessprogresss commentateurss evaluateurs(sinstidsnom_repstype_reps titre_projets fixe_tachessprogresss commentateurss evaluateurssgroupes _getattr_scontextsmems _getitem_sskinsobjsdossier((sScript (Python)s config_oks$ ( (s config_ok(s config_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @Šq (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uxavq']q(UOwnerq)asUidq*U config_okq+U_paramsq,U[instid, nom_rep,type_rep,titre_projet,fixe_taches,progress,commentateurs,evaluateurs,groupeq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2K U co_varnamesq3(Uinstidq4Unom_repq5Utype_repq6U titre_projetq7U fixe_tachesq8Uprogressq9U commentateursq:U evaluateursq;UgroupeqUmemq?U _getitem_q@UskinqAUobjqBUdossierqCtqDubu. =ι((U OFS.FolderqUFolderqtqNt.}q(U aide24.pngq(U @‹q(U OFS.ImageqUImageqtq tq QU lunettes.pngq (U @Œq (hUImageq tqtqQUon.pngq(U @q(hUImageqtqtqQUsupp.pngq(U @Žq(hUImageqtqtqQUoff.pngq(U @q(hUImageqtqtqQUtitleqUU faire.pngq (U @q!(hUImageq"tq#tq$QUadd.pngq%(U @‘q&(hUImageq'tq(tq)QU eye16.pngq*(U @’q+(hUImageq,tq-tq.QU options.pngq/(U @“q0(hUImageq1tq2tq3QUeye_closed.pngq4(U @”q5(hUImageq6tq7tq8QU_objectsq9(}q:(U meta_typeq;UImageq(h;h1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) priorites=('à ton rythme:=:lime','Différé:=:yellow','Pressant:=:orange','Urgent:=:red') coul_groupes=('verts:=:lime','jaunes:=:yellow','bleus:=:blue','rouges:=:red','noirs:=:black','violets:=:purple','turquoises:=:aqua','roses:=:fuchsia','olives:=:olive','oranges:=:#ff9933') sentiments=('1:=:passionné','2:=:galvanisé','3:=:déterminé','4:=:efficace','5:=:motivé','6:=:interessé','7:=:fatigué','8:=:perplexe','9:=:désemparé','10:=:surchargé','11:=:déprimé','12:=:atterré') option_modes=('Gestion de projet','Atelier de régulation') mode=('Gestion de projet') ##option_commentaire=('commentaire','feed-back','activité','régulation') # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url=url_lieu+'ajout_element?type='+container.getId() print '' print '

Cet identifiant '+idobj+' est déja pris
' print 'Veuillez en choisir un autre
' print 'Redirection automatique dans 2 secondes.

' print 'Si la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIETE en fonction du module #obj.manage_addProperty('nom_propriete','valeur default',type) obj.manage_addProperty('titre_projet',titre_projet,'string') obj.manage_addProperty('groupe',groupe,'string') obj.manage_addProperty('fixe_taches',fixe_taches,'string') obj.manage_addProperty('progress',progress,'string') obj.manage_addProperty('commentateurs',commentateurs,'string') obj.manage_addProperty('evaluateurs',evaluateurs,'string') obj.manage_addProperty('priorites',priorites,'lines') obj.manage_addProperty('coul_groupes',coul_groupes,'lines') obj.manage_addProperty('sentiments',sentiments,'lines') obj.manage_addProperty('option_modes',option_modes,'lines') obj.manage_addProperty('mode',mode,'string') ##obj.manage_addProperty('option_commentaire',option_commentaire,'lines') # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier chois comme type uniquement) #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q Uidq Unew_okq U_codeqT c@s d„ZdS(Nc 'Csrtƒ} tttdƒdƒƒ} |djo+ttttdƒdƒ|ƒ}|}nt| dƒ}|}t|dƒƒ}t| dƒd jod Sntttdƒd ƒ|ƒ}d d ddf}ddddddddddf }ddddddd d!d"d#d$d%f }d&d'f}d&}|t|d(ƒƒjoy|d)ttd*ƒƒ}| d+|d,IJ| d-|d.IJ| d/IJ| d0IJ| d1|d2IJ| d3IJ| ƒSnt|d4ƒ||ƒt||ƒ}t|d5ƒd6d7d8ƒt|d5ƒd7ttd*ƒƒd8ƒt|d5ƒd9|d8ƒt|d5ƒd:|d8ƒt|d5ƒd;|d8ƒt|d5ƒd<|d8ƒt|d5ƒd=|d8ƒt|d5ƒd>|d8ƒt|d5ƒd?|d@ƒt|d5ƒdA|d@ƒt|d5ƒdB|d@ƒt|d5ƒdC|d@ƒt|d5ƒdD|d8ƒttttdEƒdFƒdGƒdH|dI|ƒdSdS(JNszwo_libs mem_mod_datasskinszwo_infosskinssrep_objs absolute_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopesà ton rythme:=:limesDifféré:=:yellowsPressant:=:oranges Urgent:=:reds verts:=:limesjaunes:=:yellows bleus:=:blues rouges:=:reds noirs:=:blacksviolets:=:purplesturquoises:=:aquasroses:=:fuchsiasolives:=:olivesoranges:=:#ff9933s 1:=:passionnés 2:=:galvanisés 3:=:déterminés 4:=:efficaces 5:=:motivés 6:=:interessés 7:=:fatigués 8:=:perplexes 9:=:désemparés10:=:surchargés 11:=:déprimés 12:=:atterrésGestion de projetsAtelier de régulations objectIdssajout_element?type=sgetIds7s.

Cet identifiant s est déja pris
s"Veuillez en choisir un autre
s6Redirection automatique dans 2 secondes.

sGSi la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstrings titre_projetsgroupes fixe_tachessprogresss commentateurss evaluateurss prioritessliness coul_groupess sentimentss option_modessmodesREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s_print_s_prints _getattr_scontextsmemstypes _getitem_snomsskinslieusdossiersurl_lieustitresidobjs prioritess coul_groupess sentimentss option_modessmodes containersurlsobjs titre_projetsgroupes fixe_tachessprogresss commentateurss evaluateurs(stitresnomstypes titre_projetsgroupes fixe_tachessprogresss commentateurss evaluateurss_print_s_prints _getattr_scontextsmems _getitem_sskinslieusdossiersurl_lieusidobjs prioritess coul_groupess sentimentss option_modessmodes containersurlsobj((sScript (Python)snew_oksR  ! $*    % ((snew_ok(snew_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @—q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Ugregq']q(UOwnerq)asU _filepathq*U=Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/new_okq+U_paramsq,URtitre, nom,type,titre_projet,groupe,fixe_taches,progress,commentateurs,evaluateursq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2K U co_varnamesq3(Utitreq4Unomq5Utypeq6U titre_projetq7Ugroupeq8U fixe_tachesq9Uprogressq:U commentateursq;U evaluateursqU _getattr_q?Ucontextq@UmemqAU _getitem_qBUskinqCUlieuqDUdossierqEUurl_lieuqFUidobjqGU prioritesqHU coul_groupesqIU sentimentsqJU option_modesqKUmodeqLU containerqMUurlqNUobjqOtqPubu. =Ð ½((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Twmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] #~ ######### security checks ######### if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' evaluateurs=instance.evaluateurs ##progress=instance.progress ##def can_progress(): ## if mem['droit_edit_dossier']==1: ## return 1 ## for el in progress.split(','): ## if el in mem['user_roles_id']: ## return 1 def can_evalue(): if mem['droit_edit_dossier']==1: return 1 for el in evaluateurs.split(','): if el in mem['user_roles_id']: return 1 if not mem['user_id']==membre and not can_evalue(): return "Vous n'êtes pas autorisé à modifier la barre de progression d'un autre membre." obj=instance[mod] obj.manage_changeProperties(realisation=int(float(per))) url=mem['rep_url']+'?mode='+str(mode) context.REQUEST.RESPONSE.redirect(url) q Uidq U realisationq U_codeqT¦c@sdd„ZdS(NsNormalcstttdƒdƒƒ‰tttˆdƒ|ƒ|ƒ} tˆdƒdjodSnt| dƒ‰‡‡d†} tˆd ƒ|j o| ƒ od Snt| |ƒ} t| d ƒd t t |ƒƒƒtˆd ƒdt|ƒ}ttttdƒdƒdƒ|ƒdS(Nszwo_libs mem_mod_datasrep_objsdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !s evaluateursc sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s evaluateurssel(s _getitem_smems _getiter_s _getattr_s evaluateurssel(smems evaluateurs(sScript (Python)s can_evalues suser_idsNVous n'êtes pas autorisé à modifier la barre de progression d'un autre membre.smanage_changePropertiess realisationsrep_urls?mode=sREQUESTsRESPONSEsredirect(s _getattr_scontextsmems _getitem_sinstidsmembresinstances evaluateurss can_evaluesmodsobjsintsfloatspersstrsmodesurl(sinstidspersmodsmembresmodes _getattr_scontextsmems _getitem_sinstances evaluateurss can_evaluesobjsintsfloatsstrsurl((smems evaluateurssScript (Python)s realisations!'&(s realisation(s realisation((sScript (Python)ssqU func_defaultsq(UNormalqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerq usbU func_codeq!(cShared.DC.Scripts.Signature FuncCode q"oq#}q$(U co_argcountq%KU co_varnamesq&(Uinstidq'Uperq(Umodq)Umembreq*Umodeq+U _getattr_q,Ucontextq-Umemq.U _getitem_q/Uinstanceq0U evaluateursq1U can_evalueq2Uobjq3Uintq4Ufloatq5Ustrq6Uurlq7tq8ubU__ac_local_roles__q9}q:Up4q;]qU5Script (Python):/phil/zwo_modules/progest/realisationq?U_paramsq@U$instid, per,mod,membre,mode='Normal'qAU_dav_writelocksqB(U @˜qC(U PersistenceqDUPersistentMappingqEtqFtqGQu. =Ò ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid] modname='progest' #~ ######### security checks ######### def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in instance.groups_admin: if el in mem['user_roles_id']: return 1 if not can_edit(): return 'Operation not permited' obj=instance[membre] obj.manage_changeProperties(alternative_url=alternative_url) obj.manage_changeProperties(alternative_lien=alternative_lien) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q U _filepathq U5Script (Python):/phil/zwo_modules/progest/edit_url_okq U_codeqTxc@s d„ZdS(Nc sÈtttdƒdƒƒ‰ttˆdƒ|ƒ‰d} ‡‡d†} | ƒ odSntˆ|ƒ} t| dƒd|ƒt| dƒd |ƒttttd ƒd ƒd ƒtˆd ƒƒdS(Nszwo_libs mem_mod_datasrep_objsprogestc s`tˆdƒdjodSnx;ttˆdƒƒD]$}|tˆdƒjodSq4q4WdS(Nsdroit_edit_dossieris groups_admins user_roles_id(s _getitem_smems _getiter_s _getattr_sinstancesel(s _getitem_smems _getiter_s _getattr_sinstancesel(smemsinstance(sScript (Python)scan_edits sOperation not permitedsmanage_changePropertiessalternative_urlsalternative_liensREQUESTsRESPONSEsredirectsrep_url( s _getattr_scontextsmems _getitem_sinstidsinstancesmodnamescan_editsmembresobjsalternative_urlsalternative_lien( sinstidsmembresalternative_urlsalternative_liens _getattr_scontextsmems _getitem_sinstancesmodnamescan_editsobj((smemsinstancesScript (Python)s edit_url_oks(s edit_url_ok(s edit_url_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @šq (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Up4q']q(UOwnerq)asUidq*U edit_url_okq+U_paramsq,U.instid,membre,alternative_url,alternative_lienq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Uinstidq4Umembreq5Ualternative_urlq6Ualternative_lienq7U _getattr_q8Ucontextq9Umemq:U _getitem_q;UinstanceqUobjq?tq@ubu. =Ó]((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TkR# Script (Python) "view_html" ##bind container=container ##bind context=context ##bind namespace= ##bind script=script ##bind subpath=traverse_subpath ##parameters=mem,instance ##title= ## #recuperation parametres #exemple=instance.exemple #à récupérer des paramètres normalement realisation #pour trier les sorties par groupe list_coul=['sansgroupe'] dico_groupe={'sansgroupe':[]} for i in instance.coul_groupes: z=i.split(':=:') list_coul.append(z[0]) dico_groupe [z[0]]=[] #pour initialiser la mise en variable du rendu zwischen = [] pr = zwischen.append # pour que les anonymes ne voient pas Progest #if 'Authenticated' not in mem['user_roles_id']: # return '' aff_par=[] realisation=30 priorite_color={} for el in instance.priorites: li=el.split(':=:') nom=li[0] col=li[1] priorite_color[nom]=col #~ ######### security checks ######### if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' fixe_taches=instance.fixe_taches evaluateurs=instance.evaluateurs #return str(evaluateurs.split(',')) commentateurs=instance.commentateurs #list_title=instance.list_title def is_conf(): if 'config_zwook' in mem['user_roles_id']: return 1 def is_manager(): if 'Manager' in mem['user_roles_id']: return 1 def can_fixe_tache(): if mem['droit_edit_dossier']==1: return 1 for el in fixe_taches.split(','): if el in mem['user_roles_id']: return 1 def can_evalue(): if mem['droit_edit_dossier']==1: return 1 for el in evaluateurs.split(','): if el in mem['user_roles_id']: return 1 def can_commente(): if mem['droit_edit_dossier']==1: return 1 for el in commentateurs.split(','): if el in mem['user_roles_id']: return 1 #recuperation parametres instid=instance.getId() form=context.REQUEST.form mode='normal' if form.has_key('mode'): mode=str(form['mode']) #affichage du module : aff=[] #aff.append('

'+exemple+'

') #Progest début # piqué dans Todo 1 modname='progest' #img_on='' #img_off='' img_on='' img_off='' #fin piqué dans Todo 1 repbase=context.zwook repacl=repbase.acl_users lisu2=repacl.getUserNames() lisu=context.zwo_info.users lisg=context.zwo_info.groups #entête tableau progest pr (''' ''') groupe_de_projet="" i=0 for el in instance.groupe.split(','): i=i+1 if i==1: groupe_de_projet=groupe_de_projet + el else: groupe_de_projet=groupe_de_projet + " + " + el pr (''' ') pr ('') #on prend l'affichage du bandeau au-dessus des groupes aff.append(''.join(zwischen)) zwischen=[] pr = zwischen.append #Boucle d'affichage du groupe for kk in lisg.objectIds('Folder'): nom=kk if nom in instance.groupe.split(','): if not nom in lisg.objectIds('Folder'): return "erreur : groupe absent !" group=lisg[nom] if not group.hasProperty("ok"): return "erreur : groupe mal configurée not OK !" list1=[] list2=[] for a in lisu.objectValues('Folder'): aid=a.getId() user=repacl.getUser(aid) if user: if user.has_role(nom, repbase): list1.append((aid,a.title)) else: list2.append((aid,a.title)) for (a,b) in list1: #crée un folder par membre if not a in instance.objectIds('Folder'): instance.manage_addFolder(a,a) #instance=mem['rep_obj'][instid][a] alternative_lien='aucun' alternative_url='aucun' sentiment='intéressé' instance[a].manage_addProperty('alternative_lien',alternative_lien,'string') instance[a].manage_addProperty('alternative_url',alternative_url,'string') instance[a].manage_addProperty('sentiment',sentiment,'string') #récupère l'avatar des membres if not a in mem['rep_obj'].objectIds(): context.zwo_bo.edit.insertpageok(a) user_avatar='0.gif' #return if context.zwo_info.users[a].hasProperty('avatar'): if context.zwo_info.users[a].avatar in context.zwo_info.images.avatar.objectIds(): user_avatar=context.zwo_info.users[a].avatar avatar='zwo_info/images/avatar/'+user_avatar #récupère les sous-groupes des membres nom=a lis=context.zwo_info.users lisg=context.zwo_info.groups if not nom in lis.objectIds('Folder'): return "erreur : user absent !" user=lis[nom] if not user.hasProperty("ok"): return "erreur : user mal configurée not OK !" userzope=context.acl_users.getUser(nom) listroles=userzope.getRolesInContext(context.zwook) nomodifpossible=['Anonymous','Authenticated'] list1=[] list2=[] for b in lisg.objectValues('Folder'): if not b.getId() in nomodifpossible: if b.getId() in listroles: #list1.append((b.getId(),b.title)) list1.append(b.getId()) else: list2.append((b.getId(),b.title)) ## lisg=context.zwo_info.groups ## if b.getId() in lisg: ## list1.append((a.getId(),a.title)) #choisis une couleur pour chaque user selon son sous-groupe couleur='white' coul1='autrechose' for i in instance.coul_groupes: z=i.split(':=:') prem_el=z[0] deux_el=z[1] if prem_el in list1 : couleur=deux_el coul1=prem_el ## else: ## couleur="white" #couleur="white" # Affiche ligne d'identité du membre pr (' ') font_couleur="black" if couleur=="black" or couleur=="blue": font_couleur="white" pourcent='%' pr (''' ') pr (' ') #lien vers mon projet alternative_lien=instance[a].alternative_lien if alternative_lien=="aucun" or alternative_lien=="" : affiche_lien="Mon projet" else : affiche_lien=alternative_lien alternative_url=instance[a].alternative_url if alternative_url=="aucun" or alternative_url=="" : adresse=mem['rep_obj'][a].absolute_url() else : adresse=alternative_url ed="" usr=mem['user_zw_obj'] if mem['user_id']==a or can_evalue(): ed=' [E]' pr ('') # Affiche add item pr (' ') pr (' ') # fin de la ligne d'identité du membre # piqué de Todo 2 modli=instance [a].objectValues() modli.reverse() for mod in modli: modid=mod.getId() afmod=1 if mode<>'term': if mod.fini=='on': afmod=None if afmod: modid=mod.getId() fini=mod.fini ## classe=mod.classe priorite=mod.priorite realisation=mod.realisation commentaire='' sep='
' b=0 notesli=mod.commentaire lenotes=len(notesli) isnote=None for note in notesli: if b==lenotes-1: sep='' commentaire=commentaire+note+sep if note<>'': isnote=1 b=b+1 if not isnote: commentaire=' ' #ligne de définition de la tâche if instance.mode=='Gestion de projet': etiquette_tache='tâche' etiquette_commentaire='Commentaire' else: etiquette_tache='Objectif' etiquette_commentaire='Activité' pr (' ') #tache pr (' ') pr (' ') pr (' ') pr (' ') #ligne de la barre de progression pr ('') #pr ('' pr (' ') pr ('') #ligne de commentaire pr ('') pr ('') #ed=' [E]' #pr ('' pr ('') pr ('') pr ('') #mise en dico du rendu selon les couleurs de groupes #coul1 couleur du groupe, zwischen contenant le rendu partiel #entrée dico sansgroupe pour les personnes n'ayant pas de couleur de groupe. if dico_groupe.has_key(coul1): ## aff.append(coul1) ## aff.append(a) #aff.append(''.join(zwischen)) #return ''.join(aff) dico_groupe [coul1].append(''.join(zwischen)) else: #return ''.join(aff) dico_groupe ['sansgroupe'].append(''.join(zwischen)) zwischen=[] pr=zwischen.append for coul in list_coul: ##aff.append(''.join(zwischen)) aff.append(''.join(dico_groupe[coul])) aff.append('
Projet: ''') pr ('
'+str(instance.titre_projet)+'
') pr ('''
''') # Affiche Options #pr ('') if can_evalue(): pr ('
') pr ('
') pr ('
') ################## pr ('''
''') #pr ('
'+str(instance.groupe.split(','))+'
') pr ('
'+groupe_de_projet+'
') pr ('''
 ''') pr (''' ''') pr ('
') # Affiche lunettes if mode=='normal': pr (' '+img_on+'') elif mode=='term': pr (' '+img_off+'') pr ('') pr ('
') pr ('
'''% (pourcent, couleur)) pr ('
'+a+'
') pr ('
') pr ('
') pr ('
') pr ('') pr (' ') # affiche lien Mon projet #pr (' Mon projet')%mem['rep_obj'][a].absolute_url() pr (' ') pr (' ') sentimage="lg_interesse" dico_sentiment={ "passionné": "lg_passionne" , "galvanisé": "lg_galvanise" , "déterminé": "lg_determine" , "efficace": "lg_efficace" , "motivé": "lg_motive" , "intéressé": "lg_interesse" , "fatigué": "lg_fatigue" , "perplexe": "lg_perplexe" , "désemparé": "lg_desempare" , "surchargé": "lg_surcharge" , "déprimé": "lg_deprime" , "atterré": "lg_atterre" } sentiment=instance[a].sentiment if dico_sentiment.has_key(sentiment): sentimage=dico_sentiment[sentiment] ## if sentiment=="passionné": ## sentimage="lg_passionne" ## elif sentiment=="galvanisé": ## sentimage="lg_galvanise" ## elif sentiment=="déterminé": ## sentimage="lg_determine" ## elif sentiment=="efficace": ## sentimage="lg_efficace" ## elif sentiment=="motivé": ## sentimage="lg_motive" ## elif sentiment=="intéressé": ## sentimage="lg_interesse" ## elif sentiment=="fatigué": ## sentimage="lg_fatigue" ## elif sentiment=="perplexe": ## sentimage="lg_perplexe" ## elif sentiment=="désemparé": ## sentimage="lg_desempare" ## elif sentiment=="surchargé": ## sentimage="lg_surcharge" ## elif sentiment=="déprimé": ## sentimage="lg_deprime" ## elif sentiment=="atterré": ## sentimage="lg_atterre" pr (' ') edit_sentiment="" if mem['user_id']==a or can_evalue(): edit_sentiment='' pr (' ') pr (' ') pr ('
'+affiche_lien+'') pr (' '+ed+'') pr ('
qui se sent:
') pr ('
') pr ('
') pr ('
') pr ('
'+edit_sentiment+sentiment+'
') pr ('
') pr ('
') pr ('
') if (mem['user_id']==a and can_fixe_tache()) or can_evalue(): pr ('
') pr ('') pr ('') ################## pr ('
') pr ('
'+etiquette_tache+':') #supprime tache #if (mem['user_id']==a and can_fixe_tache) or can_evalue(): if can_evalue(): pr (' ') pr(''+mod.title+'') #edit tache if (mem['user_id']==a and can_fixe_tache) or can_evalue(): pr ('
') pr ('
')+classe+'Progression:') pr ('') i=0 while i<=100: color='#CCCCCC' if i<=realisation: color='lime' pr ('') i=i+10 pr('') #affiche priorité couleur_priorite=priorite_color[priorite] couleur_font="black" if fini=="on": couleur_priorite="black" couleur_font="white" priorite="terminé" pr ('') pr ('') pr ('
') pr (''+str(i)+'%'+priorite+'
') pr ('
') #main OK! if can_evalue(): pr ('
') pr ('
'+etiquette_commentaire+': ')+commentaire+ed+' '+commentaire+'') #return str(can_commente()) if (mem['user_id']==a and can_commente) or can_evalue(): pr ('
') pr ('
') return ''.join(aff) #return zwischen #Progest fin q U _filepathq U3Script (Python):/phil/zwo_modules/progest/view_htmlq U_codeqTúCc@s d„ZdS(Nc\–s'dg}hdg<}xgtt|dƒƒD]P}t|dƒdƒ}t|dƒt|dƒƒgt|ƒt|dƒ|#d<ƒn| d.ƒ| d/ƒ| d?ƒ| d@ƒt| dƒtd1dAƒ| ƒƒg} t| dƒ} xHtt|(dBƒdCƒƒD]+}*|*}|tt|d2ƒdƒd3ƒjoú|t|(dBƒdCƒj odDSnt|(|ƒ}+t|+dEƒdFƒ odGSng},g}-x¶tt|'dHƒdCƒƒD]™}.t|.dƒƒ}/t|%dIƒ|/ƒ}0|0oet|0dJƒ||$ƒo&t|,dƒ|/t|.dKƒfƒqÑt|-dƒ|/t|.dKƒfƒq8q8Wxß t|,ƒD]Í tƒ\}.}1|.t|dBƒdCƒj o’t|dLƒ|.|.ƒdM}2dM}3dN}4tt||.ƒdOƒdP|2dQƒtt||.ƒdOƒdR|3dQƒtt||.ƒdOƒdS|4dQƒn|.ttˆdTƒdBƒƒj o)ttttdUƒdVƒdWƒ|.ƒndX}5tttttd!ƒd"ƒ|.ƒdEƒdYƒoŠtttttd!ƒd"ƒ|.ƒdYƒtttttd!ƒdZƒdYƒdBƒƒjo.tttttd!ƒd"ƒ|.ƒdYƒ}5q±nd[|5}6|.}tttd!ƒd"ƒ}7tttd!ƒd#ƒ}(|t|7dBƒdCƒj od\Snt|7|ƒ}0t|0dEƒdFƒ od]SntttdƒdIƒ|ƒ}8t|8d^ƒttdƒƒ}9d_d`g}:g},g}-x«tt|(dHƒdCƒƒD]Ž}1t|1dƒƒ|:j ont|1dƒƒ|9jo#t|,dƒt|1dƒƒƒqB t|-dƒt|1dƒƒt|1dKƒfƒq´q´Wda};db}<xmtt|dƒƒD]V}t|dƒdƒ}t|dƒ}=t|d ƒ}>|=|,jo|>};|=}<qh qh W| dcƒdd}?|;ddjp |;dejo da}?ndf}@| dg|@|;fƒ| dh|?di|.djƒ| dkƒ| dl|;dmƒ| dn|6doƒ| dkƒtt||.ƒdPƒ}2|2dMjp |2d1jo dp}An|2}Att||.ƒdRƒ}3|3dMjp |3d1jo(tttˆdTƒ|.ƒdqƒƒ}Bn|3}Bd1}Ctˆdrƒ}Dtˆdsƒ|.jp|ƒo2dt|!du|dv|.dw|3dx|2dy}Cn| dzƒ| d{ƒ| d|ƒ| d}|Bd~|Adƒ| d€|Cdƒ| d‚ƒ| dƒƒ| d„ƒd…}Ehd†d‡<dˆd‰<dŠd‹<dŒd<dŽd<dNd…<dd‘<d’d“<d”d•<d–d—<d˜d™<dšd›<}Ftt||.ƒdSƒ}4t|Fdƒ|4ƒot|F|4ƒ}En| dœƒ| d|!dž|EdŸƒ| d„ƒd1}Gtˆdsƒ|.jp|ƒo6d |!d¡t|dƒƒdv|.d¢|4dm}Gn| dœƒ| d:|G|4d£ƒ| d„ƒ| d¤ƒ| d¥ƒ| d¦ƒ| d§ƒ| d¨ƒtˆdsƒ|.jo|ƒp|ƒo:| d©|!dªt|dƒƒdv|.d,|!d«ƒn| d.ƒ| d¬ƒ| d­ƒ| dkƒ| d®ƒtt||.ƒdHƒƒ}Ht|Hd¯ƒƒxôt|HƒD]æ}It|Idƒƒ}Jd }K|d=jo$t|Id°ƒd±jo tL}Kqn|Kot|Idƒƒ}Jt|Id°ƒ}Mt|Id²ƒ}Nt|Id³ƒ} d1}Od´}Pd}1t|Idµƒ}QtR|Qƒ}StL}Tx^t|QƒD]P}U|1|Sd jo d1}Pn|O|U|P}O|Ud1jo d }Tn|1d }1qW|T o d¶}Ont|dƒd·jod¸}Vd¹}Wn dº}Vd»}W| dcƒ| d¼|Vd½ƒ|ƒoG| d¾|!d¿|dÀ|Jdv|.dÁt|IdKƒdÂ|!dÃn| d¦ƒ| dÄt|IdKƒdƒ| dŃtˆdsƒ|.jo|p|ƒoG| dÆ|!dÇ|dÀ|Jdv|.dÁt|IdKƒd,|!dȃn| dɃ| dʃ| d˃| d̃| d̓| d΃d}x™|dÏjo‹dÐ}X|| jo dÑ}Xn| dÒ|Xdmƒ| dÓ|!dÔ|dÕt|ƒdÀ|JdÖ|dv|.d×t|ƒd؃|dÙ}qüW| dÚƒt||Nƒ}Ydd}Z|Md±jodd}Yda}ZdÛ}Nn| dÜ|YdÝ|ZdÞ|Ndƒ| d@ƒ| d¥ƒ| d߃|ƒoF| dà|!dá|dÀ|Jdv|.dâ|Ndã|Md,|!däƒn| dåƒ| dæƒ| dç|Wdèƒ| dé|Odêƒ| dëƒtˆdsƒ|.jo|p|ƒo>| dì|!dí|dÀ|Jdv|.dî|Od,|!dïƒn| d¦ƒ| d@ƒq@q@Wt|dƒ|<ƒo/tt||<ƒdƒtd1dAƒ| ƒƒn,tt|dƒdƒtd1dAƒ| ƒƒg} t| dƒ} qâWqŒqŒWx?t|ƒD]1}[t| dƒtd1dAƒt||[ƒƒƒqÈWt| dƒdðƒtd1dAƒ| ƒSdS(ñNs sansgroupes coul_groupesssplits:=:sappendiis prioritesisdroit_vue_dossiers.Vous n'avez pas les droits pour cette action !s fixe_tachess evaluateurss commentateurscs"dtˆdƒjodSndS(Ns config_zwooks user_roles_idi(s _getitem_smem(s _getitem_smem(smem(sScript (Python)sis_conf0scs"dtˆdƒjodSndS(NsManagers user_roles_idi(s _getitem_smem(s _getitem_smem(smem(sScript (Python)s is_manager3sc sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s fixe_tachessel(s _getitem_smems _getiter_s _getattr_s fixe_tachessel(smems fixe_taches(sScript (Python)scan_fixe_tache6s c sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s evaluateurssel(s _getitem_smems _getiter_s _getattr_s evaluateurssel(smems evaluateurs(sScript (Python)s can_evalue<s c sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s commentateurssel(s _getitem_smems _getiter_s _getattr_s commentateurssel(smems commentateurs(sScript (Python)s can_commenteBs sgetIdsREQUESTsformsnormalshas_keysmodesprogestss /images/eye16.png" border="0" />szwooks acl_userss getUserNamesszwo_infosuserssgroupssý ssgroupes,s + s? ssjoins objectIdssFolderserreur : groupe absent !s hasPropertysoks'erreur : groupe mal configurée not OK !s objectValuessgetUsershas_rolestitlesmanage_addFoldersaucuns intéressésmanage_addPropertysalternative_liensstringsalternative_urls sentimentsrep_objszwo_bosedits insertpageoks0.gifsavatarsimagesszwo_info/images/avatar/serreur : user absent !s%erreur : user mal configurée not OK !sgetRolesInContexts Anonymouss Authenticatedswhites autrechoses sblacksblues%s% s ' print '     ' print '
Projet: s]
s titre_projets
sG
ss
sC
su
s
st
 s4 s]
se sstermsZ s
s2
s
s
sc
s Mon projets absolute_urls user_zw_objsuser_idsG [E]s
ss s‹ s s lg_interesses passionnés lg_passionnes galvanisés lg_galvanises déterminés lg_determinesefficaces lg_efficacesmotivés lg_motivesfatigués lg_fatiguesperplexes lg_perplexes désemparés lg_desempares surchargés lg_surchargesdéprimés lg_deprimesatterrés lg_atterres sreversesfinisonspriorites realisations
s commentaires sGestion de projetstâches CommentairesObjectifsActivités[ s sss sH
s s s sv
qui se sent:
s
ss
sMsY
sR
ss
s
s :si sk s2 s
s
Progression:shids#CCCCCCslimesDi ssterminés7ssasjs7
s %s,sy
s
s: ssN
s
(\s list_couls dico_groupes _getiter_s _getattr_sinstancesiszs _getitem_s_write_szwischensprsaff_pars realisationspriorite_colorselslisnomscolsmems fixe_tachess evaluateurss commentateurssis_confs is_managerscan_fixe_taches can_evalues can_commentesinstidscontextsformsmodesstrsaffsmodnamesimg_onsimg_offsrepbasesrepaclslisu2slisuslisgsgroupe_de_projetskksgroupslist1slist2sasaidsusersbsalternative_liensalternative_urls sentiments user_avatarsavatarslissuserzopes listrolessnomodifpossiblescouleurscoul1sprem_elsdeux_els font_couleurspourcents affiche_liensadressesedsusrs sentimagesdico_sentimentsedit_sentimentsmodlismodsmodidsafmodsNonesfinispriorites commentairessepsnoteslislenslenotessisnotesnotesetiquette_tachesetiquette_commentairescolorscouleur_priorites couleur_fontscoul(\smemsinstances list_couls dico_groupes _getiter_s _getattr_siszs _getitem_s_write_szwischensprsaff_pars realisationspriorite_colorselslisnomscols fixe_tachess evaluateurss commentateurssis_confs is_managerscan_fixe_taches can_evalues can_commentesinstidscontextsformsmodesstrsaffsmodnamesimg_onsimg_offsrepbasesrepaclslisu2slisuslisgsgroupe_de_projetskksgroupslist1slist2sasaidsusersbsalternative_liensalternative_urls sentiments user_avatarsavatarslissuserzopes listrolessnomodifpossiblescouleurscoul1sprem_elsdeux_els font_couleurspourcents affiche_liensadressesedsusrs sentimagesdico_sentimentsedit_sentimentsmodlismodsmodidsafmodsNonesfinispriorites commentairessepsnoteslislenslenotessisnotesnotesetiquette_tachesetiquette_commentairescolorscouleur_priorites couleur_fontscoul((smems evaluateurss fixe_tachess commentateurssScript (Python)s view_htmls6      !  C   %            % &'   "" , %X2  #3      (2      r   6       ':        $     G  $G         N   "    F   $> /% /(s view_html(s view_html((sScript (Python)ssqU func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfq Uscriptq!usbU_dav_writelocksq"(U @›q#(U Persistenceq$UPersistentMappingq%tq&tq'QU__ac_local_roles__q(}q)Uxavq*]q+UOwnerq,asUidq-U view_htmlq.U_paramsq/U mem,instanceq0U func_codeq1(cShared.DC.Scripts.Signature FuncCode q2oq3}q4(U co_argcountq5KU co_varnamesq6(Umemq7Uinstanceq8U list_coulq9U dico_groupeq:U _getiter_q;U _getattr_qUzwischenq?Uprq@Uaff_parqAU realisationqBUpriorite_colorqCUelqDUliqEUnomqFUcolqGU fixe_tachesqHU evaluateursqIU commentateursqJUis_confqKU is_managerqLUcan_fixe_tacheqMU can_evalueqNU can_commenteqOUinstidqPUcontextqQUformqRUmodeqSUstrqTUaffqUUmodnameqVUimg_onqWUimg_offqXUrepbaseqYUrepaclqZUlisu2q[Ulisuq\Ulisgq]Ugroupe_de_projetq^Ukkq_Ugroupq`Ulist1qaUlist2qbUaUaidqcUuserqdUbUalternative_lienqeUalternative_urlqfU sentimentqgU user_avatarqhUavatarqiUlisqjUuserzopeqkU listrolesqlUnomodifpossibleqmUcouleurqnUcoul1qoUprem_elqpUdeux_elqqU font_couleurqrUpourcentqsU affiche_lienqtUadressequUedqvUusrqwU sentimageqxUdico_sentimentqyUedit_sentimentqzUmodliq{Umodq|Umodidq}Uafmodq~UNoneqUfiniq€UprioriteqU commentaireq‚UsepqƒUnotesliq„Ulenq…Ulenotesq†Uisnoteq‡UnoteqˆUetiquette_tacheq‰Uetiquette_commentaireqŠUcolorq‹Ucouleur_prioriteqŒU couleur_fontqUcoulqŽtqubu. =ä((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tšdef doublereplace(chaine,init,clos,txtav,txtap): a=string.split(chaine,init) result=a[0] if len(a)>1: for i in range(len(a)-1): j=i+1 if string.find(a[j],clos)<>-1: b=string.split(a[j],clos,1) result=result+txtav+b[0]+txtap+b[1] else: result=result+a[j] return result #context.zwo_modules.todo.manage_clone(context.zwo_modules.todo.view_html,'view_html_append') source=context.zwo_modules.todo.view_html_append.document_src() #context.zwo_modules.todo.manage_clone(context.zwo_modules.todo.view_html,'view_html_append') init=source.split('##\n') sourceinit=[] #return str(''.join(init[1:])) sourceinit.append(init[0]) sourceinit.append('##\n') sourceinit.append('aff_olpat=[]\n') sourceinit.append(''.join(init[1:])) source=''.join(sourceinit) while string.find(source,'printed'): string.replace(source,'printed','\'\'.join(aff_olpat)') fin='' deb='' for i in ' ': deb=deb+i for j in ' ': fin=fin+j rdeb='print'+deb rfin='\n' nouveau=doublereplace(source,'print','\n',"aff_olpat.append(",")\n") context.zwo_modules.todo.view_html_append.write(nouveau) return 'fini' q Uidq U remplacementq U_codeqTc@s d„ZdS(NcCs¿d„}tttttdƒdƒdƒdƒƒ}t|dƒdƒ}g}t|dƒt|d ƒƒt|dƒdƒt|dƒd ƒt|dƒtd d ƒt|d d…ƒƒƒtd d ƒ|ƒ}x7ttdƒ|dƒottdƒ|ddƒqÜWd }d } xOt dƒD]A} | | } x.t dƒD] } || }d| } d}qIWq,W||ddddƒ}tttttdƒdƒdƒdƒ|ƒdSdS(Nc Csttdƒ||ƒ}t|dƒ} t|ƒdjoÁx¾tt t|ƒdƒƒD]œ} | d}ttdƒt||ƒ|ƒd joPttdƒt||ƒ|dƒ}| |t|dƒ|t|dƒ} qW| t||ƒ} qWWn| SdS(Nssplitiisfind(s _getattr_sstringschainesinitsas _getitem_sresultslens _getiter_srangesisjsclossbstxtavstxtap(schainesinitsclosstxtavstxtaps _getattr_sstringsas _getitem_sresultslens _getiter_srangesisjsb((sScript (Python)s doublereplaces )$,s zwo_modulesstodosview_html_appends document_srcssplits## sappendis aff_olpat=[] ssjoinisfindsprintedsreplaces''.join(aff_olpat)s sprints saff_olpat.append(s) swritesfini(s doublereplaces _getattr_scontextssourcesinits sourceinits _getitem_sstringsfinsdebs _getiter_sisjsrdebsrfinsnouveau(s doublereplaces _getattr_scontextssourcesinits sourceinits _getitem_sstringsfinsdebs _getiter_sisjsrdebsrfinsnouveau((sScript (Python)s remplacements0 - .     $"(s remplacement(s remplacement((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @¶q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Uolpatq']q(UOwnerq)asU _filepathq*U6Script (Python):/phil/zwo_modules/progest/remplacementq+U_paramsq,UU func_codeq-(cShared.DC.Scripts.Signature FuncCode q.oq/}q0(U co_argcountq1KU co_varnamesq2(U doublereplaceq3U _getattr_q4Ucontextq5Usourceq6Uinitq7U sourceinitq8U _getitem_q9Ustringq:Ufinq;UdebqUrfinq?Unouveauq@tqAubu. =Ô"Ê((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tû# RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() # EXEMPLE FORMULAIRE EDITION print '
' # Personalisation Formulaire #print '

Propriété :

' #Début Progest print '''

Paramétrage du module Progest

Ce module sert à gérer la conduite de projets pédagogiques.

' print ' ' ##print''' ## ## ## ''' print'''
Intitulé du projet: ''' print ''' '''%instance.titre_projet print '''
Groupe des élèves qui participent au projet: ''' print ''' '''%instance.groupe print '''
Groupes pouvant fixer les tâches: (1) ''' print ' '%instance.fixe_taches print '
Groupes ## pouvant modifier la barre de progression:(1)''' ##print ' '%instance.progress ##print '''
Groupes pouvant commenter les tâches: ''' print ' '%instance.commentateurs print '''
Groupes pouvant évaluer les tâches: ''' print ' '%instance.evaluateurs print '''

 

(1) Noms de groupes séparés par des virgules : exemple : Anonymous,skin_editor,mongroupe

Liste des groupes:

''' #Fin Progest for gr in mem['zwo_obj'].zwo_info.groups.objectIds('Folder'): print '
  • '+gr+'
  • ' print '' # Fin Formulaire print '' print '' print '' print '' print '' print '
    ' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMDAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' return printed q Uidq U config_htmlq U_codeqT}c@s d„ZdS(Nc ECsÍtƒ}ttdƒƒ}|d|dIJ|dIJ|dt|dƒIJ|dIJ|dt|d ƒIJ|d IJ|d t|d ƒIJ|d IJ|dIJ|dIJ|dt|dƒIJ|dIJ|dt|dƒIJ|dIJxZttttt|dƒdƒdƒdƒdƒƒD]"} |d| dIJ|dIJq'W|dIJ|dIJ|d t|d!ƒd"IJ|d#t|dƒƒd"IJ|d$t|dƒƒd"IJ|d%IJ|ƒSdS(&NsgetIds(
    sa

    Paramétrage du module Progest

    Ce module sert à gérer la conduite de projets pédagogiques.

    s sç
    Intitulé du projet: s6 s titre_projets]
    Groupe des élèves qui participent au projet: s0 sgroupes/
    Groupes pouvant fixer les tâches: (1) s4 s fixe_tachess
    Groupes pouvant commenter les tâches: s6 s commentateurss 
    Groupes pouvant évaluer les tâches: s5 s evaluateurssG

     

    (1) Noms de groupes séparés par des virgules : exemple : Anonymous,skin_editor,mongroupe

    Liste des groupes:

    szwo_objszwo_infosgroupss objectIdssFolders
  • s
  • ss(s.s,s+tq?ubu. =Õ#4((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÉ# typemod est l'id du module et namemod est son title typemod=container.getId() namemod=container.title_or_id() # proposition de nom pour l'element exemple_titre_base=namemod exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) # debut formulaire HTML simple de création d'element print '' print '' print '

    Identifiant :

    ' # partie specifique à ce module #print '

    EXEMPLE

    ' #Début Progest print '''

    Paramétrage du module Progest

    Ce module sert à gérer la conduite de projets pédagogiques.

    ''' #supprimé le groupe progress ## ## ## ## print'''
    Intitulé du projet:
    Groupe des élèves qui participent au projet:
    Groupes pouvant fixer les tâches : (1)
    Groupes ## pouvant modifier la barre de progression:(1) ## ##
    Groupes pouvant commenter les tâches:
    Groupes pouvant évaluer les tâches:

     

    (1) Noms de groupes séparés par des virgules : exemple : Anonymous,skin_editor,mongroupe

    Liste des groupes:

    ''' #Fin Progest for gr in mem['zwo_obj'].zwo_info.groups.objectIds('Folder'): print '
  • '+gr+'
  • ' print '' # suite standard print '

    ' if dossier.type_zwook=="skin": print '' else: print '' print '' print '' print '
    ' return printed q Uidq Unew_htmlq U_codeqTëc@s d„ZdS(Nc,CsŽtƒ}ttdƒƒ}ttdƒƒ}|}|} d} x8| t|dƒƒjo| d} |t | ƒ} qBW|d|dIJ|dIJ|d | d IJ|d IJ|d IJxZt tttt |d ƒdƒdƒdƒdƒƒD]"}|d|dIJ|dIJqóW|dIJt|dƒdjo|dIJn |dIJ|dIJ|dt|dƒƒdIJ|dIJ|ƒSdS(NsgetIds title_or_idis objectIdsis(
    ssB

    Identifiant :

    s§

    Paramétrage du module Progest

    Ce module sert à gérer la conduite de projets pédagogiques.

    s¿
    Intitulé du projet:
    Groupe des élèves qui participent au projet:
    Groupes pouvant fixer les tâches : (1)
    Groupes pouvant commenter les tâches:
    Groupes pouvant évaluer les tâches:

     

    (1) Noms de groupes séparés par des virgules : exemple : Anonymous,skin_editor,mongroupe

    Liste des groupes:

    szwo_objszwo_infosgroupssFolders
  • s
  • ss6

    s type_zwooksskins.s1s.s's
    (s_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstrs _getiter_s _getitem_smemsgr(smemsdossiers_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstrs _getiter_s _getitem_sgr((sScript (Python)snew_htmls4    # 7    (snew_html(snew_html((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Umemq%Udossierq&U_print_q'U_printq(U _getattr_q)U containerq*Utypemodq+Unamemodq,Uexemple_titre_baseq-U exemple_titreq.Uindiceq/Ustrq0U _getiter_q1U _getitem_q2Ugrq3tq4ubU__ac_local_roles__q5}q6Uxavq7]q8UOwnerq9asU _filepathq:U2Script (Python):/phil/zwo_modules/progest/new_htmlq;U_paramsq(U @q?(U Persistenceq@UPersistentMappingqAtqBtqCQu. =Ö ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T9mem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] modname='modules_manager' ###~ ######### security checks ######### ##def can_edit(): ## if mem['droit_edit_dossier']==1: ## return 1 ## for el in instance.groups_admin: ## if el in mem['user_roles_id']: ## return 1 ## ##if not can_edit(): return 'Operation not permited' #mod.manage_changeProperties(tache=str(note.strip()) obj=instance[mod] obj.manage_changeProperties(priorite=priorite) obj.manage_changeProperties(fini=fini) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q Uidq Uedit_priorite_okq U_codeqTdc@sdd„ZdS(Nsoffc Cs¯tttdƒdƒƒ}ttt|dƒ|ƒ|ƒ} d} t| |ƒ} t| dƒd|ƒt| dƒd|ƒttttdƒd ƒd ƒt|d ƒƒdS( Nszwo_libs mem_mod_datasrep_objsmodules_managersmanage_changePropertiessprioritesfinisREQUESTsRESPONSEsredirectsrep_url( s _getattr_scontextsmems _getitem_sinstidsmembresinstancesmodnamesmodsobjsprioritesfini( sinstidsmodsprioritesmembresfinis _getattr_scontextsmems _getitem_sinstancesmodnamesobj((sScript (Python)sedit_priorite_oks ! (sedit_priorite_ok(sedit_priorite_ok((sScript (Python)ssqU func_defaultsq(UoffqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerq usbU func_codeq!(cShared.DC.Scripts.Signature FuncCode q"oq#}q$(U co_argcountq%KU co_varnamesq&(Uinstidq'Umodq(Uprioriteq)Umembreq*Ufiniq+U _getattr_q,Ucontextq-Umemq.U _getitem_q/Uinstanceq0Umodnameq1Uobjq2tq3ubU__ac_local_roles__q4}q5Up4q6]q7UOwnerq8asU _filepathq9U:Script (Python):/phil/zwo_modules/progest/edit_priorite_okq:U_paramsq;U%instid,mod,priorite,membre,fini='off'q(U Persistenceq?UPersistentMappingq@tqAtqBQu. =Øó((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T€mem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid] modname='progest' ###~ ######### security checks ######### ##def can_edit(): ## if mem['droit_edit_dossier']==1: ## return 1 ## for el in instance.groups_admin: ## if el in mem['user_roles_id']: ## return 1 ## ##if not can_edit(): return 'Operation not permited' #def add_item(tache,classe,realisation,notes,fini,priorite): def add_item(tache,realisation,commentaire,fini,priorite): timegmt=str(DateTime('GMT+2').timeTime()) instance[membre].manage_addFolder(timegmt,tache) obj=instance[membre][timegmt] ## obj.manage_addProperty('classe',classe,'string') # obj.manage_addProperty('titre',titre,'string') obj.manage_addProperty('commentaire',commentaire,'lines') obj.manage_addProperty('realisation',int(realisation),'int') obj.manage_addProperty('fini',fini,'string') obj.manage_addProperty('priorite',priorite,'string') return 1 #if add_item(titre,classe,realisation,notes,fini,priorite): if add_item(tache,realisation,commentaire,fini,priorite): return context.REQUEST.RESPONSE.redirect(mem['rep_url']) else: return 'Problem adding item' q Uidq Uadd_todo_item_okq U_codeqT·c@sdd„ZdS(Nsoffc s›tttdƒdƒƒ} tt| dƒ|ƒ‰d} ‡‡d†} | |||||ƒo2ttttdƒdƒdƒt| d ƒƒSnd SdS( Nszwo_libs mem_mod_datasrep_objsprogestcsÇtttdƒdƒƒƒ}ttˆˆƒdƒ||ƒttˆˆƒ|ƒ} t| dƒd|dƒt| dƒdt |ƒdƒt| dƒd |d ƒt| dƒd |d ƒd SdS( NsGMT+2stimeTimesmanage_addFoldersmanage_addPropertys commentairesliness realisationsintsfinisstringsprioritei(sstrs _getattr_sDateTimestimegmts _getitem_sinstancesmembrestachesobjs commentairesints realisationsfinispriorite(staches realisations commentairesfinisprioritesstrs _getattr_sDateTimestimegmts _getitem_sinstancesmembresobjsint(sinstancesmembre(sScript (Python)sadd_items$sREQUESTsRESPONSEsredirectsrep_urlsProblem adding item( s _getattr_scontextsmems _getitem_sinstidsinstancesmodnamesadd_itemstaches realisations commentairesfinispriorite(sinstidstachesmembres realisations commentairesprioritesfinis _getattr_scontextsmems _getitem_sinstancesmodnamesadd_item((smembresinstancesScript (Python)sadd_todo_item_oks  2(sadd_todo_item_ok(sadd_todo_item_ok((sScript (Python)ssqU func_defaultsq(UoffqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq usbU func_codeq!(cShared.DC.Scripts.Signature FuncCode q"oq#}q$(U co_argcountq%KU co_varnamesq&(Uinstidq'Utacheq(Umembreq)U realisationq*U commentaireq+Uprioriteq,Ufiniq-U _getattr_q.Ucontextq/Umemq0U _getitem_q1Uinstanceq2Umodnameq3Uadd_itemq4tq5ubU__ac_local_roles__q6}q7Up4q8]q9UOwnerq:asU _filepathq;U:Script (Python):/phil/zwo_modules/progest/add_todo_item_okqU_dav_writelocksq?(U @Ÿq@(U PersistenceqAUPersistentMappingqBtqCtqDQu. =Ù ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T!mem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] ###~ ######### security checks ######### ##def can_edit(): ## if mem['droit_edit_dossier']==1: ## return 1 ## for el in instance.groups_admin: ## if el in mem['user_roles_id']: ## return 1 ##if not can_edit(): return "Operation not permited" print context.zwo_lib.standard_html_header(mem) print '
    ' print '

    Priorité :

    ' print '' #print '' print '' print '

    ' print '
    ' print context.zwo_lib.standard_html_footer(mem) return printed q U _filepathq U8Script (Python):/phil/zwo_modules/progest/edit_sentimentq U_codeqTŽc@s d„ZdS(Nc #Csltƒ}tttdƒdƒƒ}ttt|dƒ|ƒ|ƒ} |tttdƒdƒ|ƒIJ|dIJ|dIJxt t| dƒƒD]h} tt| dƒd ƒd ƒ} | |j o|d | | fIJn|d ||fIJ|d IJq‘W|dIJ|d|dIJ|d|dIJ|dIJ|dIJ|tttdƒdƒ|ƒIJ|ƒSdS(Nszwo_libs mem_mod_datasrep_objsstandard_html_headers/
    s(

    Priorité :

    s*s*

    s
    sstandard_html_footer( s_print_s_prints _getattr_scontextsmems _getitem_sinstidsmembresinstances _getiter_sprsops sentiment( sinstidsmembres sentiments_print_s_prints _getattr_scontextsmems _getitem_sinstances _getiter_sprsop((sScript (Python)sedit_sentiments$$! "     "(sedit_sentiment(sedit_sentiment((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @ q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Up4q']q(UOwnerq)asUidq*Uedit_sentimentq+U_paramsq,Uinstid,membre,sentimentq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Uinstidq4Umembreq5U sentimentq6U_print_q7U_printq8U _getattr_q9Ucontextq:Umemq;U _getitem_qUprq?Uopq@tqAubu. =Ú ‘((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tmem=context.zwo_lib.mem_data() modname='todo' instance=mem['rep_obj'][instid] #~ ######### security checks ######### if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' evaluateurs=instance.evaluateurs def can_evalue(): if mem['droit_edit_dossier']==1: return 1 for el in evaluateurs.split(','): if el in mem['user_roles_id']: return 1 if not can_evalue(): return 'Vous n\'avez pas les droits pour cette opération.' instance.manage_changeProperties(titre_projet=titre) instance.manage_changeProperties(priorites=priorites) instance.manage_changeProperties(coul_groupes=coul_groupes) instance.manage_changeProperties(sentiments=sentiments) instance.manage_changeProperties(mode=mode) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q Uidq U options_okq U_codeqT°c@s d„ZdS(Ncs(tttdƒdƒƒ‰d} ttˆdƒ|ƒ} tˆdƒdjodSnt| dƒ‰‡‡d †} | ƒ od Snt| d ƒd |ƒt| d ƒd |ƒt| d ƒd|ƒt| d ƒd|ƒt| d ƒd|ƒttttdƒdƒdƒtˆdƒƒdS(Nszwo_libsmem_datastodosrep_objsdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !s evaluateursc sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s evaluateurssel(s _getitem_smems _getiter_s _getattr_s evaluateurssel(smems evaluateurs(sScript (Python)s can_evalue s s0Vous n'avez pas les droits pour cette opération.smanage_changePropertiess titre_projets prioritess coul_groupess sentimentssmodesREQUESTsRESPONSEsredirectsrep_url(s _getattr_scontextsmemsmodnames _getitem_sinstidsinstances evaluateurss can_evaluestitres prioritess coul_groupess sentimentssmode(sinstidstitres prioritess coul_groupess sentimentssmodes _getattr_scontextsmemsmodnames _getitem_sinstances evaluateurss can_evalue((smems evaluateurssScript (Python)s options_oks(s options_ok(s options_ok((sScript (Python)ssqU func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerq U containerq!usbU func_codeq"(cShared.DC.Scripts.Signature FuncCode q#oq$}q%(U co_argcountq&KU co_varnamesq'(Uinstidq(Utitreq)U prioritesq*U coul_groupesq+U sentimentsq,Umodeq-U _getattr_q.Ucontextq/Umemq0Umodnameq1U _getitem_q2Uinstanceq3U evaluateursq4U can_evalueq5tq6ubU__ac_local_roles__q7}q8Ugregq9]q:UOwnerq;asU _filepathqU3instid,titre,priorites,coul_groupes,sentiments,modeq?U_dav_writelocksq@(U @¡qA(U PersistenceqBUPersistentMappingqCtqDtqEQu. =Ûm((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tœmem=context.zwo_lib.mem_data() modname='progest' instance=mem['rep_obj'][instid] ###~ ######### security checks ######### ##def can_edit(): ## if mem['droit_edit_dossier']==1: ## return 1 ## for el in instance.groups_admin: ## if el in mem['user_roles_id']: ## return 1 ## ##if not can_edit(): return 'Operation not permited' print mem['zwo_obj'].zwo_lib.standard_html_header(mem) #print '

    Add todo item

    ' print '
    ' print '

    Tâche :

    ' # print '

    Classe : ' print '

    Priorité :

    ' ##print '

    ' ##print 'Terminé

    ' ##print '

    Pourcentage de réalisation : ' ##print ' %

    ' ##print '

    Commentaire:

    ' print '

    ' print '

    ' print '' print '' print '' print '' print '

    ' print mem['zwo_obj'].zwo_lib.standard_html_footer(mem) return printed q Uidq U add_todo_itemq U_codeqTpc@s d„ZdS(Nc 0Csytƒ}tttdƒdƒƒ}d}tt|dƒ|ƒ} |ttt|dƒdƒdƒ|ƒIJ|dIJ|dIJ|d IJxUt t| d ƒƒD]>} tt| d ƒd ƒd ƒ} |d| d| dIJq¡W|dIJ|dIJ|d|dIJ|d|dIJ|dIJ|dIJ|dIJ|dIJ|ttt|dƒdƒdƒ|ƒIJ|ƒSdS(Nszwo_libsmem_datasprogestsrep_objszwo_objsstandard_html_headers.
    s@

    Tâche :

    s&

    Priorité :

    s.

    s.

    s*s4s3s

    sstandard_html_footer( s_print_s_prints _getattr_scontextsmemsmodnames _getitem_sinstidsinstances _getiter_sprsopsmembre( sinstidsmembres_print_s_prints _getattr_scontextsmemsmodnames _getitem_sinstances _getiter_sprsop((sScript (Python)s add_todo_items($ +         +(s add_todo_item(s add_todo_item((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Uinstidq%Umembreq&U_print_q'U_printq(U _getattr_q)Ucontextq*Umemq+Umodnameq,U _getitem_q-Uinstanceq.U _getiter_q/Uprq0Uopq1tq2ubU__ac_local_roles__q3}q4Up4q5]q6UOwnerq7asU _filepathq8U7Script (Python):/phil/zwo_modules/progest/add_todo_itemq9U_paramsq:U instid,membreq;U_dav_writelocksq<(U @¢q=(U Persistenceq>UPersistentMappingq?tq@tqAQu. =Ü £((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T`mem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] #mod=instance[mod] modname='modules_manager' #~ ######### security checks ######### if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' fixe_taches=instance.fixe_taches def can_fixe_tache(): if mem['droit_edit_dossier']==1: return 1 for el in fixe_taches.split(','): if el in mem['user_roles_id']: return 1 #mod.manage_changeProperties(tache=str(note.strip())) obj=instance[mod] obj.manage_changeProperties(title=tache) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q Uidq U edit_tache_okq U_codeqTÎc@s d„ZdS(Nc sÕtttdƒdƒƒ‰tttˆdƒ|ƒ|ƒ}d} tˆdƒdjodSnt|dƒ‰‡‡d †} t||ƒ} t| d ƒd |ƒttttd ƒd ƒdƒtˆdƒƒdS(Nszwo_libs mem_mod_datasrep_objsmodules_managersdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !s fixe_tachesc sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s fixe_tachessel(s _getitem_smems _getiter_s _getattr_s fixe_tachessel(smems fixe_taches(sScript (Python)scan_fixe_tache s smanage_changePropertiesstitlesREQUESTsRESPONSEsredirectsrep_url( s _getattr_scontextsmems _getitem_sinstidsmembresinstancesmodnames fixe_tachesscan_fixe_tachesmodsobjstache( sinstidsmodstachesmembres _getattr_scontextsmems _getitem_sinstancesmodnames fixe_tachesscan_fixe_tachesobj((smems fixe_tachessScript (Python)s edit_tache_oks!(s edit_tache_ok(s edit_tache_ok((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Uinstidq%Umodq&Utacheq'Umembreq(U _getattr_q)Ucontextq*Umemq+U _getitem_q,Uinstanceq-Umodnameq.U fixe_tachesq/Ucan_fixe_tacheq0Uobjq1tq2ubU__ac_local_roles__q3}q4Up4q5]q6UOwnerq7asU _filepathq8U7Script (Python):/phil/zwo_modules/progest/edit_tache_okq9U_paramsq:Uinstid,mod,tache,membreq;U_dav_writelocksq<(U @£q=(U Persistenceq>UPersistentMappingq?tq@tqAQu. =Ñ «((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] #mod=instance[mod] modname='modules_manager' fixe_taches=instance.fixe_taches #~ ######### security checks ######### def can_fixe_tache(): if mem['droit_edit_dossier']==1: return 1 for el in fixe_taches.split(','): if el in mem['user_roles_id']: return 1 if not can_fixe_tache(): return 'Operation non autorisée' #obj=instance[mod] instance.manage_delObjects(mod) context.REQUEST.RESPONSE.redirect(mem['rep_url']) q Uidq Usupprime_tacheq U_codeqTJc@s d„ZdS(Nc s¸tttdƒdƒƒ‰tttˆdƒ|ƒ|ƒ}d}t|dƒ‰‡‡d†} | ƒ odSnt|dƒ|ƒttttd ƒd ƒd ƒtˆd ƒƒdS( Nszwo_libs mem_mod_datasrep_objsmodules_managers fixe_tachesc sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s fixe_tachessel(s _getitem_smems _getiter_s _getattr_s fixe_tachessel(smems fixe_taches(sScript (Python)scan_fixe_tache s sOperation non autoriséesmanage_delObjectssREQUESTsRESPONSEsredirectsrep_url( s _getattr_scontextsmems _getitem_sinstidsmembresinstancesmodnames fixe_tachesscan_fixe_tachesmod( sinstidsmodsmembres _getattr_scontextsmems _getitem_sinstancesmodnames fixe_tachesscan_fixe_tache((smems fixe_tachessScript (Python)ssupprime_taches!(ssupprime_tache(ssupprime_tache((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode q oq!}q"(U co_argcountq#KU co_varnamesq$(Uinstidq%Umodq&Umembreq'U _getattr_q(Ucontextq)Umemq*U _getitem_q+Uinstanceq,Umodnameq-U fixe_tachesq.Ucan_fixe_tacheq/tq0ubU__ac_local_roles__q1}q2Up4q3]q4UOwnerq5asU _filepathq6U8Script (Python):/phil/zwo_modules/progest/supprime_tacheq7U_paramsq8Uinstid,mod,membreq9U_dav_writelocksq:(U @™q;(U Persistenceqtq?Qu. =àÃ((U OFS.FolderqUFolderqtqNt.}q(Ulg_perplexe.pngq(U @±q(U OFS.ImageqUImageqtq tq QUlg_surcharge.pngq (U @§q (hUImageq tqtqQUlg_atterre.pngq(U @°q(hUImageqtqtqQUtitleqUUlg_efficace.pngq(U @©q(hUImageqtqtqQUlg_passionne.pngq(U @ªq(hUImageqtqtqQUlg_determine.pngq (U @«q!(hUImageq"tq#tq$QUidq%Uguyq&Ulg_deprime.pngq'(U @®q((hUImageq)tq*tq+QU lg_motive.pngq,(U @¬q-(hUImageq.tq/tq0QUlg_desempare.pngq1(U @­q2(hUImageq3tq4tq5QU_objectsq6(}q7(U meta_typeq8UImageq9h%Ulg_passionne.pngq:u}q;(h8h9h%Ulg_galvanise.pngq(h8h9h%hu}q?(h8h9h%h,u}q@(h8h9h%hu}qA(h8h9h%h1u}qB(h8h9h%h'u}qC(h8h9h%hu}qD(h8h9h%h u}qE(U meta_typeqFUImageqGUidqHUlg_interesse.pngqIu}qJ(hFhGhHUlg_fatigue.pngqKutqLhK(U @¯qM(hUImageqNtqOtqPQU__ac_local_roles__qQ}qRUphilqS]qTUOwnerqUash<(U @¨qV(hUImageqWtqXtqYQhI(U @²qZ(hUImageq[tq\tq]Qu. =ß~((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T£mem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] #~ ######### security checks ######### fixe_taches=instance.fixe_taches if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' def can_fixe_tache(): if mem['droit_edit_dossier']==1: return 1 for el in fixe_taches.split(','): if el in mem['user_roles_id']: return 1 print context.zwo_lib.standard_html_header(mem) ## print '
    ' print '

    Tâche

    ' print '

    ' print '' print '' print '' print '

    ' print '
    ' print context.zwo_lib.standard_html_footer(mem) return printed q U _filepathq U4Script (Python):/phil/zwo_modules/progest/edit_tacheq U_codeqTic@s d„ZdS(Nc *s@tƒ}tttdƒdƒƒ‰tttˆdƒ|ƒ|ƒ} t| dƒ‰tˆdƒdjodSn‡‡d†} |tttdƒd ƒˆƒIJ|d IJ|d IJ|d |d IJ|d|dIJ|d|dIJ|d|dIJ|dIJ|dIJ|tttdƒdƒˆƒIJ|ƒSdS(Nszwo_libs mem_mod_datasrep_objs fixe_tachessdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !c sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s fixe_tachessel(s _getitem_smems _getiter_s _getattr_s fixe_tachessel(smems fixe_taches(sScript (Python)scan_fixe_taches sstandard_html_headers+
    s

    Tâche

    s-

    s*s'

    s
    sstandard_html_footer( s_print_s_prints _getattr_scontextsmems _getitem_sinstidsmembresinstances fixe_tachesscan_fixe_tachestachesmod( sinstidsmodsmembrestaches_print_s_prints _getattr_scontextsmems _getitem_sinstances fixe_tachesscan_fixe_tache((smems fixe_tachessScript (Python)s edit_taches $!"    "(s edit_tache(s edit_tache((sScript (Python)ssqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU_dav_writelocksq(U @¦q (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Up4q']q(UOwnerq)asUidq*U edit_tacheq+U_paramsq,Uinstid,mod,membre,tacheq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Uinstidq4Umodq5Umembreq6Utacheq7U_print_q8U_printq9U _getattr_q:Ucontextq;UmemqU fixe_tachesq?Ucan_fixe_tacheq@tqAubu. =ãí((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tdmem=context.zwo_lib.mem_mod_data() instance=mem['rep_obj'][instid][membre] modname='progest' #~ ######### security checks ######### def can_edit(): if mem['droit_edit_dossier']==1: return 1 for el in instance.groups_admin: if el in mem['user_roles_id']: return 1 if not can_edit(): return 'Operation not permited' print context.zwo_lib.standard_html_header(mem) #obj=instance[mod] print '
    ' print '

    Vous pouvez modifier l\'affichage de "Mon projet" par un intitulé de votre choix:
    ' print ''%alternative_lien print '

    Si votre projet se trouve sur un autre site, entrez son adresse (URL) en commençant par: http://
    ' print '

    ' print '

    ' print '

    ' print '' print '

    ' print context.zwo_lib.standard_html_footer(mem) return printed q U _filepathq U2Script (Python):/phil/zwo_modules/progest/edit_urlq U_codeqT÷c@s d„ZdS(Nc +s2tƒ}tttdƒdƒƒ‰tttˆdƒ|ƒ|ƒ‰d} ‡‡d†} | ƒ odSn|tttdƒdƒˆƒIJ|dIJ|d IJ|d |IJ|d IJ|d |d IJ|dIJ|d|dIJ|d|dIJ|dIJ|tttdƒdƒˆƒIJ|ƒSdS(Nszwo_libs mem_mod_datasrep_objsprogestc s`tˆdƒdjodSnx;ttˆdƒƒD]$}|tˆdƒjodSq4q4WdS(Nsdroit_edit_dossieris groups_admins user_roles_id(s _getitem_smems _getiter_s _getattr_sinstancesel(s _getitem_smems _getiter_s _getattr_sinstancesel(smemsinstance(sScript (Python)scan_edits sOperation not permitedsstandard_html_headers)
    sX

    Vous pouvez modifier l'affichage de "Mon projet" par un intitulé de votre choix:
    sDsh

    Si votre projet se trouve sur un autre site, entrez son adresse (URL) en commençant par: http://
    s;

    s.

    s.

    s*sqU func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @µq (U Persistenceq!UPersistentMappingq"tq#tq$QU__ac_local_roles__q%}q&Up4q']q(UOwnerq)asUidq*Uedit_urlq+U_paramsq,U.instid,membre,alternative_url,alternative_lienq-U func_codeq.(cShared.DC.Scripts.Signature FuncCode q/oq0}q1(U co_argcountq2KU co_varnamesq3(Uinstidq4Umembreq5Ualternative_urlq6Ualternative_lienq7U_print_q8U_printq9U _getattr_q:Ucontextq;UmemqUmodnameq?Ucan_editq@tqAubu. =×—((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqUƉPNG  IHDR*º† pHYs  šœtIMEÔ  4†mÍ[eIDATxÚcüÿÿÿû5² „€`ÈcÆw«e ,ˆmLpÖû5²ï×ÈÂõàSJ° »¿X€ßT&¬žÅêbLu¸Œg"Òvœ!€Õ Ø•bµ„S®Pc!ÒH&<1‰æz‰¦(ד½-ºIEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqKÆu. =â-((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TC mem=context.zwo_lib.mem_data() modname='progest' instance=mem['rep_obj'][instid] titre=instance.titre_projet priorites=instance.priorites coul_groupes=instance.coul_groupes sentiments=instance.sentiments option_modes=instance.option_modes mode=instance.mode #~ ######### security checks ######### if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' evaluateurs=instance.evaluateurs def can_evalue(): if mem['droit_edit_dossier']==1: return 1 for el in evaluateurs.split(','): if el in mem['user_roles_id']: return 1 if not can_evalue(): return 'Vous n\'avez pas les droits pour cette opération.' print mem['zwo_obj'].zwo_lib.standard_html_header(mem) print '' print '

    Titre du projet:
    ' print '

    ' print '

    Libellés et couleurs pour indiquer le caractère prioritaire des tâches :
    ' print '

    ' print '

    Les priorités sont à définir avec une couleur d\'affichage : une par ligne sous la forme : priorité:=:code_couleur


    ' print '

    Attribution des couleurs de groupes de participants :
    ' print ' ' print '

    Libellés des sentiments éprouvés par les participants face à leur tâche :
    ' print ' ' print '

    Mode d\'utilisation du module :
    ' print '

    ' print '

    ' print '' print '' print mem['zwo_obj'].zwo_lib.standard_html_footer(mem) return printed q U _filepathq U1Script (Python):/phil/zwo_modules/progest/optionsq U_codeqTöc@s d„ZdS(NcWsàtƒ}tttdƒdƒƒ‰d}ttˆdƒ|ƒ} t| dƒ} t| dƒ} t| dƒ} t| dƒ} t| d ƒ}t| d ƒ}tˆd ƒd jod Snt| dƒ‰‡‡d†}|ƒ odSn|tttˆdƒdƒdƒˆƒIJ|dIJ|dIJ|d| dIJ|dIJ|dIJd}t| ƒd }xOt| ƒD]A}|}d}|djo d}n|||}|d }qsW||dIJ|dIJ|dIJ|dIJd}t| ƒd }xOt| ƒD]A}|}d}|djo d}n|||}|d }qW||d IJ|d!IJ|d"IJd}t| ƒd }xOt| ƒD]A}|}d}|djo d}n|||}|d }q‘W||d IJ|d#IJ|d$IJxtt| d ƒƒD]h}tt|d%ƒd&ƒdƒ}||j o|d'||fIJn|d(||fIJ|d)IJqW|d*IJ|d+IJ|d,|d-IJ|d.IJ|tttˆdƒdƒd/ƒˆƒIJ|ƒSdS(0Nszwo_libsmem_datasprogestsrep_objs titre_projets prioritess coul_groupess sentimentss option_modessmodesdroit_vue_dossieris.Vous n'avez pas les droits pour cette action !s evaluateursc sftˆdƒdjodSnxAttˆdƒdƒƒD]$}|tˆdƒjodSq:q:WdS(Nsdroit_edit_dossierissplits,s user_roles_id(s _getitem_smems _getiter_s _getattr_s evaluateurssel(s _getitem_smems _getiter_s _getattr_s evaluateurssel(smems evaluateurs(sScript (Python)s can_evalues s0Vous n'avez pas les droits pour cette opération.szwo_objsstandard_html_headers(
    s

    Titre du projet:
    s1

    sO

    Libellés et couleurs pour indiquer le caractère prioritaire des tâches :
    s.

    s™

    Les priorités sont à définir avec une couleur d'affichage : une par ligne sous la forme : priorité:=:code_couleur


    s<

    Attribution des couleurs de groupes de participants :
    s1 sP

    Libellés des sentiments éprouvés par les participants face à leur tâche :
    s/' print '' print '

    ' print '

    ' print '
    ' return printed q U_codeq Têc@sed„ZdS(NcCsztƒ}| odSn|d|dIJ|dIJ|dIJ|d|dIJ|dIJ|d IJ|d IJ|ƒSdS( NsNo user to send a message !s

    Envoyer un message à s

    s(
    s6

    s&s

    s.

    s
    (s_print_s_printsusr(susrs_print_s_print((sScript (Python)s send_PM_ins     (sNones send_PM_in(sNones send_PM_in((sScript (Python)ssq U func_defaultsq(NtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUgregq ]q!UOwnerq"asUidq#U send_PM_inq$U_paramsq%Uusr=Noneq&U func_codeq'(cShared.DC.Scripts.Signature FuncCode q(oq)}q*(U co_argcountq+KU co_varnamesq,(Uusrq-U_print_q.U_printq/tq0ubu. > b((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq THmem=context.zwo_lib.mem_data() lieu=mem['user_zw_obj'].PM if fo<>'PM': lieu=lieu[fo] deli=str(msg_id) lieu[deli].manage_changeProperties(lu=1) nlu=0 for pm in lieu.objectValues('File'): if pm.lu==0: nlu=1 if nlu<>1: mem['user_zw_obj'].manage_changeProperties(has_new_PM=0) print context.zwo_lib.standard_html_header(mem) print context.send_PM_in(usr) print '
    ' print lieu[deli] print '
    ' print '
    ' print context.zwo_lib.standard_html_footer(mem) return printed q U_codeq Tc@sdd„ZdS(NsPMc#Csœtƒ}tttdƒdƒƒ}tt|dƒdƒ} |djot| |ƒ} nt|ƒ} tt| | ƒdƒddƒd} xCt t| d ƒd ƒƒD]&}t|dƒdjo d} q©q©W| djo#tt|dƒdƒd dƒn|tttdƒd ƒ|ƒIJ|ttd ƒ|ƒIJ|dIJ|t| | ƒIJ|dIJ|dIJ|tttdƒdƒ|ƒIJ|ƒSdS(Nszwo_libsmem_datas user_zw_objsPMsmanage_changePropertiessluiis objectValuessFiles has_new_PMsstandard_html_headers send_PM_insV
    s
    s
    sstandard_html_footer(s_print_s_prints _getattr_scontextsmems _getitem_slieusfosstrsmsg_idsdelisnlus _getiter_spmsusr(susrsmsg_idsfos_print_s_prints _getattr_scontextsmems _getitem_slieusstrsdelisnlus _getiter_spm((sScript (Python)srepondres($ "   "(srepondre(srepondre((sScript (Python)ssq U func_defaultsq(UPMqtqU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfq Uscriptq!usbU__ac_local_roles__q"}q#Ugregq$]q%UOwnerq&asUidq'Urepondreq(U_paramsq)Uusr, msg_id, fo='PM'q*U func_codeq+(cShared.DC.Scripts.Signature FuncCode q,oq-}q.(U co_argcountq/KU co_varnamesq0(Uusrq1Umsg_idq2Ufoq3U_print_q4U_printq5U _getattr_q6Ucontextq7Umemq8U _getitem_q9Ulieuq:Ustrq;UdeliqUpmq?tq@ubu. > ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tmem=context.zwo_lib.mem_data() print context.zwo_lib.standard_html_header(mem) print '


    ' print 'Votre message privé a bien été envoyé.

    ' print '

    [ Retour ]' print '




    ' print context.zwo_lib.standard_html_footer(mem) return printed q U_codeq Tc@s d„ZdS(NcCs›tƒ}tttdƒdƒƒ}|tttdƒdƒ|ƒIJ|dIJ|dIJ|dIJ|dIJ|tttdƒdƒ|ƒIJ|ƒSdS( Nszwo_libsmem_datasstandard_html_headers:


    s*Votre message privé a bien été envoyé.

    s]

    [ Retour ]s




    sstandard_html_footer(s_print_s_prints _getattr_scontextsmem(s_print_s_prints _getattr_scontextsmem((sScript (Python)soks$"    "(sok(sok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU__ac_local_roles__q}qUgregq]q UOwnerq!asUidq"Uokq#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_argcountq)KU co_varnamesq*(U_print_q+U_printq,U _getattr_q-Ucontextq.Umemq/tq0ubu. > F((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tpmem=context.zwo_lib.mem_data() imgfold='' lieu=mem['user_zw_obj'].PM if fo<>'PM': lieu=lieu[fo] print context.zwo_lib.standard_html_header(mem) print '' print 'Déplacer un message

    ' if fo<>'PM': print imgfold+' Home ICI
    ' for f in mem['user_zw_obj'].PM.objectValues('Folder'): if fo<>f.getId(): print imgfold+' '+f.title_or_id()+' ICI
    ' print '
    ' print context.zwo_lib.standard_html_footer(mem) return printed q U_codeq Tc@sdd„ZdS(NsPMc CsÌtƒ}tttdƒdƒƒ}dt|dƒd}tt|dƒdƒ} |djot| |ƒ} n|tttdƒdƒ|ƒIJ|d IJ|d IJ|djo3||d |d |d t|dƒdIJnx©t ttt|dƒdƒdƒdƒƒD]z} |t| dƒƒjo[||dt| dƒƒd|d |dt| dƒƒdt|dƒdIJqqW|dIJ|tttdƒdƒ|ƒIJ|ƒSdS(Nszwo_libsmem_datas s user_zw_objsPMsstandard_html_headerss<Déplacer un message

    s& Home ICI
    s objectValuessFoldersgetIds s title_or_ids! sq U func_defaultsq(UPMqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}q Ugregq!]q"UOwnerq#asUidq$U deplacer_msgq%U_paramsq&Umsg_id, fo='PM'q'U func_codeq((cShared.DC.Scripts.Signature FuncCode q)oq*}q+(U co_argcountq,KU co_varnamesq-(Umsg_idq.Ufoq/U_print_q0U_printq1U _getattr_q2Ucontextq3Umemq4U _getitem_q5Uimgfoldq6Ulieuq7U _getiter_q8Uftq9ubu. >{((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T@mem=context.zwo_lib.mem_data() frlist=mem['user_zw_obj'].my_friends_list newfrlist=[] for a in frlist: if string.strip(usr)<>string.strip(a): newfrlist.append(a) dico={'my_friends_list' : newfrlist} mem['user_zw_obj'].manage_changeProperties(dico) context.REQUEST.RESPONSE.redirect('conf_friends_list') return q U_codeq Tuc@s d„ZdS(Nc Csêtttdƒdƒƒ}tt|dƒdƒ}g}xVt|ƒD]H}ttdƒ|ƒttdƒ|ƒjot|dƒ|ƒqFqFWhd|<} tt|dƒdƒ| ƒttttdƒd ƒd ƒd ƒdSdS( Nszwo_libsmem_datas user_zw_objsmy_friends_listsstripsappendsmanage_changePropertiessREQUESTsRESPONSEsredirectsconf_friends_list( s _getattr_scontextsmems _getitem_sfrlists newfrlists _getiter_sasstringsusrsdico( susrs _getattr_scontextsmems _getitem_sfrlists newfrlists _getiter_sasstringsdico((sScript (Python)sdel_users .(sdel_user(sdel_user((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU__ac_local_roles__q }q!Ugregq"]q#UOwnerq$asUidq%Udel_userq&U_paramsq'Uusrq(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Uusrq/U _getattr_q0Ucontextq1Umemq2U _getitem_q3Ufrlistq4U newfrlistq5U _getiter_q6UaUstringq7Udicoq8tq9ubu. >ê((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T3from Products.PythonScripts.standard import newline_to_br mem=context.zwo_lib.mem_data() try: doc=mem['zwo_obj'].zwo_info.users[to] except: return "Cet utilisateur n'existe pas !" if 'PM' not in doc.objectIds('Folder'): doc.manage_addFolder('PM','') nowtime=DateTime().pCommon() timegmt=DateTime('GMT+0').timeTime() #~ no html pmf=[] #~ urls pml=pm.split(' ') for mot in pml: mot=mot.replace('>','>') mot=mot.replace('<','<') if string.find(mot,'http://')<>-1: affmo=mot if len(mot)>45: affmo=mot[:45]+'(..)' nm=''+affmo+'' pmf.append(nm) else: pmf.append(mot) #PMmessage=' '.join(pmf) PMmessage=' '.join(pml) PMmessage=newline_to_br(PMmessage) entete='
    Message envoyé par '+mem['user_id']+' le '+nowtime+'
    ' defmsg=entete+'

    '+PMmessage+'

    ' if 'Authenticated' in mem['user_roles_id']: # compatibilité : if 'PM' not in mem['user_zw_obj'].objectIds(): mem['user_zw_obj'].manage_addFolder('PM') #~ envoi PM & conséquences doc.PM.manage_addFile(timegmt, file=defmsg, title=mem['user_id'], content_type='text/html') doc.manage_changeProperties(has_new_PM=1) doc.PM[str(timegmt)].manage_addProperty('lu',0,'int') else: return 'Vous devez être inscrit pour envoyer des PM !' context.REQUEST.RESPONSE.redirect('ok') return q U_codeq TY c@s d„ZdS(NcCsdkl}tttdƒdƒƒ}y.tttt|dƒdƒdƒ|ƒ}Wn dSnXdt|d ƒd ƒjot|d ƒdd ƒnttƒd ƒƒ} ttdƒdƒƒ} g} t|dƒdƒ} xÚt| ƒD]Ì}t|dƒddƒ}t|dƒddƒ}ttdƒ|dƒd joc|}t|ƒdjot|dd…ƒd}nd|d|d}t| dƒ|ƒqït| dƒ|ƒqïWtdd ƒ| ƒ}||ƒ}d!t|d"ƒd#| d$}|d%|d&}d't|d(ƒjoÄdtt|d)ƒd ƒƒjo tt|d)ƒd ƒdƒntt|dƒd*ƒ| d+|d,t|d"ƒd-d.ƒt|d/ƒd0dƒttt|dƒt| ƒƒd1ƒd2d3d4ƒnd5Sttttd6ƒd7ƒd8ƒd9ƒdSdS(:N(s newline_to_brszwo_libsmem_dataszwo_objszwo_infosuserssCet utilisateur n'existe pas !sPMs objectIdssFoldersmanage_addFoldersspCommonsGMT+0stimeTimessplits sreplaces>s>sssappendsjoins
    Message envoyé par suser_ids le s
    s

    s

    s Authenticateds user_roles_ids user_zw_objsmanage_addFilesfilestitles content_types text/htmlsmanage_changePropertiess has_new_PMsmanage_addPropertysluisints-Vous devez être inscrit pour envoyer des PM !sREQUESTsRESPONSEsredirectsok(sProducts.PythonScripts.standards newline_to_brs _getattr_scontextsmems _getitem_stosdocsDateTimesnowtimestimegmtspmfspmspmls _getiter_smotsstringsaffmoslensnms PMmessagesentetesdefmsgsstr(spmstosProducts.PythonScripts.standards newline_to_brs _getattr_scontextsmems _getitem_sdocsDateTimesnowtimestimegmtspmfspmls _getiter_smotsstringsaffmoslensnms PMmessagesentetesdefmsgsstr((sScript (Python)s send_PM_oksD 1   ( 4, (s send_PM_ok(s send_PM_ok((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU__ac_local_roles__q }q!Ugregq"]q#UOwnerq$asUidq%U send_PM_okq&U_paramsq'Upm, toq(U func_codeq)(cShared.DC.Scripts.Signature FuncCode q*oq+}q,(U co_argcountq-KU co_varnamesq.(Upmq/Utoq0UProducts.PythonScripts.standardq1U newline_to_brq2U _getattr_q3Ucontextq4Umemq5U _getitem_q6Udocq7UDateTimeq8Unowtimeq9Utimegmtq:Upmfq;UpmlqUstringq?Uaffmoq@UlenqAUnmqBU PMmessageqCUenteteqDUdefmsgqEUstrqFtqGubu. > £((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T/mem=context.zwo_lib.mem_data() col="#FFFFFF" mes='Pas de nouveau message' if mem['user_zw_obj'].has_new_PM<>0: col="#ff2a3d" mes='Nouveau message' print '' print '' print 'PM alert' print '' print '' print '' print '' print '' print '' print '
    ' print mes print '
    ' print '' print '' return printed q U_codeq TÜc@s d„ZdS(Nc 0Cst}t}tƒ}||tdƒdƒƒ}d}d} |||dƒdƒdjod}d } n|d IJ|d IJ|d IJ|d |t dƒƒdIJ|dIJ|dIJ|dIJ|d|dIJ|dIJ|dIJ|| IJ|dIJ|dIJ|dIJ|ƒSdS(Nszwo_libsmem_datas#FFFFFFsQPas de nouveau messages user_zw_objs has_new_PMis#ff2a3dsJNouveau messagesssPM alerts,s?s5sss'
    s
    ss( s _getitem_s_getitems _getattr_s_getattrs_print_s_printscontextsmemscolsmessscript( s _getitem_s_getitems _getattr_s_getattrs_print_s_printscontextsmemscolsmessscript((sScript (Python)s signaleurs(0             (s signaleur(s signaleur((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbUidq U signaleurq!U_paramsq"UU func_codeq#(cShared.DC.Scripts.Signature FuncCode q$oq%}q&(U co_argcountq'KU co_varnamesq((U _getitem_q)U_getitemq*U _getattr_q+U_getattrq,U_print_q-U_printq.Ucontextq/Umemq0Ucolq1Umesq2Uscriptq3tq4ubu. >™((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqUȉPNG  IHDR*º† pHYs  šœtIMEÔ íÈŠ¬gIDATxÚcüÿÿÿû5² „€`ÈcÆw«e ,ˆ²64A¸¦Ù¸43°š L D¨[‰$˜Ê‚ÕYXý‡/ÐL!ÁLp#±ºA0ä1Ü6 -f0£²Ùh®g$>¹X6óFž“NIEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqKÈu. >ú((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T# RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() # EXEMPLE FORMULAIRE EDITION print '
    ' print 'Identifiant : '+instance.title+'

    ' print '' # Personnalisation Formulaire #print 'Propriété :

    ' # Fin Formulaire #print '' print 'Pas de config' print '


    ' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMÉDIAIRE script_i #url_loc="zwo_modules/"+typemod+'/' #print 'Script de configuration autre ... CLIQUER ICI' return printed q U_codeq Tùc@s d„ZdS(NcCs…tƒ}ttdƒƒ}|d|dIJ|dt|dƒdIJ|dt|dƒƒdIJ|d IJ|d IJ|ƒSdS( NsgetIds(
    sIdentifiant : stitles

    s)s Pas de configs


    (s_print_s_prints _getattr_s containerstypemodsinstance(smemsrepsinstances_print_s_prints _getattr_s containerstypemod((sScript (Python)s config_htmls   (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Urepq$Uinstanceq%U_print_q&U_printq'U _getattr_q(U containerq)Utypemodq*tq+ubU__ac_local_roles__q,}q-Uxavq.]q/UOwnerq0asUidq1U config_htmlq2U_paramsq3Umem, rep, instanceq4U_dav_writelocksq5(U @Ôq6(U Persistenceq7UPersistentMappingq8tq9tq:Qu. >((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T # RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url=url_lieu+'ajout_element?type='+container.getId() print '' print '

    Cet identifiant '+idobj+' est déja pris
    ' print 'Veuillez en choisir un autre
    ' print 'Redirection automatique dans 2 secondes.

    ' print 'Si la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIÉTÉS en fonction du module #obj.manage_addProperty('exemple',exemple,'string') #obj.manage_addProperty('nom_propriete','valeur default',type) # AJOUT DE SOUS ELEMENTS en fonction du module # (si dossier chois comme type uniquement) #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) context.REQUEST.RESPONSE.redirect('../../place?obj='+idobj) return q U_codeq Tvc@s d„ZdS(Nc Cs•tƒ}tttdƒdƒƒ}t|dƒ}t|dƒdjodSntttdƒdƒ|ƒ}|t|dƒƒjoyt d tt d ƒƒ} |d | d IJ|d |dIJ|dIJ|dIJ|d| dIJ|dIJ|ƒSnt|dƒ||ƒt||ƒ} t| dƒdddƒt| dƒdtt d ƒƒdƒttttdƒdƒdƒd|ƒdSdS(Nszwo_libs mem_mod_datasparentsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopes objectIdssajout_element?type=sgetIds7s.

    Cet identifiant s est déja pris
    s"Veuillez en choisir un autre
    s6Redirection automatique dans 2 secondes.

    sGSi la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstringsREQUESTsRESPONSEsredirects../../place?obj=( s_print_s_prints _getattr_scontextsmems _getitem_slieustitresidobjsurl_lieus containersurlsobj( stitres_print_s_prints _getattr_scontextsmems _getitem_slieusidobjsurl_lieus containersurlsobj((sScript (Python)snew_oks(    + (snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU_dav_writelocksq(U @Øq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Ugregq%]q&UOwnerq'asUidq(Unew_okq)U_paramsq*Utitreq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Utitreq2U_print_q3U_printq4U _getattr_q5Ucontextq6Umemq7U _getitem_q8Ulieuq9Uidobjq:Uurl_lieuq;U containerqtq?ubu. > o((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T8# typemod est l'id du module et namemod est son title typemod=container.getId() namemod=container.title_or_id() # proposition de nom pour l'élément exemple_titre_base=namemod exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) # debut formulaire HTML simple de création d'element print '
    ' print '' print 'Identifiant :

    ' # partie specifique à ce module #print '
    EXEMPLE
    ' # suite standart print '' print '
    ' return printed q U_codeq Tc@s d„ZdS(Nc CsÇtƒ}ttdƒƒ}ttdƒƒ}|}|} d} x8| t|dƒƒjo| d} |t | ƒ} qBW|d|dIJ|dIJ|d | d IJ|d IJ|d IJ|ƒSdS( NsgetIds title_or_idis objectIdsis(
    ss?Identifiant :

    s0s
    ( s_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstr( smemsdossiers_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmls     (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Udossierq$U_print_q%U_printq&U _getattr_q'U containerq(Utypemodq)Unamemodq*Uexemple_titre_baseq+U exemple_titreq,Uindiceq-Ustrq.tq/ubU__ac_local_roles__q0}q1Uxavq2]q3UOwnerq4asUidq5Unew_htmlq6U_paramsq7U mem,dossierq8U_dav_writelocksq9(U @Õq:(U Persistenceq;UPersistentMappingqQu. >Š€((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tc2#~ ################ sec control #################### #if 'Authenticated' not in mem['user_roles_id']: if mem['droit_config_dossier']<>1: return '' #~ ################ recup params #################### #~ usr dico=context.REQUEST.form if dico.has_key('usr'): usr=dico['usr'] if usr<>'nope' and not usr in context.zwo_info.users.objectIds(): return 'Membre inconnu ! [Retour]' if dico.has_key('afuli'): afuli=dico['afuli'] if dico.has_key('zombli'): zombli=dico['zombli'] if dico.has_key('actli'): actli=dico['actli'] if dico.has_key('nbh'): nbh=dico['nbh'] #~ ################ def #################### inc='#333333' outc='#339966' noutc='#FFAA00' timegmt=DateTime('GMT+0') seconde=1 minute=seconde*60 jour=1440*minute def dateToDuree(dat1): d=float(dat1)-float(timegmt) if d>-60: ff=str(int(d))+" sec" elif d>-60*60: ff=str(int(d/(60)))+" min" elif d>-60*60*24: ff=str(int(d/(60*60)))+" hrs" elif d>-60*60*30*24: ff=str(int(d/(60*60*24)))+" jrs" elif d>-60*60*30*24*12: ff=str(int(d/(60*60*24*30)))+" mois" else: ff=str(int(d/(60*60*24*30*12)))+" ans." print ff return printed """ def dateToHeures(dat1): d=float(dat1)-float(timegmt) ff=0 if d>-60*60*24: ff=int(d/(60*60)) print ff return printed """ def dateToHeures(dat1): ff=0 d=float(dat1)-float(timegmt) if d>-60*60*24: ff=int(d/(60*60)) else: ff=int(d/(60*60)) print ff return printed def getUsrObj(usr): return mem['rep_obj'].zwo_info.users[usr] def qualiteUser(user): qual=[] d=timegmt d1=user.date_creation d2=user.df_last_action d3=d1+1 d4=d-30 d5=d-7 d6=d-1 #~ Users non revenus depuis plus de 24h après leur inscription if d2d5: qual.append('Actif') if d2>d6: qual.append('Recent') return qual def isZombie(user): if 'Zombie' in qualiteUser(user): return 1 else: return 0 def isDead(user): if 'NonRevenu' in qualiteUser(user): return 1 else: return 0 def isActif(user): if 'Actif' in qualiteUser(user): return 1 else: return 0 def isRecent(user): if 'Recent' in qualiteUser(user): return 1 else: return 0 def getStatusList(): li1=[] li2=[] li3=[] li4=[] t=0 for user in mem['zwo_obj'].zwo_info.users.objectValues(): if isZombie(user)==1: li1.append(user) if isDead(user)==1: li2.append(user) if isActif(user)==1: li3.append(user) if isRecent(user)==1: li4.append(user) t=t+1 di={'liZombie':li1,'liDead':li2,'liActif':li3,'liRecent':li4,'total':t} return di def whoseListIn(usr): uli=[] for user in mem['rep_obj'].zwo_info.users.objectValues(): for friend in user.my_friends_list: if friend==usr: uli.append(user.getId()) uli.sort() return uli def getList(usr): usro=getUsrObj(usr) flit=usro.my_friends_list fli=[] for elem in flit: fli.append(elem) fli.sort() return fli def affList(li,liin): for el in li: if el in liin: col=inc else: col=outc if el<>'': print ''+el+'
    ' return printed def affListIsIn(li,liin): for el in liin: if el in li: col=inc else: col=noutc if el<>'': print ''+el+'
    ' return printed def affListAmis(): if usr<>'nope': print '' print '' print '' print '' print '' print '' print '' print '' print '
    ' print 'Listes d\'amis ou '+usr+' est inscrit' print '' print 'Liste d\'amis de '+usr print '
    ' print affListIsIn(getList(usr),whoseListIn(usr)) print '' print affList(getList(usr),whoseListIn(usr)) print '
    ' print '
    ' print '' print '' print '' print '
     ' print 'Amis sur la liste desquels '+usr+' est inscrit mais qui ne sont pas inscrits sur sa liste' print '
     ' print 'Amis inscrits sur la liste de '+usr+' mais qui ne l\'ont pas inscrit sur leur liste' print '

    ' return printed def affInfos(): if usr<>'nope': user=context.acl_users.getUser(usr) list_roles=str(user.getRoles()) usro=getUsrObj(usr) nom='non précisé' prenom='non précisé' avatar='0.gif' if usro.hasProperty('avatar'): avatar=usro.avatar if usro.hasProperty('nom'): nom=usro.nom if usro.hasProperty('prenom'): prenom=usro.prenom print '' print '
    ' print '
    ' print ''+usr+'
    ' print '[ PMer ]' print '
    ' print 'Nom = '+nom+'
    ' print 'Prenom = '+prenom+'
    ' print usro.email print '
    ' d1=usro.date_creation d2=usro.df_last_action print 'Inscrit depuis le : '+d1.aCommon()+' soit '+dateToDuree(d1)+'
    ' print 'Dernière connection : '+d2.aCommon()+' soit [ '+dateToDuree(d2)+' ]' if isZombie(usro)==1: print ' { Zombie }' if isDead(usro)==1: print ' N\'est pas revenu depuis son inscription !' print '
    ' print 'Groupes : '+list_roles print '

    ' return printed def affUserList(): us=mem['rep_obj'].zwo_info.users.objectIds() us.reverse() for user in us: print ''+user+'
    ' return printed def affZombiesList(): insli=[] li30=[] di={} da=[] us=mem['rep_obj'].zwo_info.users total=0 for user in us.objectValues(): lac=user.df_last_action #~ Users non revenus depuis plus de 24h après leur inscription if isDead(user)==1: insli.append(user) #~ users qui ne sont pas repassés depuis un mois if isZombie(user)==1: li30.append(user) da.append(lac) di[lac]=user total=total+1 #~ tri da.sort() da.reverse() #~ affichage print '
    { Zombies } Membres qui ne se sont pas connectés depuis plus d\'un mois :
    ' print ''+str(len(li30))+' zombies et '+str(len(insli))+' Membres qui ne sont jamais revenus depuis leur inscription, sur un total de '+str(total)+' membres

    ' for eld in da: uo=di[eld] el=uo print el.df_last_action.aCommon() print ' '+el.getId()+'' print ' ( '+dateToDuree(eld)+' ) ' if el in insli: print ' - N\'est pas revenu depuis son inscription !' print '
    ' return printed def affActList(): li1=[] li7=[] da7=[] di7={} us=mem['rep_obj'].zwo_info.users.objectValues() total=0 for user in us: #~ Users revenus depuis 24h if isActif(user)==1: lac=user.df_last_action di7[lac]=user da7.append(lac) li7.append(user) #~ users revenus depuis 7 jours if isRecent(user)==1: li1.append(user) total=total+1 #~ tri da7.sort() da7.reverse() #~ affichage print '
    { Membres actifs } connectés depuis moins d\'une semaine :
    ' print ''+str(len(li7))+' membres actifs dont '+str(len(li1))+' se sont connectés depuis moins de 24h sur un total de '+str(total)+' membres
    ' print '
    ' print '' print 'Surligner les connectés des dernières h ' print '' print '


    ' print '' for eld in da7: uo=di7[eld] el=uo cla='' if (int(dateToHeures(eld))+int(nbh))>=0: cla=' class="fon584"' print el.df_last_action.aCommon() print ' '+el.getId()+'' print ' ( '+dateToDuree(eld)+' ) ' if el in li1: print ' - S\'est connecté il y a moins de 24h !' print '
    ' return printed def affSynth(): di=getStatusList() total=di['total'] liZ=di['liZombie'] liD=di['liDead'] liA=di['liActif'] liR=di['liRecent'] nliZ=len(liZ) nliD=len(liD) nliA=len(liA) nliR=len(liR) pliZ=(nliZ*100)/total pliD=(nliD*100)/total pliA=(nliA*100)/total pliR=(nliR*100)/total pliZ=int(pliZ) pliD=int(pliD) pliA=int(pliA) pliR=int(pliR) #~ affichage print '
    '+str(total)+' membres inscrits

    ' print 'Actifs
    ' print '
    '+str(pliA)+' %
    ' print str(pliA)+' % d\'membres actifs (connectés depuis moins de 1 semaine) soit '+str(nliA)+' users

    ' print 'Récents
    ' print '
    '+str(pliR)+' %
    ' print str(pliR)+' % de membres récents (connectés depuis moins de 24h) soit '+str(nliR)+' users

    ' print 'Zombies
    ' print '
    '+str(pliZ)+' %
    ' print str(pliZ)+' % de zombies (non connectés depuis plus d\'un mois) soit '+str(nliZ)+' users

    ' print 'Fantômes
    ' print '
    '+str(pliD)+' %
    ' print str(pliD)+' % de membres n\'étant pas revenus depuis le jour de leur inscription, soit '+str(nliD)+' users

    ' return printed #~ ################ main #################### aff='' aff=aff+'' aff=aff+'' if afuli=='on': aff=aff+'' aff=aff+'' aff=aff+'
    ' aff=aff+'
    ' urlt1='\''+mem['rep_url']+'?usr='+usr+'&afuli=off&zombli='+zombli+'&actli='+actli+'\'' urlt2='\''+mem['rep_url']+'?usr='+usr+'&afuli=on&zombli='+zombli+'&actli='+actli+'\'' urlt3='\''+mem['rep_url']+'?afuli='+afuli+'&zombli=on&actli=off\'' urlt4='\''+mem['rep_url']+'?afuli='+afuli+'\'' urlt5='\''+mem['rep_url']+'?afuli='+afuli+'&actli=off\'' if afuli=='on': aff=aff+'' else: aff=aff+'' aff=aff+'  ' aff=aff+'Membre : ' aff=aff+'' aff=aff+'' aff=aff+'  ' if zombli<>'on': aff=aff+' ' if actli<>'on': aff=aff+' ' if zombli=='on' or actli=='on' or usr<>'nope': aff=aff+' ' aff=aff+'
    ' aff=aff+'
    ' aff=aff+affUserList() aff=aff+'' aff=aff+affInfos() aff=aff+affListAmis() if zombli=='on': aff=aff+affZombiesList() if actli=='on': aff=aff+affActList() if zombli<>'on' and actli<>'on' and usr=='nope': aff=aff+affSynth() aff=aff+'
    ' return aff q U_codeq TLSc@sdddddd„ZdS(Nsnopesoffsons3c,ksƒtˆdƒdjodSntttdƒdƒ} t| dƒdƒot| dƒ‰nˆdjo)ˆttttd ƒd ƒd ƒƒj od Snt| dƒd ƒot| d ƒ‰nt| dƒdƒot| dƒ}nt| dƒdƒot| dƒ}nt| dƒdƒot| dƒ‰nd‰d‰d‰t dƒ‰d}|d}d|}‡d†‰ d‡d†‰ ‡d†‰‡d†‰‡d†‰‡d†‰‡d†‰ ‡d†‰‡‡‡‡‡ d †‰‡d!†‰‡d"†‰‡‡d#†‰ ‡‡d$†‰ ‡‡‡‡‡‡ ‡ d%†} ‡‡‡ ‡‡‡d&†}!‡‡d'†}"‡‡ ‡‡‡d(†}#‡ ‡‡ ‡‡ ‡‡d)†}$‡d*†}%d}&|&d+}&|&d,}&|&d-}&d.tˆd/ƒd0ˆd1|d2|d.}'d.tˆd/ƒd0ˆd3|d2|d.}(d.tˆd/ƒd4ˆd5})d.tˆd/ƒd4ˆd.}*d.tˆd/ƒd4ˆd6}+ˆd7jo|&d8|'d9}&n|&d:|(d9}&|&d;}&|&d<}&|&d=ˆd9}&|&d>}&|&d?}&|d7jo|&d@|)dA}&n|d7jo|&dB|*dA}&n|d7jp|d7jp ˆdjo|&dC|+dA}&n|&dD}&|&dE}&ˆd7jo%|&dF}&|&|"ƒ}&|&dG}&n|&dH}&|&|!ƒ}&|&| ƒ}&|d7jo|&|#ƒ}&n|d7jo|&|$ƒ}&n|d7jo|d7jo ˆdjo|&|%ƒ}&n|&dG}&|&dI}&|&SdS(JNsdroit_config_dossierissREQUESTsformshas_keysusrsnopeszwo_infosuserss objectIdss*Membre inconnu ! [Retour]safuliszomblisactlisnbhs#333333s#339966s#FFAA00sGMT+0i<i c svtƒ}t|ƒtˆƒ}|d jott|ƒƒd}n|d djott|dƒƒd}në|d ddjo"tt|ddƒƒd}n³|d dddjo&tt|dddƒƒd}ns|d ddddjo*tt|ddddƒƒd }n+tt|dddddƒƒd }||IJ|ƒSdS( Ni<s secs minis hrsis jrsi s moiss ans.( s_print_s_printsfloatsdat1stimegmtsdsstrsintsff( sdat1s_print_s_printsfloatstimegmtsdsstrsintsff(stimegmt(sScript (Python)s dateToDuree s "&** sƒ def dateToHeures(dat1): d=float(dat1)-float(timegmt) ff=0 if d>-60*60*24: ff=int(d/(60*60)) print ff return printed c s|tƒ}d}t|ƒtˆƒ}|d ddjot|ddƒ}nt|ddƒ}||IJ|ƒSdS(Nii<i(s_print_s_printsffsfloatsdat1stimegmtsdsint(sdat1s_print_s_printsffsfloatstimegmtsdsint(stimegmt(sScript (Python)s dateToHeures:s  cs,ttttˆdƒdƒdƒ|ƒSdS(Nsrep_objszwo_infosusers(s _getitem_s _getattr_smemsusr(susrs _getitem_s _getattr_smem(smem(sScript (Python)s getUsrObjDsc sêg}ˆ}t|dƒ}t|dƒ}|d}|d}|d} |d} ||jot|dƒdƒn||jot|dƒdƒn|| jot|dƒd ƒn|| jot|dƒd ƒn|SdS( Ns date_creationsdf_last_actioniiisappends NonRevenusZombiesActifsRecent( squalstimegmtsds _getattr_susersd1sd2sd3sd4sd5sd6( susersqualstimegmtsds _getattr_sd1sd2sd3sd4sd5sd6(stimegmt(sScript (Python)s qualiteUserGs"    cs#dˆ|ƒjodSndSdS(NsZombieii(s qualiteUsersuser(susers qualiteUser(s qualiteUser(sScript (Python)sisZombie\scs#dˆ|ƒjodSndSdS(Ns NonRevenuii(s qualiteUsersuser(susers qualiteUser(s qualiteUser(sScript (Python)sisDeadbscs#dˆ|ƒjodSndSdS(NsActifii(s qualiteUsersuser(susers qualiteUser(s qualiteUser(sScript (Python)sisActifhscs#dˆ|ƒjodSndSdS(NsRecentii(s qualiteUsersuser(susers qualiteUser(s qualiteUser(sScript (Python)sisRecentnscsIg}g}g}g}d}xítttttˆdƒdƒdƒdƒƒƒD]¸} ˆ| ƒdjot|dƒ| ƒnˆ| ƒdjot|dƒ| ƒnˆ| ƒdjot|dƒ| ƒnˆ| ƒdjot|dƒ| ƒn|d}qRWhd|<d |<d |<d |<d |<}|SdS( Niszwo_objszwo_infosuserss objectValuesisappendsliZombiesliDeadsliActifsliRecentstotal(sli1sli2sli3sli4sts _getiter_s _getattr_s _getitem_smemsusersisZombiesisDeadsisActifsisRecentsdi(sli1sli2sli3sli4sts _getiter_s _getattr_s _getitem_smemsusersisZombiesisDeadsisActifsisRecentsdi(smemsisRecentsisDeadsisZombiesisActif(sScript (Python)s getStatusListts$43cs¬g}x‹tttttˆdƒdƒdƒdƒƒƒD]V}xMtt|dƒƒD]6}||jo#t|dƒt|dƒƒƒqVqVWq:Wt|dƒƒ|SdS( Nsrep_objszwo_infosuserss objectValuessmy_friends_listsappendsgetIdssort(sulis _getiter_s _getattr_s _getitem_smemsusersfriendsusr(susrsulis _getiter_s _getattr_s _getitem_smemsusersfriend(smem(sScript (Python)s whoseListIn‡s4+ cscˆ|ƒ}t|dƒ}g}x't|ƒD]}t|dƒ|ƒq.Wt|dƒƒ|SdS(Nsmy_friends_listsappendssort(s getUsrObjsusrsusros _getattr_sflitsflis _getiter_selem(susrs getUsrObjsusros _getattr_sflitsflis _getiter_selem(s getUsrObj(sScript (Python)sgetLists   c sstƒ}x\t|ƒD]N}||jo ˆ}nˆ}|djo|d|d|dIJqqW|ƒSdS(Nss s
    ( s_print_s_prints _getiter_sliselsliinsincscolsoutc( slisliins_print_s_prints _getiter_selsincscolsoutc(soutcsinc(sScript (Python)saffList™s     "c sstƒ}x\t|ƒD]N}||jo ˆ}nˆ}|djo|d|d|dIJqqW|ƒSdS(Nss s
    ( s_print_s_prints _getiter_sliinselslisincscolsnoutc( slisliins_print_s_prints _getiter_selsincscolsnoutc(snoutcsinc(sScript (Python)s affListIsIn£s     "c Ostƒ}ˆdjo^|dIJ|dIJ|dIJ|dˆdIJ|dIJ|dIJ|dˆIJ|dIJ|d IJ|dIJ|d IJ|ˆˆˆƒˆˆƒƒIJ|d IJ|d IJ|ˆˆˆƒˆˆƒƒIJ|d IJ|d IJ|d IJ|dˆdIJ|dIJ|dˆdIJ|dIJ|dˆdIJ|dIJ|dˆdIJ|dIJn|ƒSdS(NsnopesBss0sListe d'amis de ss s
    sListes d'amis ou s est inscrits
    s
    sG
    ss!sAmis inscrits sur la liste de s- mais qui ne l'ont pas inscrit sur leur listes
     sAmis sur la liste desquels s7 est inscrit mais qui ne sont pas inscrits sur sa listes

    ( s_print_s_printsusrs affListIsInsgetLists whoseListInsaffListsnoutcsoutc( s_print_s_printsusrs affListIsInsgetLists whoseListInsaffListsnoutcsoutc(s whoseListInsnoutcsgetListsoutcsusrsaffLists affListIsIn(sScript (Python)s affListAmis­s8                   c=s…tƒ}ˆdjodtttdƒdƒˆƒ}tt|dƒƒƒ}ˆˆƒ} d} d} d} t| dƒdƒot| dƒ} nt| dƒd ƒot| d ƒ} nt| dƒd ƒot| d ƒ} n|d IJ|d IJ|d t ˆdƒd| dIJ|dˆdIJ|dt ˆdƒdˆdIJ|dIJ|d| dIJ|d| dIJ|t| dƒIJ|dIJt| dƒ}t| dƒ}|dt|dƒƒd ˆ|ƒd!IJ|d"t|dƒƒd#ˆ|ƒd$IJˆ| ƒd%jo|d&IJnˆ| ƒd%jo|d'IJn|d(IJ|d)|IJ|d*IJn|ƒSdS(+Nsnopes acl_userssgetUsersgetRolessnon précisés0.gifs hasPropertysavatarsnomsprenomsAs$
    s
    ss
    s[ PMer ]s#
    sNom = s
    s Prenom = semails date_creationsdf_last_actionsInscrit depuis le : saCommons soit s
    sDernière connection : s" soit [ s ]isE { Zombie }sD N'est pas revenu depuis son inscription !s8
    s Groupes : s

    (s_print_s_printsusrs _getattr_scontextsusersstrs list_roless getUsrObjsusrosnomsprenomsavatars _getitem_smemsd1sd2s dateToDureesisZombiesisDead(s_print_s_printsusrs _getattr_scontextsusersstrs list_roless getUsrObjsusrosnomsprenomsavatars _getitem_smemsd1sd2s dateToDureesisZombiesisDead(s getUsrObjsmems dateToDureesisDeadsusrsisZombie(sScript (Python)saffInfosÍsF      ##  ,, c s›tƒ}ttttˆdƒdƒdƒdƒƒ}t|dƒƒxGt|ƒD]9}|dtˆdƒd|d ˆd |d IJqSW|ƒSdS( Nsrep_objszwo_infosuserss objectIdssreverses s
    ( s_print_s_prints _getattr_s _getitem_smemsuss _getiter_susersafuli( s_print_s_prints _getattr_s _getitem_smemsuss _getiter_susersafuli(smemsafuli(sScript (Python)s affUserListòs 0  7csCtƒ}g}g}h}g}tttˆdƒdƒdƒ} d} x°t t| dƒƒƒD]–} t| dƒ} ˆ| ƒdjot|dƒ| ƒnˆ| ƒdjo:t|dƒ| ƒt|dƒ| ƒ| t|ƒ| { Zombies } Membres qui ne se sont pas connectés depuis plus d'un mois :
    ss zombies et sM Membres qui ne sont jamais revenus depuis leur inscription, sur un total de s membres

    saCommons ss ( s ) sF - N'est pas revenu depuis son inscription !s
    (s_print_s_printsinslisli30sdisdas _getattr_s _getitem_smemsusstotals _getiter_suserslacsisDeadsisZombies_write_sstrslenseldsuoselsafulis dateToDuree(s_print_s_printsinslisli30sdisdas _getattr_s _getitem_smemsusstotals _getiter_suserslacsisDeadsisZombies_write_sstrslenseldsuoselsafulis dateToDuree(smems dateToDureesafulisisDeadsisZombie(sScript (Python)saffZombiesListùs> !  @ K c7sÞtƒ}g}g}g}h}ttttˆdƒdƒdƒdƒƒ} d} x¤t | ƒD]–} ˆ| ƒdjoIt| dƒ}| t|ƒ| { Membres actifs } connectés depuis moins d'une semaine :
    ss membres actifs dont s7 se sont connectés depuis moins de 24h sur un total de s membres
    s
    s)sTSurligner les connectés des dernières h s*s


    sss class="fon584"saCommons ss ( s ) sA - S'est connecté il y a moins de 24h !s
    (s_print_s_printsli1sli7sda7sdi7s _getattr_s _getitem_smemsusstotals _getiter_susersisActifslacs_write_sisRecentsstrslensafulisnbhseldsuoselsclasints dateToHeuress dateToDuree(s_print_s_printsli1sli7sda7sdi7s _getattr_s _getitem_smemsusstotals _getiter_susersisActifslacs_write_sisRecentsstrslensafulisnbhseldsuoselsclasints dateToHeuress dateToDuree(sisActifsmems dateToDureesafulis dateToHeuressnbhsisRecent(sScript (Python)s affActListsT -   @       # S c*s`tƒ}ˆƒ}t|dƒ}t|dƒ}t|dƒ}t|dƒ}t|dƒ} t |ƒ} t |ƒ} t |ƒ} t | ƒ}| d|}| d|}| d|}|d|}t|ƒ}t|ƒ}t|ƒ}t|ƒ}|dt|ƒdIJ|d IJ|d t|ƒd t|ƒd IJ|t|ƒd t| ƒdIJ|dIJ|dt|ƒd t|ƒd IJ|t|ƒdt|ƒdIJ|dIJ|dt|ƒd t|ƒd IJ|t|ƒdt| ƒdIJ|dIJ|dt|ƒd t|ƒd IJ|t|ƒdt| ƒdIJ|ƒSdS(NstotalsliZombiesliDeadsliActifsliRecentids
    s! membres inscrits

    sActifs
    sH
    s %
    s? % d'membres actifs (connectés depuis moins de 1 semaine) soit s users

    sRécents
    sHs*s
    s
    s'srep_urls?usr=s&afuli=off&zombli=s&actli=s&afuli=on&zombli=s?afuli=s&zombli=on&actli=off's &actli=off'sonsIsGs)s-  sA s@s
    s
    (+s _getitem_smems _getattr_scontextsdicosusrsafuliszomblisactlisnbhsincsoutcsnoutcsDateTimestimegmtssecondesminutesjours dateToDurees dateToHeuress getUsrObjs qualiteUsersisZombiesisDeadsisActifsisRecents getStatusLists whoseListInsgetListsaffLists affListIsIns affListAmissaffInfoss affUserListsaffZombiesLists affActListsaffSynthsaffsurlt1surlt2surlt3surlt4surlt5(,smemsinstancesusrsafuliszomblisactlisnbhs _getitem_s _getattr_scontextsdicosincsoutcsnoutcsDateTimestimegmtssecondesminutesjours dateToDurees dateToHeuress getUsrObjs qualiteUsersisZombiesisDeadsisActifsisRecents getStatusLists whoseListInsgetListsaffLists affListIsIns affListAmissaffInfoss affUserListsaffZombiesLists affActListsaffSynthsaffsurlt1surlt2surlt3surlt4surlt5((smemsusrsafulisnbhs getUsrObjsisZombies whoseListInsgetListsincsaffListsisActifs dateToDurees dateToHeuress affListIsIns qualiteUsersnoutcsisDeadsoutcstimegmtsisRecents getStatusListsScript (Python)s view_htmls¦9               %#. $   //       '          '  (s view_html(s view_html((sScript (Python)ssq U func_defaultsq(UnopeqUoffqhUonqU3tqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq usbU_dav_writelocksq!(U @Öq"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Uxavq)]q*UOwnerq+asUidq,U view_htmlq-U_paramsq.UCmem,instance,usr='nope',afuli='off',zombli='off',actli='on',nbh='3'q/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4KU co_varnamesq5(Umemq6Uinstanceq7Uusrq8Uafuliq9Uzombliq:Uactliq;UnbhqUcontextq?Udicoq@UincqAUoutcqBUnoutcqCUDateTimeqDUtimegmtqEUsecondeqFUminuteqGUjourqHU dateToDureeqIU dateToHeuresqJU getUsrObjqKU qualiteUserqLUisZombieqMUisDeadqNUisActifqOUisRecentqPU getStatusListqQU whoseListInqRUgetListqSUaffListqTU affListIsInqUU affListAmisqVUaffInfosqWU affUserListqXUaffZombiesListqYU affActListqZUaffSynthq[Uaffq\Uurlt1q]Uurlt2q^Uurlt3q_Uurlt4q`Uurlt5qatqbubu. >ü((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T~# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() lieu=mem['parent'] url_lieu=mem['parent_url'] obj=lieu[idobj] if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' # EXEMPLE MODIFICATION obj.manage_changeProperties(exemple=exemple) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../') q U_codeq Tzc@s d„ZdS(Nc Cs±t}t}||tdƒdƒƒ}||dƒ}||dƒ} |||ƒ} ||dƒdjodSn|| dƒd |ƒ|||td ƒd ƒd ƒd ƒdS(Nszwo_libs mem_mod_datasparents parent_urlsdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !smanage_changePropertiessexemplesREQUESTsRESPONSEsredirects../../( s _getitem_s_getitems _getattr_s_getattrscontextsmemslieusurl_lieusidobjsobjsexemple( sidobjsexemples _getitem_s_getitems _getattr_s_getattrscontextsmemslieusurl_lieusobj((sScript (Python)s config_oks  (s config_ok(s config_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_varnamesq!(Uidobjq"Uexempleq#U _getitem_q$U_getitemq%U _getattr_q&U_getattrq'Ucontextq(Umemq)Ulieuq*Uurl_lieuq+Uobjq,tq-U co_argcountq.KubU__ac_local_roles__q/}q0Uxavq1]q2UOwnerq3asUidq4U config_okq5U_paramsq6U idobj,exempleq7U_dav_writelocksq8(U @×q9(U Persistenceq:UPersistentMappingq;tq}((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqU¬‰PNG  IHDR*º† pHYs  šœtIMEÔ *¯ÕÒKIDATxÚcüÿÿÿ›üB@db sÎ{LÑo;Ž¡ ~ÛqŒ‰h@ ¥"K¨d*¦IX”âR„,Îø:¯›4@tã"‹©ø9(vÉ$»¬¿4rIEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqK¬u. >".((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T¾# RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() ############################################ largeur=instance.largeur hauteur=instance.hauteur color=instance.color align=instance.align title=instance.title direct=instance.direct espace=instance.espace if direct=="hr" : D="hr" if largeur=="" : largeur="100%" if hauteur=="" : hauteur="1" if color=="" : color="000000" if espace=="": espace="" else: D="vl" if largeur=="": largeur="100%" if hauteur=="": hauteur="1" if color=="": color="000000" if espace=="": espace="" # EXEMPLE DE FORMULAIRE DE MODIFICATION # Formulaire Standart print '' print '' print '' print '' print '' # Personalisation Formulaire print '' print '
    ' print '' print '' print '' if D=="hr": print '' print '
    ' print 'Longueur du trait :
    Epaisseur du trait :
    Couleur du trait :
    direction : Horizontale' print ' Verticale
    ' print '' print ' ' print '
    Alignement du trait * :' print '
         * un trait vertical est uniquement aligné à gauche.

    ' print '' else: print '
    Direction : Horizontale' print ' Verticale
    ' print '' print '
    Alignement du trait *:' print '
    ' print '
         * un trait verticale est uniquement aligné à gauche.

    Taille de l\'espace laissé après le trait uniquement pour les traits verticaux :
    ' print '' print '

    ' # Fin Formulaire Nouvel instance ######### print '' print '' print '

    ' print '' return printed q U_codeq T<c@s d„ZdS(NcbCsÔtƒ}ttdƒƒ}t|dƒ}t|dƒ} t|dƒ} t|dƒ} t|dƒ} t|dƒ} t|dƒ}| d jofd }|d jo d }n| d jo d } n| d jo d } n|d jo d }qYncd}|d jo d }n| d jo d } n| d jo d } n|d jo d }n|d|dIJ|dt|dƒdIJ|dt|dƒƒdIJ|dt|dƒƒdIJ|dt|dƒƒdIJ|dIJ|dIJ|d|dIJ|d| dIJ|d| dIJ|d joÖ|dIJ|dIJ|dIJ|d IJ|d!IJ|d"IJ|d#| d$| d%IJ| d&jo|d'IJ|d(IJn:| d)jo|d*IJ|d(IJn|d*IJ|d'IJ|d+IJ|d,IJ|d-IJnw|d.IJ|d/IJ|dIJ|d0IJ|d!IJ|d"IJ|d1IJ|d2IJ|d3IJ|d4IJ|d5|d6IJ|d7IJ|d8IJ|d9IJ|d:IJ|d;IJ|d<IJ|d=IJ|ƒSdS(>NsgetIdslargeurshauteurscolorsalignstitlesdirectsespaceshrss100%s1s000000svls(
    s(s'sXEpaisseur du trait : s`direction : Horizontales< Verticales2sHs< s
    Alignement du trait * :s
         * un trait vertical est uniquement aligné à gauche.

    s/sUDirection : HorizontalesO VerticalesGAlignement du trait *:s+s's2s–     * un trait verticale est uniquement aligné à gauche.

    s¯     Taille de l'espace laissé après le trait uniquement pour les traits verticaux : ss s

    ss(s


    s(s_print_s_prints _getattr_s containerstypemodsinstanceslargeurshauteurscolorsalignstitlesdirectsespacesDsrep(smemsrepsinstances_print_s_prints _getattr_s containerstypemodslargeurshauteurscolorsalignstitlesdirectsespacesD((sScript (Python)s config_htmls–                                                   (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @Ùq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U config_htmlq)U_paramsq*Umem, rep, instanceq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Urepq3Uinstanceq4U_print_q5U_printq6U _getattr_q7U containerq8Utypemodq9Ulargeurq:Uhauteurq;UcolorqUdirectq?Uespaceq@UDtqAubu. >¿((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tc # RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() namemod=container.title_or_id() ############################################ # PROPOSITION DE NOM POUR LE MODULE :####### exemple_titre_base="trait" exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) ############################################ # SI dernière page de formulaire de module # # Début Formulaire Nouvelle instance ####### print '
    ' print '' print 'Identifiant :

    ' if dossier.type_zwook=="skin": print '' else: print '' print '' ############################################ # Formulaire Spécial pour ce module ####### print 'Longueur du trait :

    ' print 'Epaisseur du trait :

    ' print 'Couleur du trait :

    ' print 'Direction : Horizontale' print ' Verticale

    ' print '     Espacement du trait uniquement pour les traits verticaux :

    ' print '' print '' print '' print '
    Alignement du trait * :' print '


    ' print '     * un trait vertical est uniquement aligné à gauche.

    ' # Fin Formulaire Nouvelle instance ######### print '' print '
    ' ############################################ return printed q U_codeq T? c@s d„ZdS(Nc ICs©tƒ}ttdƒƒ}ttdƒƒ}d}|} d} x8| t|dƒƒjo| d} |t | ƒ} qBW|d|dIJ|d IJ|d | d IJt|d ƒd jo|dIJn |dIJ|dt|dƒƒdIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|dIJ|d IJ|d!IJ|d"IJ|ƒSdS(#NsgetIds title_or_idstraitis objectIdsis(
    ss?Identifiant :

    s type_zwooksskins.s1s'sMLongueur du trait :

    sNEpaisseur du trait :

    sJCouleur du trait :

    sMDirection : HorizontalesC Verticale

    s·     Espacement du trait uniquement pour les traits verticaux :

    s2sms<s
    Alignement du trait * :s


    s‚     * un trait vertical est uniquement aligné à gauche.

    s0s
    ( s_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstr( smemsdossiers_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmlsD                     (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(Umemq#Udossierq$U_print_q%U_printq&U _getattr_q'U containerq(Utypemodq)Unamemodq*Uexemple_titre_baseq+U exemple_titreq,Uindiceq-Ustrq.tq/ubU__ac_local_roles__q0}q1Uxavq2]q3UOwnerq4asUidq5Unew_htmlq6U_paramsq7U mem,dossierq8U_dav_writelocksq9(U @Ûq:(U Persistenceq;UPersistentMappingqQu. > š((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Te#Récupération paramètres direct=instance.direct largeur=instance.largeur hauteur=instance.hauteur align=instance.align color=instance.color espace=instance.espace mem=context.zwo_lib.mem_data() l='' h='' co='' al='' D='' es='' if espace <> '': es=espace else: es='2' if largeur <> '': l=largeur else: l='100%' if hauteur <> '': h=hauteur else: h='1' if align <> '': al=align else: al="left" if color <> '': co=color else: co='#cccccc' s1='float:'+al+';width:'+l+';border-bottom-style:solid;border-bottom-width:'+h+'px;border-bottom-color:'+co s2='float:'+al+';width:'+l+';height:'+h+';padding:'+es+';' if direct=='hr': #aff= '
    ' aff= '
    ' else: #aff= '
    ' aff= '
    ' return aff q U_codeq T\c@s d„ZdS(NcCs§t|dƒ}t|dƒ}t|dƒ}t|dƒ}t|dƒ}t|dƒ}tttdƒdƒƒ}d } d } d } d } d }d }|d jo |}nd }|d jo |} nd } |d jo |} nd } |d jo |} nd } |d jo |} nd} d| d| d| d| }d| d| d| d|d}|djod|d}nd|d}|SdS(Nsdirectslargeurshauteursalignscolorsespaceszwo_libsmem_datass2s100%s1slefts#ccccccsfloat:s;width:s/;border-bottom-style:solid;border-bottom-width:spx;border-bottom-color:s;height:s ;padding:s;shrs
    (s _getattr_sinstancesdirectslargeurshauteursalignscolorsespacescontextsmemslshscosalsDsesss1ss2saff(smemsinstances _getattr_sdirectslargeurshauteursalignscolorsespacescontextslshscosalsDsesss1ss2saff((sScript (Python)s view_htmlsD          "& (s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"U view_htmlq#U_paramsq$U mem,instanceq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Uinstanceq-U _getattr_q.Udirectq/Ulargeurq0Uhauteurq1Ualignq2Ucolorq3Uespaceq4Ucontextq5UlUhUcoq6Ualq7UDUesq8Us1q9Us2q:Uaffq;tq Š((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T # RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type=="skin": lieu=context.zwo_info.skins[nom] url_lieu=mem['zwo_url']+'/zwo_config/skin/etape3' else: lieu=mem['rep_obj'] url_lieu=mem['rep_url']+'/zwo_admin' obj=lieu[idobj] # EXEMPLE MODIFICATION obj.manage_changeProperties(title=title) obj.manage_changeProperties(largeur=largeur) obj.manage_changeProperties(hauteur=hauteur) obj.manage_changeProperties(color=color) obj.manage_changeProperties(align=align) obj.manage_changeProperties(direct=direct) obj.manage_changeProperties(espace=espace) # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../index_html?nom='+nom) q U_codeq T_c@s d„ZdS(Nc Csvtttdƒdƒƒ} t| dƒdjodSn|djo8ttttdƒdƒ|ƒ}t| d ƒd }n#t| d ƒ}t| d ƒd }t||ƒ}t|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd|ƒt|dƒd| ƒttttdƒdƒdƒd|ƒdS(Nszwo_libsmem_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinsszwo_urls/zwo_config/skin/etape3srep_objsrep_urls /zwo_adminsmanage_changePropertiesstitleslargeurshauteurscolorsalignsdirectsespacesREQUESTsRESPONSEsredirects../../index_html?nom=(s _getattr_scontextsmems _getitem_stypesnomslieusurl_lieusidobjsobjstitleslargeurshauteurscolorsalignsdirectsespace(stypesnomsidobjstitleslargeurshauteurscolorsalignsdirectsespaces _getattr_scontextsmems _getitem_slieusurl_lieusobj((sScript (Python)s config_oks" !(s config_ok(s config_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"U config_okq#U_paramsq$UFtype, nom, idobj,title, largeur, hauteur, color, align, direct, espaceq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*K U co_varnamesq+(Utypeq,Unomq-Uidobjq.Utitleq/Ulargeurq0Uhauteurq1Ucolorq2Ualignq3Udirectq4Uespaceq5U _getattr_q6Ucontextq7Umemq8U _getitem_q9Ulieuq:Uurl_lieuq;Uobjq'((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T}# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_data() idobj=context.zwo_lib.mix_id_zope(titre) if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' if type=="skin": lieu=context.zwo_info.skins[nom] url_lieu=mem['zwo_url']+'/zwo_config/skin/etape3' txtplus='&nom='+nom else: lieu=mem['rep_obj'] url_lieu=mem['rep_url']+'/zwo_admin' txtplus='' # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId()+txtplus print '' print '

    Cet identifiant '+idobj+' est déja pris
    ' print 'Veuillez en choisir un autre
    ' print 'Redirection automatique dans 2 secondes.

    ' print 'Si la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) #lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) lieu.manage_addDTMLDocument(idobj,titre) obj=lieu[idobj] # AJOUT DES PROPRIÉTÉS OBLIGATOIRES DU MODULE obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIÉTÉS # exemple obj.manage_addProperty('largeur',largeur,'string') obj.manage_addProperty('hauteur',hauteur,'string') obj.manage_addProperty('color',color,'string') obj.manage_addProperty('align',align,'string') obj.manage_addProperty('direct',direct,'string') obj.manage_addProperty('espace',espace,'string') # AJOUT DE SOUS ELEMENTS (si dossier chois comme type uniquement) context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) q U_codeq T c@s d„ZdS(Nc Cs—tƒ} tttdƒdƒƒ} tttdƒdƒ|ƒ}t| dƒdjodSn|djoBttttdƒd ƒ|ƒ}t| d ƒd }d |}n)t| d ƒ}t| dƒd}d}|t|dƒƒjoydtt dƒƒ|}| d|dIJ| d|dIJ| dIJ| dIJ| d|dIJ| dIJ| ƒSnt|dƒ||ƒt||ƒ}t|dƒdd d!ƒt|dƒd tt dƒƒd!ƒt|dƒd"|d!ƒt|dƒd#|d!ƒt|dƒd$|d!ƒt|dƒd%|d!ƒt|dƒd&|d!ƒt|dƒd'|d!ƒttttd(ƒd)ƒd*ƒd+|d,|ƒdS(-Nszwo_libsmem_datas mix_id_zopesdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !sskinszwo_infosskinsszwo_urls/zwo_config/skin/etape3s&nom=srep_objsrep_urls /zwo_adminss objectIdss../ajout_element?type=sgetIds7s.

    Cet identifiant s est déja pris
    s"Veuillez en choisir un autre
    s6Redirection automatique dans 2 secondes.

    sGSi la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addDTMLDocumentsmanage_addPropertys type_zwookselementsstringslargeurshauteurscolorsalignsdirectsespacesREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s_print_s_prints _getattr_scontextsmemstitresidobjs _getitem_stypesnomslieusurl_lieustxtpluss containersurlsobjslargeurshauteurscolorsalignsdirectsespace(stypesnomstitreslargeurshauteursalignscolorsdirectsespaces_print_s_prints _getattr_scontextsmemsidobjs _getitem_slieusurl_lieustxtpluss containersurlsobj((sScript (Python)snew_oks>  !   %(snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU_dav_writelocksq(U @Úq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Ugregq%]q&UOwnerq'asUidq(Unew_okq)U_paramsq*U@type, nom, titre, largeur, hauteur, align, color, direct, espaceq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0K U co_varnamesq1(Utypeq2Unomq3Utitreq4Ulargeurq5Uhauteurq6Ualignq7Ucolorq8Udirectq9Uespaceq:U_print_q;U_printqUmemq?Uidobjq@U _getitem_qAUlieuqBUurl_lieuqCUtxtplusqDU containerqEUurlqFUobjqGtqHubu. >!w((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqU¦‰PNG  IHDR*º† pHYs  šœtIMEÔ 4&LÖ£GEIDATxÚcüÿÿ_ôBB hi<3ßmE"ÀñuÿÿÿÏ@`!Æv`b àL¥[i£”FQP´4žuEKã-îö‘ÅyIEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqK¦u. >"n((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Ureturn context.REQUEST q U_codeq Tc@s d„ZdS(NcCsttdƒSdS(NsREQUEST(s _getattr_scontext(s _getattr_scontext((sScript (Python)sees(see(see((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUadminq]q UOwnerq!asUidq"Ueeq#U_paramsq$UU func_codeq%(cShared.DC.Scripts.Signature FuncCode q&oq'}q((U co_argcountq)KU co_varnamesq*(U _getattr_q+htq,ubu. ># "((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T?# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_data() #~ ################## Verification des droits #################### if string.find(container.REQUEST.URL,'/zwo_bo/skin')>0: if mem['droit_edit_skin']<>1: return 'Vous n\'avez pas les droits pour cette action !' else: if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' #~ ################## end Verification des droits ################ if type=="skin": lieu=context.zwo_info.skins[nom] url_lieu=mem['zwo_url']+'/zwo_config/skin/etape3' else: lieu=mem['rep_obj'] url_lieu=mem['rep_url']+'/zwo_admin' obj=lieu[idobj] # EXEMPLE MODIFICATION obj.manage_changeProperties(propriete="nouvelle valeur") # REDIRECTION PAGE ADMIN GENERALE PAGE OU SKIN. context.REQUEST.RESPONSE.redirect('../../index_html?nom='+nom_rep) q U_codeq Tëc@s d„ZdS(Nc CsEtttdƒdƒƒ}ttdƒtttdƒdƒdƒdjo"t|dƒd jod SqŒnt|d ƒd jod Sn|d jo8ttttd ƒdƒ|ƒ} t|dƒd} n#t|dƒ} t|dƒd} t| |ƒ} t| dƒddƒttttdƒdƒdƒdt ƒdS(Nszwo_libsmem_datasfindsREQUESTsURLs /zwo_bo/skinisdroit_edit_skinis.Vous n'avez pas les droits pour cette action !sdroit_edit_dossiersskinszwo_infosskinsszwo_urls/zwo_config/skin/etape3srep_objsrep_urls /zwo_adminsmanage_changePropertiess proprietesnouvelle valeursRESPONSEsredirects../../index_html?nom=( s _getattr_scontextsmemsstrings containers _getitem_stypesnomslieusurl_lieusidobjsobjsnom_rep( stypesnomsidobjs _getattr_scontextsmemsstrings containers _getitem_slieusurl_lieusobjsnom_rep((sScript (Python)s config_oks1  !(s config_ok(s config_ok((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqU config_zwookqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptq usbU__ac_local_roles__q!}q"Uxavq#]q$UOwnerq%asUidq&U config_okq'U_paramsq(Utype, nom, idobjq)U func_codeq*(cShared.DC.Scripts.Signature FuncCode q+oq,}q-(U co_argcountq.KU co_varnamesq/(Utypeq0Unomq1Uidobjq2U _getattr_q3Ucontextq4Umemq5Ustringq6U containerq7U _getitem_q8Ulieuq9Uurl_lieuq:Uobjq;Unom_repq$Ú((U OFS.FolderqUFolderqtqNt.}q(U_objectsq(}q(U meta_typeqUImageqUidq U printer.gifq utq h (U @Üq (U OFS.Imageq UImageqtqtqQU__ac_local_roles__q}qUjamesq]qUOwnerqash UimagesqUtitleqUu. >%ó((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T:# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_data() #~ ################## Verification des droits #################### if string.find(container.REQUEST.URL,'/zwo_bo/skin')>0: if mem['droit_edit_skin']<>1: return 'Vous n\'avez pas les droits pour cette action !' else: if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' #~ ################## end Verification des droits ################ idobj=context.zwo_lib.mix_id_zope(titre) if type=="skin": lieu=context.zwo_info.skins[nom] url_lieu=mem['zwo_url']+'/zwo_config/skin/etape3' txtplus='&nom='+nom else: lieu=mem['rep_obj'] url_lieu=mem['rep_url']+'/zwo_admin' txtplus='' # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId()+txtplus print '' print '

    Cet identifiant '+idobj+' est déja pris
    ' print 'Veuillez en choisir un autre
    ' print 'Redirection automatique dans 2 secondes.

    ' print 'Si la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon Besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) #lieu.manage_addImage(idobj,data,titre) #lieu.manage_addFile(idobj, file=data, title=titre) #lieu.manage_addDTMLDocument(idobj, titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') # AJOUT D'AUTRES PROPRIETE # exemple #obj.manage_addProperty('nom_propriete','valeur default',type) # AJOUT DE SOUS ELEMENTS (si dossier chois comme type uniquement) # exemple #obj.manage_addFolder('truc','bidulle') #obj.truc.manage_addProperty('nom_propriete','valeur default',type) context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U_codeq TRc@s d„ZdS(Nc#CsXtƒ}tttdƒdƒƒ}ttdƒtttdƒdƒdƒdjo"t|dƒd jod Sq•nt|d ƒd jod Sntttdƒd ƒ|ƒ} |d joBttttdƒdƒ|ƒ} t|dƒd} d|}n)t|dƒ} t|dƒd} d}| t| dƒƒjoydttdƒƒ|}|d|dIJ|d| dIJ|dIJ|dIJ|d |d!IJ|d"IJ|ƒSnt| d#ƒ| |ƒt| | ƒ}t|d$ƒd%d&d'ƒt|d$ƒd&ttdƒƒd'ƒttttdƒd(ƒd)ƒd*|d+| ƒdSdS(,Nszwo_libsmem_datasfindsREQUESTsURLs /zwo_bo/skinisdroit_edit_skinis.Vous n'avez pas les droits pour cette action !sdroit_edit_dossiers mix_id_zopesskinszwo_infosskinsszwo_urls/zwo_config/skin/etape3s&nom=srep_objsrep_urls /zwo_adminss objectIdss../ajout_element?type=sgetIds7s.

    Cet identifiant s est déja pris
    s"Veuillez en choisir un autre
    s6Redirection automatique dans 2 secondes.

    sGSi la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstringsRESPONSEsredirects../../place?nom=s&obj=(s_print_s_prints _getattr_scontextsmemsstrings containers _getitem_stitresidobjstypesnomslieusurl_lieustxtplussurlsobj(stypesnomstitres_print_s_prints _getattr_scontextsmemsstrings containers _getitem_sidobjslieusurl_lieustxtplussurlsobj((sScript (Python)snew_oks: 1  !   + ((snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqU config_zwookqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerq usbU_dav_writelocksq!(U @Ýq"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Ugregq)]q*UOwnerq+asUidq,Unew_okq-U_paramsq.Utype, nom, titreq/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4KU co_varnamesq5(Utypeq6Unomq7Utitreq8U_print_q9U_printq:U _getattr_q;UcontextqU containerq?U _getitem_q@UidobjqAUlieuqBUurl_lieuqCUtxtplusqDUurlqEUobjqFtqGubu. >&((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq U{# Example code: ses=context.REQUEST.SESSION ses ['vprint']='1' return context.REQUEST.RESPONSE.redirect(ses ['urlprint']) q U_codeq Týc@s d„ZdS(NcCsZtttdƒdƒ}dt|ƒdsq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_argcountq!KU co_varnamesq"(U _getattr_q#hUsesq$U_write_q%U _getitem_q&tq'ubU__ac_local_roles__q(}q)Uadminq*]q+UOwnerq,asUidq-Utprintq.U_dav_writelocksq/(U @Þq0(U Persistenceq1UPersistentMappingq2tq3tq4Qu. >''((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T‘aff='' request=context.REQUEST url=request.URL+'?'+request.QUERY_STRING ses=context.REQUEST.SESSION ses ['urlprint']=url img1=mem['racine_url']+'/zwo_modules/browsing_modes/images/printer.gif' aff=aff+'' return aff q U_codeq T›c@s d„ZdS(Nc Cs›d}ttdƒ}t|dƒdt|dƒ}tttdƒdƒ}|t|ƒd( saffs _getattr_scontextsrequestsurlssess_write_s _getitem_smemsimg1( smemsinstancesaffs _getattr_scontextsrequestsurlssess_write_s _getitem_simg1((sScript (Python)s view_htmls #(s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U @ßq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U view_htmlq)U_paramsq*U mem,instanceq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Uinstanceq3Uaffq4U _getattr_q5Ucontextq6Urequestq7Uurlq8Usesq9U_write_q:U _getitem_q;Uimg1q(Ü((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÂ#~ ################## Verification des droits #################### if string.find(container.REQUEST.URL,'/zwo_bo/skin')>0: if mem['droit_edit_skin']<>1: return 'Vous n\'avez pas les droits pour cette action !' else: if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' #~ ################## end Verification des droits ################ # RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() ############################################ # EXEMPLE DE FORMULAIRE DE MODIFICATION # Formulaire Standart print '
    ' print 'Identifiant : '+instance.title+'

    ' print '' print '' print '' # Personalisation Formulaire #print 'Propriété :

    ' print 'Pas de config pour ce module !' # Fin Formulaire #print '' print '


    ' # EXEMPLE DE LIENS VERS UN SCRIPT INTERMDAIRE script_i """ url_loc="zwo_modules/"+typemod+'/' url_params='type='+rep.type_zwook+'&nom='+rep.getId()+'idobj='+instance.getId() print 'Script de configuration autre ... CLIQUER ICI' """ return printed q U_codeq Tèc@s d„ZdS(Nc Cs3tƒ}ttdƒtttdƒdƒdƒdjo"t|dƒdjodSqznt|d ƒdjodSnttd ƒƒ} |d | d IJ|d t|dƒdIJ|dt|dƒdIJ|dt|d ƒƒdIJ|dt|d ƒƒdIJ|dIJ|dIJd|ƒSdS(NsfindsREQUESTsURLs /zwo_bo/skinisdroit_edit_skinis.Vous n'avez pas les droits pour cette action !sdroit_edit_dossiersgetIds(
    sIdentifiant : stitles

    s(s'CLIQUER ICI' ( s_print_s_prints _getattr_sstrings containers _getitem_smemstypemodsinstancesrep( smemsrepsinstances_print_s_prints _getattr_sstrings containers _getitem_stypemod((sScript (Python)s config_htmls 1   (s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqU config_zwookqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextq usbU_dav_writelocksq!(U @àq"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Uxavq)]q*UOwnerq+asUidq,U config_htmlq-U_paramsq.Umem, rep, instanceq/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4KU co_varnamesq5(Umemq6Urepq7Uinstanceq8U_print_q9U_printq:U _getattr_q;UstringqUtypemodq?tq@ubu. >)’((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TÌ#~ ################## Verification des droits #################### if string.find(container.REQUEST.URL,'/zwo_bo/skin')>0: if mem['droit_edit_skin']<>1: return 'Vous n\'avez pas les droits pour cette action !' else: if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' #~ ################## end Verification des droits ################ # RECUPERATION DU TYPE DE MODULE CONCERNE :# typemod=container.getId() namemod=container.title_or_id() ############################################ # PROPOSITION DE NOM POUR LE MODULE :####### exemple_titre_base=namemod exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) ############################################ # SI dernière page de formulaire de module # # Début Formulaire Nouvel instance ####### print '' print '' print 'Identifiant :

    ' if dossier.type_zwook=="skin": print '' else: print '' print '' ############################################ # Formulaire Spécial pour ce module ####### #print '
    EXEMPLE
    ' ############################################ # Fin Formulaire Nouvel instance ######### print '' print '
    ' ############################################ return printed q U_codeq Tcc@s d„ZdS(Nc#Cs„tƒ}ttdƒtttdƒdƒdƒdjo"t|dƒdjodSqznt|d ƒdjodSnttd ƒƒ}ttd ƒƒ} | } | } d} x8| t|d ƒƒjo| d} | t | ƒ} q³W|d |dIJ|dIJ|d| dIJt|dƒdjo|dIJn |dIJ|dt|d ƒƒdIJ|dIJ|dIJ|ƒSdS(NsfindsREQUESTsURLs /zwo_bo/skinisdroit_edit_skinis.Vous n'avez pas les droits pour cette action !sdroit_edit_dossiersgetIds title_or_ids objectIdss(
    ss?Identifiant :

    s type_zwooksskins.s1s's0s
    (s_print_s_prints _getattr_sstrings containers _getitem_smemstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstr(smemsdossiers_print_s_prints _getattr_sstrings containers _getitem_stypemodsnamemodsexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmls0 1      (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqU config_zwookqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextq usbU_dav_writelocksq!(U @áq"(U Persistenceq#UPersistentMappingq$tq%tq&QU__ac_local_roles__q'}q(Uxavq)]q*UOwnerq+asUidq,Unew_htmlq-U_paramsq.U mem,dossierq/U func_codeq0(cShared.DC.Scripts.Signature FuncCode q1oq2}q3(U co_argcountq4KU co_varnamesq5(Umemq6Udossierq7U_print_q8U_printq9U _getattr_q:Ustringq;U containerqUnamemodq?Uexemple_titre_baseq@U exemple_titreqAUindiceqBUstrqCtqDubu. >*“((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqU‰PNG  IHDR*º† pHYs  šœtIMEÔ 8kÙŽaIDATxÚcüÿÿ_ôBB hi<3ßmE"ÀñuYàšð¨ƒXË‚ÆÇj5„Á‚U«~\˜€‰hÀ‚ÇvìJ!V-Gv— «—±ÚÀ‚+ +ÅãbR‹ Çᶺ'hIH ·IEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqKÂu. >Ë(d((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TYru=mem['rep_url'] listemois=['janvier','février','mars','avril','mai','juin','juillet','août','septembre','octobre','novembre','décembre'] monmois=listemois[mois-1] am=int(annee) mm=int(mois)-1 if mm==0: mm=12 am=am-1 mp=int(mois)+1 ap=int(annee) if mp==13: mp=1 ap=ap+1 actu=DateTime() ma=int(actu.mm()) ja=int(actu.dd()) if mois<10: m0='' else: m0='' if annee<10: a0="0" else: a0='' strdate=m0+str(mois)+'/15/20'+a0+str(annee) dataCal=DateTime(strdate) m=int(dataCal.mm()) j=int(dataCal.dd()) s=dataCal.dow() premierlundi=(j-s+8)%7 diff=j-premierlundi dateprem=dataCal-int(diff) if premierlundi>1: dateprem=dateprem-7 m2=m datecase=dateprem print '' print '' print '' print '' #print '
    ' print '' print '' print '' print '' print '
    << '%(ru+'/zwo_modules/minicalendar/gestmini',str(mm),str(am)) print '' print '' print m0+monmois+" 20"+a0+str(annee) #print m0+str(mois)+" 20"+a0+str(annee) print ' >>'%(ru+'/zwo_modules/minicalendar/gestmini',str(mp),str(ap)) print '
    ' print '
    ' #print '' #print '' #print '' print '' print '' print '' print '' print '' print '' print '' print '' print '' while m==m2: print '' for a in range(7): m2=int(datecase.mm()) j2=int(datecase.dd()) if m2==m: cla_rdv='' fold=context.zwo_info.modules.calendrier idu='u_'+mem['user_id'] if idu in fold.objectIds('Folder'): f=fold[idu] if str(annee) in f.objectIds('Folder'): f=f[str(annee)] if str(m2) in f.objectIds('Folder'): f=f[str(m2)] if str(j2) in f.objectIds('Folder'): cla_rdv='class="alternate_backgroundr"' ## tu peux rajouter une classe dans le css et la mettre à la place de flashy_background que j'ai mis ici f=fold['tous'] if str(annee) in f.objectIds('Folder'): f=f[str(annee)] if str(m2) in f.objectIds('Folder'): f=f[str(m2)] if str(j2) in f.objectIds('Folder'): cla_rdv='class="alternate_backgroundr"' ## tu peux rajouter une classe dans le css et la mettre à la place de flashy_background que j'ai mis ici for r in mem['user_roles_id']: gid='g_'+r if gid in fold.objectIds(): f=fold[gid] if str(annee) in f.objectIds('Folder'): f=f[str(annee)] if str(m2) in f.objectIds('Folder'): f=f[str(m2)] if str(j2) in f.objectIds('Folder'): cla_rdv='class="alternate_backgroundr"' ## tu peux rajouter une classe dans le css et la mettre à la place de falshy_background que j'ai mis ici print '' datecase=datecase+1 print '' print '
    ' #print '' #print monmois+" 20"+a0+str(annee) #print '' #print '
    LMaMeJVSD
    ' print '' print datecase.dd() print "" else: print '' print datecase.dd() print '
    ' return printed q U_codeq Tc@s d„ZdS(Nc+CsÌtƒ}t|dƒ}dddddddd d d d d g }t||dƒ}t|ƒ} t|ƒd} | djod} | d} nt|ƒd} t|ƒ} | djod} | d} ntƒ}tt|dƒƒƒ}tt|dƒƒƒ}|djo d}nd}|djo d}nd}|t|ƒd|t|ƒ}t|ƒ}tt|dƒƒƒ}tt|dƒƒƒ}t|dƒƒ}||dd}||}|t|ƒ}|djo|d}n|}|}|dIJ|dIJ|dIJ|dIJ|dIJ|d |d!t| ƒt| ƒfIJ|d"IJ|d#IJ|d$|d%t|ƒd&t|ƒd'IJ|||d(|t|ƒIJ|d"IJ|d)IJ|d*|d!t| ƒt| ƒfIJ|d"IJ|d+IJ|d,IJ|d-IJ|d.IJ|d/IJ|d0IJ|d1IJ|d2IJ|d3IJ|d4IJ|d5IJ|d-IJx7||jo)|dIJxt t!dƒƒD]ú}"tt|dƒƒƒ}tt|dƒƒƒ}#||joƒd}$tttt%d6ƒd7ƒd8ƒ}&d9t|d:ƒ}'|'t|&d;ƒd<ƒjoµt|&|'ƒ}(t|ƒt|(d;ƒd<ƒjo€t|(t|ƒƒ}(t|ƒt|(d;ƒd<ƒjoEt|(t|ƒƒ}(t|#ƒt|(d;ƒd<ƒjo d=}$qðqôqønt|&d>ƒ}(t|ƒt|(d;ƒd<ƒjo€t|(t|ƒƒ}(t|ƒt|(d;ƒd<ƒjoEt|(t|ƒƒ}(t|#ƒt|(d;ƒd<ƒjo d=}$q¥q©nxõt t|d?ƒƒD]Þ})d@|)}*|*t|&d;ƒƒjoµt|&|*ƒ}(t|ƒt|(d;ƒd<ƒjo€t|(t|ƒƒ}(t|ƒt|(d;ƒd<ƒjoEt|(t|ƒƒ}(t|#ƒt|(d;ƒd<ƒjo d=}$q•q™qq¿q¿W|dAIJ|$djoD||#jo)||jo|dBIJqø|dCIJq|dCIJn ||$IJ|dDIJ|d$|dEt|#ƒdFt|ƒd&t|ƒd'IJ|t|dƒƒIJ|dGIJn!|dHIJ|t|dƒƒIJ|d,IJ|d}qªW|d-IJq€W|dIIJ|ƒSdS(JNsrep_urlsjanviersfévriersmarssavrilsmaisjuinsjuilletsaoûts septembresoctobresnovembresdécembreiii i smmsddi ss0s/15/20sdowiisss9ss"s1s2s2s1s1s1s1szwo_infosmoduless calendriersu_suser_ids objectIdssFoldersclass="alternate_backgroundr"stouss user_roles_idsg_s*
    sBs-s,
    << s"/zwo_modules/minicalendar/gestminiss s 20s. >>s
    s
    LMaMeJVSDs$/zwo_modules/calendrier/new_event?j=s&m=ssIs
    (+s_print_s_prints _getitem_smemsrus listemoissmoissmonmoissintsanneesamsmmsmpsapsDateTimesactus _getattr_smasjasm0sa0sstrsstrdatesdataCalsmsjsss premierlundisdiffsdatepremsm2sdatecases _getiter_srangesasj2scla_rdvscontextsfoldsidusfsrsgid(+smemsmoissannees_print_s_prints _getitem_srus listemoissmonmoissintsamsmmsmpsapsDateTimesactus _getattr_smasjasm0sa0sstrsstrdatesdataCalsmsjsss premierlundisdiffsdatepremsm2sdatecases _getiter_srangesasj2scla_rdvscontextsfoldsidusfsrsgid((sScript (Python)saffichage_moissæ*         "        '  .   '               !"""""" """      <   (saffichage_mois(saffichage_mois((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U AFq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavinskyq%]q&UOwnerq'asUidq(Uaffichage_moisq)U_paramsq*Umem,mois,anneeq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Umoisq3Uanneeq4U_print_q5U_printq6U _getitem_q7Uruq8U listemoisq9Umonmoisq:Uintq;UamqUapq?UDateTimeq@UactuqAU _getattr_qBUmaqCUjaqDUm0qEUa0qFUstrqGUstrdateqHUdataCalqIUmUjUsU premierlundiqJUdiffqKUdatepremqLUm2qMUdatecaseqNU _getiter_qOUrangeqPUaUj2qQUcla_rdvqRUcontextqSUfoldqTUiduqUUfUrUgidqVtqWubu. >ÌÜ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T*# RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() if mem['droit_edit_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' idobj=context.zwo_lib.mix_id_zope(titre) if type=="skin": skin=context.zwo_info.skins[nom] lieu=skin else: dossier=mem['rep_obj'] lieu=dossier url_lieu=lieu.absolute_url() # REDIRECTION SI IDENTIFIANT MAL CHOISI if idobj in lieu.objectIds(): url='../ajout_element?type='+container.getId() print '' print '

    Cet identifiant '+idobj+' est déja pris
    ' print 'Veuillez en choisir un autre
    ' print 'Redirection automatique dans 2 secondes.

    ' print 'Si la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle' print '' return printed # CREATION INSTANCE MODULE (dossier, image, DTML Document ou Fichier selon besoin. Folder conseillé en cas de doute) lieu.manage_addFolder(idobj,titre) obj=lieu[idobj] # AJOUT DES PROPRIETES OBLIGATOIRE DU MODULES obj.manage_addProperty('type_zwook','element','string') obj.manage_addProperty('element',container.getId(),'string') context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U_codeq T_c@s d„ZdS(Nc Csétƒ}tttdƒdƒƒ}t|dƒdjodSntttdƒdƒ|ƒ} |djo+ttttdƒd ƒ|ƒ} | } nt|d ƒ} | } t| d ƒƒ} | t| d ƒƒjoud ttdƒƒ}|d|dIJ|d| dIJ|dIJ|dIJ|d|dIJ|dIJ|ƒSnt| dƒ| |ƒt| | ƒ}t|dƒdddƒt|dƒdttdƒƒdƒttttdƒdƒdƒd |d!| ƒdSdS("Nszwo_libs mem_mod_datasdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !s mix_id_zopesskinszwo_infosskinssrep_objs absolute_urls objectIdss../ajout_element?type=sgetIds7s.

    Cet identifiant s est déja pris
    s"Veuillez en choisir un autre
    s6Redirection automatique dans 2 secondes.

    sGSi la Redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuellessmanage_addFoldersmanage_addPropertys type_zwookselementsstringsREQUESTsRESPONSEsredirects../../place?nom=s&obj=(s_print_s_prints _getattr_scontextsmems _getitem_stitresidobjstypesnomsskinslieusdossiersurl_lieus containersurlsobj(stitrestypesnoms_print_s_prints _getattr_scontextsmems _getitem_sidobjsskinslieusdossiersurl_lieus containersurlsobj((sScript (Python)snew_oks2  !    +((snew_ok(snew_ok((sScript (Python)ssq U func_defaultsqNU _proxy_rolesq(UManagerqtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU func_codeq (cShared.DC.Scripts.Signature FuncCode q!oq"}q#(U co_argcountq$KU co_varnamesq%(Utitreq&Utypeq'Unomq(U_print_q)U_printq*U _getattr_q+Ucontextq,Umemq-U _getitem_q.Uidobjq/Uskinq0Ulieuq1Udossierq2Uurl_lieuq3U containerq4Uurlq5Uobjq6tq7ubU__ac_local_roles__q8}q9Ugregq:]q;UOwnerqU_paramsq?Utitre,type,nomq@U_dav_writelocksqA(U AGqB(U PersistenceqCUPersistentMappingqDtqEtqFQu. >ÍJ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tif a==-1: actu=DateTime() m=int(actu.mm()) a=int(actu.yy()) else: m=int(m) a=int(a) ses=context.REQUEST.SESSION if ses.has_key('temp_m'): ms=ses['temp_m'] as=ses['temp_a'] m=int(ms) a=int(as) print context.affichage_mois(mem,m,a) return printed q U_codeq Tnc@sd d d„ZdS(NicCsþtƒ}|d jo=tƒ}tt|dƒƒƒ}tt|dƒƒƒ}nt|ƒ}t|ƒ}tttdƒdƒ} t| dƒdƒo:t | dƒ} t | dƒ} t| ƒ}t| ƒ}n|ttd ƒ|||ƒIJ|ƒSdS( NismmsyysREQUESTsSESSIONshas_keystemp_mstemp_asaffichage_mois(s_print_s_printsasDateTimesactusints _getattr_smscontextssess _getitem_smssassmem(smemsmsas_print_s_printsDateTimesactusints _getattr_scontextssess _getitem_smssas((sScript (Python)scalendars    (scalendar(scalendar((sScript (Python)ssq U func_defaultsq(JÿÿÿÿJÿÿÿÿtqU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqusbU__ac_local_roles__q}qUxavinskyq ]q!UOwnerq"asUidq#Ucalendarq$U_paramsq%Umem,m=-1, a=-1q&U func_codeq'(cShared.DC.Scripts.Signature FuncCode q(oq)}q*(U co_argcountq+KU co_varnamesq,(Umemq-UmUaU_print_q.U_printq/UDateTimeq0Uactuq1Uintq2U _getattr_q3Ucontextq4Usesq5U _getitem_q6Umsq7Uasq8tq9ubu. >ÎE((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq U+print context.calendar(mem) return printed q U_codeq T™c@s d„ZdS(NcCs-tƒ}|ttdƒ|ƒIJ|ƒSdS(Nscalendar(s_print_s_prints _getattr_scontextsmem(smemsinstances_print_s_prints _getattr_scontext((sScript (Python)s view_htmls"(s view_html(s view_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUxavq]q UOwnerq!asUidq"U view_htmlq#U_paramsq$U mem,instanceq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Umemq,Uinstanceq-U_print_q.U_printq/U _getattr_q0Ucontextq1tq2ubu. >Ïk((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq U6print 'Pas d\'edition pour ce module.' return printed q U_codeq Tqc@s d„ZdS(NcCstƒ}|dIJ|ƒSdS(NsPas d'edition pour ce module.(s_print_s_print(smemsrepsinstances_print_s_print((sScript (Python)s config_htmls(s config_html(s config_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_m_selfqUscriptqU name_contextqUcontextqU name_subpathqUtraverse_subpathqUname_containerqU containerqusbU func_codeq(cShared.DC.Scripts.Signature FuncCode qoq}q (U co_varnamesq!(Umemq"Urepq#Uinstanceq$U_print_q%U_printq&tq'U co_argcountq(KubU__ac_local_roles__q)}q*Uxavq+]q,UOwnerq-asUidq.U config_htmlq/U_paramsq0Umem, rep, instanceq1U_dav_writelocksq2(U AHq3(U Persistenceq4UPersistentMappingq5tq6tq7Qu. >Ð Þ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq TŸ# typemod est l'id du module et namemod est son title typemod=container.getId() namemod=container.title_or_id() # proposition de nom pour l'element exemple_titre_base=namemod exemple_titre=exemple_titre_base indice=0 while exemple_titre in dossier.objectIds(): indice=indice+1 exemple_titre=exemple_titre_base+str(indice) # début formulaire HTML simple de création d'élément print '
    ' print '' print 'Identifiant :

    ' # suite standart print '' if dossier.type_zwook=="skin": print '' else: print '' print '' print '
    ' return printed q U_codeq T"c@s d„ZdS(Nc Cstƒ}ttdƒƒ}ttdƒƒ}|}|} d} x8| t|dƒƒjo| d} |t | ƒ} qBW|d|dIJ|dIJ|d | d IJ|d IJt|d ƒd jo|dIJn |dIJ|dt|dƒƒdIJ|dIJ|ƒSdS(NsgetIds title_or_idis objectIdsis(
    ss?Identifiant :

    s0s type_zwooksskins.s1s's
    ( s_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesdossiersstr( smemsdossiers_print_s_prints _getattr_s containerstypemodsnamemodsexemple_titre_bases exemple_titresindicesstr((sScript (Python)snew_htmls&      (snew_html(snew_html((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(Uname_containerqU containerqU name_m_selfqUscriptqU name_subpathqUtraverse_subpathqU name_contextqUcontextqusbU_dav_writelocksq(U AIq(U PersistenceqUPersistentMappingq tq!tq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(Unew_htmlq)U_paramsq*U mem,dossierq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Umemq2Udossierq3U_print_q4U_printq5U _getattr_q6U containerq7Utypemodq8Unamemodq9Uexemple_titre_baseq:U exemple_titreq;Uindicequbu. >Ñœ((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Temem=context.zwo_lib.mem_mod_data() if mem['droit_vue_dossier']<>1: return 'Vous n\'avez pas les droits pour cette action !' ses=context.REQUEST.SESSION ses ['temp_m']=str(m) ses ['temp_a']=str(a) print context.zwo_lib.standard_html_header(mem) print context.zwo_lib.standard_html_home(mem) print context.zwo_lib.standard_html_footer(mem) return printed q U_codeq T¤c@s d„ZdS(Nc Cs÷tƒ}tttdƒdƒƒ}t|dƒdjodSntttdƒdƒ}t|ƒt |ƒdsq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUadminq]q UOwnerq!asUidq"Ugestminiq#U_paramsq$Um,aq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(UmUaU_print_q,U_printq-U _getattr_q.hUmemq/U _getitem_q0Usesq1Ustrq2U_write_q3tq4ubu. >Òu((U OFS.ImageqUImageqtqNt.}q(U preconditionqUUtitleqU icone.pngqUdataqU¤‰PNG  IHDR*º† pHYs  šœtIMEÔ ‘—¶žCIDATxÚcüÿÿÿû5² „€`ÈcÆw«eˆ,pMD) yŒì\\&¢ JÞ­–ùO€zkàÜ:ðÞ"&J!v4u5§f‰§IEND®B`‚q Uheightq KUwidthq KU content_typeq U image/pngq U__name__qhU__ac_local_roles__q}qUp4q]qUOwnerqasUsizeqK¤u. >6Ó((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq Tnmem=context.zwo_lib.mem_mod_data() rep=mem['rep_obj'] instance=rep[instid] #recuperation parametres grpsproposer=instance.grpsproposer grpspublier=instance.grpspublier grpscomments=instance.grpscomments grpsadmin=instance.grpsadmin modid=container.getId() instid=instance.getId() #enablehtml=instance.enablehtml #enablejavascript=instance.enablejavascript #~ controle des permissions perm_proposer=0 perm_publier=0 perm_comments=0 perm_admin=0 roli=mem['user_roles_id'] for g in roli: if g in grpsproposer: perm_proposer=1 if g in grpspublier: perm_publier=1 if g in grpscomments: perm_comments=1 if g in grpsadmin: perm_admin=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsproposer: perm_proposer=1 if 'Anonymous' in grpspublier: perm_publier=1 if 'Anonymous' in grpscomments: perm_comments=1 if 'Anonymous' in grpsadmin: perm_admin=1 if mem['droit_edit_dossier']==1: perm_admin=1 if perm_admin==1: perm_publier=1 perm_comments=1 #~ def obj obj=instance[id] comli=string.split(com,',') for c in comli: obj=obj[c] titre=obj.titre article='' i=0 article='' for l in obj.comment: article=article+l if i+1<>len(obj.article): article=article+'\n' i=i+1 print context.zwo_lib.standard_html_header(mem) desti='editer_comment_ok' #~ editer if perm_admin==1: print '

    Editer un commentaire

    ' print '
    ' print '

    ' print '' print '' print '' print '' #print '' print '
    ' print context.zwo_lib.standard_html_footer(mem) return printed q U_codeq T¼ c@s d„ZdS(Nc"/Cs”tƒ}tttdƒdƒƒ}t|dƒ} t| |ƒ} t| dƒ} t| dƒ} t| dƒ} t| dƒ}tt dƒƒ}t| dƒƒ}d }d }d }d }t|d ƒ}xpt|ƒD]b}|| jo d }n|| jo d }n|| jo d }n||jo d }qÖqÖWd |jo`d | jo d }nd | jo d }nd | jo d }nd |jo d }q©nt|dƒd jo d }n|d jod }d }nt| |ƒ}ttdƒ|dƒ}x#t|ƒD]}t||ƒ}qWt|dƒ}d}d }d}x_tt|dƒƒD]H}||}|d t t|dƒƒjo|d}n|d }qjW|tttdƒdƒ|ƒIJd}!|d jo||dIJ|d|!dIJ|d|dIJ|d|dIJ|d|dIJ|d|dIJ|d IJ|d!IJn|tttdƒd"ƒ|ƒIJ|ƒSdS(#Nszwo_libs mem_mod_datasrep_objs grpsproposers grpspubliers grpscommentss grpsadminsgetIdis user_roles_idis Authenticateds Anonymoussdroit_edit_dossierssplits,stitresscommentsarticles sstandard_html_headersediter_comment_oks

    Editer un commentaire

    s
    s6

    s&s
    sstandard_html_footer("s_print_s_prints _getattr_scontextsmems _getitem_srepsinstidsinstances grpsproposers grpspubliers grpscommentss grpsadmins containersmodids perm_proposers perm_publiers perm_commentss perm_adminsrolis _getiter_sgsidsobjsstringscomscomliscstitresarticlesislslensdesti("sidsinstidscoms_print_s_prints _getattr_scontextsmems _getitem_srepsinstances grpsproposers grpspubliers grpscommentss grpsadmins containersmodids perm_proposers perm_publiers perm_commentss perm_adminsrolis _getiter_sgsobjsstringscomliscstitresarticlesislslensdesti((sScript (Python)sediter_comments‚$                      "   "(sediter_comment(sediter_comment((sScript (Python)ssq U func_defaultsqNU _bind_namesq(cShared.DC.Scripts.Bindings NameAssignments qoq}qU_asgnsq}q(U name_contextqUcontextqU name_subpathqUtraverse_subpathqU name_m_selfqUscriptqUname_containerqU containerqusbU__ac_local_roles__q}qUgregq]q UOwnerq!asUidq"Uediter_commentq#U_paramsq$Uid, instid, comq%U func_codeq&(cShared.DC.Scripts.Signature FuncCode q'oq(}q)(U co_argcountq*KU co_varnamesq+(Uidq,Uinstidq-Ucomq.U_print_q/U_printq0U _getattr_q1Ucontextq2Umemq3U _getitem_q4Urepq5Uinstanceq6U grpsproposerq7U grpspublierq8U grpscommentsq9U grpsadminq:U containerq;UmodidqU perm_commentsq?U perm_adminq@UroliqAU _getiter_qBUgUobjqCUstringqDUcomliqEUcUtitreqFUarticleqGUiUlUlenqHUdestiqItqJubu. >F,((U#Products.PythonScripts.PythonScriptqU PythonScriptqtqNt.}q(U Python_magicqU;ò qUerrorsq)Uwarningsq)U Script_magicq KU_bodyq T)mem=context.zwo_lib.mem_mod_data() rep=mem['rep_obj'] instance=rep[instid] #recuperation parametres grpsproposer=instance.grpsproposer grpspublier=instance.grpspublier grpscomments=instance.grpscomments grpsadmin=instance.grpsadmin modid=container.getId() instid=instance.getId() #enablehtml=instance.enablehtml #enablejavascript=instance.enablejavascript #~ controle des permissions perm_proposer=0 perm_publier=0 perm_comments=0 perm_admin=0 roli=mem['user_roles_id'] for g in roli: if g in grpsproposer: perm_proposer=1 if g in grpspublier: perm_publier=1 if g in grpscomments: perm_comments=1 if g in grpsadmin: perm_admin=1 if 'Authenticated' not in roli: if 'Anonymous' in grpsproposer: perm_proposer=1 if 'Anonymous' in grpspublier: perm_publier=1 if 'Anonymous' in grpscomments: perm_comments=1 if 'Anonymous' in grpsadmin: perm_admin=1 if mem['droit_edit_dossier']==1: perm_admin=1 if perm_admin==1: perm_publier=1 perm_comments=1 if str(flag)=='1': obj=rep.zwo_standby_content[modid][id] else: obj=instance[id] titre=obj.titre article='' i=0 article='' for l in obj.article: article=article+l if i+1<>len(obj.article): article=article+'\n' i=i+1 print context.zwo_lib.standard_html_header(mem) if str(sb)=='1': desti='post_ok' else: desti='edit_ok' #~ editer if perm_admin==1: print '

    Editer une news

    ' print '
    ' print 'Titre (1):
    ' print '

    ' if obj.hasProperty('resume'): print 'Résumé (2):
    ' res=string.join(obj.resume,' ') print '

    ' print 'Article (2):
    ' print '

    ' alt='' url='' hauteur='' largeur='' bordure='' img_align='left' if 'image' in obj.objectIds(): print '

    ' alt=obj.image.alt url=obj.image.url hauteur=obj.image.hauteur largeur=obj.image.largeur bordure=obj.image.bordure img_align=obj.image.img_align print '' print 'Image : ' print '' print '' print '' print '' print '' print '
    ' print '' print '
    ' print 'Description (alt) * : ' print '' print '' print '
    ' print 'Lien (url) * : ' print '' print '' print '
    ' print 'Largeur * : ' print '' print '' print '
    ' print 'Hauteur * : ' print '' print '' print '
    ' print 'Bordure * : ' print '' print '' print '
    ' print '

    Alignement de l\'image : ' if img_align=="left": print 'Gauche ' print 'Droite' elif img_align=="right": print 'Gauche ' print 'Droite' print '

    ' print '' print '

    ' print '

    ' print '(1) Titre de la news
    ' print '(2) Texte complet de la news accessible en cliquant sur [ Lire ]' print '

    ' print '' print '' print '' print '
    ' print context.zwo_lib.standard_html_footer(mem) return printed q U_codeq TØc@sddd„ZdS(Ns0sc)·Cstƒ}tttdƒdƒƒ}t|dƒ} t| |ƒ} t| dƒ} t| dƒ} t| dƒ}t| dƒ}tt dƒƒ}t| dƒƒ}d }d }d }d }t|d ƒ}xpt|ƒD]b}|| jo d }n|| jo d }n||jo d }n||jo d }qÖqÖWd |jo`d | jo d }nd | jo d }nd |jo d }nd |jo d }q©nt|dƒd jo d }n|d jod }d }nt|ƒdjo%ttt| dƒ|ƒ|ƒ}nt| |ƒ}t|dƒ}d}d }d}x_tt|dƒƒD]H}||}|d tt|dƒƒjo|d}n|d }qdW|tttdƒdƒ|ƒIJt|ƒdjo d} nd} |d joß|dIJ|d| dIJ|dIJ|d|dIJt|dƒdƒoA|d IJtt!d!ƒt|dƒd"ƒ}"|d#|"d$IJn|d%IJ|d&|d$IJd}#d}$d}%d}&d}'d'}(d(t|d)ƒƒjo»|d*tt|d(ƒd+ƒƒd,IJtt|d(ƒd-ƒ}#tt|d(ƒd.ƒ}$tt|d(ƒd/ƒ}%tt|d(ƒd0ƒ}&tt|d(ƒd1ƒ}'tt|d(ƒd2ƒ}(n|d3IJ|d4IJ|d5IJ|d6IJ|d7IJ|d8IJ|d4IJ|d9IJ|d6IJ|d:|#d;IJ|d8IJ|d4IJ|d<IJ|d6IJ|d=|$d>IJ|d8IJ|d4IJ|d?IJ|d6IJ|d@|&d>IJ|d8IJ|d4IJ|dAIJ|d6IJ|dB|%d>IJ|d8IJ|d4IJ|dCIJ|d6IJ|dD|'d>IJ|dEIJ|dFIJ|(d'jo|dGIJ|dHIJn&|(dIjo|dJIJ|dKIJn|dLIJ|dM|dNIJ|dOIJ|dPIJ|dQIJ|dRIJ|dLIJ|dS|dNIJ|dT|dNIJ|dUIJ|dVIJn|tttdƒdWƒ|ƒIJ|ƒSdS(XNszwo_libs mem_mod_datasrep_objs grpsproposers grpspubliers grpscommentss grpsadminsgetIdis user_roles_idis Authenticateds Anonymoussdroit_edit_dossiers1szwo_standby_contentstitressarticles sstandard_html_headerspost_oksedit_oks

    Editer une news

    s
    sTitre (1):
    s:

    s hasPropertysresumesRésumé (2):
    sjoins s4

    sArticle (2):
    s6