<?php 
/**
 * Система управления сайтом HostCMS v. 5.xx
 * Copyright © 2005-2008 ООО "Хостмэйк" (Hostmake LLC), http://www.hostcms.ru
 *
 * Обработчик добавления/редактирования XSL-шаблона.
 * 
 * Файл: /admin/xsl/action/add_xls.php
 * 
 * @author Hostmake LLC
 * @version 5.2
 */
$xsl = new xsl();

// Редактирование XSL-шаблона
if (isset($_POST["xsl_id"]))
{
	$type = 1;
	$xsl_id = to_int($_POST["xsl_id"]);
}
else
{
	$type = 0;
	$xsl_id = 0;
}

// Проверяем на наличие XSL с идентичным именем
$row = $xsl->GetXsl(to_str($_POST['xsl_name']), array('cache_off' => true));

$xsl_dir_id = to_int($_POST['xsl_dir_id']);
$xsl_name = to_str($_POST['xsl_name']);
$xsl_value = to_str($_POST['xsl_value']);
$xsl_comment = to_str($_POST['xsl_comment']);
$xsl_order = to_int($_POST['xsl_order']);

if ($row && ($type == 0 || $type == 1 && $xsl_id != $row['xsl_id']))
{
	$error_edit_add_xsl = 1;
	
	show_error_message(sprintf($GLOBALS['MSG_xsl']['XSL_add_isset_error'], to_str($_POST['xsl_name'])));
}
else
{
	$param['type'] = 	$type;
	$param['xsl_id'] = $xsl_id;
	$param['xsl_dir_id'] = $xsl_dir_id;
	$param['xsl_name'] = $xsl_name;
	
	if (isset($_POST['xsl_format']))
	{
		$xsl_value = $xsl->FormatXml($xsl_value);
	}
	$param['xsl_value'] = $xsl_value;
	$param['xsl_comment'] = $xsl_comment;
	$param['xsl_order'] = $xsl_order;
		
	if ($insert_xsl_id = $xsl->InsertXsl($param))
	{
		?>
	<script>
	var ElementInput = document.createElement("input");
	ElementInput.setAttribute("type", "hidden");
	ElementInput.setAttribute("name", "xsl_id");
	ElementInput.setAttribute("value", "<?php echo $insert_xsl_id?>");

	document.getElementById('EditAddXsl').appendChild(ElementInput);
	</script>
	<?php 
	if ($type)
	{
		show_message($GLOBALS['MSG_xsl']['XSL_edit_success']);
	}
	else
	{
		show_message($GLOBALS['MSG_xsl']['XSL_add_success']);
	}
	}
	else // Ошибка добавления/редактирования XSL-шаблона
	{
		// Ошибка редактирования XSL-шаблона
		if ($type)
		{
			show_error_message($GLOBALS['MSG_xsl']['XSL_edit_error']);
		}
		else // Ошибка добавления XSL-шаблона
		{
			show_error_message($GLOBALS['MSG_xsl']['XSL_add_error']);
		}
	}
}
?>