mirror of
https://github.com/VueFileManager/vuefilemanager.git
synced 2026-04-18 08:12:15 +00:00
Fixed issue where metered billing mode still count in some cases members after team folder was deleted
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
## Version 2.2.4
|
## Version 2.2.4
|
||||||
#### Release date: 8. August 2022
|
#### Release date: 8. August 2022
|
||||||
- Account verification email is now sending in preferred app language
|
- Account verification email is now sending in preferred app language
|
||||||
|
- Fixed issue where metered billing mode still count in some cases members after team folder was deleted
|
||||||
|
|
||||||
## Version 2.2.3
|
## Version 2.2.3
|
||||||
#### Release date: 6. August 2022
|
#### Release date: 6. August 2022
|
||||||
|
|||||||
@@ -79,5 +79,6 @@ return [
|
|||||||
'2_2_1',
|
'2_2_1',
|
||||||
'2_2_2',
|
'2_2_2',
|
||||||
'2_2_3',
|
'2_2_3',
|
||||||
|
'2_2_4',
|
||||||
],
|
],
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -68,7 +68,7 @@
|
|||||||
"/chunks/recent-uploads.js": "/chunks/recent-uploads.js?id=43323d3af3fc99da",
|
"/chunks/recent-uploads.js": "/chunks/recent-uploads.js?id=43323d3af3fc99da",
|
||||||
"/chunks/my-shared-items.js": "/chunks/my-shared-items.js?id=972917c59e64bea8",
|
"/chunks/my-shared-items.js": "/chunks/my-shared-items.js?id=972917c59e64bea8",
|
||||||
"/chunks/trash.js": "/chunks/trash.js?id=b1b9e524584df8e2",
|
"/chunks/trash.js": "/chunks/trash.js?id=b1b9e524584df8e2",
|
||||||
"/chunks/team-folders.js": "/chunks/team-folders.js?id=4e9ccc15e31f837e",
|
"/chunks/team-folders.js": "/chunks/team-folders.js?id=4016a01068316054",
|
||||||
"/chunks/shared-with-me.js": "/chunks/shared-with-me.js?id=0ca840ede1053d54",
|
"/chunks/shared-with-me.js": "/chunks/shared-with-me.js?id=0ca840ede1053d54",
|
||||||
"/chunks/invitation.js": "/chunks/invitation.js?id=65fa8c36aa7940ea",
|
"/chunks/invitation.js": "/chunks/invitation.js?id=65fa8c36aa7940ea",
|
||||||
"/css/tailwind.css": "/css/tailwind.css",
|
"/css/tailwind.css": "/css/tailwind.css",
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
<MobileContextMenu>
|
<MobileContextMenu>
|
||||||
<OptionGroup v-if="item">
|
<OptionGroup v-if="item">
|
||||||
<Option @click.native="$renameFileOrFolder(item)" :title="$t('rename')" icon="rename" />
|
<Option @click.native="$renameFileOrFolder(item)" :title="$t('rename')" icon="rename" />
|
||||||
<Option @click.native="$moveFileOrFolder(item)" :title="$t('move')" icon="move-item" :class="{'is-inactive': isTeamFolderHomepage}" />
|
<Option @click.native="$moveFileOrFolder(item)" :title="$t('move')" icon="move-item" :class="{'is-inactive': isTeamFolderHomepage || isTeamFolder}" />
|
||||||
<Option @click.native="$deleteFileOrFolder(item)" :title="$t('delete')" icon="trash" :class="{'is-inactive': isTeamFolderHomepage}" />
|
<Option @click.native="$deleteFileOrFolder(item)" :title="$t('delete')" icon="trash" :class="{'is-inactive': isTeamFolderHomepage || isTeamFolder}" />
|
||||||
</OptionGroup>
|
</OptionGroup>
|
||||||
<OptionGroup v-if="item">
|
<OptionGroup v-if="item">
|
||||||
<Option
|
<Option
|
||||||
@@ -67,6 +67,7 @@
|
|||||||
|
|
||||||
<MobileMultiSelectToolbar>
|
<MobileMultiSelectToolbar>
|
||||||
<ToolbarButton
|
<ToolbarButton
|
||||||
|
v-if="! isTeamFolderHomepage"
|
||||||
@click.native="$moveFileOrFolder(clipboard)"
|
@click.native="$moveFileOrFolder(clipboard)"
|
||||||
class="mr-4"
|
class="mr-4"
|
||||||
source="move"
|
source="move"
|
||||||
@@ -74,6 +75,7 @@
|
|||||||
:class="{ 'is-inactive': clipboard.length < 1 }"
|
:class="{ 'is-inactive': clipboard.length < 1 }"
|
||||||
/>
|
/>
|
||||||
<ToolbarButton
|
<ToolbarButton
|
||||||
|
v-if="! isTeamFolderHomepage"
|
||||||
@click.native="$deleteFileOrFolder()"
|
@click.native="$deleteFileOrFolder()"
|
||||||
class="mr-4"
|
class="mr-4"
|
||||||
source="trash"
|
source="trash"
|
||||||
@@ -121,8 +123,8 @@
|
|||||||
:title="$t('rename')"
|
:title="$t('rename')"
|
||||||
icon="rename"
|
icon="rename"
|
||||||
/>
|
/>
|
||||||
<Option @click.native="$moveFileOrFolder(item)" :title="$t('move')" icon="move-item" :class="{'is-inactive': isTeamFolderHomepage}" />
|
<Option @click.native="$moveFileOrFolder(item)" :title="$t('move')" icon="move-item" :class="{'is-inactive': isTeamFolderHomepage || isTeamFolder}" />
|
||||||
<Option @click.native="$deleteFileOrFolder(item)" :title="$t('delete')" icon="trash" :class="{'is-inactive': isTeamFolderHomepage}" />
|
<Option @click.native="$deleteFileOrFolder(item)" :title="$t('delete')" icon="trash" :class="{'is-inactive': isTeamFolderHomepage || isTeamFolder}" />
|
||||||
</OptionGroup>
|
</OptionGroup>
|
||||||
<OptionGroup>
|
<OptionGroup>
|
||||||
<Option
|
<Option
|
||||||
@@ -168,8 +170,8 @@
|
|||||||
/>
|
/>
|
||||||
</OptionGroup>
|
</OptionGroup>
|
||||||
<OptionGroup>
|
<OptionGroup>
|
||||||
<Option @click.native="$moveFileOrFolder(item)" :title="$t('move')" icon="move-item" />
|
<Option @click.native="$moveFileOrFolder(item)" :title="$t('move')" icon="move-item" :class="{'is-inactive': isTeamFolderHomepage || isTeamFolder}" />
|
||||||
<Option @click.native="$deleteFileOrFolder(item)" :title="$t('delete')" icon="trash" />
|
<Option @click.native="$deleteFileOrFolder(item)" :title="$t('delete')" icon="trash" :class="{'is-inactive': isTeamFolderHomepage || isTeamFolder}" />
|
||||||
</OptionGroup>
|
</OptionGroup>
|
||||||
<OptionGroup>
|
<OptionGroup>
|
||||||
<Option @click.native="$downloadSelection()" :title="$t('download')" icon="download" />
|
<Option @click.native="$downloadSelection()" :title="$t('download')" icon="download" />
|
||||||
@@ -274,6 +276,9 @@ export default {
|
|||||||
teamFolder() {
|
teamFolder() {
|
||||||
return this.currentTeamFolder ? this.currentTeamFolder : this.clipboard[0]
|
return this.currentTeamFolder ? this.currentTeamFolder : this.clipboard[0]
|
||||||
},
|
},
|
||||||
|
isTeamFolder() {
|
||||||
|
return this.teamFolder?.data.id === this.item.data.id
|
||||||
|
},
|
||||||
isTeamFolderHomepage() {
|
isTeamFolderHomepage() {
|
||||||
return this.$isThisRoute(this.$route, ['TeamFolders']) && !this.$route.params.id
|
return this.$isThisRoute(this.$route, ['TeamFolders']) && !this.$route.params.id
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace Support\Upgrading\Controllers;
|
namespace Support\Upgrading\Controllers;
|
||||||
|
|
||||||
use DB;
|
use Illuminate\Support\Facades\Artisan;
|
||||||
use Artisan;
|
|
||||||
use Domain\Localization\Models\Language;
|
use Domain\Localization\Models\Language;
|
||||||
use Domain\Settings\Models\Setting;
|
use Domain\Settings\Models\Setting;
|
||||||
use Storage;
|
use Illuminate\Support\Facades\DB;
|
||||||
|
use Illuminate\Support\Facades\Storage;
|
||||||
use App\Users\Models\User;
|
use App\Users\Models\User;
|
||||||
use Illuminate\Support\Arr;
|
use Illuminate\Support\Arr;
|
||||||
use Domain\Files\Models\File;
|
use Domain\Files\Models\File;
|
||||||
@@ -24,6 +24,24 @@ class UpgradingVersionsController
|
|||||||
) {
|
) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function upgrade_to_2_2_4(): void
|
||||||
|
{
|
||||||
|
// Delete members from team folders where team folder doesn't exist
|
||||||
|
collect(['team_folder_members', 'team_folder_invitations'])
|
||||||
|
->each(function ($table) {
|
||||||
|
DB::table($table)
|
||||||
|
->get()
|
||||||
|
->groupBy('parent_id')
|
||||||
|
->each(function ($item, $id) use ($table) {
|
||||||
|
if (! Folder::find($id)) {
|
||||||
|
DB::table($table)
|
||||||
|
->where('parent_id', $id)
|
||||||
|
->delete();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
public function upgrade_to_2_2_3(): void
|
public function upgrade_to_2_2_3(): void
|
||||||
{
|
{
|
||||||
($this->upgradeDatabase)();
|
($this->upgradeDatabase)();
|
||||||
|
|||||||
Reference in New Issue
Block a user