/**
 * Каталог туров
 * Просмотр и выдор тура
 *
 * @author Kulikov D. A.
 * @version 2.1
 */
var Catalog = {

	timeout: false,
	loading: false,

	OnLoad_Action: function()
	{
		$$('#Tour_Catalog a.m_link').each(function(element){
			element.onclick = function(){
				Catalog.timeout = false;
				Catalog.hideAll(function(){Catalog.showBlock(element);}, element.hasClassName('m_active'));
				if (Catalog.timeout) return false;
				Catalog.showBlock(element);
				return false;
			}
		});

		$$('#Tour_Catalog .catalog_menu a').each(function(element){
			element.onclick = function(){
				Catalog.loadTours(element);
				return false;
			}
		});
	},

	loadTours: function(element)
	{
		if (Catalog.loading == true) return; Catalog.loading = true;
		var menu_block = element.up('div');
		$A(menu_block.getElementsByTagName('a')).invoke('removeClassName', 'active');
		element.addClassName('active');

		var block = menu_block.next('.tour_list');
		block.innerHTML = '<img src="/_public/images/ajax-loader.gif" align="absmiddle"> загрузка данных...';
		fx.hidden(element.up(), 0.6);

		JsHttpRequest.query(
			Config.catalog_backend,
			{ 'action': 'getTourList', 'parent_id': element.id, 'isPresent': element.hasClassName('isPresent') ? 2 : 0, 'subAgencyDomain': $F('subAgencyDomain') },
			function(result, text) {
				Catalog.loading = false; fx.hidden(element.up(), 1);
				block.innerHTML = text;
				Catalog.observSelectTour();
			}
		);
	},

	observSelectTour: function()
	{
		$$('#Tour_Catalog .tour_list tr').each(function(element){
			element.onmouseover = function(){
				element.addClassName('active');
			}
			element.onmouseout = function(){
				element.removeClassName('active');
			}
		});
	},


	hideAll: function(onComplite, onlyClose)
	{
		$$('#Tour_Catalog a.m_link').each(function(element){
			var block = $('c_' + element.id);
			if (block && block.visible()) {
				Catalog.timeout = true;
				fx.open(block, false, 1, function(){
					block.hide();
					element.removeClassName('m_active');
					if(!onlyClose) onComplite();
				});
			}
		});
	},

	showBlock: function(element)
	{
		element.addClassName('m_active');
		if ($('c_' + element.id)) {
			var block = $('c_' + element.id);
			block.show();
			fx.open(block, 1, false, function(){
				block.style.height = '100%';
				if (block.down('div.tour_list').innerHTML == '') {
					Catalog.loadTours(block.down('a'));
				}
			});
		}
	},
	
	changeOrderManager: function(elem, order, managerId){
	    if(!order) alert('Не указан номер заказа!');
	    if(!managerId) alert('Не указан идентификатор менеджера!');
		JsHttpRequest.query(
			'/ajax/detail',
			{ 'action': 'changeOrderManager', 'order' : order, 'managerId' : managerId },
			function(result, text) {
			    if (!result && !text) {
					$(elem).up().innerHTML = $(elem).previous().options[$(elem).previous().selectedIndex].text; 
			    }else{
			        alert(text);
			    }
			},
			false
		);	    
	}
}