function hierarchical_select_update_3 in Hierarchical Select 5.3
Same name and namespace in other branches
- 6.3 hierarchical_select.install \hierarchical_select_update_3()
File
- ./
hierarchical_select.install, line 80 - Install file for the Hierarchical Select module.
Code
function hierarchical_select_update_3() {
$ret = array();
$vocabularies = taxonomy_get_vocabularies();
foreach ($vocabularies as $vid => $vocabulary) {
$config = array();
// Generate the config_id.
$config['config_id'] = "taxonomy-{$vid}";
// save_lineage and enforce_deepest settings.
foreach (array(
'save_lineage',
'enforce_deepest',
) as $setting) {
$var = "hierarchical_select_{$setting}_{$vid}";
$config[$setting] = (int) variable_get($var, 0);
variable_del($var);
}
// Level labels.
$var = "hierarchical_select_level_labels_status_{$vid}";
$config['level_labels']['status'] = variable_get($var, 0);
variable_del($var);
$config['level_labels']['labels'] = array();
for ($depth = 0; $depth < hierarchical_select_update_3_taxonomy_hierarchical_select_get_depth($vid); $depth++) {
$var = "hierarchical_select_level_{$depth}_{$vid}";
$config['level_labels']['labels'][$depth] = variable_get($var, '');
variable_del($var);
}
// Dropbox settings.
$var = "hierarchical_select_multiple_{$vid}";
$config['dropbox']['status'] = variable_get($var, 0);
variable_del($var);
foreach (array(
'title',
'limit',
) as $setting) {
$var = "hierarchical_select_dropbox_{$setting}_{$vid}";
$config['dropbox'][$setting] = variable_get($var, 0);
variable_del($var);
}
$config['dropbox']['reset_hs'] = 1;
variable_set('hierarchical_select_config_' . $config['config_id'], $config);
// Rename the variable that indicates if a vocabulary is using
// Hierarchical Select or not.
$var = "hierarchical_select_status_{$vid}";
variable_set("taxonomy_hierarchical_select_{$vid}", variable_get($var, 0));
variable_del($var);
drupal_set_message('Migrated Hierarchical Select settings for vocabulary ' . $vid . '.');
}
return $ret;
}