| Conditions | 4 |
| Paths | 6 |
| Total Lines | 32 |
| Code Lines | 19 |
| Lines | 0 |
| Ratio | 0 % |
| Changes | 0 | ||
| 1 | <?php |
||
| 32 | public function run($request) |
||
| 33 | { |
||
| 34 | $sql = ' |
||
| 35 | SELECT Filename |
||
| 36 | FROM `File` |
||
| 37 | LEFT JOIN File_Live ON File.ID = File_Live.ID |
||
| 38 | WHERE File_Live.ID IS NULL AND File.ClassName = \'SilverStripe\\\Assets\\\File\' ORDER BY File.Filename |
||
| 39 | '; |
||
| 40 | $rows = DB::query($sql); |
||
| 41 | echo '<h2>Files that are not published</h2>'; |
||
| 42 | foreach ($rows as $row) { |
||
| 43 | DB::alteration_message($row['Filename'], 'deleted'); |
||
| 44 | } |
||
| 45 | |||
| 46 | $sql = ' |
||
| 47 | SELECT "Filename", "ID" |
||
| 48 | FROM "File" |
||
| 49 | WHERE |
||
| 50 | "ClassName" = \'' . addslashes(File::class) . '\' |
||
| 51 | ORDER BY Filename ASC'; |
||
| 52 | $rows = DB::query($sql); |
||
| 53 | $baseDir = Director::baseFolder() . '/public/'; |
||
| 54 | foreach ($rows as $row) { |
||
| 55 | $fullName = $baseDir . $row['Filename']; |
||
| 56 | if (file_exists($fullName)) { |
||
| 57 | echo '.'; |
||
| 58 | } else { |
||
| 59 | DB::alteration_message('DELETING: ' . $fullName, 'deleted'); |
||
| 60 | $sql = 'DELETE FROM File WHERE ID = ' . $row['ID'] . ';'; |
||
| 61 | DB::query($sql); |
||
| 62 | $sql = 'DELETE FROM File_Live WHERE ID = ' . $row['ID'] . ';'; |
||
| 63 | DB::query($sql); |
||
| 64 | } |
||
| 68 |