Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved: Move from hard-code menu location to parameterized (OFBIZ-12918) #711

Merged
merged 2 commits into from
Feb 28, 2024

Conversation

PierreSmits
Copy link
Member

Customization is a key aspect of the OFBiz (Open For Business) platform, providing businesses with a robust and adaptable base to customize their enterprise software solutions according to their unique operational requirements. The *Menus.xml file of a component, essential for designing user interfaces that are both intuitive and tailored to the specific roles and tasks of its users, plays a significant role in this context, as referenced within screen widgets and Freemarker templates. However, as customizations and the project's source code evolve over time, the likelihood of encountering merge conflicts increases significantly, especially when attempting to incorporate customizations alongside ongoing bug fixes and enhancements from the project. To improve the appeal of OFbiz and the developer experience, it is recommended to shift from fixed menu locations to a parameterized approach in our components and plugins. This change would enable developers to more seamlessly incorporate a 'custom' menu, facilitating the integration of project updates.

modified:

  • accounting/WEB-INF/web.xml: added parameter for mainMenuLocation
  • various *Screens.xml files: changing location of 'include-menu' elements from location="component://accounting/widget/AccountingMenus.xml to location="${parameters.mainMenuLocation}"

…2918)

Customization is a key aspect of the OFBiz (Open For Business) platform, providing businesses with a robust and adaptable base to customize their enterprise software solutions according to their unique operational requirements.
The *Menus.xml file of a component, essential for designing user interfaces that are both intuitive and tailored to the specific roles and tasks of its users, plays a significant role in this context, as referenced within screen widgets and Freemarker templates.
However, as customizations and the project's source code evolve over time, the likelihood of encountering merge conflicts increases significantly, especially when attempting to incorporate customizations alongside ongoing bug fixes and enhancements from the project.
To improve the appeal of OFbiz and the developer experience, it is recommended to shift from fixed menu locations to a parameterized approach in our components and plugins. This change would enable developers to more seamlessly incorporate a 'custom' menu, facilitating the integration of project updates.

modified:
accounting/WEB-INF/web.xml: added parameter for mainMenuLocation
various *Screens.xml files: changing location of 'include-menu' elements from location="component://accounting/widget/AccountingMenus.xml to location="${parameters.mainMenuLocation}"
- BudgetScreens.xml
- FixedAssetScreens.xml
Copy link

sonarcloud bot commented Feb 27, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues

Measures
0 Security Hotspots
No data about Coverage
0.0% Duplication on New Code

See analysis details on SonarCloud

@JacquesLeRoux JacquesLeRoux merged commit 1b3d0f5 into apache:trunk Feb 28, 2024
5 checks passed
@PierreSmits PierreSmits deleted the OFBIZ-12918 branch February 28, 2024 18:44
@@ -43,6 +43,11 @@ under the License.
<param-name>partyDecoratorLocation</param-name>
<param-value>component://accounting/widget/CommonScreens.xml</param-value>
</context-param>
<context-param>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hello Pierre,
I think the same thing should be done also in ar and ap web.xml (they use screens such as invoiceOverview from accounting and will be impacted)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

HI @MkLeila,

See my reply in the ticket.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants