Skip to content

Instantly share code, notes, and snippets.

@zindel
Created April 21, 2016 09:52
Show Gist options
  • Save zindel/d7755f8875c2cff6ccfd6e38c8d11aa1 to your computer and use it in GitHub Desktop.
Save zindel/d7755f8875c2cff6ccfd6e38c8d11aa1 to your computer and use it in GitHub Desktop.
$$study := collection(study),
$study := oneOf(
pick($$study, ...),
add($$study, {
code := field('code'),
title := field('text'),
lab := field(collection(lab)),
study_version := [{
version := 1,
note := 'Initial Version',
}]
}),
import($$study, ...)
),
oneOf(
view($study, ...),
if(
$study.active_version => view($study.active_version, ...),
),
if(
$study.config_version => (
view($study.config_version, ...),
$$requirement_list := $study.config_version.requirement_list,
$$group := $study.config_version.participant_group,
$$time_period := $study.config_version.time_period,
oneOf(
(
$requirement_list := oneOf(
pick($$requirement_list, ...),
add($$requirement_list, ...),
),
oneOf(
(
$$requirement := pick($requirement_list.requirement),
...
),
replace($requirement_list, ...),
drop($requirement_list, ...)
)
),
(
$time_period := oneOf(
pick($$time_period, ...),
add($$time_period, ...),
),
view($time_period),
edit($time_period)
)
)
),
otherwise => edit($study, ...) // start configuring version
),
if(
!$study.study_version.study_enrollment => drop($study)
),
if(
!$study.config_version => import_study_version($study)
),
(
$$study_version := $study.study_version,
$study_version := pick($$study_version),
view($study_version)
)
)
@zindel
Copy link
Author

zindel commented Apr 21, 2016

pickStudy($individual) {
$$study := collection(study, individual=$individual),
pick($$study)
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment