예제 #1
0
 public function action4()
 {
     if (Yii::$app->request->isAjax) {
         Yii::$app->response->format = Response::FORMAT_JSON;
         $result = SetupHelper::runMigrations();
         return $result;
     }
     return '';
 }
예제 #2
0
 /**
  * @return bool If connection ok?
  */
 public function testConnection()
 {
     $config = SetupHelper::createDatabaseConfig($this->getAttributes());
     $result = false;
     try {
         /** @var \yii\db\Connection $dbComponent */
         $dbComponent = Yii::createObject($config);
         $dbComponent->open();
         $result = true;
     } catch (\Exception $e) {
         Yii::$app->session->setFlash('danger', Yii::t('setup', 'Database connection error:') . ' ' . $e->getMessage());
     }
     return $result;
 }
예제 #3
0
 /**
  * Return all requirements
  *
  * @return array
  */
 public static function all()
 {
     return array(array('name' => Yii::t('setup', 'PHP version'), 'mandatory' => true, 'condition' => version_compare(PHP_VERSION, '5.4.0', '>='), 'by' => Yii::t('setup', 'Core'), 'memo' => Yii::t('setup', 'PHP 5.4.0 or higher is required.')), array('name' => Yii::t('setup', 'Reflection extension'), 'mandatory' => true, 'condition' => class_exists('Reflection', false), 'by' => Yii::t('setup', 'Core')), array('name' => Yii::t('setup', 'PCRE extension'), 'mandatory' => true, 'condition' => extension_loaded('pcre'), 'by' => Yii::t('setup', 'Core')), array('name' => Yii::t('setup', 'SPL extension'), 'mandatory' => true, 'condition' => extension_loaded('SPL'), 'by' => Yii::t('setup', 'Core')), array('name' => Yii::t('setup', 'Ctype extension'), 'mandatory' => true, 'condition' => extension_loaded('ctype'), 'by' => Yii::t('setup', 'Core')), array('name' => Yii::t('setup', 'MBString extension'), 'mandatory' => true, 'condition' => extension_loaded('mbstring'), 'by' => '<a href="http://www.php.net/manual/en/book.mbstring.php">Multibyte string</a> processing', 'memo' => Yii::t('setup', 'Required for multibyte encoding string processing.')), array('name' => Yii::t('setup', 'Fileinfo extension'), 'mandatory' => false, 'condition' => extension_loaded('fileinfo'), 'by' => '<a href="http://www.php.net/manual/en/book.fileinfo.php">File Information</a>', 'memo' => Yii::t('setup', 'Required for files upload to detect correct file mime-types.')), array('name' => Yii::t('setup', 'DOM extension'), 'mandatory' => true, 'condition' => extension_loaded('dom'), 'by' => '<a href="http://php.net/manual/en/book.dom.php">Document Object Model</a>', 'memo' => Yii::t('setup', 'Required by Form Builder and REST API.')), array('name' => Yii::t('setup', 'JSON extension'), 'mandatory' => true, 'condition' => extension_loaded('json'), 'by' => '<a href="http://php.net/manual/en/book.json.php">JavaScript Object Notation</a>', 'memo' => Yii::t('setup', 'Required by Form Builder and REST API.')), array('name' => Yii::t('setup', 'PDO extension'), 'mandatory' => true, 'condition' => extension_loaded('pdo'), 'by' => Yii::t('setup', 'All DB-related')), array('name' => Yii::t('setup', 'PDO MySQL extension'), 'mandatory' => true, 'condition' => extension_loaded('pdo_mysql'), 'by' => Yii::t('setup', 'All DB-related'), 'memo' => Yii::t('setup', 'Required for MySQL database.')), array('name' => Yii::t('setup', 'Curl extension'), 'mandatory' => false, 'condition' => extension_loaded('curl'), 'by' => 'Add-ons', 'memo' => 'Required for Third party application integration services.'), array('name' => Yii::t('setup', 'Runtime Directory'), 'mandatory' => true, 'condition' => is_writable(Yii::getAlias('@app/runtime')), 'by' => Yii::t('setup', 'File System'), 'memo' => Yii::t('setup', "The '{directory}' directory must be writable by the web server (chmod -R 0777).", ['directory' => '/runtime'])), array('name' => Yii::t('setup', 'Assets Directory'), 'mandatory' => true, 'condition' => is_writable(Yii::getAlias('@app/assets')), 'by' => Yii::t('setup', 'File System'), 'memo' => Yii::t('setup', "The '{directory}' directory must be writable by the web server (chmod -R 0777).", ['directory' => '/assets'])), array('name' => Yii::t('setup', 'Static Files Directory'), 'mandatory' => true, 'condition' => is_writable(Yii::getAlias('@app/static_files')), 'by' => Yii::t('setup', 'File System'), 'memo' => Yii::t('setup', "The '{directory}' directory must be writable by the web server (chmod -R 0777).", ['directory' => '/static_files'])), array('name' => Yii::t('setup', 'Database Config File'), 'mandatory' => true, 'condition' => SetupHelper::checkDatabaseConfigFilePermissions(), 'by' => Yii::t('setup', 'File System'), 'memo' => Yii::t('setup', "The database config file '/config/db.php' must be writable by the web server (chmod 0777).")));
 }