Changeset 887 for trunk/Common


Ignore:
Timestamp:
Nov 20, 2020, 12:08:12 AM (4 years ago)
Author:
chronos
Message:
  • Added: Static types added to almost all classes, methods and function. Supported by PHP 7.4.
  • Fixed: Various found code issues.
Location:
trunk/Common
Files:
29 edited

Legend:

Unmodified
Added
Removed
  • trunk/Common/Form/Form.php

    r874 r887  
    2222class Form
    2323{
    24   var $FormManager;
    25   var $Definition;
    26   var $Values;
    27   var $ValuesValidate;
    28   var $ValuesFilter;
    29   var $OnSubmit;
    30   var $Database;
    31 
    32   function __construct($FormManager)
     24  public FormManager $FormManager;
     25  public Database $Database;
     26  public array $Definition;
     27  public array $Values;
     28  public array $ValuesValidate;
     29  public array $ValuesFilter;
     30  public string $OnSubmit;
     31
     32  function __construct(FormManager $FormManager)
    3333  {
    3434    $this->FormManager = &$FormManager;
     
    4141  }
    4242
    43   function LoadDefaults()
     43  function LoadDefaults(): void
    4444  {
    4545    foreach ($this->Definition['Items'] as $Index => $Item)
     
    5858  }
    5959
    60   function SetClass($Name)
     60  function SetClass(string $Name): void
    6161  {
    6262    $this->Definition = &$this->FormManager->Classes[$Name];
     
    6464  }
    6565
    66   function GetValue($Index, $Event = 'OnView')
     66  function GetValue(string $Index, string $Event = 'OnView'): string
    6767  {
    6868    $Item = $this->Definition['Items'][$Index];
     
    8282  }
    8383
    84   function ShowViewForm()
     84  function ShowViewForm(): string
    8585  {
    8686    $Table = array(
     
    116116  }
    117117
    118   function ShowEditForm()
     118  function ShowEditForm(): string
    119119  {
    120120    if (!array_key_exists('SubmitText', $this->Definition)) $this->Definition['SubmitText'] = 'Uložit';
     
    125125  }
    126126
    127   function ShowEditBlock($Context = '')
     127  function ShowEditBlock(string $Context = ''): string
    128128  {
    129129    $Hidden = '';
     
    182182  }
    183183
    184   function LoadValuesFromDatabase($Id)
     184  function LoadValuesFromDatabase(string $Id): void
    185185  {
    186186    foreach ($this->Definition['Items'] as $Index => $Item)
     
    232232  }
    233233
    234   function SaveValuesToDatabase($Id)
     234  function SaveValuesToDatabase(string $Id)
    235235  {
    236236    $Values = array();
     
    269269  }
    270270
    271   function LoadValuesFromForm()
     271  function LoadValuesFromForm(): void
    272272  {
    273273    $this->Values = $this->LoadValuesFromFormBlock();
    274274  }
    275275
    276   function LoadValuesFromFormBlock($Context = '')
     276  function LoadValuesFromFormBlock(string $Context = ''): array
    277277  {
    278278    if ($Context != '') $Context = $Context.'-';
     
    319319  }
    320320
    321   function Validate()
     321  function Validate(): bool
    322322  {
    323323    $Valid = true;
     
    358358
    359359
    360 function MakeLink($Target, $Title)
     360function MakeLink(string $Target, string $Title): string
    361361{
    362362  return '<a href="'.$Target.'">'.$Title.'</a>';
    363363}
    364364
    365 function Table($Table)
     365function Table(array $Table): string
    366366{
    367367  $Result = '<table class="BasicTable">';
     
    389389class FormManager
    390390{
    391   var $Classes;
    392   var $FormTypes;
    393   var $Database;
    394   var $Type;
    395   var $RootURL;
    396   var $ShowRelation;
    397 
    398   function __construct($Database)
     391  public array $Classes;
     392  public array $FormTypes;
     393  public Database $Database;
     394  public Type $Type;
     395  public string $RootURL;
     396  public bool $ShowRelation;
     397
     398  function __construct(Database $Database)
    399399  {
    400400    $this->Database = &$Database;
     
    405405  }
    406406
    407   function RegisterClass($Name, $Class)
     407  function RegisterClass(string $Name, array $Class): void
    408408  {
    409409    $this->Classes[$Name] = $Class;
    410410  }
    411411
    412   function UnregisterClass($Name)
     412  function UnregisterClass(string $Name): void
    413413  {
    414414    unset($this->Classes[$Name]);
    415415  }
    416416
    417   function RegisterFormType($Name, $Class)
     417  function RegisterFormType(string $Name, array $Class): void
    418418  {
    419419    $this->FormTypes[$Name] = $Class;
    420420  }
    421421
    422   function UnregisterFormType($Name)
     422  function UnregisterFormType(string $Name): void
    423423  {
    424424    unset($this->FormTypes[$Name]);
    425425  }
    426426
    427   function UpdateSQLMeta()
     427  function UpdateSQLMeta(): void
    428428  {
    429429    $this->Database->query('DELETE FROM ModelField');
  • trunk/Common/Form/Types/Base.php

    r874 r887  
    33class TypeBase
    44{
    5   var $FormManager;
    6   var $Database;
    7   var $DatabaseCompareOperators = array();
    8   var $Hidden;
     5  public FormManager $FormManager;
     6  public Database $Database;
     7  public array $DatabaseCompareOperators = array();
     8  public bool $Hidden;
    99
    10   function __construct($FormManager)
     10  function __construct(FormManager $FormManager)
    1111  {
    1212    $this->FormManager = &$FormManager;
     
    1515  }
    1616
    17   function OnView($Item)
     17  function OnView(array $Item): ?string
    1818  {
    1919    return '';
    2020  }
    2121
    22   function OnEdit($Item)
     22  function OnEdit(array $Item): string
    2323  {
    2424    return '';
    2525  }
    2626
    27   function OnLoad($Item)
     27  function OnLoad(array $Item): ?string
    2828  {
    2929    return '';
    3030  }
    3131
    32   function OnLoadDb($Item)
     32  function OnLoadDb(array $Item): ?string
    3333  {
    3434    return $Item['Value'];
    3535  }
    3636
    37   function OnSaveDb($Item)
     37  function OnSaveDb(array $Item): ?string
    3838  {
    3939    return $Item['Value'];
    4040  }
    4141
    42   function DatabaseEscape($Value)
     42  function DatabaseEscape(string $Value): string
    4343  {
    4444    return addslashes($Value);
    4545  }
    4646
    47   function OnFilterName($Item)
     47  function OnFilterName(array $Item): string
    4848  {
    4949    if (array_key_exists('SQL', $Item) and ($Item['SQL'] != ''))
     
    5353  }
    5454
    55   function OnFilterNameQuery($Item)
     55  function OnFilterNameQuery(array $Item): string
    5656  {
    5757    if (array_key_exists('SQL', $Item) and ($Item['SQL'] != ''))
     
    6161  }
    6262
    63   function Validate($Item)
     63  function Validate(array $Item): bool
    6464  {
    6565    return true;
    6666  }
    6767
    68   function GetValidationFormat()
     68  function GetValidationFormat(): string
    6969  {
    7070    return '';
  • trunk/Common/Form/Types/Boolean.php

    r874 r887  
    55class TypeBoolean extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    1115    if ($Item['Value'] == 1) $Checked = ' checked="1"'; else $Checked = '';
     
    1317  }
    1418
    15   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    1620  {
    1721    if ($Item['Value'] == 1) $Checked = ' checked="1"'; else $Checked = '';
     
    1923  }
    2024
    21   function OnLoad($Item)
     25  function OnLoad(array $Item): ?string
    2226  {
    2327    if (array_key_exists($Item['Name'], $_POST)) return 1;
  • trunk/Common/Form/Types/Color.php

    r874 r887  
    55class TypeColor extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    1115    $Output = '<span style="background-color: #'.$Item['Value'].'">&nbsp;&nbsp;&nbsp;&nbsp;</span>';
     
    1317  }
    1418
    15   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    1620  {
    1721    $Output = '<input type="text" name="'.$Item['Name'].'" value="'.$Item['Value'].'"/>';
     
    1923  }
    2024
    21   function OnLoad($Item)
     25  function OnLoad(array $Item): ?string
    2226  {
    2327    return $_POST[$Item['Name']];
  • trunk/Common/Form/Types/Date.php

    r874 r887  
    55class TypeDate extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    11     global $MonthNames;
    12 
    1315    if ($Item['Value'] == null) return '';
    1416    if ((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == '')) $Item['Value'] = time();
     
    1921  }
    2022
    21   function OnEdit($Item)
     23  function OnEdit(array $Item): string
    2224  {
    2325    global $MonthNames;
     
    7476  }
    7577
    76   function OnLoad($Item)
     78  function OnLoad(array $Item): ?string
    7779  {
    7880    if (!array_key_exists($Item['Name'].'-null', $_POST) and array_key_exists('Null', $Item) and ($Item['Null'] == true)) return null;
     
    8082  }
    8183
    82   function OnLoadDb($Item)
     84  function OnLoadDb(array $Item): ?string
    8385  {
    8486    return MysqlDateToTime($Item['Value']);
    8587  }
    8688
    87   function OnSaveDb($Item)
     89  function OnSaveDb(array $Item): ?string
    8890  {
    8991    if ($Item['Value'] == null) return null;
     
    9193  }
    9294
    93   function DatabaseEscape($Value)
     95  function DatabaseEscape(string $Value): string
    9496  {
    9597    return '"'.addslashes($Value).'"';
  • trunk/Common/Form/Types/DateTime.php

    r871 r887  
    55class TypeDateTime extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    11     global $MonthNames;
    12 
    1315    if ($Item['Value'] == 0) return '';
    1416    if ((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == '')) $Item['Value'] = time();
     
    1921  }
    2022
    21   function OnEdit($Item)
     23  function OnEdit(array $Item): string
    2224  {
    2325    global $MonthNames;
     
    99101  }
    100102
    101   function OnLoad($Item)
     103  function OnLoad(array $Item): ?string
    102104  {
    103105    if (!array_key_exists($Item['Name'].'-null', $_POST) and array_key_exists('Null', $Item) and ($Item['Null'] == true)) return null;
     
    106108  }
    107109
    108   function OnLoadDb($Item)
     110  function OnLoadDb(array $Item): ?string
    109111  {
    110112    return MysqlDateTimeToTime($Item['Value']);
    111113  }
    112114
    113   function OnSaveDb($Item)
     115  function OnSaveDb(array $Item): ?string
    114116  {
    115117    if ($Item['Value'] == null) return null;
     
    117119  }
    118120
    119   function DatabaseEscape($Value)
     121  function DatabaseEscape(string $Value): string
    120122  {
    121123    return '"'.addslashes($Value).'"';
  • trunk/Common/Form/Types/Enumeration.php

    r874 r887  
    55class TypeEnumeration extends TypeBase
    66{
    7   function OnView($Item)
     7  function OnView($Item): ?string
    88  {
    99    $Type = $this->FormManager->Type->GetTypeDefinition($Item['Type']);
     
    1414  }
    1515
    16   function OnEdit($Item)
     16  function OnEdit(array $Item): string
    1717  {
    1818    $Type = $this->FormManager->Type->GetTypeDefinition($Item['Type']);
     
    3232  }
    3333
    34   function OnLoad($Item)
     34  function OnLoad(array $Item): ?string
    3535  {
    3636    if ($_POST[$Item['Name']] == '') return NULL;
     
    3838  }
    3939
    40   function OnLoadDb($Item)
     40  function OnLoadDb(array $Item): ?string
    4141  {
    4242    if ($Item['Value'] == '') return NULL;
  • trunk/Common/Form/Types/File.php

    r874 r887  
    33class DbFile
    44{
    5   var $Id;
    6   var $FileName;
    7   var $Size;
    8   var $Directory;
    9   var $DirectoryId;
    10   var $TempName;
     5  public string $Id;
     6  public string $FileName;
     7  public int $Size;
     8  public string $Directory;
     9  public string $DirectoryId;
     10  public string $TempName;
    1111
    12   function DetectMimeType()
     12  function DetectMimeType(): string
    1313  {
    1414    // For proper mime-type detection php-pecl-Fileinfo package should be installed on *nix systems
     
    1919  }
    2020
    21   function GetSize($Item)
     21  function GetSize($Item): int
    2222  {
    2323    $FileName = $this->GetFullName($Item);
     
    2727  }
    2828
    29   function GetFullName()
     29  function GetFullName(): string
    3030  {
     31    $Path = '';
    3132    $ParentId = $this->Directory;
    3233    while ($ParentId != null)
     
    3738      $ParentId = $DbRow['Parent'];
    3839    }
    39     $Result = $this->UploadFileFolder.'/'.$Path.$File->Name;
     40    $Result = $this->UploadFileFolder.'/'.$Path.$this->FileName;
    4041    return $Result;
    4142  }
    4243
    43   function GetExt()
     44  function GetExt(): string
    4445  {
    4546    return substr($this->Name, 0, strpos($this->Name, '.') - 1);
    4647  }
    4748
    48   function Delete()
     49  function Delete(): void
    4950  {
    5051    if (file_exists($this->GetFullName())) unlink($this->GetFullName());
    5152  }
    5253
    53   function GetContent()
     54  function GetContent(): string
    5455  {
    5556    if ($this->TempName != '') $Content = file_get_contents($this->TempName);
     
    6162class TypeFile extends TypeBase
    6263{
    63   var $UploadFileFolder;
    64   var $FileDownloadURL;
    65   var $DirectoryId;
     64  public string $UploadFileFolder;
     65  public string $FileDownloadURL;
     66  public string $DirectoryId;
    6667
    67   function __construct($FormManager)
     68  function __construct(FormManager $FormManager)
    6869  {
    6970    parent::__construct($FormManager);
     
    7273  }
    7374
    74   function OnView($Item)
     75  function OnView(array $Item): ?string
    7576  {
    7677    $File = &$Item['Value'];
     
    7980  }
    8081
    81   function OnEdit($Item)
     82  function OnEdit(array $Item): string
    8283  {
    8384    // Check max value of upload_max_filesize
     
    8990  }
    9091
    91   function OnLoad($Item)
     92  function OnLoad(array $Item): ?string
    9293  {
    9394    if (!is_object($Item['Value'])) $Item['Value'] = new DbFile();
     
    106107  }
    107108
    108   function OnLoadDb($Item)
     109  function OnLoadDb(array $Item): ?string
    109110  {
    110111    if (!is_object($Item['Value'])) $Item['Value'] = new DbFile();
    111112    $File = &$Item['Value'];
    112113    $DbResult = $this->Database->select('File', '*', 'Id='.$File->Id);
    113     if ($DbResult->num_rows() > 0)
     114    if ($DbResult->num_rows > 0)
    114115    {
    115116      $DbRow = $DbResult->fetch_assoc();
     
    121122  }
    122123
    123   function OnSaveDb($Item)
     124  function OnSaveDb(array $Item): ?string
    124125  {
    125126    if (!is_object($Item['Value'])) $Item['Value'] = new DbFile();
     
    128129      'Size' => $File->GetSize(), 'Directory' => $File->Directory);
    129130    $DbResult = $this->Database->select('File', '*', 'Id='.$File->Id);
    130     if ($DbResult->num_rows() > 0)
     131    if ($DbResult->num_rows > 0)
    131132    {
    132133      $DbRow = $DbResult->fetch_assoc();
     
    143144    }
    144145    if (!move_uploaded_file($File->TempName, $FileName))
    145       SystemMessage('Nahrání souboru', 'Cílová složka není dostupná!');
     146      $this->System->SystemMessage('Nahrání souboru', 'Cílová složka není dostupná!');
     147    return '';
    146148  }
    147149
  • trunk/Common/Form/Types/Float.php

    r874 r887  
    55class TypeFloat extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    1115    $Output = $Item['Value'];
     
    1317  }
    1418
    15   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    1620  {
    1721    $Output = '<input type="text" name="'.$Item['Name'].'" value="'.$Item['Value'].'"/>';
     
    1923  }
    2024
    21   function OnLoad($Item)
     25  function OnLoad(array $Item): ?string
    2226  {
    2327    return $_POST[$Item['Name']];
  • trunk/Common/Form/Types/GPS.php

    r874 r887  
    55class TypeGPS extends TypeBase
    66{
    7   function OnView($Item)
     7  function OnView(array $Item): ?string
    88  {
    9     global $Database;
    10 
    11     $DbResult = $Database->query('SELECT * FROM `SystemGPS` WHERE `Id`='.$Item['Value']);
     9    $DbResult = $this->Database->query('SELECT * FROM `SystemGPS` WHERE `Id`='.$Item['Value']);
    1210    if ($DbResult->num_rows > 0)
    1311    {
     
    2018  }
    2119
    22   function OnEdit($Item)
     20  function OnEdit(array $Item): string
    2321  {
    24     global $Database;
    25 
    2622    if ($Item['Value'] != '')
    2723    {
    28       $DbResult = $Database->query('SELECT * FROM `SystemGPS` WHERE `Id`='.$Item['Value']);
     24      $DbResult = $this->Database->query('SELECT * FROM `SystemGPS` WHERE `Id`='.$Item['Value']);
    2925      if ($DbResult->num_rows > 0)
    3026      {
     
    4339  }
    4440
    45   function OnLoad($Item)
     41  function OnLoad(array $Item): ?string
    4642  {
    47     global $Database;
    48 
    4943    $Latitude = $this->Implode($_POST[$Item['Name'].'-lat-deg'], $_POST[$Item['Name'].'-lat-min'], $_POST[$Item['Name'].'-lat-sec']);
    5044    $Longitude = $this->Implode($_POST[$Item['Name'].'-lon-deg'], $_POST[$Item['Name'].'-lon-min'], $_POST[$Item['Name'].'-lon-sec']);
    51     $Database->query('INSERT INTO SystemGPS (`Latitude`, `Longitude`) VALUES ("'.$Latitude.'", "'.$Longitude.'")');
    52     return $Database->insert_id;
     45    $this->Database->query('INSERT INTO SystemGPS (`Latitude`, `Longitude`) VALUES ("'.$Latitude.'", "'.$Longitude.'")');
     46    return $this->Database->insert_id;
    5347  }
    5448
    55   function Explode($Float)
     49  function Explode(float $Float): array
    5650  {
    5751    $Degrees = intval($Float);
     
    6458  }
    6559
    66   function Implode($Degrees, $Minutes, $Seconds)
     60  function Implode($Degrees, $Minutes, $Seconds): float
    6761  {
    6862    if ($Degrees < 0) return -(abs($Degrees) + ($Minutes + $Seconds / 60) / 60);
  • trunk/Common/Form/Types/Hidden.php

    r874 r887  
    1111  }
    1212
    13   function OnView($Item)
     13  function OnView(array $Item): ?string
    1414  {
    1515    $Output = $Item['Value'];
     
    1717  }
    1818
    19   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    2020  {
    2121    $Output = '<input type="hidden" name="'.$Item['Name'].'" value="'.$Item['Value'].'" />';
     
    2323  }
    2424
    25   function OnLoad($Item)
     25  function OnLoad(array $Item): ?string
    2626  {
    2727    return $_POST[$Item['Name']];
  • trunk/Common/Form/Types/Hyperlink.php

    r874 r887  
    55class TypeHyperlink extends TypeBase
    66{
    7   function OnView($Item)
     7  function OnView(array $Item): ?string
    88  {
    99    $Output = '<a href="'.$Item['Value'].'">'.$Item['Value'].'</a>';
     
    1111  }
    1212
    13   function OnEdit($Item)
     13  function OnEdit(array $Item): string
    1414  {
    1515    $Output = '<input type="text" name="'.$Item['Name'].'" value="'.$Item['Value'].'"/>';
     
    1717  }
    1818
    19   function OnLoad($Item)
     19  function OnLoad(array $Item): ?string
    2020  {
    2121    return $_POST[$Item['Name']];
  • trunk/Common/Form/Types/IPv4Address.php

    r874 r887  
    55class TypeIPv4Address extends TypeBase
    66{
    7   function OnView($Item)
     7  function OnView(array $Item): ?string
    88  {
    99    $Output = $Item['Value'];
     
    1111  }
    1212
    13   function OnEdit($Item)
     13  function OnEdit(array $Item): string
    1414  {
    1515    $Output = '<input type="text" name="'.$Item['Name'].'" value="'.$Item['Value'].'"/>';
     
    1717  }
    1818
    19   function OnLoad($Item)
     19  function OnLoad(array $Item): ?string
    2020  {
    2121    return $_POST[$Item['Name']];
    2222  }
    2323
    24   function Validate($Item)
     24  function Validate(array $Item): bool
    2525  {
    2626    if ($Item['Null'] and ($Item['Value'] == '')) return true;
     
    2828  }
    2929
    30   function GetValidationFormat()
     30  function GetValidationFormat(): string
    3131  {
    3232    return 'x.x.x.x kde x je hodnota 0..255';
  • trunk/Common/Form/Types/IPv6Address.php

    r874 r887  
    55class TypeIPv6Address extends TypeBase
    66{
    7   function OnView($Item)
     7  function OnView(array $Item): ?string
    88  {
    99    $Output = $Item['Value'];
     
    1111  }
    1212
    13   function OnEdit($Item)
     13  function OnEdit(array $Item): string
    1414  {
    1515    $Output = '<input type="text" name="'.$Item['Name'].'" value="'.$Item['Value'].'"/>';
     
    1717  }
    1818
    19   function OnLoad($Item)
     19  function OnLoad(array $Item): ?string
    2020  {
    2121    return $_POST[$Item['Name']];
    2222  }
    2323
    24   function Validate($Item)
     24  function Validate(array $Item): bool
    2525  {
    2626    if ($Item['Null'] and ($Item['Value'] == '')) return true;
     
    2828  }
    2929
    30   function GetValidationFormat()
     30  function GetValidationFormat(): string
    3131  {
    3232    return 'xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx kde x je hexa hodnota 0..f';
  • trunk/Common/Form/Types/Image.php

    r874 r887  
    33class TypeImage extends TypeString
    44{
    5   function OnView($Item)
     5  function OnView(array $Item): ?string
    66  {
    77    global $System;
  • trunk/Common/Form/Types/Integer.php

    r874 r887  
    55class TypeInteger extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    1115    $Output = $Item['Value'];
     
    1317  }
    1418
    15   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    1620  {
    1721    $Output = '<input type="text" name="'.$Item['Name'].'" value="'.$Item['Value'].'"/>';
     
    1923  }
    2024
    21   function OnLoad($Item)
     25  function OnLoad(array $Item): ?string
    2226  {
    2327    return $_POST[$Item['Name']];
    2428  }
    2529
    26   function Validate($Item)
     30  function Validate(array $Item): bool
    2731  {
    2832    if ($Item['Null'] and ($Item['Value'] == '')) return true;
     
    3034  }
    3135
    32   function GetValidationFormat()
     36  function GetValidationFormat(): string
    3337  {
    3438    return 'číselná hodnota';
  • trunk/Common/Form/Types/MacAddress.php

    r874 r887  
    55class TypeMacAddress extends TypeString
    66{
    7   var $DatabaseCompareOperators = array('Jako' => 'LIKE', 'Rovno' => '=', 'Nerovno' => '!=');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Jako' => 'LIKE', 'Rovno' => '=', 'Nerovno' => '!=');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    1115    $Output = $Item['Value'];
     
    1317  }
    1418
    15   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    1620  {
    1721    $Output = '<input type="text" name="'.$Item['Name'].'" id="'.$Item['Name'].'" value="'.$Item['Value'].'"/>';
     
    1923  }
    2024
    21   function OnLoad($Item)
     25  function OnLoad(array $Item): ?string
    2226  {
    2327    //echo($Item['Name'].'='.$_POST[$Item['Name']].','.is_null(NULL).'<br>');
     
    2529  }
    2630
    27   function DatabaseEscape($Value)
     31  function DatabaseEscape(string $Value): string
    2832  {
    2933    return '"'.addslashes($Value).'"';
    3034  }
    3135
    32   function Validate($Item)
     36  function Validate(array $Item): bool
    3337  {
    3438    if ($Item['Null'] and ($Item['Value'] == '')) return true;
     
    3640  }
    3741
    38   function GetValidationFormat()
     42  function GetValidationFormat(): string
    3943  {
    4044    return 'XX:XX:XX:XX:XX:XX kde X je hexa hodnota 0..F';
  • trunk/Common/Form/Types/OneToMany.php

    r874 r887  
    55class TypeOneToMany extends TypeBase
    66{
    7   var $EditActions;
     7  public array $EditActions;
    88
    9   function OnView($Item)
     9  function OnView(array $Item): ?string
    1010  {
    1111    $Type = $this->FormManager->Type->TypeDefinitionList[$Item['Type']];
     
    1818  }
    1919
    20   function OnEdit($Item)
     20  function OnEdit(array $Item): string
    2121  {
    2222    $Output = '<select name="'.$Item['Name'].'" id="'.$Item['Name'].'">';
     
    5454  }
    5555
    56   function OnLoad($Item)
     56  function OnLoad(array $Item): ?string
    5757  {
    5858    if ($_POST[$Item['Name']] == '') return NULL;
     
    6060  }
    6161
    62   function OnLoadDb($Item)
     62  function OnLoadDb(array $Item): ?string
    6363  {
    6464    if ($Item['Value'] == '') return NULL;
     
    6666  }
    6767
    68   function OnFilterName($Item)
     68  function OnFilterName(array $Item): string
    6969  {
    7070    return '`'.$Item['Name'].'_Filter`';
    7171  }
    7272
    73   function OnFilterNameQuery($Item)
     73  function OnFilterNameQuery(array $Item): string
    7474  {
    7575    $Type = $this->FormManager->Type->TypeDefinitionList[$Item['Type']];
  • trunk/Common/Form/Types/OneToMany2.php

    r874 r887  
    55class TypeOneToMany2 extends TypeBase
    66{
    7   function OnView($Item)
     7  function OnView(array $Item): ?string
    88  {
    99    $Output = '<a href="?Action=ShowList&amp;TableId='.$Item['TypeDefinition'].'&amp;ParentTable='.$Item['SourceTable'].'&amp;ParentColumn='.$Item['SourceItemId'].'">Seznam</a>';
     
    1111  }
    1212
    13   function OnEdit($Item)
     13  function OnEdit(array $Item): string
    1414  {
    1515    $Output = '<a href="?Action=ShowList&amp;TableId='.$Item['TypeDefinition'].'&amp;ParentTable='.$Item['SourceTable'].'&amp;ParentColumn='.$Item['SourceItemId'].'">Seznam</a>';
     
    1717  }
    1818
    19   function OnLoad($Item)
     19  function OnLoad(array $Item): ?string
    2020  {
    2121    return $_POST[$Item['Name']];
  • trunk/Common/Form/Types/Password.php

    r874 r887  
    77class TypePassword extends TypeBase
    88{
    9   function OnView($Item)
     9  function OnView(array $Item): ?string
    1010  {
    1111    $Output = '';
     
    1515  }
    1616
    17   function OnEdit($Item)
     17  function OnEdit(array $Item): string
    1818  {
    1919    $Output = '<input type="password" name="'.$Item['Name'].'" value=""/>';
     
    2121  }
    2222
    23   function OnLoad($Item)
     23  function OnLoad(array $Item): ?string
    2424  {
    2525    global $Database;
     
    4242  }
    4343
    44   function OnSaveDb($Item)
     44  function OnSaveDb(array $Item): string
    4545  {
    4646    if ($Item['Value'] == '') return '';
     
    5151  }
    5252
    53   function OnLoadDb($Item)
     53  function OnLoadDb(array $Item): ?string
    5454  {
    5555    return '';
  • trunk/Common/Form/Types/RandomHash.php

    r874 r887  
    1111  }
    1212
    13   function OnView($Item)
     13  function OnView(array $Item): ?string
    1414  {
    1515    $Output = $Item['Value'];
     
    1717  }
    1818
    19   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    2020  {
    2121    if ($Item['Value'] == '')
     
    2929  }
    3030
    31   function OnLoad($Item)
     31  function OnLoad(array $Item): ?string
    3232  {
    3333    return $_POST[$Item['Name']];
  • trunk/Common/Form/Types/String.php

    r874 r887  
    55class TypeString extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Jako' => 'LIKE', 'Rovno' => '=', 'Nerovno' => '!=');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Jako' => 'LIKE', 'Rovno' => '=', 'Nerovno' => '!=');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    1115    $Output = $Item['Value'];
     
    1317  }
    1418
    15   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    1620  {
    1721    $Output = '<input type="text" name="'.$Item['Name'].'" id="'.$Item['Name'].'" value="'.$Item['Value'].'"/>';
     
    1923  }
    2024
    21   function OnLoad($Item)
     25  function OnLoad(array $Item): ?string
    2226  {
    2327    //echo($Item['Name'].'='.$_POST[$Item['Name']].','.is_null(NULL).'<br>');
     
    2529  }
    2630
    27   function DatabaseEscape($Value)
     31  function DatabaseEscape(string $Value): string
    2832  {
    2933    return '"'.addslashes($Value).'"';
  • trunk/Common/Form/Types/Text.php

    r874 r887  
    55class TypeText extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Jako' => 'LIKE', 'Rovno' => '=', 'Nerovno' => '!=');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Jako' => 'LIKE', 'Rovno' => '=', 'Nerovno' => '!=');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    1115    $Output = str_replace("\n", '<br/>', strip_tags($Item['Value']));
     
    1317  }
    1418
    15   function OnEdit($Item)
     19  function OnEdit(array $Item): string
    1620  {
    1721    $Output = '<textarea name="'.$Item['Name'].'">'.$Item['Value'].'</textarea>';
     
    1923  }
    2024
    21   function OnLoad($Item)
     25  function OnLoad(array $Item): ?string
    2226  {
    2327    return $_POST[$Item['Name']];
    2428  }
    2529
    26   function DatabaseEscape($Value)
     30  function DatabaseEscape(string $Value): string
    2731  {
    2832    return '"'.addslashes($Value).'"';
  • trunk/Common/Form/Types/Time.php

    r874 r887  
    55class TypeTime extends TypeBase
    66{
    7   var $DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     7  function __construct(FormManager $FormManager)
     8  {
     9    parent::__construct($FormManager);
     10    $this->DatabaseCompareOperators = array('Rovno' => '=', 'Nerovno' => '!=', 'Menší' => '<', 'Větší' => '>');
     11  }
    812
    9   function OnView($Item)
     13  function OnView(array $Item): ?string
    1014  {
    1115    if ($Item['Value'] == 0) return '';
     
    1721  }
    1822
    19   function OnEdit($Item)
     23  function OnEdit(array $Item): string
    2024  {
    2125    if (($Item['Value'] == null) or (($Item['Value'] !== null) and ((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == ''))))
     
    2428      $IsNull = true;
    2529    } else $IsNull = false;
    26     $Parts = getdate($Item['Value']);
     30    $TimeParts = getdate($Item['Value']);
    2731
    2832    $Output = '';
     
    7074  }
    7175
    72   function OnLoad($Item)
     76  function OnLoad(array $Item): ?string
    7377  {
    7478    if (!array_key_exists($Item['Name'].'-null', $_POST) and array_key_exists('Null', $Item) and ($Item['Null'] == true)) return null;
     
    7680  }
    7781
    78   function OnLoadDb($Item)
     82  function OnLoadDb(array $Item): ?string
    7983  {
    8084    return MysqlTimeToTime($Item['Value']);
    8185  }
    8286
    83   function OnSaveDb($Item)
     87  function OnSaveDb(array $Item): ?string
    8488  {
    8589    if ($Item['Value'] == null) return null;
     
    8791  }
    8892
    89   function DatabaseEscape($Value)
     93  function DatabaseEscape(string $Value): string
    9094  {
    9195    return '"'.addslashes($Value).'"';
  • trunk/Common/Form/Types/TimeDiff.php

    r874 r887  
    55class TypeTimeDiff extends TypeInteger
    66{
    7   function OnView($Item)
     7  function OnView(array $Item): ?string
    88  {
    99    if ($Item['Value'] == null) $Output = '';
  • trunk/Common/Form/Types/Type.php

    r874 r887  
    2828class Type
    2929{
    30   var $FormManager;
    31   var $TypeDefinitionList;
    32   var $Values;
     30  public FormManager $FormManager;
     31  public array $TypeDefinitionList;
     32  public array $Values;
    3333
    34   function __construct($FormManager)
     34  function __construct(FormManager $FormManager)
    3535  {
    3636    $this->FormManager = &$FormManager;
     
    6565  }
    6666
    67   function ExecuteTypeEvent($TypeName, $Event, $Parameters = array())
     67  function ExecuteTypeEvent(string $TypeName, string $Event, array $Parameters = array()): ?string
    6868  {
    6969    if (array_key_exists($TypeName, $this->TypeDefinitionList))
     
    7777  }
    7878
    79   function IsHidden($TypeName)
     79  function IsHidden(string $TypeName): bool
    8080  {
    8181    if (array_key_exists($TypeName, $this->TypeDefinitionList))
     
    8888  }
    8989
    90   function RegisterType($Name, $ParentType, $Parameters)
     90  function RegisterType(string $Name, string $ParentType, array $Parameters): void
    9191  {
    9292    if ($ParentType != '')
     
    103103  }
    104104
    105   function UnregisterType($Name)
     105  function UnregisterType(string $Name): void
    106106  {
    107107    unset($this->TypeDefinitionList[$Name]);
     
    109109  }
    110110
    111   function GetTypeDefinition($TypeName)
     111  function GetTypeDefinition(string $TypeName): array
    112112  {
    113113    return $this->TypeDefinitionList[$TypeName];
  • trunk/Common/Global.php

    r874 r887  
    2020$YesNo = array(false => 'Ne', true => 'Ano');
    2121
    22 function HumanSize($Value)
     22function HumanSize(int $Value): string
    2323{
    2424  global $UnitNames;
     
    3333}
    3434
    35 function GetMicrotime()
     35function GetMicrotime(): float
    3636{
    3737  list($Usec, $Sec) = explode(' ', microtime());
     
    3939}
    4040
    41 function ShowArray($Pole)
     41function ShowArray(array $Array): void
    4242{
    4343  echo('<pre style="font-size: 8pt;">');
    44   print_r($Pole);
     44  print_r($Array);
    4545  echo('</pre>');
    4646}
    4747
    48 function HumanDate($Time)
     48function HumanDate(?string $Time): string
    4949{
    5050  if ($Time != '')
     
    5858
    5959// Show page listing numbers
    60 function PagesList($URL, $Page, $TotalCount, $CountPerPage)
     60function PagesList(string $URL, int $Page, int $TotalCount, int $CountPerPage): string
    6161{
    6262  $Count = ceil($TotalCount / $CountPerPage);
     
    9494}
    9595
    96 function ExtractTime($Time)
     96function ExtractTime($Time): array
    9797{
    9898  return array(
     
    106106}
    107107
    108 function GetQueryStringArray($QueryString)
     108function GetQueryStringArray(string $QueryString): array
    109109{
    110110  $Result = array();
     
    122122}
    123123
    124 function SetQueryStringArray($QueryStringArray)
     124function SetQueryStringArray(array $QueryStringArray): string
    125125{
    126126  $Parts = array();
     
    132132}
    133133
    134 function GetPageList($ObjectName, $TotalCount)
     134function GetPageList(string $ObjectName, int $TotalCount): array
    135135{
    136136  global $System;
     
    209209$OrderArrowImage = array('sort_asc.png', 'sort_desc.png');
    210210
    211 function GetOrderTableHeader($ObjectName, $Columns, $DefaultColumn, $DefaultOrder = 0)
     211function GetOrderTableHeader(string $ObjectName, array $Columns, string $DefaultColumn, int $DefaultOrder = 0): array
    212212{
    213213  global $OrderDirSQL, $OrderArrowImage, $Config, $System;
     
    262262}
    263263
    264 function GetRemoteAddress()
     264function GetRemoteAddress(): string
    265265{
    266266  if (array_key_exists('REMOTE_ADDR', $_SERVER)) $IP = $_SERVER['REMOTE_ADDR'];
     
    269269}
    270270
    271 function IsInternetAddr()
     271function IsInternetAddr(): bool
    272272{
    273273  global $Config;
     
    286286}
    287287
    288 function GetMemberByIP($IP)
    289 {
    290   global $Database;
    291 
     288function GetMemberByIP(Database $Database, string $IP): string
     289{
    292290  $DbResult = $Database->query('SELECT `Id` FROM `Member` WHERE '.
    293291  '(SELECT `Member` FROM `NetworkDevice` WHERE (SELECT `Device` FROM `NetworkInterface` '.
     
    300298}
    301299
    302 function CommandExist($Command)
     300function CommandExist(string $Command): bool
    303301{
    304302  $Result = shell_exec('which '.$Command);
     
    306304}
    307305
    308 function RemoveDiacritic($Text)
     306function RemoveDiacritic(string $Text): string
    309307{
    310308  return str_replace(
     
    316314}
    317315
    318 function RouterOSIdent($Name)
     316function RouterOSIdent(string $Name): string
    319317{
    320318  return strtr(strtolower(trim($Name)), array(' ' => '-', '.' => '', '(' => '-', ')' => '-', ',' => '-',
     
    328326}
    329327
    330 function NotBlank($Text)
     328function NotBlank(string $Text): string
    331329{
    332330  if ($Text == '') return '&nbsp';
     
    334332}
    335333
    336 function strip_cdata($string)
     334function strip_cdata(string $string): string
    337335{
    338336  preg_match_all('/<!\[cdata\[(.*?)\]\]>/is', $string, $matches);
     
    351349}
    352350
    353 function ProcessURL()
     351function ProcessURL(): array
    354352{
    355353  if (array_key_exists('REDIRECT_QUERY_STRING', $_SERVER))
     
    365363}
    366364
    367 function RepeatFunction($Period, $Callback)
     365function RepeatFunction(int $Period, callable $Callback): void
    368366{
    369367  while (1)
     
    384382  return call_user_func_array('pack', array_merge(array($v), (array)$a));
    385383}
    386 
  • trunk/Common/VCL/Database.php

    r874 r887  
    1919  }
    2020
    21   function Show()
     21  function Show(): string
    2222  {
    2323    // Get total item count in database
  • trunk/Common/VCL/General.php

    r874 r887  
    11<?php
    22
    3 
    4 //print_r($_SESSION);
    5 
    6 function ReadSessionVar($Name, $Persistent = true)
     3function ReadSessionVar(string $Name, bool $Persistent = true): string
    74{
    85  //echo($Name.',');
     
    2017class Element
    2118{
    22   var $Id;
    23   var $Enabled;
    24   var $Visible;
     19  public string $Id;
     20  public bool $Enabled;
     21  public bool $Visible;
    2522
    2623  function __construct()
     
    3027  }
    3128
    32   function Show()
     29  function Show(): string
    3330  {
    3431    $Output = '';
     
    3734  }
    3835
    39   function Prepare()
     36  function Prepare(): void
    4037  {
    4138  }
     
    4441class Layout extends Element
    4542{
    46   var $Items;
    47 
    48   function Show()
     43  public array $Items;
     44
     45  function Show(): string
    4946  {
    5047    if ($this->Visible)
     
    5754  }
    5855
    59   function Prepare()
     56  function Prepare(): void
    6057  {
    6158    foreach ($this->Items as $Item)
     
    6663class Button extends Element
    6764{
    68   var $Caption;
    69 
    70   function Show()
     65  public string $Caption;
     66
     67  function Show(): string
    7168  {
    7269    if ($this->Visible)
     
    7976class Edit extends Element
    8077{
    81   var $Text;
    82 
    83   function Show()
     78  public string $Text;
     79
     80  function Show(): string
    8481  {
    8582    return parent::Show().'<input type="text" name="'.$this->Id.'" value="'.$this->Text.'"/>';
    8683  }
    8784
    88   function Prepare()
     85  function Prepare(): void
    8986  {
    9087    $this->Text = ReadSessionVar($this->Id.'_Text');
     
    9491class PageSelect extends Element
    9592{
    96   var $Count;
    97   var $Position;
    98   var $PageSize;
     93  public int $Count;
     94  public int $Position;
     95  public int $PageSize;
    9996
    10097  function __construct()
     
    106103  }
    107104
    108   function Show()
     105  function Show(): string
    109106  {
    110107    if (array_key_exists($this->Id.'_Page', $_GET))
     
    122119  }
    123120
    124   function Prepare()
     121  function Prepare(): void
    125122  {
    126123    $this->Position = ReadSessionVar($this->Id.'_Page');
     
    130127class ListViewColumn extends Element
    131128{
    132   var $Name;
    133 
    134   function Show()
     129  public string $Name;
     130
     131  function Show(): string
    135132  {
    136133    return $this->Name;
     
    140137class ListView extends Element
    141138{
    142   var $Columns;
    143   var $Rows;
    144   var $OnColumnClick;
    145   var $OnColumnDraw;
     139  public array $Columns;
     140  public array $Rows;
     141  public $OnColumnClick;
     142  public $OnColumnDraw;
    146143
    147144  function __construct()
     
    152149  }
    153150
    154   function Show()
     151  function Show(): string
    155152  {
    156153    $Output = '<table class="WideTable" style="font-size: small;><tr>';
     
    176173class PageListView extends ListView
    177174{
    178   var $PageSelect;
    179   var $SortOrder;
    180   var $SortColumn;
    181   var $OrderArrowImage;
     175  public PageSelect $PageSelect;
     176  public int $SortOrder;
     177  public string $SortColumn;
     178  public array $OrderArrowImage;
    182179
    183180  function __construct()
     
    190187  }
    191188
    192   function ColumnClick($Column)
     189  function ColumnClick(ListViewColumn $Column): string
    193190  {
    194191    return '?'.$this->Id.'_SortColumn='.$Column->Id.'&amp;'.$this->Id.'_SortOrder='.(1 - $this->SortOrder);
    195192  }
    196193
    197   function ColumnDraw($Column)
     194  function ColumnDraw(ListViewColumn $Column): string
    198195  {
    199196    global $System;
     
    211208  }
    212209
    213   function Show()
     210  function Show(): string
    214211  {
    215212    $this->PageSelect->Count = count($this->Rows);
     
    222219  }
    223220
    224   function Prepare()
     221  function Prepare(): void
    225222  {
    226223    $this->PageSelect->Id = $this->Id.'PageSelect';
     
    233230class TableLayout extends Element
    234231{
    235   var $Rows;
    236   var $Span;
    237 
    238   function Show()
    239   {
    240     $Output .= '<table>';
     232  public array $Rows;
     233  public string $Span;
     234
     235  function Show(): string
     236  {
     237    $Output = '<table>';
    241238    foreach ($this->Rows as $RowNum => $Row)
    242239    {
     
    254251  }
    255252
    256   function Prepare()
     253  function Prepare(): void
    257254  {
    258255    foreach ($this->Rows as $RowNum => $Row)
     
    268265class Label extends Element
    269266{
    270   var $Caption;
    271   var $OnExecute;
    272 
    273   function Show()
     267  public string $Caption;
     268  public $OnExecute;
     269
     270  function Show(): string
    274271  {
    275272    $Output = $this->Caption;
     
    282279  }
    283280
    284   function Prepare()
     281  function Prepare(): void
    285282  {
    286283    $Object = ReadSessionVar('O', false);
     
    293290class Page2
    294291{
    295   var $Items;
    296 
    297   function Show()
     292  public array $Items;
     293
     294  function Show(): string
    298295  {
    299296    $Output = '<!DOCTYPE html><html><head></head><body>';
     
    304301  }
    305302
    306   function Prepare()
     303  function Prepare(): void
    307304  {
    308305    foreach ($this->Items as $Item)
Note: See TracChangeset for help on using the changeset viewer.