formStart(_DOWN_ADMIN_ACT_THUMBS); echo <<
 
UNDER_HEADING; $interface = remositoryInterface::getInstance(); $database = $interface->getDB(); $noproblem = true; $dirpath = $interface->getCfg('absolute_path').remositoryThumbnails::baseFilePath(); $pattern = remositoryThumbnails::dirPattern(); $dir = new remositoryDirectory ($dirpath); $directories = $dir->listFiles($pattern,'dir'); foreach ($directories as $directory) { $filenum = substr($directory,strlen($pattern)); $fileint = intval($filenum); $sql = "SELECT id FROM #__downloads_files WHERE id=$fileint"; $database->setQuery($sql); $dbresult = $database->loadResult(); $filedir = new remositoryDirectory ($dirpath.$directory); $files = $filedir->listFiles('th_'.$filenum); $allfiles = $filedir->listFiles(); if ($dbresult AND count($files) == 0) { foreach ($allfiles as $delfile) @unlink($dirpath.$directory.'/'.$delfile); @rmdir($dirpath.$directory); echo ''.$dirpath.$directory._DOWN_NO_RELEVANT_THUMB.''; $noproblem = false; } else { foreach ($files as $file) $imgfiles[] = str_replace('th_','img_',$file); foreach ($allfiles as $file) { if (in_array($file,$files) OR in_array($file,$imgfiles)) continue; echo ''.sprintf(_DOWN_THUMB_NOT_BELONG, $file, $dirpath.$directory).''; @unlink($dirpath.$directory.'/'.$file); $noproblem = false; } } if (!$dbresult) { foreach ($allfiles as $delfile) @unlink($dirpath.$directory.'/'.$delfile); @rmdir($dirpath.$directory); echo ''.$dirpath.$directory._DOWN_THUMB_NOT_IN_DB.''; $noproblem = false; } } if ($noproblem) echo ''._DOWN_THUMB_OK.''; $view->simpleFormEnd(); } }