From f86bc337549628752b4e8bebff500d1d38f4896e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kriszti=C3=A1n=20L=C3=B6ki?= <krisztian.loki@ess.eu>
Date: Thu, 11 Jun 2020 17:14:40 +0200
Subject: [PATCH] Converted warning.js to warning.py

---
 .../COMMON/Faceplate/vac_warning_error.bob    |  2 +-
 .../COMMON/DEVICES/vacuum/vpg/vac-vpg.bob     |  2 +-
 .../COMMON/DEVICES/vacuum/vpg/warning.js      | 61 -------------------
 .../COMMON/DEVICES/vacuum/vpg/warning.py      | 38 ++++++++++++
 .../COMMON/DEVICES/vacuum/vpi/vac_vpi.bob     |  2 +-
 .../vpp-vpdp/Faceplate/vac-vpdp-popup.bob     |  2 +-
 .../DEVICES/vacuum/vpp-vpdp/vac_vpp-vpdp.bob  |  2 +-
 .../COMMON/DEVICES/vacuum/vpp-vpdp/warning.js | 37 -----------
 .../COMMON/DEVICES/vacuum/vpp-vpdp/warning.py | 30 +++++++++
 .../vacuum/vpt/Faceplate/vac-vpt-popup.bob    |  2 +-
 .../COMMON/DEVICES/vacuum/vpt/vac_vpt.bob     |  2 +-
 .../COMMON/DEVICES/vacuum/vpt/warning.js      | 37 -----------
 .../COMMON/DEVICES/vacuum/vpt/warning.py      | 30 +++++++++
 .../vva-vvf-vvg/Faceplate/vac-vv-popup.bob    |  2 +-
 .../DEVICES/vacuum/vva/vac_angle-vva.bob      |  2 +-
 .../DEVICES/vacuum/vva/vac_straight-vva.bob   |  2 +-
 .../COMMON/DEVICES/vacuum/vva/warning.js      | 61 -------------------
 .../COMMON/DEVICES/vacuum/vva/warning.py      | 38 ++++++++++++
 .../COMMON/DEVICES/vacuum/vvf/vac_vvf.bob     |  2 +-
 .../COMMON/DEVICES/vacuum/vvf/warning.js      | 61 -------------------
 .../COMMON/DEVICES/vacuum/vvf/warning.py      | 38 ++++++++++++
 .../COMMON/DEVICES/vacuum/vvg/vac_vvg.bob     |  2 +-
 .../COMMON/DEVICES/vacuum/vvg/warning.js      | 61 -------------------
 .../COMMON/DEVICES/vacuum/vvg/warning.py      | 38 ++++++++++++
 .../vacuum/vvs/Faceplate/vac-vvs-popup.bob    |  2 +-
 .../DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob  |  2 +-
 .../COMMON/DEVICES/vacuum/vvs/vac_vvs.bob     |  2 +-
 .../COMMON/DEVICES/vacuum/vvs/warning.js      | 29 ---------
 .../COMMON/DEVICES/vacuum/vvs/warning.py      | 26 ++++++++
 29 files changed, 253 insertions(+), 362 deletions(-)
 delete mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vpg/warning.js
 create mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vpg/warning.py
 delete mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/warning.js
 create mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/warning.py
 delete mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vpt/warning.js
 create mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vpt/warning.py
 delete mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vva/warning.js
 create mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vva/warning.py
 delete mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vvf/warning.js
 create mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vvf/warning.py
 delete mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vvg/warning.js
 create mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vvg/warning.py
 delete mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vvs/warning.js
 create mode 100644 NON-APPROVED/COMMON/DEVICES/vacuum/vvs/warning.py

diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/Faceplate/vac_warning_error.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/Faceplate/vac_warning_error.bob
index 5b8d4941..29097058 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/Faceplate/vac_warning_error.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/COMMON/Faceplate/vac_warning_error.bob
@@ -148,7 +148,7 @@
         </rule>
       </rules>
       <scripts>
-        <script file="$(WIDGET_ROOT)/$(WIDGET)/warning.js">
+        <script file="$(WIDGET_ROOT)/$(WIDGET)/warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/vac-vpg.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/vac-vpg.bob
index 10e4b2d5..f978f0dd 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/vac-vpg.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/vac-vpg.bob
@@ -753,7 +753,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="warning.js">
+      <script file="warning.py">
         <pv_name>$(vacPREFIX):WarningR</pv_name>
         <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/warning.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/warning.js
deleted file mode 100644
index cf0bbd4e..00000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/warning.js
+++ /dev/null
@@ -1,61 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var warningMsg  = "";
-var warningCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	warningCode = PVUtil.getLong(pvs[1]);
-
-switch (warningCode) {
-	case 99:
-		warningMsg = "Service Mode (Leak Detection) Over Time";
-		break;
-	case 19:
-		warningMsg = "High Vacuum Pumping Starting Not Possible - All Systems are Locked";
-		break;
-	case 18:
-		warningMsg = "1st High Vacuum Pumping System Error - Angle Valve Position Error";
-		break;
-	case 17:
-		warningMsg = "2nd High Vacuum Pumping System Error - Angle Valve Position Error";
-		break;
-	case 16:
-		warningMsg = "3rd High Vacuum Pumping System Error - Angle Valve Position Error";
-		break;
-	case 15:
-		warningMsg = "4th High Vacuum Pumping System Error - Angle Valve Position Error";
-		break;
-	case 14:
-		warningMsg = "5th High Vacuum Pumping System Error - Angle Valve Position Error";
-		break;
-	case 11:
-		warningMsg = "Atmospheric & Vacuum Starting are Enabled";
-		break;
-	case 10:
-		warningMsg = "No Starting Enabled";
-		break;
-	case 9:
-		warningMsg = "Atmospheric Starting is Enabled";
-		break;
-	case 3:
-		warningMsg = "Automatic Restart On-going";
-		break;
-	case 2:
-		warningMsg = "All Pumping Systems Locked - Starting Not Possible";
-		break;
-	case 1:
-		warningMsg = "No Mode Selected";
-		break;
-
-	case 0:
-		break;
-	default:
-		warningMsg = "Warning Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown warning code " + pvs[1] + " : " + warningCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", warningMsg);
-widget.setPropertyValue("tooltip", warningMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/warning.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/warning.py
new file mode 100644
index 00000000..64df4ea7
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpg/warning.py
@@ -0,0 +1,38 @@
+#Generated from VACUUM_VAC-VPG.def at 2020-06-11_16:18:29
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Service Mode (Leak Detection) Over Time",
+                 19 : "High Vacuum Pumping Starting Not Possible - All Systems are Locked",
+                 18 : "1st High Vacuum Pumping System Error - Angle Valve Position Error",
+                 17 : "2nd High Vacuum Pumping System Error - Angle Valve Position Error",
+                 16 : "3rd High Vacuum Pumping System Error - Angle Valve Position Error",
+                 15 : "4th High Vacuum Pumping System Error - Angle Valve Position Error",
+                 14 : "5th High Vacuum Pumping System Error - Angle Valve Position Error",
+                 11 : "Atmospheric & Vacuum Starting are Enabled",
+                 10 : "No Starting Enabled",
+                 9 : "Atmospheric Starting is Enabled",
+                 3 : "Automatic Restart On-going",
+                 2 : "All Pumping Systems Locked - Starting Not Possible",
+                 1 : "No Mode Selected",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Warning Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown warning code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpi/vac_vpi.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpi/vac_vpi.bob
index fc4327bc..13ab3026 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpi/vac_vpi.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpi/vac_vpi.bob
@@ -282,7 +282,7 @@
       <height>16</height>
       <transparent>true</transparent>
       <scripts>
-        <script file="warning.js">
+        <script file="warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/Faceplate/vac-vpdp-popup.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/Faceplate/vac-vpdp-popup.bob
index 5297df8a..c28082e5 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/Faceplate/vac-vpdp-popup.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/Faceplate/vac-vpdp-popup.bob
@@ -274,7 +274,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="../warning.js">
+      <script file="../warning.py">
         <pv_name>$(vacPREFIX):WarningR</pv_name>
         <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/vac_vpp-vpdp.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/vac_vpp-vpdp.bob
index 686f5bf5..e41de95e 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/vac_vpp-vpdp.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/vac_vpp-vpdp.bob
@@ -297,7 +297,7 @@
       <height>16</height>
       <transparent>true</transparent>
       <scripts>
-        <script file="warning.js">
+        <script file="warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/warning.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/warning.js
deleted file mode 100644
index 71c4706b..00000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/warning.js
+++ /dev/null
@@ -1,37 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var warningMsg  = "";
-var warningCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	warningCode = PVUtil.getLong(pvs[1]);
-
-switch (warningCode) {
-	case 99:
-		warningMsg = "Pump Not Started";
-		break;
-	case 98:
-		warningMsg = "Pump Starting Prevented by Tripped Interlock";
-		break;
-	case 5:
-		warningMsg = "Pressure Interlock Bypassed";
-		break;
-	case 4:
-		warningMsg = "Hardware Interlock Bypassed";
-		break;
-	case 3:
-		warningMsg = "Software Interlock Bypassed";
-		break;
-
-	case 0:
-		break;
-	default:
-		warningMsg = "Warning Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown warning code " + pvs[1] + " : " + warningCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", warningMsg);
-widget.setPropertyValue("tooltip", warningMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/warning.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/warning.py
new file mode 100644
index 00000000..d8886ab7
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpp-vpdp/warning.py
@@ -0,0 +1,30 @@
+#Generated from VACUUM_VAC-VPP_VAC-VPDP.def at 2020-06-11_16:17:53
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Pump Not Started",
+                 98 : "Pump Starting Prevented by Tripped Interlock",
+                 5 : "Pressure Interlock Bypassed",
+                 4 : "Hardware Interlock Bypassed",
+                 3 : "Software Interlock Bypassed",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Warning Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown warning code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/Faceplate/vac-vpt-popup.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/Faceplate/vac-vpt-popup.bob
index 08e2d8a4..f57af9d2 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/Faceplate/vac-vpt-popup.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/Faceplate/vac-vpt-popup.bob
@@ -394,7 +394,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="$(WIDGET_ROOT)/vpt/warning.js">
+      <script file="$(WIDGET_ROOT)/vpt/warning.py">
         <pv_name>$(vacPREFIX):WarningR</pv_name>
         <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/vac_vpt.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/vac_vpt.bob
index f20071b3..121e9f22 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/vac_vpt.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/vac_vpt.bob
@@ -281,7 +281,7 @@
       <height>16</height>
       <transparent>true</transparent>
       <scripts>
-        <script file="warning.js">
+        <script file="warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/warning.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/warning.js
deleted file mode 100644
index c1486fc2..00000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/warning.js
+++ /dev/null
@@ -1,37 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var warningMsg  = "";
-var warningCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	warningCode = PVUtil.getLong(pvs[1]);
-
-switch (warningCode) {
-	case 99:
-		warningMsg = "Bypass Interlock Activated";
-		break;
-	case 98:
-		warningMsg = "Pump Starting Prevented by Tripped Interlock";
-		break;
-	case 5:
-		warningMsg = "Pressure Interlock Bypassed";
-		break;
-	case 4:
-		warningMsg = "Hardware Interlock Bypassed";
-		break;
-	case 3:
-		warningMsg = "Software Interlock Bypassed";
-		break;
-
-	case 0:
-		break;
-	default:
-		warningMsg = "Warning Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown warning code " + pvs[1] + " : " + warningCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", warningMsg);
-widget.setPropertyValue("tooltip", warningMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/warning.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/warning.py
new file mode 100644
index 00000000..3371dc02
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vpt/warning.py
@@ -0,0 +1,30 @@
+#Generated from VACUUM_VAC-VPT.def at 2020-06-11_16:17:27
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Bypass Interlock Activated",
+                 98 : "Pump Starting Prevented by Tripped Interlock",
+                 5 : "Pressure Interlock Bypassed",
+                 4 : "Hardware Interlock Bypassed",
+                 3 : "Software Interlock Bypassed",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Warning Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown warning code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vva-vvf-vvg/Faceplate/vac-vv-popup.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vva-vvf-vvg/Faceplate/vac-vv-popup.bob
index 8a344bba..8e895b8d 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vva-vvf-vvg/Faceplate/vac-vv-popup.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vva-vvf-vvg/Faceplate/vac-vv-popup.bob
@@ -296,7 +296,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="$(WIDGET_ROOT)/$(WIDGET)/warning.js">
+      <script file="$(WIDGET_ROOT)/$(WIDGET)/warning.py">
         <pv_name>$(vacPREFIX):WarningR</pv_name>
         <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/vac_angle-vva.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/vac_angle-vva.bob
index 8710acb2..77b8757a 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/vac_angle-vva.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/vac_angle-vva.bob
@@ -286,7 +286,7 @@
       <height>16</height>
       <transparent>true</transparent>
       <scripts>
-        <script file="warning.js">
+        <script file="warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/vac_straight-vva.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/vac_straight-vva.bob
index 46179f36..eb62927c 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/vac_straight-vva.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/vac_straight-vva.bob
@@ -284,7 +284,7 @@
       <height>16</height>
       <transparent>true</transparent>
       <scripts>
-        <script file="warning.js">
+        <script file="warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/warning.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/warning.js
deleted file mode 100644
index 8e36dde6..00000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/warning.js
+++ /dev/null
@@ -1,61 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var warningMsg  = "";
-var warningCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	warningCode = PVUtil.getLong(pvs[1]);
-
-switch (warningCode) {
-	case 99:
-		warningMsg = "Valve Not Open / Device Not On";
-		break;
-	case 98:
-		warningMsg = "Bypass Interlock Time-Out";
-		break;
-	case 97:
-		warningMsg = "Open Interlock Active (Valve Closed)";
-		break;
-	case 96:
-		warningMsg = "Valve Opening Prevented by Tripped Interlock";
-		break;
-	case 15:
-		warningMsg = "Open Interlock Active (Valve Open)";
-		break;
-	case 14:
-		warningMsg = "Pressure Interlock No. 1 Bypassed / Overridden";
-		break;
-	case 13:
-		warningMsg = "Hardware Interlock No. 1 Bypassed / Overridden";
-		break;
-	case 12:
-		warningMsg = "Pressure Interlock No. 2 Bypassed / Overridden";
-		break;
-	case 11:
-		warningMsg = "Hardware Interlock No. 2 Bypassed / Overridden";
-		break;
-	case 10:
-		warningMsg = "Hardware Interlock No. 3 Bypassed / Overridden";
-		break;
-	case 9:
-		warningMsg = "Software Interlock Bypassed / Overridden";
-		break;
-	case 8:
-		warningMsg = "Open Interlock Active (Valve Closed)";
-		break;
-	case 7:
-		warningMsg = "Valve Opening Prevented by Tripped Interlock";
-		break;
-
-	case 0:
-		break;
-	default:
-		warningMsg = "Warning Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown warning code " + pvs[1] + " : " + warningCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", warningMsg);
-widget.setPropertyValue("tooltip", warningMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vva/warning.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/warning.py
new file mode 100644
index 00000000..27139b02
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vva/warning.py
@@ -0,0 +1,38 @@
+#Generated from VACUUM_VAC-VVA_VAC-VVG.def at 2020-06-11_16:15:17
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Valve Not Open",
+                 98 : "Bypass Interlock Time-Out",
+                 97 : "Open Interlock Active (Valve Closed)",
+                 96 : "Valve Opening Prevented by Tripped Interlock",
+                 15 : "Open Interlock Active (Valve Open)",
+                 14 : "Pressure Interlock No. 1 Bypassed / Overridden",
+                 13 : "Hardware Interlock No. 1 Bypassed / Overridden",
+                 12 : "Pressure Interlock No. 2 Bypassed / Overridden",
+                 11 : "Hardware Interlock No. 2 Bypassed / Overridden",
+                 10 : "Hardware Interlock No. 3 Bypassed / Overridden",
+                 9 : "Software Interlock Bypassed / Overridden",
+                 8 : "Open Interlock Active (Valve Closed)",
+                 7 : "Valve Opening Prevented by Tripped Interlock",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Warning Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown warning code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/vac_vvf.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/vac_vvf.bob
index 60260e75..141cd7e5 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/vac_vvf.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/vac_vvf.bob
@@ -284,7 +284,7 @@
       <height>16</height>
       <transparent>true</transparent>
       <scripts>
-        <script file="warning.js">
+        <script file="warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/warning.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/warning.js
deleted file mode 100644
index 8e36dde6..00000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/warning.js
+++ /dev/null
@@ -1,61 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var warningMsg  = "";
-var warningCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	warningCode = PVUtil.getLong(pvs[1]);
-
-switch (warningCode) {
-	case 99:
-		warningMsg = "Valve Not Open / Device Not On";
-		break;
-	case 98:
-		warningMsg = "Bypass Interlock Time-Out";
-		break;
-	case 97:
-		warningMsg = "Open Interlock Active (Valve Closed)";
-		break;
-	case 96:
-		warningMsg = "Valve Opening Prevented by Tripped Interlock";
-		break;
-	case 15:
-		warningMsg = "Open Interlock Active (Valve Open)";
-		break;
-	case 14:
-		warningMsg = "Pressure Interlock No. 1 Bypassed / Overridden";
-		break;
-	case 13:
-		warningMsg = "Hardware Interlock No. 1 Bypassed / Overridden";
-		break;
-	case 12:
-		warningMsg = "Pressure Interlock No. 2 Bypassed / Overridden";
-		break;
-	case 11:
-		warningMsg = "Hardware Interlock No. 2 Bypassed / Overridden";
-		break;
-	case 10:
-		warningMsg = "Hardware Interlock No. 3 Bypassed / Overridden";
-		break;
-	case 9:
-		warningMsg = "Software Interlock Bypassed / Overridden";
-		break;
-	case 8:
-		warningMsg = "Open Interlock Active (Valve Closed)";
-		break;
-	case 7:
-		warningMsg = "Valve Opening Prevented by Tripped Interlock";
-		break;
-
-	case 0:
-		break;
-	default:
-		warningMsg = "Warning Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown warning code " + pvs[1] + " : " + warningCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", warningMsg);
-widget.setPropertyValue("tooltip", warningMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/warning.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/warning.py
new file mode 100644
index 00000000..27139b02
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvf/warning.py
@@ -0,0 +1,38 @@
+#Generated from VACUUM_VAC-VVA_VAC-VVG.def at 2020-06-11_16:15:17
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Valve Not Open",
+                 98 : "Bypass Interlock Time-Out",
+                 97 : "Open Interlock Active (Valve Closed)",
+                 96 : "Valve Opening Prevented by Tripped Interlock",
+                 15 : "Open Interlock Active (Valve Open)",
+                 14 : "Pressure Interlock No. 1 Bypassed / Overridden",
+                 13 : "Hardware Interlock No. 1 Bypassed / Overridden",
+                 12 : "Pressure Interlock No. 2 Bypassed / Overridden",
+                 11 : "Hardware Interlock No. 2 Bypassed / Overridden",
+                 10 : "Hardware Interlock No. 3 Bypassed / Overridden",
+                 9 : "Software Interlock Bypassed / Overridden",
+                 8 : "Open Interlock Active (Valve Closed)",
+                 7 : "Valve Opening Prevented by Tripped Interlock",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Warning Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown warning code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/vac_vvg.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/vac_vvg.bob
index 94c812bf..930bf417 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/vac_vvg.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/vac_vvg.bob
@@ -284,7 +284,7 @@
       <height>16</height>
       <transparent>true</transparent>
       <scripts>
-        <script file="warning.js">
+        <script file="warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/warning.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/warning.js
deleted file mode 100644
index 8e36dde6..00000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/warning.js
+++ /dev/null
@@ -1,61 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var warningMsg  = "";
-var warningCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	warningCode = PVUtil.getLong(pvs[1]);
-
-switch (warningCode) {
-	case 99:
-		warningMsg = "Valve Not Open / Device Not On";
-		break;
-	case 98:
-		warningMsg = "Bypass Interlock Time-Out";
-		break;
-	case 97:
-		warningMsg = "Open Interlock Active (Valve Closed)";
-		break;
-	case 96:
-		warningMsg = "Valve Opening Prevented by Tripped Interlock";
-		break;
-	case 15:
-		warningMsg = "Open Interlock Active (Valve Open)";
-		break;
-	case 14:
-		warningMsg = "Pressure Interlock No. 1 Bypassed / Overridden";
-		break;
-	case 13:
-		warningMsg = "Hardware Interlock No. 1 Bypassed / Overridden";
-		break;
-	case 12:
-		warningMsg = "Pressure Interlock No. 2 Bypassed / Overridden";
-		break;
-	case 11:
-		warningMsg = "Hardware Interlock No. 2 Bypassed / Overridden";
-		break;
-	case 10:
-		warningMsg = "Hardware Interlock No. 3 Bypassed / Overridden";
-		break;
-	case 9:
-		warningMsg = "Software Interlock Bypassed / Overridden";
-		break;
-	case 8:
-		warningMsg = "Open Interlock Active (Valve Closed)";
-		break;
-	case 7:
-		warningMsg = "Valve Opening Prevented by Tripped Interlock";
-		break;
-
-	case 0:
-		break;
-	default:
-		warningMsg = "Warning Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown warning code " + pvs[1] + " : " + warningCode);
-		break;
-}
-
-if (widget.getType() != "action_button")
-	widget.setPropertyValue("text", warningMsg);
-widget.setPropertyValue("tooltip", warningMsg);
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/warning.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/warning.py
new file mode 100644
index 00000000..27139b02
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvg/warning.py
@@ -0,0 +1,38 @@
+#Generated from VACUUM_VAC-VVA_VAC-VVG.def at 2020-06-11_16:15:17
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Valve Not Open",
+                 98 : "Bypass Interlock Time-Out",
+                 97 : "Open Interlock Active (Valve Closed)",
+                 96 : "Valve Opening Prevented by Tripped Interlock",
+                 15 : "Open Interlock Active (Valve Open)",
+                 14 : "Pressure Interlock No. 1 Bypassed / Overridden",
+                 13 : "Hardware Interlock No. 1 Bypassed / Overridden",
+                 12 : "Pressure Interlock No. 2 Bypassed / Overridden",
+                 11 : "Hardware Interlock No. 2 Bypassed / Overridden",
+                 10 : "Hardware Interlock No. 3 Bypassed / Overridden",
+                 9 : "Software Interlock Bypassed / Overridden",
+                 8 : "Open Interlock Active (Valve Closed)",
+                 7 : "Valve Opening Prevented by Tripped Interlock",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Warning Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown warning code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac-vvs-popup.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac-vvs-popup.bob
index 007d99b9..2c990c25 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac-vvs-popup.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac-vvs-popup.bob
@@ -167,7 +167,7 @@
     <actions>
     </actions>
     <scripts>
-      <script file="../warning.js">
+      <script file="../warning.py">
         <pv_name>$(vacPREFIX):WarningR</pv_name>
         <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
       </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob
index b50110db..8edc13fd 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/Faceplate/vac_vvs.bob
@@ -287,7 +287,7 @@
         </rule>
       </rules>
       <scripts>
-        <script file="../warning.js">
+        <script file="../warning.py">
           <pv_name>$(DEVICENAME):WarningR</pv_name>
           <pv_name>$(DEVICENAME):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/vac_vvs.bob b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/vac_vvs.bob
index d502fae3..d409f0a9 100644
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/vac_vvs.bob
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/vac_vvs.bob
@@ -469,7 +469,7 @@
       <height>16</height>
       <transparent>true</transparent>
       <scripts>
-        <script file="warning.js">
+        <script file="warning.py">
           <pv_name>$(vacPREFIX):WarningR</pv_name>
           <pv_name>$(vacPREFIX):WarningCodeR</pv_name>
         </script>
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/warning.js b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/warning.js
deleted file mode 100644
index b6d530ea..00000000
--- a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/warning.js
+++ /dev/null
@@ -1,29 +0,0 @@
-PVUtil = org.csstudio.display.builder.runtime.script.PVUtil;
-ScriptUtil = org.csstudio.display.builder.runtime.script.ScriptUtil;
-
-var warningMsg  = "";
-var warningCode = 0;
-
-if (PVUtil.getLong(pvs[0]))
-	warningCode = PVUtil.getLong(pvs[1]);
-
-switch (warningCode) {
-	case 99:
-		warningMsg = "Open/Close command timeout";
-		break;
-
-	case 0:
-		break;
-	default:
-		warningMsg = "Warning Code: " + PVUtil.getString(pvs[1]);
-		org.csstudio.display.builder.runtime.script.ScriptUtil.getLogger().severe("Unknown warning code " + pvs[1] + " : " + warningCode);
-		break;
-}
-
-try {
-	pvs[2].setValue(warningMsg);
-} catch (err) {
-	if (widget.getType() != "action_button")
-		widget.setPropertyValue("text", warningMsg);
-	widget.setPropertyValue("tooltip", warningMsg);
-}
diff --git a/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/warning.py b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/warning.py
new file mode 100644
index 00000000..046d4f6f
--- /dev/null
+++ b/NON-APPROVED/COMMON/DEVICES/vacuum/vvs/warning.py
@@ -0,0 +1,26 @@
+#Generated from VACUUM_VAC-VVS.def at 2020-06-11_16:09:59
+from org.csstudio.display.builder.runtime.script import PVUtil, ScriptUtil
+
+msg  = ""
+code = 0
+
+if PVUtil.getLong(pvs[0]):
+    code = PVUtil.getLong(pvs[1])
+
+    msgs = dict({
+                 99 : "Open/Close command timeout",
+                 0 : ""
+                })
+
+    try:
+        msg = msgs[code]
+    except KeyError:
+        msg = "Warning Code: " + PVUtil.getString(pvs[1])
+        ScriptUtil.getLogger().severe("Unknown warning code {} : {}".format(pvs[1], code))
+
+try:
+    pvs[2].setValue(msg)
+except:
+    if widget.getType() != "action_button":
+        widget.setPropertyValue("text", msg)
+    widget.setPropertyValue("tooltip", msg)
-- 
GitLab