+ /**
+ * Get the CMS name
+ */
+ public static function findCMS() {
+ if (defined('CIVICRM_UF')) {
+ return CIVICRM_UF;
+ }
+ elseif (defined('BACKDROP_VERSION')) {
+ return 'Backdrop';
+ }
+ elseif (function_exists('drupal_bootstrap') && version_compare(VERSION, '6.0', '>=') && version_compare(VERSION, '7.0', '<')) {
+ return 'Drupal6';
+ }
+ elseif (function_exists('drupal_bootstrap') && version_compare(VERSION, '7.0', '>=') && version_compare(VERSION, '8.0', '<')) {
+ return 'Drupal';
+ }
+ elseif (defined('ABSPATH') && function_exists('get_bloginfo')) {
+ return 'WordPress';
+ }
+ elseif (defined('DRUPAL_ROOT') && class_exists('Drupal') && version_compare(\Drupal::VERSION, '8.0', '>=') && version_compare(\Drupal::VERSION, '9.0', '<')) {
+ return 'Drupal8';
+ }
+ else {
+ // guess CMS name from the current path
+ list($cmsType,) = self::findCMSRootPath();
+
+ if (!empty($cmsType)) {
+ return $cmsType;
+ }