mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-11-09 11:29:58 +00:00
99 lines
2.8 KiB
Plaintext
99 lines
2.8 KiB
Plaintext
title: $:/plugins/tiddlywiki/geospatial/demo/ui/geomarker
|
|
|
|
\define completion-actions()
|
|
<$action-log/>
|
|
<$action-setfield $tiddler="$:/temp/_StatusCode" text=<<status>>/>
|
|
<$action-setfield $tiddler="$:/temp/_StatusText" text=<<statusText>>/>
|
|
<$action-setfield $tiddler="$:/temp/_Error" text=<<error>>/>
|
|
<$action-setfield $tiddler="$:/temp/_Result" text=<<data>>/>
|
|
<$action-setfield $tiddler="$:/temp/_Headers" text=<<headers>>/>
|
|
<$list filter="[<status>compare:number:gteq[200]compare:number:lteq[299]]" variable="ignore">
|
|
<$action-setfield $tiddler="$:/temp/_IsochroneLayer" text={{{ [<data>] }}} tags="$:/tags/GeoLayer"/>
|
|
</$list>
|
|
\end
|
|
|
|
\define progress-actions()
|
|
<$action-log message="In progress-actions"/>
|
|
<$action-log/>
|
|
\end
|
|
|
|
\define payload-source()
|
|
\rules only transcludeinline transcludeblock filteredtranscludeinline filteredtranscludeblock
|
|
{
|
|
"departure_searches": [
|
|
{
|
|
"id": "My first isochrone",
|
|
"coords": {
|
|
"lat": {{!!lat}},
|
|
"lng": {{!!long}}
|
|
},
|
|
"departure_time": "2021-09-27T08:00:00Z",
|
|
"travel_time": 5400,
|
|
"transportation": {
|
|
"type": "driving"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
\end
|
|
|
|
\define get-traveltime-actions()
|
|
<$wikify name="payload" text=<<payload-source>>>
|
|
<$action-log $message="Making payload"/>
|
|
<$action-log/>
|
|
<$action-sendmessage
|
|
$message="tm-http-request"
|
|
url="https://api.traveltimeapp.com/v4/time-map"
|
|
method="POST"
|
|
header-accept="application/geo+json"
|
|
header-Content-Type="application/json"
|
|
password-header-X-Api-Key="traveltime-secret-key"
|
|
password-header-X-Application-Id="traveltime-application-id"
|
|
body=<<payload>>
|
|
var-currentTiddler=<<currentTiddler>>
|
|
bind-status="$:/temp/plugins/tiddlywiki/geospatial/demo/traveltime/status"
|
|
bind-progress="$:/temp/plugins/tiddlywiki/geospatial/demo/traveltime/progress"
|
|
oncompletion=<<completion-actions>>
|
|
onprogress=<<progress-actions>>
|
|
/>
|
|
</$wikify>
|
|
\end
|
|
|
|
!! Mapped
|
|
|
|
<$geomap
|
|
markers="[<currentTiddler>]"
|
|
/>
|
|
|
|
!! Distance to other markers
|
|
|
|
<$let
|
|
thisLocation={{{ [geopoint{!!lat},{!!long}] }}}
|
|
>
|
|
<ul>
|
|
<$list filter="[all[shadows+tiddlers]tag[$:/tags/GeoMarker]sort[caption]] -[<currentTiddler>]">
|
|
<li>
|
|
<$link><$transclude field="caption"><$view field="title"/></$transclude></$link>
|
|
--
|
|
<$let
|
|
otherLocation={{{ [geopoint{!!lat},{!!long}] }}}
|
|
>
|
|
<$text text={{{ [geodistance<thisLocation>,<otherLocation>,[miles]fixed[0]] }}}/> miles
|
|
</$let>
|
|
</li>
|
|
</$list>
|
|
</ul>
|
|
</$let>
|
|
|
|
!! Travel Time
|
|
|
|
<$button actions=<<get-traveltime-actions>>>
|
|
Call ~TravelTime
|
|
</$button>
|
|
|
|
|Status |<$text text={{$:/temp/plugins/tiddlywiki/geospatial/demo/traveltime/status}}/> |
|
|
|Progress |<$text text={{$:/temp/plugins/tiddlywiki/geospatial/demo/traveltime/progress}}/> |
|
|
|Status Code |<$text text={{$:/temp/_StatusCode}}/> |
|
|
|Status Text |<$text text={{$:/temp/_StatusText}}/> |
|
|
|Error |<$text text={{$:/temp/_Error}}/> |
|