function content_update_6002 in Content Construction Kit (CCK) 6.2
Same name and namespace in other branches
- 6.3 content.install \content_update_6002()
- 6 content.install \content_update_6002()
Get rid of automatic per content tables for content types that have no fields. Switching to adding those tables only when needed.
File
- ./
content.install, line 341
Code
function content_update_6002() {
if ($abort = content_check_update()) {
return $abort;
}
$ret = array();
drupal_load('module', 'content');
$db_types = content_types_install();
$field_types = array();
$result = db_query("SELECT DISTINCT type_name FROM {" . content_instance_tablename() . "}");
while ($type = db_fetch_array($result)) {
$field_types[] = $type['type_name'];
}
foreach ($db_types as $content_type => $content_info) {
if (!in_array($content_type, $field_types)) {
$table = _content_tablename($content_type, CONTENT_DB_STORAGE_PER_CONTENT_TYPE);
if (db_table_exists($table)) {
db_drop_table($ret, $table);
}
}
}
variable_set('content_schema_version', 6002);
content_clear_type_cache(TRUE);
return $ret;
}