Changeset 524
- Timestamp:
- 2006-03-21 17:27:48 (2 months ago)
- Files:
-
- hackinstallplugin/0.9/hackinstall/core.py (modified) (1 diff)
- hackinstallplugin/0.9/hackinstall/db_default.py (modified) (1 diff)
- hackinstallplugin/0.9/hackinstall/templates/hackinstall_admin.cs (modified) (1 diff)
- hackinstallplugin/0.9/hackinstall/web_ui.py (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
hackinstallplugin/0.9/hackinstall/core.py
r519 r524 14 14 class HackInstaller(object): 15 15 """A class implementing hack installation logic.""" 16 17 # Types of hacks I can handle 18 valid_types = ['plugin', 'macro'] 16 19 17 20 def __init__(self, env, url, builddir=None, version=None, user=None, password=None): hackinstallplugin/0.9/hackinstall/db_default.py
r514 r524 1 1 from trac.db import Table, Column 2 2 3 __all__ = ['default_ table']3 __all__ = ['default_hacks_table'] 4 4 5 default_ table = Table('hacks', key='id')[5 default_hacks_table = Table('hacks', key='id')[ 6 6 Column('id', auto_increment=True), 7 7 Column('name'), hackinstallplugin/0.9/hackinstall/templates/hackinstall_admin.cs
r519 r524 28 28 <p> 29 29 <b><?cs name:plugin ?></b><br /> 30 Upgrade from revision <?cs var:plugin.installed ?> to revision <?cs var:plugin.current ?> 30 Upgrade from revision <?cs var:plugin.installed ?> to revision <?cs var:plugin.current ?> 31 <a href="http://trac-hacks.org/log/<?cs var:plugin.lowername ?>?rev=<?cs var:plugin.current ?>&stop_rev=<?cs var:plugin.installed+1 ?>&verbose=on">(View changes)</a> 31 32 <input type="checkbox" name="doupdate_<?cs name:plugin ?>" /> 32 33 </p> hackinstallplugin/0.9/hackinstall/web_ui.py
r520 r524 8 8 from trac.web.chrome import ITemplateProvider, add_stylesheet 9 9 from webadmin.web_ui import IAdminPageProvider 10 from db_default import default_ table10 from db_default import default_hacks_table 11 11 from core import * 12 12 import urlparse, xmlrpclib, re, os … … 122 122 123 123 def upgrade_environment(self, db): 124 cursor = db.cursor() 125 for sql in db.to_sql(default_table): 124 # 0.10 compatibility hack (thanks Alec) 125 try: 126 from trac.db import DatabaseManager 127 db, _ = DatabaseManager(self.env)._get_connector() 128 except ImportError: 129 pass 130 131 # Insert the default table 132 cursor = db.cursor() 133 for sql in db.to_sql(default_hacks_table): 126 134 self.log.debug(sql) 127 135 cursor.execute(sql) 128 db.commit() 136 db.commit() 137 138 # Grab initial metadata 139 for type in self.installer.valid_types: 140 self._update(type) 129 141 130 142 # ITemplateProvider methods … … 177 189 cursor.execute("SELECT id, name, current, description, deps FROM hacks WHERE name LIKE '%%%s'"%type.title()) 178 190 for row in cursor: 179 hacks[row[1]] = {'id': row[0], 'current': int(row[2]), 'installed': installed.get(row[1].lower(), -1), 'description': row[3], 'deps': row[4] }191 hacks[row[1]] = {'id': row[0], 'current': int(row[2]), 'installed': installed.get(row[1].lower(), -1), 'description': row[3], 'deps': row[4], 'lowername': row[1].lower()} 180 192 return hacks 193 194 def _get_types(self): 195 """Get all known hack types.""" 196 server = xmlrpclib.ServerProxy(self.rpc_url) 197 return server.trachacks.getTypes() 181 198 182 199 def _check_version(self):