log.class.inc.php 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <?php
  2. /**
  3. * Log
  4. * logging to files
  5. *
  6. * @package iTopORM
  7. * @author Romain Quetiez <romainquetiez@yahoo.fr>
  8. * @author Denis Flaven <denisflave@free.fr>
  9. * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
  10. * @link www.itop.com
  11. * @since 1.0
  12. * @version 1.1.1.1 $
  13. */
  14. class FileLog
  15. {
  16. protected $m_sFile = ''; // log is disabled if this is empty
  17. public function __construct($sFileName = '')
  18. {
  19. $this->m_sFile = $sFileName;
  20. }
  21. public function Error($sText)
  22. {
  23. self::Write("Error | ".$sText);
  24. }
  25. public function Warning($sText)
  26. {
  27. self::Write("Warning | ".$sText);
  28. }
  29. public function Info($sText)
  30. {
  31. self::Write("Info | ".$sText);
  32. }
  33. public function Ok($sText)
  34. {
  35. self::Write("Ok | ".$sText);
  36. }
  37. protected function Write($sText)
  38. {
  39. if (strlen($this->m_sFile) == 0) return;
  40. $hLogFile = @fopen($this->m_sFile, 'a');
  41. if ($hLogFile !== false)
  42. {
  43. $sDate = date('Y-m-d H:i:s');
  44. fwrite($hLogFile, "$sDate | $sText\n");
  45. fclose($hLogFile);
  46. }
  47. }
  48. }
  49. class SetupLog
  50. {
  51. protected static $m_oFileLog;
  52. public static function Enable($sTargetFile)
  53. {
  54. self::$m_oFileLog = new FileLog($sTargetFile);
  55. }
  56. public static function Error($sText)
  57. {
  58. self::$m_oFileLog->Error($sText);
  59. }
  60. public static function Warning($sText)
  61. {
  62. self::$m_oFileLog->Warning($sText);
  63. }
  64. public static function Info($sText)
  65. {
  66. self::$m_oFileLog->Info($sText);
  67. }
  68. public static function Ok($sText)
  69. {
  70. self::$m_oFileLog->Ok($sText);
  71. }
  72. }
  73. class IssueLog
  74. {
  75. protected static $m_oFileLog;
  76. public static function Enable($sTargetFile)
  77. {
  78. self::$m_oFileLog = new FileLog($sTargetFile);
  79. }
  80. public static function Error($sText)
  81. {
  82. self::$m_oFileLog->Error($sText);
  83. }
  84. public static function Warning($sText)
  85. {
  86. self::$m_oFileLog->Warning($sText);
  87. }
  88. public static function Info($sText)
  89. {
  90. self::$m_oFileLog->Info($sText);
  91. }
  92. public static function Ok($sText)
  93. {
  94. self::$m_oFileLog->Ok($sText);
  95. }
  96. }
  97. ?>