function featured_content_update_6000 in Featured Content 6
Same name and namespace in other branches
- 6.2 featured_content.install \featured_content_update_6000()
Make sure that the settings are updated properly to deal with issue #705308.
File
- ./
featured_content.install, line 41 - Provides install, upgrade and un-install functions for featured_content.
Code
function featured_content_update_6000() {
$featured_blocks = variable_get('featured_content_blocks', array());
if (!empty($featured_blocks)) {
foreach ($featured_blocks as $delta => $data) {
// convert content type settings
if ($data['filter']['content_types']['node']) {
$featured_blocks[$delta]['filter']['content_types']['type']['CURRENT'] = 1;
}
if ($data['filter']['content_types']['option'] == 'content_type_selected') {
$selected = $data['filter']['content_types']['selected'];
foreach ($selected as $name => $value) {
if ($value) {
$featured_blocks[$delta]['filter']['content_types']['type'][$name] = 1;
}
}
}
// convert user settings
if ($data['filter']['users']['node']) {
$featured_blocks[$delta]['filter']['users']['user']['CURRENT'] = 1;
}
if ($data['filter']['users']['option'] == 'user_selected') {
$selected = $data['filter']['users']['selected'];
foreach ($selected as $uid => $value) {
if ($value) {
$featured_blocks[$delta]['filter']['users']['user'][$uid] = 1;
}
}
}
// convert vocabulary settings
$vocabularies = taxonomy_get_vocabularies();
foreach ($vocabularies as $vocabulary) {
$vid = $vocabulary->vid;
if ($data['filter']['vocab'][$vid]['node']) {
$featured_blocks[$delta]['filter']['vocab'][$vid]['term']['CURRENT'] = 1;
}
if ($data['filter']['vocab'][$vid]['option'] == 'vocab_selected') {
$selected = $data['filter']['vocab'][$vid]['selected'];
foreach ($selected as $tid => $value) {
if ($value) {
$featured_blocks[$delta]['filter']['vocab'][$vid]['term'][$tid] = 1;
}
}
}
}
}
}
variable_set('featured_content_blocks', $featured_blocks);
return array();
}