// JavaScript Document

(function($){
		$.fn.jnice = function( options ) {
			
			return $(this).each(function(){				
										 
				var $f = $(this);				
				var settings = $.extend({
					jcheckbox: true,
					jradio: true,
					jselect:true
				},options||{});
				
				/*checkbox*/
				if(settings.jcheckbox) {
					$(':checkbox',$f).each(function() {
						var $chk = $(this);
						var $checked = $chk.prop('checked');												
						var $a = $('<a/>').addClass('ib v-ml jcheckbox ' + $chk.attr('class'))
						$a.attr('style',$chk.attr('style'));
						
						var $b = $('<b/>').addClass('fl-lt no-txt').text('чекбокс');						
						if($checked) $a.addClass('jcheckbox-checked');												
						$chk.before($a.append($b)).addClass('hide');
						$chk.click(function() {
							$a.toggleClass('jcheckbox-checked');							
						});						
						$a.click(function(){
							if($chk.prop('checked')) {
								$chk.prop('checked','');
							} else {
								$chk.prop('checked','checked');
							};							
							$a.toggleClass('jcheckbox-checked');	
							return false;
						});						
					});
				};	
				/*radio*/
				if(settings.jradio){
					$(':radio',$f).each(function(){
						var $r = $(this);
						var $checked = this.checked;
						var $a = $('<a>').addClass('ib v-ml jradio ' + $r.attr('class'));
						$a.attr('style',$r.attr('style'));
						$a.attr('rel',$r.attr('name'));
						var $b = $('<b>').addClass('fl-lt no-txt').text('переключатель');	
						if($checked) $a.addClass('jradio-checked');	
						$r.before($a.append($b)).addClass('hide');
						$r.click(function() {
							$('a[rel='+$r.attr('name')+']').removeClass('jradio-checked');
							$a.addClass('jradio-checked');								
						});						
						$a.click(function(){							
							if(!$a.hasClass('jradio-checked')) {							
								$a.addClass('jradio-checked').next(':radio').prop('checked','checked');
								$('a[rel='+$r.attr('name')+']').not($a).removeClass('jradio-checked').next(':radio');								
							}
							return false;
						});	
					});
				};
				/*selects*/
				if(settings.jselect) {
					($.browser.msie&&parseInt($.browser.version)<8)?ea=true:ea=false;
					$('select', $f).each(function(index){
					var $select = $(this);		
					var $class = $select.attr('class');
					$select.addClass('hide').wrap('<span class="jselect '+$class+'" style="'+$select.attr('style')+'"><div class="jNiceSelectWrapper"></div><q class="l" /><q class="r" /><q class="bg" /></span>');
					var $wrapper = $select.parent()
					$select.parents('span.jselect').css({zIndex: 100-index});
				
					$wrapper.prepend('<a class="selectedItem" href="#"><span class="txt" /></a><ul class="spec"></ul>');
					var $ul = $('ul.spec', $wrapper);
				
					$('option', $select).each(function(i){
						$ul.append('<li><a href="#" index="'+ i +'">'+ this.text +'</a></li>');
					});
					$ul.height()>150?$ul.height('150px'):'';					
					$ul.hide().find('a').click(function(){
						var $obj = $(this);
						$('a.selected', $wrapper).removeClass('selected');
						$obj.addClass('selected');	
						if($select.prop('selectedIndex')!=$obj.attr('index')&&$select.change) {$select.prop('selectedIndex',$obj.attr('index')); $select.change(); }
						$select.prop('selectedIndex',$obj.attr('index'));						
						$('a.selectedItem', $wrapper).find('span.txt').html($obj.html());
						$ul.hide();
						return false;
					});			
					$('a:eq('+ $select.prop('selectedIndex') +')', $ul).click();
				});
				$('a.selectedItem', this).click(function(){
					var $ul = $(this).siblings('ul');
					$(this).parents('span.jselect').toggleClass('jselect-active')
					if ($ul.css('display')=='none'){ hideSelect(); } 
    				$ul.slideToggle('fast',function(){
						var offSet = parseInt(((ea ? $('a.selected', $ul).parent().prop('offsetTop') : $('a.selected', $ul).prop('offsetTop')) - $ul.prop('offsetTop')));					
						$ul.animate({scrollTop: offSet});					
					});					
					return false;
				});
		
				var hideSelect = function(){
					$('.jNiceSelectWrapper ul:visible').hide();
				};		
		
				var checkExternalClick = function(event) {
					if ($(event.target).parents('.jselect').length === 0) { hideSelect(); }
				};

				$(document).mousedown(checkExternalClick);
		
			
		
				var jReset = function(f){
					var sel;
					
					
					$('div.jNiceSelectWrapper select', f).each(function(){
																	
						sel = ( this.selectedIndex < 0 ) ? 0 : this.selectedIndex;
						
						$('ul', $(this).parent()).each(function(){
																
 							$('a:eq('+ sel +')', this ).click();																																																	 						});
					});
					
					$(':checkbox', f).each(function(){
						var $obj = $(this);
						var $checked = $obj.prop('checked');	
						var $chk = $obj.prev('a.jcheckbox');
						$checked?$chk.addClass('jcheckbox-checked'):$chk.removeClass('jcheckbox-checked');
					
					
					});
					$(':radio', f).each(function(){
						var $obj = $(this);
						var $checked = $obj.prop('checked');
						
						var $chk = $obj.prev('a.jradio');
						//alert($chk.length)
						$checked?$chk.addClass('jradio-checked'):$chk.removeClass('jradio-checked');
						
					
					});
			
				};
				
				$f.bind('reset', function(){ var f = this;  var action = function(){ jReset(f); }; setTimeout(action, 10);});
		
				};
			});
		};	
})(jQuery);

$(function(){
	var $html = document.documentElement;
	var $body = document.body;
	if($( "#tim,#buch,#zhe,#gaz" ).length){
		function draggable(){
			var i = 1;
			var t = $.browser.webkit?$body:$html;
			
			var $boxs = $('#box1,#box2,#box3,#box4');
			var $box1 = $boxs.filter('#box1');
			var $box2 = $boxs.filter('#box2');
			var $box3 = $boxs.filter('#box3');
			var $box4 = $boxs.filter('#box4');
			
			var $box1Top;
			var $box2Top;
			var $box3Top;
			var $box4Top;			
			var $box1Left;
			var $box2Left;
			var $box3Left;
			var $box4Left;
			
			var $drags = $( "div.widjet" );
			
			$drags.eq(3).attr({'active':'box1','index':'1'}).animate({'left':$box1.css('left'),'top':$box1.css('top')},500,function(){$drags.eq(2).attr({'active':'box2','index':'2'}).animate({'left':$box2.css('left'),'top':$box2.css('top')},500,function(){$drags.eq(0).attr({'active':'box3','index':'3'}).animate({'left':$box3.css('left'),'top':$box3.css('top')},500,function(){$drags.eq(1).attr({'active':'box4','index':'4'}).animate({'left':$box4.css('left'),'top':$box4.css('top')},500,function(){
			 $box1Top = $box1.prop('offsetTop');
			 $box2Top = $box2.prop('offsetTop');
			 $box3Top = $box3.prop('offsetTop');
			 $box4Top = $box4.prop('offsetTop');
			
			 $box1Left = $box1.prop('offsetLeft');
			 $box2Left = $box2.prop('offsetLeft');
			 $box3Left = $box3.prop('offsetLeft');
			 $box4Left = $box4.prop('offsetLeft');	
			
																																																																																			})})})})
			
			$drags.each(function(){
				var $obj = $(this);
				var $objWidth = $obj.width()/2;
				var $objHeight = $obj.height()/2;
			
				$obj.draggable({
				 	drag: function(event, ui) { 
					
				 },
				 start: function(event, ui) {
					i++
					$obj.css('zIndex',i); 
				 },
				 stop: function(event, ui) {
					 
					 var $objLeft = $obj.prop('offsetLeft');
					 var $objTop = $obj.prop('offsetTop');
					 
					 if(Math.abs($box1Left - $objLeft)<$objWidth&&Math.abs($box1Top - $objTop)<$objHeight){
						$.ajax({
						   type: "POST",
						   url: "/child/rotate",
						   data: "f=1&s="+$obj.attr('index'),
						   success: function(msg){
							 
						   }
						 });
						 $drags.filter('[active=box1]').attr({'active':$obj.attr('active'),'index':$obj.attr('index')}).animate({'top':$boxs.filter('#'+$obj.attr('active')).prop('offsetTop'),'left':$boxs.filter('#'+$obj.attr('active')).prop('offsetLeft')},500);							 
						 $obj.animate({'top':$box1Top,'left':$box1Left},500).attr({'active':'box1','index':'1'});
						 
						
						 
					 	
					 } else if(Math.abs($box2Left - $objLeft)<$objWidth&&Math.abs($box2Top - $objTop)<$objHeight){
						$.ajax({
						   type: "POST",
						   url: "/child/rotate",
						   data: "f=2&s="+$obj.attr('index'),
						   success: function(msg){
							 
						   }
						 });
						 $drags.filter('[active=box2]').attr({'active':$obj.attr('active'),'index':$obj.attr('index')}).animate({'top':$boxs.filter('#'+$obj.attr('active')).prop('offsetTop'),'left':$boxs.filter('#'+$obj.attr('active')).prop('offsetLeft')},500);						 
						 $obj.animate({'top':$box2Top,'left':$box2Left},500).attr({'active':'box2','index':'2'});
						 
						 
					 } else if(Math.abs($box3Left - $objLeft)<$objWidth&&Math.abs($box3Top - $objTop)<$objHeight){
						$.ajax({
						   type: "POST",
						   url: "/child/rotate",
						   data: "f=3&s="+$obj.attr('index'),
						   success: function(msg){
							 
						   }
						 });
						 $drags.filter('[active=box3]').attr({'active':$obj.attr('active'),'index':$obj.attr('index')}).animate({'top':$boxs.filter('#'+$obj.attr('active')).prop('offsetTop'),'left':$boxs.filter('#'+$obj.attr('active')).prop('offsetLeft')},500);						 
						 $obj.animate({'top':$box3Top,'left':$box3Left},500).attr({'active':'box3','index':'3'});
						 
						 
					 } else if(Math.abs($box4Left - $objLeft)<$objWidth&&Math.abs($box4Top - $objTop)<$objHeight){
						$.ajax({
						   type: "POST",
						   url: "/child/rotate",
						   data: "f=4&s="+$obj.attr('index'),
						   success: function(msg){
							 
						   }
						 });
						 $drags.filter('[active=box4]').attr({'active':$obj.attr('active'),'index':$obj.attr('index')}).animate({'top':$boxs.filter('#'+$obj.attr('active')).prop('offsetTop'),'left':$boxs.filter('#'+$obj.attr('active')).prop('offsetLeft')},500);						 
						 $obj.animate({'top':$box4Top,'left':$box4Left},500).attr({'active':'box4','index':'4'});
						 
						 
					 }  else {
					 	$obj.animate({'top':$boxs.filter('#'+$obj.attr('active')).prop('offsetTop'),'left':$boxs.filter('#'+$obj.attr('active')).prop('offsetLeft')},500);						 
					 }
					 
					 	
						
					
				
				
				},
				 containment: "div.wrapper"
	
			
			});
			})
		}
		draggable();
		if(animation_disabled){
		
			$('div.widjet').draggable( { disabled: true } );
		}
	}		
	$('.jnice').jnice();
	
	
	
	/*tabs*/
	if($('ul.tabs').length){
		(function(){
			var $li = $('ul.tabs li.item');
			var l = $li.length;
			
			$li.each(function(i){
				var $obj = $(this).css('zIndex',l-i);				  		
				$obj.hover(function(){
					$obj.addClass('hover');
				},function(){
					$obj.removeClass('hover')
				})
			});
		
		})();
	}
	
	/*end tabs*/
	
	if ($('#accordion').length) {
		$('#accordion').accordion({
			autoHeight: false,
			navigation: true,
			collapsible: true
		});
	}
	
	$('#x-form.reg-form').submit(function(){
		$('.error-text').remove();
		$('.field').removeClass('error-field');
		var cnt = 0;
		$(this).find('.required').each(function(){
			if ($(this).val() == '') {
				$(this).parent().addClass('error-field');
				$(this).after('<span class="error-text"><span>Поле обязательно для заполнения</span></span>');
				cnt ++;
			}
		});

		if (/^[a-zA-Z0-9._-]+@[a-zA-Z0-9-]+\.[a-zA-Z.]{2,5}$/i.test($('#email').val()) === false) {
			$('#email').parent().addClass('error-field');
			$('#email').after('<span class="error-text"><span>Некорректный электронный адрес</span></span>');
			cnt ++;
		}
		
		$.ajax({
			type: 'post',
			url: '/user/check_email',
			data: 'user_email=' + $('#email').val(),
			success: function(result){
				if (result == 0) {
					$('#email').parent().addClass('error-field');
					$('#email').after('<span class="error-text"><span>Такой E-mail уже зарегистрирован</span></span>');
					cnt ++;
				}
			}
		});

		if (/^[A-zА-я][A-zА-я0-9_]+$/i.test($('#login').val()) === false) {
			$('#login').parent().addClass('error-field');
			$('#login').after('<span class="error-text"><span>Неподходящий логин</span></span>');
			cnt ++;
		}

		$.ajax({
			type: 'post',
			url: '/user/check_login',
			data: 'user_login=' + $('#login').val(),
			success: function(result){
				if (result == 0) {
					$('#login').parent().addClass('error-field');
					$('#login').after('<span class="error-text"><span>Такой ник уже зарегистрирован</span></span>');
					cnt ++;
				}
			}
		});

		var gg = false; 
		var pasVal = $('#password').val().split('');
		var count = 0
		for(var i=0,l=pasVal.length;i<l;i++){
			
			if(pasVal[0]==pasVal[i]){
				count++; 	
			}
		}
		if(count==pasVal.length){
			gg=true;
		}
		
		if (/^[A-z][A-z0-9_]+$/i.test($('#password').val()) === false || $('#password').val().length < 4 || gg) {
			$('#password').parent().addClass('error-field');
			$('#password').after('<span class="error-text"><span>Пароль недостаточно сильный</span></span>');
			cnt ++; 
		}
		
		var gg2 = false; 
		var pasVal2 = $('#mom-password').val().split('');
		var count2 = 0
		for(var i2=0,l2=pasVal2.length;i2<l2;i2++){
			
			if(pasVal2[0]==pasVal2[i2]){
				count2++; 	
			}
		}
		if(count2==pasVal2.length){
			gg2=true;
		}
		
		if (/^[A-z0-9_]+$/i.test($('#mom-password').val()) === false || $('#mom-password').val().length < 4 || gg2) {
			$('#mom-password').parent().addClass('error-field');
			$('#mom-password').after('<span class="error-text"><span>Пароль недостаточно сильный</span></span>');
			cnt ++;
		}
 
		if ($('#password').val() == $('#mom-password').val()) {
			$('#mom-password').parent().addClass('error-field');
			$('#mom-password').after('<span class="error-text"><span>Пароли не должны совпадать</span></span>');
			cnt ++;
		}
		
		if(!$('#confirm').prop('checked')){
			cnt ++;
		}

		if (cnt > 0) {
			return false;
		}
	});
	
	
	$('a.news-img').live('click', function(){
		var popup = $('.popup.photo');
		popup.find('.cont').html($(this).html());
		if (popup.hasClass('hide')) {
			popup.removeClass('hide');
		} else if (popup.is(':hidden')) {
			popup.show();
		}	
		return false;
	});

})
