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

namespace Kufer\KuferTools\Utils\WssField;

use Kufer\KuferTools\Utils\Hinterlegungen\HinterlegungJsHelper;

class WssFieldKurstagKeypoint extends WssField
{
  protected function getFieldBearbeitbar($datamodulWert, $isFormular, string $requestPrefix = '')
  {
    $feld = parent::getFieldBearbeitbar($datamodulWert, $isFormular, $requestPrefix);
    $hinterlegung = $this->getHinterlegung();

    return $feld . $hinterlegung;
  }

  protected function getHinterlegung()
  {
    $hlIlKeypoint = \HLDispatcher::GetHinterlegungClass(\HLDispatcher::HL_ILKEYPOINT);
    $hlJson = HinterlegungJsHelper::getHinterlegungMultiColFiltered4JS($hlIlKeypoint);

    $buttonId = 'hlIlKeypoint';
    $targetIdAry = array('kurstag_keypoint', 'kurstag_keypointtext', 'kurstag_unterrichtsinhalt');
    $targetIdFilterAry = array('kurstag_stufe', 'kurstag_unit');

    $hinterlegung = '<span id="hlIlKeypoint" title="Hinterlegung Keypoint">
                       <i class="fa fa-hand-o-down"></i>
                     </span>';

    $hinterlegung .= HinterlegungJsHelper::getHlDialogMultiColumnFilteredScript($hlJson, $targetIdAry, $targetIdFilterAry, $buttonId);

    return $hinterlegung;
  }

  public function getDefaultMaxLength(): ?int
  {
    return 50;
  }
}