Commit 335b0d36 authored by Jonathan Mang's avatar Jonathan Mang :bulb:
Browse files

chore: moving towards integration of the datepicker

for temporal restriction
Showing with 73 additions and 4 deletions
+73 -4
......@@ -25,6 +25,7 @@ Date: 2021-03-09
Imports:
data.table,
magrittr,
daterangepicker,
DT,
graphics,
shiny,
......
......@@ -519,4 +519,26 @@ print_runtime <-
)
}
datepicker_get_list_of_ranges <- function() {
res <- list(
"Today" = c(Sys.Date(), Sys.Date()),
"Yesterday" = c(Sys.Date() - 1, Sys.Date()),
"Last 3 days" = c(Sys.Date() - 2, Sys.Date()),
"Last 7 days" = c(Sys.Date() - 6, Sys.Date()),
"Last 45 days" = c(Sys.Date() - 44, Sys.Date())
)
## Get list of years:
for (i in 0:4) {
if (i == 0) {
## end = today
end = Sys.Date()
} else {
end = as.Date(paste0(as.numeric(format(Sys.Date(), format = "%Y")) - i, "-12-31"))
}
year <- as.character(as.numeric(format(Sys.Date(), format = "%Y")) - i)
start <- as.Date(paste0(year, "-01-01"))
res[[year]] <- c(start, end)
}
return(res)
}
......@@ -925,6 +925,30 @@ module_config_server <-
selected = NULL
)
})
## Date-time picker for date restriction:
shiny::observeEvent(eventExpr = input$datetime_picker,
handlerExpr = {
# shiny::showModal(shiny::modalDialog(
# title = "Date selected",
# paste0(
# "Start date and time: ",
# input$datetime_picker[[1]],
# "\nEnd date and time: ",
# input$datetime_picker[[2]]
# ),
# easyClose = TRUE
# ))
output$datetime_picker_info <-
shiny::renderText({
paste0(
"Start date and time: ",
input$datetime_picker[[1]],
"\n\nEnd date and time: ",
input$datetime_picker[[2]]
)
})
})
}
#' @title module_config_ui
......@@ -1374,6 +1398,26 @@ module_config_ui <- function(id) {
"display:center-align;")),
width = 12
),
box(
id = ns("config_select_datetime_picker_box"),
title = "Pick the date and time to be analyzed",
h4(htmlOutput(ns("datetime_picker_info"))),
daterangepicker::daterangepicker(
inputId = ns("datetime_picker"),
# label = "Please pick a date range ",
start = Sys.Date() - 30, end = Sys.Date(),
style = "width:100%; border-radius:4px",
ranges = datepicker_get_list_of_ranges(),
options = list(
showDropdowns = TRUE,
timePicker = TRUE,
timePicker24Hour = TRUE,
autoApply = TRUE
)
# icon = shiny::icon("calendar")
),
width = 12
),
box(
id = ns("config_select_dqa_assessment_box"),
title = "Analyse the following data elements",
......
......@@ -32,9 +32,9 @@ devtools::load_all()
logfile_dir = tempdir()
parallel = TRUE
ncores = 2
# Lorenz:
utils_path = "/home/user/development/Rpackages/dqa/miracumdqa/inst/application/_utilities/"
# Jonathan:
## Lorenz:
# utils_path = "/home/user/development/Rpackages/dqa/miracumdqa/inst/application/_utilities/"
## Jonathan:
# utils_path = DIZutils::clean_path_name(system.file("application/_utilities",
# package = "miRacumDQA"))
# utils_path = DIZutils::clean_path_name(system.file("application/_utilities",
......
......@@ -65,6 +65,8 @@ my_desc$write(file = "DESCRIPTION")
# Imports
usethis::use_package("data.table", type = "Imports")
usethis::use_package("magrittr", type = "Imports")
# For date-restriction:
usethis::use_package("daterangepicker", type = "Imports")
usethis::use_package("DT", type = "Imports")
usethis::use_package("graphics", type = "Imports")
usethis::use_package("shiny", type = "Imports")
......
......@@ -72,9 +72,9 @@ shiny::shinyUI(
shiny::HTML(
paste0(
"Version:",
"<br/>DIZutils: ", utils::packageVersion("DIZutils"),
"<br/>DQAstats: ", utils::packageVersion("DQAstats"),
"<br/>DQAgui: ", utils::packageVersion("DQAgui"),
"<br/>DIZutils: ", utils::packageVersion("DIZutils"),
"<br/><br/>\u00A9 Universitätsklinikum Erlangen<br/>"
)
)
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment