<?php
include_once('../global.php');

class FinanceTaxFilingPage extends Page
{
  var $FullTitle = 'Daňová evidence';
  var $ShortTitle = 'Daňová evidence';
  var $ExternalSubject = 96;
  var $MainSubject = 71;
  var $StartEvidence = 0;

  /*function TransformFinance()
  {
    //$Database->Query('SELECT user as Subject, date as TimeCreation, date as TimeDue, date as TimePayment, -money as Value, bill_id as Bill, comment as Text FROM `finance_operations` WHERE Comment LIKE "Poplatek za měsíc%" AND date >= "2007-12-01"');
    //'TRUNCATE TABLE FinanceCashFlow; INSERT INTO FinanceCashFlow (SELECT '' as Id, user as Subject, comment as Text, date as Time, 1 as Taxable, 0 as Cash, money as Value, bill_id as Bill FROM `finance_operations` WHERE comment NOT LIKE "Poplatek za měsíc%" AND date >= "2007-12-01")'
    // 'UPDATE finance_operations SET date="2007-11-24" WHERE comment="Jednorázový poplatek za společné zařízení"'

    $DbResult = $this->Database->query('SELECT * FROM users WHERE role=2');
    while($User = $DbResult->fetch_array())
    {
      $DbResult2 = $this->Database->query('SELECT SUM(money) FROM finance_operations WHERE user='.$User['id'].' AND date < "2007-12-01"');
      $Row = $DbResult2->fetch_array();
      echo($User['second_name'].' '.$User['first_name'].' '.$Row[0].'<br />');
      //    if($Row[0] > 0) $Database->insert('FinanceCashFlow', array('Text' => 'Přijatá záloha (z období před účetnictvím)', 'Subject' => $User['id'], 'Time' => '2007-01-01', 'Taxable' => 1, 'Cash' => 0, 'Value' => $Row[0], 'Bill' => 0));
      if($Row[0] < 0) 
      {
        $this->Database->insert('FinanceClaimsLiabilities', array('Text' => 'Připojení k síti (z období před účetnictvím)', 'Subject' => $User['id'], 'TimeCreation' => '2007-12-01', 'TimeDue' => '2007-12-14', 'TimePayment' => '', 'Value' => (-$Row[0]), 'Bill' => 0));
        //echo($Database->LastQuery.'<br />');
      }
    }
  }*/
  function GetTimePeriodBalance($StartTime, $EndTime)
  {
    $Balance = array();
    $DbResult = $this->Database->query('SELECT SUM(Value) FROM FinanceOperation WHERE (Time < "'.TimeToMysqlDateTime($StartTime).'") AND (Time >= "'.TimeToMysqlDateTime($this->StartEvidence).'") AND (Taxable = 1) AND (Value > 0)');
    $Row = $DbResult->fetch_array();
    $Balance['Income']['Start'] = $Row[0] + 0;
    $DbResult = $this->Database->query('SELECT SUM(Value) FROM FinanceOperation WHERE (Time <= "'.TimeToMysqlDateTime($EndTime).'") AND (Time >= "'.TimeToMysqlDateTime($this->StartEvidence).'") AND (Taxable = 1) AND (Value > 0)');
    //echo('SELECT SUM(Value) FROM FinanceCashFlow WHERE Time <= "'.TimeToMysqlDateTime($EndTime).'" AND Value > 0 AND Taxable = 1'.'<br />');
    $Row = $DbResult->fetch_array();
    $Balance['Income']['End'] = $Row[0] + 0;

    $DbResult = $this->Database->query('SELECT SUM(-Value) FROM FinanceOperation WHERE (Time < "'.TimeToMysqlDateTime($StartTime).'") AND (Time >= "'.TimeToMysqlDateTime($this->StartEvidence).'") AND (Taxable = 1) AND (Value < 0)');
    $Row = $DbResult->fetch_array();
    $Balance['Spend']['Start'] = $Row[0] + 0;
    $DbResult = $this->Database->query('SELECT SUM(-Value) FROM FinanceOperation WHERE (Time <= "'.TimeToMysqlDateTime($EndTime).'") AND (Time >= "'.TimeToMysqlDateTime($this->StartEvidence).'") AND (Taxable = 1) AND (Value < 0)');
          //echo('SELECT -SUM(Value) FROM FinanceCashFlow WHERE Time <= "'.TimeToMysqlDateTime($EndTime).'" AND Value < 0 AND Taxable = 1'.'<br />');
    $Row = $DbResult->fetch_array();
    $Balance['Spend']['End'] = $Row[0] + 0;

    $DbResult = $this->Database->query('SELECT SUM(Value) FROM FinanceClaimsLiabilities WHERE (TimeCreation < "'.TimeToMysqlDateTime($StartTime).'") AND (TimeCreation >= "'.TimeToMysqlDateTime($this->StartEvidence).'") AND (Value > 0)');
    $Row = $DbResult->fetch_array();
    $Balance['Claims']['Start'] = $Row[0] + 0;
    $DbResult = $this->Database->query('SELECT SUM(Value) FROM FinanceClaimsLiabilities WHERE (TimeCreation <= "'.TimeToMysqlDateTime($EndTime).'") AND (TimeCreation >= "'.TimeToMysqlDateTime($this->StartEvidence).'") AND (Value > 0)');
    $Row = $DbResult->fetch_array();
    $Balance['Claims']['End'] = $Row[0] + 0;

    $DbResult = $this->Database->query('SELECT SUM(-Value) FROM FinanceClaimsLiabilities WHERE (TimeCreation < "'.TimeToMysqlDateTime($StartTime).'") AND (TimeCreation >= "'.TimeToMysqlDateTime($this->StartEvidence).'") AND (Value < 0)');
    $Row = $DbResult->fetch_array();
    $Balance['Liabilities']['Start'] = $Row[0] + 0;
    $DbResult = $this->Database->query('SELECT SUM(-Value) FROM FinanceClaimsLiabilities WHERE (TimeCreation <= "'.TimeToMysqlDateTime($EndTime).'") AND (TimeCreation >= "'.TimeToMysqlDateTime($this->StartEvidence).'") AND (Value < 0)');
    $Row = $DbResult->fetch_array();
    $Balance['Liabilities']['End'] = $Row[0] + 0;

    // SmallAssets
    $DbResult = $this->Database->query('SELECT SUM(price) FROM network_devices WHERE (TimeEnlistment < "'.TimeToMysqlDateTime($StartTime).'") AND (TimeEnlistment != 0) AND ((TimeElimination > "'.TimeToMysqlDateTime($StartTime).'") OR (TimeElimination = 0))');
    //$Output .= $Database->error;
    $Row = $DbResult->fetch_array();
    $Balance['SmallAssets']['Start'] = $Row[0] + 0;
    $DbResult = $this->Database->query('SELECT SUM(price) FROM network_devices WHERE (TimeEnlistment < "'.TimeToMysqlDateTime($EndTime).'") AND (TimeEnlistment != 0) AND ((TimeElimination > "'.TimeToMysqlDateTime($EndTime).'") OR (TimeElimination = 0))');
    $Row = $DbResult->fetch_array();
    $Balance['SmallAssets']['End'] = $Row[0] + 0;
    return($Balance);
  } 

  function Show()
  {
    if(!$this->System->Modules['User']->CheckPermission('Finance', 'TradingStatus')) return('Nemáte oprávnění');
    $this->System->Modules['Finance']->LoadTariffs(1);
    //TransformFinance();

    $Output = '';
    if(!array_key_exists('table', $_GET)) $_GET['table'] = '';
    switch($_GET['table'])
    {
      case 'AnnualBalance':
        $Output = '<table style="font-size: smaller;" class="WideTable">';
        $Output .= '<tr><th colspan="3">Účetní období</th><th colspan="5">Na konci</th><th colspan="6">Během</th></tr>'.
      '<tr><th>Rok</th><th>Od</th><th>Do</th><th>Příjmy</th><th>Výdaje</th><th>Pohledávky</th><th>Závazky</th><th>Drobný majetek</th><th>Příjmy</th><th>Výdaje</th><th>Pohledávky</th><th>Závazky</th><th>Drobný majetek</th><th>Základ daně</th></tr>';

        $this->StartEvidence = mktime(0, 0, 0, 12, 1, 2007);
        $StartYear = date('Y', $this->StartEvidence);
        $EndYear = date('Y', time());
        for($Year = $StartYear; $Year <= $EndYear; $Year++)
        {
          $EndTime = mktime(0, 0, 0, 12, 31, $Year);
          //$Year = date('Y', $EndTime);
          $StartTime = mktime(0, 0, 0, 1, 1, $Year);
          if($StartTime < $this->StartEvidence) $StartTime = $this->StartEvidence;

      $Balance = $this->GetTimePeriodBalance($StartTime, $EndTime);

          $Output .= '<tr><td>'.$Year.'</td><td>'.date(HumanDate(TimeToMysqlDateTime($StartTime))).'</td><td>'.date(HumanDate(TimeToMysqlDateTime($EndTime))).'</td>';
          $Output .= '<td>'.$Balance['Income']['End'].'</td>';
          $Output .= '<td>'.$Balance['Spend']['End'].'</td>';
          $Output .= '<td>'.$Balance['Claims']['End'].'</td>';
          $Output .= '<td>'.$Balance['Liabilities']['End'].'</td>';
          $Output .= '<td>'.$Balance['SmallAssets']['End'].'</td>';

          $Output .= '<td>'.($Balance['Income']['End'] - $Balance['Income']['Start']).'</td>';
          $Output .= '<td>'.($Balance['Spend']['End'] - $Balance['Spend']['Start']).'</td>';
          $Output .= '<td>'.($Balance['Claims']['End'] - $Balance['Claims']['Start']).'</td>';
          $Output .= '<td>'.($Balance['Liabilities']['End'] - $Balance['Liabilities']['Start']).'</td>';
          $Output .= '<td>'.($Balance['SmallAssets']['End'] - $Balance['SmallAssets']['Start']).'</td>';
          $Output .= '<td>'.(($Balance['Income']['End'] - $Balance['Income']['Start']) - ($Balance['Spend']['End'] - $Balance['Spend']['Start'])).'</td></tr>';
        }
        $Output .= '</table>';
        break;
      case 'MonthlyBalance':
        $Output = '<table class="WideTable" style="font-size: smaller;">';
        $Output .= '<tr><th colspan="4">Účetní období</th><th colspan="5">Na konci</th><th colspan="6">Během</th></tr>'.
      '<tr><th>Rok</th><th>Měsíc</th></th><th>Od</th><th>Do</th><th>Příjmy</th><th>Výdaje</th><th>Pohledávky</th><th>Závazky</th><th>Drobný majetek</th><th>Příjmy</th><th>Výdaje</th><th>Pohledávky</th><th>Závazky</th><th>Drobný majetek</th><th>Základ daně</th></tr>';

        $this->StartEvidence = mktime(0, 0, 0, 12, 1, 2007);
        $StartYear = date('Y', $this->StartEvidence);
        $EndYear = date('Y', time());
        for($Year = $StartYear; $Year <= $EndYear; $Year++)
        {
          for($Month = 1; $Month <= 12; $Month++)
          {
            $EndTime = mktime(0, 0, 0, $Month, 31, $Year);
            //$Year = date('Y', $EndTime);
            $StartTime = mktime(0, 0, 0, $Month, 1, $Year);
            if(($StartTime < time()) and ($EndTime > $this->StartEvidence))
      {
        if($StartTime < $this->StartEvidence) $StartTime = $this->StartEvidence;

          $Balance = $this->GetTimePeriodBalance($StartTime, $EndTime);

              $Output .= '<tr><td>'.$Year.'</td><td>'.$Month.'</td><td>'.date(HumanDate(TimeToMysqlDateTime($StartTime))).'</td><td>'.date(HumanDate(TimeToMysqlDateTime($EndTime))).'</td>';
              $Output .= '<td>'.$Balance['Income']['End'].'</td>';
              $Output .= '<td>'.$Balance['Spend']['End'].'</td>';
              $Output .= '<td>'.$Balance['Claims']['End'].'</td>';
              $Output .= '<td>'.$Balance['Liabilities']['End'].'</td>';
              $Output .= '<td>'.$Balance['SmallAssets']['End'].'</td>';

              $Output .= '<td>'.($Balance['Income']['End'] - $Balance['Income']['Start']).'</td>';
              $Output .= '<td>'.($Balance['Spend']['End'] - $Balance['Spend']['Start']).'</td>';
              $Output .= '<td>'.($Balance['Claims']['End'] - $Balance['Claims']['Start']).'</td>';
              $Output .= '<td>'.($Balance['Liabilities']['End'] - $Balance['Liabilities']['Start']).'</td>';
              $Output .= '<td>'.($Balance['SmallAssets']['End'] - $Balance['SmallAssets']['Start']).'</td>';
              $Output .= '<td>'.(($Balance['Income']['End'] - $Balance['Income']['Start']) - ($Balance['Spend']['End'] - $Balance['Spend']['Start'])).'</td></tr>';
        }
      }
        }
        $Output .= '</table>';
        break;
      case 'CashFlow':
        $Table = array('Ne', 'Ano');
        $Output .= '<table style="font-size: smaller;" class="WideTable">';
        $Output .= '<tr><th>Čas</th><th>Subjekt</th><th>Text</th><th>Hodnota [Kč]</th><th>Daňový</th><th>Hotovost</th></tr>';
        $DbResult = $this->Database->query('SELECT * FROM FinanceOperation LEFT JOIN Subject ON Subject.Id = FinanceOperation.Subject ORDER BY Time');
        while($Row = $DbResult->fetch_array())
        {
          $Row['Time'] = explode(' ', $Row['Time']);
          $Row['Time'] = $Row['Time'][0];
          $Output .= '<tr><td>'.$Row['Time'].'</td><td>'.$Row['Name'].'</td><td>'.$Row['Text'].'</td><td>'.$Row['Value'].'</td><td>'.$Table[$Row['Taxable']].'</td><td>'.$Table[$Row['Cash']].'</td></tr>';
        }
        $Output .= '</table>';
        break;
      case 'ClaimsLiabilities':
        $Output .= '<table width="100%"><tr><td valign="top">';
        $Output .= '<strong>Pohledávky</strong>';
        $Output .= '<table style="font-size: smaller;" class="WideTable">';
        $Output .= '<tr><th>Subjekt</th><th>Text</th><th>Hodnota [Kč]</th><th>Čas vystavení</th><th>Čas splatnosti</th><th>Čas uhrazení</th></tr>';
        $DbResult = $this->Database->query('SELECT * FROM FinanceClaimsLiabilities JOIN Subject ON Subject.Id = FinanceClaimsLiabilities.Subject WHERE Value > 0 ORDER BY TimeCreation');
        while($Row = $DbResult->fetch_array())
        {
          if($Row['TimePayment'] == '0000-00-00 00:00:00') $Row['TimePayment'] = '&nbsp;';
          $Output .= '<tr><td>'.$Row['Name'].'</td><td>'.$Row['Text'].'</td><td>'.$Row['Value'].'</td><td>'.$Row['TimeCreation'].'</td><td>'.$Row['TimeDue'].'</td><td>'.$Row['TimePayment'].'</td></tr>';
        }
        $Output .= '</table></td><td valign="top">';

        $Output .= '<strong>Závazky</strong>';
        $Output .= '<table style="font-size: smaller;" class="WideTable">';
        $Output .= '<tr><th>Subjekt</th><th>Text</th><th>Hodnota [Kč]</th><th>Čas vystavení</th><th>Čas splatnosti</th><th>Čas uhrazení</th></tr>';
        $DbResult = $this->Database->query('SELECT * FROM FinanceClaimsLiabilities JOIN Subject ON Subject.Id = FinanceClaimsLiabilities.Subject WHERE Value < 0 ORDER BY TimeCreation');
        while($Row = $DbResult->fetch_array())
        {
          if($Row['TimePayment'] == '0000-00-00 00:00:00') $Row['TimePayment'] = '&nbsp;';
          $Output .= '<tr><td>'.$Row['Name'].'</td><td>'.$Row['Text'].'</td><td>'.$Row['Value'].'</td><td>'.$Row['TimeCreation'].'</td><td>'.$Row['TimeDue'].'</td><td>'.$Row['TimePayment'].'</td></tr>';
        }
        $Output .= '</table></td></tr></table>';
        break;
      case 'SubjectList':
        $Output .= '<strong>Seznam subjektů</strong>';
        $Output .= '<table style="font-size: smaller;" class="WideTable">';
        $Output .= '<tr><th>Jméno</th><th>Závazky [Kč]</th><th>Pohledávky [Kč]</th><th>Příjmy [Kč]</th><th>Výdaje [Kč]</th><th>Stav účtu</th><th>Starý systém</th></tr>';
        $DbResult = $this->Database->query('SELECT Id, Name, 0 AS Cash, '.
        '(SELECT SUM(T1.Value) FROM FinanceClaimsLiabilities AS T1 WHERE (T1.Subject = Subject.Id) AND (T1.Value > 0)) as Claims, '.
        '(SELECT SUM(T2.Value) FROM FinanceClaimsLiabilities AS T2 WHERE (T2.Subject = Subject.Id) AND (T2.Value > 0) AND (TimePayment IS NULL)) as OpenedClaims, '.
        '(SELECT -SUM(T3.Value) FROM FinanceClaimsLiabilities AS T3 WHERE (T3.Subject = Subject.Id) AND (T3.Value  < 0)) as Liabilities, '.
        '(SELECT -SUM(T4.Value) FROM FinanceClaimsLiabilities AS T4 WHERE (T4.Subject = Subject.Id) AND (T4.Value < 0) AND (TimePayment IS NULL)) AS OpenedLiabilities, '.
        '(SELECT SUM(T5.Value) FROM FinanceOperation AS T5 WHERE (T5.Subject = Subject.Id) AND (T5.Value > 0)) AS Gains, '.
        '(SELECT -SUM(T6.Value) FROM FinanceOperation AS T6 WHERE (T6.Subject = Subject.Id) AND (T6.Value < 0)) AS Spends '.
        'FROM Subject ORDER BY Name');
        while($Row = $DbResult->fetch_assoc())
        {
          $Output .= '<tr><td style="text-align: left;"><a href="?table=SubjectAccount&Id='.$Row['Id'].'">'.$Row['Name'].'</a></td><td>'.$Row['Liabilities'].' / '.$Row['OpenedLiabilities'].'</td><td>'.$Row['Claims'].' / '.$Row['OpenedClaims'].'</td><td>'.$Row['Gains'].'</td><td>'.$Row['Spends'].'</td><td>'.($Row['Gains'] - $Row['Spends'] - $Row['Claims'] + $Row['Liabilities']).'</td><td>'.$Row['Cash'].'</td></tr>';
        }
        $Output .= '</table>';
        break;
      case 'SmallAssets':
        $Output .= '<strong>Drobný majetek</strong>';
        $Output .= '<table style="font-size: smaller;" border="1" cellspacing="0" cellpadding="3">';
        $Output .= '<tr><th>Název</th><th>Hodnota [Kč]</th><th>Datum zakoupení</th><th>Datum vyřezení</th></tr>';
        $DbResult = $this->Database->query('SELECT * FROM network_devices WHERE used != 0');
        while($Row = $DbResult->fetch_array())
        {
          $Output .= '<tr><td>'.$Row['name'].'</td><td>'.$Row['price'].'</td><td>'.$Row['TimeEnlistment'].'</td><td>'.$Row['TimeElimination'].'</td></tr>';
        }
        $Output .= '</table>';
        break;
      case 'SubjectAccount':
        $Output .= '<strong>Výpis příjmů/výdajů</strong>';
        $Output .= '<table style="font-size: smaller;" border="1" cellspacing="0" cellpadding="3">';
        $Output .= '<tr><th>Datum</th><th>Název</th><th>Hodnota [Kč]</th></tr>';
        $DbResult = $this->Database->select('FinanceCashFlow', '*', 'Subject='.$_GET['Id']);
        while($Row = $DbResult->fetch_array())
        {
          $Output .= '<tr><td>'.$Row['Time'].'</td><td>'.$Row['Text'].'</td><td>'.$Row['Value'].'</td><td>'.$Row['Bill'].'</td></tr>';
        }
        $Output .= '</table><br />';

        $Output .= '<strong>Výpis závazků/pohledávek</strong>';
        $Output .= '<table style="font-size: smaller;" border="1" cellspacing="0" cellpadding="3">';
        $Output .= '<tr><th>Datum vytvoření</th><th>Datum zaplacení</th><th>Název</th><th>Hodnota [Kč]</th></tr>';
        $DbResult = $this->Database->select('FinanceClaimsLiabilities', '*', 'Subject='.$_GET['Id']);
        while($Row = $DbResult->fetch_array())
        {
          $Output .= '<tr><td>'.$Row['TimeCreation'].'</td><td>'.$Row['TimePayment'].'</td><td>'.$Row['Text'].'</td><td>'.(-$Row['Value']).'</td><td>'.$Row['Bill'].'</td></tr>';
        }
        $Output .= '</table><br />';

        $Output .= '<strong>Výpis záloh</strong>';
        $Output .= '<table style="font-size: smaller;" border="1" cellspacing="0" cellpadding="3">';
        $Output .= '<tr><th>Datum vytvoření</th><th>Datum zaplacení</th><th>Název</th><th>Hodnota [Kč]</th></tr>';
        $DbResult = $this->Database->select('FinanceAdvances', '*', 'Subject='.$_GET['Id']);
        while($Row = $DbResult->fetch_array())
        {
          $Output .= '<tr><td>'.$Row['TimeCreation'].'</td><td>'.$Row['TimePass'].'</td><td>'.$Row['Direction'].'</td><td>'.($Row['Value']).'</td><td>'.$Row['CashFlowId'].'</td></tr>';
        }
        $Output .= '</table>';

        $DbResult = $this->Database->query('SELECT Id, 0 AS Cash, (SELECT SUM(FinanceClaimsLiabilities.Value) FROM FinanceClaimsLiabilities WHERE FinanceClaimsLiabilities.Subject = Subject.Id AND FinanceClaimsLiabilities.Value > 0) as Claims, (SELECT SUM(FinanceClaimsLiabilities.Value) FROM FinanceClaimsLiabilities WHERE FinanceClaimsLiabilities.Subject = Subject.Id AND FinanceClaimsLiabilities.Value > 0 AND TimePayment IS NULL) as OpenedClaims, (SELECT SUM(FinanceClaimsLiabilities.Value) FROM FinanceClaimsLiabilities WHERE FinanceClaimsLiabilities.Subject = Subject.Id AND FinanceClaimsLiabilities.Value < 0) as Liabilities, (SELECT SUM(FinanceClaimsLiabilities.Value) FROM FinanceClaimsLiabilities WHERE FinanceClaimsLiabilities.Subject = Subject.Id AND FinanceClaimsLiabilities.Value < 0 AND TimePayment IS NULL) as OpenedLiabilities, (SELECT SUM(FinanceCashFlow.Value) FROM FinanceCashFlow WHERE FinanceCashFlow.Subject = Subject.Id AND FinanceCashFlow.Value > 0) as Gains, (SELECT SUM(FinanceCashFlow.Value) FROM FinanceCashFlow WHERE FinanceCashFlow.Subject = Subject.Id AND FinanceCashFlow.Value < 0) as Spends, (SELECT SUM(FinanceAdvances.Value) FROM FinanceAdvances WHERE FinanceAdvances.Subject = Subject.Id AND FinanceAdvances.Direction="In") as AdvancesIn, (SELECT SUM(FinanceAdvances.Value) FROM FinanceAdvances WHERE FinanceAdvances.Subject = Subject.Id AND FinanceAdvances.Direction="Out") as AdvancesOut FROM Subject WHERE Id='.$_GET['Id']);
        $Row = $DbResult->fetch_array();
        $Output .= 'Stav placení: '.($Row['AdvancesIn'] - $Row['AdvancesOut'] - $Row['OpenedClaims'] + Abs($Row['OpenedLiabilities']));
        break;
      case 'PrintMonthOperations':
        $Output .= '<table><tr><th>Datum</th><th>Subjekt</th><td></td></tr></table>';
        break;
      case 'PrintMonthOperations':
        $Output .= 'Výpis operací od '.$_GET['TimeFrom'].' do '.$_GET['TimeTo'];
        $Output .= '<table><tr><th>Datum</th><th>Subjekt</th><th>Suma [Kč]</th><td></td></tr></table>';
        break;
      default:
        $Output .= '<a href="?table=AnnualBalance">Účetní závěrka</a><br />';
        $Output .= '<a href="?table=MonthlyBalance">Měsíční přehledy</a><br />';
        $Output .= '<a href="?table=CashFlow">Příjmy a výdaje</a><br />';
        $Output .= '<a href="?table=ClaimsLiabilities">Závazky a pohledávky</a><br />';
        $Output .= '<a href="?table=Advantages">Zálohy</a><br />';
        $Output .= '<a href="?table=SmallAssets">Drobný majetek</a><br />';
        $Output .= '<a href="?table=SubjectList">Seznam subjektů</a><br />';
    }
    return($Output);
  }

  function AddMoney($Subject, $Value, $Text, $Time)
  {
    $TimeDue = $Time + 15 * 24 * 3600; // 15 dnů

  }

  function AddInvoice($Subject, $Value, $Text, $Time)
  {
    $TimeDue = $Time + 15 * 24 * 3600; // 15 dnů

  }
}

$System->AddModule(new FinanceTaxFilingPage());
$System->Modules['FinanceTaxFilingPage']->GetOutput();

?>
