Mercurial > p > roundup > code
diff roundup/backends/back_gadfly.py @ 1002:1798d2fa9fec
Hack hack...
. Lots of cleanup in the classic html (stylesheet, search page, index page, ...)
. Reinstated searching, but not query saving yet
. Filtering only allows sorting and grouping by one property - all backends
now implement this behaviour.
. Nosy list journalling turned off by default, everything else is on.
. Added some convenience methods (reverse, propchanged, [item] accesses, ...)
. Did I mention the stylesheet is much cleaner now? :)
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Sun, 01 Sep 2002 04:32:30 +0000 |
| parents | 8fd80699fa3c |
| children | 8816534e6a1a |
line wrap: on
line diff
--- a/roundup/backends/back_gadfly.py Sat Aug 31 22:09:26 2002 +0000 +++ b/roundup/backends/back_gadfly.py Sun Sep 01 04:32:30 2002 +0000 @@ -1,4 +1,4 @@ -# $Id: back_gadfly.py,v 1.6 2002-08-30 08:35:16 richard Exp $ +# $Id: back_gadfly.py,v 1.7 2002-09-01 04:32:30 richard Exp $ __doc__ = ''' About Gadfly ============ @@ -1469,8 +1469,8 @@ sort spec "filterspec" is {propname: value(s)} - "sort" is ['+propname', '-propname', 'propname', ...] - "group is ['+propname', '-propname', 'propname', ...] + "sort" and "group" are (dir, prop) where dir is '+', '-' or None + and prop is a prop name or None "search_matches" is {nodeid: marker} ''' cn = self.classname @@ -1511,26 +1511,24 @@ # figure the order by clause orderby = [] ordercols = [] - if sort: - for entry in sort: - if entry[0] != '-': - orderby.append('_'+entry) - ordercols.append(entry) - else: - orderby.append('_'+entry[1:]+' desc') - ordercols.append(entry) + if sort is not None: + if sort[0] != '-': + orderby.append('_'+sort[1]) + ordercols.append(sort[1]) + else: + orderby.append('_'+sort[1]+' desc') + ordercols.append(sort[1]) # figure the group by clause groupby = [] groupcols = [] - if group: - for entry in group: - if entry[0] != '-': - groupby.append('_'+entry) - groupcols.append(entry) - else: - groupby.append('_'+entry[1:]+' desc') - groupcols.append(entry[1:]) + if group is not None: + if group[0] != '-': + groupby.append('_'+group[1]) + groupcols.append(group[1]) + else: + groupby.append('_'+group[1]+' desc') + groupcols.append(group[1]) # construct the SQL frum = ','.join(frum) @@ -1743,13 +1741,18 @@ if not properties.has_key('files'): properties['files'] = hyperdb.Multilink("file") if not properties.has_key('nosy'): - properties['nosy'] = hyperdb.Multilink("user") + # note: journalling is turned off as it really just wastes + # space. this behaviour may be overridden in an instance + properties['nosy'] = hyperdb.Multilink("user", do_journal="no") if not properties.has_key('superseder'): properties['superseder'] = hyperdb.Multilink(classname) Class.__init__(self, db, classname, **properties) # # $Log: not supported by cvs2svn $ +# Revision 1.6 2002/08/30 08:35:16 richard +# very basic filter support +# # Revision 1.5 2002/08/23 05:33:32 richard # implemented multilink changes (and a unit test) #
