Firms = {
	initAdd : function() {
		
		$('input,textarea').each(
			function() {
				this.onfocus = function(){Firms.onFocusAdd(this);}
			}
		);		
	},
	
	onFocusAdd : function(item) {
		
		if ( _(item.name+'_help') ) $('#'+item.name+'_help').fadeIn('fast');
		if ( item.name == 'address' ){
			$('#address_help').css('margin-top',function(){return -($(this).height()+45)+'px';});
		}
		if (_(item.name+'_counterDiv'))_(item.name+'_counterDiv').style.display='block';
		item.onblur = function(){if (_(item.name+'_help'))$('#'+item.name+'_help').fadeOut('fast');if (_(item.name+'_counterDiv'))_(item.name+'_counterDiv').style.display='none';}
	},
	
	requestAccess : function() {
		//$(this.target).attr('disabled','true');
		
		this.parent = $(this.target).parent();
		//$('input[type=button]',this.parent ).attr('disabled', 'true');
		this.image	= $(this.target).next().children();
		var params 	= new Array();
		
		this.image.show();
		
		switch( ( iVar = parseInt( this.parent.attr('id').substr(-1,1) ) ) ) {
			case 1:				
				$('input.chk:checked').each(function(){params.push($(this).val());});
				break;
			case 2:
				params = [$('#access2 input[type=radio]:checked').val()];
				break;
			case 3:
				params 	= [$('#access3 input[type=text]:first').val(),$('#access3 input[type=text]:last').val()];
				break;
		}
		this.oReq = new HttpReq('firms');
		this.oReq.setBack( {'true':'Firms._requestAccess_After(1);','false':'Firms._requestAccess_After(0);'} );
		this.oReq.send( {a:'getAccess',variant:iVar,p:params,id:$('#__id').val()} );
	},
	
	_requestAccess_After : function( r ) {
		this.image.hide();
		if ( !r ) {
			//$('input[type=button]',this.parent ).attr('disabled', 'false');
		}
		
		$('div.result',this.parent).html(this.oReq.retParams.msg);
	},
	
	checkDomainExisits : function( oInp ) {
		var sDomain = oInp.value;
		_d = sDomain.replace('http://','').replace('www.','');
		if ( typeof ___aDomainsNotExists!=='undefined' && typeof ___aDomainsNotExists[_d]!='undefined' ) {
			if ( ___aDomainsNotExists[_d] ) {
				this.oReq.retParams.data = ___aDomainsNotExists[_d] ;
				return Firms._checkDomainExisits_After(1,_d);
			}
			return Firms._checkDomainExisits_After(0,_d);;
		}
		if ( _d == oInp.defaultValue.replace('http://','').replace('www.','') ) return false;
		
		this.oReq = new HttpReq('firms');
		this.oReq.setBack({'true':'Firms._checkDomainExisits_After(1,"'+_d+'")','false':"Firms._checkDomainExisits_After(0,'"+_d+"');"});
		this.oReq.send({a:'checkDomain',d:sDomain});
	},
	
	_checkDomainExisits_After : function(res, sDomain) {
		if ( typeof ___aDomainsNotExists =='undefined') ___aDomainsNotExists = new Array();
		if ( res ) {
			var aFirms = this.oReq.retParams['data'];		
			if (!aFirms.length)return;
			var str = 'Фирма с интернет адресом '+sDomain+' уже есть в базе ' + (aFirms.length==1? ' в городе ' + aFirms[0]['name_ru'] + '. <a href="/firms/'+aFirms[0]['translit']+'/'+aFirms[0]['domain']+'.htm" target="_blank">Посмотреть</a>' :' в следующих городах: ');
			if ( aFirms.length > 1 ) {			
				for ( var i=0; i < aFirms.length; i++ ) {
					str+='<br />'+aFirms[i]['name_ru'] + ', <a href="/firms/'+aFirms[0]['translit']+'/'+aFirms[0]['domain']+'.htm" target="_blank">Посмотреть</a>';
				}
			}
			$('#domain_exists').html(str).parent().fadeIn('fast');
			$('#firm_domain').addClass('errField');
			___aDomainsNotExists[sDomain] = aFirms;
		} else {
			$('#domain_exists').html('').parent().hide();
			$('#firm_domain').removeClass('errField');			
			___aDomainsNotExists[sDomain] = 0;
		}
	}
}


function startLetterSearch( item ) {
	window.location.href = '/firms/'+'moscow'+'/kl/q.htm?keyword='+_( parseInt(item.id)+'lsv').innerHTML+(location.href.indexOf('by=abc')!=-1?'&by=abc':'');
}



(
function($) {
	
	$.currentFirmPage = null;
	
	$.fn.toggleInfo = function( btn, callback ) {
		this.closeCurrentFirmPage();
		
		if ( !btn ) btn = this.attr('btn');
		//alert(btn)
		if ( this.is(':hidden') ) {
			$('#'+btn).addClass('isSelectedB');
			$('#firm_face').fadeTo('normal',0.4,callback);
			this.show('normal' );
			$.currentFirmPage = this[0];
		} else {
			$('#'+btn).removeClass('isSelectedB');
			$('#firm_face').fadeTo('normal',1, callback);
			if ( this[0].id != 'firm_face' ) {
				this.hide('normal');
			}
		}
		
		return this;
	}
	
	
	$.fn.closeCurrentFirmPage = function() {
		//if ( !$.currentFirmPage ) return;
		//$( $.currentFirmPage ).hide('normal');
		$( '.hidepage' ).hide('normal');
		$( '#firmServices a' ).removeClass('isSelectedB');
	}
}
)(jQuery)


$(
function() {
	//$('#ownerBtn').click( function( event ){$('#info2owner' ).toggleInfo();});
	//$('#accessBtn').click(function( event ){$('#info2access').toggleInfo();});
	//$('#goldBtn').click(function( event ){$('#info2gold').toggleInfo();});
	$('#altMailBtn').click(
		function(){
		//	$('#firm_face').toggleInfo( 'altMailBtn', function(){$('a[name=wet]').trigger('click'); } );
			$('#altMailBtn').toggleClass('isSelectedB');
		}
	);
	//$('#firm_face').click(function(){$(this).toggleInfo();});
	$('#linkSamples tr').mouseover(function(){$(this).css('background-color','#efefef')});
	$('#linkSamples tr').mouseout(function(){$(this).css('background-color','#ffffff')});
	
	if ( location.href.indexOf('?owner') != -1 ||
		 location.href.indexOf('?access') != -1 
		) {
		//$('#firm_face').fadeTo('normal',0.4);
	}
	
	//--------------
	$( 'p strong[id^=accessBtn]' ).each(
		function() {
			if ( $( '#'+this.id+' + span.reason' ).size() ) {
				$(this).parent().addClass('cursor').click(function(){$('#'+$(this).children()[0].id.substr(-1,1)+'accessArea').toggle('fast');});
			}
		}
	);
	$('.noActive input').attr('disabled','true');
	//--------------
	
	
	$('.sendAccess').attr('value','Отправить').attr('disabled',false).click(
		function() {
			Firms.target=this;
			Firms.requestAccess();
		}
	);
}
);
