USEPA/TADAShiny

Build interactivity into new "Flag Sites" tab

Opened this issue · 0 comments

Describe the solution you'd like

This issue is related to the nearby sites issue which @renaemyers is working on: #136

Let's call this new tab "Flag Sites".

TADA_FindNearbySites flags sites that are within 100m of each other and provides those nearby sites with a new TADA_MonitoringLocationID which is composed of the multiple (two or more) original MonitoringLocationID's that fall within 100m radius of each other. This function, along with the other location review functions for this tab could be run with their defaults automatically when a user selects the tab.

From there, the tab should include a way for a user to supply a value to use for the distance/radii if desired. If they choose to do that, there could be a button they press that re-runs the TADA_FindNearbySites function with that new value.

After that, users should be able to sift through each site pairing (maybe from a drop down menu - open to other ideas), and the map would zoom to the location of the selected pairing. At that point, users can review the map/pairing. If they are not happy with the pairing, we need another option on the tab that they can select to un-pair the sites (this would return their TADA_MonitoringLocationID to their individual ID's instead of the concatenation). Finally, users may want to supply their own TADA_MonitoringLocationID for the pairing which would also overwrite the autogenerated/default TADA_MonitoringLocationID.

Additional context

This functionality may be difficult to replicate on the package side. At this point, we already have the site flag functions in the package, but not the map. Suggest to develop a new map function for the package that can be used in the R shiny app for this tab. The map and other code to replicate the shiny functionality discusses here could also be added to the TADA Module 1 vignette as well. See issue: USEPA/EPATADA#464

Reminders for TADA contributors addressing this issue

New features should include all of the following work:

  • Create the function/code.

  • Document all code using comments to describe what is does.

  • Create tests.

  • Add new functionality to TADA package vignette as well if relevant.