Fix missing navigation on new apps
This commit is contained in:
parent
3f93cd32fd
commit
6ed15e0095
@ -343,6 +343,17 @@ CREATE OR REPLACE PACKAGE app AS
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Returns parent page ID for requested or current page
|
||||
--
|
||||
FUNCTION get_page_parent (
|
||||
in_page_id navigation.page_id%TYPE := NULL,
|
||||
in_app_id navigation.app_id%TYPE := NULL
|
||||
)
|
||||
RETURN navigation.page_id%TYPE;
|
||||
|
||||
|
||||
|
||||
--
|
||||
-- Get page name from APEX dictionary
|
||||
--
|
||||
|
||||
@ -657,6 +657,27 @@ CREATE OR REPLACE PACKAGE BODY app AS
|
||||
|
||||
|
||||
|
||||
FUNCTION get_page_parent (
|
||||
in_page_id navigation.page_id%TYPE := NULL,
|
||||
in_app_id navigation.app_id%TYPE := NULL
|
||||
)
|
||||
RETURN navigation.page_id%TYPE
|
||||
AS
|
||||
out_id apex_application_pages.page_id%TYPE;
|
||||
BEGIN
|
||||
SELECT n.parent_id INTO out_id
|
||||
FROM navigation n
|
||||
WHERE n.app_id = COALESCE(in_app_id, app.get_app_id())
|
||||
AND n.page_id = COALESCE(in_page_id, app.get_page_id());
|
||||
--
|
||||
RETURN out_id;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND THEN
|
||||
RETURN NULL;
|
||||
END;
|
||||
|
||||
|
||||
|
||||
FUNCTION get_page_name (
|
||||
in_page_id navigation.page_id%TYPE := NULL,
|
||||
in_app_id navigation.app_id%TYPE := NULL,
|
||||
|
||||
@ -1,17 +1,15 @@
|
||||
CREATE OR REPLACE VIEW nav_top AS
|
||||
WITH curr AS (
|
||||
SELECT
|
||||
n.app_id,
|
||||
MAX(n.page_id) AS page_id,
|
||||
MAX(n.parent_id) AS parent_id,
|
||||
app.get_page_root(MAX(n.page_id)) AS page_root,
|
||||
app.get_page_group(MAX(n.page_id)) AS page_group,
|
||||
app.get_user_id() AS user_id,
|
||||
app.get_user_name() AS user_name
|
||||
FROM navigation n
|
||||
WHERE n.app_id = app.get_app_id()
|
||||
AND n.page_id IN (app.get_page_id(), 0) -- always return 1 row
|
||||
GROUP BY n.app_id
|
||||
app.get_app_id() AS app_id,
|
||||
app.get_page_id() AS page_id,
|
||||
app.get_page_parent() AS parent_id,
|
||||
app.get_page_root() AS page_root,
|
||||
app.get_page_group() AS page_group,
|
||||
app.get_user_id() AS user_id,
|
||||
app.get_user_name() AS user_name
|
||||
FROM users u
|
||||
WHERE u.user_id = app.get_user_id()
|
||||
)
|
||||
SELECT
|
||||
CASE WHEN n.parent_id IS NULL THEN 1 ELSE 2 END AS lvl,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user