static function remove_metadata_field() { $migrated = modOpts::GetOption('metadata_migrated'); if ($migrated) { return; } try { $obj = utopia::GetInstance('uWidgets', false); $obj->BypassSecurity(true); $ds = database::query('SELECT * FROM tabledef_Widgets WHERE `block_type` = ? AND `__metadata` IS NOT NULL', array('uCustomWidget')); while ($row = $ds->fetch()) { $pk = $row['widget_id']; $meta = utopia::jsonTryDecode($row['__metadata']); foreach ($meta as $field => $val) { $obj->UpdateField($field, $val, $pk); } } $obj->BypassSecurity(false); $ds = database::query('UPDATE tabledef_Widgets SET `__metadata` = NULL WHERE `block_type` = ? AND `__metadata` IS NOT NULL', array('uCustomWidget')); } catch (Exception $e) { } try { $obj = utopia::GetInstance('uWidgets', false); $obj->BypassSecurity(true); $ds = database::query('SELECT * FROM tabledef_Widgets WHERE `block_type` = ? AND `__metadata` IS NOT NULL', array('uTextWidget')); while ($row = $ds->fetch()) { $pk = $row['widget_id']; $meta = utopia::jsonTryDecode($row['__metadata']); foreach ($meta as $field => $val) { $obj->UpdateField($field, $val, $pk); } } $obj->BypassSecurity(false); $ds = database::query('UPDATE tabledef_Widgets SET `__metadata` = NULL WHERE `block_type` = ? AND `__metadata` IS NOT NULL', array('uTextWidget')); } catch (Exception $e) { } try { $obj = utopia::GetInstance('uWidgets', false); $obj->BypassSecurity(true); $ds = database::query('SELECT * FROM tabledef_Widgets WHERE `block_type` = ? AND `__metadata` IS NOT NULL', array('uTwitterWidget')); while ($row = $ds->fetch()) { $pk = $row['widget_id']; $meta = utopia::jsonTryDecode($row['__metadata']); foreach ($meta as $field => $val) { $obj->UpdateField($field, $val, $pk); } } $obj->BypassSecurity(false); $ds = database::query('UPDATE tabledef_Widgets SET `__metadata` = NULL WHERE `block_type` = ? AND `__metadata` IS NOT NULL', array('uTwitterWidget')); } catch (Exception $e) { } $ds = database::query('SHOW TABLES'); while ($t = $ds->fetch(PDO::FETCH_NUM)) { try { database::query('ALTER TABLE ' . $t[0] . ' DROP `__metadata`'); } catch (Exception $e) { } } modOpts::SetOption('metadata_migrated', true); }
public static function uCMS_publish_update() { $done = modOpts::GetOption('cms_publish_update'); if ($done) { return; } $o = utopia::GetInstance('uCMS_Edit'); $o->BypassSecurity(true); $ds = $o->GetDataset(array('{content_published_time} > {content_time}')); while ($row = $ds->fetch()) { $o->UpdateFieldRaw('content_published_time', '`content_time`', $row['cms_id']); } $o->BypassSecurity(false); modOpts::SetOption('cms_publish_update', true); }