1 | import string |
---|
2 | from StringIO import StringIO |
---|
3 | from Products.CMFCore.utils import getToolByName |
---|
4 | from Products.Archetypes.Extensions.utils import install_subskin |
---|
5 | from Products.CMFCore.permissions import ManagePortal |
---|
6 | from Products.adsenseproduct.config import * |
---|
7 | |
---|
8 | def registerConfiglet(self, out): |
---|
9 | controlpanel_tool = getToolByName(self, 'portal_controlpanel') |
---|
10 | controlpanel_tool.unregisterConfiglet('prefs_adsense') |
---|
11 | controlpanel_tool.registerConfiglet(id='prefs_adsense', name='Adsense Properties' \ |
---|
12 | ,category='Products', action='string:${portal_url}/prefs_adsense' \ |
---|
13 | ,appId=PRODUCT_NAME, permission=ManagePortal, imageUrl='group.gif') |
---|
14 | out.write("'prefs_adsense' configlet registered\n") |
---|
15 | |
---|
16 | def unregisterConfiglet(self): |
---|
17 | controlpanel_tool = getToolByName(self, 'portal_controlpanel') |
---|
18 | controlpanel_tool.unregisterConfiglet('prefs_adsense') |
---|
19 | |
---|
20 | def addProperties(self, out): |
---|
21 | pp = getToolByName(self, 'portal_properties') |
---|
22 | if not 'adsense_properties' in pp.objectIds(): |
---|
23 | pp.addPropertySheet(id='adsense_properties', title= 'adsense_properties') |
---|
24 | print >> out, "Added 'portal_properties.adsense_properties' PropertySheet." |
---|
25 | ads_ps = pp.adsense_properties |
---|
26 | if not ads_ps.hasProperty('customer_id'): |
---|
27 | ads_ps.manage_addProperty('customer_id','','string') |
---|
28 | out.write("'customer_id' property added to portal_properties/adsense_properties\n") |
---|
29 | |
---|
30 | def removeProperties(self): |
---|
31 | pp = getToolByName(self, 'portal_properties') |
---|
32 | if 'adsense_properties' in pp.objectIds(): |
---|
33 | pp.manage_delObjects(ids=['adsense_properties',]) |
---|
34 | |
---|
35 | |
---|
36 | def install(self): |
---|
37 | out = StringIO() |
---|
38 | install_subskin(self,out,GLOBALS) |
---|
39 | registerConfiglet(self, out) |
---|
40 | addProperties(self, out) |
---|
41 | return out.getvalue() |
---|
42 | |
---|
43 | def uninstall(self): |
---|
44 | unregisterConfiglet(self) |
---|
45 | removeProperties(self) |
---|