2022-07-30 11:21:37 +08:00

58 lines
1.2 KiB
PHP

<?php
namespace App\View\Components\Links;
use Carbon\Exceptions\InvalidFormatException;
use Illuminate\Support\Carbon;
use Illuminate\View\Component;
class VideoLink extends Component
{
/**
* @var string
*/
public $bvid;
/**
* @var int|string
*/
public $part;
/**
* @var string|null
*/
public $time;
/**
* @var int|string|null
*/
public $sec;
/**
* Create a new component instance.
*
* @return void
*/
public function __construct(string $bvid, $part = 1, $time = null, $sec=null)
{
$this->bvid = $bvid;
$this->part = $part;
if ($sec == null) {
try {
$sec = Carbon::createFromFormat("H:i:s", $time)->secondsSinceMidnight();
} catch (InvalidFormatException $ex) {
$time = null;
}
}
$this->time = $time;
$this->sec = $sec;
}
/**
* Get the view / contents that represent the component.
*
* @return \Illuminate\Contracts\View\View|\Closure|string
*/
public function render()
{
return view('components.links.video_link');
}
}