key_config.features.inc in Key 7
Same filename and directory in other branches
Provides Features integration for managing keys.
File
includes/key_config.features.incView source
<?php
/**
* @file
* Provides Features integration for managing keys.
*/
/**
* Implements hook_features_export_options().
*/
function key_config_features_export_options() {
return key_get_configs_as_options(TRUE);
}
/**
* Implements hook_features_export().
*/
function key_config_features_export($data, &$export, $module_name) {
$pipe = array();
$export['dependencies']['key'] = 'key';
foreach ($data as $component) {
$export['features']['key_config'][$component] = $component;
}
return $pipe;
}
/**
* Implements hook_features_export_render().
*/
function key_config_features_export_render($module_name, $data, $export = NULL) {
$code = array();
$code[] = ' $configs = array();';
$code[] = '';
foreach ($data as $name) {
$config = key_get_config($name, TRUE);
$config_identifier = features_var_export($name);
$config_export = features_var_export($config, ' ');
$code[] = " // Exported key: {$name}.";
$code[] = " \$configs[{$config_identifier}] = {$config_export};";
$code[] = "";
}
$code[] = ' return $configs;';
$code = implode("\n", $code);
return array(
'key_default_configs' => $code,
);
}
/**
* Implements hook_features_revert().
*/
function key_config_features_revert($module) {
key_config_features_rebuild($module);
}
/**
* Implements hook_features_rebuild().
*/
function key_config_features_rebuild($module) {
$configs = module_invoke($module, 'key_default_configs');
foreach ($configs as $key => $config) {
key_save_config($config, FALSE);
}
}
Functions
Name | Description |
---|---|
key_config_features_export | Implements hook_features_export(). |
key_config_features_export_options | * Implements hook_features_export_options(). |
key_config_features_export_render | Implements hook_features_export_render(). |
key_config_features_rebuild | Implements hook_features_rebuild(). |
key_config_features_revert | Implements hook_features_revert(). |