[FIX] Honnor --no-database-list option

bzr revid: fme@openerp.com-20140114140153-0zt2iqt6di6h3hw2
This commit is contained in:
Fabien Meghazi 2014-01-14 15:01:53 +01:00
parent cedc2bd277
commit cd213eb652
2 changed files with 18 additions and 10 deletions

View File

@ -613,7 +613,8 @@ class Home(http.Controller):
@http.route('/web/login', type='http', auth="none")
def web_login(self, redirect=None, **kw):
assert request.session.db is not None
if request.session.db is None:
return redirect_with_hash('/web/database/selector', keep_query=['debug'])
values = request.params.copy()
if not redirect:
redirect = '/web?' + request.httprequest.query_string
@ -799,9 +800,12 @@ class Database(http.Controller):
@http.route('/web/database/selector', type='http', auth="none")
def selector(self, **kw):
dbs = http.db_list(True)
if not dbs:
return redirect_with_hash('/web/database/manager', keep_query=['debug'])
try:
dbs = http.db_list()
if not dbs:
return redirect_with_hash('/web/database/manager', keep_query=['debug'])
except openerp.exceptions.AccessDenied:
dbs = False
return env.get_template("database_selector.html").render({
'databases': dbs,
'debug': request.debug,

View File

@ -21,12 +21,16 @@
<div class="form-group field-db">
<label for="db" class="control-label">Select database</label>
<select name="db" id="db" class="form-control" required="required" autofocus="autofocus">
<option></option>
{% for db in databases %}
<option value="{{ db }}">{{ db }}</option>
{% endfor %}
</select>
{% if databases %}
<select name="db" id="db" class="form-control" required="required" autofocus="autofocus">
<option></option>
{% for db in databases %}
<option value="{{ db }}">{{ db }}</option>
{% endfor %}
</select>
{% else %}
<input type="text" name="db" id="db" class="form-control" required="required" autofocus="autofocus"/>
{% endif %}
</div>
<hr/>