-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathdata.php
128 lines (122 loc) · 3.66 KB
/
data.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
<?php
/*
* The MIT License
*
* Copyright 2018 ricardonolan.
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
session_start();
include('lib/functions.php');
include('lib/calc.php');
$f = new functions();
$c = new calc();
$f->getuser($_SESSION['uid']);
if(isset($_GET['getchart']) && $_GET['getchart'] == "true")
{
echo $f->getchart($_GET['range']);
}
if(isset($_GET['gettable']) && $_GET['gettable'] == "true")
{
$f->getuserstats();
if(!empty($f->stats['rigs']))
{
$data = array();
foreach($f->stats['rigs'] as $key => $value)
{
$value['miner_hashes'] = implode(" ", array_map('round', explode(" ", $value['miner_hashes'])));
$value['temp'] = implode(" ", array_map('round', explode(" ", $value['temp'])));
$value['fanrpm'] = implode(" ", array_map(function($input)
{
return round($input / 1000);
}, explode(" ", $value['fanrpm'])));
$days = floor($value['uptime'] / 86400);
$hours = floor($value['uptime'] % 86400 / 3600);
$mins = floor($value['uptime'] / 60 % 60);
$secs = floor($value['uptime'] % 60);
$uptime = sprintf('%02d Days + %02d:%02d:%02d', $days, $hours, $mins, $secs);
$hashes = explode(" ",$value['miner_hashes']);
$mining_instance=$value['gpus'];
foreach($hashes as $hash){
if($hash==0)
{
$mining_instance--;
}
}
$data["data"][] = array(
$key,
$value['rack_loc'],
$uptime,
"<a href='http://".$value['ip']."' target='_blank'>".$value['ip']."</a>",
$mining_instance . " / " . $value['gpus'],
$value['hash'],
$value['miner_hashes'],
$value['temp'],
$value['fanrpm']);
}
echo json_encode($data, 1);
}
}
if(isset($_GET['getrigcount']) && $_GET['getrigcount'] == "true")
{
echo "(" . $f->countrigs() . " rigs and counting!)";
}
if(isset($_GET['gethashrate']) && $_GET['gethashrate'] == "true")
{
$f->getuserstats();
if(!empty($f->stats['rigs']))
{
$total_hash = 0;
foreach($f->stats['rigs'] as $key => $value)
{
$total_hash+=$value['hash'];
}
}
echo $total_hash;
}
if(isset($_GET['getprofit']) && $_GET['getprofit'] == "true")
{
$f->getuserstats();
$total_hash = 0;
foreach($f->stats['rigs'] as $key => $value)
{
$hashes = explode(" ", $value['miner_hashes']);
$total_hash += array_sum($hashes);
}
$price = $c->getprice("Ethereum");
$profit = $c->geteth($total_hash);
$currency=(isset($_GET['currency'])&&$_GET['currency']!="")?$_GET['currency']:"eth";
switch($currency)
{
case "btc":
$curprice=$price[0]->price_btc;
break;
case "usd":
$curprice=$price[0]->price_usd;
break;
case "eur":
$curprice=$price[0]->price_eur;
break;
default:
$currency="eth";
$curprice=1;
break;
}
echo round($profit * $curprice, 4);
}