diff options
-rwxr-xr-x | pagehandler.py | 2 | ||||
-rw-r--r-- | patchtracker/DB.py | 17 | ||||
-rwxr-xr-x | patchtracker/Templates.py | 4 | ||||
-rw-r--r-- | templates/frontpage.tmpl | 2 |
4 files changed, 19 insertions, 6 deletions
diff --git a/pagehandler.py b/pagehandler.py index 0c444b2..f73837f 100755 --- a/pagehandler.py +++ b/pagehandler.py @@ -132,7 +132,7 @@ class JumpCmd: class FrontPageCmd: def __init__(self): self.db = PatchTrackerDB() - self.index = self.db.findMasterIndex() + self.index = self.db.findIndices() def output(self): print "Content-Type: text/html\n\n" diff --git a/patchtracker/DB.py b/patchtracker/DB.py index efa3c8e..4160b90 100644 --- a/patchtracker/DB.py +++ b/patchtracker/DB.py @@ -108,8 +108,21 @@ class PatchTrackerDB: def findLetterToc(self, letter): return self.findCollection(package=letter+"%").getletter(letter) - def findMasterIndex(self): - return self.findCollection(package="%") + def findIndices(self): + indices = [] + cursor = self.db.cursor() + q1 = "SELECT DISTINCT SUBSTR(name,1,1) FROM packages \ + WHERE name NOT LIKE 'lib%'" + q2 = "SELECT DISTINCT SUBSTR(name,1,4) FROM packages \ + WHERE name LIKE 'lib%'" + + for q in [q1, q2]: + cursor.execute(q) + for idx in cursor.fetchall(): + indices.append(idx[0]) + + indices.sort() + return indices def relateSourcePackage(self, name, version, suite, component): q = "INSERT INTO package_rel_map \ diff --git a/patchtracker/Templates.py b/patchtracker/Templates.py index 0848da1..4445ef1 100755 --- a/patchtracker/Templates.py +++ b/patchtracker/Templates.py @@ -28,10 +28,10 @@ class PackageVersTemplate(OurTemplate): OurTemplate.__init__(self, file=tpl, searchList=sl) class FrontPageTemplate(OurTemplate): - def __init__(self, allindex): + def __init__(self, indices): tpl = os.sep.join([Conf.template_dir, "frontpage.tmpl"]) OurTemplate.__init__(self, file=tpl) - self.allindex = allindex + self.indices = indices class LetterTocTemplate(OurTemplate): def __init__(self, letter, collection): diff --git a/templates/frontpage.tmpl b/templates/frontpage.tmpl index 17ddbd9..37a4794 100644 --- a/templates/frontpage.tmpl +++ b/templates/frontpage.tmpl @@ -12,7 +12,7 @@ Debian Project patch tracking system </p> <h2>Quick access</h2> <h3>Browse patches by package name</h3> -#set $links = [ "<a href=\"index/"+k+"\">"+k+"</a>" for k in $allindex.indices ] +#set $links = [ "<a href=\"index/"+k+"\">"+k+"</a>" for k in $indices ] #set $out = " - ".join($links) <div class="quicklinks"> $out |