コード例 #1
0
ファイル: export.py プロジェクト: socialplanning/opencore
 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
コード例 #2
0
    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

コード例 #3
0
    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