[commits] r56 - in selinux-site/trunk/selinux.theme/selinux/theme:
. profiles/default skins/selinuxtheme
tim at mail.se.linux.org
tim at mail.se.linux.org
Tis Juli 17 00:07:51 CEST 2007
Author: tim
Date: 2007-07-17 00:07:50 +0200 (Tue, 17 Jul 2007)
New Revision: 56
Added:
selinux-site/trunk/selinux.theme/selinux/theme/skins/selinuxtheme/global_cache_settings.pt
selinux-site/trunk/selinux.theme/selinux/theme/subscribers.py
Modified:
selinux-site/trunk/selinux.theme/selinux/theme/configure.zcml
selinux-site/trunk/selinux.theme/selinux/theme/profiles/default/properties.xml
Log:
Adding some code to cache the frontpage and automatically purge it from the varnish cache when new news are added.
Modified: selinux-site/trunk/selinux.theme/selinux/theme/configure.zcml
===================================================================
--- selinux-site/trunk/selinux.theme/selinux/theme/configure.zcml 2007-07-14 12:22:37 UTC (rev 55)
+++ selinux-site/trunk/selinux.theme/selinux/theme/configure.zcml 2007-07-16 22:07:50 UTC (rev 56)
@@ -19,4 +19,10 @@
<include package=".browser" />
+ <subscriber
+ for="Products.ATContentTypes.content.newsitem.ATNewsItem
+ zope.app.container.interfaces.IObjectAddedEvent"
+ handler=".subscribers.news_added"
+ />
+
</configure>
Modified: selinux-site/trunk/selinux.theme/selinux/theme/profiles/default/properties.xml
===================================================================
--- selinux-site/trunk/selinux.theme/selinux/theme/profiles/default/properties.xml 2007-07-14 12:22:37 UTC (rev 55)
+++ selinux-site/trunk/selinux.theme/selinux/theme/profiles/default/properties.xml 2007-07-16 22:07:50 UTC (rev 56)
@@ -1,6 +1,5 @@
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="utf-8" ?>
<site>
- <property name="title">Svenska Linuxföreningen</property>
<property name="layout" type="string">selinux_index</property>
<property name="email_from_address"
type="string">webb at se.linux.org</property>
Added: selinux-site/trunk/selinux.theme/selinux/theme/skins/selinuxtheme/global_cache_settings.pt
===================================================================
--- selinux-site/trunk/selinux.theme/selinux/theme/skins/selinuxtheme/global_cache_settings.pt 2007-07-14 12:22:37 UTC (rev 55)
+++ selinux-site/trunk/selinux.theme/selinux/theme/skins/selinuxtheme/global_cache_settings.pt 2007-07-16 22:07:50 UTC (rev 56)
@@ -0,0 +1,10 @@
+<metal:cacheheaders define-macro="cacheheaders">
+ <metal:block tal:define="dummy python:request.RESPONSE.setHeader('Content-Type', 'text/html;;charset=%s' % charset)" />
+ <metal:block tal:define="dummy python:request.RESPONSE.setHeader('Content-Language', lang)" />
+ <metal:block tal:define="dummy python:request.RESPONSE.setHeader('Expires', 'Sat, 1 Jan 2000 00:00:00 GMT')" />
+ <metal:block tal:content="structure python:here.enableHTTPCompression(request=request, debug=0)" />
+
+ <metal:anon tal:condition="python: isAnon and context.portal_type == 'Plone Site'">
+ <metal:block tal:define="dummy python:request.RESPONSE.setHeader('Cache-control', 's-maxage=3600')" />
+ </metal:anon>
+</metal:cacheheaders>
Added: selinux-site/trunk/selinux.theme/selinux/theme/subscribers.py
===================================================================
--- selinux-site/trunk/selinux.theme/selinux/theme/subscribers.py 2007-07-14 12:22:37 UTC (rev 55)
+++ selinux-site/trunk/selinux.theme/selinux/theme/subscribers.py 2007-07-16 22:07:50 UTC (rev 56)
@@ -0,0 +1,11 @@
+from Products.CMFCore.utils import getToolByName
+
+def news_added(obj, event):
+ """ This is called when a news item is added to the site. """
+ if obj.aq_parent.portal_type != 'TempFolder':
+ print "NEWS ADDED"
+ cache = getToolByName(obj, 'portal_squid', None)
+ portal = getToolByName(obj, 'portal_url').getPortalObject()
+ if cache:
+ cache.pruneObject(portal)
+ print "PRUNED"
More information about the commits
mailing list