diff --git a/ckanext/odsh/plugin.py b/ckanext/odsh/plugin.py
index e5ac0b02f97c10f0f72a24837a2cf200b05edb48..e02d1151c8c820f560faf58faf0e41d8a905f0b2 100644
--- a/ckanext/odsh/plugin.py
+++ b/ckanext/odsh/plugin.py
@@ -80,13 +80,11 @@ class OdshPlugin(plugins.SingletonPlugin, DefaultTranslation, DefaultDatasetForm
         # Dashboard
         bp_dashboard = dashboard.blueprint
         bp_dashboard.add_url_rule(
-            u'/dashboard', view_func=dashboard.dashboard, strict_slashes=False, defaults={
-                u'offset': 0
-            })
+            u'/dashboard/datasets', view_func=dashboard.datasets)
         bp_dashboard.add_url_rule(
-            u'/dashboard/datasets', view_func=dashboard.dashboard_datasets)
+            u'/dashboard/organizations', view_func=dashboard.organizations)
         bp_dashboard.add_url_rule(
-            u'/dashboard/<int:offset>', view_func=dashboard.dashboard)
+            u'/dashboard/groups', view_func=dashboard.groups)
 
         # Harvest
         bp_harvest = harvest.blueprint
diff --git a/ckanext/odsh/views/dashboard.py b/ckanext/odsh/views/dashboard.py
index 3aa1736bf7ce0eb7583765d24ebcbf7a49b113a9..dceebe4467457ba8648237e92afe62983a4cfb6a 100644
--- a/ckanext/odsh/views/dashboard.py
+++ b/ckanext/odsh/views/dashboard.py
@@ -1,31 +1,27 @@
-import ckan.plugins.toolkit as toolkit
 import ckan.authz as authz
-import ckan.logic as logic
+import ckan.lib.helpers as h
 from ckan.common import g
 from flask import Blueprint
-from ckan.views.dashboard import index
+from ckan.views.dashboard import datasets, organizations, groups
 import logging
 
 log = logging.getLogger(__name__)
 
-blueprint = Blueprint('odsh_dashboard', __name__)
+blueprint = Blueprint(u'odsh_dashboard', __name__)
 
-
-def dashboard(offset=0):
-    log.debug("views.dashboard::dashboard")
+@blueprint.before_request
+def before_request() -> None:
     is_sysadmin = authz.is_sysadmin(g.user)
-
     if not is_sysadmin:
-        toolkit.abort(403)
-
-    return index(offset)
+        h.flash_error(_(u'Not authorized to see this page'))
+        return h.redirect_to(u'user.login')
+    return None
 
+def datasets():
+    return datasets()
 
-def dashboard_datasets():
-    log.debug("views.dashboard::dashboard_datasets")
-    is_sysadmin = authz.is_sysadmin(g.user)
-
-    if not is_sysadmin:
-        toolkit.abort(403)
+def organizations():
+    return organizations()
 
-    return index()
+def groups():
+    return groups()