Issue status update for http://drupal.org/node/29428 Post a follow up: http://drupal.org/project/comments/add/29428 Project: Drupal Version: cvs Component: module system Category: feature requests Priority: normal Assigned to: Anonymous Reported by: nedjo Updated by: drumm Status: patch (code needs review) -1 This will just encourage hacks and create weird bugs as the code interactions become more complex. The example form will be themeable when the new form API is in place. drumm Previous comments: ------------------------------------------------------------------------ Mon, 22 Aug 2005 22:47:09 +0000 : nedjo Attachment: http://drupal.org/files/issues/module-extension-and-override.patch (1.38 KB) A frequently requested functionality is the ability to override or extend core module functions. This small patch is an initial take on how to enable function extension and overriding. It takes the existing module_invoke() function and adds tests for override and extension functions, in the forms modulename_originalfunction_override() and modulename_originalfunction_extension(). So, for example, an override function for the core taxonomy_node_form() function as defined by a module named testmodule would be called testmodule_taxonomy_node_form_override(), and would be run instead of taxonomy_node_form(). And testmodule_taxonomy_node_form_extension() would be run every time taxonomy_node_form() was called, hence "extending" it. Of course, this approach would only be useful if we converted most - or all! - of our current module function calls to use module_invoke()... ------------------------------------------------------------------------ Tue, 23 Aug 2005 11:35:06 +0000 : stefan nagtegaal I'm not sure I get this.. Am I right when I think we can override (and change) any function in drupal with this patch, which would give us the possibility to: - override forms; - override functions which generates the node links, so they (finally) could be hidden instead of always displayed; - any other advantages which i'm missing atm? (probably a lot, but can't think of any right now, right here) Stefan