refactor: push all global vars to globla options

This commit is contained in:
2026-06-16 15:40:46 +03:00
parent df740c4f71
commit 4c50473c7e
2 changed files with 26 additions and 30 deletions

34
app.R
View File

@@ -9,7 +9,6 @@ box::use(
# modules
box::use(
R/modules/utils,
R/modules/global_options,
R/modules/db,
R/modules/data_validation,
R/app/forms,
@@ -18,23 +17,12 @@ box::use(
R/modules/data_manipulations[is_this_empty_value]
)
# set global settings:
global_options$set_global_options(
shiny.host = "0.0.0.0",
shiny.port = 1338,
APP.DEBUG = FALSE
)
# global vars:
# TODO: загружается автоматически при загрузке всего модуля, нужно ли засирать файл?
# глобальные переменные и проверка/инициация схемы:
box::use(
R/modules/global_options[AUTH_ENABLED]
R/modules/global_options[AUTH_ENABLED, ENABLED_SCHEMES],
)
enabled_schemes <- unlist(config::get()$form_schemes)
enabled_schemes <- setNames(names(enabled_schemes), enabled_schemes)
# load schemes object:
schms <- readRDS("temp/scheme.rds")
SCHMS <- readRDS("temp/scheme.rds")
# CHECK FOR PANDOC ----------
# rmarkdown::find_pandoc(dir = "/opt/homebrew/bin/")
@@ -131,7 +119,7 @@ server <- function(input, output, session) {
forms_access <- stringr::str_split_1(string, ", ")
# check if exists
exists <- forms_access %in% enabled_schemes
exists <- forms_access %in% ENABLED_SCHEMES
if (!all(exists)) {
cli::cli_warn(c("these forms is not exist:", paste("- ", forms_access[!exists])))
}
@@ -188,7 +176,7 @@ server <- function(input, output, session) {
nested_form_id = NULL,
tasks_id = NULL,
current_user = NULL,
user_form_access = enabled_schemes
user_form_access = ENABLED_SCHEMES
)
scheme <- reactiveVal(NULL) # наименование выбранной схемы
@@ -216,16 +204,16 @@ server <- function(input, output, session) {
allowed_schemas <- if (is.na(res)) {
NA # нет доступа
} else if (res == "all") {
enabled_schemes # все схемы
ENABLED_SCHEMES # все схемы
} else {
enabled_schemes[enabled_schemes == res] # только указанные
ENABLED_SCHEMES[ENABLED_SCHEMES == res] # только указанные
}
# переопределяем переменные
main_form_is_empty(ifelse(is.na(res), "empty", "main_menu"))
values$user_form_access <- allowed_schemas
scheme(values$user_form_access[1])
mhcs(schms[[values$user_form_access[1]]])
mhcs(SCHMS[[values$user_form_access[1]]])
})
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -325,7 +313,7 @@ server <- function(input, output, session) {
observeEvent(input$schmes_selector, {
scheme(input$schmes_selector)
mhcs(schms[[input$schmes_selector]])
mhcs(SCHMS[[input$schmes_selector]])
})
@@ -781,7 +769,7 @@ server <- function(input, output, session) {
need(values$main_key, "⚠️ Необходимо указать id пациента!")
)
span(
strong("Таблица: "), names(enabled_schemes)[enabled_schemes == scheme()],
strong("Таблица: "), names(ENABLED_SCHEMES)[ENABLED_SCHEMES == scheme()],
br(),
strong("ID: "), values$main_key
)
@@ -1042,7 +1030,7 @@ server <- function(input, output, session) {
list_of_df[["meta"]] <- dplyr::tribble(
~`Параметр` , ~`Значение`,
"Пользователь" , values$current_user,
"Название базы" , names(enabled_schemes)[enabled_schemes == scheme()],
"Название базы" , names(ENABLED_SCHEMES)[ENABLED_SCHEMES == scheme()],
"id базы" , scheme(),
"id формы" , config::get("form_id"),
"ver формы" , config::get("form_app_version"),