<?php

// TODO: Split all form class definitions to modules

function RegisterFormClasses(FormManager $FormManager): void
{

$FormManager->FormTypes = array
(
  'TPriority' => array(
    'Type' => 'Enumeration',
    'States' => array('Nízká', 'Střední', 'Vysoká'),
  ),
  'TOnlineState' => array(
    'Type' => 'Enumeration',
    'States' => array('<span style="color:red;">Nedostupný</span>', '<span style="color:green;">Dostupný</span>'),
  ),
  'TAntennaPolarity' => array(
    'Type' => 'Enumeration',
    'States' => array('Vertikální', 'Horizontální', 'Kruhová', 'Vertikální i horizontální'),
  ),
  'TNetworkDeviceState' => array(
    'Type' => 'Enumeration',
    'States' => array('Vyřazeno', 'Použito', 'Na skladě'),
  ),
  'TNetworkDeviceAction' => array(
    'Type' => 'Enumeration',
    'States' => array('Zakoupeno', 'Prodáno', 'Zařazeno do použití', 'Vyřazeno z použití', 'Zasláno do reklamace', 'Přijato z reklamace'),
  ),
  'TActionEnum' => array(
    'Type' => 'Enumeration',
    'States' => array('add' => 'Přidat', 'modify' => 'Upravit', 'remove' => 'Odstranit'),
  ),
  'TWirelessMode' => array(
    'Type' => 'Enumeration',
    'States' => array('Přístupový bod (AP)', 'Klient'),
  ),
  'TFinanceBillingPeriod' => array(
    'Type' => 'Reference',
    'Table' => 'FinanceBillingPeriod',
    'Id' => 'Id',
    'Name' => 'Name',
    'Filter' => '1',
  ),
  'TMemberListSubject' => array(
    'Type' => 'ManyToOne',
    'Table' => 'Member',
    'Id' => 'Id',
    'Ref' => 'Subject',
    'Filter' => '1',
  ),
	'TStockSerialNumberListStock' => array(
    'Type' => 'ManyToOne',
    'Table' => 'StockSerialNumber',
    'Id' => 'Id',
    'Ref' => 'Stock',
    'Filter' => '1',
  ),
  'TStockSerialNumberListProduct' => array(
    'Type' => 'ManyToOne',
    'Table' => 'StockSerialNumber',
    'Id' => 'Id',
    'Ref' => 'Product',
    'Filter' => '1',
  ),
  'TNetworkDeviceListProduct' => array(
    'Type' => 'ManyToOne',
    'Table' => 'NetworkDevice',
    'Id' => 'Id',
    'Ref' => 'Product',
    'Filter' => '1',
  ),
  'TDocumentLine' => array(
    'Type' => 'Reference',
    'Table' => 'DocumentLine',
    'Id' => 'Id',
    'Name' => 'Name',
    'Filter' => '1',
  ),
  'TFinanceYear' => array(
    'Type' => 'Reference',
    'Table' => 'FinanceYear',
    'Id' => 'Id',
    'Name' => 'Year',
    'Filter' => '1',
  ),
  'TCurrency' => array(
    'Type' => 'Reference',
    'Table' => 'Currency',
    'Id' => 'Id',
    'Name' => 'Code',
    'Filter' => '1',
  ),
  'TFinanceInvoice' => array(
    'Type' => 'Reference',
    'Table' => 'FinanceInvoice',
    'Id' => 'Id',
    'Name' => '(SELECT `DocumentLineCode`.`Name` FROM `DocumentLineCode` WHERE `Id`=`FinanceInvoice`.`BillCode`)',
    'Filter' => '1',
  ),
  'TFinanceOperation' => array(
    'Type' => 'Reference',
    'Table' => 'FinanceOperation',
    'Id' => 'Id',
    'Name' => '(SELECT `DocumentLineCode`.`Name` FROM `DocumentLineCode` WHERE `Id`=`FinanceOperation`.`BillCode`)',
    'Filter' => '1',
  ),
  'TFinanceCharge' => array(
    'Type' => 'Reference',
    'Table' => 'FinanceCharge',
    'Id' => 'Id',
    'Name' => 'Id',
    'Filter' => '1',
  ),
  'TDocumentLineSequenceListYear' => array(
    'Type' => 'ManyToOne',
    'Table' => 'DocumentLineSequence',
    'Id' => 'Id',
    'Ref' => 'FinanceYear',
    'Filter' => '1',
  ),
  'TDocumentLineSequenceListLine' => array(
    'Type' => 'ManyToOne',
    'Table' => 'DocumentLineSequence',
    'Id' => 'Id',
    'Ref' => 'DocumentLine',
    'Filter' => '1',
  ),
  'TDocumentLineCodeList' => array(
    'Type' => 'ManyToOne',
    'Table' => 'DocumentLineCode',
    'Id' => 'Id',
    'Ref' => 'DocumentLine',
    'Filter' => '1',
  ),
	'TUserCustomerRelListUser' => array(
    'Type' => 'ManyToOne',
    'Table' => 'UserCustomerRel',
    'Id' => 'Id',
    'Ref' => 'User',
    'Filter' => '1',
  ),
  'TUserCustomerRelListCustomer' => array(
    'Type' => 'ManyToOne',
    'Table' => 'UserCustomerRel',
    'Id' => 'Id',
    'Ref' => 'Customer',
    'Filter' => '1',
  ),
  'TFinanceInvoiceOperationRelListInvoice' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceInvoiceOperationRel',
    'Id' => 'Id',
    'Ref' => 'Invoice',
    'Filter' => '1',
  ),
  'TFinanceInvoiceOperationRelListOperation' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceInvoiceOperationRel',
    'Id' => 'Id',
    'Ref' => 'Operation',
    'Filter' => '1',
  ),
  'TCustomerStockSerialNumber' => array(
    'Type' => 'ManyToOne',
    'Table' => 'StockSerialNumber',
    'Id' => 'Id',
    'Ref' => 'Location',
    'Filter' => '1',
  ),
  'TPermissionUserAssignmentListUser' => array(
    'Type' => 'ManyToOne',
    'Table' => 'PermissionUserAssignment',
    'Id' => 'Id',
    'Ref' => 'User',
    'Filter' => '1',
  ),
  'TPermissionGroupAssignmentListGroup' => array(
    'Type' => 'ManyToOne',
    'Table' => 'PermissionGroupAssignment',
    'Id' => 'Id',
    'Ref' => 'Group',
    'Filter' => '1',
  ),
  'TPermissionGroupAssignmentListOperation' => array(
    'Type' => 'ManyToOne',
    'Table' => 'PermissionGroupAssignment',
    'Id' => 'Id',
    'Ref' => 'AssignedOperation',
    'Filter' => '1',
  ),
  'TPermissionGroupAssignmentListAssignedGroup' => array(
    'Type' => 'ManyToOne',
    'Table' => 'PermissionGroupAssignment',
    'Id' => 'Id',
    'Ref' => 'AssignedGroup',
    'Filter' => '1',
  ),
  'TNetworkSignalListInterface' => array(
    'Type' => 'ManyToOne',
    'Table' => 'NetworkSignal',
    'Id' => 'Id',
    'Ref' => 'Interface',
    'Filter' => '1',
  ),
  'TFinanceInvoiceItemListInvoice' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceInvoiceItem',
    'Id' => 'Id',
    'Ref' => 'FinanceInvoice',
    'Filter' => '1',
  ),
  'TFinanceInvoiceStornoListBy' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceInvoiceStorno',
    'Id' => 'Id',
    'Ref' => 'StornoBy',
    'Filter' => '1',
  ),
  'TFinanceInvoiceStornoListOf' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceInvoiceStorno',
    'Id' => 'Id',
    'Ref' => 'StornoOf',
    'Filter' => '1',
  ),
  'TFinanceInvoiceListGroup' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceInvoice',
    'Id' => 'Id',
    'Ref' => 'Group',
    'Filter' => '1',
  ),
  'TFinanceOperationListGroup' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceOperation',
    'Id' => 'Id',
    'Ref' => 'Group',
    'Filter' => '1',
  ),
    'TFinanceOperationListAccount' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceOperation',
    'Id' => 'Id',
    'Ref' => 'BankAccount',
    'Filter' => '1',
  ),
  'TFinanceOperationListSubject' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceOperation',
    'Id' => 'Id',
    'Ref' => 'Subject',
    'Filter' => '1',
  ),
  'TFinanceInvoiceListSubject' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceInvoice',
    'Id' => 'Id',
    'Ref' => 'Subject',
    'Filter' => '1',
  ),
  'TMenuItemListMenu' => array(
    'Type' => 'ManyToOne',
    'Table' => 'MenuItem',
    'Id' => 'Id',
    'Ref' => 'Menu',
    'Filter' => '1',
  ),
  'TMenuItemListParent' => array(
    'Type' => 'ManyToOne',
    'Table' => 'MenuItem',
    'Id' => 'Id',
    'Ref' => 'Parent',
    'Filter' => '1',
  ),
  'TActionListGroup' => array(
    'Type' => 'ManyToOne',
    'Table' => 'Action',
    'Id' => 'Id',
    'Ref' => 'Group',
    'Filter' => '1',
  ),
  'TFinanceOperationListTreasury' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceOperation',
    'Id' => 'Id',
    'Ref' => 'Treasury',
    'Filter' => '1',
  ),
  'TActionListIcon' => array(
    'Type' => 'ManyToOne',
    'Table' => 'Action',
    'Id' => 'Id',
    'Ref' => 'Icon',
    'Filter' => '1',
  ),
  'TActionListType' => array(
    'Type' => 'ManyToOne',
    'Table' => 'Action',
    'Id' => 'Id',
    'Ref' => 'Type',
    'Filter' => '1',
  ),
  'TStockSerialNumberListStockSerialNumber' => array(
    'Type' => 'ManyToOne',
    'Table' => 'StockSerialNumber',
    'Id' => 'Id',
    'Ref' => 'Esemble',
    'Filter' => '1',
  ),
  'TCustomerListBillingPeriod' => array(
    'Type' => 'ManyToOne',
    'Table' => 'Member',
    'Id' => 'Id',
    'Ref' => 'BillingPeriod',
    'Filter' => '1',
  ),
  'TFinanceOperationGroupListDocumentLine' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceOperationGroup',
    'Id' => 'Id',
    'Ref' => 'DocumentLine',
    'Filter' => '1',
  ),
  'TFinanceInvoiceGroupListDocumentLine' => array(
    'Type' => 'ManyToOne',
    'Table' => 'FinanceInvoiceGroup',
    'Id' => 'Id',
    'Ref' => 'DocumentLine',
    'Filter' => '1',
  ),
);
}
