Last change
on this file since 2683 was
635,
checked in by chervol, 18 years ago
|
retagging
|
-
Property svn:eol-style set to
native
|
File size:
1016 bytes
|
Rev | Line | |
---|
[414] | 1 | from zope.component import adapter |
---|
| 2 | from Products.CMFCore.utils import getToolByName |
---|
[448] | 3 | #from Products.qPloneGoogleSitemaps.events import AfterTransitionEvent |
---|
[414] | 4 | from Products.qPloneGoogleSitemaps.interfaces import IAfterTransitionEvent |
---|
| 5 | from Products.qPloneGoogleSitemaps.utils import ping_google |
---|
| 6 | |
---|
[448] | 7 | @adapter(IAfterTransitionEvent) |
---|
| 8 | def pingGoogle(event): |
---|
[635] | 9 | tr_id = getattr(event.transition,'id','') |
---|
| 10 | if not tr_id: |
---|
| 11 | # object under creation |
---|
| 12 | return 0 |
---|
| 13 | |
---|
[414] | 14 | object = event.object |
---|
[448] | 15 | catalog = getToolByName(object, 'portal_catalog') |
---|
[443] | 16 | |
---|
[448] | 17 | sitemaps = [b.getObject() for b in catalog(portal_type='Sitemap')] |
---|
| 18 | if sitemaps: |
---|
| 19 | plone_home = getToolByName(object, 'portal_url').getPortalObject().absolute_url() |
---|
[635] | 20 | wftrans_name = "%s#%s" % (event.workflow.id, tr_id) |
---|
[454] | 21 | obj_ptype = object.portal_type |
---|
[448] | 22 | for sm in sitemaps: |
---|
[454] | 23 | if wftrans_name in sm.getPingTransitions() \ |
---|
| 24 | and obj_ptype in sm.getPortalTypes(): |
---|
[448] | 25 | ping_google(plone_home, sm.id) |
---|
[414] | 26 | return 0 |
---|
Note: See
TracBrowser
for help on using the repository browser.