At the time of my original post, I was thinking that I just needed to know JavaScript to get the condition statements working, but it no longer seems that simple. Here is a little more info to try to clarify where (and why) I am stuck:
(1) When the app is loaded, the progress message is hidden (condition <- "input.process_files > 0 && !output.results") and the completion message is hidden (condition <- "output.results")
(2) When the actionButton is clicked for the first time, the progress message is displayed while the completion message remains hidden
(3) When the data processing step is complete, the progress message is hidden and the completion message is displayed
(4) When the actionButton is clicked a second time, the results data frame still exists and, thus, the progress message is hidden (but should be displayed) and the completion message is displayed (but should be hidden)
I spent some time trying to use a global variable as an indicator at the beginning (e.g., processing <<- "true") and end (e.g., processing <<- "false") of the data processing function, which is located in the global.R file. But I have a poor understanding of how global variables fit into the Shiny framework and had no luck getting the global variable to update properly and no clue of how to write a conditionalPanel condition with a global variable.
Do global variables present a possible solution to this problem? Or should I pursue other approaches?