| ␊ |
| function IDF_Migrations_17DownloadMD5_up($params=null)␊ |
| {␊ |
| // Add the row␊ |
| $table = Pluf::factory('IDF_Upload')->getSqlTable();␊ |
| $sql = array();␊ |
| $sql['PostgreSQL'] = 'ALTER TABLE '.$table.' ADD COLUMN "md5" TEXT DEFAULT \'\'';␊ |
| $sql['MySQL'] = 'ALTER TABLE '.$table.' ADD COLUMN `md5` LONGTEXT DEFAULT \'\'';␊ |
| $sql['PostgreSQL'] = 'ALTER TABLE '.$table.' ADD COLUMN "md5" VARCHAR(32) DEFAULT \'\'';␊ |
| $sql['MySQL'] = 'ALTER TABLE '.$table.' ADD COLUMN `md5` VARCHAR(32) DEFAULT \'\'';␊ |
| $db = Pluf::db();␊ |
| $engine = Pluf::f('db_engine');␊ |
| if (!isset($sql[$engine])) {␊ |
| throw new Exception('SQLite complex migration not supported.');␊ |
| }␊ |
| $db->execute($sql[$engine]);␊ |
| ␊ |
| // Process md5 of already uploaded file␊ |
| $files = Pluf::factory('IDF_Upload')->getList();␊ |
| foreach ($files as $f) {␊ |
| $f->md5 = md5_file (Pluf::f('upload_path') . '/' . $f->get_project()->shortname . '/files/' . $f->file);␊ |
| $f->update();␊ |
| }␊ |
| }␊ |
| ␊ |
| function IDF_Migrations_17DownloadMD5_down($params=null)␊ |
| {␊ |
| // Remove the row␊ |
| $table = Pluf::factory('IDF_Upload')->getSqlTable();␊ |
| $sql = array();␊ |
| $sql['PostgreSQL'] = 'ALTER TABLE '.$table.' DROP COLUMN "md5"';␊ |
|
| throw new Exception('SQLite complex migration not supported.');␊ |
| }␊ |
| $db->execute($sql[$engine]);␊ |
| ␊ |
| }␊ |