<?php 
/**
 * Система управления сайтом HostCMS v. 5.xx
 * Copyright © 2005-2010 ООО "Хостмэйк" (Hostmake LLC), http://www.hostcms.ru
 *
 * Форма добаления/редактирования раздела интернет-магазинов
 * 
 * Файл: /admin/shop/action/form_edit_add_shop_dir.php
 * 
 * @author Hostmake LLC
 * @version 5.x
 */
$form_params = array();
$form_params['title'] = $shop_dir_id == 0
? $GLOBALS['MSG_shops']['shop_dir_add_form_title']
: $GLOBALS['MSG_shops']['shop_dir_edit_form_title'];

$form_params['form_attribs']['method'] = 'post';
$form_params['form_attribs']['action'] = '/admin/shop/shop.php';
$form_params['form_attribs']['name'] = 'EditAddShopsDir';

$admin_forms_fields = new admin_forms_fields();

$shop = & singleton('shop');

$current_dir_id = to_int($_REQUEST['shop_dir_parent_id']);

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

$new_path_array[] = array(
		'link' => $admin_forms_fields->GetHtmlCallDoLoadAjax('/admin/shop/shop.php', '&shop_dir_parent_id=0', 54, 'load_data'),
		'onclick' => $admin_forms_fields->GetOnClickCallDoLoadAjax('/admin/shop/shop.php', '&shop_dir_parent_id=0', 54, 'load_data'),
		'name' => $GLOBALS['MSG_shops']['header_admin__list_forms']);

// Строим "хлебные крошки"
$path_array = $shop->GetShopsDirPathArray($current_dir_id);

// Меняем порядок следования элементов в массиве на обратный
$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/shop/shop.php', "&shop_dir_parent_id={$key}", 54, 'load_data'),
		'onclick' => $admin_forms_fields->GetOnClickCallDoLoadAjax('/admin/shop/shop.php', "&shop_dir_parent_id={$key}", 54, 'load_data'),
		'name' => $value['shop_dir_name']);
	}
}

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

$admin_forms_fields->admin_forms_fields($form_params);

$DataBase = & singleton('DataBase');

$current_dir_id = to_int($_REQUEST['shop_dir_parent_id']);

// Редактирование раздела интернет-магазинов
if ($shop_dir_id)
{	
	// Получаем данные о разделе магазинов
	$shop_dir_row = $shop->GetShopsDir($shop_dir_id);

	$shop_dir_name = $shop_dir_row['shop_dir_name'];
	$shop_dir_description = $shop_dir_row['shop_dir_description'];	
	$shop_dir_parent_id = $shop_dir_row['shop_dir_parent_id'];	
			
}
// Добавления информационной системы
else
{	
	$shop_dir_name = '';
	$shop_dir_description = '';	
	$shop_dir_parent_id = $current_dir_id;
}

// Параметры.
$tab_id = $admin_forms_fields->AddTab($GLOBALS['MSG_shops']['tab']);

// Название раздела магазинов
$param = array();
$param['tab_id'] = $tab_id;
$param['name'] = 'shop_dir_name';
$param['caption'] = $GLOBALS['MSG_shops']['shop_dir_add_form_name'];
$param['type'] = 0; // Поле ввода.
$param['attributes']['class'] = 'large';
$param['value'] = to_str($shop_dir_name);
$param['format']['minlen']['value'] = 1;
$param['format']['maxlen']['value'] = 255;
$admin_forms_fields->AddField($param);

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

// Описание информационной системы.
$param = array();

$param['tab_id'] = $tab_id;
$param['name'] = 'shop_dir_description';
$param['caption'] = $GLOBALS['MSG_shops']['shop_dir_add_form_description'];

$param['type'] = 5; // textarea
$param['attributes'] = array ();
$param['attributes']['rows'] = 7;
$param['attributes']['style'] = 'width: 100%;';
$param['value'] = to_str($shop_dir_description);

$admin_forms_fields->AddField($param);

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

// Список разделов интернет-магазинов
$param = array ();
$param['tab_id'] = $tab_id;
$param['name'] = 'current_shop_dir_id';
$param['caption'] = $GLOBALS['MSG_shops']['shop_dir_add_form_group'];
$param['type'] = 2; // Выпадающий список.
$param['value'] = $current_dir_id;

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

$param_dirs = array();
$param_dirs['shop_dir_parent_id'] = 0;
$param_dirs['site_id'] = CURRENT_SITE;

// Исключаем из списка разделов текущий раздел и его подразделы
if ($shop_dir_id)
{
	$param_dirs['shop_dir_id'] = $shop_dir_id;
}

$mas = $shop->GetShopsDirs($param_dirs);

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

for ($i = 0; $i < $count_dirs; $i++)
{
    $items[$mas[$i]['shop_dir_id']] = $mas[$i]['separator'].$mas[$i]['shop_dir_name'];
}

$param['items'] = $items;

$param['div_attributes']['style'] = '';
$param['attributes']['style'] = 'width: 320px; float: left;';
$param['apply_filter'] = true;

$admin_forms_fields->AddField($param);

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

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


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

// Кнопка "Сохранить".
$param = array();
$param['name'] = 'save_shop_dir';
$param['caption'] = $GLOBALS['MSG_shops']['save'];
$param['image'] = '/admin/images/add.gif';
$param['attributes']['onclick'] = "return SendForm('{$admin_forms_fields->GetWindowId()}', '{$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_shop_dir';
$param['caption'] = $GLOBALS['MSG_shops']['apply'];
$param['image'] = '/admin/images/add.gif';
$param['attributes']['onclick'] = "return SendForm('{$admin_forms_fields->GetWindowId()}', '{$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();
?>