Skip to content

Commit

Permalink
fix-queries-to-read-announcements (#108)
Browse files Browse the repository at this point in the history
  • Loading branch information
rafa-acioly committed Nov 15, 2023
1 parent 45ccfa6 commit e0cbdc4
Showing 1 changed file with 17 additions and 12 deletions.
29 changes: 17 additions & 12 deletions wave/src/Http/Controllers/AnnouncementController.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,27 +3,32 @@
namespace Wave\Http\Controllers;

use App\Http\Controllers\Controller;
use Illuminate\Database\Query\Builder;
use Wave\Announcement;

class AnnouncementController extends Controller
{
public function index(){
$announcements = Announcement::paginate(10);
public function index()
{
$announcements = Announcement::paginate(10);
return view('theme::announcements.index', compact('announcements'));
}

public function announcement($id){
public function announcement($id)
{
$announcement = Announcement::find($id);
return view('theme::announcements.announcement', compact('announcement'));
return view('theme::announcements.announcement', compact('announcement'));
}

public function read(){
$user = auth()->user();
$announcements = Announcement::all();
foreach($announcements as $announcement){
if(!$user->announcements()->where('id', $announcement->id)->exists()){
$user->announcements()->attach($announcement->id);
}
}
public function read()
{
$user = auth()->user();
Announcement::whereDoesntHave('users', function ($query) use ($user) {
$query->where('user_id', $user->id);
})->get()
->pluck('id')
->tap(function ($missingAnnouncements) use ($user) {
$user->announcements()->attach($missingAnnouncements->toArray());
});
}
}

0 comments on commit e0cbdc4

Please sign in to comment.