Skip to content

Commit

Permalink
added events
Browse files Browse the repository at this point in the history
  • Loading branch information
nguyendachuy committed May 25, 2023
1 parent b5999ac commit 9db2aff
Show file tree
Hide file tree
Showing 4 changed files with 132 additions and 1 deletion.
40 changes: 40 additions & 0 deletions src/Events/CreatedMenuEvent.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?php

namespace NguyenHuy\Menu\Events;

use Illuminate\Broadcasting\Channel;
use Illuminate\Broadcasting\InteractsWithSockets;
use Illuminate\Broadcasting\PresenceChannel;
use Illuminate\Broadcasting\PrivateChannel;
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
use Illuminate\Foundation\Events\Dispatchable;
use Illuminate\Queue\SerializesModels;

class CreatedMenuEvent
{
use Dispatchable, InteractsWithSockets, SerializesModels;

/**
* @var Eloquent|false
*/
public $data;
/**
* Create a new event instance.
* @param Eloquent|false|stdClass $data
* @return void
*/
public function __construct($data)
{
$this->data = $data;
}

/**
* Get the channels the event should broadcast on.
*
* @return \Illuminate\Broadcasting\Channel|array
*/
public function broadcastOn()
{
return new PrivateChannel('channel-name');
}
}
40 changes: 40 additions & 0 deletions src/Events/DestroyMenuEvent.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?php

namespace NguyenHuy\Menu\Events;

use Illuminate\Broadcasting\Channel;
use Illuminate\Broadcasting\InteractsWithSockets;
use Illuminate\Broadcasting\PresenceChannel;
use Illuminate\Broadcasting\PrivateChannel;
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
use Illuminate\Foundation\Events\Dispatchable;
use Illuminate\Queue\SerializesModels;

class DestroyMenuEvent
{
use Dispatchable, InteractsWithSockets, SerializesModels;

/**
* @var Eloquent|false
*/
public $data;
/**
* Create a new event instance.
* @param Eloquent|false|stdClass $data
* @return void
*/
public function __construct($data)
{
$this->data = $data;
}

/**
* Get the channels the event should broadcast on.
*
* @return \Illuminate\Broadcasting\Channel|array
*/
public function broadcastOn()
{
return new PrivateChannel('channel-name');
}
}
40 changes: 40 additions & 0 deletions src/Events/UpdatedMenuEvent.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<?php

namespace NguyenHuy\Menu\Events;

use Illuminate\Broadcasting\Channel;
use Illuminate\Broadcasting\InteractsWithSockets;
use Illuminate\Broadcasting\PresenceChannel;
use Illuminate\Broadcasting\PrivateChannel;
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
use Illuminate\Foundation\Events\Dispatchable;
use Illuminate\Queue\SerializesModels;

class UpdatedMenuEvent
{
use Dispatchable, InteractsWithSockets, SerializesModels;

/**
* @var Eloquent|false
*/
public $data;
/**
* Create a new event instance.
* @param Eloquent|false|stdClass $data
* @return void
*/
public function __construct($data)
{
$this->data = $data;
}

/**
* Get the channels the event should broadcast on.
*
* @return \Illuminate\Broadcasting\Channel|array
*/
public function broadcastOn()
{
return new PrivateChannel('channel-name');
}
}
13 changes: 12 additions & 1 deletion src/Http/Controllers/MenuController.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@

namespace NguyenHuy\Menu\Http\Controllers;

use NguyenHuy\Menu\Facades\Menu;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use NguyenHuy\Menu\Events\CreatedMenuEvent;
use NguyenHuy\Menu\Events\DestroyMenuEvent;
use NguyenHuy\Menu\Events\UpdatedMenuEvent;
use NguyenHuy\Menu\Models\Menus;
use NguyenHuy\Menu\Models\MenuItems;

Expand All @@ -16,6 +18,9 @@ public function createNewMenu(Request $request)
$menu->name = $request->input('name');
$menu->class = $request->input('class', null);
$menu->save();

event(new CreatedMenuEvent($menu));

return response()->json([
'resp' => $menu->id
], 200);
Expand All @@ -26,6 +31,8 @@ public function destroyMenu(Request $request)
$menudelete = Menus::findOrFail($request->input('id'));
$menudelete->delete();

event(new DestroyMenuEvent($menudelete));

return response()->json([
'resp' => 'You delete this item'
], 200);
Expand Down Expand Up @@ -104,6 +111,9 @@ public function updateItem(Request $request)
}
$menuitem->save();
}

event(new UpdatedMenuEvent($dataItem));

return response()->json([
'resp' => 1
], 200);
Expand All @@ -113,6 +123,7 @@ public function destroyItem(Request $request)
{
$menuitem = MenuItems::findOrFail($request->input('id'));
$menuitem->delete();

return response()->json([
'resp' => 1
], 200);
Expand Down

0 comments on commit 9db2aff

Please sign in to comment.