ILIAS  trunk Revision v11.0_alpha-1723-g8e69f309bab
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
Bar.php
Go to the documentation of this file.
1 <?php
2 
19 declare(strict_types=1);
20 
22 
29 use ILIAS\Data\URI;
30 
34 class Bar implements Progress\Bar
35 {
37  use ComponentHelper;
38  use Triggerer;
39 
40  public const MAX_VALUE = 100;
41 
43  protected Signal $reset_signal;
44 
45  public function __construct(
46  protected Progress\AsyncRefreshInterval $async_refresh_interval,
47  protected SignalGeneratorInterface $signal_generator,
48  protected string $label,
49  protected ?URI $async_url = null,
50  ) {
51  $this->update_signal = $this->signal_generator->create();
52  $this->reset_signal = $this->signal_generator->create();
53  }
54 
55  public function withResetSignals()
56  {
57  $clone = clone $this;
58  $clone->update_signal = $this->signal_generator->create();
59  $clone->reset_signal = $this->signal_generator->create();
60  return $clone;
61  }
62 
63  public function getUpdateSignal(): Signal
64  {
65  return $this->update_signal;
66  }
67 
68  public function getResetSignal(): Signal
69  {
70  return $this->reset_signal;
71  }
72 
73  public function getAsyncRefreshInterval(): Progress\AsyncRefreshInterval
74  {
75  return $this->async_refresh_interval;
76  }
77 
78  public function getLabel(): string
79  {
80  return $this->label;
81  }
82 
83  public function getAsyncUrl(): ?URI
84  {
85  return $this->async_url;
86  }
87 }
trait JavaScriptBindable
Trait for components implementing JavaScriptBindable providing standard implementation.
while($session_entry=$r->fetchRow(ilDBConstants::FETCHMODE_ASSOC)) return null
__construct(protected Progress\AsyncRefreshInterval $async_refresh_interval, protected SignalGeneratorInterface $signal_generator, protected string $label, protected ?URI $async_url=null,)
Definition: Bar.php:45
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...