File tree 3 files changed +29
-1
lines changed
3 files changed +29
-1
lines changed Original file line number Diff line number Diff line change 3
3
namespace App \Http \Controllers ;
4
4
5
5
use Illuminate \Http \Request ;
6
+ use Illuminate \Support \Facades \Auth ;
6
7
use Illuminate \Support \Facades \Log ;
7
8
8
9
use App \Models \Module ;
@@ -62,9 +63,22 @@ public function show(Module $module)
62
63
{
63
64
$ subjects = Subject::orderBy ('name ' )->get ();
64
65
66
+ $ decks = $ module ->decks
67
+ ->filter (function ($ deck ) {
68
+ return $ deck ->isPublic () || $ deck ->isOwnedByUser (Auth::user ());
69
+ })
70
+ ->sortBy ('name ' )
71
+ ->map (function ($ deck ) {
72
+ return (object ) [
73
+ 'id ' => $ deck ->id ,
74
+ 'name ' => $ deck ->name ,
75
+ ];
76
+ });
77
+
65
78
return view ('module ' , [
66
79
'module ' => $ module ,
67
80
'subjects ' => $ subjects ,
81
+ 'decks ' => $ decks ,
68
82
]);
69
83
}
70
84
Original file line number Diff line number Diff line change @@ -61,4 +61,18 @@ public function bookmarked()
61
61
{
62
62
return $ this ->bookmarks ()->where ('user_id ' , Auth::id ())->exists ();
63
63
}
64
+
65
+ public function isPublic ()
66
+ {
67
+ return in_array ($ this ->access , [
68
+ 'public-rw-listed ' ,
69
+ 'public-rw ' ,
70
+ 'public-ro ' ,
71
+ ]);
72
+ }
73
+
74
+ public function isOwnedByUser (User $ user )
75
+ {
76
+ return $ this ->user_id === $ user ->id ;
77
+ }
64
78
}
Original file line number Diff line number Diff line change 33
33
<div class =" col" >
34
34
<h4 >Decks</h4 >
35
35
<ul >
36
- @foreach ($module -> decks -> sortByDesc ( ' name ' ) as $deck )
36
+ @foreach ($decks as $deck )
37
37
<li ><a href =" {{ url (' decks/' . $deck -> id ) } }" >{{ $deck -> name } } </a ></li >
38
38
@endforeach
39
39
</ul >
You can’t perform that action at this time.
0 commit comments