added machine gun turret popup
[profile/ivi/GhostCluster.git] / business.js
1 var counter = 0;
2 var velocityStream;
3 var batteryVoltageStream;
4 var rpmStream;
5 var headingStream;
6 var engineCoolantStream;
7 var throttleStream;
8 var intakeAirTempStream;
9 var engineLoadStream;
10 var engineoiltemp;
11 var mafStream;
12
13 var vehicle;
14
15 var mpgReadings = 0;
16 var prevMpg = 0;
17
18 function calcAverageMpg(newMpg) {
19         prevMpg += parseInt(newMpg);
20         mpgReadings++;
21
22         var averageMpg = prevMpg / mpgReadings;
23         $("#avgmpg").text(Math.floor(averageMpg));
24 }
25
26
27 var velReadings = 0;
28 var prevVel = 0;
29
30 function calcAverageVelocity(newVel) {
31         prevVel += parseInt(newVel);
32         velReadings++;
33
34         var averageVel = prevVel / velReadings;
35         $("#avgspeed").text(Math.floor(averageVel));
36 }
37
38 function connected()
39 {
40     vehicle.subscribe(["running_status_speedometer", "running_status_engine_speed", "running_status_transmission_gear_status", "running_status_steering_wheel_angle"]);
41     vehicle.subscribe(["running_status_engine_speed"]);
42     vehicle.subscribe(["running_status_transmission_gear_status"]);
43     vehicle.subscribe(["running_status_steering_wheel_angle"]);
44     vehicle.subscribe(["ThrottlePosition"]);
45     vehicle.subscribe(["EngineCoolantTemperature"]);
46     vehicle.subscribe(["MachineGunTurretStatus"]);
47
48     document.addEventListener("running_status_speedometer",function(data) {
49
50                                   adjvalue = data.value;
51                                   var velocityUnits = $('#velocityUnits');
52
53                                   if(velocityUnits.text() === "MPH")
54                                       adjvalue = Math.floor(data.value * 0.62137);
55
56                                   $('#velocity').text(adjvalue);
57
58                                   calcAverageVelocity(adjvalue);
59                               },false);
60
61     document.addEventListener("running_status_engine_speed", function(data) {
62                                   var value = data.value;
63                                   if(value > 10000) value =10000;
64                                   var needleDegs = value / 10000 * 180;
65                                   $('#rpms').text(value);
66                                   $('#rpmNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
67                               },false);
68
69     document.addEventListener("running_status_transmission_gear_status",function(data) {
70                                   value = data.value;
71                                   $('#gear').text(value);
72                               },false);
73
74     document.addEventListener("running_status_steering_wheel_angle", function(data) {
75                                   value = data.value;
76                                   $('#wheel').css("-webkit-transform","rotate("+value+"deg)");
77                               },false);
78
79     document.addEventListener("ThrottlePosition", function(data) {
80                                   value = data.value;
81                                   var needleDegs = (value / 100 * 180) + 270
82
83                                   $('#throttleNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
84
85                               },false);
86
87     document.addEventListener("EngineCoolantTemperature", function(data) {
88                                   value = data.value;
89                                   var needleDegs = (value / 180 * 70) + 270
90
91                                   $('#engineCoolantNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
92
93                               },false);
94
95     document.addEventListener("MachineGunTurretStatus", function(data) {
96                                   value = data.value;
97                                   if(value === true)
98                                       $('#machineGunTurretPopup').popup('open');
99
100                               },false);
101
102
103
104 }
105
106 function connect(addy)
107 {
108     vehicle = new Vehicle(connected, function(){$('#velocity').text("ERR");}, "ws://"+addy, "http-only");
109 }
110
111 window.onload = function()
112 {
113     var addy = "localhost:23000";
114
115     if(typeof(Storage)!== "undefined")
116     {
117         addyTemp = localStorage.address;
118         if(addyTemp !== undefined) addy = addyTemp;
119     }
120
121     $("#address").val(addy);
122     $("#address").change(function() { localStorage.address = $("#address").val(); });
123     $("#connectButton").click(function() { connect(addy) });
124
125
126
127     connect(addy);
128
129     var velocityUnits = $('#velocityUnits');
130     velocityUnits.click(function() {
131                               if(velocityUnits.text() === "MPH")
132                               {
133                                   velocityUnits.text("KPH");
134                               }
135                               else velocityUnits.text("MPH");
136                         });
137 }