<?php

include_once(dirname(__FILE__).'/Base.php');

class TypeRandomHash extends TypeBase
{
  function __construct($FormManager)
  {
    parent::__construct($FormManager);
    $this->Hidden = true;
  }

  function OnView(array $Item): ?string
  {
    $Output = $Item['Value'];
    return $Output;
  }

  function OnEdit(array $Item): string
  {
    if ($Item['Value'] == '')
    {
      // Create only once
      $PasswordHash = new PasswordHash();
      $Item['Value'] = $PasswordHash->GetSalt();
    }
    $Output = '<input type="hidden" name="'.$Item['Name'].'" value="'.$Item['Value'].'" />';
    return $Output;
  }

  function OnLoad(array $Item): ?string
  {
    return $_POST[$Item['Name']];
  }
}