#' Filter a given routes dataset
#'
#' Apply user filtering to the routes dataset
#'
#' @param routes tibble. Full dataset
#' @param dep vector. Minimum and maximum routes starting elevation
#' @param deniv vector. Minimum and maximum routes elevetion gain
#' @param diff vector. Minimum and maximum routes ski difficulty
#' @param expo numeric. Maximum routes exposition
#' @param ski numeric. Minimum routes skiabilite
#'
#' @return tibble. Filtered routes
#'
#' @noRd
#'
#' @importFrom dplyr filter
filter_ski_routes <- function(routes, dep = c(500, 2000), deniv = c(100, 10000), diff = c(1, 5), expo = "", ski = "") {
expo <- as.numeric(expo)
ski <- as.numeric(ski)
filtered_routes <- filter(routes,
dep[1] <= altitude & altitude <= dep[2]
&
deniv[1] <= denivele & denivele <= deniv[2]
&
diff[1] <= as.integer(difficulte)
&
as.integer(difficulte) <= diff[2]
&
(is.na(expo) | exposition <= expo)
&
(is.na(ski) | skiabilite >= ski)
)
filtered_routes
}
#' Filter a given routes dataset
#'
#' Apply user filtering to the routes dataset
#'
#' @param db_conn SQLiteConnection.
#' @param routes tibble. Full dataset
#'
#' @return tibble. Filtered routes
#'
#' @noRd
#'
#' @importFrom dplyr left_join
bind_skiabilite <- function(db_conn, routes) {
routes %>%
left_join(get_latest_skiabilite(db_conn), "route")
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.