/**
  * Method to get the list of database options.
  *
  * This method produces a drop down list of available databases supported
  * by JDatabaseDriver classes that are also supported by the application.
  *
  * @return  array    The field option objects.
  *
  * @since   1.0
  * @see		Joomla\Database\DatabaseDriver
  */
 protected function getOptions()
 {
     // This gets the connectors available in the platform and supported by the server.
     $available = DatabaseDriver::getConnectors();
     /**
      * This gets the list of database types supported by the application.
      * This should be entered in the form definition as a comma separated list.
      * If no supported databases are listed, it is assumed all available databases
      * are supported.
      */
     $supported = $this->element['supported'];
     if (!empty($supported)) {
         $supported = explode(',', $supported);
         foreach ($supported as $support) {
             if (in_array($support, $available)) {
                 $options[$support] = Text::_(ucfirst($support));
             }
         }
     } else {
         foreach ($available as $support) {
             $options[$support] = Text::_(ucfirst($support));
         }
     }
     // This will come into play if an application is installed that requires
     // a database that is not available on the server.
     if (empty($options)) {
         $options[''] = Text::_('JNONE');
     }
     return $options;
 }
예제 #2
0
 /**
  * Tests the Joomla\Database\DatabaseDriver::getConnectors method.
  *
  * @return  void
  *
  * @since   1.0
  */
 public function testGetConnectors()
 {
     $this->assertContains('Sqlite', $this->instance->getConnectors(), 'The getConnectors method should return an array with Sqlite as an available option.');
 }
예제 #3
0
 /**
  * List of PDO Drivers according with available SQL
  *
  * @return array
  */
 public function dboDrivers()
 {
     return array_intersect($this->dbDrivers, DatabaseDriver::getConnectors());
 }