You need to edit the MainController.class.php. You’ll find it here:
\core\classes\MainController.class.php
In _ line 96 _ there’s a function called loadModules(). Edit this function to the following:
public static function loadModules() { global $NAVBAR; global $HTMLHead; self::$ModuleList = self::getModulesFromPath(CODON\_MODULES\_PATH); if(empty(self::$ModuleList)) { Debug::showCritical('No modules were found in module path! ('.CODON\_MODULES\_PATH.')'); return; } self::$listSize = sizeof(self::$ModuleList); self::$keys = array\_keys(self::$ModuleList); ksort(self::$ModuleList); foreach (self::$ModuleList as $module\_name =\> $module\_controller) { $ModuleName = $module\_name; $ModuleController = $module\_controller; if(file\_exists($ModuleController)) { include\_once $ModuleController; if(class\_exists($ModuleName)) { $ModuleName = strtoupper($ModuleName); global $$ModuleName; $$ModuleName = new $ModuleName(); $$ModuleName-\>init($ModuleName); // Call the parent constructor if(self::$activeModule == $ModuleName) { # Skip it for now, run it last since it's the active # one, and may overwrite some other parameters continue; } else { ob\_start(); self::Run($ModuleName, 'NavBar'); $NAVBAR .= ob\_get\_clean(); self::Run($ModuleName, 'HTMLHead'); $HTMLHead .= ob\_get\_clean(); @ob\_end\_clean(); } } } } # Run the init tasks ob\_start(); self::Run(self::$activeModule, 'NavBar'); $NAVBAR .= ob\_get\_clean(); self::Run(self::$activeModule, 'HTMLHead'); $HTMLHead .= ob\_get\_clean(); @ob\_end\_clean(); }
Voilà. You now have a alphabetic sorted Module list in your admin area.