Contributors | ||||||||
---|---|---|---|---|---|---|---|---|
|
Contents
Table of Contents | ||||
---|---|---|---|---|
|
...
config.middleware.use ExceptionNotifier, sender_address: 'no-reply@example.com', exception_recipients: ['user@example.com']
Anchor | ||||
---|---|---|---|---|
|
...
(Most of the Settings can now be managed from SPARCAdmin module by Site Admin users)
SPARCRequest utilizes a number of settings to allow you to customize content and enable or disable functionality based on your institution's needs. These settings are stored in the settings
database table and are populated from config/defaults.json
.
...
about_sparc_url: This is the URL linked to by the
About SPARCRequest
button on the homepage.header_link_1: This is the URL for the Organization Logo - the left image in the SPARCRequest header.
header_link_2_proper3: This is the URL for the SPARCRequest Logo in Institution Logo - the right image in the SPARCRequest header.header_link_2_dashboard
navbar_links: This is the URL for the SPARCDashboard Logo in the SPARCDashboard header.
header_link_2_catalog: This is the URL for the SPARCCatalog Logo in the SPARCCatalog header.
header_link_3: This is the URL for the Institution Logo - the right image in the SPARCRequest header.
navbar_links: This defines the links that appear in the header navbar.
SPARCRequest: This is a link to the SPARCRequest homepage.
SPARCDashboard: This is a link to SPARCDashboard.
SPARCFulfillment: This is an optional link to SPARCFulfillment.
SPARCCatalog: This is a link to SPARCCatalog.
SPARCReport: This is an optional link to the SPARCReport module.
SPARCForms: This is an optional link to the SPARCForms module.
SPARCFunding: This is an optional link to the SPARCFunding module.
Other Links: New links may be added by using the following syntax:
\"key\": [\"Link Text\", \"Full URL\"]
.
Statuses
updatable_statuses: This defines the statuses that a SubServiceRequest can be updated from. Any other statuses are considered
un-updatable
.finished_statuses: This defines the statuses in which a SubServiceRequest is considered complete. When in these statuses, SubServiceRequests can't be updated. New services from those organizations will be added to new SubServiceRequests.
Other Settings
host: This is the host domain of your instance of SPARCRequest.
site_admins: This is a list of users who will have full access to the Survey/Form builder and SPARCForms.
use_indirect_cost: This determines how the application displays costs to users. If turned on, then in addition to direct costs and direct cost subtotals, users will also see indirect costs and indirect cost subtotals, and indirect costs will also be included in the grand total. If turned off, then indirect costs will not be displayed to users, nor included in the grand total.
use_separate_audit_database: This determines whether the application will store defines the links that appear in the header navbar, including SPARCRequest, SPARCDashboard, SPARCCatalog, SPARCReport, SPARCForms, SPARCAdmin, SPARCInfo, SPARCFunding (optional), SPARCFulfillment (optional).
For example, below is the MUSC navbar setting:
{"sparc_request"=>["SPARCRequest", "https://sparc.musc.edu/"], "sparc_dashboard"=>["SPARCDashboard", "https://sparc.musc.edu/dashboard"], "sparc_fulfillment"=>["SPARCFulfillment", "https://sparc-fulfillment.musc.edu"], "sparc_catalog"=>["SPARCCatalog", "https://sparc.musc.edu/catalog_manager"], "sparc_report"=>["SPARCReport", "https://sparc.musc.edu/reports"], "sparc_forms"=>["SPARCForms", "https://sparc.musc.edu/surveyor/responses"], "sparc_admin"=>["SPARCAdmin", "https://sparc.musc.edu/admin/applications"], "sparc_info" => ["SPARCInfo", "https://sparcrequest.atlassian.net/wiki/spaces/RD/overview"]}
Other Links: New links may be added by using the following syntax:
\"key\": [\"Link Text\", \"Full URL\"]
.
Statuses
updatable_statuses: This defines the statuses that a SubServiceRequest can be updated from. Any other statuses are considered
un-updatable
.finished_statuses: This defines the statuses in which a SubServiceRequest is considered complete. When in these statuses, SubServiceRequests can't be updated. New services from those organizations will be added to new SubServiceRequests.
Other Settings
host: This is the host domain of your instance of SPARCRequest.
site_admins: This is a list of users who will have full access to the Survey/Form builder and SPARCForms.
use_indirect_cost: This determines how the application displays costs to users. If turned on, then in addition to direct costs and direct cost subtotals, users will also see indirect costs and indirect cost subtotals, and indirect costs will also be included in the grand total. If turned off, then indirect costs will not be displayed to users, nor included in the grand total.
use_separate_audit_database: This determines whether the application will store audits in a separate datebase. The application expects this database to be named
audit_#{Rails.env}
.wkhtmltopdf_location: This is a customizable path pointing to the binary for the
wkhtmltopdf
gem which is used to generate PDFs of HTML content. The default value provided by the gem is/usr/local/bin/wkhtmltopdf
.
...
Your institution may opt to use Omniauth authentication plugins such as CAS and Shibboleth for user authentication in SPARCRequest. Only CAS and Shibboleth are supported at this time, but support for other Omniauth plugins may be implemented.
Omniauth Configuration
use_cas: This determines whether the application will allow users to log in using CAS.
use_cas_only: This determines whether the application will only allow users to log in using CAS. This has lower precedence than
use_shibboleth_only
when both are enabled.use_shibboleth: This determines whether the application will allow users to log in using Shibboleth.
use_shibboleth_only: This determines whether the application will only allow users to log in using Shibboleth. This has higher precedence than
use_shibboleth_only
when both are enabled.
2.3 Configuring LDAP
Your institution may opt to use LDAP for managing identities in SPARCRequest. You should save your environment's LDAP settings by overriding the values in config/ldap.yml
.
LDAP Configuration
use_ldap: This determines whether the authorized user search will attempt to connect to an LDAP server. If turned off, it will simply search the database.
lazy_load_ldap: When enabled, the database will return only LDAP Identities found in the database and will not create new entries. When disabled, if an LDAP Identity is not found in the database, a record will be created for that user and returned.
suppress_ldap_for_user_search: Allow the use of LDAP but suppress its use within the authorized user search.
LDAP Fields
...
, but support for other Omniauth plugins may be implemented.
Omniauth Configuration
use_cas: This determines whether the application will allow users to log in using CAS.
use_cas_only: This determines whether the application will only allow users to log in using CAS. This has lower precedence than
use_shibboleth_only
when both are enabled.use_shibboleth: This determines whether the application will allow users to log in using Shibboleth.
use_shibboleth_only: This determines whether the application will only allow users to log in using Shibboleth. This has higher precedence than
use_shibboleth_only
when both are enabled.
2.3 Configuring LDAP
Your institution may opt to use LDAP for managing identities in SPARCRequest. You should save your environment's LDAP settings by overriding the values in config/ldap.yml
.
LDAP Configuration
use_ldap: This determines whether the authorized user search will attempt to connect to an LDAP server. If turned off, it will simply search the database.
lazy_load_ldap: When enabled, the database will return only LDAP Identities found in the database and will not create new entries. When disabled, if an LDAP Identity is not found in the database, a record will be created for that user and returned.
suppress_ldap_for_user_search: Allow the use of LDAP but suppress its use within the authorized user search.
LDAP Fields
ldap_host: This is the host server for your institution's LDAP.
ldap_port: This is the port at which LDAP is accessible on the server.
ldap_base: This is the LDAP base suffixes for your institution's LDAP.
ldap_encryption: This is the type of encryption present on your institution's LDAP.
ldap_domain: This is the domain suffix found on the ldap_uid of your users. (Ex: The domain of
anc63@musc.edu
ismusc.edu
)ldap_uid: This is the key in your institution's LDAP records that corresponds to the uid of a given user.
ldap_last_name: This is the key in your institution's LDAP records that corresponds to the last name/surname of a given user.
ldap_first_name: This is the key in your institution's LDAP records that corresponds to the first name/given name of a given user.
ldap_email: This is the key in your institution's LDAP records that corresponds to the email of a given user.
ldap_auth_username: This is an optional username to access your institution's LDAP.
ldap_auth_portpassword: This is the port at which LDAP is accessible on the serveran optional password to access your institution's LDAP.
ldap_basefilter: This is the LDAP base suffixes for your institution's LDAP.
ldap_encryption: This is the type of encryption present on your institution's LDAP.
ldap_domain: This is the domain suffix found on the ldap_uid of your users. (Ex: The domain of
anc63@musc.edu
ismusc.edu
)ldap_uid: This is the key in your institution's LDAP records that corresponds to the uid of a given user.
ldap_last_name: This is the key in your institution's LDAP records that corresponds to the last name/surname of a given user.
ldap_first_name: This is the key in your institution's LDAP records that corresponds to the first name/given name of a given user.
ldap_email: This is the key in your institution's LDAP records that corresponds to the email of a given user.
ldap_auth_username: This is an optional username to access your institution's LDAP.
ldap_auth_password: This is an optional password to access your institution's LDAP.
ldap_filter: This is an optional filter that allows you to control how LDAP searches for an identity. Filter documentation can be found here.
2.4 Configuring Epic
Your institution may opt to use Epic to store health records from SPARCRequest. You should save your environment's Epic settings by overriding the values in config/epic.yml
.
Epic Configuration
use_epic: This determines whether the application will use Epic integration.
validate_epic_users: This determines whether or not the application will validate Authorized Users with Epic access against a list of users from Epic.
epic_user_endpoint: This is the endpoint for the Epic interface to retrieve users to validate Authorized Users with Epic access.
epic_user_collection_name: This is the name of the collection of users from the Epic User Endpoint.
approve_epic_rights_mail_to: Email addresses of users who are e-mailed for EPIC rights approval.
queue_epic: This determines whether Epic pushes will be queued. Emptying the queue is done via
rake epic:batch_load
. This can be set up as a cronjob to run at a certain interval.epic_queue_access: This is a list of users who will have full access to the Epic queue from SPARCDashboard.
epic_queue_report_to: This is the email(s) that will be sent Epic queue reports when they are generated.
queue_epic_load_error_to: This is the email(s) that will be notified when errors occur in the Epic queue.
Epic Fields
epic_study_root: This is the root URL of your institution's Epic API.
epic_endpoint: This is the endpoint address for your institution's Epic SOAP message receiver.
epic_namespace: This is the namespace of your institution's Epic API.
epic_wsdl: This is the Web Service Description Language (WSDL) which describes how to communicate with the Epic interface.
epic_test_mode: This tells the application to use a fake Epic server, rather than connecting to the Epic interface. This is primarily intended to be used in the test suite.
2.5 Configuring RMID
Your institution may opt to use Research Master ID (RMID) to connect records between SPARCRequest and other systems, such as eIRB and Coeus.
RMID Configuration
research_master_enabled: This determines whether SPARCRequest protocols will be connected with a research master record.
research_master_link: This is the URL of your institution's RMID application.
research_master_api: This is the URL of your institution's RMID API.
rmid_api_token: This is the token used to access your institution's RMID API.
2.6 SPARCFulfillment
Your institution may opt to use SPARCFulfillment, aka Clinical Work Fulfillment (CWF) to allow service providers to fulfill and track the clinical and non-clinical services they provide.
clinical_work_fulfillment_url: This is the URL of your institution's SPARCFulfillment application.
fulfillment_contingent_on_catalog_manager: This determines whether users will have the ability to push a request to SPARCFulfillment from the Admin Dashboard.
2.7 SPARCFunding
Your institution may opt to use the SPARCFunding module to keep track of funding opportunities.
use_funding_module: This determines whether the application will use the SPARCFunding module.
funding_admins: This is a list of users who will have full access to the SPARCFunding module.
funding_org_ids: This is a list of organization ids that are offering SPARCFunding opportunities.
2.8 SPARCRequest API
Your institution may opt to use the SPARCRequest API to communicate with external applications, such as SPARCFulfillment.
current_api_version: This is the current version of the SPARCRequest API.
remote_service_notifier_protocol: This is the HTTP protocol (HTTP/HTTPS) of the SPARCRequest API.
remote_service_notifier_username: This is the authentication username of the SPARCRequest API.
remote_service_notifier_password: This is the authentication password of the SPARCRequest API.
remote_service_notifier_host: This is the host domain of the SPARCRequest API.
remote_service_notifier_path: This is the URL path of the SPARCRequest API.
...
an optional filter that allows you to control how LDAP searches for an identity. Filter documentation can be found here.
2.4 Configuring Epic
Your institution may opt to use Epic to store health records from SPARCRequest. You should save your environment's Epic settings by overriding the values in config/epic.yml
.
Epic Configuration
use_epic: This determines whether the application will use Epic integration.
validate_epic_users: This determines whether or not the application will validate Authorized Users with Epic access against a list of users from Epic.
epic_user_endpoint: This is the endpoint for the Epic interface to retrieve users to validate Authorized Users with Epic access.
epic_user_collection_name: This is the name of the collection of users from the Epic User Endpoint.
approve_epic_rights_mail_to: Email addresses of users who are e-mailed for EPIC rights approval.
queue_epic: This determines whether Epic pushes will be queued. Emptying the queue is done via
rake epic:batch_load
. This can be set up as a cronjob to run at a certain interval.epic_queue_access: This is a list of users who will have full access to the Epic queue from SPARCDashboard.
epic_queue_report_to: This is the email(s) that will be sent Epic queue reports when they are generated.
queue_epic_load_error_to: This is the email(s) that will be notified when errors occur in the Epic queue.
Epic Fields
epic_study_rsh_root: This is the root URL of your institution's Epic rsh records (i.e. protocols).
epic_endpoint: This is the endpoint address for your institution's Epic SOAP message receiver.
epic_namespace: This is the namespace of your institution's Epic API.
epic_wsdl: This is the Web Service Description Language (WSDL) which describes how to communicate with the Epic interface.
epic_test_mode: This tells the application to use a fake Epic server, rather than connecting to the Epic interface. This is primarily intended to be used in the test suite.
epic_study_prl_root: This is the root URL of your institution’s Epic prl records.
2.5 Configuring RMID
Your institution may opt to use Research Master ID (RMID) to connect records between SPARCRequest and other systems, such as eIRB and Coeus.
RMID Configuration
research_master_enabled: This determines whether SPARCRequest protocols will be connected with a research master record.
research_master_link: This is the URL of your institution's RMID application.
research_master_api: This is the URL of your institution's RMID API.
rmid_api_token: This is the token used to access your institution's RMID API.
2.6 SPARCFulfillment
Your institution may opt to use SPARCFulfillment, aka Clinical Work Fulfillment (CWF) to allow service providers to fulfill and track the clinical and non-clinical services they provide.
clinical_work_fulfillment_url: This is the URL of your institution's SPARCFulfillment application.
fulfillment_contingent_on_catalog_manager: This determines whether users will have the ability to push a request to SPARCFulfillment from the Admin Dashboard.
2.7 SPARCFunding
Your institution may opt to use the SPARCFunding module to keep track of funding opportunities.
use_funding_module: This determines whether the application will use the SPARCFunding module.
funding_admins: This is a list of users who will have full access to the SPARCFunding module.
funding_org_ids: This is a list of organization ids that are offering SPARCFunding opportunities.
2.8 SPARCRequest API
Your institution may opt to use the SPARCRequest API to communicate with external applications, such as SPARCFulfillment.
current_api_version: This is the current version of the SPARCRequest API.
remote_service_notifier_protocol: This is the HTTP protocol (HTTP/HTTPS) of the SPARCRequest API.
remote_service_notifier_username: This is the authentication username of the SPARCRequest API.
remote_service_notifier_password: This is the authentication password of the SPARCRequest API.
remote_service_notifier_host: This is the host domain of the SPARCRequest API.
remote_service_notifier_path: This is the URL path of the SPARCRequest API.
2.9 Configuring SPARC / OnCore API
use_oncore: indicates whether the application is going to use SPARC/OnCore API.
oncore_endpoint_access: designates users that should have access to OnCore information.
oncore_api
: the base OnCore URL (i.e. for MUSC test environment it’s: https://musc-oncore-test.forteresearchapps.com) **be sure to include https://**oncore_default_department:
This is the default value that is sent over to OnCore/CTMS to the department field with the minimal footprint API.oncore_default_library
: This is the default value that is sent over to OnCore/CTMS to the library field (i.e. Oncology, Non-oncology) with the minimal footprint API.oncore_default_organizational_unit
: This is the default value that is sent over to OnCore/CTMS to the organization unit field with the minimal footprint API.oncore_default_protocol_type
: This is the default value that is sent over to OnCore/CTMS to the protocol type field (i.e., Treatment) with the minimal footprint API.oncore_default_institution: This is the default value that is sent over to OnCore/CTMS to the institution field with the minimal footprint API.
oncore_default_pi_role: This is the setting to indicate that SPARC will be sending primary PI identity over to OnCore with the minimal footprint API.
2.10 Right Navigation
SPARCRequest provides various configurable help links below the service cart (AKA Right Navigation). These include Feedback, Frequently Asked Questions, Contact Us, and Short Interaction buttons.
...
use_short_interaction: This determines whether the application will display the
Short Interaction
button.
2.
...
11 Google Calendar
Your institution may opt to integrate Google Calendar to display events on the SPARCRequest homepage.
use_google_calendar: This determines whether Google Calendar events will be displayed on the homepage.
calendar_url: This is the URL of the Google Calendar used to display events.
calendar_event_limit: This is the maximum number of events that will be displayed in the homepage Calendar.
2.
...
12 News Feed
Your institution may opt to integrate an external blog to display posts in the news feed on the SPARCRequest homepage.
...
news_feed_post_selector: This is the CSS selector of a post at the news_feed_url to be used to gather data for the news feed.
news_feed_title_selector: This is the CSS selector of a post's title at the news_feed_url to be used in the news feed.
news_feed_link_selector: This is the CSS selector of a link to the post at the news_feed_url to be used in the news feed.
news_feed_date_selector: This is the CSS selector of a post's date at the news_feed_url to be used in the news feed.
2.
...
13 Tableau
Your institution may opt to integrate a Tableau Dashboard on the SPARCRequest homepage. You will need to enable guest viewing access to allow user to view the dashboard without logging in. In addition, the Dashboard may need to be scaled to fit properly onto the homepage.
use_tableau: This determines whether the application will display a Tableau dashboard on the homepage.
homepage_tableau_dashboard: This is the name of the Tableau Dashboard to be displayed on the homepage.
homepage_tableau_url: This is the URL of the Tableau Dashboard to be displayed on the homepage.
2.
...
14 System Satisfaction Survey
Your institution may opt to provide users with a system satisfaction survey prior to submitting a service request.
system_satisfaction_survey: This determines whether the application will prompt users to fill out a system satisfaction survey prior to submitting a service request.
system_satisfaction_survey_cc: This field will overwrite the system satisfaction survey mailers in the application to instead cc to this address. This is overwritten in development/testing/staging environments in order to prevent real emails from being sent out to general users.
2.
...
15 navigation.yml
config/navigation.yml
lays out the navigation instructions for the service request portion of SPARCRequest. Aside from changing the 'step_text' or the 'css_class' of steps, the contents of this file should not be edited unless you have made significant changes to the application. Each 'step' has certain parameters:
...
Anchor | ||||
---|---|---|---|---|
|
3.1 Permissible Values (Most of the Permissible Values can now be managed from SPARCAdmin module by Site Admin users)
Permissible Values are options and labels used across SPARCRequest, most of which can be customized for your institution. These are stored in the permissible_values
database table and categorized by their category
attribute.
...
funding_source: These are the sources of funding for research that is already funded.
potential_funding_source: These are the sources of funding for research that is still unfundedfor research that is still unfunded.
unfunded: for institutions which desires to use the unfunded funding status, it should be set to 1; otherwise, set to 0.
federal_grant_code: These are the grant codes for Federally-funded research.
federal_grant_phs_sponsor: These are a list of Policy for Public Health Service (PHS) sponsors for Federally-funded Protocols.
federal_grant_non_phs_sponsor: These are a list of sponsors outside of the PHS for Federally-funded research.
submission_type: These are the types of submissions for research using human subjects. (Ex. Exempt, Expedited)
study_type: These are the types of research studies. (Ex. Clinical Trials, Basic Science)
impact_area: These are the impact areas of a research study. (Ex. Pediatrics, Diabetes, Cancer)
affiliation_type: These are organizations affiliated with the research study. (Ex. Cancer Center, Oral Health COBRE)
...
status: These are the statuses used by Service Requests and Sub Service Requests.
document_type: These are the types of documents that can be added to a Protocol by a user. Note: These are not the allowed file extensions. Allowed file extensions can be found in
app/models/document.rb
.interaction_subject: These are the subjects of a Short Interaction request.
interaction_type: These are the methods of contact for a Short Interaction request.
...
site_name: This is an optional name that will be displayed as an alert at the top of SPARCRequest. This can be useful for keeping track of the current environment.
SPARC_VERSION: This is the version of SPARCRequest your institution is using and will be displayed in the footer of the application.
institution: This is the name of your institution. This is currently only used for the CAS and Shibboleth login buttons.
institution_logo: This is the path to your institution's logo image. This image should be placed in
app/assets/images
and should be 1206x791 pixels or a similar ratio.org_logo: This is the path to your organization's logo image. This image should be placed in
app/assets/images
and should be 300x140 pixels or a similar ratio.time_zone: This is the time zone for your application. You can find the correct time zone from the Ruby on Rails docs or by running
rake time:zones:all
.oncore_client_id
: needs to be configured if using the OnCore minimal footprint API. This value comes from the OnCore Admin OAuth Clients section.oncore_client_secret:
needs to be configured if using the OnCore minimal footprint API. This value comes from the OnCore Admin OAuth Clients section.
Anchor | ||||
---|---|---|---|---|
|
SPARCRequest uses the I18n gem which allows each institution to customize any text content throughout the application. All of the text content of a page can be found in one of the locales files found in config/locales
. Each file contains text specific to the corresponding portion of the application, with shared values stored in en.yml
.
...