From 0b569e7e3776d88489e59bd3766b01abde68bd43 Mon Sep 17 00:00:00 2001
From: Andrew Bauer <zonexpertconsulting@outlook.com>
Date: Sun, 20 Dec 2020 08:29:39 -0600
Subject: [PATCH] replace mootools in control.js

---
 web/skins/classic/views/js/control.js | 40 +++++++++++++++++----------
 1 file changed, 25 insertions(+), 15 deletions(-)

diff --git a/web/skins/classic/views/js/control.js b/web/skins/classic/views/js/control.js
index d30db28c1..e3f73a8af 100644
--- a/web/skins/classic/views/js/control.js
+++ b/web/skins/classic/views/js/control.js
@@ -1,46 +1,56 @@
-var controlParms = "view=request&request=control";
-var controlReq = new Request.JSON( {url: thisUrl, method: 'post', timeout: AJAX_TIMEOUT, onSuccess: getControlResponse} );
 var form = $j('#controlForm');
 
-function getControlResponse( respObj, respText ) {
+function controlReq(data) {
+  $j.getJSON(thisUrl + '?view=request&request=control', data)
+      .done(getControlResponse)
+      .fail(logAjaxFail);
+}
+
+function getControlResponse(respObj, respText) {
   if ( !respObj ) {
     return;
   }
   //console.log( respText );
   if ( respObj.result != 'Ok' ) {
-    alert( "Control response was status = "+respObj.status+"\nmessage = "+respObj.message );
+    alert("Control response was status = "+respObj.status+"\nmessage = "+respObj.message);
   }
 }
 
 function controlCmd( control, event, xtell, ytell ) {
-  var locParms = "&id="+$('mid').get('value');
-  if ( event && (xtell || ytell) ) {
-    var target = event.target;
-    var coords = $(target).getCoordinates();
+  var mid = $j('#mid').getAttribute('value');
 
-    var x = event.pageX - coords.left;
-    var y = event.pageY - coords.top;
+  if ( event && (xtell || ytell) ) {
+    var data = {};
+    var target = $j(event.target);
+    var offset = target.offset();
+    var width = target.width();
+    var height = target.height();
+
+    var x = event.pageX - offset.left;
+    var y = event.pageY - offset.top;
 
     if ( xtell ) {
-      var xge = parseInt( (x*100)/coords.width );
+      var xge = parseInt( (x*100)/width );
       if ( xtell == -1 ) {
         xge = 100 - xge;
       } else if ( xtell == 2 ) {
         xge = 2*(50 - xge);
       }
-      locParms += "&xge="+xge;
+      data.xge = xge;
     }
     if ( ytell ) {
-      var yge = parseInt( (y*100)/coords.height );
+      var yge = parseInt( (y*100)/height );
       if ( ytell == -1 ) {
         yge = 100 - yge;
       } else if ( ytell == 2 ) {
         yge = 2*(50 - yge);
       }
-      locParms += "&yge="+yge;
+      data.yge = yge;
     }
   }
-  controlReq.send( controlParms+"&control="+control+locParms );
+  data.id = mid;
+  data.control = control;
+  controlReq(data);
 }
 
 function initPage() {