diff --git a/htdocs/api/index.php b/htdocs/api/index.php index e0abd839b6629896a59694ec5512ffa99ad8e537..e58d2370be7d20af2e432aac47f6205818b3bbfe 100644 --- a/htdocs/api/index.php +++ b/htdocs/api/index.php @@ -65,6 +65,8 @@ $api->r->addAPIClass('Luracast\\Restler\\Explorer'); $api->r->setSupportedFormats('JsonFormat', 'XmlFormat'); $api->r->addAuthenticationClass('DolibarrApiAccess',''); +$listofapis = array(); + $modulesdir = dolGetModulesDirs(); foreach ($modulesdir as $dir) { @@ -117,7 +119,7 @@ foreach ($modulesdir as $dir) if (class_exists($classname)) { dol_syslog("Found API classname=".$classname); - $api->r->addAPIClass($classname); + $listofapis[] = $classname; } } } @@ -128,6 +130,14 @@ foreach ($modulesdir as $dir) } } +// Sort the classes before adding them to Restler. The Restler API Explorer +// shows the classes in the order they are added and it's a mess if they are +// not sorted. +sort($listofapis); +foreach ($listofapis as $classname) +{ + $api->r->addAPIClass($classname); +} // TODO If not found, redirect to explorer