Cyber Anakins Lightsaber - A Minishell-based backdoor

Current Path : /home/bjb2293782/xn--80abaeoqbbrbgf8aea5a2a2z.xn--p1ai/docs/new/
Upload File :
Current File : /home/bjb2293782/xn--80abaeoqbbrbgf8aea5a2a2z.xn--p1ai/docs/new/design.php

<?php
require("std.php");

function BEGIN($page)
{
?><html>
<head>
	<meta charset=UTF-8>
	<title>Библиотеки Королёва</title>

	<meta name="viewport" content="initial-scale=0.55">
	<link rel="stylesheet" href="<?php print $css; ?>?10" type="text/css">

	<link rel="icon" href="favicon.ico" type="image/x-icon"> 
	<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">

	<meta name="keywords" content="Библиотека, книги, читать, мероприятия, VR, роботы, Королёв, компьютерные курсы, досуг, кружок, шахматы, мастер-классы">
	<meta name="description" content="Официальный сайт Централизованной Библиотечной Системы города Королёв (МБУК ЦБС)">

	<style>
		body { padding:0 0 0 0; margin: 0 0 0 0; }
		.headerCell { background-color:#234177; }
		.headerCellDiv { height:150px; position:relative; }
        .mainlogo { position:absolute; left:10; top:10 }
        .menuLine
        {
        	position:absolute;
        	left:150px;
        	top:124px;
        	overflow:hidden
        }
        .menuItem, .menuItemSel
        {
        	float:left;
        	font-size:16px;
        	font-family:Arial;
			padding-left:16;
			padding-right:16;
			-webkit-touch-callout: none;
		    -webkit-user-select: none;
		    -khtml-user-select: none;
		    -moz-user-select: none;
		    -ms-user-select: none;
		    user-select: none;
			cursor:pointer;
		}

		.menuItem a, .menuItemSel a
		{
			font-size:18px;

			color:white;
			transition-property: color;
			transition-duration: 500ms;
			text-decoration:none;
		}

		.menuItem div, .menuItemSel div
		{
			background-color:#99ddff;
			transform:translate(-50%,0) scale(0,1);
			height:2px;
		}

		.menuItemSel a
		{
			font-weight:bold;
			color:#ffff99;
		}

		.menuItem:hover a, .menuItemSel:hover a
		{
			color:#99ddff;
		}

		.menuItem:hover div, .menuItemSel:hover div
		{
			transform:translate(0,0) scale(1,1);
			transition-property: background-color, transform;
			transition-duration: 500ms;
		}

		.messangerLine
		{
			position:absolute;
			left:170px;
			top:4px;
		}

		.messangerLink
		{
			float:left;
			cursor:pointer;
			-webkit-touch-callout: none;
		    -webkit-user-select: none;
		    -khtml-user-select: none;
		    -moz-user-select: none;
		    -ms-user-select: none;
		    user-select: none;
			cursor:pointer;
			font-family:Tahoma;
			padding-right:16;
		}

		.messangerLink a
		{
			transition-duration: 500ms;
			transition-property:color;
			color:#99AACC;
			font-size:12px;
			position:relative;
			text-decoration:none;
			top:-8px;
		}

		.messangerLink:hover a
		{
			color:#99EEFF;
		}

		.messangerLink img
		{
			transition-duration: 500ms;
			transition-property:filter;
			width:24px;
			height:24px;
			margin-right:8px;
			filter: brightness(0) saturate(100%) invert(75%) sepia(35%) saturate(347%) hue-rotate(182deg) brightness(85%) contrast(85%);
		}

		.messangerLink:hover img
		{
			filter: brightness(0) saturate(100%) invert(86%) sepia(21%) saturate(1450%) hue-rotate(161deg) brightness(103%) contrast(105%);
		}
	</style>

</head>
<body>
<table width=100% height=100% cellspacing=0 cellpadding=0>
<tr>
	<td height=1% class=headerCell>
		<div class=headerCellDiv>
			<img align=right style='margin-top:30px; margin-right:10px' id=forVisuallyImpairedBtn src='<?php print _CD_("vi",'0')=='0' ? "forvisuallyimpaired.png" : "normalversion.png"; ?>' width=136 height=74 class=hoverImg style='cursor:pointer' onclick='<?php print _CD_("vi",'0')=='0' ? "switchToVisualImpaired()" : "switchToNormalVersion()"; ?>' title='<?php print _CD_("visuallyimpaired",'0')=='0' ? "Версия для слабовидящих" : "Переключиться на обычную версию"; ?>'>
			<img src='mainlogo.png' width=391 height=140 class=mainlogo>

			<script>
			var blockMenuClick = false;
			function menuClick(sender)
			{
				if (blockMenuClick) return;
				blockMenuClick = true;
				var a = sender.firstChild;
				while(a)
				{
					if (a.tagName=="A")
					{
						a.click();
						return;
					}
				}
			}

			function menuAClick(sender)
			{
				blockMenuClick = true;
			}
			</script>


			<div class=messangerLine>
				<div class=messangerLink onclick='menuClick'><img src='vk-logo.png'><a href='https://vk.com/cbskorolev' target=blank onclick='menuAClick(this)'>ВКонтакте</a></div>
				<div class=messangerLink onclick='menuClick'><img src='vk-logo.png'><a href='https://vk.com/chitaemvkoroleve' target=blank onclick='menuAClick(this)'>ВКонтакте "Читаем в королёве"</a></div>
			</div>


			<div class=menuLine>
			<?php
			function MenuItem($text, $href,$sel)
			{
				$cls = $sel ? "menuItemSel":"menuItem";
				print "<div class=$cls onclick='menuClick(this)'><a href='$href' onclick='menuAClick(this)'>$text</a><div></div></div>\n";
			}
			MenuItem("Главная","index.php",$page==0);
			MenuItem("Читателям","readers.php", $page==1);
			MenuItem("Библиотеки","departments.php", $page==2);
			MenuItem("Вопросы и ответы","forum.php", $page==3);
			MenuItem("Видеотрансляции","forum.php", $page==4);

			?>
			</div>
		</div>
	</td>
</tr>
<?php
}


function MAINBEGIN()
{
?>
<tr>
	<td height=99%>
<?php
}

function MAINEND()
{
?>
	</td>
</tr>
<?php
}


function BOTTOM()
{
?>
<tr>
	<td height=1%>
	</td>
</tr>
</body>
</html>
<?php
}


function EVENTBLOCK()
{
?>
<tr>
<td height=1%>


<?php
$banners = array();
$dir = opendir("EventBanners");
while($file = readdir($dir))
{
	$f = @fopen("EventBanners/$file/colors.json","r");
	if ($f)
	{
		$json = json_decode(fread($f, 4000));
		$json->bg = "EventBanners/$file/bg.jpg";
		$banners[] = $json;
		fclose($f);
	}
}
closedir($dir);

$mysql = mysqlopen();
$news = array();
foreach($GLOBALS['filials'] as $filial=>$filialName)
{
	$result = mysqli_query($mysql,
	"SELECT
		A.`id` 				as `id`,
		A.`title` 			as `title`,
		A.`impotant`		as `impotant`,
		A.`date`			as `date`,
		A.`poster`			as `poster`,
		A.`filial`			as `filial`
	FROM
		libNews as A
	WHERE
		A.`title`<>'' AND 
		A.`filial`=$filial AND
		DATEDIFF(NOW(),A.`date`) < 15
	ORDER BY A.`impotant` DESC, A.`date` DESC
	LIMIT 3");
	if (mysqli_errno($mysql)) die("ERROR: ".mysqli_error($mysql)." at line ".__LINE__." of file ".__FILE__."\n");
	while($row = mysqli_fetch_assoc($result))
	{
		$row['filialName'] = $GLOBALS['filials'][$row['filial']];
		array_push($news, $row);
	}
	mysqli_free_result($result);
}

function NewsCompareFunc($a,$b)
{
    if ($a['impotant'] < $b['impotant']) return 1;
	if ($a['impotant'] > $b['impotant']) return -1;
	
	if ($a['date'] < $b['date']) return 1;
	if ($a['date'] > $b['date']) return -1;
}

usort($news, "NewsCompareFunc");


for($i=0; $i < count($news); $i++)
{
	$news['date']=SQLtoDate($news['date']);
}

?>
	<canvas width=100% height=600 id=eventBannerCanvas></canvas>

	<script>
	eventBannerCanvas = document.getElementById('eventBannerCanvas');

	eventBannerCanvas.banners = <?php print json_encode2($banners); ?>;

	eventBannerCanvas.news = <?php print json_encode2($news); ?>;

	eventBannerCanvas.holdPeriod = 6000;
	eventBannerCanvas.transationPeriod = 500;
	eventBannerCanvas.stage = 0;
	eventBannerCanvas.timer = 0;
	eventBannerCanvas.needRedraw = true;


	function __on_banner_load()
	{
		this.loaded = true;
		eventBannerCanvas.needRedraw = true;
	}

	eventBannerCanvas.newsIdToBannerInx = function(newsId)
	{
		return newsId % this.banners.length;
	}

	for(var i=0; i < eventBannerCanvas.banners.length; i++)
	{
		eventBannerCanvas.banners[i].bgImage = new Image();
		eventBannerCanvas.banners[i].bgImage.loaded = false;
		eventBannerCanvas.banners[i].bgImage.onload = __on_banner_load;
		eventBannerCanvas.banners[i].bgImage.src = eventBannerCanvas.banners[i].bg;
	}






	eventBannerCanvas.onDraw = function()
	{
		var width = window.innerWidth;
		var bannerWidth = width;
		if (bannerWidth > 1920) bannerWidth = 1920;
		var bannerHeight = bannerWidth * 600 / 1920;
		canvas.width = width;
		canvas.height = bannerHeight;

		var bgcolor = "#dddfc2";

		var ctx = canvas.getContext("2d");

		var drawBanner = function(newsInx, offset)
		{                      
			var bannerInx = this.newsIdToBannerInx(this.news[newsInx].id);
			var bgImage = this.banners[bannerInx].bgImage;
			if (!bgImage.loaded)
			{
				ctx.fillStyle=bgcolor;
				ctx.fillRect(offset, 0, offset + width, bannerHeight);
			}
			else
			{
				var fieldWidth = (width - bannerWidth)/2;
				if (fieldWidth > 0)
				{
					var gradient = ctx.createLinearGradient(offset, 0, offset + fieldWidth, 0);
                	gradient.addColorStop(0, bgcolor);
					gradient.addColorStop(1, this.banners[bannerInx].outrangeColor);
					ctx.fillStyle = gradient;
					ctx.fillRect(offset, 0, fieldWidth, bannerHeight);

					gradient = ctx.createLinearGradient(offset + width - fieldWidth, 0, offset + width, 0);
                	gradient.addColorStop(0, this.banners[bannerInx].outrangeColor);
                	gradient.addColorStop(1, bgcolor);
					
					ctx.fillStyle = gradient;
					ctx.fillRect(offset + width - fieldWidth, 0, fieldWidth, bannerHeight);
				}
				ctx.drawImage(bgImage, offset + fieldWidth, 0, fieldWidth, bannerWidth);

				var textLeft = offset + fieldWidth + bannerWidth * 0.2;
				var textWidth = bannerWidth * 0.7;

				if (this.news[newsId].poster && this.news[newsId].poster!='')
				{
					
				}



			}

		}


	};

	eventBannerCanvas.onTimer = function(dT)
	{
	};

	eventBannerCanvas.newsId = eventBannerCanvas.news[0].id;
	eventBannerCanvas.bg = new Image();
	eventBannerCanvas.bg.loaded = false;
	eventBannerCanvas.bg.onload = __on_banner_load;
	eventBannerCanvas.bg.src=eventBannerCanvas.getBgImageSrc(eventBannerCanvas.newsId);

	setInterval(function() { eventBannerCanvas.onTimer(20); },20);





	</script>
</td>
</tr>

<?php
}



?>

May the force be with you, always.