Device Update
* Backup Check Script noch mit meiner Email für Live Test * Backup Check bei Devices hinzugefügt
This commit is contained in:
@@ -202,7 +202,15 @@ asort($Devices);
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
<div class="form-group row">
|
||||||
|
<label class="col-lg-2 col-form-label" for="backup_check">Backup Check</label>
|
||||||
|
<div class="col-lg-10">
|
||||||
|
<div class="custom-control custom-switch mt-1">
|
||||||
|
<input type="checkbox" <?= ($device->backup_check == "0") ? "" : "checked='checked'" ?> class="custom-control-input" value="1" id="backup_check" name="backup_check">
|
||||||
|
<label class="custom-control-label no-user-select" for="backup_check">Es wird täglich geprüft, ob Backups vorhanden und nicht älter als 7 Tage sind</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="form-group row">
|
<div class="form-group row">
|
||||||
<label class="col-lg-2 col-form-label" for="serial">Seriennummer</label>
|
<label class="col-lg-2 col-form-label" for="serial">Seriennummer</label>
|
||||||
|
|||||||
@@ -164,6 +164,7 @@ class DeviceController extends mfBaseController
|
|||||||
$data['devicetype_id'] = $r->devicetype_id;
|
$data['devicetype_id'] = $r->devicetype_id;
|
||||||
$data['parent_id'] = $r->parent_id;
|
$data['parent_id'] = $r->parent_id;
|
||||||
$data['autobackup'] = trim($r->autobackup);
|
$data['autobackup'] = trim($r->autobackup);
|
||||||
|
$data['backup_check'] = trim($r->backup_check);
|
||||||
|
|
||||||
if (trim($r->pop_id) == "0") {
|
if (trim($r->pop_id) == "0") {
|
||||||
$data['pop_id'] = NULL;
|
$data['pop_id'] = NULL;
|
||||||
@@ -193,6 +194,9 @@ class DeviceController extends mfBaseController
|
|||||||
if ($data['autobackup'] != "1") {
|
if ($data['autobackup'] != "1") {
|
||||||
$data['autobackup'] = "0";
|
$data['autobackup'] = "0";
|
||||||
}
|
}
|
||||||
|
if ($data['backup_check'] != "1") {
|
||||||
|
$data['backup_check'] = "0";
|
||||||
|
}
|
||||||
if (!$data['parent_id']) {
|
if (!$data['parent_id']) {
|
||||||
$data['parent_id'] = NULL;
|
$data['parent_id'] = NULL;
|
||||||
}
|
}
|
||||||
@@ -364,6 +368,7 @@ class DeviceController extends mfBaseController
|
|||||||
|
|
||||||
exit;
|
exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
private function uploadFile($id)
|
private function uploadFile($id)
|
||||||
{
|
{
|
||||||
$r = $this->request;
|
$r = $this->request;
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ class DeviceModel
|
|||||||
public $addr_city = null;
|
public $addr_city = null;
|
||||||
public $gps_long = null;
|
public $gps_long = null;
|
||||||
public $autobackup = null;
|
public $autobackup = null;
|
||||||
|
public $backup_check = null;
|
||||||
public $create_by = null;
|
public $create_by = null;
|
||||||
public $snmp_version = null;
|
public $snmp_version = null;
|
||||||
public $edit_by = null;
|
public $edit_by = null;
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ table.dataTable > tbody > tr.child span.dtr-data {
|
|||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
font-size: 25px;
|
font-size: 25px;
|
||||||
margin-top: 7px;
|
margin-top: 7px;
|
||||||
margin-left: 10px;
|
margin-left: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.spinner-ico {
|
.spinner-ico {
|
||||||
|
|||||||
@@ -0,0 +1,82 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
//require 'vendor/autoload.php';
|
||||||
|
require("../../config/config.php");
|
||||||
|
|
||||||
|
define('FRONKDB_SQLDEBUG', false);
|
||||||
|
error_reporting(E_ALL & ~(E_NOTICE | E_STRICT | E_DEPRECATED));
|
||||||
|
|
||||||
|
require_once(LIBDIR . "/mvcfronk/mfRouter/mfRouter.php");
|
||||||
|
require_once(LIBDIR . "/mvcfronk/mfBase/mfBaseModel.php");
|
||||||
|
require_once(LIBDIR . "/mvcfronk/mfBase/mfBaseController.php");
|
||||||
|
|
||||||
|
$me = new User(154);
|
||||||
|
define("INTERNAL_USER_ID", $me->id);
|
||||||
|
define("INTERNAL_USER_USERNAME", $me->username);
|
||||||
|
|
||||||
|
$url="https://thetool.xinon.at/Device/Detail?id=";
|
||||||
|
$devices = DeviceModel::getAll();
|
||||||
|
//var_dump($timerecordingemployees);
|
||||||
|
$deviceBackupOld = [];
|
||||||
|
$devicesAll = [];
|
||||||
|
$deviceBackupNone = [];
|
||||||
|
foreach ($devices as $device) {
|
||||||
|
$devicesAll[$device->id] = $device;
|
||||||
|
if ($device->last_config_backup && $device->backup_check == 1) {
|
||||||
|
$timediff = time() - 7 * 24 * 60 * 60;
|
||||||
|
if ($device->last_config_backup < $timediff) {
|
||||||
|
$deviceBackupOld[$device->id] = $device->last_config_backup;
|
||||||
|
}
|
||||||
|
|
||||||
|
} elseif ($device->backup_check == 1) {
|
||||||
|
$deviceBackupNone[$device->id] = $device->name;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$message = "";
|
||||||
|
//create a tables
|
||||||
|
if (!empty($deviceBackupOld)) {
|
||||||
|
|
||||||
|
asort($deviceBackupOld);
|
||||||
|
$message .= "<h3>Devices mit Backups älter als 7 Tagen:</h3>";
|
||||||
|
$message .= "<table>";
|
||||||
|
$message .= "<tr><th>Device</th><th>Gerätetyp</th><th>IP-Adresse</th><th>Letztes Backup</th></tr>";
|
||||||
|
foreach ($deviceBackupOld as $deviceId => $lastBackup) {
|
||||||
|
$message .= '<tr><td><a href="'.$url.$devicesAll[$deviceId]->id.'" >' . $devicesAll[$deviceId]->name . '</a></td><td>'.$devicesAll[$deviceId]->devicetype->devicemanufactor->name." ".$devicesAll[$deviceId]->devicetype->name.'</td><td class="center">'.$devicesAll[$deviceId]->ip.'</td><td>' . date("d.m.Y H:i", $lastBackup) . "</td></tr>";
|
||||||
|
}
|
||||||
|
$message .= "</table>";
|
||||||
|
}
|
||||||
|
if (!empty($deviceBackupNone)) {
|
||||||
|
asort($deviceBackupNone);
|
||||||
|
$message .= "<h3>Devices ohne Backup:</h3>";
|
||||||
|
$message .= "<table>";
|
||||||
|
$message .= "<tr><th>Device</th><th>Gerätetyp</th><th>IP-Adresse</th></tr>";
|
||||||
|
foreach ($deviceBackupNone as $deviceId => $deviceName) {
|
||||||
|
$message .= '<tr><td ><a href="'.$url.$devicesAll[$deviceId]->id.'" >' . $deviceName . '</a></td><td>'.$devicesAll[$deviceId]->devicetype->devicemanufactor->name." ".$devicesAll[$deviceId]->devicetype->name.'</td><td class="center">'.$devicesAll[$deviceId]->ip.'</td></tr>';
|
||||||
|
}
|
||||||
|
$message .= "</table>";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!empty($message)) {
|
||||||
|
$style="<style>
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
border: 1px solid #000000;
|
||||||
|
}
|
||||||
|
th, td {
|
||||||
|
margin: 2px 7px 2px 7px;
|
||||||
|
border: 1px solid #000000;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
.center{
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
</style>";
|
||||||
|
$email = new Emailnotification();
|
||||||
|
$email->setSubject('Backup Checks');
|
||||||
|
$email->setHtmlBody($style.$message);
|
||||||
|
$email->setFrom('notify@xinon.at', 'Xinon Information');
|
||||||
|
$email->setTo('daniel.spitzer@inode.at');
|
||||||
|
$email->send();
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user