Changeset 5002
- Timestamp:
- 16/05/08 19:20:29 (3 months ago)
- Files:
-
- Trunk/contributors/ChrisDent/experimental/TiddlyWeb/lib/TiddlyWebAdaptorPlugin (modified) (6 diffs)
- Trunk/contributors/ChrisDent/experimental/TiddlyWeb/tiddlyweb/serializers/html.py (modified) (1 diff)
- Trunk/contributors/ChrisDent/experimental/TiddlyWeb/tiddlyweb/serializers/json.py (modified) (1 diff)
- Trunk/contributors/ChrisDent/experimental/TiddlyWeb/tiddlyweb/serializers/wiki.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
Trunk/contributors/ChrisDent/experimental/TiddlyWeb/lib/TiddlyWebAdaptorPlugin
r4227 r5002 178 178 var list = []; 179 179 for(var i=0; i < tiddlers.length; i++) { 180 var tiddler = new Tiddler(tiddlers[i]) 180 var tiddler = new Tiddler(tiddlers[i]['title']); 181 tiddler.fields['server.page.revision'] = tiddlers[i]['revision']; 181 182 list.push(tiddler); 182 183 } … … 219 220 context.title = title; 220 221 if(context.revision) { 221 // !!TODO set the uriTemplate 222 var uriTemplate = '%0%1%2%3'; 222 var uriTemplate = '%0recipes/%1/tiddlers/%2/revisions/%3'; 223 223 } else { 224 224 uriTemplate = '%0recipes/%1/tiddlers/%2'; 225 225 } 226 uri = uriTemplate.format([context.host,context.workspace,TiddlyWebAdaptor.normalizedTitle(title) ]);226 uri = uriTemplate.format([context.host,context.workspace,TiddlyWebAdaptor.normalizedTitle(title),context.revision]); 227 227 228 228 context.tiddler = new Tiddler(title); … … 251 251 context.tiddler.tags = info['tags']; 252 252 context.tiddler.fields['server.bag'] = info['bag']; 253 context.tiddler.fields['server.page.revision'] = info['revison'] 253 254 context.tiddler.modifier = info['modifier']; 254 255 context.tiddler.modified = Date.convertFromYYYYMMDDHHMM(info['modified']); … … 265 266 }; 266 267 267 // NOT YET IMPLEMENTED268 268 TiddlyWebAdaptor.prototype.getTiddlerRevisionList = function(title,limit,context,userParams,callback) 269 269 { 270 270 context = this.setContext(context,userParams,callback); 271 // !!TODO set the uriTemplate 272 var uriTemplate = '%0%1%2'; 273 if(!limit) 274 limit = 10; 275 var uri = uriTemplate.format([context.host,context.workspace,TiddlyWebAdaptor.normalizedTitle(title),limit]); 271 var uriTemplate = '%0recipes/%1/tiddlers/%2/revisions'; 272 // no support for limit 273 var uri = uriTemplate.format([context.host,context.workspace,TiddlyWebAdaptor.normalizedTitle(title)]); 276 274 var req = TiddlyWebAdaptor.doHttpGET(uri,TiddlyWebAdaptor.getTiddlerRevisionListCallback,context); 277 275 return typeof req == 'string' ? req : true; 278 276 }; 279 277 280 // NOT YET IMPLEMENTED281 278 TiddlyWebAdaptor.getTiddlerRevisionListCallback = function(status,context,responseText,uri,xhr) 282 279 { 283 280 context.status = false; 284 281 if(status) { 285 var content = null;286 282 try { 287 // !!TODO: parse the responseText here 288 var list = []; 289 var tiddler = new Tiddler('example'); 290 // !!TODO: fill in tiddler fields as available 291 //tiddler.modified = TiddlyWebAdaptor.dateFromEditTime(); 292 //tiddler.modifier = ; 293 //tiddler.tags = ; 294 //tiddler.fields['server.page.id'] = ; 295 //tiddler.fields['server.page.name'] = ; 296 //tiddler.fields['server.page.revision'] = ; 297 list.push(tiddler); 283 eval('var info=' + responseText); 298 284 } catch (ex) { 299 285 context.statusText = exceptionText(ex,TiddlyWebAdaptor.serverParsingErrorMessage); … … 302 288 return; 303 289 } 290 var list = []; 291 for(var i=0; i<info.length; i++) { 292 var tiddler = new Tiddler(info[i]['title']); 293 tiddler.modifier = info[i]['modifier']; 294 tiddler.tags = info[i]['tags']; 295 tiddler.fields['server.page.revision'] = info[i]['revision']; 296 tiddler.modified = Date.convertFromYYYYMMDDHHMM(info[i]['modified']); 297 tiddler.created = Date.convertFromYYYYMMDDHHMM(info[i]['created']); 298 list.push(tiddler); 299 } 304 300 var sortField = 'server.page.revision'; 305 list.sort(function(a,b) {return a.fields[sortField] < b.fields[sortField] ? +1 : (a.fields[sortField] == b.fields[sortField] ? 0 : -1);}); 301 list.sort(function(a,b) { 302 return a.fields[sortField] < b.fields[sortField] 303 ? +1 304 : (a.fields[sortField] == b.fields[sortField] ? 0 : -1); 305 }); 306 306 context.revisions = list; 307 307 context.status = true; … … 334 334 text: tiddler.text, 335 335 modifier: tiddler.modifier, 336 tags: tiddler.tags 336 tags: tiddler.tags, 337 revision: tiddler['server.page.revision'] 337 338 }; 338 339 payload = JSON.stringify(payload) Trunk/contributors/ChrisDent/experimental/TiddlyWeb/tiddlyweb/serializers/html.py
r4997 r5002 72 72 73 73 def tiddler_as(tiddler): 74 return """<div title="%s" revision="%s" modifier="%s" modified="%s" created="%s" tags="%s">74 return """<div title="%s" server.page.revision="%s" modifier="%s" modified="%s" created="%s" tags="%s"> 75 75 <pre>%s</pre> 76 76 </div> Trunk/contributors/ChrisDent/experimental/TiddlyWeb/tiddlyweb/serializers/json.py
r4997 r5002 31 31 def bag_as(bag): 32 32 """ 33 List the tiddlers in a bag as text.33 List the tiddlers in a bag as json. 34 34 We will likely want to expand this someday. 35 35 """ 36 if bag.revbag: 37 return simplejson.dumps([(tiddler.title, tiddler.revision) for tiddler in bag.list_tiddlers()]) 38 else: 39 return simplejson.dumps([tiddler.title for tiddler in bag.list_tiddlers()]) 36 return simplejson.dumps([{'title':tiddler.title, 'revision':tiddler.revision} for tiddler in bag.list_tiddlers()]) 40 37 41 38 def as_bag(bag, input): Trunk/contributors/ChrisDent/experimental/TiddlyWeb/tiddlyweb/serializers/wiki.py
r4957 r5002 68 68 host = '' 69 69 70 return """<div title="%s" revision="%s" modifier="%s" server.workspace="%s" server.type="tiddlyweb" server.host="%s" server.bag="%s" modified="%s" created="%s" tags="%s">70 return """<div title="%s" server.page.revision="%s" modifier="%s" server.workspace="%s" server.type="tiddlyweb" server.host="%s" server.bag="%s" modified="%s" created="%s" tags="%s"> 71 71 <pre>%s</pre> 72 72 </div>