ZEXP(cOFS.Folder Folder q)tq.}q(U contributeursq)U config_okqUqQUskinqU1Unew_okqUq QUzwo_config_htmlq Uq QUidq U link_redirectq U certifwebqUouiqUtitleqUredirection vers une autre pageqUnoteqKpUversionqU1.0qU_objectsq(}q(U meta_typeqUScript (Python)qUidqUnew_okqu}q(U meta_typeqUScript (Python)qUidqU config_okqu}q (U meta_typeq!UImageq"Uidq#U icone.pngq$u}q%(U meta_typeq&UScript (Python)q'Uidq(U zwo_new_htmlq)u}q*(h&h'h(Uzwo_config_htmlq+u}q,(h&h'h(U zwo_view_htmlq-utq.U descriptionq/(Uvmodule qui provoque une redirection sur l'url spcifi ou sur le premier des folders fils si aucune url n'est spcifiq0tq1U certifdevq2Uouiq3U changelogq4)U__ac_local_roles__q5}q6Udevq7U100%q8U zwo_view_htmlq9Uq:QU_ownerq;(]q<(Uvirtualq=Udemo_zwook.comq>U acl_usersq?eUrage2000q@tqAUzone_principaleqBU1U _propertiesqC(}qD(UtypeqEUstringqFUidqGUtitleqHUmodeqIUwu}qJ(UtypeqKUstringqLUidqMU experimentalqNu}qO(UtypeqPUintqQUidqRUnoteqSu}qT(hPUstringqUhRUversionqVu}qW(hPhUhRUdevqXu}qY(hPhUhRU certifdevqZu}q[(hPhUhRU certifwebq\u}q](hPhUhRU moderateurq^u}q_(Utypeq`UlinesqaUidqbU descriptionqcu}qd(UtypeqeUlinesqfUidqgU contributeursqhu}qi(UtypeqjUlinesqkUidqlU changelogqmu}qn(UtypeqoUstringqpUidqqhu}qr(hohphqhButqsh$UqtQU moderateurquUlafaye@emencia.comqvU zwo_new_htmlqwUqxQU experimentalqyUu. (cProducts.PythonScripts.PythonScript PythonScript q)tq.}q(U Python_magicqUm qU _proxy_rolesq(UManagerqtqUwarningsq )U Script_magicq KU_bodyq T0error_message = """ %s Redirection automatique dans 2 secondes. Si la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle """ % (instid,'%s',instid) def url_relative_from_obj(obj): return obj.absolute_url().split(mem['racine_url']+'/')[1] # RECUPERATION DES PARAMETRES mem=context.zwo_lib.mem_mod_data() if type_rep=="skin": skin=context.zwo_info.skins[nom_rep] 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 !' obj.manage_changeProperties(url=url) context.REQUEST.RESPONSE.redirect('../../') return q U _filepathq U@Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/config_okqU_codeqTc@s dZdS(Nc sd|d|f}d}tttdd|djo4ttttdd|} t| |} ntd } t| |} td d jod Snt| d d|ttttdddddSdS(Ns% %s Redirection automatique dans 2 secondes. Si la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle s%scs9ttt|ddtdddSdS(Nt absolute_urltsplitt racine_urlt/i(t _getitem_t _getattr_tobjtmem(RRRR(R(sScript (Python)surl_relative_from_objstzwo_libt mem_mod_datatskintzwo_infotskinstrep_objtdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !tmanage_changePropertiesturltREQUESTtRESPONSEtredirects../../( tinstidt error_messageturl_relative_from_objRtcontextRttype_repRtnom_repR RtdossierR( RRRRRRRRRRR RR((RsScript (Python)s config_oks  !%(t config_ok(R((sScript (Python)stqU func_defaultsqNUerrorsq)U _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!Uq"QU__ac_local_roles__q#}q$Uxavq%]q&UOwnerq'asUidq(U config_okq)U_paramsq*Uinstid, nom_rep,type_rep,urlq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Uinstidq2Unom_repq3Utype_repq4Uurlq5U error_messageq6Umemq7Uurl_relative_from_objq8U _getattr_q9Ucontextq:U _getitem_q;Uskinqtq?ubu.(cProducts.PythonScripts.PythonScript PythonScript q)tq.}q(U Python_magicqUm qU _proxy_rolesq(UManagerqtqUwarningsq )U Script_magicq KU_bodyq Terror_message = """ %s Redirection automatique dans 2 secondes. Si la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle """ def url_relative_from_obj(obj): return obj.absolute_url().split(mem['racine_url']+'/')[1] # 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(): msg= """

Cet identifiant %s est dja pris
Veuillez en choisir un autre
""" % idobj return error_message % msg #verification et determination de l'existance de l'objet a lier. #cas id_lien non remplis if url.strip()=='': msg= """

Il faut definir une url de redirection
""" return error_message % msg # 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') obj.manage_addProperty('url',url,'string') context.REQUEST.RESPONSE.redirect('../../place?nom='+nom+'&obj='+idobj) return q U _filepathq U=Script (Python):/kzexp_zwook/zwo_modules/exemplemodule/new_okqU_codeqTjc@s dZdS(Ncsd}d}tttdd|djo+ttttdd|} | } ntd} | } t| d } td d jod Sntttdd |}|t| djod|}||Snt|ddjod}||Snt| d||t| |}t|ddddt|ddttddt|dd|dttttdddd|d|dSdS(Ns9 %s Redirection automatique dans 2 secondes.

Si la redirection automatique ne fonctionne pas, cliquez ici : Redirection Manuelle cs9ttt|ddtdddSdS(Nt absolute_urltsplitt racine_urlt/i(t _getitem_t _getattr_tobjtmem(RRRR(R(sScript (Python)surl_relative_from_obj stzwo_libt mem_mod_datatskintzwo_infotskinstrep_objRtdroit_edit_dossieris.Vous n'avez pas les droits pour cette action !t mix_id_zopet objectIdsso

Cet identifiant %s est dja pris
Veuillez en choisir un autre
tstripts:

Il faut definir une url de redirection
tmanage_addFoldertmanage_addPropertyt type_zwooktelementtstringtgetIdturltREQUESTtRESPONSEtredirects../../place?nom=s&obj=(t error_messageturl_relative_from_objRtcontextRttypeRtnomR tlieutdossierturl_lieuttitretidobjtmsgRRt container(R%R R!RRRRRRRR R"R#R$R&R'RR(((RsScript (Python)snew_oks2  !   %1(tnew_ok(R)((sScript (Python)sRqU func_defaultsqNUerrorsq)U _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!Uq"QU__ac_local_roles__q#}q$Ugregq%]q&UOwnerq'asUidq(Unew_okq)U_paramsq*Utitre, type, nom, urlq+U func_codeq,(cShared.DC.Scripts.Signature FuncCode q-oq.}q/(U co_argcountq0KU co_varnamesq1(Utitreq2Utypeq3Unomq4Uurlq5U error_messageq6Umemq7Uurl_relative_from_objq8U _getattr_q9Ucontextq:U _getitem_q;UskinqUurl_lieuq?Uidobjq@UmsgqAUobjqBU containerqCtqDubu. (cProducts.PythonScripts.PythonScript PythonScript q)tq.}q(U Python_magicqUm qUerrorsq)Uwarningsq)U Script_magicqKU_bodyq T# typemod est l'id du module et namemod est son title typemod='link_redirect' namemod='link_redirect' # EXEMPLE FORMULAIRE EDITION print '
' # Personalisation Formulaire print """

Url de redirection (laisser vide et le module redirigera sur le premier des rpertoires fils):

""" % (instance.url) print '' print '' print '' print '' print '
' return printed q Uidq Uzwo_config_htmlq U_codeq Tc@s dZdS(NcCst}d}d}|d|dIJ|dt|dIJ|dIJ|dt|dd IJ|d t|d d IJ|d t|d d IJ|d IJ|SdS(Nt link_redirects(
s

Url de redirection (laisser vide et le module redirigera sur le premier des rpertoires fils):

turls(s,s+RqU 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_writelocksqUqQU__ac_local_roles__q }q!Uxavq"]q#UOwnerq$asUidq%U zwo_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/Uinstanceq0Urootq1U listrepinrepq2Uurlq3U _getattr_q4U _getitem_q5U sub_folderq6Ulenq7Ucontextq8tq9ubu.(cOFS.Image Image q)tq.}q(U preconditionqUUtitleqUU__ac_local_roles__q}qUjamesq]q UOwnerq asUheightq KUwidthq KU content_typeq U image/pngqU__name__qU icone.pngqU_EtagSupport__etagqU ts56834943.11qUdataqTPNG  IHDRFtEXtSoftwareAdobe ImageReadyqe<5IDATxb?Û L ă?@\:?)3XHv*33"0"Yq&A>AC]8uPÝ"-?×~ +s'j1h[ ϳx"~Sf?1"+G kq*>0_;?;`[Q4}")~0}C#Ȱ` 2y3]pq0|?|Ǒ C-c P,$@ "K ;Qb/tֈIENDB`qUsizeqMu. (cProducts.PythonScripts.PythonScript PythonScript q)tq.}q(U Python_magicqUm qUerrorsq)Uwarningsq)U Script_magicqKU_bodyq TE# typemod est l'id du module et namemod est son title typemod='link_redirect' namemod='link_redirect' # proposition de nom pour l'element exemple_titre_base='link external ' 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 cration d'element print '' print '' print '

Identifiant:

' print '

url de redirection (laisser vide et le module redirigera sur le premier des rpertoires fils) :

' # suite standard print '

' if dossier.type_zwook=="skin": print '' else: print '' print '' print '
' return printed q Uidq U zwo_new_htmlq U_codeq T`c@s dZdS(Nc Cst}d}d}d}|}d}x8|t|djo|d}|t |}q*W|d|dIJ|dIJ|d |d IJ|d IJ|d IJt|d djo|dIJn |dIJ|dt|ddIJ|dIJ|SdS(Nt link_redirectslink external it objectIdsis(
ssA

Identifiant:

s

url de redirection (laisser vide et le module redirigera sur le premier des rpertoires fils) :

s;

t type_zwooktskins.s1s's
( t_print_t_printttypemodtnamemodtexemple_titre_baset exemple_titretindicet _getattr_tdossiertstr( tmemR RRRRR R R R R((sScript (Python)s zwo_new_htmls(       (t zwo_new_html(R((sScript (Python)stqU 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'Utypemodq(Unamemodq)Uexemple_titre_baseq*U exemple_titreq+Uindiceq,U _getattr_q-Ustrq.tq/ubU__ac_local_roles__q0}q1Uxavq2]q3UOwnerq4asU _filepathq5UIScript (Python):/kzexp_stable_1.0/zwo_modules/example_module/zwo_new_htmlq6U_paramsq7U mem,dossierq8U_dav_writelocksq9Uq:Qu.?(cPersistence.mapping PersistentMapping q)tq.}qUdataq}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.