KTVCentral/app/Livewire/Pages/LoveMessage.php

48 lines
1.1 KiB
PHP
Raw Normal View History

<?php
namespace App\Livewire\Pages;
use Livewire\Component;
use App\Models\RoomSession;
use WireUi\Traits\WireUiActions;
use App\Services\TcpSocketClient;
class LoveMessage extends Component
{
use WireUiActions;
protected $listeners = ['stickerSelected' => 'handleSticker'];
public $roomSession;
public $message = '';
public $selectedSticker=null;
public function mount()
{
$this->roomSession = request()->roomSession;
}
public function handleSticker($sticker)
{
$this->selectedSticker = $sticker;
}
public function submitMessage()
{
// 實際存留言時,可同時存貼圖
$data = [
'message' => $this->message,
'sticker' => $this->selectedSticker,
'user' => auth()->user()?->name ?? '訪客',
];
// 存到資料庫或送到 API
// ...
session()->flash('success', '留言已送出!');
// 重置
$this->message = '';
$this->selectedSticker = null;
}
public function render()
{
return view('livewire.pages.love-message');
}
}