Files
thetool/application/Devicetype/DevicetypeController.php
Daniel Spitzer aa72b1ba95 Feature Update
2023-02-21 12:24:44 +00:00

138 lines
3.5 KiB
PHP

<?php
class DevicetypeController extends mfBaseController
{
protected function init()
{
$this->needlogin = true;
$me = new User();
$me->loadMe();
$this->me = $me;
$this->layout()->set("me", $me);
if (!$me->is(["Admin"])) {
$this->redirect("Dashboard");
}
}
protected function indexAction()
{
$this->layout()->setTemplate("Devicetype/Index");
$devicetypes = DevicetypeModel::getAll();
$this->layout()->set("devicetypes", $devicetypes);
}
protected function addAction()
{
$this->layout()->setTemplate("Devicetype/Form");
$this->layout()->set("devicemanufactors", DevicemanufactorModel::getAll());
}
protected function editAction()
{
$id = $this->request->id;
if (!is_numeric($id) || !$id) {
$this->layout()->setFlash("Gerätetyp nicht gefunden", "error");
$this->redirect("Devicetype");
}
$devicetypes = new Devicetype($id);
if ($devicetypes->id != $id) {
$this->layout()->setFlash("Gerätetyp nicht gefunden", "error");
$this->redirect("Devicetype");
}
$this->layout()->set("devicetypes", $devicetypes);
return $this->addAction();
}
protected function saveAction()
{
$r = $this->request;
$id = $r->id;
//var_dump($r->get());exit;
if (is_numeric($id) && $id > 0) {
$mode = "edit";
$devicetype = new Devicetype($id);
if (!$devicetype->id) {
$this->layout()->setFlash("Gerätetyp nicht gefunden", "error");
$this->redirect("Devicetype");
}
} else {
$mode = "add";
}
var_dump($r);
echo $r->price;
if (!$r->price) {
$price = "0.00";
echo "empty";
} else {
$price = $r->price;
}
if (!$r->power) {
$power = "0.00";
} else {
$power = $r->power;
}
$data = [];
$data['name'] = trim($r->name);
$data['devicemanufactor_id'] = $r->devicemanufactor_id;
$data['price'] = $price;
$data['power'] = $power;
if (!$data['name']) {
$this->layout()->setFlash("Name darf nicht leer sein", "error");
$this->redirect("Devicetype");
}
// var_dump($_FILES);
// var_dump($upload);
// exit;
if ($mode == "edit") {
$devicetype->update($data);
} else {
$devicetype = DevicetypeModel::create($data);
}
// var_dump($filestore);
// exit;
$id = $devicetype->save();
if (!$id) {
$this->layout()->setFlash("Gerätetyp konnte nicht angelegt werden", "error");
$this->redirect("Devicetype");
}
if ($mode == "edit") {
$this->layout()->setFlash("Gerätetyp erfolgreich geändert", "success");
} else if ($mode = "add") {
$this->layout()->setFlash("Gerätetyp erfolgreich angelegt", "success");
}
$this->redirect("Devicetype");
}
protected function deleteAction()
{
$id = $this->request->id;
$devicetype = new Devicetype($id);
if (!$devicetype->id || $devicetype->id != $id) {
$this->layout()->setFlash("Gerätetyp nicht gefunden.", "error");
$this->redirect("Devicetype");
}
$devicetype->delete();
$this->redirect("Devicetype");
}
}