Add register editing and creation (issue #1)
This commit is contained in:
parent
9ec33b06fe
commit
0acf33c9a6
30
action.php
30
action.php
@ -474,6 +474,36 @@ END;
|
|||||||
|
|
||||||
returnToSender("cash_closed");
|
returnToSender("cash_closed");
|
||||||
break;
|
break;
|
||||||
|
case "editregister":
|
||||||
|
$insert = true;
|
||||||
|
if (empty($VARS['id'])) {
|
||||||
|
$insert = true;
|
||||||
|
} else {
|
||||||
|
if ($database->has('registers', ['registerid' => $VARS['id']])) {
|
||||||
|
$insert = false;
|
||||||
|
} else {
|
||||||
|
returnToSender("invalid_parameters");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (is_empty($VARS['name'])) {
|
||||||
|
returnToSender('invalid_parameters');
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($database->has('registers', ['AND' => ['registerid[!]' => $VARS['id'], 'registername' => $VARS['name']]])) {
|
||||||
|
returnToSender("register_name_taken");
|
||||||
|
}
|
||||||
|
|
||||||
|
$data = [
|
||||||
|
'registername' => $VARS['name']
|
||||||
|
];
|
||||||
|
|
||||||
|
if ($insert) {
|
||||||
|
$database->insert('registers', $data);
|
||||||
|
} else {
|
||||||
|
$database->update('registers', $data, ['registerid' => $VARS['id']]);
|
||||||
|
}
|
||||||
|
|
||||||
|
returnToSender("register_saved");
|
||||||
case "session_keepalive":
|
case "session_keepalive":
|
||||||
header("Content-Type: application/json");
|
header("Content-Type: application/json");
|
||||||
exit(json_encode(["status" => "OK"]));
|
exit(json_encode(["status" => "OK"]));
|
||||||
|
@ -106,4 +106,9 @@ define("STRINGS", [
|
|||||||
"start" => "Start",
|
"start" => "Start",
|
||||||
"end" => "End",
|
"end" => "End",
|
||||||
"grid view" => "Grid view",
|
"grid view" => "Grid view",
|
||||||
|
"edit register" => "Edit Register",
|
||||||
|
"editing register" => "Editing register {name}",
|
||||||
|
"adding register" => "Adding register",
|
||||||
|
"register saved" => "Register saved.",
|
||||||
|
"register name taken" => "Register name already taken. Use a different name.",
|
||||||
]);
|
]);
|
||||||
|
@ -41,4 +41,12 @@ define("MESSAGES", [
|
|||||||
"string" => "cash opened",
|
"string" => "cash opened",
|
||||||
"type" => "success"
|
"type" => "success"
|
||||||
],
|
],
|
||||||
|
"register_saved" => [
|
||||||
|
"string" => "register saved",
|
||||||
|
"type" => "success"
|
||||||
|
],
|
||||||
|
"register_name_taken" => [
|
||||||
|
"string" => "register name taken",
|
||||||
|
"type" => "danger"
|
||||||
|
]
|
||||||
]);
|
]);
|
||||||
|
@ -70,6 +70,13 @@ define("PAGES", [
|
|||||||
"static/js/registers.js"
|
"static/js/registers.js"
|
||||||
],
|
],
|
||||||
],
|
],
|
||||||
|
"editregister" => [
|
||||||
|
"title" => "edit register",
|
||||||
|
"navbar" => false,
|
||||||
|
"scripts" => [
|
||||||
|
"static/js/editregister.js"
|
||||||
|
]
|
||||||
|
],
|
||||||
"reports" => [
|
"reports" => [
|
||||||
"title" => "reports",
|
"title" => "reports",
|
||||||
"navbar" => true,
|
"navbar" => true,
|
||||||
|
70
pages/editregister.php
Normal file
70
pages/editregister.php
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
<?php
|
||||||
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||||
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||||
|
|
||||||
|
require_once __DIR__ . '/../required.php';
|
||||||
|
|
||||||
|
redirectifnotloggedin();
|
||||||
|
|
||||||
|
$regdata = [
|
||||||
|
'id' => '',
|
||||||
|
'name' => ''
|
||||||
|
];
|
||||||
|
|
||||||
|
$editing = false;
|
||||||
|
|
||||||
|
if (!empty($VARS['id'])) {
|
||||||
|
if ($database->has('registers', ['registerid' => $VARS['id']])) {
|
||||||
|
$editing = true;
|
||||||
|
$regdata = $database->get(
|
||||||
|
'registers', [
|
||||||
|
'registerid (id)',
|
||||||
|
'registername (name)'
|
||||||
|
], [
|
||||||
|
'registerid' => $VARS['id']
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
// customer id is invalid, redirect to a version of the page that won't
|
||||||
|
// cause an error when pressing Save
|
||||||
|
header('Location: app.php?page=editregister');
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($editing) {
|
||||||
|
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
|
||||||
|
<form role="form" action="action.php" method="POST">
|
||||||
|
<div class="card border-green">
|
||||||
|
<h3 class="card-header text-green">
|
||||||
|
<?php
|
||||||
|
if ($editing) {
|
||||||
|
?>
|
||||||
|
<i class="fas fa-edit"></i> <?php lang2("editing register", ['name' => "<span id=\"name_title\">" . htmlspecialchars($regdata['name']) . "</span>"]); ?>
|
||||||
|
<?php
|
||||||
|
} else {
|
||||||
|
?>
|
||||||
|
<i class="fas fa-edit"></i> <?php lang("adding register"); ?>
|
||||||
|
<?php
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
</h3>
|
||||||
|
<div class="card-body row">
|
||||||
|
<div class="form-group col-12">
|
||||||
|
<label for="name"><i class="fas fa-font"></i> <?php lang("name"); ?></label>
|
||||||
|
<input type="text" class="form-control" id="name" name="name" placeholder="Register #1" required="required" value="<?php echo htmlspecialchars($regdata['name']); ?>" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<input type="hidden" name="id" value="<?php echo htmlspecialchars($regdata['id']); ?>" />
|
||||||
|
<input type="hidden" name="action" value="editregister" />
|
||||||
|
<input type="hidden" name="source" value="registers" />
|
||||||
|
|
||||||
|
<div class="card-footer d-flex">
|
||||||
|
<button type="submit" class="btn btn-success mr-auto"><i class="fas fa-save"></i> <?php lang("save"); ?></button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
10
static/js/editregister.js
Normal file
10
static/js/editregister.js
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
/*
|
||||||
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||||
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||||
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
$('#name').on('input propertychange paste', function () {
|
||||||
|
$('#name_title').text($('#name').val());
|
||||||
|
});
|
Loading…
x
Reference in New Issue
Block a user