[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") @http.route('/web/login', type='http', auth="none")
def web_login(self, redirect=None, **kw): 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() values = request.params.copy()
if not redirect: if not redirect:
redirect = '/web?' + request.httprequest.query_string redirect = '/web?' + request.httprequest.query_string
@ -799,9 +800,12 @@ class Database(http.Controller):
@http.route('/web/database/selector', type='http', auth="none") @http.route('/web/database/selector', type='http', auth="none")
def selector(self, **kw): def selector(self, **kw):
dbs = http.db_list(True) try:
if not dbs: dbs = http.db_list()
return redirect_with_hash('/web/database/manager', keep_query=['debug']) 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({ return env.get_template("database_selector.html").render({
'databases': dbs, 'databases': dbs,
'debug': request.debug, 'debug': request.debug,

View File

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