checkDBDrivers() public method

The names of drivers that appear to be unavailable are bracketed.
public checkDBDrivers ( ) : array
return array
 /**
  * Read installation parameters from stdin.
  * FIXME: May want to implement an abstract "CLIForm" class handling input/validation.
  * FIXME: Use readline if available?
  */
 function readParams()
 {
     $installForm = new InstallForm(null);
     // Request object not available to CLI
     // Locale Settings
     $this->printTitle('installer.localeSettings');
     $this->readParamOptions('locale', 'locale.primary', $installForm->supportedLocales, 'en_US');
     $this->readParamOptions('additionalLocales', 'installer.additionalLocales', $installForm->supportedLocales, '', true);
     $this->readParamOptions('clientCharset', 'installer.clientCharset', $installForm->supportedClientCharsets, 'utf-8');
     $this->readParamOptions('connectionCharset', 'installer.connectionCharset', $installForm->supportedConnectionCharsets, '');
     $this->readParamOptions('databaseCharset', 'installer.databaseCharset', $installForm->supportedDatabaseCharsets, '');
     // File Settings
     $this->printTitle('installer.fileSettings');
     $this->readParam('filesDir', 'installer.filesDir');
     // Security Settings
     $this->printTitle('installer.securitySettings');
     $this->readParamOptions('encryption', 'installer.encryption', $installForm->supportedEncryptionAlgorithms, 'md5');
     // Administrator Account
     $this->printTitle('installer.administratorAccount');
     $this->readParam('adminUsername', 'user.username');
     @`/bin/stty -echo`;
     do {
         $this->readParam('adminPassword', 'user.password');
         printf("\n");
         $this->readParam('adminPassword2', 'user.repeatPassword');
         printf("\n");
     } while ($this->params['adminPassword'] != $this->params['adminPassword2']);
     @`/bin/stty echo`;
     $this->readParam('adminEmail', 'user.email');
     // Database Settings
     $this->printTitle('installer.databaseSettings');
     $this->readParamOptions('databaseDriver', 'installer.databaseDriver', $installForm->checkDBDrivers());
     $this->readParam('databaseHost', 'installer.databaseHost', '');
     $this->readParam('databaseUsername', 'installer.databaseUsername', '');
     $this->readParam('databasePassword', 'installer.databasePassword', '');
     $this->readParam('databaseName', 'installer.databaseName');
     $this->readParamBoolean('createDatabase', 'installer.createDatabase', 'Y');
     // Miscellaneous Settings
     $this->printTitle('installer.miscSettings');
     $this->readParam('oaiRepositoryId', 'installer.oaiRepositoryId');
     printf("\n*** ");
 }
Example #2
0
 /**
  * Read installation parameters from stdin.
  * FIXME: May want to implement an abstract "CLIForm" class handling input/validation.
  * FIXME: Use readline if available?
  */
 function readParams()
 {
     if (checkPhpVersion('5.0.0')) {
         // WARNING: This form needs $this in constructor
         $installForm = new InstallForm();
     } else {
         $installForm =& new InstallForm();
     }
     // Locale Settings
     $this->printTitle('installer.localeSettings');
     $this->readParamOptions('locale', 'locale.primary', $installForm->supportedLocales, 'en_US');
     $this->readParamOptions('additionalLocales', 'installer.additionalLocales', $installForm->supportedLocales, '', true);
     $this->readParamOptions('clientCharset', 'installer.clientCharset', $installForm->supportedClientCharsets, 'utf-8');
     $this->readParamOptions('connectionCharset', 'installer.connectionCharset', $installForm->supportedConnectionCharsets, '');
     $this->readParamOptions('databaseCharset', 'installer.databaseCharset', $installForm->supportedDatabaseCharsets, '');
     // File Settings
     $this->printTitle('installer.fileSettings');
     $this->readParam('filesDir', 'installer.filesDir');
     $this->readParamBoolean('skipFilesDir', 'installer.skipFilesDir');
     // Security Settings
     $this->printTitle('installer.securitySettings');
     $this->readParamOptions('encryption', 'installer.encryption', $installForm->supportedEncryptionAlgorithms, 'md5');
     // Administrator Account
     $this->printTitle('installer.administratorAccount');
     $this->readParam('adminUsername', 'user.username');
     @`/bin/stty -echo`;
     $this->readParam('adminPassword', 'user.password');
     printf("\n");
     do {
         $this->readParam('adminPassword2', 'user.register.repeatPassword');
         printf("\n");
     } while ($this->params['adminPassword'] != $this->params['adminPassword2']);
     @`/bin/stty echo`;
     $this->readParam('adminEmail', 'user.email');
     // Database Settings
     $this->printTitle('installer.databaseSettings');
     $this->readParamOptions('databaseDriver', 'installer.databaseDriver', $installForm->checkDBDrivers());
     $this->readParam('databaseHost', 'installer.databaseHost', '');
     $this->readParam('databaseUsername', 'installer.databaseUsername', '');
     $this->readParam('databasePassword', 'installer.databasePassword', '');
     $this->readParam('databaseName', 'installer.databaseName');
     $this->readParamBoolean('createDatabase', 'installer.createDatabase', 'Y');
     // Miscellaneous Settings
     $this->printTitle('installer.miscSettings');
     $this->readParam('oaiRepositoryId', 'installer.oaiRepositoryId');
     $this->readParamBoolean('manualInstall', 'installer.manualInstall');
     printf("\n*** ");
 }