Changeset 445


Ignore:
Timestamp:
Oct 15, 2012, 6:41:56 PM (12 years ago)
Author:
chronos
Message:
  • Přidáno: Tabulky pro správu úkolů. Úkoly jsou řazeny hierarchicky do skupin.
  • Opraveno: Zobrazení typu výčet a nastavení typu čas na aktuální pokud je hodnota prázdná.
Location:
trunk
Files:
1 added
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/Common/Error.php

    r443 r445  
    33class ErrorHandler extends Module
    44{
     5  var $Encoding;
     6   
     7  function __construct()
     8  {
     9    $this->Encoding = 'utf-8';
     10  }
     11 
    512  function Init()
    613  {
     
    3138  if(($UserErrors & $Number))
    3239  {
    33     $Error = '# '.$Date.' : '.$Message.' on line '.$LineNumber.' in '.$FileName."\n";
     40    $Error = '# '.$Date."\n";
    3441    $Backtrace = debug_backtrace();
    35     $Backtrace[0]['function'] = '';
     42    $Backtrace[0]['function'] = $Message;
    3643    $Backtrace[0]['args'] = '';
    37     $Backtrace[0]['file'] = '';
    38     $Backtrace[0]['line'] = '';
     44    $Backtrace[0]['file'] = $FileName;
     45    $Backtrace[0]['line'] = $LineNumber;
    3946    //$First = array_shift($Backtrace);
    40     //print_r($First);
     47    //print_r($Backtrace);
    4148   
    4249    //array_unshift($Backtrace, $First);
     
    7077            echo('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head>'."\n".
    7178      '<meta http-equiv="Content-Language" content="cs">'."\n".
    72       '<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2"></head><body>'."\n".
     79      '<meta http-equiv="Content-Type" content="text/html; charset='.$this->Encoding.'"></head><body>'."\n".
    7380      'Došlo k vnitřní chybě!<br/> O chybě byl uvědoměn správce webu a chybu brzy odstraní.<br/><br/>');
    7481          echo('<pre>'.$Error.'</pre><br/>');                   // V případě ladění chybu i zobraz
  • trunk/Common/Forms.php

    r442 r445  
    168168    $Values = array();
    169169    foreach($this->Definition['Items'] as $Index => $Item)
     170    if(!array_key_exists($Item['Type'], $FormTypes) or
     171    (array_key_exists($Item['Type'], $FormTypes) and ($FormTypes[$Item['Type']]['Type'] != 'ManyToOne')))
    170172    {
    171173      //if(array_key_exists($Context.$Index, $_POST))
  • trunk/Common/Types/Date.php

    r442 r445  
    1111    global $MonthNames;
    1212
    13     if(strtolower($Item['Value']) == 'now') $Item['Value'] = time();
     13    if((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == '')) $Item['Value'] = time();
    1414    $Parts = getdate($Item['Value']);
    1515
     
    2222    global $MonthNames;
    2323   
    24     if(strtolower($Item['Value']) == 'now') $Item['Value'] = time();
     24    if((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == '')) $Item['Value'] = time();
    2525    $Parts = getdate($Item['Value']);
    2626
  • trunk/Common/Types/DateTime.php

    r442 r445  
    1111    global $MonthNames;
    1212   
    13     if(strtolower($Item['Value']) == 'now') $Item['Value'] = time();
     13    if((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == '')) $Item['Value'] = time();
    1414    $Parts = getdate($Item['Value']);
    1515    $Output = $Parts['mday'].'.'.$Parts['mon'].'.'.$Parts['year'].' '.
     
    2222    global $MonthNames;
    2323
    24     if(strtolower($Item['Value']) == 'now') $Item['Value'] = time();
     24    if((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == '')) $Item['Value'] = time();
    2525    $Parts = getdate($Item['Value']);
    2626
  • trunk/Common/Types/Enumeration.php

    r435 r445  
    1818    $Type = $this->System->Type->GetTypeDefinition($Item['Type']);
    1919    $Output = '<select name="'.$Item['Name'].'">';
    20     foreach($Type['Parameters'] as $Index => $StateName)
     20    foreach($Type['Parameters']['States'] as $Index => $StateName)
    2121    {
    2222      if($Item['Value'] == $Index) $Selected = ' selected="1"'; else $Selected = '';
  • trunk/Common/Types/Time.php

    r442 r445  
    99  function OnView($Item)
    1010  {
    11     if(strtolower($Item['Value']) == 'now') $Item['Value'] = time();
     11    if((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == '')) $Item['Value'] = time();
    1212    $TimeParts = getdate($Item['Value']);
    1313
     
    1818  function OnEdit($Item)
    1919  {
    20     if(strtolower($Item['Value']) == 'now') $Item['Value'] = time();
     20    if((strtolower($Item['Value']) == 'now') or (strtolower($Item['Value']) == '')) $Item['Value'] = time();
    2121    $TimeParts = getdate($Item['Value']);
    2222
  • trunk/form_classes.php

    r442 r445  
    22
    33$FormClasses = array(
     4  'Task' => array(
     5    'Title' => 'Úkoly',
     6    'Table' => 'Task',
     7    'DefaultSortColumn' => 'Name',
     8    'Items' => array(
     9      'Name' => array('Type' => 'String', 'Caption' => 'Jméno', 'Default' => ''),
     10      'Description' => array('Type' => 'Text', 'Caption' => 'Popis', 'Default' => ''),
     11      'TimeCreate' => array('Type' => 'Date', 'Caption' => 'Datum zadání', 'Default' => ''),
     12      'TimeDue' => array('Type' => 'Date', 'Caption' => 'Termín', 'Default' => ''),
     13      'TimeClose' => array('Type' => 'Date', 'Caption' => 'Datum uzavření', 'Default' => ''),
     14      'Priority' => array('Type' => 'TPriority', 'Caption' => 'Důležitost', 'Default' => '0'),
     15      'Conclusion' => array('Type' => 'Text', 'Caption' => 'Vyhodnocení', 'Default' => ''),
     16      'Public' => array('Type' => 'Boolean', 'Caption' => 'Veřejné', 'Default' => '0'),
     17      'Progress' => array('Type' => 'Integer', 'Caption' => 'Průběh', 'Default' => '0'),
     18      'Group' => array('Type' => 'TTaskGroup', 'Caption' => 'Kategorie', 'Default' => ''),
     19    ),
     20  ),
     21  'TaskGroup' => array(
     22    'Title' => 'Kategorie úkolu',
     23    'Table' => 'TaskGroup',
     24    'DefaultSortColumn' => 'Name',
     25    'Items' => array(
     26      'Name' => array('Type' => 'String', 'Caption' => 'Jméno', 'Default' => ''),
     27      'Description' => array('Type' => 'Text', 'Caption' => 'Popis', 'Default' => ''),
     28      'Parent' => array('Type' => 'TTaskGroup', 'Caption' => 'Kategorie', 'Default' => ''),
     29      'Tasks' => array('Type' => 'TTaskList', 'Caption' => 'Úkoly', 'Default' => ''),
     30    ),
     31  ),
    432  'Product' => array(
    533    'Title' => 'Zboží',
     
    86114      'Blocked' => array('Type' => 'Boolean', 'Caption' => 'Blokování', 'Default' => '0'),
    87115      'PayDay' => array('Type' => 'Integer', 'Caption' => 'Den placení', 'Default' => '0'),
     116      'Devices' => array('Type' => 'TDeviceList', 'Caption' => 'Registrovaná zařízení', 'Default' => ''),
    88117    ),
    89118  ),
     
    430459    'States' => array('Neurčeno', 'Běžné', 'Hosting', 'Zdarma'),
    431460  ),
     461  'TPriority' => array(
     462    'Type' => 'Enumeration',
     463    'States' => array('Nízká', 'Střední', 'Vysoká'),
     464  ),
    432465  'TNetworkDeviceState' => array(
    433466    'Type' => 'Enumeration',
     
    564597    'Filter' => '1',
    565598  ),
     599  'TTaskList' => array(
     600    'Type' => 'ManyToOne',
     601    'Table' => 'Task',
     602    'Id' => 'Id',
     603    'Ref' => 'Group',
     604    'Filter' => '1',
     605  ),
     606  'TDeviceList' => array(
     607    'Type' => 'ManyToOne',
     608    'Table' => 'NetworkDevice',
     609    'Id' => 'Id',
     610    'Ref' => 'Member',
     611    'Filter' => '1',
     612  ),
    566613  'TInterfaceList' => array(
    567614    'Type' => 'ManyToOne',
     
    574621    'Type' => 'Reference',
    575622    'Table' => 'StockCard',
     623    'Id' => 'Id',
     624    'Name' => 'Name',
     625    'Filter' => '1',
     626  ),
     627  'TTaskGroup' => array(
     628    'Type' => 'Reference',
     629    'Table' => 'TaskGroup',
    576630    'Id' => 'Id',
    577631    'Name' => 'Name',
  • trunk/is/index.php

    r442 r445  
    100100        $Id = $this->Database->insert_id;
    101101        $_SESSION['Id'] = $Id;
    102         $this->Database->update($Table, 'Id='.$Id,
    103           array('UserCreate' => $this->System->Modules['User']->User['Id'],
    104           'TimeCreate' => 'NOW()'));
     102        //$this->Database->update($Table, 'Id='.$Id,
     103        //  array('UserCreate' => $this->System->Modules['User']->User['Id'],
     104        //  'TimeCreate' => 'NOW()'));
    105105        $Output .= $this->ShowView($Table, $Id);   
    106106      }
     
    139139    if((array_key_exists($Item['Type'], $FormTypes) and ($FormTypes[$Item['Type']]['Type'] == 'ManyToOne')))
    140140    {
    141       $Output .= '<div style="text-align: center;">'.$Form->Definition['Title'].'</div>';
    142       $Output .= $this->ShowList($FormTypes[$Item['Type']]['Table'], '`'.$FormTypes[$Item['Type']]['Ref'].'`='.$Id).'<br/>';
     141      $Output .= $this->ShowList($FormTypes[$Item['Type']]['Table'], '`'.$FormTypes[$Item['Type']]['Ref'].'`='.$Id, $Item['Caption']).'<br/>';
    143142    }   
    144143    return($Output);
    145144  }
    146145 
    147   function ShowList($Table, $Filter = '')
     146  function ShowList($Table, $Filter = '', $Title = '')
    148147  {   
    149148    global $Type, $FormTypes, $FormClasses;
     
    156155    $PageList = GetPageList($DbRow[0]);   
    157156
    158     $Output = $PageList['Output'];
     157    $Output = '<div style="text-align: center;">'.$FormClass['Title'].'</div>';
     158    $Output .= $PageList['Output'];
    159159    $Output .= '<table class="WideTable" style="font-size: small;">';
    160160   
Note: See TracChangeset for help on using the changeset viewer.