diff options
Diffstat (limited to 'server/xml/macros/B.2.2.5.xml')
-rw-r--r-- | server/xml/macros/B.2.2.5.xml | 153 |
1 files changed, 132 insertions, 21 deletions
diff --git a/server/xml/macros/B.2.2.5.xml b/server/xml/macros/B.2.2.5.xml index 9199a1c..feafd6d 100644 --- a/server/xml/macros/B.2.2.5.xml +++ b/server/xml/macros/B.2.2.5.xml @@ -7,14 +7,77 @@ 20090108: Bent Bisballe Nyeng Højre/venstre byttet om. --> +<!-- + 20090402: Bent Bisballe Nyeng + 'missing eye' tilføjet. + --> <macro name="B.2.2.5" version="1.0"> - <resume>Øjentryk: -Højre øje: ${tonometer.pressure.right} mmHg -Venstre øje: ${tonometer.pressure.right} mmHg -${tonometer.device}.</resume> + <resume language="lua"> + out = '' + + if ( getValue('tonometer.right.missing') == '' or getValue('tonometer.left.missing') == '' ) + then + out = out .. 'Øjentryk:\n' + end + + if ( getValue('tonometer.right.missing') == '' ) + then + out = out .. 'Højre øje: ' .. getValue('tonometer.pressure.right') .. ' mmHg\n' + end + + if ( getValue('tonometer.left.missing') == '' ) + then + out = out .. 'Venstre øje: ' .. getValue('tonometer.pressure.right') .. ' mmHg\n' + end + + if ( getValue('tonometer.right.missing') == '' or getValue('tonometer.left.missing') == '' ) + then + out = out .. getValue('tonometer.device') .. '.\n' + end + + return out + </resume> <queries> + <query service="pracro" class="missing_eye_right" ttl="1000000"/> + <query service="pracro" class="missing_eye_left" ttl="1000000"/> </queries> <maps> + <map name="missing_eye_right_map"> + value = 0 + timestamp = 0 + source = 'pracro' + + if( missing_eye_right ) + then + if( missing_eye_right.value and missing_eye_right.value == '' ) + then + value = '' + timestamp = missing_eye_right.timestamp + else + value = 'mangler' + timestamp = missing_eye_right.timestamp + end + end + return value, timestamp, source + </map> + <map name="missing_eye_left_map"> + value = 0 + timestamp = 0 + source = 'pracro' + + if( missing_eye_left ) + then + if( missing_eye_left.value and missing_eye_left.value == '' ) + then + value = '' + timestamp = missing_eye_left.timestamp + else + value = 'mangler' + timestamp = missing_eye_left.timestamp + end + end + return value, timestamp, source + </map> </maps> <scripts> <script language="lua" name="lt80gt0"> @@ -31,6 +94,40 @@ ${tonometer.device}.</resume> return false end </script> + <script language="lua" name="right_eye"> + if ( value == 'mangler' ) + then + disable('right_eye_frame') + else + enable('right_eye_frame') + end + + if( getValue('tonometer.right.missing') == 'mangler' and getValue('tonometer.left.missing') == 'mangler' ) + then + disable('device_frame') + else + enable('device_frame') + end + + return true + </script> + <script language="lua" name="left_eye"> + if ( value == 'mangler' ) + then + disable('left_eye_frame') + else + enable('left_eye_frame') + end + + if( getValue('tonometer.right.missing') == 'mangler' and getValue('tonometer.left.missing') == 'mangler' ) + then + disable('device_frame') + else + enable('device_frame') + end + + return true + </script> </scripts> <window caption="Øjentryk (B.2.2.5)" layout="vbox"> @@ -38,30 +135,44 @@ ${tonometer.device}.</resume> <frame layout="hbox"> <!-- Højre øje --> - <frame caption="Højre øje" layout="hbox"> - <label caption="Tryk:"/> - <spacer/> - <lineedit name="tonometer.pressure.right" regexp="\d{1,2}" script="lt80gt0" value=""/> - <label caption="mmHg"/> - <spacer/> + <frame layout="vbox"> + <checkbox caption="Der kan ikke måles på højre øje" + name="tonometer.right.missing" script="right_eye" + map="missing_eye_right_map" + truevalue="mangler" falsevalue="" value=""/> + <frame name="right_eye_frame" caption="Højre øje" layout="hbox"> + <label caption="Tryk:"/> + <spacer/> + <lineedit name="tonometer.pressure.right" regexp="\d{1,2}" script="lt80gt0" value=""/> + <label caption="mmHg"/> + <spacer/> + </frame> </frame> <!-- Venstre øje --> - <frame caption="Venstre øje" layout="hbox"> - <label caption="Tryk:"/> - <spacer/> - <lineedit name="tonometer.pressure.left" regexp="\d{1,2}" script="lt80gt0" value=""/> - <label caption="mmHg"/> - <spacer/> + <frame layout="vbox"> + <checkbox caption="Der kan ikke måles på venstre øje" + name="tonometer.left.missing" script="left_eye" + map="missing_eye_left_map" + truevalue="mangler" falsevalue="" value=""/> + <frame name="left_eye_frame" caption="Venstre øje" layout="hbox"> + <label caption="Tryk:"/> + <spacer/> + <lineedit name="tonometer.pressure.left" regexp="\d{1,2}" script="lt80gt0" value=""/> + <label caption="mmHg"/> + <spacer/> + </frame> </frame> </frame> - <label caption="Tonometer måling foretaget med:"/> - <combobox name="tonometer.device" value=""> - <item caption="Applanationstonometer" value="Appl"/> - <item caption="Lufttonometer" value="Luft"/> - </combobox> + <frame name="device_frame" layout="vbox"> + <label caption="Tonometer måling foretaget med:"/> + <combobox name="tonometer.device" value=""> + <item caption="Applanationstonometer" value="Appl"/> + <item caption="Lufttonometer" value="Luft"/> + </combobox> + </frame> <!-- Knapper --> <frame layout="hbox"> |