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


namespace Kufer\Web\KuferTools\Mitarbeiter\TeilnehmerInfo\UpdateTeilnehmer\HandleTeilnehmerUpdate;

use Kufer\Web\KuferTools\Utils\DatamodulHelper\Teilnehmer\TeilnehmerHelper;

class HandleTeilnehmerUpdateUseCase extends \Kufer\Web\KuferTools\Basis\TeilnehmerInfo\UpdateTeilnehmer\HandleTeilnehmerUpdate\HandleTeilnehmerUpdateUseCase
{
  public static function getToolSectionId()
  {
    return 42;
  }

  public static function getToolId()
  {
    return \ToolsAPI::TOOL_TEILNEHMERINFO_MA;
  }

  public function hasAccess($pToolSectionId = null)
  {
    if (!parent::hasAccess($pToolSectionId)) {
      return false;
    }
    
    if (!$this->isRechtAllowed('411.0.1')) {
      return false;
    }
    if (!$this->request->isXsrfOk && !$this->request->isRefresh) {
      return false;
    }

    return true;
  }

  protected function getTeilnehmerHelper()
  {
    return TeilnehmerHelper::createMitarbeiterTeilnehmerUebersicht(
      $this->toolSettings,
      static::getUser()
    );
  }
}