title: $:/plugins/tiddlywiki/geospatial/demo/real-estate-demo caption: Real Estate Demo tags: $:/tags/GeospatialDemo \define default-display-filter() [get] \define default-limit() 10 This is a list of all the tiddlers containing ~GeoJSON markers in this wiki (identified by the tag <>) viewed as both a map and a table. <$let schema={{$:/plugins/tiddlywiki/geospatial/demo/real-estate-demo/schema}} >
<$list filter="[jsonindexes[columns]]" variable="index"> <$let config={{{ [jsonget[columns],,[name]addprefix[$:/config/geospatial/demo/real-estate-demo/columns/]] }}} >
<$checkbox tiddler=<> field="visible" checked="yes" unchecked="no" default="yes"> <$text text={{{ [jsonget[columns],,[caption]] }}}/>
Sorting by <$select tiddler="$:/config/geospatial/demo/real-estate-demo/sort-field" default="title"> <$list filter="[jsonindexes[columns]]" variable="index"> <$checkbox tiddler="$:/config/geospatial/demo/real-estate-demo/sort-order" field="text" checked="reverse" unchecked="normal" default="normal"> Reverse sort order
Search: <$edit-text tiddler="$:/config/geospatial/demo/real-estate-demo/search" tag="input"/>
Limit: <$edit-text tiddler="$:/config/geospatial/demo/real-estate-demo/limit" tag="input"/>
<$list filter="[jsonindexes[columns]]" variable="index"> <$let config={{{ [jsonget[columns],,[name]addprefix[$:/config/geospatial/demo/real-estate-demo/columns/]] }}} > <$list filter="[get[visible]else[yes]match[yes]]" variable="ignore"> <$let sortField={{{ [[$:/config/geospatial/demo/real-estate-demo/sort-field]get[text]else[title]] }}} sortOrder={{{ [[$:/config/geospatial/demo/real-estate-demo/sort-order]get[text]else[normal]] }}} limit={{{ [[$:/config/geospatial/demo/real-estate-demo/limit]get[text]] :else[] }}} > <$list filter="[all[shadows+tiddlers]tag[$:/tags/GeoMarker]search:*{$:/config/geospatial/demo/real-estate-demo/search}nsortorderlimit]"> <$let rowTiddler=<> > <$setmultiplevariables $names="[jsonindexes[variables]sort[]]" $values="[jsonindexes[variables]sort[]] :map[jsonget[variables],] :map[subfilter]" > <$list filter="[jsonindexes[columns]]" variable="index"> <$let config={{{ [jsonget[columns],,[name]addprefix[$:/config/geospatial/demo/real-estate-demo/columns/]] }}} > <$list filter="[get[visible]else[yes]match[yes]]" variable="ignore">
<$text text={{{ [jsonget[columns],,[caption]] }}}/>
<$let fieldname={{{ [jsonget[columns],,[name]] }}} displayFilter={{{ [jsonget[columns],,[display]] :else[] }}} > <$text text={{{ [subfilter] }}}/>