ModeCommand.php
<?php
// we should wrap all this in a method or something ....
$yaml = new Yaml();
$settings = $this->get('settings');
$services_file = $settings->getServicesFile();
// Copy default.services.yml in sites/default/ into sites/default/services.yml
//@TODO: handle it if services.yml exists
if (!$settings->exists($services_file)) {
$settings->rename(
$settings->getDefaultServicesFile(),
$settings->getServicesFile()
);
}
$services = $yaml->parse(file_get_contents($services_file));
$settings_file = $settings->getSettingsFile("local");
$cache_bins_strings = $settings->getCacheBinsStrings();
$settings->set_perms(
[$settings->getSettingsPath(), $settings_file, $settings->getServicesFile()],
0777
);
// Copy sites/example.settings.local.php to sites/default/settings.local.php
$settings->copy(
$settings->getExampleSettingsLocalFile(),
$settings->getSettingsLocalFile()
);
// Uncomment the following lines in sites/default/settings.php
$settings->write(
$settings_file,
file_get_contents($settings_file) . $settings->get_settings_local_str()
);
// activate $settings['cache']['bins'] in settings.php
$settings->write(
$settings->getSettingsLocalFile(),
file_get_contents($settings_file) . $cache_bins_strings
);
$settings->set_perms(
[$settings->getSettingsPath()],
0555
);
$settings->set_perms(
[$settings_file, $settings->getServicesFile()],
0444
);
//@TODO: clear cache
//@TODO: $io->commentBlock("action performed")