Migrate filter formats into configuration.
function filter_update_8001() {
$uuid = new Uuid();
$result = db_query('SELECT format, name, cache, status, weight FROM {filter_format}', array(), array(
'fetch' => PDO::FETCH_ASSOC,
));
foreach ($result as $format) {
$id = $format['format'];
// Generate a UUID.
$format['uuid'] = $uuid
->generate();
// Retrieve and prepare all filters.
$filters = db_query('SELECT name, module, status, weight, settings FROM {filter} WHERE format = :format ORDER BY weight, module, name', array(
':format' => $id,
), array(
'fetch' => PDO::FETCH_ASSOC,
))
->fetchAllAssoc('name');
foreach ($filters as $name => &$filter) {
// The filter name is used as key only.
unset($filter['name']);
$filter['settings'] = unserialize($filter['settings']);
}
$format['filters'] = $filters;
// Save the config object.
$config = config('filter.format.' . $id);
$config
->setData($format);
$config
->save();
}
}