var goMovie = null;
$(document).ready(function(){
	
	$('#flash').css('display','block');
	
	goMovie = getMovie();
	$(document).pngFix();	
	$('li[class="unsel"] ul').css('display','none');
	$("#link_shop").click(function() {
    	$("#popup").show();
	 	$(document.body).click(function() { 	
									$("#popup").hide(); 	
									});
	  	return false;
	});
	
	var lpflag = false;
	var lnCounter = 0; 
	$('.DinamicSnippet div').each(function(){
		if(lpflag){
			$(this).css('display','none');
			$(this).css('opacity','0');
		}else{
			$(this).addClass('SelectedSnipp');
			lpflag = true;
		}
		lnCounter ++;
	})
	
	if(lnCounter<=1){
		$('#NextDiv').css('display','none');
	}
 	$('#NextDiv').click(function(){
 		var loCurDiv = $('.DinamicSnippet div[class="SelectedSnipp"]');
 		var loNewDiv = $(loCurDiv).next()
 		if(typeof($(loNewDiv).attr('id')) == 'undefined'){
 			loNewDiv = $('div:first',(loCurDiv).parent()); 
 		}
 		SetDiv(loCurDiv,loNewDiv);
 		return false;
 	})
	
	if ($('#flash').get(0) != undefined) FlashActionOnLoad();
	
});

function FlashActionOnLoad(){
	if(typeof(goMovie.SelectCurShopFromJS) != 'undefined'){
		if(typeof(gnVid) != 'undefined' && gnVid >= 0){
			var lnId = GetIdFromDb(gnVid,'GetVKls');
			if(lnId.length > 0){
				OpenDefoultFirstLevel(lnId);
			}	
		}
		if(typeof(gnScriptLink) != 'undefined' && gnScriptLink >= 0){
			var lnId = $("a:first",$('#ScriptLink_'+gnScriptLink).parent().parent().parent()).attr('id');
			if(lnId.length>0){
				OpenDefoultFirstLevel(lnId);	
			}
			var lsIds = GetIdFromDb(gnScriptLink,'id');
			goMovie.SelectCurShopFromJS(lsIds);
		}	
	}else{
		setTimeout('FlashActionOnLoad();',200);
	}
}
function OpenDefoultFirstLevel(lpId){
	var lsIds = GetIdFromDb(lpId,'vid');
	if(lsIds.length > 0){
		goMovie.SelectShopsFromJS(lsIds);	
	}
}

function OpenCloseSublevel(lpObj){
	var loLi = $(lpObj).parent();
	var loUl = $('ul',$(loLi));
	if($(loLi).hasClass('sel')){
		$(loUl).slideToggle('normal',function(){$(loLi).removeClass('sel');});
	}else{
		$(loLi).addClass('sel');
		$(loUl).slideToggle();
	}
}

function OpenCloseSublevelFlash(lpObj,lpId){
	
	var loLi = $(lpObj).parent();
	var loUl = $('ul',$(loLi));
	var lsIds = GetIdFromDb(lpId,'vid');
	var lsIdsDop = false;
	$(lpObj).parent().removeClass('unsel');
	
	if(lsIds.length > 0){
		var laNewArr = new Array();
		var laNewArrSel = new Array();
		var $loLiSel = null;
		var lnCount = 0;
		for(i in laSpl = lsIds.split('*|*')){
			$loLiSel = $('li [name="li_'+laSpl[i]+'"]');
			lnCount = 0;
			if($loLiSel.length > 1){
				if ($(loLi).hasClass('sel')) {
					$loLiSel.each(function(){
						if ($(this).parent().parent().hasClass('sel')) {
							lnCount++;
						}
					})
					if (lnCount <= 1) {
						laNewArr.push(laSpl[i]);
					}
					else {
						if ($('li.sel', loUl).length > 0) {
							laNewArrSel.push(laSpl[i]);
						}
					}
				}else{
					if($('li.sel [name="li_'+laSpl[i]+'"]').length < 1){
						laNewArr.push(laSpl[i]);
					}
				}
			}else{
				laNewArr.push(laSpl[i]);
			}
		}
		lsIds = laNewArr.join('*|*');	
		lsIdsDop = laNewArrSel.join('*|*');	
		
	}
	$('li.unsel',loUl).removeClass('sel');
	if($(loLi).hasClass('sel')){
		$(loUl).slideToggle('normal',function(){
			
			$loAinLi = $('li.sel[id*="li_"]');
			
			$('li.sel',loUl).removeClass('sel');
			
			
			
			$(loLi).removeClass('sel');
			if($loAinLi.length>0){
				if($('li.sel[id*="li_"]').length == 0 && !$('#Reloaded').hasClass('main')){
					goMovie.UnSelectShopsFromJS($loAinLi.attr('id').replace(/li_/gi,'')+'*|*');
					goMovie.SelectShopsFromJS($loAinLi.attr('id').replace(/li_/gi,'')+'*|*');
					GetMainContent();
				}	
			}
			if(lsIdsDop){
				goMovie.SelectShopsFromJS(lsIdsDop);	
			}
			goMovie.UnSelectShopsFromJS(lsIds);
		});
	}else{
		lnCurLiSelId = $('li.sel[name*="li_"] a');
		$(loLi).addClass('sel');
		$(loUl).slideToggle(function(){
			goMovie.SelectShopsFromJS(lsIds);
			if(lnCurLiSelId.length > 0){
				lnCurLiSelId = lnCurLiSelId.attr('id').replace(/ScriptLink_/gi,'')
				goMovie.SelectCurShopFromJS(GetIdFromDb(lnCurLiSelId,'id'));
			}
		});
	}
}

function GetMainContent(){
	$.ajax({ 
		type: "POST", 
		url: "ajax/GetBlock.php", 
		async: false, 
		success: function(msg){ 
			if(msg){
				$('#Reloaded').addClass('main');
				$('#Reloaded').html(msg);
			}
		} 
	});
}

function SetDiv(loCurDiv,loNewDiv){
	loCurDiv.removeClass('SelectedSnipp');
	loNewDiv.addClass('SelectedSnipp');
	$(loCurDiv).fadeTo('slow',0);
	$(loCurDiv).css('display','none');
	$(loNewDiv).css('display','');
	$(loNewDiv).fadeTo('slow',1);
	
}

function GetBlock(loObj,lnId){
	if($('#block_'+lnId).attr('id') == 'block_'+lnId){
		ShowBlock('block_'+lnId);
	}else{
		var lsHref = $(loObj).attr('href');
		if(lsHref.length>0){
			UppendBlock(lsHref,lnId);
		}
	}
}

function ShowBlock(lnId){
	var loCurBlock = $('#'+lnId);
	var loSelectedBlock = $('.SelectedBlock');
	if($(loSelectedBlock).attr('id') != $(loCurBlock).attr('id')){
		Close($(loSelectedBlock));
		$(loCurBlock).addClass('SelectedBlock');
		$(loCurBlock).fadeIn();
	}	
}

function Close(loObj){
	if($(loObj).hasClass('SelectedBlock')){
		$(loObj).removeClass('SelectedBlock');
		$(loObj).hide()
		// $(loObj).fadeTo('slow',0); 
	}
}

function UppendBlock(lsHref,lnId){
	$.ajax({ 
		type: "POST", 
		url: "ajax/GetBlock.php", 
		data: "urlpage="+lsHref+"&id="+lnId,
		async: false, 
		success: function(msg){ 
			if(msg){
				$('div.fix').parent().append(msg);
				$('#block_'+lnId).css('left',Math.round($('#text_top').parent().attr('clientWidth')/2) - Math.round($('#block_'+lnId).css('width').replace(/px/gi,'')/2));
				ShowBlock('block_'+lnId);
			}
		} 
	});
}

function GetIdFromDb(lpId,lpType){
	var lsIds = '';
	$.ajax({ 
		type: "POST", 
		url: "ajax/GetUrl.php", 
		data: "&"+lpType+"="+lpId,
		async: false, 
		success: function(msg){ 
			if(msg){
				lsIds = msg;
			}
		} 
	});
	return lsIds;
}
/*
 * Функция берет перечень идентификаторов торговых точек  входящих в верхние разделы классификаторов
 * @param {Numeric} lpId - идентификатор верхнего раздела классификатора
 */
function GetDataFrDbFlV(lpId,loObj){
	var lsIds = GetIdFromDb(lpId,'vid');
	if(!$(loObj).parent().hasClass('sel')){
		goMovie.UnSelectShopsFromJS(lsIds);
	}else{
		
		goMovie.SelectShopsFromJS(lsIds);	
	}
}
/*
 * 
 * @param {Object} lpId
 */
function SelectCurShopFromJS(lpId,lpObj){
	lpId += '';
	/*
	 * Если из флэша
	 */
	if(lpId.search(/\*/gi) != -1){
		var $CurSel = $('#li_'+lpId.replace('*',''));
		if($CurSel.length > 0 && !$CurSel.hasClass('sel')){
			var $laSelLi = $('li.sel[id*="li_"]');
			if($laSelLi.length > 0){
				$laSelLi.removeClass('sel');
			}
			SetClassCell($('a',$CurSel));
			if($CurSel.parent().css('display') == 'none'){
				var $loA = $('a:first',$CurSel.parents('li:first'));
				OpenCloseSublevel($loA);
				var lsIds = GetIdFromDb($loA.attr('id'),'vid');
				goMovie.SelectShopsFromJS(lsIds);
			}
		}
	}else{
		/*
		 * Если не из флэша
		 */
		SetClassCell(lpObj)
	}
	var lsIds = GetIdFromDb(lpId,'id');
	$lsHtml = GetIdFromDb(lpId,'LpGetHtml=1&id');
	$('#Reloaded').removeClass('main');
	$('#Reloaded').html($lsHtml);
	goMovie.SelectCurShopFromJS(lsIds);
}

function SetClassCell(lpObj){
	$('li.sel[id*="li_"]').removeClass('sel');
	$(lpObj).parent().addClass('sel'); 
}

function getMovie() {
	var M$ =  navigator.appName.indexOf("Microsoft")!=-1;
	return (M$ ? window : document)["shops"];
}

function shops_DoFSCommand(command, args) {
        window[command].call(null, args)
}
	 
if (navigator.appName && navigator.appName.indexOf("Microsoft") != -1 &&
	navigator.userAgent.indexOf("Windows") != -1) {
    document.write('<script language=\"VBScript\"\>\n');
    document.write('On Error Resume Next\n');
    document.write('Sub shops_FSCommand(ByVal command, ByVal args)\n');
    document.write('Call shops_DoFSCommand(command, args)\n');
    document.write('End Sub\n');
    document.write('</script\>\n');
}
