annotate decoupage/formats.py @ 59:07cf168aa98c

make formats classes that can take arguments
author Jeff Hammel <jhammel@mozilla.com>
date Sun, 21 Nov 2010 13:23:34 -0800
parents 1275124ed767
children cf18ea0313f9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
54
0e2b9e0507c5 add documentation for formats and a stub
Jeff Hammel <jhammel@mozilla.com>
parents: 49
diff changeset
1 """
0e2b9e0507c5 add documentation for formats and a stub
Jeff Hammel <jhammel@mozilla.com>
parents: 49
diff changeset
2 pluggable formats for directory listings
0e2b9e0507c5 add documentation for formats and a stub
Jeff Hammel <jhammel@mozilla.com>
parents: 49
diff changeset
3 """
0e2b9e0507c5 add documentation for formats and a stub
Jeff Hammel <jhammel@mozilla.com>
parents: 49
diff changeset
4
49
ac693b8df32c add idea of formats and json format
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
5 try:
ac693b8df32c add idea of formats and json format
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
6 import json as json
ac693b8df32c add idea of formats and json format
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
7 except ImportError:
ac693b8df32c add idea of formats and json format
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
8 import simplejson as json
ac693b8df32c add idea of formats and json format
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
9
59
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
10 class JSON(object):
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
11 """
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
12 JSON format for index pages
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
13 just (basically) return the data
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
14 """
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
15
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
16 def __init__(self, app, foo):
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
17 self.app = app
49
ac693b8df32c add idea of formats and json format
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
18
59
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
19 def __call__(self, request, data):
49
ac693b8df32c add idea of formats and json format
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
20
59
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
21 # fix datetime
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
22 for f in data['files']:
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
23 if 'modified' in f:
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
24 f['modified'] = f['modified'].ctime()
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
25
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
26 return 'application/json', json.dumps(data['files'])
49
ac693b8df32c add idea of formats and json format
Jeff Hammel <jhammel@mozilla.com>
parents:
diff changeset
27
54
0e2b9e0507c5 add documentation for formats and a stub
Jeff Hammel <jhammel@mozilla.com>
parents: 49
diff changeset
28 class RSS(object):
57
884e6c805208 more stubbing for RSS
Jeff Hammel <jhammel@mozilla.com>
parents: 55
diff changeset
29 """RSS for indices"""
54
0e2b9e0507c5 add documentation for formats and a stub
Jeff Hammel <jhammel@mozilla.com>
parents: 49
diff changeset
30
57
884e6c805208 more stubbing for RSS
Jeff Hammel <jhammel@mozilla.com>
parents: 55
diff changeset
31 def __init__(self, app, count=10, cascade=False):
884e6c805208 more stubbing for RSS
Jeff Hammel <jhammel@mozilla.com>
parents: 55
diff changeset
32 self.app = app # the decoupage
59
07cf168aa98c make formats classes that can take arguments
Jeff Hammel <jhammel@mozilla.com>
parents: 58
diff changeset
33 self.count = int(count)
57
884e6c805208 more stubbing for RSS
Jeff Hammel <jhammel@mozilla.com>
parents: 55
diff changeset
34 self.cascade = cascade
884e6c805208 more stubbing for RSS
Jeff Hammel <jhammel@mozilla.com>
parents: 55
diff changeset
35
884e6c805208 more stubbing for RSS
Jeff Hammel <jhammel@mozilla.com>
parents: 55
diff changeset
36 def __call__(self, request, data):
58
1275124ed767 depend on py2rssgen; not hooked up yet
Jeff Hammel <jhammel@mozilla.com>
parents: 57
diff changeset
37 import pdb; pdb.set_trace()