# HG changeset patch # User Marcin Kuzminski # Date 1279104612 -7200 # Node ID bb8f45f6d8f9dea979d371b46354794a80fb5784 # Parent ab5d91709af959912b2700060958c3efce201da0 updated hg-app db manage and global settings diff -r ab5d91709af9 -r bb8f45f6d8f9 pylons_app/lib/db_manage.py --- a/pylons_app/lib/db_manage.py Wed Jul 14 12:38:01 2010 +0200 +++ b/pylons_app/lib/db_manage.py Wed Jul 14 12:50:12 2010 +0200 @@ -33,7 +33,7 @@ from pylons_app.lib.auth import get_crypt_password from pylons_app.model import init_model -from pylons_app.model.db import User, Permission, HgAppUi +from pylons_app.model.db import User, Permission, HgAppUi, HgAppSettings from pylons_app.model.meta import Session, Base from sqlalchemy.engine import create_engine import logging @@ -81,7 +81,7 @@ self.create_user(username, password, True) def config_prompt(self): - log.info('Seting up repositories.config') + log.info('Setting up repositories config') path = raw_input('Specify valid full path to your repositories' @@ -122,6 +122,10 @@ paths.ui_value = os.path.join(path, '*') + hgsettings = HgAppSettings() + hgsettings.app_auth_realm = 'hg-app authentication' + hgsettings.app_title = 'hg-app' + try: self.sa.add(hooks) self.sa.add(web1) @@ -129,6 +133,7 @@ self.sa.add(web3) self.sa.add(web4) self.sa.add(paths) + self.sa.add(hgsettings) self.sa.commit() except: self.sa.rollback() diff -r ab5d91709af9 -r bb8f45f6d8f9 pylons_app/lib/utils.py --- a/pylons_app/lib/utils.py Wed Jul 14 12:38:01 2010 +0200 +++ b/pylons_app/lib/utils.py Wed Jul 14 12:50:12 2010 +0200 @@ -28,7 +28,8 @@ import logging from mercurial import ui, config, hg from mercurial.error import RepoError -from pylons_app.model.db import Repository, User, HgAppUi +from pylons_app.model.db import Repository, User, HgAppUi, HgAppSettings +from pylons_app.model.meta import Session log = logging.getLogger(__name__) @@ -79,10 +80,16 @@ @cache_region('super_short_term', 'cached_hg_ui') def get_hg_ui_cached(): - from pylons_app.model.meta import Session sa = Session() return sa.query(HgAppUi).all() +def get_hg_settings(): + sa = Session() + ret = sa.query(HgAppSettings).scalar() + if not ret: + raise Exception('Could not get application settings !') + return ret + def make_ui(read_from='file', path=None, checkpaths=True): """ A function that will read python rc files or database @@ -129,8 +136,9 @@ def set_hg_app_config(config): - config['hg_app_auth_realm'] = 'realm' - config['hg_app_name'] = 'app name' + hgsettings = get_hg_settings() + config['hg_app_auth_realm'] = hgsettings.app_auth_realm + config['hg_app_name'] = hgsettings.app_title def invalidate_cache(name, *args): """Invalidates given name cache"""