Improved image-buttons and colored image creation

This commit is contained in:
2023-03-11 17:29:44 +01:00
parent 20b54f5b27
commit aabd37bd1a
83 changed files with 181 additions and 235 deletions

View File

@@ -7,75 +7,33 @@ Copyright (C) 2011-2023 Thomas Hooge
SPDX-License-Identifier: GPL-3.0-or-later
*****************************************************************************/
include("includes.php");
include('config.php');
if(isset($_GET['icon'])) {
$icon = sanitize($_GET['icon']);
switch($icon) {
case ("add") :
$png = 'page_add';
break;
case ("back") :
$png = 'control_rewind_blue';
break;
case ("cancel") :
$png = 'control_rewind_blue';
break;
case ("comment") :
$png = 'comment';
break;
case ("delete") :
$png = 'page_delete';
break;
case ("shred") :
$png = 'bin';
break;
case ("edit") :
$png = 'page_edit';
break;
case ("error") :
$png = 'error';
break;
case ("help") :
$png = 'help';
break;
case ("logo") :
$png = 'logo';
break;
case ("next") :
$png = 'control_fastforward_blue';
break;
case ("save") :
$png = 'page_save';
break;
case ("search") :
$png = 'magnifier';
break;
}
$image = imagecreatefrompng("images/" . $png . ".png");
imagealphablending($image, true);
imagesavealpha($image, true);
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
session_name($config_app_session);
session_start();
function valid_color($color, $default='888888') {
// safe return a 6 character color string in uppercase
// input can be length of 3 or 6
if (! isset($color) or ! ctype_xdigit($color)) {
return $default;
}
if(strlen($color) == 3) {
// duplicate characters
$col6 = '';
for ($i=1; $i<=3; $i++) {
$col6 .= $color[$i].$color[$i];
}
return strtoupper($col6);
}
return strtoupper($color);
}
if(isset($_GET['color'])) {
$color = sanitize($_GET['color']);
$image = imagecreatetruecolor($_SESSION['suser_imagesize'], $_SESSION['suser_imagesize']);
$color = imagecolorallocate($image, hexdec(substr($color,0,2)), hexdec(substr($color,2,2)), hexdec(substr($color,4,2)));
imagefill($image, 0, 0, $color);
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
}
?>
$color = valid_color($_GET['color'], '444');
$image = imagecreatetruecolor($_SESSION['suser_imagesize'], $_SESSION['suser_imagesize']);
$color = imagecolorallocate($image, hexdec(substr($color,0,2)), hexdec(substr($color,2,2)), hexdec(substr($color,4,2)));
imagefill($image, 0, 0, $color);
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);