library(qrcode) knitr::opts_chunk$set(echo = FALSE, warning = FALSE, message = FALSE)
facility_id <- params$facility_id facility_label <- params$facility_label fu_fid <- params$fu_fid fu_start <- params$fu_start fu_end <- params$fu_end fu_vstart <- params$fu_vstart fu_vend <- params$fu_vend if (!is.null(params$pii)) { pii <- params$pii raw_fu_data <- params$raw_fu_data raw_withdrawal_data <- params$raw_withdrawal_data } else { ################ # Set up ruODK # ################ ruODK::ru_setup( svc = Sys.getenv("ODKC_SVC"), un = Sys.getenv("ODKC_UN"), pw = Sys.getenv("ODKC_PW"), tz = Sys.getenv("TZ"), verbose = TRUE # Can be switched to TRUE for demo or debugging ) # List of projects visible with the credentials `ODKC_UN` and `ODKC_PW` odkc_project_list <- ruODK::project_list()$id wd_fid <- Sys.getenv("TIMCI_WD_FID") crf_facility_fid <- Sys.getenv("TIMCI_CRF_FACILITY_FID") ####################### # Load TIMCI ODK data # ####################### # List of forms visible in the RCT / LS project rct_ls_form_list <- ruODK::form_list()$fid # Load facility data print("Load facility data") raw_facility_data <- ruODK::odata_submission_get(fid = crf_facility_fid) facility_data <- timci::process_facility_data(raw_facility_data) pii <- timci::extract_enrolled_participants(facility_data)[[2]] # Load follow-up data print("Load follow-up data") raw_fu_data <- NULL if (fu_fid %in% rct_ls_form_list) { raw_fu_data <- ruODK::odata_submission_get(fid = fu_fid, download = FALSE) } # Load widthdrawal data print("Load withdrawal data") raw_withdrawal_data <- NULL if (wd_fid %in% rct_ls_form_list) { raw_withdrawal_data <- ruODK::odata_submission_get(fid = wd_fid, download = FALSE) } }
fu <- timci::generate_fu_log(pii, raw_fu_data, fu_start, fu_end, fu_vstart, fu_vend, ext = FALSE, deidentify = FALSE) fu <- fu %>% dplyr::filter(fid == facility_id | fid == "F0000")
if (!is.null(fu)) { for (i in 1:nrow(fu)) { pid <- toString(fu[i,'name']) png_file <- file.path(tempdir(), paste0(pid,".png")) png(png_file) qrcode::qr_code(pid) dev.off() } df <- fu %>% dplyr::mutate( code = paste0(', paste0(fu$name,".png")), ')', '{width=0.75in}') ) %>% dplyr::select('code', dplyr::everything()) %>% dplyr::rename('id' = 'name', 'child' = 'label', 'valid window [enrolment date ]' = 'enroldate') df$caregiver <- paste(df$caregiver, paste0('(',df$relationship,')')) df$child <- paste(df$child, paste0('(',df$sex,')')) drops <- c("mother", "relationship", "sex", "fid") df <- df[ , !(names(df) %in% drops)] df %>% knitr::kable() }
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.