mirror of
https://github.com/nextcloud/server.git
synced 2026-06-10 09:13:19 -04:00
clean up oc_share table from files which are no longer exists
This commit is contained in:
parent
401740166b
commit
0346167bb2
2 changed files with 17 additions and 7 deletions
|
|
@ -68,11 +68,21 @@ if (version_compare($installedVersion, '0.3', '<')) {
|
|||
// $query = OCP\DB::prepare('DROP TABLE `*PREFIX*sharing`');
|
||||
// $query->execute();
|
||||
}
|
||||
if (version_compare($installedVersion, '0.3.3', '<')) {
|
||||
OC_User::useBackend(new OC_User_Database());
|
||||
OC_App::loadApps(array('authentication'));
|
||||
$users = OC_User::getUsers();
|
||||
foreach ($users as $user) {
|
||||
// OC_FileCache::delete('Shared', '/'.$user.'/files/');
|
||||
|
||||
// clean up oc_share table from files which are no longer exists
|
||||
if (version_compare($installedVersion, '0.3.4', '<')) {
|
||||
|
||||
// get all shares where the original file no longer exists
|
||||
$findShares = \OC_DB::prepare('SELECT `file_source` FROM `*PREFIX*share` LEFT JOIN `*PREFIX*filecache` ON `file_source` = `*PREFIX*filecache`.`fileid` WHERE `*PREFIX*filecache`.`fileid` IS NULL');
|
||||
$sharesFound = $findShares->execute(array())->fetchAll();
|
||||
|
||||
// delete those shares from the oc_share table
|
||||
if (is_array($sharesFound) && !empty($sharesFound)) {
|
||||
$delArray = array();
|
||||
foreach ($sharesFound as $share) {
|
||||
$delArray[] = $share['file_source'];
|
||||
}
|
||||
$removeShares = \OC_DB::prepare('DELETE FROM `*PREFIX*share` WHERE `file_source` IN (?)');
|
||||
$result = $removeShares->execute(array(implode(',', $delArray)));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
0.3.3
|
||||
0.3.4
|
||||
Loading…
Reference in a new issue