2012-08-31 11 views
5

Me gustaría exportar la configuración de mi sesión de Plone a mi producto del portal.¿Cómo exportar la configuración de sesión de Plone?

La configuración de sesión se establece a través de la ZMI -> ACL-usuarios -> -> propiedades de sesión

He intentado crear una instantánea del sitio, pero no puedo encontrar la configuración de sesión dentro del xml instantánea ..

Respuesta

4

De hecho, no hay soporte de configuración de GenericSetup incluido en plone.session; actualmente no hay nada que lo pueda exportar, ni nada que pueda importar la configuración.

En su lugar, tendría que escribir un paso de configuración y configurar manualmente el complemento de sesión.

Añadir un paso de importación al archivo de configuración configure.zcml:

<?xml version="1.0"?> 
<configure 
    xmlns="http://namespaces.zope.org/zope" 
    xmlns:genericsetup="http://namespaces.zope.org/genericsetup" 

<genericsetup:importStep 
    name="yourpackage.a_unique_id_for_your_step" 
    title="Configures the plone.session plugin" 
    description="Perhaps an optional description" 
    handler="your.package.setuphandlers.setupPloneSession" 
    /> 

</configure> 

y añadir archivo de texto un vacío 'centinela' en el mismo directorio perfil denominado youpackage.setup-plonesession.txt

a continuación, añadir un módulo setuphandlers.py a su paquete (lo handler puntos que en el ejemplo anterior): tha

def setupPloneSession(context): 
    if context.readDataFile('youpackage.setup-plonesession.txt') is None: 
     return 

    portal = context.getSite() 
    plugin = portal.acl_users.session 

    # Configure the plugin manually 
    plugin.path = '/' 
    plugin.cookie_name = '__ac' 
    plugin.cookie_domain = '' 

    # Set up a shared auth_tkt secret 
    plugin._shared_secret = 'YourSharedSecretKey' 
    plugin.mod_auth_tkt = True 

Nota t Primero probamos si el archivo centinela está presente; si reutiliza la configuración de su paquete en otro lugar, el paso de configuración podría ejecutarse varias veces si no lo hace.

Tendrá que consultar el plugin source para tener una idea de lo que puede configurar, me temo.

+0

Esa es una respuesta increíble gracias Martijn! –

+1

Nunca debe usar import_steps.xml porque crea un paso de importación persistente que romperá su sitio si elimina el complemento. Debe usar zcml para declarar los pasos de importación: http://collective-docs.readthedocs.org/en/latest/components/genericsetup.html?highlight=import%20step#custom-installer-code-setuphandlers-py – toutpt

+1

@toutpt : buen punto, ajustó mi respuesta. –

Cuestiones relacionadas