namespace App\Models;
+use Illuminate\Broadcasting\PrivateChannel;
+use Illuminate\Database\Eloquent\BroadcastsEvents;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
+use Illuminate\Support\Arr;
-class Channel extends Model
-{
+class Channel extends Model {
+
+ use BroadcastsEvents;
use HasFactory;
+ public function broadcastOn($event) {
+ $channels = [
+ new PrivateChannel('Channel.'.$this->id),
+ ];
+ return $channels;
+ }
+
public function getCurrentEpisode() {
return $this->episodes()
->where('start', '<', now()->subMinutes(10))
$distance = abs(intval($guess->guess) - intval($solution));
if (is_null($min_distance) || $distance == $min_distance) {
$candidates[] = $guess;
+ if (is_null($min_distance)) {
+ $min_distance = $distance;
+ }
} else if ($distance < $min_distance) {
$candidates = [$guess];
$min_distance = $distance;
return false;
}
+ public function listAnd($entries) {
+ $lang = empty($this->languages) ? 'en' : $this->languages[0];
+ if ($lang == 'de') {
+ return Arr::join($entries, ', ', ' und ');
+ }
+ return Arr::join($entries, ', ', ' and ');
+ }
+
public function crews() {
return $this->hasMany(ChannelCrew::class);
}