dev/translation#65 Further remove moneyValueFormat
[civicrm-core.git] / CRM / Admin / Form / Setting / UF.php
index bf6a6eb5c71e2e0800b865a70036e823ff94e111..9f5e618540df6952917db0db8f00ea7cdf7149c9 100644 (file)
@@ -56,14 +56,13 @@ class CRM_Admin_Form_Setting_UF extends CRM_Admin_Form_Setting {
       }
     }
 
-    if (
-      function_exists('module_exists') &&
-      module_exists('views') &&
+    if ($config->userSystem->viewsExists() &&
       (
         $config->dsn != $config->userFrameworkDSN || !empty($drupal_prefix)
       )
     ) {
-      $dsnArray = DB::parseDSN($config->dsn);
+      $dsn = CRM_Utils_SQL::autoSwitchDSN($config->dsn);
+      $dsnArray = DB::parseDSN($dsn);
       $tableNames = CRM_Core_DAO::getTableNames();
       asort($tableNames);
       $tablePrefixes = '$databases[\'default\'][\'default\'][\'prefix\']= array(';
@@ -75,6 +74,9 @@ class CRM_Admin_Form_Setting_UF extends CRM_Admin_Form_Setting {
       $prefix = "";
       if ($config->dsn != $config->userFrameworkDSN) {
         $prefix = "`{$dsnArray['database']}`.";
+        if ($config->userFramework === 'Backdrop') {
+          $prefix = "{$dsnArray['database']}.";
+        }
       }
       foreach ($tableNames as $tableName) {
         $tablePrefixes .= "\n  '" . str_pad($tableName . "'", 41) . " => '{$prefix}',";