9 Commits

13 changed files with 155 additions and 103 deletions

View File

@@ -280,4 +280,5 @@
is enabled.
- Validate all date and time fields to prevent user entered invalid date
formats from crashing php.
- Fixed profile page to automatically refresh page to show the results
when a user changes their color preferences.

View File

@@ -4,7 +4,6 @@
SPDX-License-Identifier: GPL-2.0
Installation of OpenLog is straightforward.
1. Gather the required information.
@@ -31,5 +30,4 @@ settings. You will need to log in as OpenLogAdmin. The initial default password
is "OpenLog-1". From the Administration page, you can click on the links at the
top to add techs, subjects, shifts, etc.
7. Start using OpenLog.
6. Start using OpenLog.

View File

@@ -280,4 +280,7 @@
is enabled.
- Validate all date and time fields to prevent user entered invalid date
formats from crashing php.
- Fixed profile page to automatically refresh page to show the results
when a user changes their color preferences.

View File

@@ -764,6 +764,7 @@ switch ($table) {
";
// pull current values from database
$currentvalues = mysqli_fetch_assoc(mysqli_query($db, "select * from techs where techid=$id"));
if (!empty($currentvalues)) {
$name = $currentvalues["techname"];
$pass = $passconf = "password_is_unchanged";
$shift = $currentvalues["shift"];
@@ -777,6 +778,13 @@ switch ($table) {
} else {
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
$name = NULL;
$pass = NULL;
$shift = NULL;
$admintag = "<input type=\"checkbox\" name=\"admin\">";
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
// set form options for add
$sectiontitle = "<b>Add New Tech</b><br><br>";
@@ -878,12 +886,17 @@ switch ($table) {
";
// pull current values from database
$currentvalues = mysqli_fetch_assoc(mysqli_query($db, "select * from shifts where shiftid=$id"));
if (!empty($currentvalues)) {
$name = $currentvalues["shiftname"];
if ($currentvalues["status"] == 1) {
$activetag = "<input type=\"checkbox\" name=\"active\" checked>";
} else {
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
$name = NULL;
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
// set form options for add
$sectiontitle = "<b>Add New Shift</b><br><br>";
@@ -952,12 +965,17 @@ switch ($table) {
";
// pull current values from database
$currentvalues = mysqli_fetch_assoc(mysqli_query($db, "select * from subjects where subjectid=$id"));
if (!empty($currentvalues)) {
$name = $currentvalues["subjectname"];
if ($currentvalues["status"] == 1) {
$activetag = "<input type=\"checkbox\" name=\"active\" checked>";
} else {
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
$name = "";
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
// set form options for add
$sectiontitle = "<b>Add New Subject</b><br><br>";
@@ -1026,6 +1044,7 @@ switch ($table) {
";
// pull current values from database
$currentvalues = mysqli_fetch_assoc(mysqli_query($db, "select * from links where linkid=$id"));
if (!empty($currentvalues)) {
$name = $currentvalues["displaytxt"];
$priority = $currentvalues["linkpriority"];
$url = $currentvalues["urltxt"];
@@ -1034,6 +1053,12 @@ switch ($table) {
} else {
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
$name = NULL;
$priority = NULL;
$url = NULL;
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
// determine where we are in the priority stack
$prow = mysqli_fetch_assoc(mysqli_query($db, "select min(linkpriority) as highest from links"));
if ($prow["highest"] == $priority) {
@@ -1145,10 +1170,22 @@ switch ($table) {
";
// pull current values from database
$currentvalues = mysqli_fetch_assoc(mysqli_query($db, "select * from flags where flagid=$id"));
if (!empty($currentvalues)) {
$name = $currentvalues["flagname"];
$flagsym = $currentvalues["flagsym"];
$flagcolor = $currentvalues["flagcolor"];
$flagcoloropts = "";
if ($currentvalues["status"] == 1) {
$activetag = "<input type=\"checkbox\" name=\"active\" checked>";
} else {
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
$name = NULL;
$flagsym = NULL;
$flagcolor = NULL;
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
foreach ($basic_colors as $cname => $chex) {
if ($chex == $flagcolor) {
$flagcoloropts = $flagcoloropts . "<option value=\"$chex\" selected>$cname</option>";
@@ -1156,11 +1193,6 @@ switch ($table) {
$flagcoloropts = $flagcoloropts . "<option value=\"$chex\">$cname</option>";
}
}
if ($currentvalues["status"] == 1) {
$activetag = "<input type=\"checkbox\" name=\"active\" checked>";
} else {
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
// set form options for add
$sectiontitle = "<b>Add New Flag</b><br><br>";
@@ -1246,12 +1278,17 @@ switch ($table) {
";
// pull current values from database
$currentvalues = mysqli_fetch_assoc(mysqli_query($db, "select * from logpartactions where lpactionid=$id"));
if (!empty($currentvalues)) {
$name = $currentvalues["lpactionname"];
if ($currentvalues["status"] == 1) {
$activetag = "<input type=\"checkbox\" name=\"active\" checked>";
} else {
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
$name = NULL;
$activetag = "<input type=\"checkbox\" name=\"active\">";
}
} else {
// set form options for add
$sectiontitle = "<b>Add New Part Action</b><br><br>";
@@ -1320,9 +1357,15 @@ switch ($table) {
";
// pull current values from database
$currentvalues = mysqli_fetch_assoc(mysqli_query($db, "select * from banners where bannerid=$id"));
if (!empty($currentvalues)) {
$name = $currentvalues["bannername"];
$bnrcolor = $currentvalues["bannercolor"];
$bnrtextcolor = $currentvalues["textcolor"];
} else {
$name = NULL;
$bnrcolor = NULL;
$bnrtextcolor = NULL;
}
$bnrcoloropts = "";
foreach ($basic_colors as $cname => $chex) {
if ($chex == $bnrcolor) {

View File

@@ -40,7 +40,7 @@ $uids = $_POST['uids'] ?? [];
$partnums = $_POST['partnums'] ?? [];
$sernums = $_POST['sernums'] ?? [];
$actions = $_POST['actions'] ?? [];
$mfreqs = $_POST['mfreqs'] ?? [];
$mfreqs = $_POST['mfreqs'] ?? ["off"];
$schedmaintcomplete = $_REQUEST['schedmaintcomplete'] ?? NULL;
$partview = $_REQUEST['partview'] ?? NULL;
@@ -199,7 +199,7 @@ if ($add) {
// add it to logparts table
mysqli_query($db, "insert into logparts(lognoteid,partid,action) values(\"$newnoteid\",\"$lpid\",\"$actions[$plidx]\")");
// create a maintenance form if required
if ($mfreqs[$plidx] == "on") {
if (array_key_exists($plidx,$mfreqs) && $mfreqs[$plidx] == "on") {
mysqli_query($db, "insert into maintforms(mfdate,mftech,mfpart,pending,lognoteid) values(\"$date\",\"$techid\",\"$lpid\",1,\"$newnoteid\")");
}
@@ -217,7 +217,7 @@ if ($add) {
// add it to logparts table
mysqli_query($db, "insert into logparts(lognoteid,partid,action) values(\"$newnoteid\",\"$lpid\",\"$actions[$plidx]\")");
// create a maintenance form if required
if ($mfreqs[$plidx] == "on") {
if (array_key_exists($plidx,$mfreqs) && $mfreqs[$plidx] == "on") {
mysqli_query($db, "insert into maintforms(mfdate,mftech,mfpart,pending,lognoteid) values(\"$date\",\"$techid\",\"$lpid\",1,\"$newnoteid\")");
}
@@ -235,7 +235,7 @@ if ($add) {
// add it to logparts table
mysqli_query($db, "insert into logparts(lognoteid,partid,action) values(\"$newnoteid\",\"$lpid\",\"$actions[$plidx]\")");
// create a maintenance form if required
if ($mfreqs[$plidx] == "on") {
if (array_key_exists($plidx,$mfreqs) && $mfreqs[$plidx] == "on") {
mysqli_query($db, "insert into maintforms(mfdate,mftech,mfpart,pending,lognoteid) values(\"$date\",\"$techid\",\"$lpid\",1,\"$newnoteid\")");
}
} else {
@@ -364,7 +364,7 @@ if ($edit) {
// add it to logparts table
mysqli_query($db, "insert into logparts(lognoteid,partid,action) values(\"$noteid\",\"$lpid\",\"$actions[$plidx]\")");
// create a maintenance form if required
if ($mfreqs[$plidx] == "on") {
if (array_key_exists($plidx,$mfreqs) && $mfreqs[$plidx] == "on") {
mysqli_query($db, "insert into maintforms(mfdate,mftech,mfpart,pending,lognoteid) values(\"$date\",\"$techid\",\"$lpid\",1,\"$noteid\")");
}
@@ -382,7 +382,7 @@ if ($edit) {
// add it to logparts table
mysqli_query($db, "insert into logparts(lognoteid,partid,action) values(\"$noteid\",\"$lpid\",\"$actions[$plidx]\")");
// create a maintenance form if required
if ($mfreqs[$plidx] == "on") {
if (array_key_exists($plidx,$mfreqs) && $mfreqs[$plidx] == "on") {
mysqli_query($db, "insert into maintforms(mfdate,mftech,mfpart,pending,lognoteid) values(\"$date\",\"$techid\",\"$lpid\",1,\"$noteid\")");
}
@@ -400,7 +400,7 @@ if ($edit) {
// add it to logparts table
mysqli_query($db, "insert into logparts(lognoteid,partid,action) values(\"$noteid\",\"$lpid\",\"$actions[$plidx]\")");
// create a maintenance form if required
if ($mfreqs[$plidx] == "on") {
if (array_key_exists($plidx,$mfreqs) && $mfreqs[$plidx] == "on") {
mysqli_query($db, "insert into maintforms(mfdate,mftech,mfpart,pending,lognoteid) values(\"$date\",\"$techid\",\"$lpid\",1,\"$noteid\")");
}
} else {
@@ -619,7 +619,6 @@ $flagcount = 1;
// display checkboxes for all the flags, selecting the ones that are set for this note/template
while ($flagcheckbox = mysqli_fetch_assoc($flagslist)) {
if (in_array($flagcheckbox["flagid"], $theseflags)) {
printf(
"<input type=\"checkbox\" name=\"flags[]\" value=\"%s\" checked><font color=\"%s\" title=\"%s\">%s</font>",
@@ -648,9 +647,15 @@ while ($flagcheckbox = mysqli_fetch_assoc($flagslist)) {
$flagcount = 1;
}
}
if (mysqli_num_rows($flagslist)) {
echo "
<br><input type=\"checkbox\" name=\"syncflags\" value=\"1\"><font title=\"Set the selected flags on the other notes in the reference chain\">Set flags on reference chain</font>
";
} else {
echo "
<input type=\"hidden\" name=\"syncflags\" value=\"0\">
";
}
if ($add && $refto) $refstring = $refto;
echo "
@@ -678,18 +683,14 @@ if ($add) {
<td align=\"center\"><input type=\"text\" name=\"partnums[$partline]\" size=\"20\"></td>
<td align=\"center\"><input type=\"text\" name=\"sernums[$partline]\" size=\"20\"></td>
<td align=\"center\"><select name=\"actions[$partline]\">
<option value=\"select\">Select Action</option>
<option value=\"$defaultaction\" selected>Select Action</option>
";
$actrow = mysqli_query($db, "select * from logpartactions");
while ($actitem = mysqli_fetch_assoc($actrow)) {
if ($actitem["status"] == 1) {
if ($actitem["lpactionid"] == $defaultaction) {
printf("<option value=\"%s\" selected>%s</option>", $actitem["lpactionid"], $actitem["lpactionname"]);
} else {
printf("<option value=\"%s\">%s</option>", $actitem["lpactionid"], $actitem["lpactionname"]);
}
}
}
echo "
</select>
</td>
@@ -739,19 +740,28 @@ if ($edit) {
<td align=\"center\">$epsn</td>
<td align=\"center\">
";
$actrow = mysqli_query($db, "select * from logpartactions");
while ($actitem = mysqli_fetch_assoc($actrow)) {
if ($actitem["lpactionid"] == $defaultaction) {
echo "$actitem[lpactionname]";
}
if ($defaultaction) {
// an action was selected previously, so just display it
$actname = dblookup($db, "logpartactions", "lpactionid", "lpactionname", $defaultaction);
echo "$actname";
}
echo "
</td>
";
// find maint form for this line and show link
$mflinknum = mysqli_fetch_assoc(mysqli_query($db, "select maintformid from maintforms where lognoteid=\"$noteid\" and mfpart=\"$lpidvar\""))["maintformid"];
echo "
<td align=\"center\"><a href=\"maintformentry.php?mfedit=1&maintformid=$mflinknum\" title=\"Click to view/edit this maintenance form\">$mflinknum</a></td>
<td align=\"center\">
";
$mflinkqry = mysqli_query($db, "select maintformid from maintforms where lognoteid=\"$noteid\" and mfpart=\"$lpidvar\"");
if (mysqli_num_rows($mflinkqry)) {
$mflinkdata = mysqli_fetch_assoc($mflinkqry);
$mflinknum = $mflinkdata["maintformid"];
echo "
<a href=\"maintformentry.php?mfedit=1&maintformid=$mflinknum\" title=\"Click to view/edit this maintenance form\">$mflinknum</a>
";
}
echo "
</td>
</tr>
";
}
@@ -764,18 +774,14 @@ if ($edit) {
<td align=\"center\"><input type=\"text\" name=\"partnums[$partline]\" size=\"20\"></td>
<td align=\"center\"><input type=\"text\" name=\"sernums[$partline]\" size=\"20\"></td>
<td align=\"center\"><select name=\"actions[$partline]\">
<option value=\"select\">Select Action</option>
<option value=\"$defaultaction\" selected>Select Action</option>
";
$actrow = mysqli_query($db, "select * from logpartactions");
while ($actitem = mysqli_fetch_assoc($actrow)) {
if ($actitem["status"] == 1) {
if ($actitem["lpactionid"] == $defaultaction) {
printf("<option value=\"%s\" selected>%s</option>", $actitem["lpactionid"], $actitem["lpactionname"]);
} else {
printf("<option value=\"%s\">%s</option>", $actitem["lpactionid"], $actitem["lpactionname"]);
}
}
}
echo "
</select>
</td>

View File

@@ -116,6 +116,8 @@ if (!$print) {
// color settings
$hexcolor = "#" . ltrim($hexcolor);
putsetting($modcolor, $hexcolor, $techid);
$currentpage = $_SERVER['PHP_SELF'];
header("Refresh: .1; url=$currentpage");
}
if ($resetcustom) mysqli_query($db, "delete from customs where customtech=\"$techid\"");

View File

@@ -130,7 +130,6 @@ if ($add) {
}
// run through the memberlist and modify the table
foreach ($memberlist as $memberdev) {
$addqry = ("insert into events(task,device,start_date,last_date,deferred_flag,deferred_date,active_flag)
values(\"$task\",\"$memberdev\",\"$start_date\",\"$last_date\",\"$deferred_flag\",\"$deferred_date\",\"$active_flag\")");
mysqli_query($db, $addqry);

View File

@@ -202,7 +202,7 @@ then
else
# proceed with upgrade
# put app in maintenance mode
echo "Putting the applocation in maintenance mode..."
echo "Putting the application in maintenance mode..."
# make sure mod_rewrite is enabled
if [[ ! -e "$APACHE_CONF_DIR/../mods-enabled/rewrite.load" ]]
then