summaryrefslogtreecommitdiff
path: root/server/xml/macros/egen_brille-1.0.xml
diff options
context:
space:
mode:
Diffstat (limited to 'server/xml/macros/egen_brille-1.0.xml')
-rw-r--r--server/xml/macros/egen_brille-1.0.xml267
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) &gt;= -25 and tonumber(value) &lt;= 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) &gt;= -15 and tonumber(value) &lt;= 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) &gt;= 0 and tonumber(value) &lt;= 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>