Files
OpenLog/distfiles/config.php

587 lines
25 KiB
PHP

<?php
/*
config.php
OpenDRS Online Discrepancy Reporting System
Copyright (C) 2026 Rod Wright
SPDX-License-Identifier: GPL-2.0
*/
include("common.php");
if (array_key_exists('print',$_REQUEST)) {
$print=true;
} else {
$print=false;
}
// redirect to login page if access_mode is untrusted and user is
// not logged in
if ($access_mode == "untrusted" && ! isset($_SESSION['userid'])) {
header("Cache-Control:no-cache, must-revalidate");
header("Pragma:no-cache");
header("Location:login.php");
exit();
}
// redirect to index.php on cancel button press
if (array_key_exists('cancel',$_REQUEST)) {
header("Cache-Control:no-cache, must-revalidate");
header("Pragma:no-cache");
header("Location:index.php");
exit();
}
// import session variables
// redirect to index.php if not an admin
if (! $isadmin) {
header("Cache-Control:no-cache, must-revalidate");
header("Pragma:no-cache");
header("Location:index.php");
exit();
}
// import incoming arrays
if ($print) {
// if printer friendly was clicked, values will be passed in serialized
// form as "all_parameters" so we need to load those into $incoming[]
$incoming=unserialize($_REQUEST['all_parameters']);
} else {
// copy $_REQUEST[] to $incoming[]
$incoming=arrayCopy($_REQUEST);
}
// extract incoming array keys into variables
extract($incoming, EXTR_SKIP);
/*
* possible keys are:
* update_display
* display_appname
* display_banner
* display_footer
* display_funchelp
* display_device_term
* display_discovered_term
* display_discovered_term_short
* display_disc_drop_data
* display_functional_term
* display_functional_term_short
* display_functional_yes
* display_functional_no
* display_functional_yes_short
* display_functional_no_short
* update_colors
* reset_colors
* newbgc
* newmbgc
* newtc
* newlc
* newvlc
* newhc
* edit_banner
* add_banner
* update_banner
* delete_banner
* bnrid
* bnrname
* bnrcolor
* bnrtxtcolor
* update_misc
* sessttl
* logoutall
* accessmode
*/
if (!isset($update_display)) $update_display=false;
if (!isset($update_colors)) $update_colors=false;
if (!isset($reset_colors)) $reset_colors=false;
if (!isset($add_banner)) $add_banner=false;
if (!isset($edit_banner)) $edit_banner=false;
if (!isset($update_banner)) $update_banner=false;
if (!isset($delete_banner)) $delete_banner=false;
if (!isset($update_misc)) $update_misc=false;
if (!isset($logoutall)) $logoutall=false;
// assign variables from constants
$appname=APP_NAME;
if ($print=="Printer Friendly") {
$mbgcolor=P_MENUBG_COLOR;
} else {
$mbgcolor=MENUBG_COLOR;
}
framework("begin","$appname","Configuration",$print);
//echo "_REQUEST array <br>";
//var_dump($_REQUEST);
//echo "<br><hr> incoming array <br>";
//var_dump($incoming);
// ******** begin database manipulation ********
$nameunique_err=$namesuppld_err=$ttlsuppld_err=$dirsuppld_err=false;
if ($update_display) {
// remove html tags from footer_message and sanitize
$display_footer=strip_tags($display_footer);
$clean_display_footer=mysqli_real_escape_string($drs_db,$display_footer);
// remove html tags from app name and sanitize
$display_appname=strip_tags($display_appname);
$clean_display_appname=mysqli_real_escape_string($drs_db,$display_appname);
// remove html tags from functional help text and sanitize
$display_funchelp=strip_tags($display_funchelp);
$clean_display_funchelp=mysqli_real_escape_string($drs_db,$display_funchelp);
// remove html tags from device term and sanitize
$display_device_term=strip_tags($display_device_term);
$clean_display_device_term=mysqli_real_escape_string($drs_db,$display_device_term);
// remove html tags from discovered term and sanitize
$display_discovered_term=strip_tags($display_discovered_term);
$clean_display_discovered_term=mysqli_real_escape_string($drs_db,$display_discovered_term);
// remove html tags from short discovered term and sanitize
$display_discovered_term_short=strip_tags($display_discovered_term_short);
$clean_display_discovered_term_short=mysqli_real_escape_string($drs_db,$display_discovered_term_short);
// remove html tags from functional term and sanitize
$display_functional_term=strip_tags($display_functional_term);
$clean_display_functional_term=mysqli_real_escape_string($drs_db,$display_functional_term);
// remove html tags from short functional term and sanitize
$display_functional_term_short=strip_tags($display_functional_term_short);
$clean_display_functional_term_short=mysqli_real_escape_string($drs_db,$display_functional_term_short);
// remove html tags from functional yes and sanitize
$display_functional_yes=strip_tags($display_functional_yes);
$clean_display_functional_yes=mysqli_real_escape_string($drs_db,$display_functional_yes);
// remove html tags from functional no and sanitize
$display_functional_no=strip_tags($display_functional_no);
$clean_display_functional_no=mysqli_real_escape_string($drs_db,$display_functional_no);
// remove html tags from short functional yes and sanitize
$display_functional_yes_short=strip_tags($display_functional_yes_short);
$clean_display_functional_yes_short=mysqli_real_escape_string($drs_db,$display_functional_yes_short);
// remove html tags from short functional no and sanitize
$display_functional_no_short=strip_tags($display_functional_no_short);
$clean_display_functional_no_short=mysqli_real_escape_string($drs_db,$display_functional_no_short);
mysqli_query($drs_db,"update config set value=\"$clean_display_appname\" where name=\"app_name\"");
mysqli_query($drs_db,"update config set value=\"$display_banner\" where name=\"banner\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_footer\" where name=\"footer_message\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_funchelp\" where name=\"functional_help_txt\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_device_term\" where name=\"device_term\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_discovered_term\" where name=\"discovered_term\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_discovered_term_short\" where name=\"discovered_term_short\"");
mysqli_query($drs_db,"update config set value=\"$display_disc_drop_data\" where name=\"disc_drop_data\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_functional_term\" where name=\"functional_term\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_functional_term_short\" where name=\"functional_term_short\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_functional_yes\" where name=\"functional_yes\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_functional_no\" where name=\"functional_no\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_functional_yes_short\" where name=\"functional_yes_short\"");
mysqli_query($drs_db,"update config set value=\"$clean_display_functional_no_short\" where name=\"functional_no_short\"");
echo "<meta http-equiv='refresh' content='0'>";
}
if ($update_colors) {
if ($newbgc) mysqli_query($drs_db,"update config set value=\"$newbgc\" where name=\"background_color\"");
if ($newmbgc) mysqli_query($drs_db,"update config set value=\"$newmbgc\" where name=\"menubg_color\"");
if ($newtc) mysqli_query($drs_db,"update config set value=\"$newtc\" where name=\"text_color\"");
if ($newlc) mysqli_query($drs_db,"update config set value=\"$newlc\" where name=\"link_color\"");
if ($newvlc) mysqli_query($drs_db,"update config set value=\"$newvlc\" where name=\"vlink_color\"");
if ($newhc) mysqli_query($drs_db,"update config set value=\"$newhc\" where name=\"heading_color\"");
echo "<meta http-equiv='refresh' content='0'>";
}
if ($reset_colors) {
mysqli_query($drs_db,"update config set value=defaultvalue where name like \"%_color\"");
echo "<meta http-equiv='refresh' content='0'>";
}
if ($add_banner) {
// do error checking
// remove html tags from banner name
$bnrname=strip_tags($bnrname);
// test for name supplied
if (strlen(trim($bnrname))) {
$namesuppld=true;
$namesuppld_err=false;
} else {
$namesuppld=false;
$namesuppld_err=true;
}
// test for name unique
if (mysqli_num_rows(mysqli_query($drs_db,"select bannerid from banners where bannername=\"$bnrname\""))) {
$nameunique=false;
$nameunique_err=true;
} else {
$nameunique=true;
$nameunique_err=false;
}
if ($namesuppld && $nameunique) {
// sanitize banner name
$clean_bnrname=mysqli_real_escape_string($drs_db,$bnrname);
// modify the table
mysqli_query($drs_db,"insert into banners(bannername,bannercolor,textcolor) values(\"$clean_bnrname\",\"$bnrcolor\",\"$bnrtxtcolor\")");
}
}
if ($edit_banner) {
if ($delete_banner) {
mysqli_query($drs_db,"delete from banners where bannerid=\"$bnrid\"");
unset($edit_banner);
}
if ($update_banner) {
// do error checking
// remove html tags from banner name
$bnrname=strip_tags($bnrname);
// test for name supplied
if (strlen(trim($bnrname))) {
$namesuppld=true;
$namesuppld_err=false;
} else {
$namesuppld=false;
$namesuppld_err=true;
}
// test for name unique
if (mysqli_num_rows(mysqli_query($drs_db,"select bannerid from banners where bannername=\"$bnrname\" and bannerid!=\"$bnrid\""))) {
if (mysqli_num_rows(mysqli_query($drs_db,"select bannerid from banners where bannername=\"$bnrname\""))) {
$nameunique=false;
$nameunique_err=true;
} else {
$nameunique=true;
$nameunique_err=false;
}
} else {
$nameunique=true;
}
if ($namesuppld && $nameunique) {
// sanitize banner name
$clean_bnrname=mysqli_real_escape_string($drs_db,$bnrname);
// modify the table
mysqli_query($drs_db,"update banners set bannername=\"$bnrname\",bannercolor=\"$bnrcolor\",textcolor=\"$bnrtxtcolor\" where bannerid=\"$bnrid\"");
}
}
}
if ($update_misc) {
if ($accessmode) {
mysqli_query($drs_db,"update config set value=\"$accessmode\" where name=\"access_mode\"");
}
if ($logoutall) {
if ($ostype == 'WIN') {
$sessfileloc=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"win_server_session_dir\""))[0];
} else {
$sessfileloc=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"unix_server_session_dir\""))[0];
}
foreach (glob($sessfileloc."/*") as $sessfile) {
unlink($sessfile);
}
}
// test for sessttl supplied
if (strlen(trim($sessttl))) {
$ttlsuppld=true;
} else {
$ttlsuppld=false;
$ttlsuppld_err=true;
}
if ($ttlsuppld) {
mysqli_query($drs_db,"update config set value=\"$sessttl\" where name=\"session_ttl_days\"");
}
}
// ******** end database manipulation ********
pagetable("begin");
if (!$print) {
pageblock("left","begin");
sidemenu();
pageblock("left","end");
}
pageblock("right","begin");
banner($print);
echo "<br>";
echo "
<div id=\"configtabs\">
<ul>
<li><a href=\"#display_options\">Display Options</a></li>
<li><a href=\"#page_colors\">Page Colors</a></li>
<li><a href=\"#banners\">Banners</a></li>
<li><a href=\"#miscellaneous\">Miscellaneous Options</a></li>
</ul>
<div id=\"display_options\">
<form method=\"post\" action=\"config.php\">
";
$curapn=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"app_name\""))[0];
$curbnr=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"banner\""))[0];
$curftr=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"footer_message\""))[0];
$curfunchelp=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"functional_help_txt\""))[0];
$curdscterm=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"discovered_term\""))[0];
$curdscterms=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"discovered_term_short\""))[0];
$curdiscdropdata=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"disc_drop_data\""))[0];
$curfuncterm=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"functional_term\""))[0];
$curfuncterms=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"functional_term_short\""))[0];
$curfuncyes=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"functional_yes\""))[0];
$curfuncno=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"functional_no\""))[0];
$curfuncyess=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"functional_yes_short\""))[0];
$curfuncnos=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"functional_no_short\""))[0];
$curdevterm=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"device_term\""))[0];
echo "
<font size=\"+1\"><b>Display Configuration Parameters</b></font><br><br><br><br>
";
echo "
Application Name (will appear at the top of every page):<br>
<input type=\"text\" name=\"display_appname\" size=\"80\" value=\"$curapn\">
<br><br><br>
";
echo "
Banner (will appear at the top and bottom of pages): &nbsp;<select name=\"display_banner\" id=\"sel-banner\">
";
$bannerqry=mysqli_query($drs_db,"select * from banners");
while ($bannerrow=mysqli_fetch_assoc($bannerqry)) {
if ($bannerrow["bannerid"]==$curbnr) {
printf("<option value=\"%s\" selected>%s</option>",$bannerrow["bannerid"],$bannerrow["bannername"]);
} else {
printf("<option value=\"%s\">%s</option>",$bannerrow["bannerid"],$bannerrow["bannername"]);
}
}
$dropnamestate=$dropdescstate="";
if($curdiscdropdata=="Name") $dropnamestate="checked";
if($curdiscdropdata=="Desc") $dropdescstate="checked";
echo "
</select><br><br><br>
Footer Message (will appear at the bottom of pages):<br>
<input type=\"text\" name=\"display_footer\" size=\"80\" value=\"$curftr\"><br><br><br>
Device Terminology :&nbsp;&nbsp;&nbsp;
<input type=\"text\" name=\"display_device_term\" size=\"10\" value=\"$curdevterm\"><br><br><br>
When Discovered Terminology :&nbsp;&nbsp;&nbsp;
<input type=\"text\" name=\"display_discovered_term\" size=\"20\" value=\"$curdscterm\"><br><br><br>
Short When Discovered Terminology (shown where space is limited, like table headers) :<br>
<input type=\"text\" name=\"display_discovered_term_short\" size=\"9\" value=\"$curdscterms\"><br><br><br>
When Discovered data to show in dropdowns:&nbsp;&nbsp;&nbsp;<input type=\"radio\" name=\"display_disc_drop_data\" value=\"Name\" $dropnamestate> Name &nbsp;&nbsp;&nbsp;&nbsp;
<input type=\"radio\" name=\"display_disc_drop_data\" value=\"Desc\" $dropdescstate> Description<br><br><br>
Functional Terminology :&nbsp;&nbsp;&nbsp;
<input type=\"text\" name=\"display_functional_term\" size=\"20\" value=\"$curfuncterm\"><br><br><br>
Short Functional Terminology (shown where space is limited, like table headers) :<br>
<input type=\"text\" name=\"display_functional_term_short\" size=\"4\" value=\"$curfuncterms\"><br><br><br>
Functional Yes Terminology :&nbsp;&nbsp;&nbsp;
<input type=\"text\" name=\"display_functional_yes\" size=\"20\" value=\"$curfuncyes\"><br><br><br>
Functional No Terminology :&nbsp;&nbsp;&nbsp;
<input type=\"text\" name=\"display_functional_no\" size=\"20\" value=\"$curfuncno\"><br><br><br>
Short Functional Yes Terminology (shown where space is limited, like table headers) :<br>
<input type=\"text\" name=\"display_functional_yes_short\" size=\"4\" value=\"$curfuncyess\"><br><br><br>
Short Functional No Terminology (shown where space is limited, like table headers) :<br>
<input type=\"text\" name=\"display_functional_no_short\" size=\"4\" value=\"$curfuncnos\"><br><br><br>
Functional Help Text :<br>
<textarea rows=\"4\" cols=\"80\" name=\"display_funchelp\" wrap=\"soft\">$curfunchelp</textarea><br><br><br><br>
<input type=\"submit\" name=\"update_display\" value=\"Update Options\">&nbsp;&nbsp;&nbsp;&nbsp;
<input type=\"submit\" name=\"reset\" value=\"Reset\"><br><br><br>
</form>
";
echo "
</div>
<div id=\"page_colors\">
";
$curbgc=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"background_color\""))[0];
$curmbgc=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"menubg_color\""))[0];
$curtc=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"text_color\""))[0];
$curlc=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"link_color\""))[0];
$curvlc=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"vlink_color\""))[0];
$curhc=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"heading_color\""))[0];
echo "
<font size=\"+1\"><b>Color Configuration Parameters</b></font><br><br>
<table border=\"0\"><tr>
<td>
<form method=\"post\" action=\"config.php#page_colors\">
<b>Select the color you'd like to change then use the color picker to select a new color</b><br><br>
<table border=\"0\" cellpadding=\"10\">
<tr><td>Page background color</td><td>#<input type=\"text\" name=\"newbgc\" value=\"$curbgc\" id=\"bgcfield\" onFocus=\"ddcolorposter.echocolor(this, 'bgcbox')\"> <span id=\"bgcbox\" class=\"colorbox\">____</span></td></tr>
<tr><td>Menu background color</td><td>#<input type=\"text\" name=\"newmbgc\" value=\"$curmbgc\" id=\"mbgcfield\" onFocus=\"ddcolorposter.echocolor(this, 'mbgcbox')\"> <span id=\"mbgcbox\" class=\"colorbox\">____</span></td></tr>
<tr><td>Normal text color</td><td>#<input type=\"text\" name=\"newtc\" value=\"$curtc\" id=\"tcfield\" onFocus=\"ddcolorposter.echocolor(this, 'tcbox')\"> <span id=\"tcbox\" class=\"colorbox\">____</span></td></tr>
<tr><td>Link color</td><td>#<input type=\"text\" name=\"newlc\" value=\"$curlc\" id=\"lcfield\" onFocus=\"ddcolorposter.echocolor(this, 'lcbox')\"> <span id=\"lcbox\" class=\"colorbox\">____</span></td></tr>
<tr><td>Visited link color</td><td>#<input type=\"text\" name=\"newvlc\" value=\"$curvlc\" id=\"vlcfield\" onFocus=\"ddcolorposter.echocolor(this, 'vlcbox')\"> <span id=\"vlcbox\" class=\"colorbox\">____</span></td></tr>
<tr><td>Heading color</td><td>#<input type=\"text\" name=\"newhc\" value=\"$curhc\" id=\"hcfield\" onFocus=\"ddcolorposter.echocolor(this, 'hcbox')\"> <span id=\"hcbox\" class=\"colorbox\">____</span></td></tr>
</table>
<br><br>
<input type=\"submit\" name=\"update_colors\" value=\"Update Colors\">&nbsp;&nbsp;&nbsp;
<input type=\"submit\" name=\"reset_colors\" value=\"Reset Colors to Defaults\">
</td>
<td>
<div id=\"pickerPanel\" class=\"dragPanel\">
<h4 id=\"pickerHandle\">&nbsp;</h4>
<div id=\"pickerDiv\">
<img id=\"pickerbg\" src=\"colorpicker/img/pickerbg.png\" alt=\"\">
<div id=\"selector\"><img src=\"colorpicker/img/select.gif\"></div>
</div>
<div id=\"hueBg\">
<div id=\"hueThumb\"><img src=\"colorpicker/img/hline.png\"></div>
</div>
<div id=\"pickervaldiv\">
<form name=\"pickerform\" onsubmit=\"return pickerUpdate()\">
<font size=\"-3\">
<br />
R <input name=\"pickerrval\" id=\"pickerrval\" type=\"text\" value=\"0\" size=\"3\" maxlength=\"3\" />
H <input name=\"pickerhval\" id=\"pickerhval\" type=\"text\" value=\"0\" size=\"3\" maxlength=\"3\" />
<br />
G <input name=\"pickergval\" id=\"pickergval\" type=\"text\" value=\"0\" size=\"3\" maxlength=\"3\" />
S <input name=\"pickergsal\" id=\"pickersval\" type=\"text\" value=\"0\" size=\"3\" maxlength=\"3\" />
<br />
B <input name=\"pickerbval\" id=\"pickerbval\" type=\"text\" value=\"0\" size=\"3\" maxlength=\"3\" />
V <input name=\"pickervval\" id=\"pickervval\" type=\"text\" value=\"0\" size=\"3\" maxlength=\"3\" />
<br />
<br />
# <input name=\"pickerhexval\" id=\"pickerhexval\" type=\"text\" value=\"0\" size=\"6\" maxlength=\"6\" />
<br />
</font>
</form>
</div>
<div id=\"pickerSwatch\">&nbsp;</div>
</div>
</td>
</tr></table>
";
echo "
</form>
</div>
<div id=\"banners\">
";
if ($nameunique_err) format_message(1,"Banner name already exists. Please try another.");
if ($namesuppld_err) format_message(1,"Banner name cannot be blank.");
if ($edit_banner) {
// set form options for editing
$sectiontitle="<font size=\"+1\"><b>Modify Banner</b></font><br><br>";
$formtag="<form method=\"post\" action=\"config.php?edit_banner=1#banners\">";
$buttontags="
<input type=\"hidden\" name=\"bnrid\" value=\"$bnrid\">
<input type=\"submit\" name=\"update_banner\" value=\"Update Banner\">&nbsp;&nbsp;&nbsp;&nbsp;
<input type=\"submit\" name=\"delete_banner\" value=\"Delete Banner\">&nbsp;&nbsp;&nbsp;&nbsp;
<input type=\"submit\" name=\"reset\" value=\"Reset\"><br>
";
// pull current values from database
$currentvalues=mysqli_fetch_assoc(mysqli_query($drs_db,"select * from banners where bannerid=$bnrid"));
$bnrname=$currentvalues["bannername"];
$bnrcolor=$currentvalues["bannercolor"];
$bnrtextcolor=$currentvalues["textcolor"];
$bnrcoloropts="";
foreach($basic_colors as $cname => $chex) {
if ($chex==$bnrcolor) {
$bnrcoloropts=$bnrcoloropts . "<option value=\"$chex\" selected>$cname</option>";
} else {
$bnrcoloropts=$bnrcoloropts . "<option value=\"$chex\">$cname</option>";
}
}
$bnrtextcoloropts="";
foreach($basic_colors as $cname => $chex) {
if ($chex==$bnrtextcolor) {
$bnrtextcoloropts=$bnrtextcoloropts . "<option value=\"$chex\" selected>$cname</option>";
} else {
$bnrtextcoloropts=$bnrtextcoloropts . "<option value=\"$chex\">$cname</option>";
}
}
} else {
// set form options for add
$sectiontitle="<font size=\"+1\"><b>Add New Banner</b></font><br><br>";
$formtag="<form method=\"post\" action=\"config.php#banners\">";
$bnrname="";
$buttontags="
<input type=\"submit\" name=\"add_banner\" value=\"Add Banner\">
";
// set default values
$bnrcolor="#000000";
$bnrtextcolor="#FFFFFF";
$bnrcoloropts="";
foreach($basic_colors as $cname => $chex) {
if ($chex==$bnrcolor) {
$bnrcoloropts=$bnrcoloropts . "<option value=\"$chex\" selected>$cname</option>";
} else {
$bnrcoloropts=$bnrcoloropts . "<option value=\"$chex\">$cname</option>";
}
}
$bnrtextcoloropts="";
foreach($basic_colors as $cname => $chex) {
if ($chex==$bnrtextcolor) {
$bnrtextcoloropts=$bnrtextcoloropts . "<option value=\"$chex\" selected>$cname</option>";
} else {
$bnrtextcoloropts=$bnrtextcoloropts . "<option value=\"$chex\">$cname</option>";
}
}
}
echo "
$sectiontitle
$formtag
<table border=\"0\">
<tr><td>
Banner Name (text displayed in the banner): &nbsp;<input type=\"text\" name=\"bnrname\" size=\"40\" value=\"$bnrname\"><br><br>
Banner Color (background color of the banner): &nbsp;
<select name=\"bnrcolor\">
$bnrcoloropts
</select><br><br>
Banner Text Color (text color of the banner, different than banner color): &nbsp;
<select name=\"bnrtxtcolor\">
$bnrtextcoloropts
</select><br><br>
</td></tr>
</table>
$buttontags
</form>
<br><hr>
";
// show the table of entities
$existingdata=mysqli_query($drs_db,"select * from banners where bannerid!=1 order by bannerid asc");
echo "
<b>Existing Banners</b>&nbsp;&nbsp;&nbsp;<font size=\"-1\">Click on the Banner ID to edit.</font><br><br>
<table border=\"1\">
<tr><th>Banner ID</th><th>Banner</th></tr>
";
while ($tablerow=mysqli_fetch_assoc($existingdata)) {
printf("
<tr>
<td><a href=\"config.php?edit_banner=1&bnrid=%s#banners\">%s</a></td>
<td align=\"center\" bgcolor=\"%s\"><font color=\"%s\">%s</font></td>
</tr>",
$tablerow["bannerid"],$tablerow["bannerid"],
$tablerow["bannercolor"],$tablerow["textcolor"],$tablerow["bannername"]);
}
echo "</table>";
echo "
</div>
<div id=\"miscellaneous\">
<form method=\"post\" action=\"config.php#miscellaneous\">
";
if ($ttlsuppld_err) format_message(1,"Session expiration time cannot be blank.");
$curaccessmode=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"access_mode\""))[0];
$trustedstate=$untrustedstate="";
if($curaccessmode=="trusted") $trustedstate="checked";
if($curaccessmode=="untrusted") $untrustedstate="checked";
$curttl=mysqli_fetch_row(mysqli_query($drs_db,"select value from config where name=\"session_ttl_days\""))[0];
echo "
<font size=\"+1\"><b>Miscellaneous Configuration Parameters</b></font><br><br><br><br>
Access mode:&nbsp;&nbsp;&nbsp;<input type=\"radio\" name=\"accessmode\" value=\"trusted\" $trustedstate> Trusted &nbsp;&nbsp;&nbsp;&nbsp;
<input type=\"radio\" name=\"accessmode\" value=\"untrusted\" $untrustedstate> Untrusted<br><br><br>
Session expiration time (users will have to log in again after this long) : &nbsp;<input type=\"text\" name=\"sessttl\" size=\"3\" value=\"$curttl\"> days<br><br>
Force logout of all users &nbsp;<input type=\"checkbox\" name=\"logoutall\"><br><br><br><br>
<input type=\"submit\" name=\"update_misc\" value=\"Update Options\">&nbsp;&nbsp;&nbsp;&nbsp;
<input type=\"submit\" name=\"reset\" value=\"Reset\"><br>
</div>
</div>
";
echo "<br>";
banner($print);
pageblock("right","end");
pagetable("end");
framework("end","","",$print);
?>