diff options
author | René 'Necoro' Neumann <necoro@necoro.net> | 2009-03-02 21:49:22 +0100 |
---|---|---|
committer | René 'Necoro' Neumann <necoro@necoro.net> | 2009-03-02 21:49:22 +0100 |
commit | 980f6b90fe2ad4b4ec95d13bb6472bb949b215b1 (patch) | |
tree | ba38063a176a97458c1a451153a51242e660e832 | |
parent | 3cd0926203e1a6e7c8bd50a8195336c85daf9f25 (diff) | |
download | portato-980f6b90fe2ad4b4ec95d13bb6472bb949b215b1.tar.gz portato-980f6b90fe2ad4b4ec95d13bb6472bb949b215b1.tar.bz2 portato-980f6b90fe2ad4b4ec95d13bb6472bb949b215b1.zip |
Fixed interactive search with category names
Diffstat (limited to '')
-rw-r--r-- | portato/db/dict.py | 2 | ||||
-rw-r--r-- | portato/db/sql.py | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/portato/db/dict.py b/portato/db/dict.py index f6edea6..4992df6 100644 --- a/portato/db/dict.py +++ b/portato/db/dict.py @@ -86,7 +86,7 @@ class DictDatabase (Database): try: if self.restrict: - return (pkg for pkg in get_pkgs() if self.restrict.search(pkg.pkg))#if pkg[1].find(self.restrict) != -1) + return (pkg for pkg in get_pkgs() if self.restrict.search(pkg.cat+"/"+pkg.pkg)) else: return get_pkgs() diff --git a/portato/db/sql.py b/portato/db/sql.py index cb252c1..b794d08 100644 --- a/portato/db/sql.py +++ b/portato/db/sql.py @@ -248,6 +248,11 @@ class SQLDatabase (Database): self._restrict = "" else: restrict = restrict.replace(".*","%").replace(".","_") - self._restrict = "AND name LIKE '%%%s%%'" % restrict + + if "/" in restrict: + cat,pkg = restrict.split("/") + self._restrict = "AND name LIKE '%%%s%%' AND cat LIKE '%s'" % (pkg, cat) + else: + self._restrict = "AND (name LIKE '%%%(restrict)s%%' OR cat LIKE '%(restrict)s%%')" % {"restrict":restrict} restrict = property(get_restrict, set_restrict) |