save address for future use
[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
47     document.addEventListener("running_status_speedometer",function(data) {
48
49                                   adjvalue = data.value;
50                                   var velocityUnits = $('#velocityUnits');
51
52                                   if(velocityUnits.text() === "MPH")
53                                       adjvalue = Math.floor(data.value * 0.62137);
54
55                                   $('#velocity').text(adjvalue);
56
57                                   calcAverageVelocity(adjvalue);
58                               },false);
59
60     document.addEventListener("running_status_engine_speed", function(data) {
61                                   var value = data.value;
62                                   if(value > 10000) value =10000;
63                                   var needleDegs = value / 10000 * 180;
64                                   $('#rpms').text(value);
65                                   $('#rpmNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
66                               },false);
67
68     document.addEventListener("running_status_transmission_gear_status",function(data) {
69                                   value = data.value;
70                                   $('#gear').text(value);
71                               },false);
72
73     document.addEventListener("running_status_steering_wheel_angle", function(data) {
74                                   value = data.value;
75                                   $('#wheel').css("-webkit-transform","rotate("+value+"deg)");
76                               },false);
77
78     document.addEventListener("ThrottlePosition", function(data) {
79                                   value = data.value;
80                                   var needleDegs = (value / 100 * 180) + 270
81
82                                   $('#throttleNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
83
84                               },false);
85
86     document.addEventListener("EngineCoolantTemperature", function(data) {
87                                   value = data.value;
88                                   var needleDegs = (value / 180 * 70) + 270
89
90                                   $('#engineCoolantNeedle').css("-webkit-transform","rotate("+needleDegs+"deg)");
91
92                               },false);
93
94
95
96 }
97
98 function connect(addy)
99 {
100     vehicle = new Vehicle(connected, function(){$('#velocity').text("ERR");}, "ws://"+addy, "http-only");
101 }
102
103 window.onload = function()
104 {
105     var addy = "localhost:23000";
106
107     if(typeof(Storage)!== "undefined")
108     {
109         addyTemp = localStorage.address;
110         if(addyTemp !== undefined) addy = addyTemp;
111     }
112
113     $("#address").val(addy);
114     $("#address").change(function() { localStorage.address = $("#address").val(); });
115     $("#connectButton").click(function() { connect(addy) });
116
117
118
119     connect(addy);
120
121     var velocityUnits = $('#velocityUnits');
122     velocityUnits.click(function() {
123                               if(velocityUnits.text() === "MPH")
124                               {
125                                   velocityUnits.text("KPH");
126                               }
127                               else velocityUnits.text("MPH");
128                         });
129 }