# HG changeset patch # User Ludovic Chabant # Date 1386813064 28800 # Node ID 0b284cb64bb361153efccdbcad50b71586bc2eaf # Parent 74690402fef27ea77194a280af9f92839c71acfb Default to synchronous wiki updates. Use config-file interpolation to refer to the site root. diff -r 74690402fef2 -r 0b284cb64bb3 wikked/db/sql.py --- a/wikked/db/sql.py Wed Dec 11 17:45:52 2013 -0800 +++ b/wikked/db/sql.py Wed Dec 11 17:51:04 2013 -0800 @@ -123,8 +123,7 @@ def initDb(self, wiki): self.wiki = wiki - url_params = {'root': wiki.root} - engine_url = wiki.config.get('wiki', 'database_url') % url_params + engine_url = wiki.config.get('wiki', 'database_url') logger.info("Using database from URL: %s" % engine_url) self.engine = create_engine(engine_url, convert_unicode=True) self.session = scoped_session(sessionmaker( diff -r 74690402fef2 -r 0b284cb64bb3 wikked/views.py --- a/wikked/views.py Wed Dec 11 17:45:52 2013 -0800 +++ b/wikked/views.py Wed Dec 11 17:51:04 2013 -0800 @@ -211,8 +211,11 @@ 'author': author, 'message': message } - g.wiki.setPage(url, page_fields, do_update=False) - update_wiki.delay(g.wiki.root) + do_sync_update = app.config['SYNCHRONOUS_UPDATE'] + g.wiki.setPage(url, page_fields, do_update=do_sync_update) + if not do_sync_update: + update_wiki.delay(g.wiki.root) + result = {'saved': 1} return make_auth_response(result) diff -r 74690402fef2 -r 0b284cb64bb3 wikked/web.py --- a/wikked/web.py Wed Dec 11 17:45:52 2013 -0800 +++ b/wikked/web.py Wed Dec 11 17:51:04 2013 -0800 @@ -19,6 +19,7 @@ app.config.setdefault('SQL_COMMIT_ON_TEARDOWN', False) app.config.setdefault('WIKI_ROOT', None) app.config.setdefault('UPDATE_WIKI_ON_START', True) +app.config.setdefault('SYNCHRONOUS_UPDATE', True) # Find the wiki root, and further configure the app if there's a diff -r 74690402fef2 -r 0b284cb64bb3 wikked/wiki.py --- a/wikked/wiki.py Wed Dec 11 17:45:52 2013 -0800 +++ b/wikked/wiki.py Wed Dec 11 17:51:04 2013 -0800 @@ -248,7 +248,6 @@ def getSpecialFilenames(self): yield os.path.join(self.root, '.wikirc') - yield os.path.join(self.root, '.wikirc.local') yield os.path.join(self.root, '.wiki') def _cachePages(self, only_urls=None): @@ -265,12 +264,13 @@ # Merge the default settings with any settings provided by # the parameters. config_path = os.path.join(parameters.root, '.wikirc') - local_config_path = config_path + '.local' + local_config_path = os.path.join(parameters.root, '.wiki', 'wikirc') default_config_path = os.path.join( os.path.dirname(__file__), 'resources', 'defaults.cfg') config = SafeConfigParser() config.readfp(open(default_config_path)) + config.set('wiki', 'root', parameters.root) config.read([config_path, local_config_path]) return config