
//======================================================================================================================================
/*
	Плагин EvoBox v1.1

*/
//======================================================================================================================================

jQuery.fn.evobox = function(o){
	var o = jQuery.extend({
		 'before': '<table><tr>',
		 'after': '</tr></table>',
		 'l_button': '<td><input type="button" class="evobox_l" value="<"></td><td>',
		 'r_button': '</td><td><input type="button" class="evobox_r" value=">"></td>',
		 'fadeIn':340,
		 'fadeOut':340,
		 'popup':true,
		 'galery':true,
		 'number':-3,
		 'onloadevent':"",
		 'loader':'<img src="http://evo-tech.ru/libs/loader.gif" id="evobox_loader">',
		 'evo_fancy':'.evo_fancy'
	},o);
	return this.each(function(i)
	{

		jQuery(this).click(function(i)
		{
			o.prev = jQuery(this).prev();
			o.next = jQuery(this).next();
			$(o.evo_fancy).html('');
			jQuery('#evobox_loader').css('display','');
			is_div = false;
			show_but = function()
			{
				jQuery('.evobox_l,.evobox_r').css('display','');
				jQuery('#evobox_loader').css('display','none');
			}
			if(o.prev.attr('href')!==undefined)o.e_galery_left = o.l_button;else o.e_galery_left = '';
			if(o.next.attr('href')!==undefined)o.e_galery_right = o.r_button;else o.e_galery_right='';
			if(this.href.match('#')){is_div=true;e_center_block = jQuery(this.href.replace(window.location.href.replace(window.location.hash,''),'')).html();}else e_center_block =	'<img style="display:none" id="evobox_image" src="'+this.href+'" onload="this.style.display=\'\';centrize();show_but();">';
			jQuery(o.evo_fancy).html(o.before+o.e_galery_left+o.loader+e_center_block+o.e_galery_right+o.after);
			jQuery('.evobox_l').click(function(){jQuery(o.evo_fancy).fadeOut(o.fadeOut,function(){$(o.prev).trigger('click');})});
			jQuery('.evobox_r').click(function(){jQuery(o.evo_fancy).fadeOut(o.fadeOut,function(){$(o.next).trigger('click');})});
			jQuery('.evobox_l,.evobox_r').css('display','none');
			centrize = function ()
				{
					if(o.popup)
					{
						jQuery('.evo_fon').css('display','block');
						jQuery(o.evo_fancy).css('top',($(window).scrollTop()+((jQuery(window).height()/2)))- (jQuery(o.evo_fancy).height()/2));
						jQuery(o.evo_fancy).css('left',($(window).width()/2)- (jQuery(o.evo_fancy).width()/2));
					}
				};
			if(is_div)show_but();
			centrize();
			jQuery(o.evo_fancy).fadeIn(o.fadeIn);
			eval(o.onloadevent);
		return false;
		});
		if(o.number==i)jQuery(this).trigger('click');
	});
}
//======================================================================================================================================
//======================================================================================================================================

jQuery.fn.extend({
		evo_fancybox: function(fnarray){
			$(this).click(function(){
								   evo_object = '';
							evo_object = $(this).evo_fancy(fnarray,$(this));
							return false;
							});
		},
	  evo_fancy: function(fnarray,object)
	  {
		 	var e_galery_left = '';
			var e_galery_right = '';
		  if(fnarray['is_galery']){	
		  var e_array = new Array();
		  i=1;
		  $("."+object.attr('class')).each(function()
			{
				if($(this).attr('href')==object.attr('href') && !fnarray['number'])selected = i;				
				e_array[i] = this.href;	
				i++;
			});
		  	if(fnarray['number'])selected = fnarray['number'];
			number_l = $('#number_left').val();
			if(number_l>0)selected =$('#number_left').val()*1;
			var o_href = e_array[selected];
			if((selected-1)>0)
			{
				e_galery_left = '<input type="button" onclick="$(\'#number_left\').val('+(selected-1)+');evo_object = $().evo_fancy(evo_object[\'fnarray\'],evo_object[\'object\']);" value="<">';
			}else 
				e_galery_left='';
			
			if((selected+1)<i)
			{
				e_galery_right = '<input type="button" onclick="$(\'#number_left\').val('+(selected+1)+');evo_object = $().evo_fancy(evo_object[\'fnarray\'],evo_object[\'object\']);" value=">">';
			}
			else e_galery_right='';
		  } else {
			  	e_galery_left = '';
				e_galery_right = '';
				var o_href = $(object).attr('href');
		  }
		 	$('.evo_fon').css('display','block');										
			$('.evo_fancy').css('display','block');
			if (o_href.match('#'))
				{		
					o_href = o_href.replace(window.location,'');
					e_center_block=	 $(o_href).html();
				}
				else {
					e_center_block=	'<img src="'+o_href+'"/>';
				}
				var o_image_block = e_galery_left+e_center_block+e_galery_right;
				$('.evo_fancy').html(fnarray['e_before']+o_image_block+fnarray['e_after']);
				var wincenter_y = $(window).scrollTop()+(($(window).height()/2));
				var wincenter_x = $(window).width()/2;	
				$('.evo_fancy').css('top',wincenter_y- ($('.evo_fancy').height()/2));
				$('.evo_fancy').css('left',wincenter_x- ($('.evo_fancy').width()/2));
				return {'object':object,'fnarray':fnarray};
		  },
	  evo_scrollTo : function(speed, easing) {
		return this.each(function() {
		  var targetOffset = $(this).offset().top;
		  $('html,body').animate({scrollTop: targetOffset}, speed, easing);
		});
	  },
	  evo_autotext : function(){
		  		$(".autotext").bind('focus',function(){if(this.value==$(this).attr('rel'))this.value='';});
				$(".autotext").bind('blur',function(){if(this.value=='')this.value=$(this).attr('rel');});
				$(".autotext").each(function () {if(this.value=='')this.value=$(this).attr('rel');});
		  },
	  evo_buttons : function(fnarray) {	
	  
		$(this).hover(function(){
				$(this).addClass(fnarray['hover']);
			}, function(){
				$(this).removeClass(fnarray['hover']);
			});
			$(this).mousedown(function(){
				$(this).addClass(fnarray['down']);
			}).mouseup(function(){
			  $(this).removeClass(fnarray['down']);
			});
			$(this).click(function(){
				eval($(this).attr('rel'));
			});
	  },
	  
	  evo_chekbox : function()
	  {
		$(".input_check").click(function(){
			ch = $(this).find(".checkbox");
			ch.toggleClass("checked");
			if(ch.attr('class')=='checkbox checked')$('#text'+ch.attr('id')).val($('#text'+ch.attr('id')).attr('rel'));else
			$('#text'+ch.attr('id')).val('');
		});
	  },	  
	
	  
	  evo_radiobatton : function()
	  {
		$(".input_radio").click(function(){
			rad = $(this).find(".radiobutton");
			$(".radiobutton[rel="+rad.attr('rel')+"]").attr('class','radiobutton');
			rad.attr('Class','radiobutton checked');
			$('#'+rad.attr('rel')).val(rad.attr('alt'));
			
		});
	  },
	  evo_select : function()
	  {
		$(".select-m")
			.find(".but").click(function(){
				$(this).toggleClass("open");
				$(this).parent().find(".list").slideToggle("fast");
			}).end()
			.find("li").click(function(){
				var eid = $(this).parent().parent().attr('id');
				$('.'+eid+'text').text($(this).text());
				$('#'+eid).slideToggle("fast");
				$(".but").attr('class',"but");
				
				$('#'+eid+"val").val($(this).attr('rel'));
				
			});
	  },
	  evo_resize_textarea : function(height)
	  {
		ch = $(this).attr('scrollHeight');
		 $(this).css('height',height+(ch-height));
		 return true;
	  },
	  evo_show_hie_menu: function (id)
			  { 
				if($('#'+id).css('display')=='none')
				   {
						$('#'+id).css('display','');
						$('#a'+id).attr('class','opened');
						$('#li'+id).addClass('selected');
						
				   }else
				   {
						$('#'+id).css('display','none');
						$('#a'+id).attr('class','closed');
						$('#li'+id).removeClass('selected');
				   }
			  }
	});
