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

namespace Kufer\KuferTools\Firma\MitarbeiterUebersicht\TerminAdministratorBearbeiten;

class TerminAdministratorAendernPresenter extends \Kufer\KuferTools\Basis\Presenter\JsonPresenter
{
  public function present()
  {
    $obj = new \stdClass();
    $obj->statusMessage = $this->getStatusMessage();
    $obj->xsrf = $this->useCaseResponse->xsrfNew;
    $obj->success = $this->useCaseResponse->statusCode === TerminAdministratorAendernUseCase::TERMIN_ADMIN_AENDERN_SUCCESS;

    return \JsonOperations::encode4Ajax($obj);
  }

  protected function getView()
  {
    return null;
  }

  protected function getViewModel()
  {
    return null;
  }

  
  protected function getStatusMessage()
  {
    $statusMessage = '';
    if ($this->useCaseResponse->statusCode === TerminAdministratorAendernUseCase::TERMIN_ADMIN_AENDERN_SUCCESS) {
      $statusMessagePart = $this->useCaseResponse->setAdmin ? 'festgelegt.' : 'entfernt.';
      $statusMessage .= 'Der Mitarbeiter wurde erfolgreich als Termin-Administrator ' . $statusMessagePart;
    } elseif ($this->useCaseResponse->statusCode === TerminAdministratorAendernUseCase::TERMIN_ADMIN_AENDERN_ERROR) {
      $statusMessagePart = $this->useCaseResponse->setAdmin ? 'Festlegen' : 'Entfernen';
      $statusMessage .= 'Es gab Fehler beim ' . $statusMessagePart . ' des Termin-Administrators. '
              . 'Falls dieses Problem länger bestehen sollte, wenden Sie sich bitte an uns.';
    }

    return $statusMessage;
  }
}