var a = String(window.location.search).split('=');
window.chosenModel = a[1]?String(unescape(a[1])).replace('_', ' '):'MINI';

var regExpSpace = {
	email: new RegExp(/^([_a-z0-9-]+)(\.[_a-z0-9-]+)*@([a-z0-9-]+)(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/i),
	hash: new RegExp(/^[a-zA-Z0-9]{32}$/)
}

function getInTouch() {
	var form = $('contactForm');
	
	if(!form.gender[0].checked && !form.gender[1].checked) { alert('Prosimy zaznaczyć płeć!'); return; };
	if(!form.firstName.value.length) { alert('Prosimy wpisać imię!'); return; }
	if(!form.lastName.value.length) { alert('Prosimy wpisać nazwisko!'); return; }
	if(!regExpSpace.email.test(form.email.value)) { alert('Prosimy wpisać poprawny adres e-mail!'); return; }
	
	if(form.city && form.postalcode) {
		if(!form.city.value.length) { alert('Prosimy wpisać miasto!'); return; }
		if(!form.postalcode.value.length) { alert('Prosimy wpisać kod pocztowy!'); return; }
	}
	
	if(form.subject.selectedIndex == 0) { alert('Prosimy o wybranie tematu wiadomości!'); return; }
	if(form.message.value.length == 0) { alert('Prosimy o wpisanie treści wiadomości!'); return; }
	
	form.set('send', {
		url: '/tools/contact.php',
		method: 'post',
		onSuccess: function(message) {
			var container = form.getParent();
			form.dispose();
			
			var htmlContent = '<h2 class="miniTitle">Twój e-mail został wysłany!<\/h2>';
			
			if(form.subject.value == 5)
			{
				htmlContent += '<p style="margin-top: 20px;">Zapraszamy na strony <a href="/Sprzedaz_i_Uslugi/Finansowanie" title="Finansowanie MINI">Finansowanie MINI</a></p>';
			}
			container.set('html', htmlContent);
			makeFonts();
		}
	});
	form.send();
}

function getInTouch2() {
	var form = $('f1');
	
	if(!form.imie.value.length) { alert('Prosimy wpisać imię!'); return; }
	if(!form.nazwisko.value.length) { alert('Prosimy wpisać nazwisko!'); return; }
	if(form.age.selectedIndex == 0) { alert('Prosimy podać wiek!'); return; }
	if(!form.firma.value.length) { alert('Prosimy podać nazwę firmy!'); return; }
	if(!form.ulica.value.length) { alert('Prosimy podać ulicę!'); return; }
	if(!form.kodpocztowy.value.length) { alert('Prosimy podać kod pocztowy!'); return; }
	if(!form.miasto.value.length) { alert('Prosimy podać miasto!'); return; }
	if(!regExpSpace.email.test(form.email.value)) { alert('Prosimy wpisać poprawny adres e-mail!'); return; }
	if(!form.telefon.value.length) { alert('Prosimy podać telefon!'); return; }
	
	//lub 
	if(form.car_mark.selectedIndex == 0 && !form.car_mark_text.value.length) { alert('Prosimy podać markę posiadanego samochodu!'); return; }
	if(form.car_model.selectedIndex == 0 && !form.car_model_text.value.length) { alert('Prosimy podać model posiadanego samochodu!'); return; }

	if(!form.rocznik.value.length) { alert('Prosimy podać rocznik!'); return; }
	if(form.preferowanydealer.selectedIndex == 0) { alert('Prosimy wybrać Dealera!'); return; }

	
	form.set('send', {
		//url: 'http://bmwssl.sycamore/mini/testdrive_form.php',
		url: '/tools/test.php',
		method: 'post',
		onSuccess: function(message) {
			var container = form.getParent();
			form.dispose();
			container.set('html', '<h2 class="miniTitle">Twój e-mail został wysłany!<\/h2>' + message);
			makeFonts();
		}
	});
	form.send();
}

function newsletter(version) {
	var ema, url, name;
	
	if(version == 1) {
		ema = $$('#countrymanForm input.email')[0].value;	
		url = '/tools/newsletter.php?type=countryman';
		name = $$('#countrymanForm input.full_name')[0].value;
	}
	else {
		ema = $$('#newsletterForm input.email')[0].value;	
		url = '/tools/newsletter.php';
		name = '';
	}
	
	if(regExpSpace.email.test(ema)) {
		/* newsletter - wysłanie zapytania */
		var req = new Request({
			url: url,
			method: 'get',
			data: {
				action: 'add',
				email: ema,
				name: name
			},
			onSuccess: function(data) {
				$$('#newsletterForm *, #countrymanForm *').each(function(elem) {
					elem.dispose();
				});
				if(version == 1) {
					$('countrymanForm').set('html', data);
				}
				else {
					$('newsletterForm').set('html', data);
				}
			}
		});
		req.send();
	}
}


function noNewsletter(version) {
	var ema, url;
	var tag = String(String(window.location).split('?')[1]).split('=')[1];
	
	if(version == 1) {	
		ema = $$('#countrymanForm input.email')[0].value;
		url = '/tools/newsletter.php?type=countryman';
	}
	else {
		ema = $$('#newsletterForm input.email')[0].value;
		url = '/tools/newsletter.php';		
	}
	
	
	if(regExpSpace.email.test(ema)) {
		
		/* newsletter - wysłanie zapytania */
		var req = new Request({
			url: url,
			method: 'get',
			data: {
				action: 'delete',
				email: ema,
				tag: tag
			},
			onSuccess: function(data) {
				$$('#newsletterForm *, #countrymanForm *').each(function(elem) {
					elem.dispose();
				});
				if(version == 1) {	
					$('countrymanForm').set('html', data);
				}
				else {
					$('newsletterForm').set('html', data);
				}
			}
		});
		req.send();
	}
}



function taf(type) {
	var form = $('recommendForm');
	if(type) {
		
		if(!form.fromName.value.length) { alert('Prosimy wpisać swoje imię!'); return; }
		if(!regExpSpace.email.test(form.fromEmail.value)) { alert('Prosimy wpisać Twój poprawny adres e-mail!'); return; }
		if(!regExpSpace.email.test($('must').value)) { alert('Prosimy wpisać poprawny adres e-mail adresata!'); return; }

		$('referring').value = ($defined(window.followHref)?window.followHref:'');
		
		form.set('send', {
			method: 'post',
			onSuccess: function(message) {
				var div = new Element('div');
				div.set('html', '<h2 class="miniTitle">E-maile z rekomendacją strony zostały wysłane. Dziękujemy.<\/h2>');
				div.addClass('thanks');
				$$('ul.miniNavi').dispose();
				div.replaces(form);
				makeFonts();
			}
		});
		form.send();
	}
	else { form.reset(); }
}


window.addEvent('domready', function() {

	/* powiadom przyjaciela */
	$$('.tellBody').each(function(body) {
		var area = body.getElement('textarea')
		var resign = body.getElements('h2.resign')[0];
		
		area.addEvent('keyup', function(e) {
			var max = 250;
			if (area.value.length > max) { 
				area.value = area.value.substring(0, max);
			}
		});
	});
	
	$$('#taf').each(function(taf) {
		taf.addEvent('click', function(e) {
			var e = new Event(e).stop();
			var addr = String(window.location.href).split('http://')[1];
			addr = addr.substring(addr.indexOf('/'), addr.length).split('#')[0];
			
			var recommendWindow = window.open('/Powiadom_znajomych.html', 'MINI_Powiadom', 'resizable=no, scrollbars=no, status=no, width=747, height=471' );
			recommendWindow.followHref = addr;
		});
	});
	
	/* koniec powiadamiania */

	
	/* newsletter - walidacja maila */
	$$('#newsletterForm, #countrymanForm').each(function(newsletter) {
		var emailInput = newsletter.getElement('input.email');
		var indicator = newsletter.getElement('em');

		if(!$defined(indicator)) return;

		indicator.setStyle('display', 'none');

		emailInput.addEvent('keyup', function(e) {
			var emClass = (regExpSpace.email.test(emailInput.getProperty('value')))?'mail_valid':'mail_invalid';
			
			if(String(emailInput.getProperty('value')).length > 0) {
				indicator.removeClass('mail_valid').removeClass('mail_invalid').addClass(emClass);
				indicator.setStyle('display', 'block');
			}
			else {
				indicator.setStyle('display', 'none');
			}
		});
		
		/* wyłącz odpowiednią opcję zapisania / wypisania */
		if(regExpSpace.hash.test(String(String(window.location).split('?')[1]).split('=')[1])) {
			$$('#nSubscr').setStyle('display', 'none');
			$$('#nUnsubscr').setStyle('display', 'block');
		}
		else {
			$$('#nSubscr').setStyle('display', 'block');
			$$('#nUnsubscr').setStyle('display', 'none');
		}
	});	
	
	
	/* podświetlanie elementów w footerze */
	$$('#footer').each(function(foot) {
		foot.getElements('a').each(function(a) {
			if(String(window.location.href).match(a.href)) {
				a.addClass('active');
			}
		});
	});

	$$('a.openNew, .homepage .openNew a').each(function(el) {
		el.addEvent('click', function(e) {
			var e = new Event(e); e.stop();
			var newWin = window.open(el.href);
		});
	});
	
	$$('.kochamymini .fbIcon').each(function(el) {
		el.addEvent('click', function(e) {
			var e = new Event(e); e.stop();
			var newWin = window.open(el.href);
			
			if(pageTracker) {
				 pageTracker._trackPageview('/kochamymini-fbshare/');
			}
		});		
	});
	
	/* animacje dla głównego menu */
	$$('#mainMenu2').each(function(menu) {
		$$('.mini, .cabrio, .clubman').each(function(ul) {

			var outerAnim = new Fx.Morph(ul.getElements('.layer')[0], { link: 'cancel', duration: 350, transition: Fx.Transitions.Sine.easeIn });
			
			ul.addEvent('mouseenter', function(e) {
				var e = new Event(e).stop();
				
				if(!ul.hasClass('opened') && !window.effectOnTheRun) {
					outerAnim.set({ display: 'block', 'opacity': 0, 'left': 4 });
					outerAnim.start({ 'opacity': 1 })
				}
			});
			
			ul.addEvent('mouseleave', function(e) {
				var e = new Event(e).stop();
				if(!ul.hasClass('opened') && !window.effectOnTheRun) {
					outerAnim.start({
						'opacity': 0
					}).chain(function() {
						outerAnim.set({'display': 'none'});
					});
				}
			});
			
			ul.addEvent('click', function(e) {
				var e = new Event(e).stop();
				if(this.hasClass('opened')) return true;
				
				window.effectOnTheRun = true;
				
				// najpierw schowaj inne otwarte menu
				$$('#mainMenu2 .opened').each(function(opened) {
					opened.setStyle('background-position', (opened.hasClass('cabrio')?'-100px 27px':'-100px 22px'));
					opened.getElements('li').setStyle('display', 'block');
					opened.removeClass('opened');
					
					(function() {
						// wyjedź z linkami
			    		var delayAmount = 0;
			    		opened.getElements('a').each(function(a) {
			    			(function() {
				    			var linkIn = new Fx.Morph(a, { duration: 250, transition: Fx.Transitions.Sine.easeOut });
				    			linkIn.start({ 'margin-left': [0, 200] }).chain(function() { a.setStyle('margin-left', -200); });
				    			a.addEvent('click', function(ev) { var ev = new Event(ev).stop(); window.location.href = a.href; });
			    			}).delay(delayAmount);
			    			delayAmount += 66;
			    		});
			    		// wjedź auticzkiem
			    		var ani = opened.getElement('img');
			    		var car = new Fx.Morph(ani.getParent(), { duration: 350, transition: Fx.Transitions.Sine.easeIn });
						
						car.start({ 'left': [-100, 4] }).chain(function() {
							ani.set('src', String(ani.src).replace(/_blur/, ''));
							opened.setStyle('background-position', '4px 22px');
							if(opened.hasClass('cabrio')) opened.setStyle('background-position', '4px 27px');
							car.start({ 'opacity': 0 }).chain(function () {
								ani.setStyles('display', 'none');
								window.effectOnTheRun = false;
							});
						});
					}).delay(750);
				});
				
				// zanimuj wyjazd samochodu i pojawienie się linków
				var anim = ul.getElements('.layer')[0];
				var carOut = new Fx.Morph(anim, { duration: 350, transition: Fx.Transitions.Sine.easeIn });
				
				(function() {
					window.effectOnTheRun = true;

					anim.getElement('img').set('src', '/images/menu_home/'+ul.get('class')+'_blur.gif');
					ul.getElements('a').setStyle('margin-left', -200);
					ul.toggleClass('opened');
						
					carOut.start({
						'left': [5, 200]
					}).chain( function () {
			    		/* pokaż elementy listy */
			    		var delayAmount = 0;
		    		
			    		ul.getElements('a').each(function(a) {
			    			(function() {
				    			var linkIn = new Fx.Morph(a, { duration: 250, transition: Fx.Transitions.Sine.easeOut });
				    			linkIn.start({
				    				'margin-left': [-200, 0]
				    			});
				    			a.addEvent('click', function(ev) { var ev = new Event(ev).stop(); window.location.href = a.href });
			    			}).delay(delayAmount);
			    			delayAmount += 100;
			    		});
			    		anim.setStyle('display', 'none');
						window.effectOnTheRun = false;
					});
				}).delay(100);
			});
		});
	});
	
	
	/* first-child hack */
	if(Browser.Engine.trident4) {
		$$('#dataTable tr').each(function(tr) { tr.getFirst('td').addClass('first-child'); });
	}
	
	/* opcje wyposażenia */
	$$('.switchedLeftPane').each(function(elm) {
		function filterData(option, range) {
			$$('#dataTable tr').each(function(tr) {
				var b1 = tr.getFirst().hasClass(option);
				var b2 = tr.getLast().hasClass(range);
				
				if((b1 && b2) || (option == 'equipment' && b2) || (b1 && range == 'all') || (option == 'equipment' && range == 'all')) {
					//tr.removeAttribute('style');
					tr.setStyles({'display': 'block'})
				}
				else {
					tr.setStyles({'display': 'none'})
				}
			});
		}
		
		
		// domyślna opcja
		window.activeOption = 'equipment';
		window.activeRange = 'all';
		
		// listy dropdown
		$$('#naviPane dt').each(function(el) {
			el.addEvent('click', function(e) {
				var e = new Event(e).stop();
				if(el.getParent().hasClass('opened')) {
					el.getParent().getParent().getElements('dl').each(function(elem) { elem.removeClass('opened'); })
					el.getParent().removeClass('opened');
				}
				else {
					el.getParent().getParent().getElements('dl').each(function(elem) { elem.removeClass('opened'); })
					el.getParent().addClass('opened');
				}
			});
		});
		
		$$('.chooseWhat a').each(function(a) {
			a.addEvent('click', function(e) {
				var e = new Event(e).stop();
				var action = String(a.href).split('#')[1];

				window.activeOption = action;
				filterData(action, window.activeRange);
				
				a.getParent().getParent().removeClass('opened');
				a.getParent().getParent().getElements('a').removeClass('active');
				a.addClass('active');
				a.getParent().getParent().getFirst().set('text', a.get('text'));
				
				zeroScroller('dataTable');
				updateScrollers();
			});
		});
		
		$$('.chooseWhich a').each(function(a) {
			a.addEvent('click', function(e) {
				var e = new Event(e).stop();
				var action = String(a.href).split('#')[1];
				
				window.activeRange = action;
				filterData(window.activeOption, action);
				
				a.getParent().getParent().removeClass('opened');
				a.getParent().getParent().getElements('a').removeClass('active');
				a.addClass('active');
				a.getParent().getParent().getFirst().getElement('img').set('src', '/images/checkbox_'+action+'.gif');
				
				updateScrollers();
			});
		});
	});
	
	/* pakiety opcjonalne */	
	$$('#packages').each(function(elm) {
		// wyczyść pusty pakiet
		if($$('#package_2 ul').length == 0) {
			$$('#.chooseWhat dt').addClass('single');
		}
		else {
			$$('.chooseWhat dt').each(function(el) {
				el.addEvent('click', function(e) {
					var e = new Event(e).stop();
					if(el.getParent().hasClass('opened')) {
						el.getParent().getParent().getElements('dl').each(function(elem) { elem.removeClass('opened'); })
						el.getParent().removeClass('opened');
					}
					else {
						el.getParent().getParent().getElements('dl').each(function(elem) { elem.removeClass('opened'); })
						el.getParent().addClass('opened');
					}
				});
			});
			
			$$('.chooseWhat a').each(function(a) {
				a.addEvent('click', function(e) {
					var e = new Event(e).stop();
					var action = String(a.href).split('#')[1];
					$$('#packages .scroller_main, .options').setStyles({'display': 'none'});
					
					var element = $$('#'+action);
					if(element.getParent().hasClass('scroller_content')) {
						element.getParent().getParent().setStyles({'display':'block'});
					}
					element.setStyles({'display':'block'});
	
					a.getParent().getParent().getFirst().set('text', a.get('text'));
					a.getParent().getParent().removeClass('opened');
					
					zeroScroller('options');
					addScrollers('document');
				});
			});
		}
	});
	
	/* condition based service */
	$$('.cbs').each(function(cbs) {
		$$('.switchList a').each(function(a) {
			a.addEvent('click', function(e) {
				var e = new Event(e).stop();
				var href = String(a.href).split('#')[1];
				$$('#topic_1, #topic_2, #topic_3, #topic_4, #topic_5').setStyles({ 'display': 'none'});
				$$('.imgSwitch img').setStyles({ 'display': 'none'});
				$$('#'+href+'_img').setStyles({'display': 'block'});
				$$('#'+href).setStyles({'display': 'block'});
				$$('.switchList a').removeClass('active');
				a.addClass('active');
				makeFonts();
				addScrollers('document');
			});
		});
	});

	
	
	/* obsługa danych technicznych */
	$$('.techData #dataContainer').each(function(elmnt) {
		var baseModel = String($$('.techData .model').get('text'));
		
		var req = new Request({
			url: '/tools/miniData.php',
			method:'post',
			data: {
				action: 'technical',
				base: baseModel,
				print: 0
			},
			onSuccess: function(data) {
				$('dataContainer').set('html', data);
				addScrollers('document');
			}
		});
		req.send();
	});
	
	/* print data */
	$$('#print').each(function(print) {
		print.addEvent('click', function(e) {
			var e = new Event(e).stop();
			var model = String($$('.techData .model').get('text'));
			
			var req = new Request({
				url: '/tools/printdata.html',
				onSuccess: function(data) {
					var page = data.replace(/%MODEL%/g, model);
					
					var inReq = new Request({
						url: '/tools/miniData.php',
						method:'post',
						data: {
							action: 'technical',
							base: model,
							print: 1
						},
						onSuccess: function(inData) {
							page = page.replace(/%DANE%/g, inData);
							var danePopup = window.open('', 'Dane');
							
							if(danePopup == null) {
								alert('Należy wyłączyć blokowanie wyskakujących okienek aby kontynuować.');
								return;
							}
							
							var tmp = danePopup.document;
							tmp.writeln(page);
							tmp.close();
						}
					});
					inReq.send();
				}
			});
			req.send();

		});
	});	
	
	
	
	
	
	
	// porównanie danych technicznych modeli i pakietów
	$$('.comparison #dataContainer').each(function(elmnt) {
		
		/* listy dropdown */
		$$('.chooseWhat dt, .chooseWhich dt').each(function(el) {
			el.addEvent('click', function(e) {
				var e = new Event(e).stop();
				if(el.getParent().hasClass('opened')) {
					el.getParent().getParent().getElements('dl').each(function(elem) { elem.removeClass('opened'); })
					el.getParent().removeClass('opened');
				}
				else {
					el.getParent().getParent().getElements('dl').each(function(elem) { elem.removeClass('opened'); })
					el.getParent().addClass('opened');
					addScrollers('document');
				}
			});
		});
		
		$$('.chooseWhat a, .chooseWhich a').each(function(a) {
			a.addEvent('click', function(e) {
				var e = new Event(e).stop();
				var model_id = a.getParent().getParent().id;
				var model_name = a.get('text');
				
				a.getParent().getParent().getElements('a.active').removeClass('active');
				a.addClass('active');
				
				var baseModel = String($$('#model_1 a.active').get('text'));
				var model_2 = String($$('#model_2 a.active').get('text'));
				var model_3 = String($$('#model_3 a.active').get('text'));
				var range = String($$('.equipment .chooseWhich a.active').get('href')).split('#')[1];
				var url = ($$('.equipment').length == 0)?'/tools/miniData.php':'/tools/packageData.php';
				var sort = ($$('.equipment').length == 0)?null:'asc';
				
				var req = new Request({
					url: url,
					method:'post',
					data: {
						action: 'compare',
						base: baseModel,
						model_2: model_2,
						model_3: model_3,
						range: range,
						sort: sort
					},
					onSuccess: function(data) {
						$('dataContainer').set('html', data);
						window.setTimeout('zeroScroller("cmprsn");', 500);
					}
				});
				req.send();

				$$('#'+model_id+'_img').each(function(img) {
					var img_name = "/images/comparison/"+String(a.href).split('#')[1]+'.jpg';
					img.set('src', img_name);
				});
				
				$$('.chooseWhat dt, .chooseWhich dt').each(function(dt) {
					var text = dt.getParent().getElements('a.active').get('text');
					dt.set('text', (text == '')?'Wybierz model':text);
					dt.getParent().removeClass('opened');
				});
			});
		});
		
		var url = ($$('.equipment').length == 0)?'/tools/miniData.php':'/tools/packageData.php';
		var req = new Request({
			url: url,
			method:'post',
			data: {
				action: 'compare',
				base: "MINI Cooper",
				sort: ($$('.equipment').length == 0)?null:'asc'
			},
			onSuccess: function(data) {
				$('dataContainer').set('html', data);
				addScrollers('document');
			}
		});
		req.send();
	});	
	
	/* koniec obsługi danych technicznych */
	
	/* roominess - przestrzeń załadunkowa */
	$$('#context .roomLink a').each(function(area) {
		var source = area.href;
		var text = String(area.id).substring(2);
		
		//
		area.setStyles({'cursor':'default'});
		
		area.addEvent('click', function(e) {
			var e = new Event(e).stop();
			$('mainImage').set('src', source);
			$$('#context div').setStyles({'display': 'none'});
			$$('#'+text).setStyles({'display': 'block'});
		});	
	});
	/* koniec przestrzeni załadunkowej */
	
	if(typeof(addScrollers) == 'function') {
		window.setTimeout("addScrollers('document');", 10);
	}
	
});