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

namespace Kufer\Web\KuferTools\Dozent\KursUebersicht\Detailsreiter\Termine\BerichtAbgeben;

use Kufer\Web\KuferTools\Dozent\KursUebersicht\Detailsreiter\Termine\DozTermineUseCase;

class KurstagBerichtAbgebenUtils
{
  private function __construct()
  {
  }

  public static function hasAccessToBerichtAbgebenAllgemein(): bool
  {
    return \DBWorkBASysSettings::isOffenbachJuku();
  }

  public static function hasAccessToBerichtAbgeben(\ToolSettings $settings, int $toolSectionId, \Kurstag $kurstag): bool
  {
    if (!static::hasAccessToBerichtAbgebenAllgemein()) {
      return false;
    }

    $columns = DozTermineUseCase::getColumns($settings, $toolSectionId);
    foreach ($columns as $column) {
      if ($column->datamodul === 'kurstag' && $column->fieldname === 'bericht_abgeben' && $column->accesslevel == 2) {
        return true;
      }
    }

    return false;
  }
}