This commit is contained in:
Spitzer_Daniel
2023-03-22 16:56:02 +01:00
parent 0dc7f43b09
commit 214c0683e6
6 changed files with 91 additions and 33 deletions
+2 -1
View File
@@ -25,7 +25,8 @@
<li class="breadcrumb-item active">Device Detail</li>
</ol>
</div>
<h4 class="page-title">Device: <span class="font-weight-normal ml-1"><?= $devices->data->name ?></span> <span class="ml-2">
<h4 class="page-title">Device: <span class="font-weight-normal ml-1"><?= $devices->data->name ?></span>
<span class="ml-2">
<a href="<?= self::getUrl("Device", "edit", ["id" => $devices->id, 'returnto' => "device-detail"]) ?>">
<button class="btn btn-primary">Bearbeiten</button>
</a>
+15
View File
@@ -5,6 +5,21 @@ foreach ($devicetypes as $devicetype) {
}
asort($deviceTypes);
if ($device->price == "0.00") {
$price = "";
} else {
$price = $device->price;
}
if ($device->power == "0.0") {
$power = "";
} else {
$power = $device->power;
}
if (isset($_GET['returnto']) && $_GET['returnto'] == "device-detail") {
$cancelUrl = self::getUrl("Device", "Detail", ["id" => $device->id]);
} else {
$cancelUrl = self::getUrl("Device");
}
?>
<link href="<?= self::getResourcePath() ?>assets/css/select2-cstm.css?<?=date('U')?>" rel="stylesheet" type="text/css"/>
<!-- start page title -->
+2
View File
@@ -1,4 +1,5 @@
<?php
class Device extends mfBaseModel
{
private $editor;
@@ -34,6 +35,7 @@ class Device extends mfBaseModel
return null;
}
}
return $this->$name;
}
}
+60 -26
View File
@@ -1,6 +1,8 @@
<?php
class DeviceController extends mfBaseController
{
protected function init()
{
$this->needlogin = true;
@@ -179,32 +181,6 @@ class DeviceController extends mfBaseController
}
$this->redirect($returnUrl, $returnAction, $returnVariables, $returnAnker);
}
$returnUrl="Device";
$returnAction = "Index";
$returnVariables = array();
$returnAnker = "";
if ($this->request->returnto) {
if (strpos($this->request->returnto, "-") !== false) {
$urls = explode('-', $this->request->returnto);
$urlCounter = 0;
$returnUrlGen = "";
foreach ($urls as $url) {
if ($urlCounter > 0) {
$returnUrlGen .= "/";
}
$returnUrlGen .= ucfirst($url);
$urlCounter++;
}
$returnAction = "";
$returnVariables['id'] = $id;
$returnUrl = $returnUrlGen;
} else {
$returnUrl = ucfirst($this->request->returnto);
}
}
if ($mode == "edit") {
$this->layout()->setFlash("Device erfolgreich geändert", "success");
@@ -214,4 +190,62 @@ class DeviceController extends mfBaseController
$this->redirect($returnUrl, $returnAction, $returnVariables, $returnAnker);
}
protected function apiAction()
{
if (!$this->me->is(["Admin"])) {
$this->redirect("Dashboard");
}
$do = $this->request->do;
$format = $this->request->format;
$filename = $this->request->filename;
$id = $this->request->id;
$ip = $this->request->ip;
$data = [];
switch ($do) {
case "getconfig":
$return = $this->getConfig($id, $format, $filename);
break;
case "createconfig":
$return = $this->createConfig($ip);
break;
default:
$return = false;
}
}
private function getConfig($id, $format, $filename)
{
$configDownload = DeviceModel::getconifgdownload($id, $format);
//
// header('Content-Type: application/octet-stream');
header('Content-Type: text/plain');
header('Content-disposition: attachment; filename="' . $filename . '"');
echo $configDownload;
exit;
}
private function createConfig($ip)
{
$r = $this->request;
$id = $r->id;
$createConfig = DeviceModel::configcreate($ip);
if ($createConfig->success==="true")
{
$this->layout()->setFlash("Backup wurde erfolgreich erstellt", "success");
}
else
{
$this->layout()->setFlash("Backup konnte nicht erstellt werden. <b>Fehler</b>: ".$createConfig->error, "error");
}
$returnUrl = "Device";
$returnAction = "Detail";
$returnVariables['id'] = $id;
return $this->redirect($returnUrl, $returnAction, $returnVariables, $returnAnker);
}
}
+2
View File
@@ -1,4 +1,5 @@
<?php
class DeviceModel
{
public $name = null;
@@ -17,6 +18,7 @@ class DeviceModel
public static function find($data)
{
}
public static function create(array $data)
+4
View File
@@ -32,6 +32,10 @@
width: 50px;
}
.edit-width-large {
width: 100px;
}
.order-date-pill {
margin: 2px;
white-space: nowrap;