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

if (isset($_REQUEST["site_alias_id"]))
{
	$type = 1;
	$alias_id = intval($_REQUEST["site_alias_id"]);
}
else
{
	$type = 0;
	$alias_id = 0;
}

// Получаем переданные поля
$site_id = to_int($_REQUEST['site_id']);

$alias_name = to_str($_REQUEST['alias_name']);

if (isset($_REQUEST['alias_current']))
{
	$alias_current = to_str($_REQUEST['alias_current']);

	if ($alias_current == 'on')
	{
		$alias_current = 1;
	}
	else
	{
		$alias_current = 0;
	}
}
else
{
	$alias_current = 0;
}

// проверяем, чтобы имя домена было не менее 1 символа
if (mb_strlen(trim($_REQUEST['alias_name'])) < 1)
{
	$alias_name = to_int($_REQUEST['alias_name']);

	$error_name_alias = 1;
	
	show_error_message($GLOBALS['MSG_site']['error_domen_name']);
}
else
{	
	// Проверяем нет ли домена с аналогичным именем
	$row_alias = $site->GetAlias($alias_name, array('use_star' => false));
	
	if ($row_alias)
	{
		$site_name = $site->GetSite($row_alias['site_id']);

		// Проверяем редактирование это или добавление
		if ($type == 1) // - редактирование
		{
			// Если id не совпадают (пытаемся добавить домен с аналогичным именем), возвращаем false
			if ($row_alias['alias_id'] != $alias_id)
			{
				$error_add_alias = 1;
				show_error_message(sprintf($GLOBALS['MSG_site']['site_add_edit_domen_error'], $site_name['site_name']));
			}
		}
		else
		{
			$error_add_alias = 1;
			show_error_message(sprintf($GLOBALS['MSG_site']['site_add_edit_domen_error'], $site_name['site_name']));
		}
	}
	// Осуществляем добавление домена (алиаса)
	if (!isset($error_add_alias))
	{
		if ($insert_alias_id = $site->insert_alias($type, $alias_id, $site_id, $alias_name, $alias_current))
		{
			$admin_forms = new admin_forms();
			$window_id = $admin_forms->GetWindowId();
			?><script type="text/javascript">
			$.appendInput('<?php echo $window_id?>', 'EditAddDomain', 'site_alias_id', '<?php echo $insert_alias_id?>');
			</script><?php

			// Редактирование информации о домене
			if ($type)
			{
				show_message($GLOBALS['MSG_site']['site_edit_domen_success']);
			}
			else // Добавление информации о домене
			{
				show_message($GLOBALS['MSG_site']['site_add_domen_success']);
			}
		}
		else // Ошибка при добавлении/редактировании информации о домене
		{
			// Редактирование информации о домене
			if ($type)
			{
				show_error_message($GLOBALS['MSG_site']['site_edit_domen_error']);
			}
			else // Добавление информации о домене
			{
				show_error_message($GLOBALS['MSG_site']['site_add_domen_error']);
			}
		}
	}
}
?>