View Issue Details

IDProjectCategoryView StatusLast Update
0017779mantisbtplug-inspublic2014-11-13 01:58
Reporterdregad Assigned Todregad  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionno change required 
Product Version1.3.0dev 
Summary0017779: New Menu Class is breaking plugins
Description

Following implementation of 0017711, plugins that make use of removed API functions like print_manage_menu() are now broken.

This affects at least the Snippets plugin [1] which we use on our own tracker, possibly others as well (did not check further).

[1] https://github.com/mantisbt-plugins/snippets
For testing purposes, use the '13x' branch in my fork (https://github.com/dregad/snippets/tree/13x)

Additional Information

This is the second set of regressions that are caused by 0017711 (the other ones being tracked in 0017712).

For the record, the corresponding change (PR https://github.com/mantisbt/mantisbt/pull/316) was merged without approval by the team. I'm wondering if we should not revert that change for now.

TagsNo tags attached.

Relationships

child of 0017711 closed Move menu generation functionality into Menu Class and update CSS 

Activities

dregad

dregad

2014-10-16 12:02

developer   ~0041595

To make this work properly, I think we should provide a mechanism for plugins to cleanly hook into the new Menu system. If such a method exists, I couldn't find it (in other words, it should be documented properly).

The only way I found to make this work is to have the relevant plugin pages hack the global variable to add themselves to it, e.g.

$g_include_manage_menu_pages[plugin_get_current()] = array(
'config_page',
'snippets_list',
);

I also think it's not correct to have plugins menu configuration hardcoded in config_menu_defaults_inc.php (even if they are "core" plugins, they should behave like any other plugin).

grangeway

grangeway

2014-10-19 18:08

reporter   ~0041614

Damien,

Will produce documentation on this and email mantisbt-dev list

Paul

vboctor

vboctor

2014-10-25 02:42

manager   ~0041657

Removed targeting to 1.3.x since this needs to be rationalized with the modern UI work.

dregad

dregad

2014-10-28 09:00

developer   ~0041694

Since changes introduced by 0017711 have been reverted, this is no longer applicable.

Related Changesets

MantisBT: master 0b13955c

2014-10-18 13:22

dregad


Details Diff
Revert "Move menu generation functionality into Menu Class and update CSS"

This commit was merged without approval or review from the team, and
introduced several regressions and issues, documented in

- Issue 0017712: errors in menu and submenu display
- Issue 0017779: New Menu Class is breaking plugins

See also issue 0017711 and comments in pull request #316.

This reverts commit 29c2f8211de8869b3b1b072467b54252d0db5024.
Affected Issues
0017711, 0017712, 0017779
mod - account_page.php Diff File
mod - account_prefs_inc.php Diff File
mod - account_prof_edit_page.php Diff File
mod - account_prof_menu_page.php Diff File
mod - account_sponsor_page.php Diff File
mod - adm_config_report.php Diff File
mod - adm_permissions_report.php Diff File
rm - config_menu_defaults_inc.php Diff
mod - core.php Diff File
rm - core/classes/MantisMenu.class.php Diff
mod - core/html_api.php Diff File
mod - css/default.css Diff File
mod - manage_columns_inc.php Diff File
mod - manage_config_columns_page.php Diff File
mod - manage_config_email_page.php Diff File
mod - manage_config_work_threshold_page.php Diff File
mod - manage_config_workflow_graph_page.php Diff File
mod - manage_config_workflow_page.php Diff File
mod - manage_custom_field_edit_page.php Diff File
mod - manage_custom_field_page.php Diff File
mod - manage_overview_page.php Diff File
mod - manage_plugin_page.php Diff File
mod - manage_proj_cat_edit_page.php Diff File
mod - manage_proj_create_page.php Diff File
mod - manage_proj_edit_page.php Diff File
mod - manage_proj_page.php Diff File
mod - manage_proj_ver_edit_page.php Diff File
mod - manage_tags_page.php Diff File
mod - manage_user_create_page.php Diff File
mod - manage_user_edit_page.php Diff File
mod - manage_user_page.php Diff File
mod - plugins/MantisCoreFormatting/pages/config.php Diff File
mod - plugins/MantisGraph/pages/config.php Diff File
mod - plugins/MantisGraph/pages/summary_graph_imp_category.php Diff File
mod - plugins/MantisGraph/pages/summary_graph_imp_priority.php Diff File
mod - plugins/MantisGraph/pages/summary_graph_imp_resolution.php Diff File
mod - plugins/MantisGraph/pages/summary_graph_imp_severity.php Diff File
mod - plugins/MantisGraph/pages/summary_graph_imp_status.php Diff File
mod - plugins/MantisGraph/pages/summary_jpgraph_page.php Diff File
mod - plugins/XmlImportExport/pages/import.php Diff File
mod - plugins/XmlImportExport/pages/import_action.php Diff File
mod - proj_doc_add_page.php Diff File
mod - proj_doc_edit_page.php Diff File
mod - proj_doc_page.php Diff File
mod - summary_page.php Diff File