19 declare(strict_types=1);
54 protected ISequence\SegmentRetrieval $segment_retrieval
60 return $this->segment_retrieval;
101 if (! $this->request) {
102 throw new \LogicException(
'no request was set on the sequence');
108 $clone = clone $this;
110 $clone->initFromRequest();
122 $base_uri = $this->data_factory->uri($this->request->getUri()->__toString());
127 $this->token_position
133 $query = new \ILIAS\HTTP\Wrapper\ArrayBasedRequestWrapper($this->request->getQueryParams());
134 $this->position = $query->retrieve(
135 $this->token_position->getName(),
142 if ($this->viewcontrols) {
153 return $this->url_builder
154 ->withParameter($this->token_position, (
string) ($this->position + $direction))
161 return $this->storage[$storage_id] ??
null;
169 $this->storage[$storage_id] =
$data;
176 return static::STORAGE_ID_PREFIX .
$id;
181 public function withId(
string $id): static
183 $clone = clone $this;
198 $view_controls = $view_controls
199 ->withStoredInput($stored_values)
200 ->withRequest($request);
201 $this->
setStorageData($view_controls->getComponentInternalValues());
202 return $view_controls;
if($err=$client->getError()) $namespace
withRequest(ServerRequestInterface $request)
Rendering the sequence must be done using the current request: it (the request) will carry parameters...
setStorageData(array $data)
applyValuesToViewcontrols(ViewControlContainer $view_controls, ServerRequestInterface $request)
__construct(protected DataFactory $data_factory, protected Refinery $refinery, protected Storage $storage, protected ISequence\SegmentRetrieval $segment_retrieval)
withViewControls(ViewControlContainer $viewcontrols)
You may add view controls to the sequences's player that alter the way, order or focus in which the s...
acquireParameters(array $namespace, string ... $names)
ServerRequestInterface $request
withId(string $id)
The Sequence comes with a storage to keep ViewControl-settings throughout requests.
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
URLBuilderToken $token_position
Storage is simple key/value store without further schema definition.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
ViewControlContainer $viewcontrols
withCurrentPosition(int $position)
withActions(... $actions)