view tools/migrate-queries.py @ 2806:845e87d5e3ba

translator objects now have the following search path: - selected locale messages in the tracker locale dir - selected locale messages in the system locale dir - english messages in the tracker locale dir - english messages in the system locale dir automatically compile .mo files if needed (found .po file and .mo is missing or .po mtime is greater that .mo mtime) removed support for python < 2.0. gettext module is now required. get_translation: removed 'domain' argument, added 'tracker_home' argument
author Alexander Smishlajev <a1s@users.sourceforge.net>
date Sat, 23 Oct 2004 14:03:34 +0000
parents 6e80f8f760a4
children a15f91a10e45
line wrap: on
line source

#! /usr/bin/env python
'''
migrate-queries <instance-home> [<instance-home> *]

Migrate old queries in the specified instances to Roundup 0.6.0+ by
removing the leading ? from their URLs. 0.6.0+ queries do not carry a
leading ?; it is added by the 0.6.0 templating, so old queries lead
to query URLs with a double leading ?? and a consequent 404 Not Found.
'''
__author__ = 'James Kew <jkew@mediabright.co.uk>'

import sys
import roundup.instance

if len(sys.argv) == 1:
    print __doc__
    sys.exit(1)

# Iterate over all instance homes specified in argv.
for home in sys.argv[1:]:
    # Do some basic exception handling to catch bad arguments.
    try:
        instance = roundup.instance.open(home)
    except:
        print 'Cannot open instance home directory %s!' % home
        continue

    db = instance.open('admin')

    print 'Migrating active queries in %s (%s):'%(
        instance.config.TRACKER_NAME, home)
    for query in db.query.list():
        url = db.query.get(query, 'url')
        if url[0] == '?':
            url = url[1:]
            print '  Migrating query%s (%s)'%(query,
                db.query.get(query, 'name'))
            db.query.set(query, url=url)

    db.commit()
    db.close()


Roundup Issue Tracker: http://roundup-tracker.org/