<?php 
$xsl_order = to_str($GLOBALS['LA']['xsl_order']);

$shop = & singleton('shop');

/* Получаем id текущего пользователя сайта */
$SiteUsers = & singleton('SiteUsers');

$site_user_id = $SiteUsers->GetCurrentSiteUser();

if (to_str($_REQUEST['action']) == 'cancel')
{
	$shop_order_id = to_int($_REQUEST['shop_order_id']);

	$order_row = $shop->GetOrder($shop_order_id);
	if ($order_row)
	{
		/* Аннулируем заказ, только если он еще не оплачен */
		if (!$order_row['shop_order_status_of_pay'])
		{
			if ($shop->CancelOrder($shop_order_id))
			{
				$msg = 'Заказ успешно отменен.';
			}
			else
			{
				$msg = 'Ошибка при отмене заказа.';
			}
		}
		else
		{
			$msg = 'Нельзя отменить заказ, так как он уже оплачен.';
		}
	}
	else
	{
		$msg = 'Информация о заказе не найдена.';
	}

	/* Редирект */
	$time = 5; // секунд
	$structure = & singleton('Structure');
	$path = '/'.$structure->GetStructurePath(CURRENT_STRUCTURE_ID);
	?>
	<h1>Отмена заказа</h1>
	<p><?php echo $msg?> Через <?php echo $time?> секунд Вы вернетесь к списку заказов.</p>
	<p>Если Вы не хотите ждать, перейдите по <a href="<?php echo $path?>">ссылке</a>.</p>
	<script language="JavaScript" type="text/javascript">
	<!--
	function set_location()
	{
		location="<?php echo $path?>";
	}
	setTimeout('set_location()', <?php echo $time * 1000?>);
	//-->
	</script>
	<?php 
}
else
{
	if ($site_user_id > 0)
	{
		$shop->ShowUserOrders($site_user_id, $xsl_order);
	}
	else
	{
	?>
	<h1>Вы не авторизованы!</h1>
	<p>Для просмотра заказов необходимо авторизироваться.</p>
	<?php 
	}
}
?>