original_string: public function database()
      {
          if (!$this->_step('license')) {
              $this->redirect(['plugin' => 'Installer', 'controller' => 'startup', 'action' => 'license']);
          }
  
          if (!empty($this->request->data)) {
              $dbInstaller = new DatabaseInstaller();
              if ($dbInstaller->install($this->request->data())) {
                  $this->_step();
                  $this->redirect(['plugin' => 'Installer', 'controller' => 'startup', 'action' => 'account']);
              } else {
                  $errors = '';
                  foreach ($dbInstaller->errors() as $error) {
                      $errors .= "\t<li>{$error}</li>\n";
                  }
                  $this->Flash->danger("<ul>\n{$errors}</ul>\n");
              }
          }
  
          $this->title(__d('installer', 'Database Configuration'));
      }
code: public function database()
      {
          if (!$this->_step('license')) {
              $this->redirect(['plugin' => 'Installer', 'controller' => 'startup', 'action' => 'license']);
          }
  
          if (!empty($this->request->data)) {
              $dbInstaller = new DatabaseInstaller();
              if ($dbInstaller->install($this->request->data())) {
                  $this->_step();
                  $this->redirect(['plugin' => 'Installer', 'controller' => 'startup', 'action' => 'account']);
              } else {
                  $errors = '';
                  foreach ($dbInstaller->errors() as $error) {
                      $errors .= "\t<li>{$error}</li>\n";
                  }
                  $this->Flash->danger("<ul>\n{$errors}</ul>\n");
              }
          }
  
          $this->title(__d('installer', 'Database Configuration'));
      }
code_tokens: public function database ( ) { if ( ! $ this -> _step ( 'license' ) ) { $ this -> redirect ( [ 'plugin' => 'Installer' , 'controller' => 'startup' , 'action' => 'license' ] ) ; } if ( ! empty ( $ this -> request -> data ) ) { $ dbInstaller = new DatabaseInstaller ( ) ; if ( $ dbInstaller -> install ( $ this -> request -> data ( ) ) ) { $ this -> _step ( ) ; $ this -> redirect ( [ 'plugin' => 'Installer' , 'controller' => 'startup' , 'action' => 'account' ] ) ; } else { $ errors = '' ; foreach ( $ dbInstaller -> errors ( ) as $ error ) { $ errors .= "\t<li>{$error}</li>\n" ; } $ this -> Flash -> danger ( "<ul>\n{$errors}</ul>\n" ) ; } } $ this -> title ( __d ( 'installer' , 'Database Configuration' ) ) ; }
docstring: Fourth step of the installation process.
  
  User must introduce database connection information.
  
  @return void
docstring_tokens: Fourth step of the installation process .