<?php
/**
 * @copyright (c) Kufer Software GmbH, Oderstraße 7, D-84453 Mühldorf
 */

namespace Kufer\Web\KuferTools\dozent\kursuebersicht\detailsreiter\honorar\ravensberghalle\honorarpdf;

class VerguetungForm extends \Kufer\Web\KuferTools\Utils\Form\AbstractForm
{
  
  public $text;

  
  public $verguetung;

  public function validate_text()
  {
    return \StringOperations::strlen($this->text) > 0;
  }

  public function validate_verguetung()
  {
    return \CleanOperations::isFloatMitKomma($this->verguetung);
  }

  public function fromRequest(string $prefix = ''): void
  {
  }

  
  public static function getAllFromRequest(string $prefix = ''): ?array
  {
    $texts = \PostOperations::getVarValue($prefix . 'text', null);
    $verguetungen = \PostOperations::getVarValue($prefix . 'verguetung', null);
    if (empty($texts) || empty($verguetungen)) {
      return null;
    }

    if (count(array_unique(array(count($texts), count($verguetungen)))) !== 1) {
      return null; 
    }

    $result = array();
    for ($i = 0; $i < count($texts); ++$i) {
      $verguetungForm = new VerguetungForm();
      $verguetungForm->text = $texts[$i];
      $verguetungForm->verguetung = $verguetungen[$i];

      $result[] = $verguetungForm;
    }

    return $result;
  }
}