/** * {@inheritdoc} */ public function handle(ServerRequestInterface $request) { $this->assertAdmin($request->getAttribute('actor')); $order = array_get($request->getParsedBody(), 'order'); foreach ($order as $i => $link) { Link::where('id', $link['id'])->update(['position' => $i]); } return new EmptyResponse(204); }
/** * @param CreateLink $command * @return Link */ public function handle(CreateLink $command) { $actor = $command->actor; $data = $command->data; $this->assertAdmin($actor); $link = Link::build(array_get($data, 'attributes.title'), array_get($data, 'attributes.url'), array_get($data, 'attributes.isInternal'), array_get($data, 'attributes.isNewtab')); $this->validator->assertValid($link->getAttributes()); $link->save(); return $link; }
/** * @param PrepareApiData $event */ public function PrepareApiData(PrepareApiData $event) { if ($event->isController(ShowForumController::class)) { $event->data['links'] = Link::get(); } }
/** * Get all links * * @param User|null $user * @return \Illuminate\Database\Eloquent\Collection */ public function all() { return Link::newQuery(); }