Conditionally change colour of stroke or marker on map

What high-level problem are you trying to solve?
When selecting an entity on a map it would be very useful for this to have a dynamic property based on a value within the entity. Most especially in my case 'last updated' - it would be extremely useful if there was a way to see if the entity has been updated in the previous X months.

Currently I can change the stroke / marker-color when updating an entity, which is great for 'within round' progress but this then become 'static' when next loaded.

At present the enumerator needs to select each entity on a map to check when it was last updated, or it is possible to filter entities on a map to only show those that have not been updated within a given timeframe (I think that is sub-optimal as it doesn't really show the 'status', just what's left - potentially confusing)

Any ideas on how ODK could help you solve it?
Well, all I want for Christmas....

Ideally something such as including a parameter within the select_one_from_file with map appearance at the point of loading the map. This parameter would set stroke / marker-color based on a value in the entity (so it could be more flexible than date-specific) - e.g. if(instance('myentity')/root/item[*each-item*]/update = [pseudo-date-diff-calculation],stroke='#0000ff',stroke='#f8ef00') - obviously that needs to be properly coded to loop through each entity being loaded, but hopefully that gives the essence. Maybe it needs to be an override if there is an existing strok/marker-color, or some other form of styling, but something visual!

Upload any helpful links, sketches, and videos.

1 Like