Commit eb31f1b0 authored by Serge S. Koval's avatar Serge S. Koval

Merge pull request #70 from techniq/master

Use url/endpoint from passed in index_view if present
parents 72a773f5 f73d15b6
......@@ -239,13 +239,10 @@ class AdminIndexView(BaseView):
* Automatically associates with static folder.
"""
def __init__(self, name=None, category=None, endpoint=None, url=None):
if url is None:
url = '/admin'
super(AdminIndexView, self).__init__(name or babel.lazy_gettext('Home'),
category,
endpoint or 'admin',
url,
url or '/admin',
'static')
@expose()
......@@ -342,12 +339,13 @@ class Admin(object):
name = 'Admin'
self.name = name
if url is None:
url = '/admin'
self.url = url
self.index_view = index_view or AdminIndexView(endpoint=endpoint, url=url)
self.endpoint = endpoint or self.index_view.endpoint
self.url = url or self.index_view.url
self.subdomain = subdomain
self.endpoint = endpoint
# Add predefined index view
self.add_view(self.index_view)
# Localizations
self.locale_selector_func = None
......@@ -356,15 +354,6 @@ class Admin(object):
if app:
self._init_extension()
# Index view
if index_view is None:
index_view = AdminIndexView(endpoint=self.endpoint, url=self.url)
self.index_view = index_view
# Add predefined index view
self.add_view(index_view)
def add_view(self, view):
"""
Add view to the collection.
......
......@@ -196,6 +196,15 @@ def test_delayed_init():
eq_(rv.data, 'Success!')
def test_multi_instances_init():
app = Flask(__name__)
admin = base.Admin(app)
class ManageIndex(base.AdminIndexView):
pass
manage = base.Admin(app, index_view=ManageIndex(url='/manage', endpoint='manage'))
@raises(Exception)
def test_double_init():
app = Flask(__name__)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment