/**
  * Switch between local and live site(s) automatically by domain
  * or manually by Configure::read('Environment.current').
  */
 public function __construct()
 {
     $this->default = array_merge($this->_defaults, $this->default);
     $this->default = array_merge($this->default, Environments::getEnvironmentEmailConfig());
     if (!isset($this->test)) {
         $this->test = $this->default;
     }
     if (!empty($this->test['merge'])) {
         $this->test = array_merge($this->default, $this->test);
         unset($this->test['merge']);
     }
 }
 public function testPathEnvironmentDetection()
 {
     Environments::tearDown();
     EnvironmentsTestWrapper::prepareTestEnvironments();
     $this->assertEquals('testing', EnvironmentsTestWrapper::getEnvironment());
 }
 /**
  * @param ExcelFileAbstract $excel
  *
  * @return mixed
  */
 public function exportUsersListBackEnd(ExcelFileAbstract $excel)
 {
     $user_can_see_env = cms_is_superadmin();
     $this->setPresenter(new UserListExcelPresenter());
     if (!$user_can_see_env) {
         // Force filter on current environment
         $this->filterEnvironments([\Environments::currentId()]);
     }
     $users = $this->with(['roles'])->all($this->fields);
     $nb_users = $this->count();
     return $excel->setTitle(trans('users::backend.export.users_list.title'))->setCreator(Auth::user()->full_name)->setDescription(\Settings::get('cms.site.name') . PHP_EOL . \Settings::get('cms.site.description'))->sheet(sprintf(trans('users::backend.export.users_list.sheet_title'), date('Y-m-d H\\hi')), function ($sheet) use($users, $nb_users, $user_can_see_env) {
         /*
          * Header
          */
         $header = ['#', trans('global.civility'), trans('global.last_name'), trans('global.first_name'), trans('global.email'), trans('global.birth_date'), trans('global.role_s')];
         if ($user_can_see_env) {
             $header[] = trans('global.environment_s');
         }
         $header[] = trans('global.addresse_s');
         $sheet->prependRow($header);
         /*
          * Data
          */
         // Append row after row 2
         $sheet->rows($users['data']);
         // Append row after row 2
         $sheet->appendRow($nb_users + 2, [sprintf(trans('users::backend.export.total_users'), $nb_users)]);
         /*
          * Style
          */
         // Set black background
         $sheet->row(1, function ($row) {
             // Set font
             $row->setFont(['size' => '14', 'bold' => true])->setAlignment('center')->setValignment('middle');
         });
         // Freeze first row
         $sheet->freezeFirstRow();
         $sheet->cells('A2:F' . ($nb_users + 2), function ($cells) {
             // Set font
             $cells->setFont(['size' => '12', 'bold' => false, 'wrap-text' => true])->setAlignment('center')->setValignment('middle');
         });
         $sheet->row($nb_users + 2, function ($row) {
             // Set font
             $row->setFont(['size' => '12', 'bold' => true])->setAlignment('center')->setValignment('middle');
         });
     })->export('xls');
 }
 /**
  * @param array $session_installer ['APP_URL', 'APP_SITE_NAME']
  */
 public function addEnvironment(array $session_installer)
 {
     // Remove trailing slash
     if (substr($session_installer['APP_URL'], -1) == '/') {
         $session_installer['APP_URL'] = substr($session_installer['APP_URL'], 0, -1);
     }
     $this->r_environments->create(['name' => $session_installer['APP_SITE_NAME'], 'reference' => EnvironmentsRepositoryEloquent::DEFAULT_ENVIRONMENT_REFERENCE, 'domain' => $this->r_environments->get_domain_from_url($session_installer['APP_URL'])]);
     \Environments::loadEnvironment();
 }
Ejemplo n.º 5
0
        $item["expected"] = '';
        $item['value'] = $item["loaded"] ? "enabled" : "disabled";
        $item['warning_type'] = $item["loaded"] ? "ok" : "warning";
        $errors += printEnvironmentTest($item['title'], $item);
    }
    printEnvironmentTitle('php_settings_values');
    $data = Environments::checkPhpDirectives();
    foreach ($data as $key => $item) {
        $errors += printEnvironmentTest($key, $item);
    }
    printEnvironmentTitle('permissions');
    $extra = array();
    if ($db_error) {
        $extra = array("config/config.server.php" => array("expected" => "writable"));
    }
    $permissions = Environments::checkPermissions($extra);
    foreach ($permissions as $file => $item) {
        $errors += printEnvironmentTest("./" . $file, $item);
    }
    echo '</table>';
    if ($errors) {
        echo '<p>Please fix errors and <a href="#" onclick="location.reload(); return false;">Reload page</a></p>';
    } elseif ($db_error || $site_error) {
        echo '<p><a href="install.php?mode=config">Configure</a></p>';
    } else {
        echo '<p><a href="install.php?mode=install">Install</a></p>';
    }
    printFooter();
} elseif (!empty($_GET["mode"]) && $_GET["mode"] == "config" && ($db_error || $site_error)) {
    printHeader();
    echo '<form action="install.php" method="POST">';