function google_admanager_update_6103 in DFP Small Business (Google Ad Manager) 6
Same name and namespace in other branches
- 6.3 google_admanager.install \google_admanager_update_6103()
- 6.2 google_admanager.install \google_admanager_update_6103()
- 7.2 google_admanager.install \google_admanager_update_6103()
Try again with last broken upgrade Description is at http://drupal.org/node/624284#comment-2939486
1 call to google_admanager_update_6103()
- google_admanager_update_6200 in ./
google_admanager.install - Baseline for 6.x-2.x schema
File
- ./
google_admanager.install, line 73
Code
function google_admanager_update_6103() {
$ret = array();
$delta = db_result(db_query("SELECT delta FROM {blocks} WHERE module = 'google_admanager'"));
if (empty($delta)) {
// nothing in database
return $ret;
}
$ad_slots = variable_get('google_admanager_ad_slots', '');
$ad_slots = explode("\n", str_replace(array(
"\r",
"\t",
"\0",
"\v",
" ",
), '', trim($ad_slots)));
if (strlen($delta) > 3) {
// convert back to the old schema
foreach ($ad_slots as $i => $ad_slot) {
db_query("UPDATE {blocks} SET delta = '%d' WHERE module = 'google_admanager' AND (delta = '%s' OR delta = '%s') LIMIT 1", $i, truncate_utf8(drupal_strtolower($ad_slot), 64), truncate_utf8(drupal_strtolower($ad_slot), 32));
if (module_exists('panels')) {
db_query("UPDATE {panels_pane} SET subtype = 'google_admanager-%d' WHERE type = 'block' AND (subtype = 'google_admanager-%s' OR subtype = 'google_admanager-%s') LIMIT 1", $i, truncate_utf8(drupal_strtolower($ad_slot), 64), truncate_utf8(drupal_strtolower($ad_slot), 32));
}
}
}
// Ok now the real update
foreach ($ad_slots as $i => $ad_slot) {
$ret[] = update_sql("UPDATE {blocks} SET delta = '" . md5(trim($ad_slot)) . "' WHERE module = 'google_admanager' AND delta = '" . $i . "'");
if (module_exists('panels')) {
$ret[] = update_sql("UPDATE {panels_pane} SET subtype = 'google_admanager-" . md5(trim($ad_slot)) . "' WHERE type = 'block' AND subtype = 'google_admanager-" . $i . "'");
}
}
return $ret;
}