mirror of
https://github.com/ShaYmez/FreeSTAR-Status-Engine.git
synced 2026-06-25 13:03:19 -04:00
Compare commits
24 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 85dfce55c8 | |||
| 75bdde26b3 | |||
| 3939fca1f7 | |||
| 96f79ee725 | |||
| 8d571547f5 | |||
| 46c0b55779 | |||
| 18b89e8c35 | |||
| e96df7015e | |||
| 505d802c2e | |||
| 3edfd9dbe2 | |||
| 887a197033 | |||
| 81132e9ccf | |||
| af62f9f49d | |||
| e2b331a039 | |||
| 671004579c | |||
| 38fcabdbb4 | |||
| f7ad9ac6b1 | |||
| 9963e1f834 | |||
| ff06a320b0 | |||
| 3c540496d4 | |||
| e09d02cf2e | |||
| 14015d4666 | |||
| b3a1bfeb0e | |||
| 1573b062b5 |
@@ -72,7 +72,8 @@ class Constellation
|
|||||||
public function render_status($admin = false, $heading = true){
|
public function render_status($admin = false, $heading = true){
|
||||||
global $mysqli;
|
global $mysqli;
|
||||||
|
|
||||||
$query = $mysqli->query("SELECT id, name FROM services");
|
//$query = $mysqli->query("SELECT id, name, description FROM services");
|
||||||
|
$query = $mysqli->query("SELECT services.id, services.name, services.description, services_groups.name as group_name FROM services LEFT JOIN services_groups ON services.group_id=services_groups.id ORDER BY services_groups.name ");
|
||||||
$array = array();
|
$array = array();
|
||||||
if ($query->num_rows){
|
if ($query->num_rows){
|
||||||
$timestamp = time();
|
$timestamp = time();
|
||||||
@@ -87,10 +88,10 @@ class Constellation
|
|||||||
$tmp = $sql->get_result();
|
$tmp = $sql->get_result();
|
||||||
if ($tmp->num_rows)
|
if ($tmp->num_rows)
|
||||||
{
|
{
|
||||||
$array[] = new Service($result['id'], $result['name'], $tmp->fetch_assoc()['type']);
|
$array[] = new Service($result['id'], $result['name'], $result['description'], $result['group_name'], $tmp->fetch_assoc()['type']);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$array[] = new Service($result['id'], $result['name']);
|
$array[] = new Service($result['id'], $result['name'], $result['description'], $result['group_name']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ($heading)
|
if ($heading)
|
||||||
@@ -103,11 +104,27 @@ class Constellation
|
|||||||
}
|
}
|
||||||
if (!$admin)
|
if (!$admin)
|
||||||
{
|
{
|
||||||
echo '<div id="status-container" class="clearfix">';
|
?>
|
||||||
|
<script>
|
||||||
|
$(document).ready(function(){
|
||||||
|
$('[data-toggle="tooltip"]').tooltip();
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
<?php
|
||||||
|
//echo '<div id="status-container" class="clearfix">';
|
||||||
|
//$arrCompletedGroups = array();
|
||||||
foreach($array as $service){
|
foreach($array as $service){
|
||||||
|
//print_r($service);
|
||||||
|
//if ( !empty($service->group_name) && !in_array($service->group_name, $arrCompletedGroups)) {
|
||||||
|
//print $service->name;
|
||||||
|
// $arrCompletedGroups[] = $service['group_name'];
|
||||||
|
// $service->render(true);
|
||||||
|
//} else {
|
||||||
$service->render();
|
$service->render();
|
||||||
|
//}
|
||||||
}
|
}
|
||||||
echo '</div>';
|
echo '</ul>';
|
||||||
|
//echo '</div>';
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
return $array;
|
return $array;
|
||||||
|
|||||||
+61
-7
@@ -6,19 +6,24 @@ class Service implements JsonSerializable
|
|||||||
{
|
{
|
||||||
private $id;
|
private $id;
|
||||||
private $name;
|
private $name;
|
||||||
|
private $description;
|
||||||
|
private $group_name;
|
||||||
private $status;
|
private $status;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constructs service from its data.
|
* Constructs service from its data.
|
||||||
* @param int $id service ID
|
* @param int $id service ID
|
||||||
* @param String $name service name
|
* @param String $name service name
|
||||||
|
* @param String $descriotion service description for tooltip
|
||||||
* @param int $status current service status
|
* @param int $status current service status
|
||||||
*/
|
*/
|
||||||
function __construct($id, $name, $status=3)
|
function __construct($id, $name, $description=null, $group_name='', $status=3)
|
||||||
{
|
{
|
||||||
//TODO: Maybe get data from ID?
|
//TODO: Maybe get data from ID?
|
||||||
$this->id = $id;
|
$this->id = $id;
|
||||||
$this->name = $name;
|
$this->name = $name;
|
||||||
|
$this->description = $description;
|
||||||
|
$this->group_name = $group_name;
|
||||||
$this->status = $status;
|
$this->status = $status;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -49,6 +54,15 @@ class Service implements JsonSerializable
|
|||||||
return $this->name;
|
return $this->name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns description of this service
|
||||||
|
* @return String description
|
||||||
|
*/
|
||||||
|
public function get_description()
|
||||||
|
{
|
||||||
|
return $this->description;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Processes submitted form and adds service unless problem is encountered,
|
* Processes submitted form and adds service unless problem is encountered,
|
||||||
* calling this is possible only for admin or higher rank. Also checks requirements
|
* calling this is possible only for admin or higher rank. Also checks requirements
|
||||||
@@ -192,17 +206,56 @@ class Service implements JsonSerializable
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Renders this service.
|
* Renders this service.
|
||||||
|
* @param $boolGroup set to true if the groups name is to be rendered
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function render(){
|
public function render(){
|
||||||
global $statuses;
|
global $statuses;
|
||||||
global $classes;
|
global $classes;
|
||||||
?>
|
static $arrCompletedGroups = array();
|
||||||
<div class="item clearfix">
|
//static $boolClosed;
|
||||||
<div class="service"><?php echo $this->name; ?></div>
|
static $boolOpened;
|
||||||
<?php if ($this->status!=-1){?><div class="status <?php echo $classes[$this->status];?>"><?php echo _($statuses[$this->status]);?></div><?php }?>
|
|
||||||
</div>
|
// Check if previous ul has been opened, and if a empty/new group is being
|
||||||
<?php
|
// render_header, close the UL first.
|
||||||
|
if ( $boolOpened ) {
|
||||||
|
if ( empty($this->group_name) || !in_array($this->group_name, $arrCompletedGroups) ) {
|
||||||
|
echo '</ul>';
|
||||||
|
$boolOpened = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// If no group exist or group is new, start a new UL
|
||||||
|
if ( !empty($this->group_name) && !in_array($this->group_name, $arrCompletedGroups)) {
|
||||||
|
echo '<ul class="list-group components">';
|
||||||
|
//echo '<ul class="platforms list-group mb-2">';
|
||||||
|
// Render the group status if it exists
|
||||||
|
echo '<li class="list-group-item list-group-item-success group-name"><span><i class="glyphicon glyphicon-plus"></i></span> ' . $this->group_name .'<div class="status '. $classes[$this->status] .'">'. _($statuses[$this->status]).'</div></li>';
|
||||||
|
//echo '<li class="cist-group-item d-flex flex-row justify-content-between platform list-group-item-action py-0 expanded" role="button">' . $this->group_name .'<div class="status '. $classes[$this->status] .'"'. _($statuses[$this->status]).'</div></li>';
|
||||||
|
$arrCompletedGroups[] = $this->group_name;
|
||||||
|
$boolOpened = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( empty($this->group_name)) {
|
||||||
|
echo '<ul class="list-group components">';
|
||||||
|
|
||||||
|
// echo '<ul class="platforms list-group mb-2">';
|
||||||
|
$boolFinish = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Render the service status
|
||||||
|
echo '<li class="list-group-item sub-component"><strong>' . $this->name .'</strong>';
|
||||||
|
//echo '<li class="list-group-item d-flex flex-columns justify-content-between><span>+</span><h3 class="py-2 my-0 flex-fill expanded">' . $this->name . '</h3>';
|
||||||
|
if(!empty($this->description)) {
|
||||||
|
echo '<a class="desc-tool-tip" data-toggle="tooltip" data-placement="top" title="'.$this->description.'"> <span><i class="glyphicon glyphicon-question-sign"></i></span></a>';
|
||||||
|
}
|
||||||
|
if ($this->status!=-1){?><div class="status pull-right <?php echo $classes[$this->status];?>"><?php echo _($statuses[$this->status]);?></div>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
echo '</li>';
|
||||||
|
if ( isset($boolFinish) && $boolFinish) {
|
||||||
|
echo '</ul>';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function jsonSerialize() {
|
public function jsonSerialize() {
|
||||||
@@ -210,6 +263,7 @@ class Service implements JsonSerializable
|
|||||||
return [
|
return [
|
||||||
"id" => $this->id,
|
"id" => $this->id,
|
||||||
"name" => $this->name,
|
"name" => $this->name,
|
||||||
|
"description" => $this->description,
|
||||||
"status" => $this->status,
|
"status" => $this->status,
|
||||||
"status_string" => $statuses[$this->status]
|
"status_string" => $statuses[$this->status]
|
||||||
];
|
];
|
||||||
|
|||||||
+4
-8
@@ -27,6 +27,10 @@ a:focus {
|
|||||||
color:#f5f4f4;
|
color:#f5f4f4;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
a.desc-tool-tip, a.desc-tool-tip:hover, a.desc-tool-tip:visited {
|
||||||
|
color: grey;
|
||||||
|
}
|
||||||
|
|
||||||
.centered {
|
.centered {
|
||||||
text-align: center
|
text-align: center
|
||||||
}
|
}
|
||||||
@@ -69,13 +73,6 @@ a:focus {
|
|||||||
top: 0;
|
top: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
body {
|
|
||||||
min-height: 100vh;
|
|
||||||
height: 100vh;
|
|
||||||
}
|
|
||||||
|
|
||||||
.admins_color h4 {
|
.admins_color h4 {
|
||||||
color: #3a72bd;
|
color: #3a72bd;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
@@ -686,4 +683,3 @@ input:checked + .slider:before {
|
|||||||
.slider.round:before {
|
.slider.round:before {
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -68,6 +68,7 @@ if (isset($_GET['subscriber_logout'])){
|
|||||||
unset($_SESSION['subscriber_id']);
|
unset($_SESSION['subscriber_id']);
|
||||||
header('Location: index.php');
|
header('Location: index.php');
|
||||||
}
|
}
|
||||||
|
/*
|
||||||
$versionfile = fopen("versionfile", "r") or die("Unable to open version file!");
|
$versionfile = fopen("versionfile", "r") or die("Unable to open version file!");
|
||||||
$appversion = fread($versionfile,filesize("versionfile"));
|
$appversion = fread($versionfile,filesize("versionfile"));
|
||||||
fclose($versionfile);
|
fclose($versionfile);
|
||||||
@@ -90,6 +91,7 @@ if($db->getSetting($mysqli,"notifyUpdates") == "yes"){
|
|||||||
die("Your installation is not upp to date! Download the new update from: '".$remotedl."' Your version is:'".$appversion."' Remote Authority Version is:'".$remoteversion."' Your Update Seed is:'".$useed."' Remote Package Authority is Skyfallen. <br>If you cannot access Remote Authority, please check status.theskyfallen.com and skyfallenhosted.ml manually.");
|
die("Your installation is not upp to date! Download the new update from: '".$remotedl."' Your version is:'".$appversion."' Remote Authority Version is:'".$remoteversion."' Your Update Seed is:'".$useed."' Remote Package Authority is Skyfallen. <br>If you cannot access Remote Authority, please check status.theskyfallen.com and skyfallenhosted.ml manually.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
Template::render_header("Status");
|
Template::render_header("Status");
|
||||||
?>
|
?>
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
|
|||||||
Reference in New Issue
Block a user