if( !SITE_URL ){ var SITE_URL = 'http://'+ document.domain; }
if( !XMLHTTP ){	var XMLHTTP = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLHTTP") : new XMLHttpRequest(); }
if( !CONTAINER ){var CONTAINER = []; }

var UAGNT = navigator.userAgent.toLowerCase();
var BROWSER = {
	version: (UAGNT.match( /.+(?:me|ox|on|rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [0,'0'])[1],
	opera: /opera/i.test(UAGNT),
	msie: (!this.opera && /msie/i.test(UAGNT)),
	msie6: (!this.opera && /msie 6/i.test(UAGNT)),
	msie7: (!this.opera && /msie 7/i.test(UAGNT)),
	msie8: (!this.opera && /msie 8/i.test(UAGNT)),
	mozilla: /firefox/i.test(UAGNT),
	chrome: /chrome/i.test(UAGNT),
	safari: (!(/chrome/i.test(UAGNT)) && /webkit|safari|khtml/i.test(UAGNT))
}

var KEY = window.KEY = {	LEFT: 37,	UP: 38,	RIGHT: 39,	DOWN: 40,	DEL: 8,	TAB: 9,	RETURN: 13,	ESC: 27,	PAGEUP: 33,	PAGEDOWN: 34,	SPACE: 32,	HOME: 36,	END: 35,	ENTER: 13,	DELETE: 46,	BACKSPACE: 8};

var MONTHS = {	'full'	:	{ '01':'январь', '02':'февраль', '03':'март', '04':'апрель', '05':'май', '06':'июнь', '07':'июль', '08':'август', '09':'сентябрь', '10':'октябрь', '11':'ноябрь', '12':'декабрь' },
								'short'	: { '01':'янв',		'02':'фев',		 '03':'мар',	'04':'апр',		'05':'май', '06':'ин',	 '07':'ил',	 '08':'авг',		'09':'сент',		 '10':'окт',		 '11':'нояб',	 '12':'дек' }
						 };

var PAGE = {	'init'	 : 0,
				'topExp' : 1,
				'midImg' : 0 };



$(document).ready( function(){
	calcList_update();
	page_init();
	set_cookie( 'page_init', '1', 1 );
});

function page_init(){
	href_str = window.location.href;
	href_arr = href_str.split( '/' );
	modTtl_str = href_arr[ 3 ];
	if( modTtl_str.length > 0 ){
		PAGE[ 'init' ] = get_cookie( 'page_init' );
		if( PAGE[ 'init' ] == 1 ){	PAGE[ 'topExp' ] = 0; }else{ PAGE[ 'topExp' ] = 1;	}
		if( modTtl_str == 'about'  ||  modTtl_str == 'services'  ||  modTtl_str == 'contacts'  ||  modTtl_str == 'news'  ||  modTtl_str == 'clients'  ||  modTtl_str == 'calculator'  ||  ( modTtl_str == 'portfolio'  &&  href_arr[ '4' ].length > 0  ) ){
			PAGE[ 'midImg' ] = 1;
		}
	}
	top_init();
	mid_init();
}

function top_init(){
	if( PAGE[ 'topExp' ] ){
		$( '#topNews, #topBanners' ).show();
	}else{
		$( '#topNews, #topBanners' ).hide();
	}
}

function top_tgl(){
	$( '#topNews, #topBanners' ).slideToggle( 500 );
	mid_btns_tgl();
}

function mid_btns_tgl(){
	$( 'div.tools div.btn_1' ).toggle( 200,
		function(){
			$( 'div.tools div.btn_2' ).toggle( 200,
				function(){
					$( 'div.tools div.btn_3' ).toggle( 200 );
				}
			);
		}
	);
}

function mid_init(){
	midTools_build( PAGE[ 'topExp' ], PAGE[ 'midImg' ] );
	midPrtfList_build( PAGE[ 'topExp' ], PAGE[ 'midImg' ] );
	if( PAGE[ 'topExp' ] == 1 ){
		$( '#btn_tgl, #btn_tgl2' ).addClass( 'btn_up' );
	}else if( PAGE[ 'topExp' ] == 0 ){
		$( '#btn_tgl, #btn_tgl2' ).addClass( 'btn_dn' );
	}
	mid_btnTgl_bind( PAGE[ 'topExp' ], PAGE[ 'midImg' ] );
}

function mid_btnTgl_bind( topExp, midImg ){
	$( '#btn_tgl' ).unbind( 'click' );
	$( '#btn_tgl' ).toggle(
		function(){
			if( topExp ){ class_str = 'btn_dn'; }else{ class_str = 'btn_up'; }
			$( '#btn_tgl, #btn_tgl2' ).attr( 'class', class_str );
			top_tgl( topExp );
		},
		function(){
			if( topExp ){ class_str = 'btn_up'; }else{ class_str = 'btn_dn'; }
			$( '#btn_tgl, #btn_tgl2' ).attr( 'class', class_str );
			
			top_tgl( topExp );
		}
	);
	$( '#btn_tgl2' ).unbind( 'click' );
	$( '#btn_tgl2' ).toggle(
		function(){
			if( topExp ){ class_str = 'btn_dn'; }else{ class_str = 'btn_up'; }
			$( '#btn_tgl, #btn_tgl2' ).attr( 'class', class_str );
			top_tgl( topExp );
		},
		function(){
			if( topExp ){ class_str = 'btn_up'; }else{ class_str = 'btn_dn'; }
			$( '#btn_tgl, #btn_tgl2' ).attr( 'class', class_str );
			top_tgl( topExp );
		}
	);
}

function midTools_build( topExp, midImg ){	
	inner_html = '';
	if( topExp ){
		inner_html += '<div class=btn_1 style="display:none;"><a href="'+ SITE_URL +'/calculator/"><img src="'+ SITE_URL +'/img/spacer.gif" width="22" height="22" border="0" alt="Калькулятор стоимости сайта" /></a></div><div class=btn_2 style="display:none;"><a href="'+ SITE_URL +'/services/"><img src="'+ SITE_URL +'/img/spacer.gif" width="22" height="22" border="0" alt="Оформление хостинга и домена" /></a></div><div class=btn_3 style="display:none;"><a href="'+ SITE_URL +'/about/promo.html"><img src="'+ SITE_URL +'/img/spacer.gif" width="22" height="22" border="0" alt="Просмотр промо-видео" /></a></div>';
		if( midImg ){
			inner_html += '<div class=btn_4></div><div class=btn_close style="display:none;"></div>';
		}
		inner_html += '<div id=btn_tgl></div>';
	}else{
		inner_html += '<div class=btn_1><a href="'+ SITE_URL +'/calculator/"><img src="'+ SITE_URL +'/img/spacer.gif" width="22" height="22" border="0" alt="Калькулятор стоимости сайта" /></a></div><div class=btn_2><a href="'+ SITE_URL +'/services/"><img src="'+ SITE_URL +'/img/spacer.gif" width="22" height="22" border="0" alt="Оформление хостинга и домена" /></a></div><div class=btn_3><a href="'+ SITE_URL +'/about/promo.html"><img src="'+ SITE_URL +'/img/spacer.gif" width="22" height="22" border="0" alt="Просмотр промо-видео" /></a></div>';
		if( midImg ){
			inner_html += '<div class=btn_4></div><div class=btn_close style="display:none;"></div>';
		}
		inner_html += '<div id=btn_tgl></div>';
	}
	$( 'div.tools' ).html( inner_html );
	$( 'div.tools > div.btn_1, div.tools > div.btn_2, div.tools > div.btn_3, div.tools > div.btn_4' ).each( function(){
		$( this ).unbind( 'mouseenter mouseleave' );
		$( this ).hover(
			function(){
				cur_class = $( this ).attr( 'class' );
				sfx_class = cur_class.replace( 'btn_', '' );
				$( this ).css( 'background-image', 'url( \''+ SITE_URL +'/img/mid_btn_'+ sfx_class +'a.gif\')' );
			},
			function(){
				cur_class = $( this ).attr( 'class' );
				sfx_class = cur_class.replace( 'btn_', '' );
				$( this ).css( 'background-image', 'url( \''+ SITE_URL +'/img/mid_btn_'+ sfx_class +'p.gif\')' );
			}
		);
	} );
	if( midImg ){
		$( 'div.tools > div.btn_4' ).click(
			function(){	midPrtfList_show();	}
		);
		$( 'div.tools > div.btn_close' ).click(
			function(){	midPrtfList_hide();	}
		);
	}
}

function midPrtfList_show(){
	$( 'td.mid > div.prtf' ).slideToggle( 400,
		function(){
			$( '#btn_tgl' ).hide( 200 );
			$( 'div.tools > div.btn_4' ).hide( 200 );
			$( 'div.tools > div.btn_close' ).show( 200 );
		}
	);
}
function midPrtfList_hide(){
	$( 'td.mid > div.prtf' ).slideToggle( 400,
		function(){
			$( '#btn_tgl' ).show( 200 );
			$( 'div.tools > div.btn_4' ).show( 200 );
			$( 'div.tools > div.btn_close' ).hide( 200 );
		}
	);
}

function midPrtfList_build( topExp, midImg ){
	if( midImg ){
		if( prtfData_array ){
			images_arr = [];
			step = 0;
			for( prtf_id in prtfData_array ){
				tmp_arr = prtfData_array[ prtf_id ];
				images_arr.push(  '<div id=rec_'+ step +'><a href='+ SITE_URL +'/portfolio/'+ prtf_id +'.html><img src='+ SITE_URL +'/data/portfolio/'+ tmp_arr[ 3 ] +' border=0 alt="Портфолио: '+ tmp_arr[ 1 ] +'" /></a></div>'  );
				step += 1;
			}
		}
		$( 'td.mid' ).prepend( '<div class=prtf style="display:none;"><div class=prtfList><div class=head><div id=btn_tgl2></div></div><div class=body><center>'+ images_arr.join( '' ) +'</center></div></div></div>' );
	}
}

function calcList_update(){
	$( '.gRec' ).each( function(){
		$( this ).unbind( 'mouseenter mouseleave' );
		id_tmp	= $( this ).attr( 'id' );
		if( id_tmp )	calcListRec_bind( this, '#d9ebff', SITE_URL +'/img/li_gCheck.gif' );
	}); 
	$( '.rRec' ).each( function(){
		$( this ).unbind( 'mouseenter mouseleave' );
		calcListRec_bind( this, '#e5f2ff', SITE_URL +'/img/li_rCheck.gif' );
	}); 
}

function calcListRec_priceUp( obj_item ){
	if( obj_item ){
		prc_tmp	= parseInt(  $( obj_item ).attr( 'prc' )  ) * 1;
		sum_price += prc_tmp;
		$( '#sum_price' ).html( sum_price +' руб' );
	}
}

function calcListRec_priceDn( obj_item ){
	if( obj_item ){
		prc_tmp	= parseInt(  $( obj_item ).attr( 'prc' )  ) * 1;
		sum_price -= prc_tmp;
		$( '#sum_price' ).html( sum_price +' руб' );
	}
}

function calcListRec_removeArr( calc_id ){
	for( z = 0; z < calc_arr.length; z++ ){
		if( calc_id == calc_arr[ z ] )	calc_arr.splice( z, 1 );
	}
}


function calcListRec_toDisable( obj_item ){
	$( obj_item ).css( {'FILTER':'alpha(opacity=30)', '-moz-opacity':'0.3', 'opacity':'0.3'} ).unbind( 'click' );
	calcListRec_bind( obj_item, '#e5f2ff', SITE_URL +'/img/li_gCheck.gif' );
}
function calcListRec_toEnable( obj_item ){
	$( obj_item ).css( {'FILTER':'alpha(opacity=100)', '-moz-opacity':'1', 'opacity':'1'} );
}

function calcListRec_check( obj_item, check_src ){
	$( obj_item ).css( 'background-image', 'url( \''+ check_src +'\')' );  
}
function calcListRec_uncheck( obj_item ){
	$( obj_item ).css( 'background-image', 'none' );  
}


function calcListChains_toDisable( chain_id ){
	calc_id = -999;
	if( calcListChains_toDisable.arguments.length > 1 ){
		calc_id = calcListChains_toDisable.arguments[ 1 ];
	}
	tmp_arr = rec_by_chains_arr[ chain_id ];
	for( z = 0; z < tmp_arr.length; z++ ){
		if( calc_id != tmp_arr[ z ] ){
			obj_item = $( '#'+ tmp_arr[ z ] );
			calcListRec_toDisable( obj_item );
		}
	}
}
function calcListChains_toEnable( chain_id ){
	calc_id = -999;
	if( calcListChains_toEnable.arguments.length > 1 ){
		calc_id = calcListChains_toEnable.arguments[ 1 ];
	}
	tmp_arr = rec_by_chains_arr[ chain_id ];
	for( z = 0; z < tmp_arr.length; z++ ){
		if( calc_id != tmp_arr[ z ] ){
			obj_item = $( '#'+ tmp_arr[ z ] );
			calcListRec_toEnable( obj_item );
		}
	}
}



function calcListRec_bind( obj_item, bg_over, check_src ){
	if( $( obj_item ) ){
		$( obj_item ).toggle(
			function(){
				calc_id	= $( obj_item ).attr( 'id' );
				calcListRec_priceUp( obj_item );
				calcListRec_check( obj_item, check_src );
				calcListRec_toEnable( obj_item );
				calc_arr.push( calc_id );	
				chain_id = $( obj_item ).attr( 'chain' );
				if( in_chains_arr[ chain_id ] !== undefined ){
					oldCalc_id = in_chains_arr[ chain_id ];
					if( oldCalc_id > 0 ){
						calcListRec_removeArr( 	oldCalc_id );
						calcListRec_priceDn( 	$( '#'+ oldCalc_id ) );
						calcListRec_toDisable( 	$( '#'+ oldCalc_id ) );
						calcListRec_uncheck( 	$( '#'+ oldCalc_id ) );				
					}else{
						calcListChains_toDisable( chain_id, calc_id );
					}
					in_chains_arr[ chain_id ] = calc_id;
				}
			},
			function(){
				calc_id	= $( obj_item ).attr( 'id' );
				calcListRec_priceDn( obj_item );
				calcListRec_uncheck( obj_item, check_src );
				calcListRec_removeArr( calc_id );
				chain_id = $( obj_item ).attr( 'chain' );
				if( in_chains_arr[ chain_id ] !== undefined ){
					oldCalc_id = in_chains_arr[ chain_id ];
					if( oldCalc_id == calc_id ){
						calcListChains_toEnable( chain_id );
						in_chains_arr[ chain_id ] = 0;
					}
				}
			}
		);
		$( obj_item ).hover( 
			function(){
				$( obj_item ).css( 'background-color', bg_over );  
			},
			function(){
				$( obj_item ).css( 'background-color', '#ffffff' );
			}
		);
	}
}

function MM_preloadImages() { //v3.0
	var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
		if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
	var p,i,x;	if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
		d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
	var i, j=0, x, a=MM_swapImage.arguments; 
	document.MM_sr=new Array; 
	for(i=0;i<(a.length-2);i+=3) {
		if ( (x=MM_findObj(a[i]))!=null){
			document.MM_sr[j++]=x; 
			if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];
		}
	}
}


function goto_url( url_str ){
	window.location.href = url_str;
}

function set_cookie( name, value, days ){
	var today = new Date();
	expires = new Date(today.getTime() + days*24*60*60*1000);
	document.cookie = name + "=" + escape(value) +"; expires=" + expires.toGMTString()+"; path=/; domain="+ document.domain;
}

function del_cookie( name, value ){
	var today = new Date();
	expires = new Date(today.getTime() - 10*24*60*60*1000);
	document.cookie = name + "=" + escape(value) +"; expires=" + expires.toGMTString()+"; path=/; domain="+ document.domain;
}

function get_cookie( name ){
	var search = name + "="
	if (document.cookie.length > 0) {
		offset = document.cookie.indexOf(search);
		if (offset != -1) { 
			offset += search.length 
			end = document.cookie.indexOf(";", offset) 
			if (end == -1) 
				end = document.cookie.length
			return unescape(document.cookie.substring(offset, end))
		} 
	}
}


function wbox_init(){
	$( document ).one( 'keydown', wbox_close_by_esc );
}

function wbox_close(){
	wbox_bind();
}

function wbox_close_by_esc( event ){
	key = event.keyCode || event.charCode;
	if( key == KEY.ESC ){
		wbox_bind();
	}
}

function wbox_bind(){
	$( '#wbox_body').empty();
	$( '#wbox_bg, #wbox_body').hide();
}

function wbox_scroll(){
	html = document.documentElement;	body = document.body;
	scroll_top = (	html	&&	html.scrollTop	 ||	 body	&&	body.scrollTop	 ||	 0	);
	$( '#wbox_body' ).css( 'top', scroll_top );
}


function popup_open( obj_body ){
	div_container = '<div id="popup_bg" style="margin:0px; position:absolute; float:left; left:0px; top:0px; width:100%; height:100%; z-order:99; background-color:#ffffff; FILTER:alpha(opacity=0); -moz-opacity:0; opacity:0;"></div><div id="popup_body" style="margin:0px; position:absolute; float:left; left:0px; top:0px; z-order:98;">'+ obj_body +'</div>';
	$( 'body' ).prepend( div_container );
	var html = document.documentElement;
	var body = document.body;
	scroll_top = (	html	&&	html.scrollTop	 ||	 body	&&	body.scrollTop	 ||	 0	);
	$( '#popup_bg' ).css( 'top', scroll_top );
	$( '#popup_body' ).css( 'top', (	scroll_top	+	( $( '#popup_bg' ).innerHeight() - $( '#popup_body' ).outerHeight() )	/	2	) ).css( 'left', (	( $( 'body' ).outerWidth() - $( '#popup_body' ).outerWidth() )	/	2	) );
	$( '#popup_bg' ).click( function(){ popup_close(); } );
}

function popup_close(){
	$( '#popup_bg' ).hide(); 
	$( '#popup_body' ).hide();
	$( 'body' ).attr('scroll','yes');
}


function form_textarea_expand( obj_item ){
	if( obj_item ){
		$( obj_item ).css( 'height', '100px' );
	}
}

function form_textarea_colapse( obj_item ){
	if( obj_item ){
		$( obj_item ).css( 'height', '22px' );
	}
}
