def setUp(self): self.portal = self.layer["portal"] pps = self.portal.restrictedTraverse("@@plone_portal_state") member = pps.member() memberid = member.getId() folder = ATFolder(memberid) transactions = self.portal.transactions transactions._setObject(memberid, folder) transactions.reindexObject() # Finally, change its permissions folder.manage_permission(ModifyPortalContent, roles=[], acquire=0) # Make sure the user's service registration dates are correct properties = { "askanexpert_registrationdate": NULLDATE, "answerdatabase_registrationdate": NULLDATE, "moreexercise_registrationdate": NULLDATE, } member.setProperties(properties) self.context = self.portal.maths self.context.allowQuestions = True self.request = self.portal.REQUEST self.manager_name = "plone.belowcontent" self.themelayer = IEmasThemeLayer self.viewlet_name = None self.formsubmit_token = None self.formfield = None self.memberproperty = None self.creditproperty = ""
if not app.hasObject(portal_id): print "Please specify the id of your plone site as the first argument " print "to this script." print "Usage: <instancehome>/bin/instance run %s <id>" % sys.argv[0] sys.exit(1) portal = app[portal_id] setSite(portal) # we assume there is an admin user app = makerequest.makerequest(app) user = app.acl_users.getUser('admin') newSecurityManager(None, user.__of__(app.acl_users)) for member in portal.portal_membership.listMembers(): transactions = portal.transactions memberid = member.getId() if not memberid in transactions.objectIds(): folder = ATFolder(memberid) transactions._setObject(memberid, folder) transactions.reindexObject() folder.manage_permission(ModifyPortalContent, roles=[], acquire=0) print "creating folder for ", memberid transaction.commit()