aboutsummaryrefslogtreecommitdiff
path: root/app/models/Log.php
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2013-06-15 16:42:50 +0200
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2013-06-15 16:42:50 +0200
commitfafddf2a20748cdbda1f974338528c8e488f4b11 (patch)
treea81d7ff4049a8d2a54f9d125e0e91d7ab26ac507 /app/models/Log.php
parent1863153b966af00078869b6634df1daa22cdcbfe (diff)
Fix issue #73 : ajout d'une page pour visualiser les logs
Diffstat (limited to 'app/models/Log.php')
-rw-r--r--app/models/Log.php47
1 files changed, 47 insertions, 0 deletions
diff --git a/app/models/Log.php b/app/models/Log.php
new file mode 100644
index 000000000..5c280fa7a
--- /dev/null
+++ b/app/models/Log.php
@@ -0,0 +1,47 @@
+<?php
+
+class Log_Model extends Model {
+ private $date;
+ private $level;
+ private $information;
+
+ public function date () {
+ return $this->date;
+ }
+ public function level () {
+ return $this->level;
+ }
+ public function info () {
+ return $this->information;
+ }
+ public function _date ($date) {
+ $this->date = $date;
+ }
+ public function _level ($level) {
+ $this->level = $level;
+ }
+ public function _info ($information) {
+ $this->information = $information;
+ }
+}
+
+class LogDAO extends Model_txt {
+ public function __construct () {
+ parent::__construct (LOG_PATH . '/application.log', 'r+');
+ }
+
+ public function lister () {
+ $logs = array ();
+
+ $i = 0;
+ while (($line = $this->readLine ()) !== false) {
+ $logs[$i] = new Log_Model ();
+ $logs[$i]->_date (preg_replace ("'\[(.*?)\] \[(.*?)\] --- (.*?)'U", "\\1", $line));
+ $logs[$i]->_level (preg_replace ("'\[(.*?)\] \[(.*?)\] --- (.*?)'U", "\\2", $line));
+ $logs[$i]->_info (preg_replace ("'\[(.*?)\] \[(.*?)\] --- (.*?)'U", "\\3", $line));
+ $i++;
+ }
+
+ return $logs;
+ }
+} \ No newline at end of file