they will be overwritten by files in
- /view/theme/**your-theme-name**/js.
+ /view/theme/**your-theme-name**/js
+
+### Modules
+
+You have the freedom to override core modules found in
+
+ /mod
+
+They will be overwritten by files in
+
+ /view/theme/**your-theme-name**/mod
+
+Be aware that you can break things easily here if you don't know what you do. Also notice that you can override parts of the module – functions not defined in your theme module will be loaded from the core module.
## Expand an existing Theme
/view/default.php
if you want to change it, say adding a 4th column for banners of your favourite FLOSS projects, place a new default.php file in your theme directory.
-As with the theme.php file, you can use the properties of the $a variable with holds the friendica application to decide what content is displayed.
\ No newline at end of file
+As with the theme.php file, you can use the properties of the $a variable with holds the friendica application to decide what content is displayed.
}
/**
- * If not, next look for a 'standard' program module in the 'mod' directory
+ * If not, next look for module overrides by the theme
+ */
+
+ if((! $a->module_loaded) && (file_exists("view/theme/" . current_theme() . "/mod/{$a->module}.php"))) {
+ include_once("view/theme/" . current_theme() . "/mod/{$a->module}.php");
+ // We will not set module_loaded to true to allow for partial overrides.
+ }
+
+ /**
+ * Finally, look for a 'standard' program module in the 'mod' directory
*/
if((! $a->module_loaded) && (file_exists("mod/{$a->module}.php"))) {