diff --git a/README.md b/README.md
index 522a9a5..247f8f4 100755
--- a/README.md
+++ b/README.md
@@ -43,11 +43,21 @@ a backup of your sqlite.db3 database.
## Changelog
-### (WIP) Version 0.9.2
+### (WIP) Version 0.9.3
--TODO: More info in admin page
+-TODO: Cleaner code
--Fix duplicate entries for failed checks
+### Version 0.9.2 (Beta)
+
+-A bit more info in admin page (Checks->Errors/History info)
+
+-Fix duplicate entries for failed checks (Less false failed tests)
+
+-More optimizations when lot of pages/tests
+
+-Show correct dates in index
+
+-Updater fixed, 0.9.1 not working right
### Version 0.9.1 (Beta)
diff --git a/assets/html/indexpage.twig b/assets/html/indexpage.twig
index bf3db5c..9c34fb0 100755
--- a/assets/html/indexpage.twig
+++ b/assets/html/indexpage.twig
@@ -32,21 +32,7 @@
{# "Switch" type #}
{% if check.ID_TC == 1 or check.ID_TC == 2 or check.ID_TC == 4 %} {# Ping, HttpCode, SQL DB #}
- {#IF/SWITCH uptime to text#}
- {%if check.uptime <= 100 and check.uptime > 90 %}
- {{T_.status_right}}
- {%elseif check.uptime <= 95 and check.uptime > 60 %}
- {{T_.status_lproblems}}
- {%elseif check.uptime <= 60 and check.uptime > 15 %}
- {{T_.status_problems}}
- {%elseif check.uptime <= 15 and check.uptime >= 0 %}
- {{T_.status_outofserv}}
- {%elseif check.uptime == 255 %}
- {{T_.status_maintenance}}
- {%else%}
- {{T_.status_empty}}
- {%endif%}
- {#END IF/SWITCH#}
+ {{check.statusText}}
({{ check.uptime}}%)
|
{% if check.uptime != -1 %}{#Only if records exists#}
diff --git a/connect.php b/connect.php
index 02ba389..94f129e 100755
--- a/connect.php
+++ b/connect.php
@@ -1,5 +1,5 @@
4
+ return array($T_['status_outofserv'],'red');
+ break;
+ }
}
diff --git a/index.php b/index.php
index 22daf7b..93ad878 100755
--- a/index.php
+++ b/index.php
@@ -6,7 +6,7 @@ $results = dbw_query($db_conn,"SELECT * FROM GROUPS"); //All groups
while ($group = dbw_fetch_array($db_conn,$results)){ //Know name of all groups
$groups[$group['ID_G']] = $group['name'];
}
-
+unset($results); //Free mem
$results = dbw_query($db_conn,"SELECT * FROM CHECKS ORDER BY ID_G"); //All checks
@@ -21,10 +21,10 @@ while ($onechk = dbw_fetch_array($db_conn,$results)){
case 2: //HttpCode
case 4: //MySQL
- if (dbw_query_fetch_array($db_conn, "SELECT COUNT(`ID_CHist`) FROM CHKHIST WHERE ID_C = '$idchk'")[0] != 0){
+ //To enter or not, check if has history (Instead of count > 0, only see if there is any timestamp, is faster)
+ if (dbw_query_fetch_array($db_conn, "SELECT `timestamp` FROM CHKHIST WHERE ID_C = '$idchk' LIMIT 1")[0] != 0){
-
- $consul = dbw_query_fetch_array($db_conn, "SELECT `code`,`timestamp` FROM CHKHIST WHERE ID_C = '$idchk' AND (select min(`timestamp`) FROM CHKHIST)");
+ $consul = dbw_query_fetch_array($db_conn, "SELECT `code`,`timestamp` FROM CHKHIST WHERE ID_C = '$idchk' ORDER BY `timestamp` DESC LIMIT 1");
$chks[$idchk]['dateLastChk'] = date('d/m H:i',$consul['timestamp']);
$chks[$idchk]['failedLastChk'] = $consul['code'];
@@ -40,15 +40,16 @@ while ($onechk = dbw_fetch_array($db_conn,$results)){
if ($onechk['manStatus'] != ''){
$chks[$idchk]['uptime'] = 255;//255 = Maintenance I suppose, not implemented
}else{
- $chks[$idchk]['uptime'] = checkUptime($db_conn,$idchk);
+ $chks[$idchk]['uptime'] = getUptime($db_conn,$idchk);
}
+ list($chks[$idchk]['statusText'],$chks[$idchk]['statusColor']) = getStatus($db_conn,$T_,$idchk);
}
break;
case 3: //Visits
- $visitsSite = dbw_query($db_conn, "SELECT * FROM (SELECT * FROM VISITS WHERE ID_C = '$idchk' ORDER BY `date` DESC LIMIT 0,5) sub ORDER BY `Date` ASC");
+ $visitsSite = dbw_query($db_conn, "SELECT * FROM (SELECT * FROM VISITS WHERE ID_C = '$idchk' ORDER BY `date` DESC LIMIT 0,5) sub ORDER BY `date` ASC"); //Subquery for reorder lastest days in reverse
//Create array from last 5 days
while ($visitsDay = dbw_fetch_array($db_conn, $visitsSite)){
$dateArray[] = $visitsDay['date'];
diff --git a/install.php b/install.php
index c00f6dc..9001634 100755
--- a/install.php
+++ b/install.php
@@ -1,5 +1,5 @@
Updater of CheckServer";
echo "Connecting to database
";
-require_once 'connect.php';
+require_once 'lib/dbwrapper.php';
+$db_file = __DIR__."/sqlite.db3";
+if (!is_file($db_file)){ //Go to install if not.
+ header("Location: install.php");
+ die();
+}
+$db_conn = dbw_connect("sqlite",$db_file); //Database
+
$version = dbw_query_fetch_array($db_conn,"SELECT value FROM SYS WHERE option = 'version'")[0];
echo "Your version: ".$version;
echo "
Updating to lastest
";
@@ -11,9 +18,12 @@ switch ($version){
dbw_query($db_conn,"DELETE FROM SYS WHERE option='maxChecksSave'");
dbw_query($db_conn,"INSERT INTO SYS VALUES('maxTimeSave',14)");
//Can not delete USERS.SessionID because sqlite3 not supports it, but doesn't do any harm.
-
- case '0.9.1':
- echo "0.9.1-Lastest";
+ dbw_query($db_conn,"UPDATE SYS SET value='0.9.1' WHERE option='version'");
+ case '0.9.1': //No db updates
+ echo "0.9.1->0.9.2
";
+ dbw_query($db_conn,"UPDATE SYS SET value='0.9.2' WHERE option='version'");
+ case '0.9.2':
+ echo "0.9.2-Lastest";
echo "
Updated to lastest. Close this and go to index
";
//Remove files on a good update
unlink('updater.php');