2023-02-13 22:44:39 +00:00
title: $:/plugins/tiddlywiki/geospatial/demo/real-estate-demo
caption: Real Estate Demo
tags: $:/tags/GeospatialDemo
This is a list of all the tiddlers containing ~GeoJSON markers in this wiki (identified by the tag <<tag "$:/tags/GeoMarker">>) viewed as both a map and a table.
<$let
schema={{$:/plugins/tiddlywiki/geospatial/demo/real-estate-demo/schema}}
>
2023-02-28 09:36:02 +00:00
<div>
<$list filter="[<schema>jsonindexes[fields]]" variable="index">
<$let
2023-03-03 09:50:54 +00:00
config={{{ [<schema>jsonget[fields],<index>,[name]addprefix[$:/config/geospatial/demo/real-estate-demo/fields/]] }}}
2023-02-28 09:36:02 +00:00
>
<div>
<$checkbox tiddler=<<config>> field="visible" checked="yes" unchecked="no" default="yes">
<$text text={{{ [<schema>jsonget[fields],<index>,[caption]] }}}/>
</$checkbox>
</div>
</$let>
</$list>
</div>
2023-03-03 09:50:54 +00:00
<div>
Sorting by
<$select tiddler="$:/config/geospatial/demo/real-estate-demo/sort-field" default="title">
<$list filter="[<schema>jsonindexes[fields]]" variable="index">
<option value={{{ [<schema>jsonget[fields],<index>,[name]] }}}>
<$text text={{{ [<schema>jsonget[fields],<index>,[caption]] }}}/>
</option>
</$list>
</$select>
<$checkbox tiddler="$:/config/geospatial/demo/real-estate-demo/sort-order" field="text" checked="reverse" unchecked="normal" default="normal">
Reverse sort order
</$checkbox>
</div>
2023-02-13 22:44:39 +00:00
<table>
2023-02-28 09:36:02 +00:00
<thead>
<tr>
<$list filter="[<schema>jsonindexes[fields]]" variable="index">
<$let
2023-03-03 09:50:54 +00:00
config={{{ [<schema>jsonget[fields],<index>,[name]addprefix[$:/config/geospatial/demo/real-estate-demo/fields/]] }}}
2023-02-28 09:36:02 +00:00
>
<$list filter="[<config>get[visible]else[yes]match[yes]]" variable="ignore">
<th>
<$text text={{{ [<schema>jsonget[fields],<index>,[caption]] }}}/>
</th>
</$list>
</$let>
</$list>
</tr>
</thead>
<tbody>
2023-03-03 09:50:54 +00:00
<$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]] }}}
>
<$list filter="[all[shadows+tiddlers]tag[$:/tags/GeoMarker]sort<sortField>order<sortOrder>]">
<tr>
<$list filter="[<schema>jsonindexes[fields]]" variable="index">
<$let
config={{{ [<schema>jsonget[fields],<index>,[name]addprefix[$:/config/geospatial/demo/real-estate-demo/fields/]] }}}
>
<$list filter="[<config>get[visible]else[yes]match[yes]]" variable="ignore">
<td>
<$let
fieldname={{{ [<schema>jsonget[fields],<index>,[name]] }}}
>
<$text text={{{ [<currentTiddler>get<fieldname>] }}}/>
</$let>
</td>
</$list>
</$let>
</$list>
</tr>
</$list>
</$let>
2023-02-28 09:36:02 +00:00
</tbody>
2023-02-13 22:44:39 +00:00
</table>
</$let>
<ul>
<$list filter="[all[shadows+tiddlers]tag[$:/tags/GeoMarker]sort[caption]]">
<li>
<$link>
<$view field="caption"><$view field="title"/></$view>
</$link>
</li>
</$list>
</ul>