How to create a custom "Customize" frontend in Oracle APEX 19+?
1
vote
0
answers
662
views
If you create an application with "Theme Style Selection" option and "Enable End Users to choose Theme Style" in User Interface Attributes, there's a "Customize" link in the footer, which is referenced by
#CUSTOMIZE#
substitution placeholder in the template, and the target is javascript:apex.theme.openCustomizeDialog(title, language);
.
This function then opens a modal dialog (apex.navigation.dialog
) with a wwv_flow_customize.show
page using these parameters:
* p_flow
- Application ID, returned by $v('pFlowId')
* p_page
- Page ID, returned by $v('pFlowStepId')
* p_session
- Session ID, returned by $v('pInstance')
* p_lang
- Language two-letter code, from openCustomizeDialog
argument
> This page could also be opened as standalone if you replace /f?p=...
part with /wwv_flow_customize.show?p_flow=...
This page contains a form with radio group name="p_themestyle"
. Labels of the options match with public Theme Styles, but the numeric multiple digit values don't match with Theme Style IDs from wwv_flow_theme_styles
table.
What I need is a custom theme style switcher frontend. But I can't find the exact JS calls that set certain Theme Style IDs as selected for the current user. "Apply Changes" button just does onclick="javascript:apex.submit('DOIT');"
. And the desktop_all.min.js
file is very minified and obfuscated to properly debug.
I also wasn't able to track network activity in debugger as it always resets records after "Apply Changes".
* Is there an option somewhere to edit how the "Customize" page looks like?
* Is there full documentation for this feature somewhere?
* Where and how does APEX store which theme the current user has selected?
* What are the options to debug this request and find this particular API call in network activity?
Asked by tsilvs
(160 rep)
Feb 12, 2021, 01:46 PM
Last activity: Feb 15, 2021, 09:37 AM
Last activity: Feb 15, 2021, 09:37 AM