73 lines
4.6 KiB
Plaintext
73 lines
4.6 KiB
Plaintext
<?php
|
|
|
|
/**
|
|
* @file
|
|
* Allows site administrators to modify configuration.
|
|
*/
|
|
|
|
use Drupal\Core\Routing\RouteMatchInterface;
|
|
|
|
/**
|
|
* Implements hook_help().
|
|
*/
|
|
function config_help($route_name, RouteMatchInterface $route_match) {
|
|
switch ($route_name) {
|
|
case 'help.page.config':
|
|
$output = '';
|
|
$output .= '<h3>' . t('About') . '</h3>';
|
|
$output .= '<p>' . t('The Configuration Manager module provides a user interface for importing and exporting configuration changes between installations of your website in different environments. Configuration is stored in YAML format. For more information, see the <a href="!url">online documentation for the Configuration Manager module</a>.', array('!url' => 'https://www.drupal.org/documentation/administer/config')) . '</p>';
|
|
$output .= '<h3>' . t('Uses') . '</h3>';
|
|
$output .= '<dl>';
|
|
$output .= '<dt>' . t('Exporting the full configuration') . '</dt>';
|
|
$output .= '<dd>' . t('You can create and download an archive consisting of all your site\'s configuration exported as <em>*.yml</em> files on the <a href="!url">Export</a> page.' , array('!url' => \Drupal::url('config.export_full'))) . '</dd>';
|
|
$output .= '<dt>' . t('Importing a full configuration') . '</dt>';
|
|
$output .= '<dd>' . t('You can upload a full site configuration from an archive file on the <a href="!url">Import</a> page. When importing data from a different environment, the site and import files must have matching configuration values for UUID in the <em>system.site</em> configuration item. That means that your other environments should initially be set up as clones of the target site. Migrations are not supported.', array('!url' => \Drupal::url('config.import_full'))) . '</dd>';
|
|
$output .= '<dt>' . t('Synchronizing configuration'). '</dt>';
|
|
$output .= '<dd>' . t('You can review differences between the active configuration and an imported configuration archive on the <a href="!synchronize">Synchronize</a> page to ensure that the changes are as expected, before finalizing the import. The Synchronize page also shows configuration items that would be added or removed.', array('!synchronize' => \Drupal::url('config.sync'))) . '</dd>';
|
|
$output .= '<dt>' . t('Exporting a single configuration item') . '</dt>';
|
|
$output .= '<dd>' . t('You can export a single configuration item by selecting a <em>Configuration type</em> and <em>Configuration name</em> on the <a href="!single-export">Single export</a> page. The configuration and its corresponding <em>*.yml file name</em> are then displayed on the page for you to copy.', array('!single-export' => \Drupal::url('config.export_single'))) . '</dd>';
|
|
$output .= '<dt>' . t('Importing a single configuration item') . '</dt>';
|
|
$output .= '<dd>' . t('You can import a single configuration item by pasting it in YAML format into the form on the <a href="!single-import">Single import</a> page.', array('!single-import' => \Drupal::url('config.import_single'))) . '</dd>';
|
|
$output .= '</dl>';
|
|
return $output;
|
|
|
|
case 'config.sync':
|
|
$output = '';
|
|
$output .= '<p>' . t('Import configuration that is placed in your staging directory. All changes, deletions, renames, and additions are listed below.') . '</p>';
|
|
return $output;
|
|
|
|
case 'config.export_full':
|
|
$output = '';
|
|
$output .= '<p>' . t('The full export page can be used to export the full configuration of this site, and download it as a gzipped tar file.') . '</p>';
|
|
return $output;
|
|
|
|
case 'config.import_full':
|
|
$output = '';
|
|
$output .= '<p>' . t('The full import page can be used to import a full set of configuration for this site by uploading a gzipped or bzipped tar file consisting of all configuration YAML files. The results will be placed in a the staging directory, so they can be compared in the Synchronize tab. There the import can be finalized.') . '</p>';
|
|
return $output;
|
|
|
|
case 'config.export_single':
|
|
$output = '';
|
|
$output .= '<p>' . t('The single export page can be used to display a single configuration item in a YAML structure.') . '</p>';
|
|
return $output;
|
|
|
|
case 'config.import_single':
|
|
$output = '';
|
|
$output .= '<p>' . t('The single import page can be used to import a single configuration item by pasting a YAML structure into the text field.') . '</p>';
|
|
return $output;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Implements hook_file_download().
|
|
*/
|
|
function config_file_download($uri) {
|
|
$scheme = file_uri_scheme($uri);
|
|
$target = file_uri_target($uri);
|
|
if ($scheme == 'temporary' && $target == 'config.tar.gz') {
|
|
return array(
|
|
'Content-disposition' => 'attachment; filename="config.tar.gz"',
|
|
);
|
|
}
|
|
}
|