diff --git a/app/Http/Controllers/BrowseGroupController.php b/app/Http/Controllers/BrowseGroupController.php index bdd2f11ab..638379ab1 100644 --- a/app/Http/Controllers/BrowseGroupController.php +++ b/app/Http/Controllers/BrowseGroupController.php @@ -10,7 +10,7 @@ class BrowseGroupController extends BasePageController /** * @throws \Exception */ - public function show(Request $request): void + public function show(Request $request) { // Get the search term from the request $search = $request->get('search', '') ?? ''; @@ -18,10 +18,7 @@ class BrowseGroupController extends BasePageController // Get groups based on search term $groupList = UsenetGroup::getGroupsRange($search, true); - // Pass data to the view - $this->smarty->assign('results', $groupList); - $this->smarty->assign('search', $search); - + // Set meta data $meta_title = 'Browse Groups'; $meta_keywords = 'browse,groups,description,details'; $meta_description = 'Browse groups'; @@ -30,8 +27,21 @@ class BrowseGroupController extends BasePageController $meta_description = 'Browse groups search results for '.$search; } - $content = $this->smarty->fetch('browsegroup.tpl'); - $this->smarty->assign(compact('content', 'meta_title', 'meta_keywords', 'meta_description')); - $this->pagerender(); + // Render the content view + $content = view('browsegroup', [ + 'results' => $groupList, + 'search' => $search, + 'site' => $this->settings, + ])->render(); + + // Prepare view data for main layout + $this->viewData = array_merge($this->viewData, [ + 'content' => $content, + 'meta_title' => $meta_title, + 'meta_keywords' => $meta_keywords, + 'meta_description' => $meta_description, + ]); + + return $this->pagerender(); } } diff --git a/app/Http/Controllers/MyMoviesController.php b/app/Http/Controllers/MyMoviesController.php index 45b0ca635..b2f7cfdf6 100644 --- a/app/Http/Controllers/MyMoviesController.php +++ b/app/Http/Controllers/MyMoviesController.php @@ -75,7 +75,7 @@ class MyMoviesController extends BasePageController $this->viewData['cat_selected'] = []; $this->viewData['imdbid'] = $imdbid; $this->viewData['movie'] = $movie; - $this->viewData['content'] = view('themes/Gentele/mymovies-add', $this->viewData)->render(); + $this->viewData['content'] = view('mymovies.add', $this->viewData)->render(); return $this->pagerender(); @@ -109,7 +109,7 @@ class MyMoviesController extends BasePageController $this->viewData['cat_selected'] = explode('|', $movie['categories']); $this->viewData['imdbid'] = $imdbid; $this->viewData['movie'] = $movie; - $this->viewData['content'] = view('themes/Gentele/mymovies-add', $this->viewData)->render(); + $this->viewData['content'] = view('mymovies.add', $this->viewData)->render(); return $this->pagerender(); @@ -156,7 +156,7 @@ class MyMoviesController extends BasePageController $this->viewData['lastvisit'] = $this->userdata->lastlogin; $this->viewData['results'] = $results; $this->viewData['movies'] = true; - $this->viewData['content'] = view('themes/Gentele/browse', $this->viewData)->render(); + $this->viewData['content'] = view('browse', $this->viewData)->render(); $this->viewData = array_merge($this->viewData, compact('title', 'meta_title', 'meta_keywords', 'meta_description')); return $this->pagerender(); @@ -193,7 +193,7 @@ class MyMoviesController extends BasePageController $results[$moviek] = $movie; } $this->viewData['movies'] = $results; - $this->viewData['content'] = view('themes/Gentele/mymovies', $this->viewData)->render(); + $this->viewData['content'] = view('mymovies.index', $this->viewData)->render(); $this->viewData = array_merge($this->viewData, compact('title', 'meta_title', 'meta_keywords', 'meta_description')); return $this->pagerender(); diff --git a/app/Http/Controllers/MyShowsController.php b/app/Http/Controllers/MyShowsController.php index 8b04c65ed..dad2673db 100644 --- a/app/Http/Controllers/MyShowsController.php +++ b/app/Http/Controllers/MyShowsController.php @@ -74,7 +74,7 @@ class MyShowsController extends BasePageController $this->viewData['cat_selected'] = []; $this->viewData['video'] = $videoId; $this->viewData['show'] = $show; - $this->viewData['content'] = view('themes/Gentele/myshows-add', $this->viewData)->render(); + $this->viewData['content'] = view('myshows.add', $this->viewData)->render(); return $this->pagerender(); @@ -108,7 +108,7 @@ class MyShowsController extends BasePageController $this->viewData['cat_selected'] = explode('|', $show['categories']); $this->viewData['video'] = $videoId; $this->viewData['show'] = $show; - $this->viewData['content'] = view('themes/Gentele/myshows-add', $this->viewData)->render(); + $this->viewData['content'] = view('myshows.add', $this->viewData)->render(); return $this->pagerender(); @@ -146,7 +146,7 @@ class MyShowsController extends BasePageController } } $this->viewData['shows'] = $results; - $this->viewData['content'] = view('themes/Gentele/myshows', $this->viewData)->render(); + $this->viewData['content'] = view('myshows.index', $this->viewData)->render(); $this->viewData = array_merge($this->viewData, compact('title', 'meta_title', 'meta_keywords', 'meta_description')); return $this->pagerender(); @@ -174,7 +174,7 @@ class MyShowsController extends BasePageController $offset = ($page - 1) * config('nntmux.items_per_page'); $ordering = $releases->getBrowseOrdering(); $orderby = $request->has('ob') && \in_array($request->input('ob'), $ordering, false) ? $request->input('ob') : ''; - $browseCount = $shows->count(); + $browseCount = $shows ? $shows->count() : 0; $rslt = $releases->getShowsRange($shows ?? [], $offset, config('nntmux.items_per_page'), $orderby, -1, $this->userdata->categoryexclusions); $results = $this->paginate($rslt ?? [], $browseCount, config('nntmux.items_per_page'), $page, $request->url(), $request->query()); @@ -189,7 +189,7 @@ class MyShowsController extends BasePageController $this->viewData['results'] = $results; $this->viewData['resultsadd'] = $rslt; $this->viewData['shows'] = true; - $this->viewData['content'] = view('themes/Gentele/browse', $this->viewData)->render(); + $this->viewData['content'] = view('browse', $this->viewData)->render(); $this->viewData = array_merge($this->viewData, compact('title', 'meta_title', 'meta_keywords', 'meta_description')); return $this->pagerender(); diff --git a/resources/views/themes/Gentele/mymovies.blade.php b/resources/views/mymovies/add.blade.php similarity index 59% rename from resources/views/themes/Gentele/mymovies.blade.php rename to resources/views/mymovies/add.blade.php index 19bfefe7d..fb7f7cc61 100644 --- a/resources/views/themes/Gentele/mymovies.blade.php +++ b/resources/views/mymovies/add.blade.php @@ -1,3 +1,104 @@ +
+
+ +
+
+

+ {{ ucfirst($type ?? 'add') }} Movie to Watchlist +

+ +
+
+ +
+
+
+ {{ e($movie['title'] ?? '') }} + +
+

+ {{ ucfirst($type ?? 'add') }} "{{ e($movie['title'] ?? '') }}" to watchlist +

+

Select categories below to organize this movie in your collection.

+
+
+ +
+
+ +

+ Adding movies to your watchlist will notify you through your + id}&api_token={$userdata->api_token}") }}" + class="font-semibold text-blue-600 hover:text-blue-800 underline inline-flex items-center"> + RSS Feed + + when they become available. +

+
+
+
+ + {!! Form::open(['id' => 'mymovies', 'class' => 'space-y-6', 'url' => "mymovies?id=do{$type}"]) !!} + + @if(!empty($from)) + + @endif + +
+ +
+ @foreach($cat_ids ?? [] as $index => $cat_id) + + @endforeach +
+
+ +
+ + + Back to My Movies + +
+ {!! Form::close() !!} +
+
+
+ + + +
diff --git a/resources/views/mymovies/index.blade.php b/resources/views/mymovies/index.blade.php new file mode 100644 index 000000000..81fe0aa66 --- /dev/null +++ b/resources/views/mymovies/index.blade.php @@ -0,0 +1,278 @@ + + +
+ +
+
+
+
+

+ My Movies +

+

Manage your movie wishlist and get automatic updates

+
+ +
+
+
+ + +
+
+
+
+ +
+
+
+

Automatic Downloads via RSS

+

+ Using 'My Movies' you can search for movies and add them to a wishlist. If the movie becomes available it will be added to your + id}&api_token={$userdata->api_token}") }}" + class="font-semibold text-blue-600 hover:text-blue-800 underline inline-flex items-center"> + personal RSS feed + + for automatic downloading. +

+
+
+
+ + + + + + @if(count($movies ?? []) > 0) +
+ +
+
+

+ + Your Movies {{ count($movies) }} +

+
+
+ + + + + +
+ @foreach($movies as $movie) +
+
+
+ {{ e($movie['title'] ?? '') }} +
+
+

+ + {{ e($movie['title'] ?? '') }} + @if(!empty($movie['year'])) + ({{ $movie['year'] }}) + @endif + +

+ @if(!empty($movie['tagline'])) +

{{ e($movie['tagline']) }}

+ @endif + + {{ !empty($movie['categoryNames']) ? e($movie['categoryNames']) : 'All' }} + +
+
+ + @if(!empty($movie['plot'])) +

{{ e($movie['plot']) }}

+ @endif + +
+
+ + IMDB + + + {{ isset($movie['created_at']) ? date('M d, Y', strtotime($movie['created_at'])) : '' }} + +
+ +
+
+ @endforeach +
+
+ @else + +
+
+
+ +
+

No Movies in Watchlist

+

+ You haven't bookmarked any movies yet. Search for movies and add them to your watchlist. +

+ + Browse Movies + +
+
+ @endif +
+ + + diff --git a/resources/views/myshows/add.blade.php b/resources/views/myshows/add.blade.php new file mode 100644 index 000000000..4d2ada59d --- /dev/null +++ b/resources/views/myshows/add.blade.php @@ -0,0 +1,100 @@ +
+
+ +
+
+

+ {{ ucfirst($type ?? 'add') }} Show to Watchlist +

+ +
+
+ +
+
+
+ {{ e($show['title'] ?? '') }} + +
+

+ {{ ucfirst($type ?? 'add') }} "{{ e($show['title'] ?? '') }}" to watchlist +

+

Select categories below to organize this show in your collection.

+
+
+ +
+
+ +

+ Adding shows to your watchlist will notify you through your + id}&api_token={$userdata->api_token}") }}" + class="font-semibold text-blue-600 hover:text-blue-800 underline inline-flex items-center"> + RSS Feed + + when new episodes become available. +

+
+
+
+ + {!! Form::open(['id' => 'myshows', 'class' => 'space-y-6', 'url' => "myshows?action=do{$type}"]) !!} + + @if(!empty($from)) + + @endif + +
+ +
+ @foreach($cat_ids ?? [] as $index => $cat_id) + + @endforeach +
+
+ +
+ + + Back to My Shows + +
+ {!! Form::close() !!} +
+
+
+ + + diff --git a/resources/views/themes/Gentele/myshows.blade.php b/resources/views/myshows/index.blade.php similarity index 97% rename from resources/views/themes/Gentele/myshows.blade.php rename to resources/views/myshows/index.blade.php index 6f5622e37..4e0897f38 100644 --- a/resources/views/themes/Gentele/myshows.blade.php +++ b/resources/views/myshows/index.blade.php @@ -12,7 +12,7 @@ background: linear-gradient(135deg, #3b82f6 0%, #6366f1 100%); } .category-badge { - background: linear-gradient(135deg, #ddd6fe 0%, #fce7f3 100%); + background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%); } .empty-state-bg { background: linear-gradient(135deg, #dbeafe 0%, #e0e7ff 100%); @@ -78,7 +78,7 @@
Browse All Series @@ -145,7 +145,7 @@ @if(!empty($show['categoryNames'])) - + {{ e($show['categoryNames']) }} @else @@ -203,7 +203,7 @@
@if(!empty($show['categoryNames'])) - + {{ e($show['categoryNames']) }} @else @@ -248,7 +248,7 @@

You haven't bookmarked any TV series yet. Start building your collection by browsing our series library.

- Browse Series Library @@ -259,7 +259,6 @@