var resizeTimer = null;
var resizeInterval = 444;
var horA = 'none';
var slideAN = 'auto';
var slideANum = 0;
var slideT = 555;
var slideW = 420;
var slides;
var slidesL = 10;
var windowW = Math.floor( document.documentElement.clientWidth * 0.92 - slideW - 20 );
var slideVW = Math.floor( windowW / slidesL );

function trim(str){
    charlist = ' \xA0';
    var re = new RegExp( '^[' + charlist + ']+|[' + charlist + ']+$', 'g' );
    return str.replace( re, '' );
};

var getXHR = ( function(){
	var xhr;
	if(typeof XMLHttpRequest != 'undefined') return function(){ return xhr = new XMLHttpRequest() }
	else if(window.ActiveXObject){
		var xmlVers = ['MSXML2.XMLHttp.4.0', 'MSXML2.XMLHttp.3.0', 'MSXML2.XMLHttp'];
		for( var i = 0; i < xmlVers.length; i++ ){
			try{
				xhr = new ActiveXObject(xmlVers[i]);
				return function(){ return xhr; }
			} catch( err ){}
		}
		throw new Error('Невозможно создать объект XMLHttp');
	}
	return function(){ return xhr };
} )();
function sendXHR( http_string, post_string, on_ready, on_false, obj ){
	var xhr = getXHR();
	xhr.open( 'POST', http_string, true );
	xhr.setRequestHeader( 'Content-Type', 'application/x-www-form-urlencoded');
	xhr.setRequestHeader( 'X-Requested-With', 'XMLHttpRequest');
	xhr.onreadystatechange = function(){
		if(xhr.readyState != 4){ return; }
		clearTimeout(xhrTimeOut);
		if(xhr.status == 200){
			var r = eval( '('+xhr.responseText+')' );
			if( !r['error'] )	on_ready.call( null, r, obj );
			else	on_false.call( null, r, obj );
		}
	}
	xhr.send( post_string );
	var xhrTimeOut = setTimeout( function(){ on_false.call( null, xhr_timeout ), xhr.abort() }, 10000 );
};

function str_replace ( search, replace, subject ) {
	if(!(replace instanceof Array)){
		replace=new Array(replace);
		if(search instanceof Array){
			while(search.length>replace.length){
				replace[replace.length]=replace[0];
			}
		}
	}
	if(!(search instanceof Array))search=new Array(search);
	while(search.length>replace.length){
		replace[replace.length]='';
	}
	if(subject instanceof Array){
		for(k in subject){
			subject[k]=str_replace(search,replace,subject[k]);
		}
		return subject;
	}
	for(var k=0; k<search.length; k++){
		var i = subject.indexOf(search[k]);
		while(i>-1){
			subject = subject.replace(search[k], replace[k]);
			i = subject.indexOf(search[k],i);
		}
	}
	return subject;
}

var resizeHandler = function(){
	windowW = Math.floor( document.documentElement.clientWidth * 0.92 - slideW - 20 );
	slideVW = Math.floor( windowW / slidesL );
	if( slideANum + 1 ){
		for( var i = 0; i < slidesL; i++ ){
			if( i <= slideANum ){
				slides.eq(i).css( {left: ( i * slideVW )+'px'} );
			}
			else {
				slides.eq(i).css( {left: ( slideW + i * slideVW )+'px'} );
			}
		}
	}
}

function prevOver(){	switch( this.getAttribute('id') ){		case 'preview-auto': document.getElementById('preview-chasi').style.display = 'none';	break;
		case 'preview-gruz': document.getElementById('preview-tel').style.display = 'none';	break;
		case 'preview-nedvij': document.getElementById('preview-juvel').style.display = 'none';	break;
		case 'preview-plav': document.getElementById('preview-moto').style.display = 'none';	break;		case 'preview-spets': document.getElementById('preview-raznoe').style.display = 'none';
	}
	$('#'+this.getAttribute('id')+'-hv').stop().css( {display:'block'} ).animate( {opacity:1}, {duration:444} );}
function prevOut(){
	$('#'+this.getAttribute('id')+'-hv').stop().animate( {opacity:0}, {duration:222, complete:function(){		switch( this.getAttribute('id') ){
			case 'preview-auto-hv': document.getElementById('preview-chasi').style.display = 'block';	break;
			case 'preview-gruz-hv': document.getElementById('preview-tel').style.display = 'block';	break;
			case 'preview-nedvij-hv': document.getElementById('preview-juvel').style.display = 'block';	break;
			case 'preview-plav-hv': document.getElementById('preview-moto').style.display = 'block';	break;
			case 'preview-spets-hv': document.getElementById('preview-raznoe').style.display = 'block';
		}
		$(this).css( {display:'none'} );	}} );
}

function changeFI(){	reWin = /.*\\(.*)/;
	var fileTitle = this.value.replace(reWin, "$1");
	reUnix = /.*\/(.*)/;
	fileTitle = fileTitle.replace(reUnix, "$1");

	var RegExExt =/.*\.(.*)/;
	var ext = fileTitle.replace(RegExExt, "$1");

	var pos;
	if( ext ){
		switch( ext.toLowerCase() ){
			case 'doc': pos = '0'; 			pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'bmp': pos = '16'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'jpg': pos = '32'; break;
			case 'jpeg': pos = '32'; break;
			case 'png': pos = '48'; break;
			case 'gif': pos = '64'; break;
			case 'psd': pos = '80'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'mp3': pos = '96'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'wav': pos = '96'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'ogg': pos = '96'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'avi': pos = '112'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'wmv': pos = '112'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'flv': pos = '112'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'pdf': pos = '128'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'exe': pos = '144'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			case 'txt': pos = '160'; 		pos = '176'; fileTitle = 'Неверный тип изображения'; break;
			default: pos = '176'; fileTitle = 'Неверный тип изображения'; break;
		};
		$(this.parentNode.parentNode).next().children().eq( 0 ).css( {background:'url(/images/form-files-icons.png) no-repeat 0 -'+pos+'px'} ).text( fileTitle );
	}
}

function check_captcha( path, obj ){
	$(obj.parentNode).children( "div" ).remove();
	if( trim( $(obj).val() ) )	sendXHR( path, 'captcha=' + $(obj).val(), c_cS, c_cS, obj );
}
var c_cS = function( r, obj ){
	$(obj.parentNode).append( "<div class='captcha-result'>" + r['msg'] + "</div>" );
	setTimeout( function(){ $('div.captcha-result').fadeOut( 222 ) }, 2000 );
}

$(document).ready( function(){	$('div.h-sign').mouseover( function(){		this.style.backgroundPosition = '0px 0px';	} ).mouseout( function(){		this.style.backgroundPosition = '0px -54px';	} ).click( function(){		this.previousSibling.submit();	} );
	$("div.dline-bg > a[href*='"+horA+"']").css( {color:'#CCCCCC', textDecoration:'none'} );
	slides = $('div.slider').children();
	slideANum = slides.index( $( 'div.'+ slideAN ).eq(0) );
	if( slideANum + 1 ){		for( var i = 0; i < slidesL; i++ ){			if( i <= slideANum ){				slides.eq(i).animate( {left: ( i * slideVW )+'px'}, {duration:slideT, easing:"easeInQuad"} );
			}
			else {				slides.eq(i).animate( {left: ( slideW + i * slideVW )+'px'}, {duration:slideT, easing:"easeInQuad"} );
			}
		}
		setTimeout( function(){			slides.eq(slideANum).children().eq(4).css( {opacity:0.77} ).animate( {opacity:0}, {duration:slideT, complete:function(){				this.style.top = "300px";			} } );
		}, slideT );
	}
	slides.children('[id]').bind( 'click', function(){
		var newSlideAN = this.getAttribute('id');
		if( newSlideAN == slideAN ) return false;
		var newSlideANum = slides.index( $( 'div.'+ newSlideAN ).eq(0) );
		for( var i = 0; i < slidesL; i++ ){
			if( i <= newSlideANum ){
				slides.eq(i).animate( {left: ( i * slideVW )+'px'}, {duration:slideT, easing:"easeInQuad"} );
			}
			else {
				slides.eq(i).animate( {left: ( slideW + i * slideVW )+'px'}, {duration:slideT, easing:"easeInQuad"} );
			}
		}
		setTimeout( function(){
			slides.eq(newSlideANum).children().eq(4).css( {opacity:0.66} ).animate( {opacity:0}, {duration:slideT, complete:function(){
				this.style.top = "300px";
			} } );
		}, slideT );

		slides.eq(slideANum).children().eq(4).css( {top:'0px'} ).animate( {opacity:0.66}, {duration:slideT} );

		slideAN = newSlideAN;
		slideANum = newSlideANum;
	} );
	$('div.wrr').hover( prevOver, prevOut );
} );

$(window).load( function(){	$(window).resize( function(){		if( resizeTimer != null ){
	        clearTimeout(resizeTimer);
	        resizeTimer = null;
	    }
	    resizeTimer = setTimeout( resizeHandler, resizeInterval );	} );} );