def tiddler_as(self, tiddler): """ entry point for a single tiddler. Sets some variables and passes the tiddler into list_tiddlers for turning into HTML """ if 'tiddler' not in self.environ['tiddlyweb.recipe_template']: self.environ['tiddlyweb.recipe_template']['tiddler'] = tiddler.title if 'bag' not in self.environ['tiddlyweb.recipe_template']: self.environ['tiddlyweb.recipe_template']['bag'] = tiddler.bag if tiddler.recipe and 'recipe' not in self.environ['tiddlyweb.recipe_template']: self.environ['tiddlyweb.recipe_template']['recipe'] = tiddler.recipe bag = Bag('tmpbag',tmpbag=True) bag.add_tiddler(tiddler) self.plugin_name = self.set_plugin_name('single_tiddler') if self.plugin_name not in self.environ['tiddlyweb.config']['tw_pages_serializers']: content = self.pass_through_external_serializer(self.plugin_name, tiddler) return content self.page_title = self.environ['tiddlyweb.config']['tw_pages_serializers'][self.plugin_name]['title'] or tiddler.title return self.list_tiddlers(bag)
def tiddler_as(self, tiddler): logging.debug("###################################\nDOING TIDDLER_AS\n\n\n###################################") """ Take the single tiddler provided and inject it into a TiddlyWiki. """ environ = self.environ store = self.environ["tiddlyweb.store"] try: recipe_name =tiddler.recipe tiddler_as_name = tiddler.title resource = Recipe(recipe_name) resource= store.get(resource) tiddlers = control.get_tiddlers_from_recipe(resource) bag =Bag("tmp",tmpbag=True) logging.debug("have tiddlers %s"%tiddlers) for a_tiddler in tiddlers: a_tiddler.recipe = recipe_name a_tiddler = store.get(a_tiddler) if a_tiddler.title == "DefaultTiddlers": a_tiddler.text = "[[%s]]"%tiddler_as_name logging.debug("tiddler_as overriding DefaultTiddlers") bag.add_tiddler(a_tiddler) except AttributeError: resource = Bag(tiddler.bag) bag = store.get(resource) self._prepare_twp(bag) return self.build_non_js_version(bag,default=[tiddler])
def get(environ, start_response): """ Perform a search on the store. What search means and what results are returned is dependent on the search implementation (if any) in the chosen store. """ store = environ['tiddlyweb.store'] tiddlers = get_tiddlers(environ) usersign = environ['tiddlyweb.usersign'] tmp_bag = Bag('tmp_bag', tmpbag=True, searchbag=True) bag_readable = {} for tiddler in tiddlers: try: if bag_readable[tiddler.bag]: tmp_bag.add_tiddler(store.get(tiddler)) except KeyError: bag = Bag(tiddler.bag) bag.skinny = True bag = store.get(bag) try: bag.policy.allows(usersign, 'read') tmp_bag.add_tiddler(store.get(tiddler)) bag_readable[tiddler.bag] = True except(ForbiddenError, UserRequiredError): bag_readable[tiddler.bag] = False return send_tiddlers(environ, start_response, tmp_bag)
def tiddler_as(self, tiddler): """ entry point for a single tiddler. Sets some variables and passes the tiddler into list_tiddlers for turning into HTML """ if 'tiddler' not in self.environ['tiddlyweb.recipe_template']: self.environ['tiddlyweb.recipe_template'][ 'tiddler'] = tiddler.title if 'bag' not in self.environ['tiddlyweb.recipe_template']: self.environ['tiddlyweb.recipe_template']['bag'] = tiddler.bag if tiddler.recipe and 'recipe' not in self.environ[ 'tiddlyweb.recipe_template']: self.environ['tiddlyweb.recipe_template'][ 'recipe'] = tiddler.recipe bag = Bag('tmpbag', tmpbag=True) bag.add_tiddler(tiddler) self.plugin_name = self.set_plugin_name('single_tiddler') if self.plugin_name not in self.environ['tiddlyweb.config'][ 'tw_pages_serializers']: content = self.pass_through_external_serializer( self.plugin_name, tiddler) return content self.page_title = self.environ['tiddlyweb.config'][ 'tw_pages_serializers'][self.plugin_name]['title'] or tiddler.title return self.list_tiddlers(bag)
def get(environ, start_response): """ Perform a search on the store. What search means and what results are returned is dependent on the search implementation (if any) in the chosen store. """ try: search_query = environ['tiddlyweb.query']['q'][0] search_query = urllib.unquote(search_query) search_query = unicode(search_query, 'utf-8') except (KeyError, IndexError): raise HTTP400('query string required') filters = environ['tiddlyweb.filters'] store = environ['tiddlyweb.store'] try: tiddlers = store.search(search_query) except StoreMethodNotImplemented: raise HTTP400('Search system not implemented') usersign = environ['tiddlyweb.usersign'] # It's necessary to get the tiddler off the store # in case we are doing wiki or atom outputs of the # search. tmp_bag = Bag('tmp_bag', tmpbag=True, searchbag=True) bag_readable = {} for tiddler in tiddlers: try: if bag_readable[tiddler.bag]: tmp_bag.add_tiddler(store.get(tiddler)) except KeyError: bag = Bag(tiddler.bag) bag.skinny = True bag = store.get(bag) try: bag.policy.allows(usersign, 'read') tmp_bag.add_tiddler(store.get(tiddler)) bag_readable[tiddler.bag] = True except(ForbiddenError, UserRequiredError): bag_readable[tiddler.bag] = False if len(filters): tiddlers = control.filter_tiddlers_from_bag(tmp_bag, filters) tmp_bag = Bag('tmp_bag', tmpbag=True) tmp_bag.add_tiddlers(tiddlers) return send_tiddlers(environ, start_response, tmp_bag)
def test_list_tiddlers_as_rtf(): bag = Bag('test bag') tiddlers = [Tiddler('tiddler' + str(name)) for name in xrange(2)] [bag.add_tiddler(tiddler) for tiddler in tiddlers] string = serializer.list_tiddlers(bag) assert_rtf_document(string) assert '{\\pard \\fs44 Tiddlers in Bag test bag\\par}' in string assert ' tiddler0' in string assert ' tiddler1' in string
def _send_tiddler_revisions(environ, start_response, tiddler): """ Push the list of tiddler revisions out the network. """ store = environ['tiddlyweb.store'] tmp_bag = Bag('tmp', tmpbag=True, revbag=True) try: for revision in store.list_tiddler_revisions(tiddler): tmp_tiddler = Tiddler(title=tiddler.title, bag=tiddler.bag) tmp_tiddler.revision = revision try: tmp_tiddler = store.get(tmp_tiddler) except NoTiddlerError, exc: # If a particular revision is not present in the store. raise HTTP404('tiddler %s at revision % not found, %s' % (tiddler.title, revision, exc)) tmp_bag.add_tiddler(tmp_tiddler) except NoTiddlerError, exc: # If a tiddler is not present in the store. raise HTTP404('tiddler %s not found, %s' % (tiddler.title, exc))
def test_list_tiddlers_as_yaml(): bag = Bag('test bag') tiddlers = [Tiddler('tiddler' + str(name)) for name in xrange(2)] [bag.add_tiddler(tiddler) for tiddler in tiddlers] string = serializer.list_tiddlers(bag) assert string.startswith(u"- bag: test bag\n") assert u"\n title: tiddler1\n" in string assert u"\n tags: []\n" in string o = pyyaml.load(string) assert re.match("^\d{14}$", o[0]['modified']) assert o[1]['tags'] == [] assert o[1]['revision'] == 0
def determine_bag_for_tiddler(recipe, tiddler, environ=None): """ Return the bag which this tiddler would be in if we were to save it to the recipe rather than to a default bag. This is a matter of reversing the recipe list and seeing if the tiddler is a part of the bag + filter. If bag+filter is true, return that bag. """ template = _recipe_template(environ) for bag, filter_string in reversed(recipe.get_recipe(template)): # ignore the bag and make a new bag tmpbag = Bag(filter_string, tmpbag=True) tmpbag.add_tiddler(tiddler) for candidate_tiddler in filter_tiddlers_from_bag(tmpbag, filter_string): if tiddler.title == candidate_tiddler.title: if isinstance(bag, basestring): bag = Bag(name=bag) return bag raise NoBagError('no suitable bag for %s' % tiddler.title)
def form(environ, start_response): """ Produce this named form to the web. """ store = environ['tiddlyweb.store'] bag_id = environ['wsgiorg.routing_args'][1]['formid'] recipe_id, uuid = bag_id.rsplit('.', 1) logging.debug('getting form with bag %s using recipe %s' % (bag_id, recipe_id)) bag = store.get(Bag(bag_id)) _process_config_tiddler(store, bag) recipe = store.get(Recipe(recipe_id)) base_tiddlers = control.get_tiddlers_from_recipe(recipe) # read the bag (again) to make sure we have all the tiddlers bag = store.get(bag) data_tiddlers = bag.list_tiddlers() tiddlers = base_tiddlers + data_tiddlers tmp_bag = Bag('tmp', tmpbag=True) for tiddler in tiddlers: store.get(tiddler) tmp_bag.add_tiddler(tiddler) logging.debug(['%s:%s' % (tiddler.bag, tiddler.title) for tiddler in tmp_bag.list_tiddlers()]) environ['tiddlyweb.type'] = 'text/x-tiddlywiki' return send_tiddlers(environ, start_response, tmp_bag)
def make_basic_tw(self,bag): smallerbag = Bag("tmp",tmpbag=True) try: skinnybags = self.environ['tiddlyweb.config']['tiddlywebwikiplus']['skinny_bags'] except KeyError: skinnybags = [] for tiddler in bag.list_tiddlers(): if not tiddler.bag in skinnybags: smallerbag.add_tiddler(tiddler) else: if "_twp_skinny_include" in tiddler.fields: del tiddler.fields["_twp_skinny_include"] smallerbag.add_tiddler(tiddler) elif "root" in tiddler.fields and tiddler.fields["root"] in self.marked_tiddlers: smallerbag.add_tiddler(tiddler) return self._put_tiddlers_in_tiddlywiki(smallerbag.list_tiddlers())
raise HTTP404('unable to edit %s, recipe %s not found: %s' % (tiddler.title, recipe_name, exc)) except NoBagError, exc: raise HTTP404('unable to edit %s: %s' % (tiddler.title, exc)) bag = Bag(tiddler.bag) try: tiddler = store.get(tiddler) bag = store.get(bag) except (NoTiddlerError, NoBagError), exc: raise HTTP404('tiddler %s not found: %s' % (tiddler.title, exc)) bag.policy.allows(usersign, 'write') output_bag = Bag('output', tmpbag=True) output_bag.add_tiddler(tiddler) def add_magic_tiddler(bag, title, text): tiddler = Tiddler(title, 'tmp') tiddler.text = text tiddler.tags = ['excludeLists'] bag.add_tiddler(tiddler) add_magic_tiddler( output_bag, 'MainMenu', '[[Back to TiddlyWeb|%s]]' % tiddler_url(environ, tiddler)) add_magic_tiddler(output_bag, 'DefaultTiddlers', '[[%s]]' % tiddler_name) add_magic_tiddler(output_bag, 'SiteTitle', 'Editor for %s' % tiddler_name) add_magic_tiddler(output_bag, 'SiteSubtitle', '') add_magic_tiddler(output_bag, 'SideBarOptions', '')
def bag(): bag = Bag('Geekery is the Social Capital of Britain') tiddler = Tiddler("@moo") tiddler.fields = {u'geo.lat': u'51.52351', u'geo.long': u'-0.11046'} bag.add_tiddler(tiddler); tiddler = Tiddler("@lastfm") tiddler.fields = {u'geo.lat': u'51.52762', u'geo.long': u'-0.08583'} bag.add_tiddler(tiddler); tiddler = Tiddler("@redmonk") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("RSA") tiddler.fields = {u'geo.lat': u'51.509043', u'geo.long': u'-0.12215'} bag.add_tiddler(tiddler); tiddler = Tiddler("Giant's Causeway") tiddler.fields = {u'geo.lat': u'55.24083', u'geo.long': u'-6.51167'} bag.add_tiddler(tiddler); tiddler = Tiddler("English Channel") tiddler.fields = {u'geo.lat': u'50.18361', u'geo.long': u'-0.53111'} bag.add_tiddler(tiddler); tiddler = Tiddler("River Cruises") tiddler.fields = {u'geo.lat': u'51.50341', u'geo.long': u'-0.120527'} bag.add_tiddler(tiddler); tiddler = Tiddler("Tea") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("BT Centre") tiddler.fields = {u'geo.lat': u'51.5156', u'geo.long': u'-0.0978'} bag.add_tiddler(tiddler); tiddler = Tiddler("Private Eye") tiddler.fields = {u'geo.lat': u'51.514657', u'geo.long': u'-0.133652'} bag.add_tiddler(tiddler); tiddler = Tiddler("Centre Point Tower") tiddler.fields = {u'geo.lat': u'51.515861', u'geo.long': u'-0.129694'} bag.add_tiddler(tiddler); tiddler = Tiddler("Ofcom") tiddler.fields = {u'geo.lat': u'51.5079', u'geo.long': u'-0.0953'} bag.add_tiddler(tiddler); tiddler = Tiddler("Duxford") tiddler.fields = {u'geo.lat': u'52.09306', u'geo.long': u'0.12944'} bag.add_tiddler(tiddler); tiddler = Tiddler("Sinclair Research") tiddler.fields = {u'geo.lat': u'52.20225', u'geo.long': u'0.13357'} bag.add_tiddler(tiddler); tiddler = Tiddler("BBC Micro") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Invader") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("@dopplr") tiddler.fields = {u'geo.lat': u'51.525490', u'geo.long': u'-0.088250'} bag.add_tiddler(tiddler); tiddler = Tiddler("@schoolofeverything") tiddler.fields = {u'geo.lat': u'51.52869', u'geo.long': u'-0.05369'} bag.add_tiddler(tiddler); tiddler = Tiddler("@thoughtworks") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("The Source") tiddler.fields = {u'geo.lat': u'51.51589', u'geo.long': u'-0.12523'} bag.add_tiddler(tiddler); tiddler = Tiddler("Stock Exchange") tiddler.fields = {u'geo.lat': u'51.515', u'geo.long': u'-0.099028'} bag.add_tiddler(tiddler); tiddler = Tiddler("The Barbican") tiddler.fields = {u'geo.lat': u'51.51917', u'geo.long': u'-0.09389'} bag.add_tiddler(tiddler); tiddler = Tiddler("Griffins") tiddler.fields = {u'geo.lat': u'51.5086', u'geo.long': u'-0.1206'} bag.add_tiddler(tiddler); tiddler = Tiddler("The Gherkin") tiddler.fields = {u'geo.lat': u'51.51444', u'geo.long': u'-0.08028'} bag.add_tiddler(tiddler); tiddler = Tiddler("Rosetta Stone") tiddler.fields = {u'geo.lat': u'51.519444', u'geo.long': u'-0.126944'} bag.add_tiddler(tiddler); tiddler = Tiddler("British Museum") tiddler.fields = {u'geo.lat': u'51.51944', u'geo.long': u'-0.12694'} bag.add_tiddler(tiddler); tiddler = Tiddler("St Paul's Cathedral") tiddler.fields = {u'geo.lat': u'51.5138', u'geo.long': u'-0.098'} bag.add_tiddler(tiddler); tiddler = Tiddler("Baynard's Castle") tiddler.fields = {u'geo.lat': u'51.51139', u'geo.long': u'-0.09861'} bag.add_tiddler(tiddler); tiddler = Tiddler("Fleet Street") tiddler.fields = {u'geo.lat': u'51.51417', u'geo.long': u'-0.10889'} bag.add_tiddler(tiddler); tiddler = Tiddler("St Bride's") tiddler.fields = {u'geo.lat': u'51.51389', u'geo.long': u'-0.10583'} bag.add_tiddler(tiddler); tiddler = Tiddler("NESTA") tiddler.fields = {u'geo.lat': u'51.516525', u'geo.long': u'-0.108623'} bag.add_tiddler(tiddler); tiddler = Tiddler("John Snow") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Soho") tiddler.fields = {u'geo.lat': u'51.513', u'geo.long': u'-0.135'} bag.add_tiddler(tiddler); tiddler = Tiddler("Foyles") tiddler.fields = {u'geo.lat': u'51.5147', u'geo.long': u'-0.1301'} bag.add_tiddler(tiddler); tiddler = Tiddler("@theteam") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Globe") tiddler.fields = {u'geo.lat': u'51.50806', u'geo.long': u'-0.09722'} bag.add_tiddler(tiddler); tiddler = Tiddler("Tate Modern") tiddler.fields = {u'geo.lat': u'51.50778', u'geo.long': u'-0.09917'} bag.add_tiddler(tiddler); tiddler = Tiddler("London Aquarium") tiddler.fields = {u'geo.lat': u'51.50194', u'geo.long': u'-0.11889'} bag.add_tiddler(tiddler); tiddler = Tiddler("Duck Tours") tiddler.fields = {u'geo.lat': u'51.501944', u'geo.long': u'-0.118889'} bag.add_tiddler(tiddler); tiddler = Tiddler("Vauxhall Bridge") tiddler.fields = {u'geo.lat': u'51.4875', u'geo.long': u'-0.12694'} bag.add_tiddler(tiddler); tiddler = Tiddler("Spymaster") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Fuzzy's Grub") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("@rewiredstate") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("BFI") tiddler.fields = {u'geo.lat': u'51.5072', u'geo.long': u'-0.1157'} bag.add_tiddler(tiddler); tiddler = Tiddler("Royal Festival Hall") tiddler.fields = {u'geo.lat': u'51.5058361', u'geo.long': u'-0.1167889'} bag.add_tiddler(tiddler); tiddler = Tiddler("National Theatre") tiddler.fields = {u'geo.lat': u'51.5071', u'geo.long': u'-0.1141'} bag.add_tiddler(tiddler); tiddler = Tiddler("National Map Centre") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Horseguards Parade") tiddler.fields = {u'geo.lat': u'51.50401', u'geo.long': u'-0.12979'} bag.add_tiddler(tiddler); tiddler = Tiddler("Churchill Museum") tiddler.fields = {u'geo.lat': u'51.502083', u'geo.long': u'-0.129028'} bag.add_tiddler(tiddler); tiddler = Tiddler("@bongbot") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Westminster Abbey") tiddler.fields = {u'geo.lat': u'51.49944', u'geo.long': u'-0.1275'} bag.add_tiddler(tiddler); tiddler = Tiddler("@Osmosoft") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Royal Academy") tiddler.fields = {u'geo.lat': u'51.50917', u'geo.long': u'-0.13944'} bag.add_tiddler(tiddler); tiddler = Tiddler("Marble Arch") tiddler.fields = {u'geo.lat': u'51.51306', u'geo.long': u'-0.15889'} bag.add_tiddler(tiddler); tiddler = Tiddler("Buckingham Palace") tiddler.fields = {u'geo.lat': u'51.501', u'geo.long': u'-0.142'} bag.add_tiddler(tiddler); tiddler = Tiddler("Harrods") tiddler.fields = {u'geo.lat': u'51.4995861', u'geo.long': u'-0.1635167'} bag.add_tiddler(tiddler); tiddler = Tiddler("Flat Cap Coffee Co") tiddler.fields = {u'geo.lat': u'51.497222', u'geo.long': u'-0.133901'} bag.add_tiddler(tiddler); tiddler = Tiddler("Tate Britain") tiddler.fields = {u'geo.lat': u'51.49083', u'geo.long': u'-0.12722'} bag.add_tiddler(tiddler); tiddler = Tiddler("Ranelagh Gardens") tiddler.fields = {u'geo.lat': u'51.48722', u'geo.long': u'-0.15528'} bag.add_tiddler(tiddler); tiddler = Tiddler("Natural History Museum") tiddler.fields = {u'geo.lat': u'51.4959833', u'geo.long': u'-0.1763722'} bag.add_tiddler(tiddler); tiddler = Tiddler("Charles Babbage") tiddler.fields = {u'geo.lat': u'51.495983', u'geo.long': u'-0.176372'} bag.add_tiddler(tiddler); tiddler = Tiddler("London Science Museum") tiddler.fields = {u'geo.lat': u'51.4975', u'geo.long': u'-0.17472'} bag.add_tiddler(tiddler); tiddler = Tiddler("Hyde Park Corner") tiddler.fields = {u'geo.lat': u'51.50278', u'geo.long': u'-0.15125'} bag.add_tiddler(tiddler); tiddler = Tiddler("Baker Street") tiddler.fields = {u'geo.lat': u'51.5200', u'geo.long': u'-0.1566'} bag.add_tiddler(tiddler); tiddler = Tiddler("Albert Memorial") tiddler.fields = {u'geo.lat': u'51.5025', u'geo.long': u'-0.17778'} bag.add_tiddler(tiddler); tiddler = Tiddler("Battersea Power Station") tiddler.fields = {u'geo.lat': u'51.4818', u'geo.long': u'-0.1447'} bag.add_tiddler(tiddler); tiddler = Tiddler("Out of Order") tiddler.fields = {u'geo.lat': u'51.4103', u'geo.long': u'-0.2995'} bag.add_tiddler(tiddler); tiddler = Tiddler("Hay on Wye") tiddler.fields = {u'geo.lat': u'52.08', u'geo.long': u'-3.13'} bag.add_tiddler(tiddler); tiddler = Tiddler("Mappa Mundi") tiddler.fields = {u'geo.lat': u'52.08', u'geo.long': u'-3.13'} bag.add_tiddler(tiddler); tiddler = Tiddler("Torchwood") tiddler.fields = {u'geo.lat': u'51.48528', u'geo.long': u'-3.18667'} bag.add_tiddler(tiddler); tiddler = Tiddler("Severn Bore") tiddler.fields = {u'geo.lat': u'51.85113', u'geo.long': u'-2.32951'} bag.add_tiddler(tiddler); tiddler = Tiddler("Edward Jenner") tiddler.fields = {u'geo.lat': u'51.72204', u'geo.long': u'-2.48058'} bag.add_tiddler(tiddler); tiddler = Tiddler("Edward Jenner Museum") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Locks (Devizes)") tiddler.fields = {u'geo.lat': u'51.35253', u'geo.long': u'-2.02559'} bag.add_tiddler(tiddler); tiddler = Tiddler("National Wireless Museum") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("H.M.S. Victory") tiddler.fields = {u'geo.lat': u'50.8018111', u'geo.long': u'-1.109583'} bag.add_tiddler(tiddler); tiddler = Tiddler("Dr Jekyll and Mr Hyde") tiddler.fields = {u'geo.lat': u'50.7196', u'geo.long': u'-1.8985'} bag.add_tiddler(tiddler); tiddler = Tiddler("Eden Project") tiddler.fields = {u'geo.lat': u'50.36194', u'geo.long': u'-4.74472'} bag.add_tiddler(tiddler); tiddler = Tiddler("On the occasion of the Traveling Geeks Tarry at the B.T. Tower July XXIX") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Geekery is The Social Capital of Britain") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Golden Hind") tiddler.fields = {u'geo.lat': u'50.39667', u'geo.long': u'-3.51278'} bag.add_tiddler(tiddler); tiddler = Tiddler("Soutwarke") tiddler.fields = {u'geo.lat': u'51.50611', u'geo.long': u'-0.08972'} bag.add_tiddler(tiddler); tiddler = Tiddler("Non Such") tiddler.fields = {u'geo.lat': u'51.5075', u'geo.long': u'-0.0871'} bag.add_tiddler(tiddler); tiddler = Tiddler("London Bridge") tiddler.fields = {u'geo.lat': u'51.50806', u'geo.long': u'-0.08778'} bag.add_tiddler(tiddler); tiddler = Tiddler("H.M.S. Belfast") tiddler.fields = {u'geo.lat': u'51.5066611', u'geo.long': u'-0.08125'} bag.add_tiddler(tiddler); tiddler = Tiddler("Design Museum") tiddler.fields = {u'geo.lat': u'51.502766', u'geo.long': u'-0.071862'} bag.add_tiddler(tiddler); tiddler = Tiddler("Lemuel Gulliver") tiddler.fields = {u'geo.lat': u'51.502766', u'geo.long': u'-0.071862'} bag.add_tiddler(tiddler); tiddler = Tiddler("SS Great Eastern") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Brunel Museum") tiddler.fields = {u'geo.lat': u'51.5016', u'geo.long': u'-0.0530'} bag.add_tiddler(tiddler); tiddler = Tiddler("Greenwich foot tunnel") tiddler.fields = {u'geo.lat': u'51.4866', u'geo.long': u'-0.0093'} bag.add_tiddler(tiddler); tiddler = Tiddler("Thames Barrier") tiddler.fields = {u'geo.lat': u'51.497744', u'geo.long': u'0.036679'} bag.add_tiddler(tiddler); tiddler = Tiddler("Crossness Pumping Station") tiddler.fields = {u'geo.lat': u'51.509056', u'geo.long': u'0.13833'} bag.add_tiddler(tiddler); tiddler = Tiddler("Millennium Dome") tiddler.fields = {u'geo.lat': u'51.5028167', u'geo.long': u'0.0031167'} bag.add_tiddler(tiddler); tiddler = Tiddler("National Maritime Museum") tiddler.fields = {u'geo.lat': u'51.48111', u'geo.long': u'-0.00556'} bag.add_tiddler(tiddler); tiddler = Tiddler("Greenwich Observatory") tiddler.fields = {u'geo.lat': u'51.4778111', u'geo.long': u'-0.001475'} bag.add_tiddler(tiddler); tiddler = Tiddler("Bunhill Fields") tiddler.fields = {u'geo.lat': u'51.52361', u'geo.long': u'-0.08889'} bag.add_tiddler(tiddler); tiddler = Tiddler("The Guardian") tiddler.fields = {u'geo.lat': u'51.5349', u'geo.long': u'-0.1219'} bag.add_tiddler(tiddler); tiddler = Tiddler("King's Cross") tiddler.fields = {u'geo.lat': u'51.5321', u'geo.long': u'-0.1233'} bag.add_tiddler(tiddler); tiddler = Tiddler("Darth Vader's Helmet") tiddler.fields = {u'geo.lat': u'51.50472', u'geo.long': u'-0.07833'} bag.add_tiddler(tiddler); tiddler = Tiddler("Clayton Tunnel") tiddler.fields = {u'geo.lat': u'50.91278', u'geo.long': u'-0.15389'} bag.add_tiddler(tiddler); tiddler = Tiddler("Hovercraft") tiddler.fields = {u'geo.lat': u'50.183611', u'geo.long': u'-0.531111'} bag.add_tiddler(tiddler); tiddler = Tiddler("Radar") tiddler.fields = {u'geo.lat': u'50.87', u'geo.long': u'0.346111'} bag.add_tiddler(tiddler); tiddler = Tiddler("Southwold Pier") tiddler.fields = {u'geo.lat': u'52.32993', u'geo.long': u'1.68538'} bag.add_tiddler(tiddler); tiddler = Tiddler("National Railway Museum (York)") tiddler.fields = {u'geo.lat': u'53.95980', u'geo.long': u'-1.09771'} bag.add_tiddler(tiddler); tiddler = Tiddler("Fylingdales") tiddler.fields = {u'geo.lat': u'54.3616', u'geo.long': u'-0.6697'} bag.add_tiddler(tiddler); tiddler = Tiddler("Whitby (Dracula)") tiddler.fields = {u'geo.lat': u'54.4858', u'geo.long': u'-0.6206'} bag.add_tiddler(tiddler); tiddler = Tiddler("Angel of the North") tiddler.fields = {u'geo.lat': u'54.914111', u'geo.long': u'-1.589417'} bag.add_tiddler(tiddler); tiddler = Tiddler("Southwark Bridge") tiddler.fields = {u'geo.lat': u'51.50889', u'geo.long': u'-0.09444'} bag.add_tiddler(tiddler); tiddler = Tiddler("Alexander Flemming") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("London Planetarium") tiddler.fields = {u'geo.lat': u'51.52278', u'geo.long': u'-0.15556'} bag.add_tiddler(tiddler); tiddler = Tiddler("Beamish Museum") tiddler.fields = {u'geo.lat': u'54.88194', u'geo.long': u'-1.65833'} bag.add_tiddler(tiddler); tiddler = Tiddler("Gerry Anderson") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Lacock Abbey") tiddler.fields = {u'geo.lat': u'51.41475', u'geo.long': u'-2.11718'} bag.add_tiddler(tiddler); tiddler = Tiddler("Alexandra Palace") tiddler.fields = {u'geo.lat': u'51.59389', u'geo.long': u'-0.13'} bag.add_tiddler(tiddler); tiddler = Tiddler("London Stone") tiddler.fields = {u'geo.lat': u'51.51167', u'geo.long': u'-0.08944'} bag.add_tiddler(tiddler); tiddler = Tiddler("Bloomsbury") tiddler.fields = {u'geo.lat': u'51.5262', u'geo.long': u'-0.1178'} bag.add_tiddler(tiddler); tiddler = Tiddler("Stuckism") tiddler.fields = {u'geo.lat': u'51.271111', u'geo.long': u'0.498611'} bag.add_tiddler(tiddler); tiddler = Tiddler("@clearleft") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Portmeirion") tiddler.fields = {u'geo.lat': u'52.91778', u'geo.long': u'-4.09293'} bag.add_tiddler(tiddler); tiddler = Tiddler("Baby") tiddler.fields = {u'geo.lat': u'52.91778', u'geo.long': u'-4.09293'} bag.add_tiddler(tiddler); tiddler = Tiddler("Jet Lab") tiddler.fields = {u'geo.lat': u'51.65917', u'geo.long': u'-1.22639'} bag.add_tiddler(tiddler); tiddler = Tiddler("Delia Derbyshire") tiddler.fields = {u'geo.lat': u'51.5260591', u'geo.long': u'-0.191014'} bag.add_tiddler(tiddler); tiddler = Tiddler("Bletchley Park") tiddler.fields = {u'geo.lat': u'51.99651', u'geo.long': u'-0.74276'} bag.add_tiddler(tiddler); tiddler = Tiddler("Sarah Lacy (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Tommy Flowers") tiddler.fields = {u'geo.lat': u'51.561629', u'geo.long': u'-0.238401'} bag.add_tiddler(tiddler); tiddler = Tiddler("MI6 (Shhh!)") tiddler.fields = {u'geo.lat': u'51.487194', u'geo.long': u'-0.124056'} bag.add_tiddler(tiddler); tiddler = Tiddler("Lido") tiddler.fields = {u'geo.lat': u'51.43167', u'geo.long': u'-0.13917'} bag.add_tiddler(tiddler); tiddler = Tiddler("Chatley Heath") tiddler.fields = {u'geo.lat': u'51.31523', u'geo.long': u'-0.438268'} bag.add_tiddler(tiddler); tiddler = Tiddler("Avebury") tiddler.fields = {u'geo.lat': u'51.42861', u'geo.long': u'-1.85417'} bag.add_tiddler(tiddler); tiddler = Tiddler("Glasto") tiddler.fields = {u'geo.lat': u'51.155015', u'geo.long': u'-2.585598'} bag.add_tiddler(tiddler); tiddler = Tiddler("Banksy") tiddler.fields = {u'geo.lat': u'51.5402', u'geo.long': u'-2.410989'} bag.add_tiddler(tiddler); tiddler = Tiddler("non ducco ui lanx") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Goonhilly") tiddler.fields = {u'geo.lat': u'50.04806', u'geo.long': u'-5.18194'} bag.add_tiddler(tiddler); tiddler = Tiddler("Porthcurno") tiddler.fields = {u'geo.lat': u'50.04336', u'geo.long': u'-5.65423'} bag.add_tiddler(tiddler); tiddler = Tiddler("Poldhu") tiddler.fields = {u'geo.lat': u'50.033', u'geo.long': u'-5.267'} bag.add_tiddler(tiddler); tiddler = Tiddler("tg.whatfettle.com") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Denge Sound Mirrors") tiddler.fields = {u'geo.lat': u'50.95611', u'geo.long': u'0.95389'} bag.add_tiddler(tiddler); tiddler = Tiddler("Brighton") tiddler.fields = {u'geo.lat': u'50.842941', u'geo.long': u'-0.1313120'} bag.add_tiddler(tiddler); tiddler = Tiddler("Osmosoft") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Creative Commons (CC)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Paul Downey (psd)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Down House") tiddler.fields = {u'geo.lat': u'51.33100', u'geo.long': u'0.05264'} bag.add_tiddler(tiddler); tiddler = Tiddler("Ditchling Museum") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Derek Jarman's House, Dungeness") tiddler.fields = {u'geo.lat': u'50.917', u'geo.long': u'0.967'} bag.add_tiddler(tiddler); tiddler = Tiddler("Romney, Hythe and Dymchurch Railway") tiddler.fields = {u'geo.lat': u'51.033', u'geo.long': u'1'} bag.add_tiddler(tiddler); tiddler = Tiddler("Thunderbirds") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Kew Bridge Steam Museum") tiddler.fields = {u'geo.lat': u'51.4890', u'geo.long': u'-0.2904'} bag.add_tiddler(tiddler); tiddler = Tiddler("BBC TV Centre") tiddler.fields = {u'geo.lat': u'51.51028', u'geo.long': u'-0.22611'} bag.add_tiddler(tiddler); tiddler = Tiddler("London Zoo") tiddler.fields = {u'geo.lat': u'51.53556', u'geo.long': u'-0.15583'} bag.add_tiddler(tiddler); tiddler = Tiddler("Cerne Abbas Giant") tiddler.fields = {u'geo.lat': u'50.81361', u'geo.long': u'-2.47472'} bag.add_tiddler(tiddler); tiddler = Tiddler("Ouse Valley Viaduct") tiddler.fields = {u'geo.lat': u'51.03472', u'geo.long': u'-0.11444'} bag.add_tiddler(tiddler); tiddler = Tiddler("Atmospheric railway") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Newport Transporter Bridge") tiddler.fields = {u'geo.lat': u'51.57056', u'geo.long': u'-2.98583'} bag.add_tiddler(tiddler); tiddler = Tiddler("Mossy Bottom") tiddler.fields = {u'geo.lat': u'51.11833', u'geo.long': u'0.19056'} bag.add_tiddler(tiddler); tiddler = Tiddler("Hovercraft Museum") tiddler.fields = {u'geo.lat': u'50.80759', u'geo.long': u'-1.20974'} bag.add_tiddler(tiddler); tiddler = Tiddler("Museum of the History of Science, Oxford") tiddler.fields = {u'geo.lat': u'51.75443', u'geo.long': u'-1.25519'} bag.add_tiddler(tiddler); tiddler = Tiddler("Alan Turing") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Rutherford Appleton Laboratory") tiddler.fields = {u'geo.lat': u'51.57333', u'geo.long': u'-1.31472'} bag.add_tiddler(tiddler); tiddler = Tiddler("Bodleian Library") tiddler.fields = {u'geo.lat': u'51.753972', u'geo.long': u'-1.255139'} bag.add_tiddler(tiddler); tiddler = Tiddler("Imperial War Museum North") tiddler.fields = {u'geo.lat': u'53.469722', u'geo.long': u'-2.298889'} bag.add_tiddler(tiddler); tiddler = Tiddler("Jodrell Bank Observatory") tiddler.fields = {u'geo.lat': u'53.23625', u'geo.long': u'-2.307139'} bag.add_tiddler(tiddler); tiddler = Tiddler("Sellafield") tiddler.fields = {u'geo.lat': u'54.4205', u'geo.long': u'-3.4975'} bag.add_tiddler(tiddler); tiddler = Tiddler("Hunterian Museum and Art Gallery") tiddler.fields = {u'geo.lat': u'55.87194', u'geo.long': u'-4.28861'} bag.add_tiddler(tiddler); tiddler = Tiddler("Jeff Saperstein (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Tom Foremski (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Jim 'Sky' Schuyler (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Susan Bratton (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Robert Scoble (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Meghan Asha (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Sir Tim Berners-Lee") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Adastral Park") tiddler.fields = {u'geo.lat': u'52.05889', u'geo.long': u'1.27889'} bag.add_tiddler(tiddler); tiddler = Tiddler("Douglas adams") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Cleopatra's Needle") tiddler.fields = {u'geo.lat': u'40.7796306', u'geo.long': u'-73.9654'} bag.add_tiddler(tiddler); tiddler = Tiddler("London Eye") tiddler.fields = {u'geo.lat': u'51.5033', u'geo.long': u'-0.1197'} bag.add_tiddler(tiddler); tiddler = Tiddler("Whitehall") tiddler.fields = {u'geo.lat': u'51.50417', u'geo.long': u'-0.12639'} bag.add_tiddler(tiddler); tiddler = Tiddler("Royal Geographical Society") tiddler.fields = {u'geo.lat': u'51.5013', u'geo.long': u'-0.1754'} bag.add_tiddler(tiddler); tiddler = Tiddler("Royal Society") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Royal Institution") tiddler.fields = {u'geo.lat': u'51.5098', u'geo.long': u'-0.1425'} bag.add_tiddler(tiddler); tiddler = Tiddler("Admiralty Arch") tiddler.fields = {u'geo.lat': u'51.5067583', u'geo.long': u'-0.1286917'} bag.add_tiddler(tiddler); tiddler = Tiddler("British Library") tiddler.fields = {u'geo.lat': u'51.52944', u'geo.long': u'-0.12694'} bag.add_tiddler(tiddler); tiddler = Tiddler("Senate House (University of London)") tiddler.fields = {u'geo.lat': u'51.5210', u'geo.long': u'-0.1287'} bag.add_tiddler(tiddler); tiddler = Tiddler("West End theatre") tiddler.fields = {u'geo.lat': u'51.51139', u'geo.long': u'-0.12806'} bag.add_tiddler(tiddler); tiddler = Tiddler("Lewis Carroll") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Thinktank, Birmingham") tiddler.fields = {u'geo.lat': u'52.4829083', u'geo.long': u'-1.8860583'} bag.add_tiddler(tiddler); tiddler = Tiddler("Kempton Park Steam Engines") tiddler.fields = {u'geo.lat': u'51.4259', u'geo.long': u'-0.4050'} bag.add_tiddler(tiddler); tiddler = Tiddler("William Oughtred") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("John Foxx") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Kingsway tramway subway") tiddler.fields = {u'geo.lat': u'51.518361', u'geo.long': u'-0.120778'} bag.add_tiddler(tiddler); tiddler = Tiddler("British Museum") tiddler.fields = {u'geo.lat': u'51.51944', u'geo.long': u'-0.12694'} bag.add_tiddler(tiddler); tiddler = Tiddler("Waltham Abbey Royal Gunpowder Mills") tiddler.fields = {u'geo.lat': u'51.693', u'geo.long': u'-0.009'} bag.add_tiddler(tiddler); tiddler = Tiddler("Elstree Studios") tiddler.fields = {u'geo.lat': u'51.6587', u'geo.long': u'-0.2758'} bag.add_tiddler(tiddler); tiddler = Tiddler("Forbidden Planet (bookstore)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Museum of Scotland") tiddler.fields = {u'geo.lat': u'55.94694', u'geo.long': u'-3.19056'} bag.add_tiddler(tiddler); tiddler = Tiddler("Dolly (sheep)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("RAF Fauld Explosion") tiddler.fields = {u'geo.lat': u'52.847117', u'geo.long': u'-1.730608'} bag.add_tiddler(tiddler); tiddler = Tiddler("John Napier") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Gonville and Caius College, Cambridge") tiddler.fields = {u'geo.lat': u'52.205878', u'geo.long': u'0.117867'} bag.add_tiddler(tiddler); tiddler = Tiddler("Acorn Computers") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Forth Railway Bridge") tiddler.fields = {u'geo.lat': u'56.000421', u'geo.long': u'-3.388726'} bag.add_tiddler(tiddler); tiddler = Tiddler("John Logie Baird") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Kelvedon Hatch Secret Nuclear Bunker") tiddler.fields = {u'geo.lat': u'51.671806', u'geo.long': u'0.256556'} bag.add_tiddler(tiddler); tiddler = Tiddler("Cuffley") tiddler.fields = {u'geo.lat': u'51.7109', u'geo.long': u'-0.1134'} bag.add_tiddler(tiddler); tiddler = Tiddler("Bank of England") tiddler.fields = {u'geo.lat': u'51.51406', u'geo.long': u'-0.08839'} bag.add_tiddler(tiddler); tiddler = Tiddler("Somerset House") tiddler.fields = {u'geo.lat': u'51.511028', u'geo.long': u'-0.117194'} bag.add_tiddler(tiddler); tiddler = Tiddler("Cannon Street station") tiddler.fields = {u'geo.lat': u'51.5104', u'geo.long': u'-0.0907'} bag.add_tiddler(tiddler); tiddler = Tiddler("Borough Market") tiddler.fields = {u'geo.lat': u'51.5049083', u'geo.long': u'-0.0910889'} bag.add_tiddler(tiddler); tiddler = Tiddler("Westminster Bridge") tiddler.fields = {u'geo.lat': u'51.50083', u'geo.long': u'-0.12194'} bag.add_tiddler(tiddler); tiddler = Tiddler("Hungerford Bridge and Golden Jubilee Bridges") tiddler.fields = {u'geo.lat': u'51.50611', u'geo.long': u'-0.12'} bag.add_tiddler(tiddler); tiddler = Tiddler("Royal College of Surgeons of England#Hunterian Museum at the Royal College of Surgeons of England") tiddler.fields = {u'geo.lat': u'51.51528', u'geo.long': u'-0.11583'} bag.add_tiddler(tiddler); tiddler = Tiddler("Monument to the Great Fire of London") tiddler.fields = {u'geo.lat': u'51.51013', u'geo.long': u'-0.086001'} bag.add_tiddler(tiddler); tiddler = Tiddler("Lloyd's building") tiddler.fields = {u'geo.lat': u'51.51306', u'geo.long': u'-0.082361'} bag.add_tiddler(tiddler); tiddler = Tiddler("MONIAC Computer") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("The Fish-Slapping Dance") tiddler.fields = {u'geo.lat': u'51.4975', u'geo.long': u'-0.174722'} bag.add_tiddler(tiddler); tiddler = Tiddler("Arthur Conan Doyle") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Clifford Cocks") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Lambeth Bridge") tiddler.fields = {u'geo.lat': u'51.49444', u'geo.long': u'-0.12306'} bag.add_tiddler(tiddler); tiddler = Tiddler("J. R. R. Tolkien") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Wellcome Trust Sanger Institute") tiddler.fields = {u'geo.lat': u'52.083', u'geo.long': u'0.183'} bag.add_tiddler(tiddler); tiddler = Tiddler("Michelin House") tiddler.fields = {u'geo.lat': u'51.4933306', u'geo.long': u'-0.1688778'} bag.add_tiddler(tiddler); tiddler = Tiddler("Chelsea Bridge") tiddler.fields = {u'geo.lat': u'51.48472', u'geo.long': u'-0.15'} bag.add_tiddler(tiddler); tiddler = Tiddler("Millbank Prison") tiddler.fields = {u'geo.lat': u'51.49139', u'geo.long': u'-0.12889'} bag.add_tiddler(tiddler); tiddler = Tiddler("Albert Bridge, London") tiddler.fields = {u'geo.lat': u'51.48222', u'geo.long': u'-0.1666667'} bag.add_tiddler(tiddler); tiddler = Tiddler("Battersea Bridge") tiddler.fields = {u'geo.lat': u'51.48111', u'geo.long': u'-0.1725'} bag.add_tiddler(tiddler); tiddler = Tiddler("Old Operating Theatre") tiddler.fields = {u'geo.lat': u'51.505', u'geo.long': u'-0.08806'} bag.add_tiddler(tiddler); tiddler = Tiddler("Cross Bones") tiddler.fields = {u'geo.lat': u'51.5042', u'geo.long': u'-0.093'} bag.add_tiddler(tiddler); tiddler = Tiddler("Wimbledon Windmill") tiddler.fields = {u'geo.lat': u'51.438', u'geo.long': u'-0.232'} bag.add_tiddler(tiddler); tiddler = Tiddler("St Olave Hart Street") tiddler.fields = {u'geo.lat': u'51.5108444', u'geo.long': u'-0.0796889'} bag.add_tiddler(tiddler); tiddler = Tiddler("Docklands Light Railway") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("London Olympic Stadium") tiddler.fields = {u'geo.lat': u'51.53861', u'geo.long': u'-0.01639'} bag.add_tiddler(tiddler); tiddler = Tiddler("St Katharine Docks") tiddler.fields = {u'geo.lat': u'51.5070', u'geo.long': u'-0.0713'} bag.add_tiddler(tiddler); tiddler = Tiddler("Isaac Newton") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("The Eagle (pub)") tiddler.fields = {u'geo.lat': u'52.204', u'geo.long': u'0.1182'} bag.add_tiddler(tiddler); tiddler = Tiddler("Davenports") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("BT Tower") tiddler.fields = {u'geo.lat': u'51.5215', u'geo.long': u'-0.1389'} bag.add_tiddler(tiddler); tiddler = Tiddler("JD Lasica (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Howard Rheingold (Travelling Geeks)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Ayelet Noff (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Rushton Triangular Lodge") tiddler.fields = {u'geo.lat': u'52.4393', u'geo.long': u'-0.7799'} bag.add_tiddler(tiddler); tiddler = Tiddler("Falkirk Wheel") tiddler.fields = {u'geo.lat': u'56.00028', u'geo.long': u'-3.84167'} bag.add_tiddler(tiddler); tiddler = Tiddler("Renee Blodgett (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Craig Newmark (Travelling Geek)") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Pontcysyllte Aqueduct") tiddler.fields = {u'geo.lat': u'52.97053', u'geo.long': u'-3.08783'} bag.add_tiddler(tiddler); tiddler = Tiddler("Trafalgar Square") tiddler.fields = {u'geo.lat': u'51.50806', u'geo.long': u'-0.12806'} bag.add_tiddler(tiddler); tiddler = Tiddler("Royal Albert Hall") tiddler.fields = {u'geo.lat': u'51.500944', u'geo.long': u'-0.1774361'} bag.add_tiddler(tiddler); tiddler = Tiddler("Ironbridge") tiddler.fields = {u'geo.lat': u'52.627245', u'geo.long': u'-2.485533'} bag.add_tiddler(tiddler); tiddler = Tiddler("Beatles") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Cannon Street Railway Bridge") tiddler.fields = {u'geo.lat': u'51.50833', u'geo.long': u'-0.09194'} bag.add_tiddler(tiddler); tiddler = Tiddler("The Tower") tiddler.fields = {u'geo.lat': u'51.50806', u'geo.long': u'-0.07611'} bag.add_tiddler(tiddler); tiddler = Tiddler("Tower Bridge") tiddler.fields = {u'geo.lat': u'51.50556', u'geo.long': u'-0.07556'} bag.add_tiddler(tiddler); tiddler = Tiddler("St. James's Park") tiddler.fields = {u'geo.lat': u'51.50167', u'geo.long': u'-0.13194'} bag.add_tiddler(tiddler); tiddler = Tiddler("Houses of Parliament") tiddler.fields = {u'geo.lat': u'51.499306', u'geo.long': u'-0.12475'} bag.add_tiddler(tiddler); tiddler = Tiddler("London IMAX") tiddler.fields = {u'geo.lat': u'51.505', u'geo.long': u'-0.11361'} bag.add_tiddler(tiddler); tiddler = Tiddler("Waterloo Bridge") tiddler.fields = {u'geo.lat': u'51.50861', u'geo.long': u'-0.11694'} bag.add_tiddler(tiddler); tiddler = Tiddler("Charing Cross") tiddler.fields = {u'geo.lat': u'51.5073', u'geo.long': u'-0.12755'} bag.add_tiddler(tiddler); tiddler = Tiddler("Blackfriars Bridges") tiddler.fields = {u'geo.lat': u'51.50972', u'geo.long': u'-0.10444'} bag.add_tiddler(tiddler); tiddler = Tiddler("Millennium Bridge") tiddler.fields = {u'geo.lat': u'51.510173', u'geo.long': u'-0.098438639'} bag.add_tiddler(tiddler); tiddler = Tiddler("River Thames") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Thames Estuary") tiddler.fields = {u'geo.lat': u'51.5', u'geo.long': u'0.583'} bag.add_tiddler(tiddler); tiddler = Tiddler("North Sea") tiddler.fields = {u'geo.lat': u'55', u'geo.long': u'1.9'} bag.add_tiddler(tiddler); tiddler = Tiddler("Irish Sea") tiddler.fields = {u'geo.lat': u'53.72167', u'geo.long': u'-5.17722'} bag.add_tiddler(tiddler); tiddler = Tiddler("Ley Lines") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("Radio Broadcasting") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("The City") tiddler.fields = {u'geo.lat': u'51.5155', u'geo.long': u'-0.0922'} bag.add_tiddler(tiddler); tiddler = Tiddler("Buzby") tiddler.fields = {u'geo.lat': u'', u'geo.long': u''} bag.add_tiddler(tiddler); tiddler = Tiddler("London Transport Museum") tiddler.fields = {u'geo.lat': u'51.51194', u'geo.long': u'-0.12167'} bag.add_tiddler(tiddler); tiddler = Tiddler("Tottenham Court Road") tiddler.fields = {u'geo.lat': u'51.5207', u'geo.long': u'-0.1345'} bag.add_tiddler(tiddler); return bag
TiddlerOne.text = u'c tiddler one content' TiddlerOne.tags = ['tagone', 'tagtwo'] TiddlerTwo = Tiddler('TiddlerTwo') TiddlerTwo.modifier = u'AuthorTwo' TiddlerTwo.text = u'b tiddler two content' TiddlerThree = Tiddler('TiddlerThree') TiddlerThree.modifier = u'AuthorThree' TiddlerThree.text = u'a tiddler three content' TiddlerThree.tags = [u'tagone', u'tagthree'] tiddlers = [TiddlerOne, TiddlerTwo, TiddlerThree] bagone = Bag(name='bagone') bagone.add_tiddler(tiddlers[0]) bagtwo = Bag(name='bagtwo') bagtwo.add_tiddler(tiddlers[1]) bagthree = Bag(name='bagthree') bagthree.add_tiddler(tiddlers[2]) bagfour = Bag(name='bagfour') bagfour.add_tiddler(tiddlers[0]) bagfour.add_tiddler(tiddlers[1]) bagfour.add_tiddler(tiddlers[2]) recipe_list = [ [bagone, u'select=title:TiddlerOne'], [bagtwo, u'select=title:TiddlerTwo'], [bagthree, u'select=tag:tagone;select=tag:tagthree'] ]
# to the database to load the policies of # the same bag over and over. policies = {} for tiddler in tiddlers: bag_name = tiddler.bag try: policies[bag_name].allows(usersign, 'read') except KeyError: bag = Bag(tiddler.bag) bag = store.get(bag) policy = bag.policy policies[bag_name] = policy policies[bag_name].allows(usersign, 'read') tiddler.recipe = recipe.name tmp_bag.add_tiddler(tiddler) return send_tiddlers(environ, start_response, tmp_bag) def list(environ, start_response): """ Get a list of all recipes the current user can read. """ store = environ['tiddlyweb.store'] recipes = store.list_recipes() kept_recipes = [] for recipe in recipes: try: recipe = store.get(recipe) recipe.policy.allows(environ['tiddlyweb.usersign'], 'read')
except NoRecipeError, exc: raise HTTP404('unable to edit %s, recipe %s not found: %s' % (tiddler.title, recipe_name, exc)) except NoBagError, exc: raise HTTP404('unable to edit %s: %s' % (tiddler.title, exc)) bag = Bag(tiddler.bag) try: tiddler = store.get(tiddler) bag = store.get(bag) except (NoTiddlerError, NoBagError), exc: raise HTTP404('tiddler %s not found: %s' % (tiddler.title, exc)) bag.policy.allows(usersign, 'write') output_bag = Bag('output', tmpbag=True) output_bag.add_tiddler(tiddler) def create_dynamic_recipe(environ,recipeDefinition): recipe = Recipe('myRecipe') recipe.set_recipe(recipeDefinition) recipe.store = environ['tiddlyweb.store'] return recipe def add_magic_tiddler(bag, title, text): tiddler = Tiddler(title, 'tmp') tiddler.text = text tiddler.tags = ['excludeLists'] bag.add_tiddler(tiddler) add_magic_tiddler(output_bag, 'MainMenu', '[[Back to TiddlyWeb|%s]]' % tiddler_url(environ, tiddler)) add_magic_tiddler(output_bag, 'DefaultTiddlers', '[[%s]]' % tiddler_name) add_magic_tiddler(output_bag, 'SiteTitle', 'Editor for %s' % tiddler_name)
def tiddler_as(self, tiddler): bag = Bag('tmpbag', tmpbag=True) bag.add_tiddler(tiddler) return self.list_tiddlers(bag)
def tiddler_as(self, tiddler): template_env = Environment(loader=FileSystemLoader('templates')) self.template = template_env.get_template('autoPlayRelated.html') bag = Bag('tmpbag', tmpbag=True) bag.add_tiddler(tiddler) return self.list_tiddlers(bag)
def tiddler_as(self, tiddler): bag = Bag('tmpbag', tmpbag=True) bag.add_tiddler(tiddler) return self.list_tiddlers(bag)