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

// Не возникало ошибок при добавлении/редактировании информационной группы
if (!isset($error_information_group))
{
	// Картинки.
	$info_sys_row = $InformationSystem->GetInformationSystem($information_system_id);

	if ($info_sys_row)
	{
		$information_group_big_image_max_width = $info_sys_row['information_systems_image_big_max_width'];
		$information_group_big_image_max_height = $info_sys_row['information_systems_image_big_max_height'];
		$information_group_small_image_max_width = $info_sys_row['information_systems_image_small_max_width'];
		$information_group_small_image_max_height = $info_sys_row['information_systems_image_small_max_height'];

		$information_systems_typograph_group = $info_sys_row['information_systems_typograph_group'];

		// Watermark
		$information_systems_watermark_default_position_x = $info_sys_row['information_systems_watermark_default_position_x'];
		$information_systems_watermark_default_position_y = $info_sys_row['information_systems_watermark_default_position_y'];
	}
	else
	{
		$information_group_big_image_max_width = MAX_SIZE_LOAD_IMAGE_BIG;
		$information_group_big_image_max_height = MAX_SIZE_LOAD_IMAGE_BIG;
		$information_group_small_image_max_width = MAX_SIZE_LOAD_IMAGE;
		$information_group_small_image_max_height = MAX_SIZE_LOAD_IMAGE;

		$information_systems_typograph_group = 0;

		// Watermark
		$information_systems_watermark_default_position_x = '50%';
		$information_systems_watermark_default_position_y = '100%';
	}

	// Редактирование информационной группы
	if ($information_group_id != 0)
	{
		$result = $InformationSystem->select_information_groups($information_group_id, $information_system_id);

		if (mysql_num_rows($result))
		{
			$row = mysql_fetch_assoc($result);

			$information_group_parent_id = $row["information_groups_parent_id"];
			$information_group_name = $row["information_groups_name"];
			$information_group_description = $row["information_groups_description"];
			$information_group_order = to_int($row['information_groups_order']);
			$information_group_path = $row['information_groups_path'];
			$information_group_image = $row['information_groups_image'];
			$information_group_small_image = $row['information_groups_small_image'];
			$information_group_allow_indexation = $row['information_groups_allow_indexation'];
			$information_group_seo_title = $row['information_groups_seo_title'];
			$information_group_seo_description = $row['information_groups_seo_description'];
			$information_group_seo_keywords = $row['information_groups_seo_keywords'];
			$information_group_access = $row['information_groups_access'];

			$information_group_activity = $row['information_groups_activity'];
			$information_group_blog_type = $row['information_groups_blog_type'];
			$information_group_blog_item_default_accessibility = $row['information_groups_blog_item_default_accessibility'];
			$information_group_blog_item_default_show_comments_mode = $row['information_groups_blog_item_default_show_comments_mode'];
			$information_group_blog_item_default_add_comments_mode = $row['information_groups_blog_item_default_add_comments_mode'];
			$site_users_id = $row['site_users_id'];
		}
	}
	else // Добавление информационной группы
	{
		// Значения по умолчанию - пустые
		$information_group_parent_id = to_int($_REQUEST["information_groups_parent_id"]);
		$information_group_name = '';
		$information_group_description = '';
		$information_group_order = 0;
		$information_group_path = '';
		$information_group_image = '';
		$information_group_small_image = '';
		$information_group_allow_indexation = 1;
		$information_group_seo_title = '';
		$information_group_seo_description = '';
		$information_group_seo_keywords = '';
		$information_group_access = -1;

		$information_group_activity = 1;
		$information_group_blog_type = 0;
		$information_group_blog_item_default_accessibility = 0;
		$information_group_blog_item_default_show_comments_mode = 0;
		$information_group_blog_item_default_add_comments_mode = 0;
		
		$site_users_id = 0;

	}
}// Произошла ошибка при добавлении/редактировании информационной группы
else
{
	// Указываем заданные значения
	$information_group_parent_id =  to_int($_POST['information_group_parent_id']);
	$information_group_name = to_str($_POST['information_group_name']);
	$information_group_description = to_str($_POST['information_group_description']);
	$information_group_order = to_int($_POST['information_group_order']);
	$information_group_path = to_str($_POST['information_group_path']);

	// Watermark
	$information_systems_watermark_default_position_x = to_str($_POST['image_watermark_position_x_information_group_image']);
	$information_systems_watermark_default_position_y = to_str($_POST['image_watermark_position_y_information_group_image']);

	if ($information_group_id != 0)
	{
		$result = $InformationSystem->select_information_groups($information_group_id, $information_system_id);

		$row = mysql_fetch_assoc($result);

		$information_group_image = $row['information_groups_image'];
		$information_group_small_image = $row['information_groups_small_image'];
	}
	else
	{
		$information_group_image = '';
		$information_group_small_image = '';
	}

	$information_group_allow_indexation = isset($_POST['information_group_allow_indexation']) ? 1 : 0;
	$information_group_seo_title = to_str($_POST['information_group_seo_title']);
	$information_group_seo_description = to_str($_POST['information_group_seo_description']);
	$information_group_seo_keywords = to_str($_POST['information_group_seo_keywords']);
	$information_group_access = to_int($_POST['information_group_access']);

	$information_group_big_image_max_width = to_int($_POST['big_image_max_width_information_group_image']);
	$information_group_big_image_max_height = to_int($_POST['big_image_max_height_information_group_image']);
	$information_group_small_image_max_width = to_int($_POST['small_image_max_width_information_group_image']);
	$information_group_small_image_max_height = to_int($_POST['small_image_max_height_information_group_image']);

	$information_group_activity = 1;
	$information_group_blog_type = 0;
	$information_group_blog_item_default_accessibility = 0;
	$information_group_blog_item_default_show_comments_mode = 0;
	$information_group_blog_item_default_add_comments_mode = 0;
	
	$site_users_id = to_int($_POST['site_users_id']);
}

$form_params = array();

$form_params['title'] = ($information_group_id == 0)
? $GLOBALS['MSG_information_systems']['information_groups_add_form_title']
: $GLOBALS['MSG_information_systems']['information_groups_edit_form_title'];

$form_params['form_attribs']['method'] = 'post';
$form_params['form_attribs']['action'] = '/admin/InformationSystems/InformationSystems.php';
$form_params['form_attribs']['name'] = 'EditAddInformationGroup';
$form_params['form_attribs']['ENCTYPE'] = 'multipart/form-data';

$admin_forms_fields = new admin_forms_fields();

// Формируем "хлебные крошки"
$new_path_array = array();

$new_path_array[] = array(
'link' => $admin_forms_fields->GetHtmlCallDoLoadAjax('/admin/InformationSystems/InformationSystems.php', '', 11, 'load_data'),
'onclick' => $admin_forms_fields->GetOnClickCallDoLoadAjax('/admin/InformationSystems/InformationSystems.php', '', 11, 'load_data'),
'name' => $GLOBALS['MSG_information_systems']['show_information_systems_title']);

// Получаем данные об информационной системе, группу которой сейчас добавляем/редактируем
$information_system_row = $InformationSystem->GetInformationSystem($information_system_id);

// Определим ID макета по структуре, связанной с инфосистемой
$structure = & singleton('Structure');
$structure_row = $structure->GetStructureItem(to_int($information_system_row['structure_id']));
$template_id = to_int($structure_row['templates_id']);

$path_array = $InformationSystem->GetInformationGroupsPathArray($information_group_parent_id, $information_system_id);

if (count($path_array) > 0)
{
	// Меняем порядок следования элементов в массиве на обратный
	$path_array = array_reverse($path_array, true);
	// Преобразуем идентификаторы групп в ссылки на группы.
	if ($path_array)
	{
		foreach ($path_array as $key => $value)
		{
			$new_path_array[] = array (
			'link' => $admin_forms_fields->GetHtmlCallDoLoadAjax('/admin/InformationSystems/InformationSystems.php', "&information_groups_parent_id={$key}&information_system_id={$information_system_id}", 12, 'load_data'),
			'onclick' => $admin_forms_fields->GetOnClickCallDoLoadAjax('/admin/InformationSystems/InformationSystems.php', "&information_groups_parent_id={$key}&information_system_id={$information_system_id}", 12, 'load_data'),
			'name' => $value['information_groups_name']);
		}
	}
}

// Передаем в массив для констурктора хлебные крошки
$form_params['path_array'] = $new_path_array;

$InformationSystem = & singleton('InformationSystem');

$admin_forms_fields->admin_forms_fields($form_params);

$DataBase = & singleton('DataBase');

$tab_id = $admin_forms_fields->AddTab($GLOBALS['MSG_information_systems']['information_groups_form_tab_1']);

// Название информационной группы.
$param = array();

$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_name';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_name'];
$param['type'] = 0; // Поле ввода.
$param['value'] = $information_group_name;
$param['attributes'] = array();
$param['attributes']['class'] = 'large';
$param['format']['minlen']['value'] = 1;
$param['format']['maxlen']['value'] = 255;

$admin_forms_fields->AddField($param);

// Идентификатор информационной группы
if ($information_group_id)
{
	$param = array();
	$param['tab_id'] = $tab_id;
	$param['name'] = '';
	$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_id'];
	$param['type'] = 0; // Обычный текст (метка)
	$param['value'] = $information_group_id;
	// Данное поле только для чтения
	$param['attributes']['readonly'] = '';

	$admin_forms_fields->AddField($param);
}

// Список групп
$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_parent_id';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_parent_id'];
$param['type'] = 2; // Выпадающий список.

$value = $information_group_parent_id;

$param['value'] = $value;

$items = array();
$mas = array();

if ($information_group_id)// редактирование группы
{
	$mas = $InformationSystem->GetGroupsInformationSystem(0, $information_system_id, "&nbsp;", $information_group_id , array('cache' => false));
}
else // Добавление группы
{
	$mas = $InformationSystem->GetGroupsInformationSystem(0, $information_system_id, "&nbsp;", false, array('cache' => false));
}

$items[0] = '..';
$count_groups = count($mas);

for ($i = 0; $i < $count_groups; $i++)
{
	$items[$mas[$i]['information_groups_id']] = $mas[$i]['separator'].$mas[$i]['information_groups_name'];
}

$param['items'] = $items;

$admin_forms_fields->AddField($param);

// Описание информационной группы.
$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_description';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_description'];

// Если не существует константа для отображения wysywig или
// она равна true, то отображаем wysiwyg.
if (!defined('ALLOW_WYSIWYG_DESCRIPTION_IS_GROUP') || (defined('ALLOW_WYSIWYG_DESCRIPTION_IS_GROUP')  && ALLOW_WYSIWYG_DESCRIPTION_IS_GROUP))
{
	$param['type'] = 7; // Визуальный редактор.
	$param['template'] = $template_id;
}
else
{
	$param['type'] = 5; // textarea
	$param['attributes'] = array();
	$param['attributes']['rows'] = 7;
}

$param['value'] = $information_group_description;

$admin_forms_fields->AddField($param);

// Добавляем чекбоксы типографики для описания.
if (class_exists("typograph"))
{
	// Оптическое выравнивание
	$param = array();
	$param['tab_id'] = $tab_id;
	$param['type'] = 1;
	$param['name'] = 'use_typograph_for_description';
	$param['html_id'] = 'id_exec_typograph_for_description';
	$param['caption'] = $GLOBALS['MSG_information_systems']['exec_typograph_for_group_description'];
	$param['lable'] = $GLOBALS['MSG_information_systems']["yes"];
	$param['div_attributes']['style'] = 'float: left;';
	if (isset($_POST['use_typograph_for_description']))
	{
		$param['value'] = 1;
	}
	else
	{
		$param['value'] = to_int($information_systems_typograph_group);
	}

	$admin_forms_fields->AddField($param);

	// Висячая пунктуация
	$param = array();
	$param['tab_id'] = $tab_id;
	$param['type'] = 1;
	$param['name'] = 'trailing_punctuation_for_description';
	$param['html_id'] = 'id_trailing_punctuation_for_description';
	$param['caption'] = $GLOBALS['MSG_information_systems']['use_trailing_punctuation_for_prop'];
	$param['lable'] = $GLOBALS['MSG_information_systems']["yes"];
	$param['div_attributes']['style'] = 'float: left;';
	if (isset($_POST['use_typograph_for_description']) && isset($_POST['trailing_punctuation_for_description']))
	{
		$param['value'] = 1;
	}
	else
	{
		$param['value'] = to_int($information_systems_typograph_group);
	}

	$admin_forms_fields->AddField($param);
}
// Разделитель.
$admin_forms_fields->AddSeparator($tab_id);

// Изображение информационной группы.
$param = array();

$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_image';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_image'];
$param['type'] = 9; // Поле загрузки файла.
$param['value'] = $information_group_name;

$param['options'] = array();
$param['options']['make_small_image_from_big_show'] = 1; // отображать ли checkbox с подписью "Создать малое изображение из большого" (1 -  отображать (по умолчанию), 0 - не отображать);

if (!isset($error_information_group))
{
	// вид ображения checkbox'а с подписью "Создать малое изображение из большого" выбранным (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
	$param['options']['make_small_image_from_big_checked'] = $information_group_small_image != '' ? 0 :1;
}
else
{
	// вид ображения checkbox'а с подписью "Создать малое изображение из большого" выбранным (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
	$param['options']['make_small_image_from_big_checked'] = isset($_POST['used_big_image_information_group_image']) ? 1 : 0;
}

// Отображать ли поле загрузки малого изображения (1 -  отображать (по умолчанию), 0 - не отображать);
$param['options']['load_small_image_show'] = 1;

// Заголовок поля загрузки малого изображения
$param['options']['load_small_image_caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_small_image'];

// Значение максимальной ширины большого изображения;
$param['options']['image_big_max_width'] = $information_group_big_image_max_width;

// Значение максимальной высоты большого изображения;
$param['options']['image_big_max_height'] = $information_group_big_image_max_height;

// Значение максимальной ширины малого изображения;
$param['options']['image_small_max_width'] = $information_group_small_image_max_width;

// Значение максимальной высоты малого изображения;
$param['options']['image_small_max_height'] = $information_group_small_image_max_height;

// Отображать ли checkbox с подписью "Наложить водяной знак на большое изображение" (1 -  отображать (по умолчанию), 0 - не отображать);
$param['options']['used_watermark_big_image_show'] = 1;

if (isset($error_information_group))
{
	// Вид ображения checkbox'а с подписью "Наложить водяной знак на большое изображение" (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
	$param['options']['used_watermark_big_image_checked'] = isset($_POST['big_image_is_use_watermark_information_group_image']) ? 1 : 0;
}
else
{
	$param['options']['used_watermark_big_image_checked'] = to_int($information_system_row['information_systems_default_used_watermark']);
}

// Значение поля ввода с подписью "По оси X"
$param['options']['watermark_position_x'] = $information_systems_watermark_default_position_x;

// Значение поля ввода с подписью "По оси Y"
$param['options']['watermark_position_y'] = $information_systems_watermark_default_position_y;

// Отображать ли checkbox с подписью "Наложить водяной знак на малое изображение" (1 -  отображать (по умолчанию), 0 - не отображать);
$param['options']['used_watermark_small_image_show'] = 1;

if (isset($error_information_group))
{
	// Вид ображения checkbox'а с подписью "Наложить водяной знак на малое изображение" (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
	$param['options']['used_watermark_small_image_checked'] = isset($_POST['small_image_is_use_watermark_information_group_image']) ? 1 : 0;
}
else
{
	$param['options']['used_watermark_small_image_checked'] = to_int($information_system_row['information_systems_default_used_small_watermark']);
}

if ($information_group_image != '')
{
	// Адрес большого загруженного изображения
	$param['options']['big_image_path'] = '/' . UPLOADDIR . urlencode($information_group_image);
	// Ссылка для href
	$param['options']['href_delete_big_image'] = "javascript:void(0)";
	// Значение для onclick
	$param['options']['onclick_delete_big_image'] = "sendRequest('/admin/InformationSystems/InformationSystems.php?delete_information_group_big_image={$information_group_id}', 'get', callback_function_exec_from_return); return false;";
}
else
{
	$param['options']['big_image_path'] = '';
	// Ссылка для href
	$param['options']['href_delete_big_image'] = '';
	// Значение для onclick
	$param['options']['onclick_delete_big_image'] = '';
}

if ($information_group_small_image)
{
	// Адрес малого загруженного изображения
	$param['options']['small_image_path'] = '/' . UPLOADDIR.urlencode($information_group_small_image);

	// Ссылка для href
	$param['options']['href_delete_small_image'] = "javascript:void(0)";
	// Значение для onclick
	$param['options']['onclick_delete_small_image'] = "sendRequest('/admin/InformationSystems/InformationSystems.php?delete_information_group_small_image={$information_group_id}', 'get', callback_function_exec_from_return); return false;";
}
else
{
	$param['options']['small_image_path'] = '';
	// Ссылка для href
	$param['options']['href_delete_small_image'] = '';
	// Значение для onclick
	$param['options']['onclick_delete_small_image'] = '';
}

$admin_forms_fields->AddField($param);
$admin_forms_fields->AddSeparator($tab_id);

// Группа доступа
$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_access';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_access'];
$param['type'] = 2; // Выпадающий список.

$value = $information_group_access;

$param['value'] = $value;

$items = array();

if (class_exists('SiteUsers'))
{
	$site_users = & singleton('SiteUsers');

	$result = $site_users->SelectSiteUsersGroups();

	$count_site_users_groups = mysql_num_rows($result);
}
else
{
	$count_site_users_groups = 0;
}

for ($i = -2; $i < $count_site_users_groups; $i++)
{
	switch ($i)
	{
		case -2:
			$option_text = $GLOBALS['MSG_information_systems']['information_all'];
			$option_value = 0;
			break;
		case -1:
			$option_text = $GLOBALS['MSG_information_systems']['information_parrent'];
			$option_value = -1;
			break;
		default:
			$row = mysql_fetch_assoc($result);
			$option_text = $row["site_users_group_name"];
			$option_value = $row["site_users_group_id"];
	}

	$items[$option_value] = $option_text;
}

$param['items'] = $items;
$param['attributes']['style'] = 'width: 300px;';
$param['div_attributes']['style'] = 'float: left;';
$admin_forms_fields->AddField($param);

$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_activity';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_activity'];
$param['type'] = 2; // Выпадающий список.
$param['value'] = $information_group_activity;
$param['attributes']['style'] = 'width: 110px;';
$param['div_attributes']['style'] = 'float: left;';

$items = array();

$items[0] = $GLOBALS['MSG_information_systems']['information_groups_add_form_activity_false'];
$items[1] = $GLOBALS['MSG_information_systems']['information_groups_add_form_activity_true'];


$param['items'] = $items;

$admin_forms_fields->AddField($param);


// Порядковый номер группы
$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_order';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_order'];
$param['type'] = 0; // Поле ввода.
$param['value'] = $information_group_order;
$param['attributes']['style'] = 'width: 150px;';
$param['div_attributes']['style'] = 'float: left;';
$admin_forms_fields->AddField($param);


// Идентификатор пользователя, которому принадлежит группа

$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'site_users_id';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_site_users_id'];
$param['type'] = 0; // Поле ввода.
$param['value'] = $site_users_id;
$param['attributes']['style'] = 'width: 150px;';
$param['div_attributes']['style'] = 'float: left;';
$admin_forms_fields->AddField($param);

$admin_forms_fields->AddSeparator($tab_id);



// Элемент URL информационной системы для данной группы
$param = array();

$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_path';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_path'];
$param['type'] = 0; // Поле ввода.
$param['value'] = $information_group_path;
$param['format']['lib']['value'] = 'path';

$admin_forms_fields->AddField($param);

// Индексировать
$param = array();
$param['tab_id'] = $tab_id;
$param['type'] = 1;
$param['name'] = 'information_group_allow_indexation';
$param['html_id'] = 'id_captcha_used';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_indexation'];
$param['lable'] = $GLOBALS['MSG_information_systems']['yes'];
$param['value'] = $information_group_allow_indexation;

$admin_forms_fields->AddField($param);

$tab_id = $admin_forms_fields->AddTab($GLOBALS['MSG_information_systems']['information_groups_form_tab_seo']);

// Значение мета-тега <title> для информационной группы
$param = array();

$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_seo_title';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_seo_title'];
$param['type'] = 0; // Поле ввода.
$param['value'] = $information_group_seo_title;

$admin_forms_fields->AddField($param);

// Значение мета-тега <description> для информационной группы
$param = array();

$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_seo_description';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_seo_description'];
$param['type'] = 0; // Поле ввода.
$param['value'] = $information_group_seo_description;

$admin_forms_fields->AddField($param);

// Значение мета-тега <description> для информационной группы
$param = array();

$param['tab_id'] = $tab_id;
$param['name'] = 'information_group_seo_keywords';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_groups_seo_keywords'];
$param['type'] = 0; // Поле ввода.
$param['value'] = $information_group_seo_keywords;

$admin_forms_fields->AddField($param);


// Добавляем скрытое поле с идентификатором информационной системы
$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'information_system_id';
$param['type'] = 4; // Скрытое поле.
$param['value'] = $information_system_id;
$admin_forms_fields->AddField($param);

// Добавляем скрытое поле для отображения списка информационных групп
$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'action';
$param['type'] = 4; // Скрытое поле.
$param['value'] = 'show_information_groups';
$admin_forms_fields->AddField($param);

// Добавляем скрытое поле для отображения списка  подгрупп данной информационной группы
if ($information_group_parent_id)
{
	$param = array();
	$param['tab_id'] = $tab_id;
	$param['name'] = 'information_groups_parent_id';
	$param['type'] = 4; // Скрытое поле.
	$param['value'] = $information_group_parent_id;
	$admin_forms_fields->AddField($param);
}

// Идет редактирование информационной группы
if ($information_group_id)
{
	// Добавляем скрытое поле с идентификатором редактируемой информационной группы
	$param = array();
	$param['tab_id'] = $tab_id;
	$param['name'] = 'information_group_id';
	$param['type'] = 4; // Скрытое поле.
	$param['value'] = $information_group_id;
	$admin_forms_fields->AddField($param);
}

// Редактирование информационной группы
if ($information_group_id)
{
	#определяем значения свойств данной группы информационной системы
	$query = "SELECT information_propertys_groups_table.*,
				    	  	  information_propertys_groups_value_table.information_propertys_groups_value_id, 
				      	  information_propertys_groups_value_table.information_propertys_groups_value_value,  
				      	  information_propertys_groups_value_table.information_propertys_groups_value_file,
				      	  information_propertys_groups_value_table.information_propertys_groups_value_file_small,
				      	  information_propertys_groups_value_table.information_groups_id 
					FROM information_propertys_groups_table LEFT JOIN  information_propertys_groups_value_table
                      	ON
                         	(
	                         information_propertys_groups_value_table.information_propertys_groups_id=information_propertys_groups_table .information_propertys_groups_id 
	                         AND
	                          (
		                          (information_propertys_groups_value_table.information_groups_id='$information_group_id')
		                          OR
		                          (information_propertys_groups_value_table.information_groups_id is null)
	                         )
                         ) 
                         WHERE
                         information_propertys_groups_table.information_systems_id='$information_system_id' 
                         ORDER BY information_propertys_groups_table.information_propertys_groups_order";

	$DataBase->select($query);

	$result = $DataBase->result;

}
else // Добавление информационной группы
{
	// Выбираем все свойства, относящиеся к данной инфосистеме со значениями по умолчанию
	$result = $InformationSystem->GetAllInformationGroupsPropertys($information_system_id);
}

$count_propertys = mysql_num_rows($result);

// Для ифосистемы заданы дополнительные свойства информационных групп
if ($count_propertys)
{
	// Вкладка для дополнительных свойств
	$tab2_id = $admin_forms_fields->AddTab($GLOBALS['MSG_information_systems']['information_groups_form_tab_2']);
}

$html = '';

// Цикл по свойствам информационной группы
for ($i = 0; $i < $count_propertys; $i++)
{
	$row = mysql_fetch_assoc($result);

	$information_propertys_groups_id = to_int($row['information_propertys_groups_id']);

	switch ($row['information_propertys_groups_type'])
	{
		// Тип свойства - файл
		case 2:
			{
				$InformationSystemRow = $InformationSystem->GetInformationSystem($information_system_id);

				$param = array();

				$param['tab_id'] = $tab2_id;
				$param['name'] = 'property' . $information_propertys_groups_id;
				$param['caption'] = $row['information_propertys_groups_name'];
				$param['type'] = 9; // Поле загрузки файла.
				$param['value'] = $information_group_name;

				$param['options'] = array();

				// Отображать ли checkbox с подписью "Создать малое изображение из большого" (1 -  отображать (по умолчанию), 0 - не отображать);
				$param['options']['make_small_image_from_big_show'] = 1;

				// Отображать ли поле загрузки малого изображения (1 -  отображать (по умолчанию), 0 - не отображать);
				$param['options']['load_small_image_show'] = 1;

				// Заголовок поля загрузки малого изображения
				$param['options']['load_small_image_caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_property_small_image'];

				// Значение максимальной ширины большого изображения;
				$param['options']['image_big_max_width'] = isset($_POST['big_image_max_width_property' . $information_propertys_groups_id]) ? $_POST['big_image_max_width_property' . $information_propertys_groups_id] : $information_group_big_image_max_width;

				// Значение максимальной высоты большого изображения;
				$param['options']['image_big_max_height'] = isset($_POST['big_image_max_height_property' . $information_propertys_groups_id]) ? $_POST['big_image_max_height_property' . $information_propertys_groups_id] : $information_group_big_image_max_height;

				// Значение максимальной ширины малого изображения;
				$param['options']['image_small_max_width'] = isset($_POST['small_image_max_width_property' . $information_propertys_groups_id]) ? $_POST['small_image_max_width_property' . $information_propertys_groups_id] : $information_group_small_image_max_width;

				// Значение максимальной высоты малого изображения;
				$param['options']['image_small_max_height'] = isset($_POST['small_image_max_height_property'.$information_propertys_groups_id]) ? $_POST['small_image_max_height_property' . $information_propertys_groups_id] : $information_group_small_image_max_height;

				// Отображать ли checkbox с подписью "Наложить водяной знак на большое изображение" (1 -  отображать (по умолчанию), 0 - не отображать);
				$param['options']['used_watermark_big_image_show'] = 1;

				// Значение поля ввода с подписью "По оси X"
				$param['options']['watermark_position_x'] = isset($_POST['image_watermark_position_x_property'.$information_propertys_groups_id]) ? $_POST['image_watermark_position_x_property'.$information_propertys_groups_id] : $information_systems_watermark_default_position_x;

				// Значение поля ввода с подписью "По оси Y"
				$param['options']['watermark_position_y'] = isset($_POST['image_watermark_position_y_property'.$information_propertys_groups_id]) ? $_POST['image_watermark_position_y_property'.$information_propertys_groups_id] : $information_systems_watermark_default_position_y;

				// Отображать ли checkbox с подписью "Наложить водяной знак на малое изображение" (1 -  отображать (по умолчанию), 0 - не отображать);
				$param['options']['used_watermark_small_image_show'] = 1;

				// Редактирование информационной группы
				if ($information_group_id)
				{
					$information_group_big_image_property = $row['information_propertys_groups_value_file'];
					$information_group_small_image_property = $row['information_propertys_groups_value_file_small'];

					if ($information_group_big_image_property != '')
					{
						// Адрес большого загруженного изображения
						$param['options']['big_image_path'] = '/' . UPLOADDIR . 'private/' . urlencode($information_group_big_image_property);

						$param['options']['href_delete_big_image'] = "javascript:void(0)";
						// Значение для onclick
						$param['options']['onclick_delete_big_image'] = "sendRequest('/admin/InformationSystems/InformationSystems.php?group_property_id=$information_propertys_groups_id&delete_information_group_property_big_image={$row['information_propertys_groups_value_id']}', 'get', callback_function_exec_from_return); return false;";
					}
					else
					{
						$param['options']['big_image_path'] = '';
						$param['options']['href_delete_big_image'] = '';
						// Значение для onclick
						$param['options']['onclick_delete_big_image'] = '';
					}

					if ($information_group_small_image_property != '')
					{
						// Адрес малого загруженного изображения
						$param['options']['small_image_path'] = '/' . UPLOADDIR . 'private/' . urlencode($information_group_small_image_property);

						$param['options']['href_delete_small_image'] = "javascript:void(0)";
						// Значение для onclick
						$param['options']['onclick_delete_small_image'] = "sendRequest('/admin/InformationSystems/InformationSystems.php?group_property_id=$information_propertys_groups_id&delete_information_group_property_small_image={$row['information_propertys_groups_value_id']}', 'get', callback_function_exec_from_return); return false;";
					}
					else
					{
						$param['options']['small_image_path'] = '';

						$param['options']['href_delete_small_image'] = '';
						// Значение для onclick
						$param['options']['onclick_delete_small_image'] = '';
					}
				}
				else // Добавление информационной группы
				{
					$information_group_big_image_property = '';
					$information_group_small_image_property ='';
					$param['options']['big_image_path'] = '';
					$param['options']['small_image_path'] = '';
				}

				if (!isset($error_information_group))
				{
					// Вид ображения checkbox'а с подписью "Создать малое изображение из большого" выбранным (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
					$param['options']['make_small_image_from_big_checked'] = $information_group_small_image_property != '' ? 0 :1;

					// Накладываем "водяной знак" на большое изображение по умолчаию
					if (to_int($InformationSystemRow['information_systems_default_used_watermark']) == 1)
					{
						// Вид ображения checkbox'а с подписью "Наложить водяной знак на большое изображение" (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
						$param['options']['used_watermark_big_image_checked'] = 1;
					}
					// Не накладываем "водяной знак" на большое изображение по умолчаию
					else
					{
						// Вид ображения checkbox'а с подписью "Наложить водяной знак на большое изображение" (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
						$param['options']['used_watermark_big_image_checked'] = 0;
					}

					// Накладываем "водяной знак" на малое изображение по умолчаию
					if (to_int($InformationSystemRow['information_systems_default_used_small_watermark']) == 1)
					{
						// Вид ображения checkbox'а с подписью "Наложить водяной знак на малое изображение" (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
						$param['options']['used_watermark_small_image_checked'] = 1;
					}
					else // Не накладываем "водяной знак" на малое изображение по умолчаию
					{
						// Вид ображения checkbox'а с подписью "Наложить водяной знак на малое изображение" (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
						$param['options']['used_watermark_small_image_checked'] = 0;
					}
				}
				else
				{
					// Вид ображения checkbox'а с подписью "Создать малое изображение из большого" выбранным (1 -  отображать выбранным (по умолчанию), 0 - невыбранным);
					$param['options']['make_small_image_from_big_checked'] = isset($_POST['used_big_image_property' . $information_propertys_groups_id]) ? 1 : 0;

					$param['options']['used_watermark_big_image_checked'] = isset($_POST['big_image_is_use_watermark_property' . $information_propertys_groups_id]) ? 1 : 0;

					$param['options']['used_watermark_small_image_checked'] = isset($_POST['small_image_is_use_watermark_property' . $information_propertys_groups_id]) ? 1 : 0;
				}

				$admin_forms_fields->AddField($param);

				break;
			}

		case 3: // Тип свойства - список.
		{
			if (class_exists('lists'))
			{
				$lists = & singleton('lists');

				$param = array();
				$param['tab_id'] = $tab2_id;
				$param['name'] = 'property' . $information_propertys_groups_id;
				$param['caption'] = $row['information_propertys_groups_name'];
				$param['type'] = 2; // Выпадающий список.

				// Возникала ошибка при добавлении/редактировании информационной группы
				// присваиваем веденное ранее значение
				if (isset($_REQUEST['property' . $information_propertys_groups_id]))
				{
					$value = to_int($_REQUEST['property' . $information_propertys_groups_id]);
				}
				else
				{
					// Добавление информационной группы
					if ($information_group_id == 0)
					{
						$value = '';
					}
					else // Редактирование информационной группы
					{
						$value = $row['information_propertys_groups_value_value'];
					}
				}

				$param['value'] = $value;

				$items = array();

				// Идентификатор списка
				$lists_id = $row['information_propertys_groups_lists_id'];

				// Получаем элементы списка, которые используются как значения доп. свойства информационной группы
				$list_resource = $lists->SelectListsItems($lists_id);

				$count_list_items = mysql_num_rows($list_resource);

				$items[0] = '..';

				for ($j = 0; $j < $count_list_items; $j++)
				{
					$row1 = mysql_fetch_assoc($list_resource);

					$items[$row1['lists_items_id']] = htmlspecialchars($row1['lists_items_value']);
				}

				$param['items'] = $items;

				$admin_forms_fields->AddField($param);
			}

			break;
		}

		// Тип свойства - большое текстовое поле
		case 4:
			{
				$param = array();

				$param = array();
				$param['tab_id'] = $tab2_id;
				$param['name'] = 'property' . $information_propertys_groups_id;
				$param['caption'] = $row['information_propertys_groups_name'];
				$param['type'] = 5; // textarea
				$param['attributes'] = array();
				$param['attributes']['rows'] = 10;
				$param['attributes']['style'] = 'width: 100%;';

				// Возникала ошибка при добавлении/редактировании информационной группы
				// присваиваем веденное ранее значение
				if (isset($_REQUEST['property' . $information_propertys_groups_id]))
				{
					$value = to_str($_REQUEST['property' . $information_propertys_groups_id]);
				}
				else
				{
					// Добавление информационной группы
					if ($information_group_id == 0)
					{
						// Присваиваем значение по умолчанию
						$value = $row['information_propertys_groups_default_value'];
					}
					else // Редактирование информационной группы
					{
						// Для дополнительного свойства группы задано значение
						if ($row['information_propertys_groups_value_value'] != '')
						{
							$value = $row['information_propertys_groups_value_value'];
						}
						// Для дополнительного свойства задано не значение - присваиваем значение по умолчанию
						else
						{
							$value = $row['information_propertys_groups_default_value'];
						}
					}
				}

				$param['value'] = $value;

				$admin_forms_fields->AddSeparator($tab2_id);
				$admin_forms_fields->AddField($param);
				break;
			}

			// Тип свойства - визуальный редактор
		case 5:
			{
				// Описание информационной группы.
				$param = array();

				$param = array();
				$param['tab_id'] = $tab2_id;
				$param['name'] = 'property' . $information_propertys_groups_id;
				$param['caption'] = $row['information_propertys_groups_name'];
				$param['type'] = 7; // Визуальный редактор.
				$param['template'] = $template_id;

				// Возникала ошибка при добавлении/редактировании информационной группы
				// присваиваем веденное ранее значение
				if (isset($_REQUEST['property' . $information_propertys_groups_id]))
				{
					$value = to_str($_REQUEST['property' . $information_propertys_groups_id]);
				}
				else
				{
					// Добавление информационной группы
					if ($information_group_id == 0)
					{
						// Присваиваем значение по умолчанию
						$value = $row['information_propertys_groups_default_value'];
					}
					else // Редактирование информационной группы
					{
						// Для дополнительного свойства группы задано значение
						if ($row['information_propertys_groups_value_value'] != '')
						{
							$value = $row['information_propertys_groups_value_value'];
						}
						// Для дополнительного свойства задано не значение - присваиваем значение по умолчанию
						else
						{
							$value = $row['information_propertys_groups_default_value'];
						}
					}
				}

				$param['value'] = $value;

				$admin_forms_fields->AddField($param);

				// Добавляем чекбоксы типографики для СВОЙСТВ.
				if (class_exists("typograph"))
				{
					// Оптическое выравнивание
					$param = array();
					$param['tab_id'] = $tab2_id;
					$param['type'] = 1;
					$param['name'] = 'exec_typograph_for_prop' . $information_propertys_groups_id;
					$param['html_id'] = 'id_exec_typograph_for_prop';
					$param['caption'] = $GLOBALS['MSG_information_systems']['exec_typograph_for_prop'];
					$param['lable'] = $GLOBALS['MSG_information_systems']["yes"];
					$param['div_attributes']['style'] = 'float: left;';
					if (isset($_POST['exec_typograph_for_prop' . $information_propertys_groups_id]))
					{
						$param['value'] = 1;
					}
					else
					{
						$param['value'] = to_int($information_systems_typograph_group);
					}

					$admin_forms_fields->AddField($param);

					// Висячая пунктуация
					$param = array();
					$param['tab_id'] = $tab2_id;
					$param['type'] = 1;
					$param['name'] = 'trailing_punctuation_for_prop' . $information_propertys_groups_id;
					$param['html_id'] = 'id_trailing_punctuation_for_prop';
					$param['caption'] = $GLOBALS['MSG_information_systems']['use_trailing_punctuation_for_prop'];
					$param['lable'] = $GLOBALS['MSG_information_systems']["yes"];
					$param['div_attributes']['style'] = 'float: left;';
					if (isset($_POST['exec_typograph_for_prop' . $information_propertys_groups_id]) && isset($_POST['trailing_punctuation_for_prop' . $information_propertys_groups_id]))
					{
						$param['value'] = 1;
					}
					else
					{
						$param['value'] = to_int($information_systems_typograph_group);
					}
					$admin_forms_fields->AddField($param);

					// Разделитель.
					$admin_forms_fields->AddSeparator($tab2_id);
				}
				break;
			}

		case 6: // Информационная система
		{
			// Список групп
			$param = array();
			$param['tab_id'] = $tab2_id;
			$param['div_id'] = 'list_id';
			$param['name'] = 'information_groups_id' . $information_propertys_groups_id;
			$param['caption'] = $row['information_propertys_groups_name'] . ' - ' . $GLOBALS['MSG_information_systems']['information_system_top_menu_groups'];
			$param['type'] = 2; // Выпадающий список.
			$param['attributes']['onchange'] = "FillDocuments$information_propertys_groups_id(this.selectedIndex)";

			// Возникала ошибка при добавлении/редактировании информационной группы
			// присваиваем веденное ранее значение

			if (isset($_REQUEST['property' . $information_propertys_groups_id]))
			{
				$value = to_int($_REQUEST['property' . $information_propertys_groups_id]);
			}
			else
			{
				// Добавление информационной группы
				if ($information_group_id == 0)
				{
					// Присваиваем значение по умолчанию
					$value = $row['information_propertys_groups_default_value'];
				}
				else // Редактирование информационной группы
				{
					// Для дополнительного свойства группы задано значение - информационный элемент
					if ($row['information_propertys_groups_value_value'] != '')
					{
						$value = $row['information_propertys_groups_value_value'];
					}
					// Для дополнительного свойства задано не значение - присваиваем значение по умолчанию
					else
					{
						$value = 0;
					}
				}
			}

			$information_group_property_id = 0;

			if ($value)
			{
				$row_information_system = $InformationSystem->GetInformationSystemItem($value);
				$information_group_property_id = $row_information_system['information_groups_id'];
			}

			$param['value'] = $information_group_property_id;

			// Выбираем информационную систему, заданную для данного свойства данной информационной системы
			if ($value != 0 && $value != '')
			{
				$row1 = $InformationSystem->GetInformationSystemItem($value);
			}

			$items = array();

			$mas_groups = array();

			// Получаем дерево групп информационной системы, являющейся дополнительным свойством
			$information_system_property_id = $row['information_propertys_groups_information_systems_id'];

			$groups = '0';

			$mas_groups = $InformationSystem->GetGroupsInformationSystem(0, $information_system_property_id, "&nbsp;");

			$mas_groups_count = count($mas_groups);

			$items[0] = '..';

			for ($j = 0; $j < $mas_groups_count; $j++)
			{
				$items[$mas_groups[$j]['information_groups_id']] = $mas_groups[$j]['separator'] . htmlspecialchars($mas_groups[$j]['information_groups_name']);

				$groups .= "," . ($j+1);
			}

			$param['items'] = $items;

			$admin_forms_fields->AddField($param);

			// Список элементов
			$param = array();
			$param['tab_id'] = $tab2_id;
			$param['name'] = 'property' . $information_propertys_groups_id;
			$param['caption'] = $row['information_propertys_groups_name'] . ' - ' . $GLOBALS['MSG_information_systems']['information_system_top_menu_items'];
			$param['type'] = 2; // Выпадающий список.
			$param['value'] = 0;

			$items = array();
			$items[0] = 'None';
			$param['items'] = $items;

			$admin_forms_fields->AddField($param);

			$html .= '<script type="text/javascript">' . "\n" . '
			               var ItemsList' . $information_propertys_groups_id . ' = new Array(' . $groups . ');' . "\n";

			$html .= 'var ItemsListValue' . $information_propertys_groups_id . ' = new Array(' . $groups .');' . "\n";

			// Заполняем для корня
			$items_list = '".."';
			$items_list_value = '"0"';
			$current_items_id = -1;

			// Выводим элементы
			$result1 = $InformationSystem->GetInformationItemsFromGroup(0, $information_system_property_id);

			$count_items = mysql_num_rows($result1);

			$information_propertys_groups_information_systems_id = $value;

			for ($k = 0; $k < $count_items; $k++)
			{
				$row1 = mysql_fetch_assoc($result1);

				if ($information_propertys_groups_information_systems_id == $row1['information_items_id'])
				{

					$current_items_id = $k+1; // +1, т.к. нулевой = "..". Запоминаем текущий порядковый номер элемента
				}

				// Warning: Слэши необходимо добавлять для экранирвоания кавычек в параметрах
				$items_list .= ',"' . addslashes($row1["information_items_name"]) . '"';
				$items_list_value .= ',"' . addslashes($row1["information_items_id"]) . '"';
			}

			// 0 - т.к. заполняем для корня
			$html .= "ItemsList" . $information_propertys_groups_id . "[0]= new Array(" . $items_list . ");\n";

			// 0 - т.к. заполняем для корня
			$html .= "ItemsListValue" . $information_propertys_groups_id . "[0]= new Array(" . $items_list_value . ");\n";

			// Заполняем для групп
			for ($j = 0; $j < $mas_groups_count; $j++)
			{
				// Получаем список информационных элементов, принадлежащих данной информационной группе
				$result1 = $InformationSystem->GetInformationItemsFromGroup($mas_groups[$j]['information_groups_id'], $information_system_property_id);

				$count_items = mysql_num_rows($result1);
				$items_list = '';
				$items_list_value = '';

				for ($k = 0; $k < $count_items; $k++)
				{
					$row1 = mysql_fetch_assoc($result1);

					// Warning: Слэши необходимо добавлять для экранирования кавычек в параметрах
					$items_list .= '"' . addslashes($row1["information_items_name"]) . '"';
					$items_list_value .= '"' . addslashes($row1["information_items_id"]) . '"';

					if ($value == $row1["information_items_id"])
					{
						// Запоминаем текущий порядковый номер элемента
						$current_items_id = $k;
					}

					if ($k < ($DataBase->get_count_row()-1))
					{
						$items_list .= ',';
						$items_list_value .= ',';
					}
				}

				// j+1, т.к. для 0-го заполняется отдельно
				$html.= "ItemsList" . $information_propertys_groups_id . "[" . ($j+1) . "]= new Array(" . $items_list . ");\n";

				// j+1, т.к. для 0-го заполняется отдельно
				$html.= "ItemsListValue" . $information_propertys_groups_id . "[" . ($j+1) . "]= new Array(" . $items_list_value . ");\n";
			}

			$html.='function FillDocuments' . $information_propertys_groups_id . '(index)
						{
							var CurrentOptionList' . $information_propertys_groups_id . ' = ItemsList' . $information_propertys_groups_id . '[index];
							var CurrentOptionListValue' . $information_propertys_groups_id . ' = ItemsListValue' . $information_propertys_groups_id . '[index];
							var CurrentValuesCount' . $information_propertys_groups_id . ' = CurrentOptionList' . $information_propertys_groups_id . '.length;
							var ItemsListItems' . $information_propertys_groups_id.' = document.forms["EditAddInformationGroup"].elements["property'.$information_propertys_groups_id.'"];
						
							ItemsListItems' . $information_propertys_groups_id . '.length = 0;
							for (i = 0; i < CurrentValuesCount' . $information_propertys_groups_id . '; i++)
							{
								if (document.createElement){
									var ItemsOption' . $information_propertys_groups_id . ' = document.createElement("OPTION");
									ItemsOption' . $information_propertys_groups_id . '.text = CurrentOptionList' . $information_propertys_groups_id . '[i];
									ItemsOption' . $information_propertys_groups_id . '.value = CurrentOptionListValue' . $information_propertys_groups_id . '[i];
									(ItemsListItems' . $information_propertys_groups_id . '.options.add) ? ItemsListItems' . $information_propertys_groups_id . '.options.add(ItemsOption' . $information_propertys_groups_id . ') : ItemsListItems' . $information_propertys_groups_id . '.add(ItemsOption' . $information_propertys_groups_id . ', null);
								}
								else
								{
									ItemsListItems'.$information_propertys_groups_id.'.options[i] = new Option(CurrentOptionList'.$information_propertys_groups_id.'[i], CurrentOptionList'.$information_propertys_groups_id.'[i], false, false);
								}
							}
						}';

			// Выбираем тот подсписок, которорый есть для данной директории
			$html.='FillDocuments' . $information_propertys_groups_id . '(document.forms["EditAddInformationGroup"].elements["information_groups_id' . $information_propertys_groups_id . '"].selectedIndex);';

			// Если есть элемент
			if ($current_items_id != -1)
			{
				// Выбираем элемент
				$html .= 'document.forms["EditAddInformationGroup"].elements["property' . $information_propertys_groups_id . '"].options[' . $current_items_id . '].selected=1;';
			}
			$html .= '</script>';

			break;
		}

		case 7: // Флажок
		{
			$param = array();

			$param['tab_id'] = $tab2_id;
			$param['name'] = 'property' . $information_propertys_groups_id;
			$param['caption'] = $row['information_propertys_groups_name'];
			$param['type'] = 1; // Поле ввода.
			$param['html_id'] = 'id_define_checked_value';
			$param['lable'] = $GLOBALS['MSG_information_systems']['yes'];

			// Возникала ошибка при добавлении/редактировании информационной группы
			// присваиваем веденное ранее значение
			if (isset($error_information_group))
			{
				if (isset($_REQUEST['property' . $information_propertys_groups_id]) )
				{
					$value = 1;
				}
				else
				{
					$value = 0;
				}
			}
			else // Первоначальное отображение формы или не было ошибок при добавлении
			{
				// Добавление информационной группы
				if ($information_group_id == 0)
				{
					// Присваиваем значение по умолчанию
					$value = $row['information_propertys_groups_default_value'];
				}
				else // Редактирование информационной группы
				{
					if ($row['information_propertys_groups_value_value'] != '')
					{
						$value = $row['information_propertys_groups_value_value'];
					}
					else
					{
						$value = $row['information_propertys_groups_default_value'];
					}
				}
			}

			$param['value'] = $value;

			$admin_forms_fields->AddField($param);
			break;
		}

		case 8: // Дата
		{
			$param = array();

			$param['tab_id'] = $tab2_id;
			$param['name'] = 'property' . $information_propertys_groups_id;
			$param['caption'] = $row['information_propertys_groups_name'];
			$param['type'] = 10; // Поле ввода.

			// Возникала ошибка при добавлении/редактировании информационной группы
			// присваиваем веденное ранее значение
			if (isset($_REQUEST['property' . $information_propertys_groups_id]))
			{
				$value = to_str($_REQUEST['property' . $information_propertys_groups_id]);
			}
			else
			{
				// Добавление информационной группы
				if ($information_group_id == 0)
				{
					// Присваиваем значение по умолчанию
					$value = $row['information_propertys_groups_default_value'];
				}
				else // Редактирование информационной группы
				{
					// Для дополнительного свойства задано значение
					if ($row['information_propertys_groups_value_value'] != '')
					{
						$value = $row['information_propertys_groups_value_value'];
					}
					// Для дополнительного свойства задано не значение - присваиваем значение по умолчанию
					else
					{
						$value = $row['information_propertys_groups_default_value'];
					}
				}
			}

			$param['value'] = $value;
			$param['attributes'] = array();
			$param['attributes']['size'] = 22;

			$admin_forms_fields->AddField($param);

			break;
		}
		case 9: // Дата-время
		{
			$param = array();

			$param['tab_id'] = $tab2_id;
			$param['name'] = 'property' . $information_propertys_groups_id;
			$param['caption'] = $row['information_propertys_groups_name'];
			$param['type'] = 11; // Поле ввода.

			// Возникала ошибка при добавлении/редактировании информационной группы
			// присваиваем веденное ранее значение
			if (isset($_REQUEST['property' . $information_propertys_groups_id]))
			{
				$value = to_str($_REQUEST['property' . $information_propertys_groups_id]);
			}
			else
			{
				// Добавление информационной группы
				if ($information_group_id == 0)
				{
					// Присваиваем значение по умолчанию
					$value = $row['information_propertys_groups_default_value'];
				}
				else // Редактирование информационной группы
				{
					// Для дополнительного свойства задано значение
					if ($row['information_propertys_groups_value_value'] != '')
					{
						$value = $row['information_propertys_groups_value_value'];
					}
					// Для дополнительного свойства задано не значение - присваиваем значение по умолчанию
					else
					{
						$value = $row['information_propertys_groups_default_value'];
					}
				}
			}

			$param['value'] = $value;
			$param['attributes'] = array();
			$param['attributes']['size'] = 22;

			$admin_forms_fields->AddField($param);
			break;
		}
		default:
			{
				$param = array();

				$param['tab_id'] = $tab2_id;
				$param['name'] = 'property' . $information_propertys_groups_id;
				$param['caption'] = $row['information_propertys_groups_name'];
				$param['type'] = 0; // Поле ввода.

				// Возникала ошибка при добавлении/редактировании информационной группы
				// присваиваем веденное ранее значение
				if (isset($_REQUEST['property' . $information_propertys_groups_id]))
				{
					$value = to_str($_REQUEST['property' . $information_propertys_groups_id]);
				}
				else
				{
					// Добавление информационной группы
					if ($information_group_id == 0)
					{
						// Присваиваем значение по умолчанию
						$value = $row['information_propertys_groups_default_value'];
					}
					else // Редактирование информационной группы
					{
						// Для дополнительного свойства задано значение
						if ($row['information_propertys_groups_value_value'] != '')
						{
							$value = $row['information_propertys_groups_value_value'];
						}
						// Для дополнительного свойства задано не значение - присваиваем значение по умолчанию
						else
						{
							$value = $row['information_propertys_groups_default_value'];
						}
					}
				}

				$param['value'] = $value;

				$admin_forms_fields->AddField($param);
			}
	}
}

$admin_forms_fields->SetExternalHtml($html);

// Модуль "Блоги" загружен
if (class_exists('Blog'))
{	
	// Определяем связан ли с информационной системой, к которой принадлежит группа, хотя бы один блог
	$Blog = & singleton('Blog');

	$blog_row = $Blog->GetBlogAssociatedInformationSystem($information_system_id);
		
	if ($blog_row)
	{
		// Блоги
		$tab_id = $admin_forms_fields->AddTab($GLOBALS['MSG_information_systems']['information_items_form_tab_5']);

		// Тип блога - личный или принадлежит сообществу
		$param = array();
		$param['tab_id'] = $tab_id;
		$param['name'] = 'information_group_blog_type';
		$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_blog_type'];
		$param['type'] = 2; // Выпадающий список.
		$param['value'] = $information_group_blog_type;

		$items = array($GLOBALS['MSG_information_systems']['information_groups_add_form_blog_type_privat'], $GLOBALS['MSG_information_systems']['information_groups_add_form_blog_type_community']);

		$param['items'] = $items;

		$admin_forms_fields->AddField($param);

		// Значение по умолчанию свойства "Доступность" информационных элементов группы
		$param = array();
		$param['tab_id'] = $tab_id;
		$param['name'] = 'information_group_blog_item_default_accessibility';
		$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_blog_accessibility'];
		$param['type'] = 2; // Выпадающий список.
		$param['value'] = $information_group_blog_item_default_accessibility;

		$items = array();
		$items[0] = $GLOBALS['MSG_information_systems']['information_groups_add_form_blog_all'];
		$items[1] = $GLOBALS['MSG_information_systems']['information_groups_add_form_blog_friends'];
		$items[2] = $GLOBALS['MSG_information_systems']['information_groups_add_form_blog_privat'];

		$param['items'] = $items;

		$admin_forms_fields->AddField($param);

		// Значение по умолчанию свойства "Показывать комментарии" информационных элементов группы
		$param = array();
		$param['tab_id'] = $tab_id;
		$param['name'] = 'information_group_blog_item_default_show_comments_mode';
		$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_blog_show_comments_mode'];
		$param['type'] = 2; // Выпадающий список.
		$param['value'] = $information_group_blog_item_default_show_comments_mode;

		//$items = array('Всем', 'Друзьям', 'Лично');
		$param['items'] = $items;

		$admin_forms_fields->AddField($param);

		// Режим добавления комментариев
		$param = array();
		$param['tab_id'] = $tab_id;
		$param['name'] = 'information_group_blog_item_default_add_comments_mode';
		$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_blog_add_comments_mode'];
		$param['type'] = 2; // Выпадающий список.
		$param['value'] = $information_group_blog_item_default_add_comments_mode;

		//$items = array('Всем', 'Друзьям', 'Лично');
		$param['items'] = $items;

		$admin_forms_fields->AddField($param);
	}
}

// Кнопка "Сохранить".
$param = array();
$param['name'] = 'save_information_group';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_save_form_button_name'];
$param['image'] = '/admin/images/add.gif';
$param['attributes']['onclick'] = "return doSendForm('{$admin_forms_fields->AAction}', '{$admin_forms_fields->AAdditionalParams}', this, ".to_int($_REQUEST['admin_forms_id']).", 'load_data', " . to_int($admin_forms_fields->form_params['current_page']) . ", " . to_int($admin_forms_fields->form_params['on_page']) . " )";
$param['attributes']['type'] = 'button';
$admin_forms_fields->AddButton($param);

// Кнопка "Применить".
$param = array();
$param['name'] = 'add_information_group';
$param['caption'] = $GLOBALS['MSG_information_systems']['information_groups_add_form_button_name'];
$param['image'] = '/admin/images/add.gif';
$param['attributes']['onclick'] = "return doSendForm('{$admin_forms_fields->AAction}', '{$admin_forms_fields->AAdditionalParams}', this, ".to_int($_REQUEST['admin_forms_id']).", 'load_data', " . to_int($admin_forms_fields->form_params['current_page']) . ", " . to_int($admin_forms_fields->form_params['on_page']) . " )";
$param['attributes']['type'] = 'submit';
$admin_forms_fields->AddButton($param);

// Отображение формы.
$admin_forms_fields->ShowForm();
?>
 