diff options
Diffstat (limited to 'server/xml/macros/egen_brille-1.0.xml')
-rw-r--r-- | server/xml/macros/egen_brille-1.0.xml | 267 |
1 files changed, 267 insertions, 0 deletions
diff --git a/server/xml/macros/egen_brille-1.0.xml b/server/xml/macros/egen_brille-1.0.xml new file mode 100644 index 0000000..19eb15a --- /dev/null +++ b/server/xml/macros/egen_brille-1.0.xml @@ -0,0 +1,267 @@ +<?xml version='1.0' encoding='UTF-8'?> +<!-- + 20081203: Bent Bisballe Nyeng + Feltnavnene ændret så de giver mening. + --> +<!-- + 20090108: Bent Bisballe Nyeng + Højre/venstre byttet om. + --> +<!-- + 20090202: Bent Bisballe Nyeng + 'missing eye' tilføjet. + --> +<macro name="egen_brille" version="1.0"> + <resume language="lua"> + out = '' + if ( getValue('lensmeter.right.missing') == '' ) + then + out = out .. 'Egen brille højre øje: ' .. getValue('lensmeter.right.sphere') + .. ' sf, ' .. getValue('lensmeter.right.cyl') .. ' cyl ' + .. getValue('lensmeter.right.axis') .. ' grader.' + end + + if ( getValue('lensmeter.left.missing') == '' ) + then + out = out .. 'Egen brille venstre øje: ' .. getValue('lensmeter.left.sphere') + .. ' sf, ' .. getValue('lensmeter.left.cyl') .. ' cyl ' + .. getValue('lensmeter.left.axis') .. ' grader.' + end + + return out + </resume> + <queries> + <query class="lensmeter" ttl="100000"/> + <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> + <map name="lensmeter.left.sphere"> + -- Returning 0, 0 invalidates the result + value = 0 + timestamp = 0 + source = 0 + + if(lensmeter and lensmeter.left and lensmeter.left.sphere and lensmeter.left.sphere.value and lensmeter.left.sphere.timestamp) + then + value = lensmeter.left.sphere.value + -- convert . to , + value = string.gsub(value, '[.]', ',') + timestamp = lensmeter.left.sphere.timestamp + source = lensmeter.left.sphere.source + end + return value, timestamp, source + </map> + <map name="lensmeter.left.cyl"> + -- Returning 0, 0 invalidates the result + value = 0 + timestamp = 0 + source = 0 + + if(lensmeter and lensmeter.left and lensmeter.left.cyl and lensmeter.left.cyl.value and lensmeter.left.cyl.timestamp) + then + value = lensmeter.left.cyl.value + -- convert . to , + value = string.gsub(value, '[.]', ',') + timestamp = lensmeter.left.cyl.timestamp + source = lensmeter.left.cyl.source + end + return value, timestamp, source + </map> + <map name="lensmeter.right.sphere"> + -- Returning 0, 0 invalidates the result + value = 0 + timestamp = 0 + source = 0 + + if(lensmeter and lensmeter.right and lensmeter.right.sphere and lensmeter.right.sphere.value and lensmeter.right.sphere.timestamp) + then + value = lensmeter.right.sphere.value + -- convert . to , + value = string.gsub(value, '[.]', ',') + timestamp = lensmeter.right.sphere.timestamp + source = lensmeter.right.sphere.source + end + return value, timestamp, source + </map> + <map name="lensmeter.right.cyl"> + -- Returning 0, 0 invalidates the result + value = 0 + timestamp = 0 + source = 0 + + if(lensmeter and lensmeter.right and lensmeter.right.cyl and lensmeter.right.cyl.value and lensmeter.right.cyl.timestamp) + then + value = lensmeter.right.cyl.value + -- convert . to , + value = string.gsub(value, '[.]', ',') + timestamp = lensmeter.right.cyl.timestamp + source = lensmeter.right.cyl.source + end + return value, timestamp, source + </map> + </maps> + <scripts> + <script language="lua" name="lt20gt-25"> + if(value == '') + then + return false + end + + value = string.gsub(value, ',', '.') + if(tonumber(value) >= -25 and tonumber(value) <= 20) + then + return true + else + return false + end + </script> + <script language="lua" name="lt10gt-15"> + if(value == '') + then + return false + end + + value = string.gsub(value, ',', '.') + if(tonumber(value) >= -15 and tonumber(value) <= 10) + then + return true + else + return false + end + </script> + <script language="lua" name="lt359gt0"> + if(value == '') + then + return false + end + + value = string.gsub(value, ',', '.') + if(tonumber(value) >= 0 and tonumber(value) <= 359) + then + return true + else + return false + end + </script> + <script language="lua" name="right_eye"> + if ( value == 'mangler' ) + then + disable('right_eye_frame') + else + enable('right_eye_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 + return true + </script> + </scripts> + <widgets caption="Egen brille (B.2.2.2)" + layout="vbox"> + + <frame layout="hbox"> + + <!-- Højre øje --> + <frame layout="vbox"> + <checkbox caption="Der er ikke målt på højre øje" + name="lensmeter.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"> + + <frame layout="vbox"> + <label caption="Sf:"/> + <lineedit name="lensmeter.right.sphere" map="lensmeter.right.sphere" + regexp="[+-]{0,1}\d{1,2},\d{2}" script="lt20gt-25" value=""/> + </frame> + <frame layout="vbox"> + <label caption="Cyl:"/> + <lineedit name="lensmeter.right.cyl" map="lensmeter.right.cyl" + regexp="[+-]{0,1}\d{1,2},\d{2}" script="lt10gt-15" value=""/> + </frame> + <frame layout="vbox"> + <label caption="Grader:"/> + <lineedit name="lensmeter.right.axis" map="lensmeter.right.axis" + regexp="[\d]+" script="lt359gt0" value=""/> + </frame> + </frame> + </frame> + + <!-- Venstre øje --> + <frame layout="vbox"> + <checkbox caption="Der er ikke målt på venstre øje" + name="lensmeter.left.missing" script="left_eye" + map="missing_eye_left_map" + truevalue="mangler" falsevalue="" value=""/> + <frame name="left_eye_frame" caption="Venstre øje" layout="hbox"> + + <frame layout="vbox"> + <label caption="Sf:"/> + <lineedit name="lensmeter.left.sphere" map="lensmeter.left.sphere" + regexp="[+-]{0,1}\d{1,2},\d{2}" script="lt20gt-25" value=""/> + </frame> + <frame layout="vbox"> + <label caption="Cyl:"/> + <lineedit name="lensmeter.left.cyl" map="lensmeter.left.cyl" + regexp="[+-]{0,1}\d{1,2},\d{2}" script="lt10gt-15" value=""/> + </frame> + <frame layout="vbox"> + <label caption="Grader:"/> + <lineedit name="lensmeter.left.axis" map="lensmeter.left.axis" + regexp="[\d]+" script="lt359gt0" value=""/> + </frame> + </frame> + </frame> + + </frame> + + <!-- Knapper --> + <frame layout="hbox"> + <spacer /> + <button caption="Gem" action="commit"/> + </frame> + </widgets> +</macro> |