diff options
author | Tomeu Vizoso <tomeu@sugarlabs.org> | 2009-01-11 19:09:20 (GMT) |
---|---|---|
committer | Tomeu Vizoso <tomeu@sugarlabs.org> | 2009-01-11 19:09:20 (GMT) |
commit | 73fdf31558c6d1b9c4e47b1d33ee6991b2abe35e (patch) | |
tree | cca6d7ed7db953468e799b915c97980083824fc8 /src/jarabe/journal | |
parent | e6b966ea0edbc0fac60d66b9019fc145f0b62ff4 (diff) |
Implement filtering by date range for removable devices
Diffstat (limited to 'src/jarabe/journal')
-rw-r--r-- | src/jarabe/journal/model.py | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/jarabe/journal/model.py b/src/jarabe/journal/model.py index 4d1751b..74344ec 100644 --- a/src/jarabe/journal/model.py +++ b/src/jarabe/journal/model.py @@ -253,6 +253,13 @@ class InplaceResultSet(BaseResultSet): else: self._regex = None + if query.get('timestamp', ''): + self._date_start = int(query['timestamp']['start']) + self._date_end = int(query['timestamp']['end']) + else: + self._date_start = None + self._date_end = None + def setup(self): self._file_list = [] self._recurse_dir(self._mount_point) @@ -304,9 +311,16 @@ class InplaceResultSet(BaseResultSet): gobject.idle_add(lambda s=full_path: self._recurse_dir(s)) elif S_IFMT(stat.st_mode) == S_IFREG: - add_to_list = False - if self._regex is None or self._regex.match(full_path): - add_to_list = True + add_to_list = True + + if self._regex is not None and not self._regex.match(full_path): + add_to_list = False + + + if None not in [self._date_start, self._date_end] and \ + (stat.st_mtime < self._date_start or + stat.st_mtime > self._date_end): + add_to_list = False if add_to_list: file_info = (full_path, stat, int(stat.st_mtime)) |