Index: firmware/App/Modes/ModeStandby.c =================================================================== diff -u -r3c0614e16047ada1ea30c9e7f883f78d98b363e3 -rda8c4c5b6bb51f929119d5efac9739e036339bd6 --- firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision 3c0614e16047ada1ea30c9e7f883f78d98b363e3) +++ firmware/App/Modes/ModeStandby.c (.../ModeStandby.c) (revision da8c4c5b6bb51f929119d5efac9739e036339bd6) @@ -30,6 +30,7 @@ #include "ModeStandby.h" #include "ModeTreatment.h" #include "ModeTreatmentParams.h" +#include "NVDataMgmt.h" #include "OperationModes.h" #include "RTC.h" #include "Switches.h" @@ -453,10 +454,17 @@ { if ( TRUE == isDGCommunicating() ) { - setRequestedCleaningMode( DG_MODE_CHEM ); - result = TRUE; - currentStandbyState = STANDBY_WAIT_FOR_DISINFECT_STATE; - rejReason = REQUEST_REJECT_REASON_NONE; + if ( TRUE == isChemDisinfectEnabledInInstitRecord() ) + { + setRequestedCleaningMode( DG_MODE_CHEM ); + result = TRUE; + currentStandbyState = STANDBY_WAIT_FOR_DISINFECT_STATE; + rejReason = REQUEST_REJECT_REASON_NONE; + } + else + { + rejReason = REQUEST_REJECT_REASON_CHEM_DISINFECT_NOT_ENABLED_INST_CONFIG; + } } else { @@ -472,13 +480,13 @@ /*********************************************************************//** * @brief - * The signalUserInitiateChemcialDisinfectFlushMode function handles user + * The signalUserInitiateChemicalDisinfectFlushMode function handles user * initiation of chemical disinfect flush mode. * @details Inputs: currentStandbyState * @details Outputs: chemDisinfectFlushStartReqReceived, currentStandbyState * @return TRUE if signal accepted, FALSE if not *************************************************************************/ -BOOL signalUserInitiateChemcialDisinfectFlushMode( void ) +BOOL signalUserInitiateChemicalDisinfectFlushMode( void ) { BOOL result = FALSE; REQUEST_REJECT_REASON_CODE_T rejReason = REQUEST_REJECT_REASON_NOT_ALLOWED_IN_CURRENT_MODE; @@ -489,10 +497,17 @@ { if ( TRUE == isDGCommunicating() ) { - setRequestedCleaningMode( DG_MODE_CHFL ); - result = TRUE; - currentStandbyState = STANDBY_WAIT_FOR_DISINFECT_STATE; - rejReason = REQUEST_REJECT_REASON_NONE; + if ( TRUE == isChemDisinfectEnabledInInstitRecord() ) + { + setRequestedCleaningMode( DG_MODE_CHFL ); + result = TRUE; + currentStandbyState = STANDBY_WAIT_FOR_DISINFECT_STATE; + rejReason = REQUEST_REJECT_REASON_NONE; + } + else + { + rejReason = REQUEST_REJECT_REASON_CHEM_DISINFECT_NOT_ENABLED_INST_CONFIG; + } } else {