Added system info admin page.

This commit is contained in:
Jocelyn Fiat
2017-10-17 13:44:58 +02:00
parent 68ddd41fb7
commit be258c73e9
2 changed files with 101 additions and 0 deletions

View File

@@ -27,6 +27,7 @@ feature -- Security
-- List of permission ids, used by this module, and declared.
do
Result := Precursor
Result.force (perm_view_system_info)
Result.force ("access admin")
Result.force ("admin users")
Result.force ("admin roles")
@@ -39,6 +40,8 @@ feature -- Security
Result.force ("admin formats")
end
perm_view_system_info: STRING = "view system info"
feature {NONE} -- Router/administration
setup_administration_router (a_router: WSF_ROUTER; a_api: CMS_API)
@@ -46,6 +49,8 @@ feature {NONE} -- Router/administration
local
l_admin_handler: CMS_ADMIN_HANDLER
l_info_handler: CMS_ADMIN_INFO_HANDLER
l_modules_handler: CMS_ADMIN_MODULES_HANDLER
l_users_handler: CMS_ADMIN_USERS_HANDLER
l_roles_handler: CMS_ADMIN_ROLES_HANDLER
@@ -67,6 +72,10 @@ feature {NONE} -- Router/administration
create l_uri_mapping.make_trailing_slash_ignored ("", l_admin_handler)
a_router.map (l_uri_mapping, a_router.methods_get_post)
create l_info_handler.make (a_api)
create l_uri_mapping.make_trailing_slash_ignored ("/info", l_info_handler)
a_router.map (l_uri_mapping, a_router.methods_get)
create l_modules_handler.make (a_api)
create l_uri_mapping.make_trailing_slash_ignored ("/modules", l_modules_handler)
a_router.map (l_uri_mapping, a_router.methods_get_post)
@@ -146,27 +155,39 @@ feature -- Hooks
if l_api.user_is_authenticated then
admin_lnk := a_menu_system.management_menu.new_composite_item ("Admin", l_api.administration_path_location (""))
-- Global system information
create lnk.make ("Info", l_api.administration_path_location ("info"))
lnk.set_permission_arguments (<<"view system info">>)
lnk.set_weight (-1)
admin_lnk.extend (lnk)
create lnk.make ("Module", l_api.administration_path_location ("modules"))
lnk.set_permission_arguments (<<"manage module">>)
lnk.set_weight (1)
admin_lnk.extend (lnk)
create lnk.make ("Formats", l_api.administration_path_location ("formats"))
lnk.set_permission_arguments (<<"admin formats">>)
lnk.set_weight (2)
admin_lnk.extend (lnk)
-- Per module cache permission!
create lnk.make ("Cache", l_api.administration_path_location ("cache"))
lnk.set_permission_arguments (<<"admin cache">>)
lnk.set_weight (3)
admin_lnk.extend (lnk)
-- Per module export permission!
create lnk.make ("Export", l_api.administration_path_location ("export"))
lnk.set_permission_arguments (<<"admin export">>)
lnk.set_weight (8)
admin_lnk.extend (lnk)
-- Per module import permission!
create lnk.make ("Import", l_api.administration_path_location ("import"))
lnk.set_permission_arguments (<<"admin import">>)
lnk.set_weight (9)
admin_lnk.extend (lnk)
end
end