Skip to content

Commit c97bd94

Browse files
authored
Fixes hover (left-right) preventing clicks on volume etc buttons + fix frame button (#2116)
* reduce hover trigger area as it was taking space over the volume etc buttons of video players * fix #2098 * fixes nsfw warning
1 parent 549c20f commit c97bd94

File tree

4 files changed

+29
-7
lines changed

4 files changed

+29
-7
lines changed

app/Livewire/Components/Pages/Gallery/Album.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,11 @@ final public function render(): View
7777
$this->num_albums = $this->album instanceof ModelsAlbum ? $this->album->children->count() : 0;
7878
$this->num_photos = $this->album->photos->count();
7979

80+
// No photos, no frame
81+
if ($this->num_photos === 0) {
82+
$this->flags->is_mod_frame_enabled = false;
83+
}
84+
8085
$is_latitude_longitude_found = false;
8186
if ($this->album instanceof ModelsAlbum) {
8287
$is_latitude_longitude_found = $this->album->all_photos()->whereNotNull('latitude')->whereNotNull('longitude')->count() > 0;

app/Livewire/Components/Pages/Gallery/Albums.php

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,18 @@
66
use App\Contracts\Livewire\Reloadable;
77
use App\Contracts\Models\AbstractAlbum;
88
use App\Enum\SmartAlbumType;
9+
use App\Factories\AlbumFactory;
910
use App\Http\Resources\Collections\TopAlbumsResource;
1011
use App\Livewire\DTO\AlbumRights;
1112
use App\Livewire\DTO\AlbumsFlags;
1213
use App\Livewire\DTO\SessionFlags;
1314
use App\Livewire\Traits\AlbumsPhotosContextMenus;
1415
use App\Livewire\Traits\SilentUpdate;
1516
use App\Models\Configs;
17+
use App\Policies\AlbumPolicy;
1618
use Illuminate\Contracts\Container\BindingResolutionException;
1719
use Illuminate\Support\Collection;
20+
use Illuminate\Support\Facades\Gate;
1821
use Illuminate\View\View;
1922
use Livewire\Attributes\Locked;
2023
use Livewire\Attributes\On;
@@ -51,6 +54,7 @@ public function render(): View
5154
$this->flags = new AlbumsFlags();
5255
$this->rights = AlbumRights::make(null);
5356
$this->albumIDs = $this->topAlbums->albums->map(fn ($v, $k) => $v->id)->all();
57+
$this->checkFrameAccess();
5458

5559
return view('livewire.pages.gallery.albums');
5660
}
@@ -90,4 +94,21 @@ public function getSharedAlbumsProperty(): Collection
9094
{
9195
return $this->topAlbums->shared_albums;
9296
}
97+
98+
private function checkFrameAccess(): void
99+
{
100+
if ($this->flags->is_mod_frame_enabled !== true) {
101+
return;
102+
}
103+
104+
$randomAlbumId = Configs::getValueAsString('random_album_id');
105+
$album = resolve(AlbumFactory::class)->findAbstractAlbumOrFail($randomAlbumId);
106+
if (Gate::check(AlbumPolicy::CAN_ACCESS, [AbstractAlbum::class, $album]) !== true) {
107+
$this->flags->is_mod_frame_enabled = false;
108+
109+
return;
110+
}
111+
112+
$this->flags->is_mod_frame_enabled = $album->photos->count() > 0;
113+
}
93114
}

resources/views/components/gallery/photo/next-previous.blade.php

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
@props(['is_next'])
2-
<div @class([
3-
'absolute w-1/5 h-full top-0 group',
4-
'right-0' => $is_next,
5-
'left-0' => !$is_next,
6-
])
7-
x-cloak >
2+
<div class="absolute w-1/6 h-1/2 top-1/2 -translate-y-1/2 group {{ $is_next ? 'right-0' : 'left-0' }}" x-cloak >
83
<a
94
{{-- href="{{ route('livewire-gallery-photo', ['albumId' => $albumId, 'photoId' => $photo->id]) }}" --}}
105
id="{{ $is_next ? 'nextButton' : 'previousButton'}}"

resources/views/livewire/modules/gallery/sensitive-warning.blade.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
<div id="sensitive_warning" class="
22
{{ $isBlurred ? 'backdrop-blur-lg' : 'bg-red-950' }}
33
{{ $isOpen ? 'flex' : 'hidden' }}
4-
flex-col align-middle justify-center text-center text-text-main-0 absolute top-0 left-0 h-full w-full"
4+
fixed
5+
flex-col align-middle justify-center text-center text-text-main-0 top-14 left-0 h-full w-full"
56
wire:click="close">
67
@if($text === '')
78
<div class="w-full flex justify-center">

0 commit comments

Comments
 (0)