Ciao,
mi trovo nella simpatica situazione di dover fornire la possibilità, alla
Redazione del portale, di permettere che in determinate cartelle e/o
collezioni sia possibile visualizzare oggetti "scaduti" anche all'utenza
anonima.
Il catalog per ogni chiamata fornisce sempre contenti non scaduti. Per
poter forzare questo comportamento è necessario passargli show_inactive
come True.
E in più, per non scrivere nuovi pagetemplate, si potrebbe agevolmente
sfruttare il "contentFilter" che le viste di riepilogo "standard" prendono
in considerazione se presente.
Ovvero:
request.set('contentFilter',{'show_inactive':True})Io ho in mente due strade alternative, con la premessa simile: definire una marker interface (ad es. IListaScaduti) che si possa applicare sulla cartella/collezione target. - Ipotesi 1 impostare un subscriber che intercetti il before_traverse e nell'handler mettere un banalissimo IF del tipo "se il contesto implementa IListaScaduti allora request.set altrimenti passa" - Ipotesi 2 metter su una viewlet agganciata a IListaScaduti che nella sua __call__ faccia il request.set Personalmente reputo l'ipotesi 1 "pulita" e zopish, ma suppongo metta a dura prova - nel suo piccolo - le performance poichè viene richiamata ad ogni surfing di pagina! L'ipotesi 2, scarsa di fascino, mi sembra la strada meno dolorosa. Che ne dite? Suggerimenti? Vito -- *Vito Falco* Webdeveloper & designer freelance, Plone enthusiast Bari, IT tel +39 3346330137 | skype vito80ba | twitter vito80ba Linkedin http://it.linkedin.com/in/vitof
_______________________________________________ Plone-IT mailing list [email protected] https://lists.plone.org/mailman/listinfo/plone-plone-it http://plone-regional-forums.221720.n2.nabble.com/Plone-Italy-f221721.html
