Index: /branches/old/Readme.txt
===================================================================
--- /branches/old/Readme.txt	(revision 49)
+++ /branches/old/Readme.txt	(revision 50)
@@ -2,52 +2,52 @@
 =================
 
-Je potøeba zkopírovat soubor config.sample.php jako config.php a upravit v nìm nastavení.
-Ve sloce SQL jsou uloeny definice tabulek measure (struktura i ukázkové data) a tabulky data, kterou je potøeba vytvoøit pro jednotlivá mìøení.
-Ve sloce measure_scripts je ukázkový soubor monitor.sample.php, který zajiuje získávání informací o rùzných velièinách v poèítaèi.
+Je potřeba zkopírovat soubor config.sample.php jako config.php a upravit v něm nastavení.
+Ve složce SQL jsou uloženy definice tabulek measure (struktura i ukázkové data) a tabulky data, kterou je potřeba vytvořit pro jednotlivá měření.
+Ve složce measure_scripts je ukázkový soubor monitor.sample.php, který zajišťuje získávání informací o různých veličinách v počítači.
  
 Verze 3.1 (13.2.2008)
 
-    * Upraveny skripty pro plnìní dat.
-    * Pøidán odkaz pod grafem odkazující staticky na vybraný èasový úsek.
-    * Opraveno zobrazování desetinných míst u èísel bez jednotek
+    * Upraveny skripty pro plnění dat.
+    * Přidán odkaz pod grafem odkazující staticky na vybraný časový úsek.
+    * Opraveno zobrazování desetinných míst u čísel bez jednotek
     * Upravena poloha zobrazování celkové informace Min, Avg, Max.
-    * Rùzné mení opravy
+    * Různé menší opravy
 
 Verze 3.0 (14.12.2007)
 
-    * Pøepsán pøístup k databázi MySQL pøes tøídu mysqli
-    * Data mìøení byly pro zvýení rychlosti rozdìleny do jednotlivých tabulek avak stále je moné mít v jedné datové tabulce více mìøení. Rozdìlení dat do více tabulek také umonilo mít uloená data s rùznou pøesnosti pro jednolivé mìøení. Pùvodnì pouze INT, nyní vechny dalí èíselné typy jako TINYINT, SMALLINT, INT, BIGINT a FLOAT.
-    * Pøidáno automatické zaokrouhlení zobrazovaných hodnot a zobrazení pøedpon jednotek.
-    * Doplnìny dalí skripty pro zjiování informací o systému a plnìní databáze.
-    * Nastavení sdrueno do souboru config.php.
-    * Rùzné opravy
+    * Přepsán přístup k databázi MySQL přes třídu mysqli
+    * Data měření byly pro zvýšení rychlosti rozděleny do jednotlivých tabulek avšak stále je možné mít v jedné datové tabulce více měření. Rozdělení dat do více tabulek také umožnilo mít uložená data s různou přesnosti pro jednolivé měření. Původně pouze INT, nyní všechny další číselné typy jako TINYINT, SMALLINT, INT, BIGINT a FLOAT.
+    * Přidáno automatické zaokrouhlení zobrazovaných hodnot a zobrazení předpon jednotek.
+    * Doplněny další skripty pro zjišťování informací o systému a plnění databáze.
+    * Nastavení sdruženo do souboru config.php.
+    * Různé opravy
 
 Verze 2.2 (30.6.2007)
 
-    * opraveno vykreslování grafu pøed celkovým zaèátkem a po celkovém konci mìøení
+    * opraveno vykreslování grafu před celkovým začátkem a po celkovém konci měření
     * opraveno vykreslování poslední hodnoty v grafu
 
 Verze 2.1 (24.3.2007)
 
-    * rùzné opravy
+    * různé opravy
 
 Verze 2.0 (16.3.2007)
 
-    * dynamické zobrazování èasové osy, výbìr bìných úsekù nebo pøesného intervalu dle poèáteèního a koneèného èasu
-    * pouití TrueType fontù
-    * mìnitelné rozmìry generovaného obrázku
-    * automatická redukce naèítaných dat pro delí èasového mìøítka
-    * automatická redukce po sobì se opakujících stejných do jedné, redukce nulových a málo promìnných odmìrù
-    * v úsecích, kde se nemìøilo buï reim automatická interpolace hodnot nebo nulový údaj
-    * Záznam a zobrazení grafù minima, prùmìru a maxima
-    * zápis nových hodnot pøes webové HTTP, kontrola podle adres poèítaèù
-    * seznam mìøení uloen v tabulce
+    * dynamické zobrazování časové osy, výběr běžných úseků nebo přesného intervalu dle počátečního a konečného času
+    * použití TrueType fontů
+    * měnitelné rozměry generovaného obrázku
+    * automatická redukce načítaných dat pro delší časového měřítka
+    * automatická redukce po sobě se opakujících stejných do jedné, redukce nulových a málo proměnných odměrů
+    * v úsecích, kde se neměřilo buď režim automatická interpolace hodnot nebo nulový údaj
+    * Záznam a zobrazení grafů minima, průměru a maxima
+    * zápis nových hodnot přes webové HTTP, kontrola podle adres počítačů
+    * seznam měření uložen v tabulce
 
 Verze 1.0 (25.11.2004)
 
-    * statické zobrazování èasové osy v rozsahu hodina, den, týden, mìsíc, rok a více rokù
-    * jednotná tabulka pro vechna mìøení, kadé mìøení jako jeden sloupec, kadou minutu nový øádek
-    * zobrazování prùmìru a maxima
-    * seznam mìøení uloen v poli
+    * statické zobrazování časové osy v rozsahu hodina, den, týden, měsíc, rok a více roků
+    * jednotná tabulka pro všechna měření, každé měření jako jeden sloupec, každou minutu nový řádek
+    * zobrazování průměru a maxima
+    * seznam měření uložen v poli
 
 Kontakt: robie@centrum.cz
Index: /branches/old/config.sample.php
===================================================================
--- /branches/old/config.sample.php	(revision 49)
+++ /branches/old/config.sample.php	(revision 50)
@@ -50,4 +50,2 @@
 $FontFile = $Config['FontFileName'];
 $FontSize = $Config['FontSize'];
-
-?>
Index: /branches/old/database.php
===================================================================
--- /branches/old/database.php	(revision 49)
+++ /branches/old/database.php	(revision 50)
@@ -7,5 +7,5 @@
 {
   var $Prefix = '';
-  
+
   function select($Table, $What = '*', $Condition = 1)
   {
@@ -18,5 +18,5 @@
     $this->query("DELETE FROM `".$this->Prefix.$Table."` WHERE ".$Condition);  
   }
-  
+
   function insert($Table, $Data)
   {
@@ -27,6 +27,6 @@
       $Value = strtr($Value, '"', '\"');
       $Name .= ','.$Key;
-	    if($Value == 'NOW()') $Values .= ",".$Value;
-	      else $Values .= ",'".$Value."'";
+      if($Value == 'NOW()') $Values .= ",".$Value;
+        else $Values .= ",'".$Value."'";
     }
     $Name = substr($Name, 1);
@@ -35,5 +35,5 @@
     //echo('INSERT INTO `'.$this->Prefix.$Table.'` ('.$Name.') VALUES('.$Values.')');
   }
-  
+
   function update($Table, $Condition, $Data)
   {
@@ -41,5 +41,5 @@
     foreach($Data as $Key => $Value)
     {
-	    $Value = strtr($Value, '"', '\"');
+      $Value = strtr($Value, '"', '\"');
       if($Value != 'NOW()') $Value = "'".$Value."'";
       $Values .= ", ".$Key."=".$Value;
@@ -48,5 +48,5 @@
     $this->query('UPDATE `'.$this->Prefix.$Table.'` SET '.$Values.' WHERE ('.$Condition.')');
   }
-  
+
   function replace($Table, $Data)
   {
@@ -64,5 +64,5 @@
     $this->query('REPLACE INTO `'.$this->Prefix.$Table.'` (`'.$Name.'`) VALUES('.$values.')');
   }
-  
+
   function charset($Charset)
   {
@@ -71,4 +71,2 @@
 
 }
-
-?>
Index: /branches/old/global.php
===================================================================
--- /branches/old/global.php	(revision 49)
+++ /branches/old/global.php	(revision 50)
@@ -2,4 +2,9 @@
 
 session_start();
+$FileName = dirname(__FILE__).'/config.php';
+if(file_exists($FileName)) include($FileName);
+else {
+  die('Configuration file "'.$FileName.'" not found.');
+}
 include_once('config.php');
 include_once('database.php');
@@ -9,4 +14,8 @@
 include_once('stat_functions.php');
 $Database = new Database($Config['Database']['Host'], $Config['Database']['User'], $Config['Database']['Password'], $Config['Database']['Database']);
+if ($Database->connect_error) {
+  die('Connect Error (' . $Database->connect_errno . ') '.$Database->connect_error);
+}
+
 $Database->Prefix = $Config['Database']['Prefix'];
 $Database->charset($Config['Database']['Charset']);
Index: /branches/old/index.php
===================================================================
--- /branches/old/index.php	(revision 49)
+++ /branches/old/index.php	(revision 50)
@@ -11,5 +11,4 @@
 
       $TimeParts = getdate($_SESSION[$Time]);
-      //print_r($TimeParts); 
 
       // Day selection
@@ -17,5 +16,5 @@
       for($I = 1; $I < 32; $I++)
       {
-        if($I == $TimeParts['mday']) $Selected = ' selected="1"'; else $Selected = ''; 
+        if($I == $TimeParts['mday']) $Selected = ' selected="1"'; else $Selected = '';
         $Output .= '<option value="'.$I.'"'.$Selected.'>'.$I.'</option>';
       }
@@ -25,25 +24,24 @@
       $Output .= '<select name="Month">';
       foreach($Months as $Index => $Month)
-      { 
-        if($Index == $TimeParts['mon']) $Selected = ' selected="1"'; else $Selected = ''; 
+      {
+        if($Index == $TimeParts['mon']) $Selected = ' selected="1"'; else $Selected = '';
         if($Index > 0) $Output .= '<option value="'.$Index.'"'.$Selected.'>'.$Month.'</option>';
       }
       $Output .= '</select>. ';
-      
+
       // Day selection
       $Output .= '<select name="Year">';
       for($I = 2000; $I < 2010; $I++)
-      { 
-        if($I == $TimeParts['year']) $Selected = ' selected="1"'; else $Selected = ''; 
+      {
+        if($I == $TimeParts['year']) $Selected = ' selected="1"'; else $Selected = '';
         $Output .= '<option value="'.$I.'"'.$Selected.'>'.$I.'</option>';
       }
       $Output .= '</select> &nbsp;&nbsp; ';
-      
-      
+
       // Hour selection
       $Output .= '<select name="Hour">';
       for($I = 0; $I < 24; $I++)
-      { 
-        if($I == $TimeParts['hours']) $Selected = ' selected="1"'; else $Selected = ''; 
+      {
+        if($I == $TimeParts['hours']) $Selected = ' selected="1"'; else $Selected = '';
         $Output .= '<option value="'.$I.'"'.$Selected.'>'.$I.'</option>';
       }
@@ -54,15 +52,15 @@
       for($I = 0; $I < 60; $I++) 
       {
-        if($I == $TimeParts['minutes']) $Selected = ' selected="1"'; else $Selected = ''; 
+        if($I == $TimeParts['minutes']) $Selected = ' selected="1"'; else $Selected = '';
         $Output .= '<option value="'.$I.'"'.$Selected.'>'.$I.'</option>';
       }
       $Output .= '</select> ';
-      $Output .= '<input type="submit" value="Nastavit">';     
+      $Output .= '<input type="submit" value="Nastavit">';
       $Output .= '</form>';
 
       $Output .= ' <form style="display: inline;" action="?Operation=SetTimeNow&amp;Time='.$Time.'" method="post">';
-      $Output .= '<input type="submit" value="Aktuální čas">';     
+      $Output .= '<input type="submit" value="Aktuální čas">';
       $Output .= '</form>';
-      
+
       return($Output);
 }
@@ -73,28 +71,28 @@
 $GrafTimeRanges = array(
   'hour' => array(
-    'caption' => 'Hodina', 
+    'caption' => 'Hodina',
     'period' => 3600,
   ),
   'day' => array(
     'caption' => 'Den',
-    'period' => 3600*24,
+    'period' => 3600 * 24,
   ),
   'week' => array(
     'caption' => 'Týden',
-    'period' => 3600*24*7,
+    'period' => 3600 * 24 * 7,
   ),
   'month' => array(
     'caption' => 'Měsíc',
-    'period' => 3600*24*30,
+    'period' => 3600 * 24 * 30,
   ),
   'year' => array(
     'caption' => 'Rok',
-    'period' => 3600*24*365,
+    'period' => 3600 * 24 * 365,
   ),
   'years' => array(
     'caption' => 'Desetiletí',
-    'period' => 3600*24*365*10,
-  ),
-); 
+    'period' => 3600 * 24 * 365 * 10,
+  ),
+);
 
 foreach($Config['DefaultVariables'] as $Index => $Variable)
@@ -104,5 +102,5 @@
   if(array_key_exists($Index, $_POST)) $_SESSION[$Index] = $_POST[$Index];
   //$$Index = $_SESSION[$Index];
-} 
+}
 
 if($_SESSION['TimeSpecify'] == 0) 
@@ -112,5 +110,5 @@
 }
 
-$Output = '<div class="Title">Statistiky</div>';
+$Output = '<div style="text-align: center"><div class="Title">Statistiky</div>';
 
 if(!array_key_exists('Operation', $_GET)) $_GET['Operation'] = ''; 
@@ -128,5 +126,5 @@
         }
       }
-    break; 
+    break;
   case 'SetTimeNow':
     if(array_key_exists('Time', $_GET)) 
@@ -138,9 +136,9 @@
       }
     }
-    break; 
-  
+    break;
+
     }
     $Output .= '<strong>Časový úsek:</strong><br>';
-    // Show graf time range menu
+    // Show graph time range menu
     if($_SESSION['TimeSpecify'] == 0)
     {
@@ -151,5 +149,5 @@
       $Output .= '<a href="?TimeSpecify=1">Přesnější nastavení...</a><br>';  
     } else {
-      $Output .= '<table cellspacing="0" cellpadding="2" border="0">';
+      $Output .= '<table cellspacing="0" cellpadding="2" border="0" style="margin: 0px auto;">';
       $Output .= '<tr><td>Počátek:</td><td>'.EditTime('TimeStart').'</td></tr>';
       $Output .= '<tr><td>Konec:</td><td>'.EditTime('TimeEnd').'</td></tr>';
@@ -162,16 +160,14 @@
 $Output .= '<img alt="Graf" src="graph.php?Measure='.$_SESSION['Measure'].'&amp;From='.$_SESSION['TimeStart'].'&amp;To='.$_SESSION['TimeEnd'].'&amp;Width=750&amp;Height=200&amp;Differential='.$_SESSION['Differential'].'" width="750" height="200"><br>';
 $Output .= '<a href="?Measure='.$_SESSION['Measure'].'&amp;TimeStart='.$_SESSION['TimeStart'].'&amp;TimeEnd='.$_SESSION['TimeEnd'].'&amp;TimeSpecify=1&amp;Differential='.$_SESSION['Differential'].'">Odkaz na vybraný graf</a><br>';
-//print_r(GetValues($Measure, $TimeStart, $TimeEnd));
- 
+
 $Output .= '<br>';
 
-$Output .= '<table border="1" cellspacing="0" cellpadding="2" style="font-size: small;">';
+// Table with available measures
+$Output .= '<table border="1" cellspacing="0" cellpadding="2" style="font-size: small; margin: 0px auto;">';
 $Output .= '<tr><th>Měřená veličina</th><th>Poslední hodnota</th><th>Čas posledního měření</th><th>Interpolace</th><th>Poznámky</th>';
 if(array_key_exists('Debug', $_GET)) $Output .= '<th>Počet položek</th><th>Čas vykonání</th>';
 $Output .= '</tr>';
 $Database->select_db('measure');
-$Result = $Database->select('measure', '*', 'Enabled=1 AND PermissionView="all" OR PermissionView="'.gethostbyaddr($_SERVER['REMOTE_ADDR']).'" ORDER BY Description');
-//echo($Database->error);
-
+$Result = $Database->select('measure', '*', '(Enabled=1) AND ((PermissionView="all") OR (PermissionView="'.gethostbyaddr($_SERVER['REMOTE_ADDR']).'")) ORDER BY Description');
 while($Measure = $Result->fetch_array())
 {
@@ -202,10 +198,5 @@
 $Output .= '</table>';
 $Output .= '<br><a href="http://svn.zdechov.net/trac/statistic/">Sekce vývoje systému</a>';
-//echo(time());
-//print_r(gd_info());
-$Output .= '</body></html>';
-//print_r($_SESSION);
+$Output .= '</div></body></html>';
 
 ShowPage($Output);
-
-//echo(AddPrefixMultipliers('-0.000000071112345', 'B'));
Index: /branches/old/sql/23_measure.sql
===================================================================
--- /branches/old/sql/23_measure.sql	(revision 49)
+++ /branches/old/sql/23_measure.sql	(revision 50)
@@ -1,18 +1,18 @@
 CREATE TABLE IF NOT EXISTS `measure` (
   `Id` int(11) NOT NULL auto_increment,
-  `Name` varchar(255) collate latin2_czech_cs NOT NULL,
-  `Description` varchar(255) collate latin2_czech_cs NOT NULL,
+  `Name` varchar(255) collate utf8_general_ci NOT NULL,
+  `Description` varchar(255) collate utf8_general_ci NOT NULL,
   `Divider` int(11) NOT NULL default '1',
-  `Unit` varchar(16) collate latin2_czech_cs NOT NULL,
+  `Unit` varchar(16) collate utf8_general_ci NOT NULL,
   `Continuity` tinyint(1) NOT NULL default '0',
   `Period` int(11) NOT NULL default '60',
-  `OldName` varchar(32) collate latin2_czech_cs NOT NULL,
-  `PermissionView` varchar(255) collate latin2_czech_cs NOT NULL default 'all',
-  `PermissionAdd` varchar(255) collate latin2_czech_cs NOT NULL default 'localhost.localdomain',
-  `Info` varchar(255) collate latin2_czech_cs NOT NULL,
+  `OldName` varchar(32) collate utf8_general_ci NOT NULL,
+  `PermissionView` varchar(255) collate utf8_general_ci NOT NULL default 'all',
+  `PermissionAdd` varchar(255) collate utf8_general_ci NOT NULL default 'localhost.localdomain',
+  `Info` varchar(255) collate utf8_general_ci NOT NULL,
   `Enabled` int(11) NOT NULL default '1',
   `Cumulative` int(11) NOT NULL default '0',
-  `DataTable` varchar(32) collate latin2_czech_cs NOT NULL default 'data',
-  `DataType` varchar(32) collate latin2_czech_cs NOT NULL,
+  `DataTable` varchar(32) collate utf8_general_ci NOT NULL default 'data',
+  `DataType` varchar(32) collate utf8_general_ci NOT NULL,
   PRIMARY KEY  (`Id`)
-) ENGINE=MyISAM  DEFAULT CHARSET=latin2 COLLATE=latin2_czech_cs;
+) ENGINE=InnoDb  DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
