Skip to content
Permalink
Browse files
identifying new summer semester in the app
  • Loading branch information
mayerm2 committed May 25, 2021
1 parent 17a0fbf commit 40dbec2e31053d84d073288a1ca3a9bd22c86a5e
Show file tree
Hide file tree
Showing 2 changed files with 107 additions and 18 deletions.
118 app.R
@@ -96,8 +96,8 @@ ui <- dashboardPage(skin = "black", title = "COVID SafeCampus",
min = min(fall_dates),
max = max(rpi_wap_raw$Date)),
selectInput("semester", label = "Select a Semester",
choices = list("Fall 2020" = "f20", "Spring 2021" = "s21"),
selected = "s21", multiple = FALSE, selectize = TRUE, width = NULL, size = NULL),
choices = list("Fall 2020" = "f20", "Spring 2021" = "s21", "Summer 2021" = "su21"),
selected = "su21", multiple = FALSE, selectize = TRUE, width = NULL, size = NULL),
checkboxGroupInput("buildingtype", "Select a building type",
choices = c("Academic"="academic",
"Housing" = "housing",
@@ -145,8 +145,8 @@ ui <- dashboardPage(skin = "black", title = "COVID SafeCampus",
min = min(fall_dates),
max = max(rpi_wap_raw$Date)),
selectInput("semester_discrete", label = "Select a Semester",
choices = list("Fall 2020" = "f20","Spring 2021" = "s21"),
selected = "s21", multiple = FALSE, selectize = TRUE, width = NULL, size = NULL),
choices = list("Fall 2020" = "f20","Spring 2021" = "s21", "Summer 2021" = "su21"),
selected = "su21", multiple = FALSE, selectize = TRUE, width = NULL, size = NULL),
checkboxGroupInput("buildingType_discrete","Select a building type",
choices = c("Academic"="academic",
"Housing" = "housing",
@@ -195,8 +195,9 @@ ui <- dashboardPage(skin = "black", title = "COVID SafeCampus",
max = max(rpi_wap_raw$Date)),
selectInput("semester_continuous", label = "Select a Semester",
choices = list("Fall 2020" = "f20",
"Spring 2021" = "s21"),
selected = "s21",
"Spring 2021" = "s21",
"Summer 2021" = "su21"),
selected = "su21",
multiple = FALSE,
selectize = TRUE,
width = NULL,
@@ -331,13 +332,25 @@ server <- function(input, output, session) {
date_val <- date_val(input$day)
#are we going backwards in time?
if(semester_val < date_val){
updateDateInput(session, "day", max = max(fall_dates), value = min(fall_dates),)
updateDateInput(session, "day", min = min(fall_dates))
if(input$semester == "f20"){
updateDateInput(session, "day", max = max(fall_dates), value = min(fall_dates),)
updateDateInput(session, "day", min = min(fall_dates))
}
else if(input$semester == "s21"){
updateDateInput(session, "day", max = max(spring_dates), value = min(spring_dates),)
updateDateInput(session, "day", min = min(spring_dates))
}
}
#are we going forwards in time?
else if (semester_val > date_val){
updateDateInput(session, "day", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "day", min = min(spring_dates))
if(input$semester == "s21"){
updateDateInput(session, "day", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "day", min = min(spring_dates))
}
else if(input$semester == "su21"){
updateDateInput(session, "day", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "day", min = min(summer_dates))
}
}
else {
}
@@ -359,6 +372,18 @@ server <- function(input, output, session) {
max_macs=max(maccount), average_macs=mean(maccount), total_macs=sum(maccount))
}
else if(input$semester=="s21"){
db <- dbConnect(MySQL(), dbname = "safecampus", user = "dataincite", password = "P4Z2w@d!", host = "sequel.idea.rpi.edu")
query_data <- dbGetQuery(db, paste0("SELECT * FROM rpi_wap_s21 WHERE Date='", as.Date(input$day),"'", " AND ", "time BETWEEN '", start_time, "'", " AND '", end_time, "'"))
dbDisconnect(db)
combined_wap_data_final <- query_data %>%
filter(buildingType %in% input$buildingtype) %>%
dplyr::group_by(Building, latitude, longitude, buildingType, abbrev, time) %>%
dplyr::summarize(usercount = sum(usercount), maccount = sum(maccount)) %>%
dplyr::group_by(Building, longitude, latitude, buildingType, abbrev) %>%
dplyr::summarize(max_users=max(usercount), average_users=mean(usercount), total_users=sum(usercount),
max_macs=max(maccount), average_macs=mean(maccount), total_macs=sum(maccount))
}
else if(input$semester=="su21"){
if(input$day %in% rpi_wap_raw$Date){
combined_wap_data_final <- rpi_wap_raw %>%
filter(Date==input$day, buildingType %in% input$buildingtype) %>%
@@ -464,6 +489,12 @@ server <- function(input, output, session) {
daily_data <-query_data %>% filter(abbrev == abbreviation)
}
else if(input$semester=="s21"){
db <- dbConnect(MySQL(), dbname = "safecampus", user = "dataincite", password = "P4Z2w@d!", host = "sequel.idea.rpi.edu")
query_data <- dbGetQuery(db, paste0("SELECT * FROM rpi_wap_s21 WHERE Date= '", input$day, "'"))
dbDisconnect(db)
daily_data <-query_data %>% filter(abbrev == abbreviation)
}
else if(input$semester == "su21"){
if(input$day %in% rpi_wap_raw$Date){
daily_data <-rpi_wap_raw %>%
filter(Date == input$day)%>%
@@ -523,6 +554,23 @@ server <- function(input, output, session) {
}
}
else if(input$semester=="s21"){
start_date <- as.Date(input$day)
end_date <- start_date+days(7)
db <- dbConnect(MySQL(), dbname = "safecampus", user = "dataincite", password = "P4Z2w@d!", host = "sequel.idea.rpi.edu")
query_data <- dbGetQuery(db, paste0("SELECT * FROM rpi_wap_s21 WHERE Date BETWEEN '", start_date, "'", " AND '", end_date, "'"))
dbDisconnect(db)
if(input$datatype == "user"){
week_data <- query_data %>% filter(abbrev == abbreviation) %>%
dplyr::group_by(Date)%>%
dplyr::summarize(day_sum = sum(usercount))
}
else{
week_data <- rpi_wap_raw %>% filter(abbrev == abbreviation) %>%
dplyr::group_by(Date)%>%
dplyr::summarize(day_sum = sum(maccount))
}
}
else if(input$semester == "su21"){
if(input$day %in% rpi_wap_raw$Date){
if(input$datatype == "user"){
week_data <- rpi_wap_raw %>% filter(abbrev == abbreviation) %>%
@@ -657,13 +705,25 @@ server <- function(input, output, session) {
date_val <- date_val(input$date_discrete)
#are we going backwards in time?
if(semester_val < date_val){
updateDateInput(session, "date_discrete", max = max(fall_dates), value = min(fall_dates),)
updateDateInput(session, "date_discrete", min = min(fall_dates))
if(input$semester_discrete == "f20"){
updateDateInput(session, "date_discrete", max = max(fall_dates), value = min(fall_dates),)
updateDateInput(session, "date_discrete", min = min(fall_dates))
}
else if(input$semester_discrete == "s21"){
updateDateInput(session, "date_discrete", max = max(spring_dates), value = min(spring_dates),)
updateDateInput(session, "date_discrete", min = min(spring_dates))
}
}
#are we going forwards in time?
else if (semester_val > date_val){
updateDateInput(session, "date_discrete", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "date_discrete", min = min(spring_dates))
if(input$semester_discrete == "s21"){
updateDateInput(session, "date_discrete", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "date_discrete", min = min(spring_dates))
}
else if(input$semester_discrete == "su21"){
updateDateInput(session, "date_discrete", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "date_discrete", min = min(summer_dates))
}
}
else {
}
@@ -676,6 +736,11 @@ server <- function(input, output, session) {
dbDisconnect(db)
}
else if(input$semester_discrete == "s21"){
db <- dbConnect(MySQL(), dbname = "safecampus", user = "dataincite", password = "P4Z2w@d!", host = "sequel.idea.rpi.edu")
query_data <- dbGetQuery(db, paste0("SELECT * FROM rpi_wap_s21 WHERE Date= '", input$date_discrete, "'"))
dbDisconnect(db)
}
else if(input$semester_discrete == "su21"){
if(input$date_discrete %in% rpi_wap_raw$Date){
query_data <- rpi_wap_raw
}
@@ -1130,13 +1195,25 @@ server <- function(input, output, session) {
date_val <- date_val(input$date)
#are we going backwards in time?
if(semester_val < date_val){
updateDateInput(session, "date", max = max(fall_dates), value = min(fall_dates),)
updateDateInput(session, "date", min = min(fall_dates))
if(input$semester_continuous == "f20"){
updateDateInput(session, "date_discrete", max = max(fall_dates), value = min(fall_dates),)
updateDateInput(session, "date_discrete", min = min(fall_dates))
}
else if(input$semester_continuous == "s21"){
updateDateInput(session, "date", max = max(spring_dates), value = min(spring_dates),)
updateDateInput(session, "date", min = min(spring_dates))
}
}
#are we going forwards in time?
else if (semester_val > date_val){
updateDateInput(session, "date", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "date", min = min(spring_dates))
if(input$semester_continuous == "s21"){
updateDateInput(session, "date", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "date", min = min(spring_dates))
}
else if(input$semester_continuous == "su21"){
updateDateInput(session, "date", max = max(rpi_wap_raw$Date), value = max(rpi_wap_raw$Date),)
updateDateInput(session, "date", min = min(summer_dates))
}
}
else {
}
@@ -1167,6 +1244,11 @@ server <- function(input, output, session) {
dbDisconnect(db)
}
else if(input$semester_continuous == "s21"){
db <- dbConnect(MySQL(), dbname = "safecampus", user = "dataincite", password = "P4Z2w@d!", host = "sequel.idea.rpi.edu")
query_data <- dbGetQuery(db, paste0("SELECT * FROM rpi_wap_s21 WHERE Date= '", input$date, "'"))
dbDisconnect(db)
}
else if(input$semester_continuous == "su21"){
if(input$date %in% rpi_wap_raw$Date){
query_data <- rpi_wap_raw
}
@@ -203,6 +203,7 @@ now_time <- as_datetime(hms::parse_hm(toString(now_data$time[nrow(now_data)])))
#semester dates
fall_dates <- seq(as.Date('2020-08-31'), as.Date('2020-11-20'), by = 'days')
spring_dates <- seq(as.Date('2021-01-25'), as.Date('2021-05-12'), by = 'days')
summer_dates <- seq(as.Date('2021-05-13'), as.Date('2021-08-20'), by = 'days')

#functions to help determine if we are going backwards or forwards in time for switching semesters
semester_val <- function(semester){
@@ -212,6 +213,9 @@ semester_val <- function(semester){
else if(semester == "s21"){
value <- 2
}
else if(semester == "su21"){
value <- 3
}
value
}

@@ -222,6 +226,9 @@ date_val <- function(date){
else if(date %in% spring_dates){
value <- 2
}
else if(date %in% summer_dates){
value <- 3
}
value
}

0 comments on commit 40dbec2

Please sign in to comment.