3 declare(strict_types=1);
    39         string $a_postvar = 
""    43         $this->
lng = $DIC->language();
    51         $this->items[
$id] = $item;
    53             $this->labels[
$id] = $label;
    59         if (isset($this->items[$id])) {
    60             return $this->items[
$id];
    67         if (isset($this->items[$id])) {
    68             unset($this->items[$id]);
    77         foreach ($this->items as 
$id => $obj) {
    78             if (method_exists($obj, $method)) {
    79                 $result[
$id] = call_user_func_array(array($obj, $method), $param);
    88         foreach ($this->items as 
$id => $obj) {
    89             $result[
$id] = $obj->serializeData();
    91         return serialize($result);
    96         $data = unserialize($a_data);
    99             foreach ($this->items as 
$id => $obj) {
   103             foreach ($this->items as 
$id => $obj) {
   104                 if (method_exists($obj, 
"setValue")) {
   116         if (in_array($mode, array(self::COMPARISON_ASCENDING, self::COMPARISON_DESCENDING))) {
   117             foreach ($this->items as $obj) {
   118                 if (!method_exists($obj, 
"getPostValueForComparison")) {
   122             $this->comparison_mode = $mode;
   130         if (is_array($a_value)) {
   131             foreach ($a_value as 
$id => $value) {
   132                 if (isset($this->items[
$id])) {
   133                     if (method_exists($this->items[$id], 
"setValue")) {
   135                         $value = is_float($value) ? (string) $value : $value;
   136                         $this->items[
$id]->setValue($value);
   139                     elseif (method_exists($this->items[$id], 
"setDate")) {
   140                         $this->items[
$id]->setDate($value);
   143                     elseif (method_exists($this->items[$id], 
"setMonths")) {
   144                         $this->items[
$id]->setMonths((
int) ($value[
'MM'] ?? 0));
   145                         $this->items[
$id]->setDays((
int) ($value[
'dd'] ?? 0));
   146                         $this->items[
$id]->setHours((
int) ($value[
'hh'] ?? 0));
   147                         $this->items[
$id]->setMinutes((
int) ($value[
'mm'] ?? 0));
   148                         $this->items[
$id]->setSeconds((
int) ($value[
'ss'] ?? 0));
   152         } elseif ($a_value === null) {
   153             foreach ($this->items as $item) {
   154                 if (method_exists($item, 
"setValue")) {
   155                     $item->setValue(null);
   158                 elseif (method_exists($item, 
"setDate")) {
   162                 elseif (method_exists($item, 
"setMonths")) {
   166                     $item->setMinutes(0);
   167                     $item->setSeconds(0);
   176         foreach ($this->items as 
$id => $obj) {
   177             if (method_exists($obj, 
"getValue")) {
   178                 $result[
$id] = $obj->getValue();
   181             elseif (method_exists($obj, 
"setDate")) {
   182                 $result[
$id] = $obj->getDate();
   185             elseif (method_exists($obj, 
'getValueAsArray')) {
   186                 $result[
$id] = $obj->getValueAsArray();
   194         foreach ($this->items as $obj) {
   195             $obj->setValueByArray($a_values);
   204         if (
sizeof($this->items)) {
   205             foreach ($this->items as $obj) {
   206                 if (!$obj->checkInput()) {
   211             if ($this->comparison_mode !== self::COMPARISON_NONE) {
   213                 foreach ($this->items as $obj) {
   214                     $value = $obj->getPostValueForComparison();
   216                         if ($prev !== null) {
   217                             if ($this->comparison_mode == self::COMPARISON_ASCENDING) {
   218                                 if ($value < $prev) {
   222                                 if ($value > $prev) {
   247         $tpl = 
new ilTemplate(
"tpl.prop_combination.html", 
true, 
true, 
"components/ILIAS/Form");
   249         if (
sizeof($this->items)) {
   250             foreach ($this->items as 
$id => $obj) {
   252                 if (isset($this->labels[
$id])) {
   253                     $tpl->setCurrentBlock(
"prop_combination_label");
   254                     $tpl->setVariable(
"LABEL", $this->labels[$id]);
   255                     $tpl->parseCurrentBlock();
   258                 $tpl->setCurrentBlock(
"prop_combination");
   259                 $tpl->setVariable(
"FIELD", $obj->render());
   260                 $tpl->parseCurrentBlock();
 parseCurrentBlock(string $part=ilGlobalTemplateInterface::DEFAULT_BLOCK)
 
setVariable($variable, $value='')
Sets a variable value. 
 
setCurrentBlock(string $part=ilGlobalTemplateInterface::DEFAULT_BLOCK)
 
$id
plugin.php for ilComponentBuildPluginInfoObjectiveTest::testAddPlugins 
 
__construct(Container $dic, ilPlugin $plugin)