diff --git a/assetclass.php b/assetclass.php index c0bda51..606c9af 100644 --- a/assetclass.php +++ b/assetclass.php @@ -154,6 +154,4 @@ endif; // $action == ... // ========== END OF VARIANTS ================================================= $smarty->display('footer.tpl'); - -// include("footer.php"); ?> diff --git a/assetclassgroup.php b/assetclassgroup.php index f7ad388..2f86720 100644 --- a/assetclassgroup.php +++ b/assetclassgroup.php @@ -8,8 +8,68 @@ SPDX-License-Identifier: GPL-3.0-or-later *****************************************************************************/ include("includes.php"); + +if (isset($_REQUEST['id'])) { + $id = (int) $_REQUEST['id'] or $id = 0; +} + +// ========== ACTIONS START =================================================== +switch ($submit = form_get_action()) { + + case NULL: break; + + case 'add': $action = ACT_ADD; break; + case 'view': $action = ACT_VIEW; break; + case 'edit': $action = ACT_EDIT; break; + case 'del': $action = ACT_DELETE; break; + + case 'insert': + $name = sanitize($_POST['acg_name']); + $color = preg_replace("|[^a-zA-Z0-9]|", "", strtoupper(sanitize($_POST['acg_color']))); + $desc = sanitize($_POST['acg_description']); + + $sql = "INSERT INTO assetclassgroup + (assetclassgroup_name, assetclassgroup_color, assetclassgroup_description) + VALUE + (?, ?, ?)"; + $sth = $dbh->prepare($sql); + $sth->execute([$name, $color, $desc]); + $id = $dbh->lastInsertId(); + $action = ACT_VIEW; + break; + + case 'update': + $acg_name = sanitize($_POST['acg_name']); + $acg_desc = sanitize($_POST['acg_description']); + $acg_color = preg_replace("|[^a-zA-Z0-9]|", "", strtoupper(sanitize($_POST['acg_color']))); + + $sql = "UPDATE assetclassgroup SET + assetclassgroup_name=?, assetclassgroup_color=?, assetclassgroup_description=? + WHERE assetclassgroup_id=?"; + $sth = $dbh->prepare($sql); + $sth->execute([$acg_name, $acg_color, $acg_desc, $id]); + $action = ACT_VIEW; + break; + + case 'delete': + $sth = $dbh->prepare("DELETE FROM assetclassgroup WHERE assetclassgroup_id=?"); + $sth->execute([$id]); + $action = ACT_DEFAULT; + break; + + default: + $g_error->Add(submit_error($submit)); + $valid = FALSE; +} + +// ========== ACTIONS END ===================================================== + +$smarty->assign("scripts", 'jscolor.js'); include("header.php"); - + +if ($action == ACT_DEFAULT): +// ========== VARIANT: default behavior ======================================= + $sql = "SELECT g.assetclassgroup_id AS id, g.assetclassgroup_name AS name, g.assetclassgroup_color AS color, g.assetclassgroup_description AS description, COUNT(c.assetclass_id) AS count_class @@ -20,6 +80,68 @@ $sth = $dbh->query($sql); $smarty->assign('assetclassgroups', $sth->fetchAll(PDO::FETCH_ASSOC)); $smarty->display("assetclassgroup.tpl"); - -include("footer.php"); + +elseif ($action == ACT_ADD): +// ========== VARIANT: add record ============================================= + +$smarty->display("assetclassgroupadd.tpl"); + +elseif ($action == ACT_VIEW): +// ========== VARIANT: view single record ===================================== + +$sql = "SELECT assetclassgroup_id AS id, + assetclassgroup_name AS name, + assetclassgroup_color AS color, + assetclassgroup_description AS description + FROM assetclassgroup + WHERE assetclassgroup_id=?"; +$sth = $dbh->prepare($sql); +$sth->execute([$id]); +$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); + +$sql = "SELECT assetclass_id, assetclass_name + FROM assetclass + WHERE assetclassgroup_id=? + ORDER BY assetclass_name"; +$sth = $dbh->prepare($sql); +$sth->execute([$id]); +$smarty->assign("assetclasses", $sth->fetchAll(PDO::FETCH_ASSOC)); + +$smarty->display("assetclassgroupview.tpl"); + +elseif ($action == ACT_EDIT): +// ========== VARIANT: edit single record ===================================== + +$sql = "SELECT assetclassgroup_id AS id, assetclassgroup_name AS name, + assetclassgroup_color AS color, + assetclassgroup_description AS description + FROM assetclassgroup + WHERE assetclassgroup_id=?"; +$sth = $dbh->prepare($sql); +$sth->execute([$id]); +$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); + +$smarty->display("assetclassgroupedit.tpl"); + +elseif ($action == ACT_DELETE): +// ========== VARIANT: delete record ========================================== + +$sql = "SELECT assetclassgroup_id AS id, assetclassgroup_name AS name + FROM assetclassgroup + WHERE assetclassgroup_id=?"; +$sth = $dbh->prepare($sql); +$sth->execute([$id]); +$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); + +$smarty->display("assetclassgroupdel.tpl"); + +else: +// ========== ERROR UNKNOWN VARIANT =========================================== + +echo "

Unknown function call: Please report to system development!

\n"; + +endif; // $action == ... +// ========== END OF VARIANTS ================================================= + +$smarty->display('footer.tpl'); ?> diff --git a/assetclassgroupadd.php b/assetclassgroupadd.php deleted file mode 100644 index 766a83c..0000000 --- a/assetclassgroupadd.php +++ /dev/null @@ -1,18 +0,0 @@ -assign("scripts", 'jscolor.js'); -include("header.php"); - -$smarty->display("assetclassgroupadd.tpl"); - -include("footer.php"); -?> diff --git a/assetclassgroupdel.php b/assetclassgroupdel.php deleted file mode 100644 index e8efe19..0000000 --- a/assetclassgroupdel.php +++ /dev/null @@ -1,26 +0,0 @@ -prepare($sql); -$sth->execute([$assetclassgroup_id]); -$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); - -$smarty->display("assetclassgroupdel.tpl"); - -include("footer.php"); -?> diff --git a/assetclassgroupedit.php b/assetclassgroupedit.php deleted file mode 100644 index 56f04c9..0000000 --- a/assetclassgroupedit.php +++ /dev/null @@ -1,30 +0,0 @@ -assign("scripts", 'jscolor.js'); -include("header.php"); - -$sql = "SELECT assetclassgroup_id AS id, assetclassgroup_name AS name, - assetclassgroup_color AS color, - assetclassgroup_description AS description - FROM assetclassgroup - WHERE assetclassgroup_id=?"; -$sth = $dbh->prepare($sql); -$sth->execute([$assetclassgroup_id]); - -$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); - -$smarty->display("assetclassgroupedit.tpl"); - -include("footer.php"); -?> diff --git a/assetclassgroupview.php b/assetclassgroupview.php deleted file mode 100644 index 4e3b4dc..0000000 --- a/assetclassgroupview.php +++ /dev/null @@ -1,37 +0,0 @@ -prepare($sql); -$sth->execute([$assetclassgroup_id]); -$smarty->assign("assetclassgroup", $sth->fetch(PDO::FETCH_OBJ)); - -$sql = "SELECT assetclass_id, assetclass_name - FROM assetclass - WHERE assetclassgroup_id=? - ORDER BY assetclass_name"; -$sth = $dbh->prepare($sql); -$sth->execute([$assetclassgroup_id]); -$smarty->assign("assetclasses", $sth->fetchAll(PDO::FETCH_ASSOC)); - -$smarty->display("assetclassgroupview.tpl"); - -include("footer.php"); -?> diff --git a/submit.php b/submit.php index 5aa3033..144afb4 100644 --- a/submit.php +++ b/submit.php @@ -133,7 +133,7 @@ if (isset($_POST['add'])) { $sth->execute([$name, $description, $group_id]); header_location("assetclassview.php?assetclass_id=" . $dbh->lastInsertId()); - break; */ + break; case ("assetclassgroup") : $name = sanitize($_POST['acg_name']); @@ -148,7 +148,7 @@ if (isset($_POST['add'])) { $sth->execute([$name, $color, $desc]); header_location("assetclassgroupview.php?assetclassgroup_id=" . $dbh->lastInsertId()); - break; + break; */ case ("assignnodetoasset") : $node_ip = sanitize($_POST['node_ip']); @@ -406,7 +406,7 @@ if (isset($_POST['del'])) { $sth->execute([$assetclass_id]); header_location("assetclass.php"); - break; */ + break; case ("assetclassgroup") : $assetclassgroup_id = sanitize($_POST['assetclassgroup_id']); @@ -415,7 +415,7 @@ if (isset($_POST['del'])) { $sth->execute([$assetclassgroup_id]); header_location("assetclassgroup.php"); - break; + break; */ case ("location") : $location_id = sanitize($_POST['location_id']); diff --git a/tpl/assetclass.tpl b/tpl/assetclass.tpl index 5b57b29..f264f19 100644 --- a/tpl/assetclass.tpl +++ b/tpl/assetclass.tpl @@ -31,7 +31,7 @@ #{$assetclass.color} - {$assetclass.group_name} + {$assetclass.group_name} {$assetclass.count_asset} diff --git a/tpl/assetclassgroup.tpl b/tpl/assetclassgroup.tpl index 028c225..8218472 100644 --- a/tpl/assetclassgroup.tpl +++ b/tpl/assetclassgroup.tpl @@ -6,7 +6,7 @@ {if $suser_add || $suser_admin} - {$lang_assetclassgroup_add} + {$lang_assetclassgroup_add} {/if} diff --git a/tpl/assetclassgroupadd.tpl b/tpl/assetclassgroupadd.tpl index d02ac57..98edd5a 100644 --- a/tpl/assetclassgroupadd.tpl +++ b/tpl/assetclassgroupadd.tpl @@ -1,5 +1,4 @@ -
- + @@ -8,7 +7,7 @@
{$lang_cancel} - +
@@ -47,4 +46,5 @@ +
diff --git a/tpl/assetclassgroupdel.tpl b/tpl/assetclassgroupdel.tpl index aae8e2f..f0122f7 100644 --- a/tpl/assetclassgroupdel.tpl +++ b/tpl/assetclassgroupdel.tpl @@ -1,6 +1,5 @@ -
- - + + @@ -28,7 +27,7 @@ {$lang_assetclassgroup_name}
- {$assetclassgroup->name} + {$assetclassgroup->name}
diff --git a/tpl/assetclassgroupedit.tpl b/tpl/assetclassgroupedit.tpl index 29a8867..558eb15 100644 --- a/tpl/assetclassgroupedit.tpl +++ b/tpl/assetclassgroupedit.tpl @@ -1,6 +1,5 @@ - - - + + @@ -10,7 +9,7 @@
{$lang_cancel} - +
diff --git a/tpl/assetclassgroupview.tpl b/tpl/assetclassgroupview.tpl index 65091ae..8847815 100644 --- a/tpl/assetclassgroupview.tpl +++ b/tpl/assetclassgroupview.tpl @@ -6,13 +6,13 @@ {if $suser_add} - {$lang_assetclassgroup_add} + {$lang_assetclassgroup_add} {/if} {if $suser_edit} - {$lang_assetclassgroup_edit} + {$lang_assetclassgroup_edit} {/if} {if $suser_delete} - {$lang_assetclassgroup_del} + {$lang_assetclassgroup_del} {/if} @@ -32,7 +32,7 @@ {$lang_assetclassgroup_name} - {$assetclassgroup->name} + {$assetclassgroup->name} diff --git a/tpl/assetclassview.tpl b/tpl/assetclassview.tpl index 8f59af8..778ddbf 100644 --- a/tpl/assetclassview.tpl +++ b/tpl/assetclassview.tpl @@ -62,7 +62,7 @@ #{$assetclass->assetclassgroup_color} - {$assetclass->assetclassgroup_name}
+ {$assetclass->assetclassgroup_name}