def current_status(self): cookie = self.request.cookies.get('__ac', '') name = self.context.getId() url = self.context.absolute_url() features = self.get_features() status = export_utils.get_status(name, context_url=url, cookie=cookie, features=features) return status
active_states=team.getActiveStates() mship_brains = cat(highestTeamRole='ProjectAdmin', portal_type='OpenMembership', path=team_path, review_state=active_states, ) for mbrain in mship_brains: if mbrain.highestTeamRole == 'ProjectAdmin': mem = portal.acl_users.getUser(mbrain.getId) if not mem: continue mem = mem.__of__(portal.acl_users) print "Setting user to %s" % mbrain.getId newSecurityManager(None, mem) cookie = generate_cookie_value(mbrain.getId, SECRET) break else: print "couldn't find suitable admin user for %s" % proj_id cookie = generate_cookie_value("admin", SECRET) print "Exporting %s..." % proj_id status = get_status(proj_id, context_url='/'.join([BASEURL, proj_id]), cookie=cookie, features=["wikipages", "mailinglists", "wikihistory"]) path = qview.export(proj_id, status) print "Exported %s" % path print "=" * 60
else: print "couldn't find suitable admin user for %s" % proj_id print "Exporting %s..." % proj_id features = ["wikipages", "mailinglists", "wikihistory"] copy_last_wikihistory = False if last_backup_time is not None and export_rule.startswith("incremental_wikihistory"): if proj.modified() < (last_backup_time - 1): print "Skipping wiki history (last modified %s, last export %s" % (proj.modified(), last_backup_time) features = ["wikipages", "mailinglists"] copy_last_wikihistory = True else: print "Re-exporting wiki history (last modified %s, last export %s" % (proj.modified(), last_backup_time) status = get_status(proj_id, context_url='/'.join([BASEURL, proj_id]), cookie=cookie, features=features) path = qview.export(proj_id, status) if copy_last_wikihistory: new_zipfile = ZipFile(path, 'a') old_zipfile = ZipFile(backup_log[proj_id]['export'], 'r') records = 0 for old_path in old_zipfile.namelist(): if not old_path.startswith("%s/wiki_history/" % proj_id): continue records += 1 new_zipfile.writestr(old_path, old_zipfile.read(old_path)) old_zipfile.close() new_zipfile.close() print "Copied %s wiki history files from last export" % records