summaryrefslogtreecommitdiff
path: root/app/Models/LogDAO.php
blob: d1e515200df2b5341db75bcc7c8e287854e2ab40 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php

class FreshRSS_LogDAO {
	public static function lines() {
		$logs = array ();
		$handle = @fopen(LOG_PATH . '/' . Minz_Session::param('currentUser', '_') . '.log', 'r');
		if ($handle) {
			while (($line = fgets($handle)) !== false) {
				if (preg_match ('/^\[([^\[]+)\] \[([^\[]+)\] --- (.*)$/', $line, $matches)) {
					$myLog = new FreshRSS_Log ();
					$myLog->_date ($matches[1]);
					$myLog->_level ($matches[2]);
					$myLog->_info ($matches[3]);
					$logs[] = $myLog;
				}
			}
			fclose($handle);
		}
		return array_reverse($logs);
	}

	public static function truncate() {
		file_put_contents(LOG_PATH . '/' . Minz_Session::param('currentUser', '_') . '.log', '');
	}
}