<?php
/**
 * @copyright (c) Kufer Software GmbH, Loisachstrasse 4, D-84453 Mühldorf
 */

class DataMenuMatAusgInteresseEingabe extends DataMenuMainTopLeft
{
  private $pflichtfelderWarntext;

  public function __construct($pUrlparameter, $pflichtfelderWarntext = '')
  {
    parent::__construct($pUrlparameter);
    $this->exportadapter = new ExpMatAusg();
    $this->pflichtfelderWarntext = $pflichtfelderWarntext;
  }

  public function getsight($pSightId = 731)
  {
    parent::getsight($pSightId);
  }

  public function _getClickPath($pName = 'Interessenbekundung')
  {
    $detailText = $this->toolsettings->clickMaterialAusgabeDetailText != '' ? $this->toolsettings->clickMaterialAusgabeDetailText : 'Materialausgabedetails';
    $uebersichtText = $this->toolsettings->clickMaterialAusgabeUebersichtText != '' ? $this->toolsettings->clickMaterialAusgabeUebersichtText : 'Materialausgabe Übersicht';

    DataMenuMainTopLeft::_getClickPath();
    
    if ($this->toolsettings->titleKursBereich != '') {
      $this->clickpfad = '<span class="clickadresse"> ' . CleanOperations::cleanStringForHtml(stripslashes($this->toolsettings->titleKursBereich)) . ' </span>' . PHP_EOL;
      $this->clickpfad .= '<span class="trennzeichen"> ' . CleanOperations::cleanStringContainingHtml($this->toolsettings->trennzeichenKategorie) . ' </span>' . PHP_EOL;
    }

    $this->clickpfad .= $this->getClickPathStep(
      $this->urlparameter->getEmptyStreamWith(
        array('kathaupt'),
        array('281')
      ),
      'Materialausgabe Übersicht öffnen',
      $uebersichtText
    );

    $this->clickpfad .= $this->getClickPathStep(
      $this->urlparameter->getEmptyStreamWith(
        array('kathaupt', 'material'),
        array('282', $this->getMaterial()->id)
      ),
      'Materialausgabe Details öffnen',
      $detailText
    );

    $this->clickpfad .= '<span class="clickadrbold">' . CleanOperations::cleanStringForHtml($pName) . "</span>\n";

    return $this->clickpfad;
  }

  protected function beforeContent()
  {
    echo $this->pflichtfelderWarntext;
  }

  protected function getExportAdapterBody()
  {
    $expTeilnehmer = new \ExpTeilnehmerRekursiv();
    $expTeilnehmer->export->expCalculation->enforceParamForValueTeilnehmerEdit = true;
    $expTeilnehmer->export->expCalculation->isDataBinding = false;

    return $expTeilnehmer;
  }

  public function getdataarrayheader()
  {
    $this->dataarrayheader = array($this->getMaterial());
  }

  public function getdataarraybody()
  {
    if ($this->urlparameter->material != '') {
      $this->dataarraybody = SessionOperations::getTeilnehmerFromSession('matinteresse');
    } else {
      $this->dataarraybody = array();
    }
  }

  public function getdataarrayfooter()
  {
    $this->dataarrayfooter = array($this->getMaterial());
  }

  private function getMaterial()
  {
    $dbwmat = DBWorkMatAusg::getDefaultInstance();

    return $dbwmat->getMaterialById($this->urlparameter->material);
  }
}