diff --git a/install/deleteUselessVideos.php b/install/deleteUselessVideos.php index f7c9c2cafd..aa98076e3f 100644 --- a/install/deleteUselessVideos.php +++ b/install/deleteUselessVideos.php @@ -1,83 +1,40 @@ $value) { - $dir = "{$path}{$value}"; - if (!is_dir($dir)) { - $bname = basename($dir); - if (in_array($bname, $doNotDeleteFilesList) || preg_match('/configuration\./i', $bname)) { - unset($files[$key]); - } else { - $filename = Video::getCleanFilenameFromFile($dir); - $video = Video::getVideoFromFileName($filename, true); - if (!empty($video)) { - //echo "+++ Video FOUND for filename {$filename} ".PHP_EOL; - unset($files[$key]); - } else { - $files[$key] = [$value, $dir]; - //echo "*** Video NOT found for filename {$filename} ".PHP_EOL; - } +ob_end_flush(); +$sql = "SELECT * FROM videos where status in ('".implode("', '", $arrayStatusToDelete)."') "; +$res = sqlDAL::readSql($sql); +$fullData = sqlDAL::fetchAllAssoc($res); +$total = count($fullData); +sqlDAL::close($res); +$rows = []; +if ($res != false) { + $count = 0; + foreach ($fullData as $key => $row) { + $count++; + if(!in_array($row['status'], $arrayStatusToDelete)){ + echo "{$total}/{$count} Deleteuseless skip status={$row['status']} title={$row['title']}".PHP_EOL; + continue; } - continue; - } - $file = "{$dir}" . DIRECTORY_SEPARATOR . "{$lockFilename}"; - if (file_exists($file)) { - $filename = Video::getCleanFilenameFromFile($dir); - $video = Video::getVideoFromFileName($filename, true); - if (!empty($video)) { - //echo "+++ Video FOUND for filename {$filename} ".PHP_EOL; - unset($files[$key]); + $v = new Video('', '', $row['id']); + if ($v->delete(true)) { + echo "{$total}/{$count} Deleteuseless deleted from status={$row['status']} title={$row['title']}".PHP_EOL; } else { - $files[$key] = [$value, $dir]; - //echo "*** Video NOT found for filename {$filename} ".PHP_EOL; - } - } else { - //echo "*** Lock file does not exists {$file} ".PHP_EOL; - unset($files[$key]); - } -} - -$total = count($files); -echo "*** Total filenames " . $total . " Will be deleted\n"; - -if (empty($total)) { - exit; -} - -$totalSize = 0; -foreach ($files as $key => $value) { - $size = getDirSize($value[1]); - $totalSize += $size; - echo "{$value[0]} => $value[1] " . (humanFileSize($size)) . " \n"; -} -echo "*** Confirm Delete Them (" . humanFileSize($totalSize) . ")? y/n: "; - -ob_flush(); -$confirm = trim(readline("")); -if (!empty($confirm) && strtolower($confirm) === 'y') { - foreach ($files as $key => $value) { - if (is_dir($value[1])) { - rrmdir($value[1]); - if (is_dir($value[1])) { - echo "$value[1] Directory Deleted \n"; - } else { - echo "$value[1] Directory Could Not be Deleted \n"; - } - } elseif (unlink($value[1])) { - echo "$value[1] Deleted \n"; - } else { - echo "$value[1] Could Not be Deleted \n"; + echo "{$total}/{$count} Deleteuseless ERROR status={$row['status']} title={$row['title']}".PHP_EOL; } } -} +} \ No newline at end of file