var Page = function(){ var that = this; this.init = function(){ //this.initSlider(); this.initSlider2(); this.initNewsBox(); this.initMenuLength(); this.BottomBoxInit(); this.initDictionary(); this.initContactForm(); } this.initSlider2= function(){ $('#slide > div').hide(); var boxes = $('#slide > div'); var force = false; var stop = false; var navigation = $(''); for(var i=1; i<=boxes.size(); i++){ navigation.append(''+i+''); } $('#slide').append(navigation); var navLink = navigation.find('a'); navLink.click(function(){ stop = true; showImage($(this).attr('rel'), true); return false; }); var box; lastI = -1; function showImage(i, force){ if(stop && !force)return false; i = i-1; if(i >= boxes.size()) i=0; boxes.hide(); box = boxes.eq(i); box.show().find('img').css('opacity', 0); box.find('img').animate({ 'opacity': '1' },1000,'linear'); lastI = i; //box.find('img').css('marginLeft', '-10px').css('marginTop', '-10px'); /* box.find('img').animate({ 'marginLeft': '10px', 'marginTop': '10px' }, 5000); */ navLink.removeClass('active'); navLink.eq(i).addClass('active'); if(stop)return false; window.setTimeout(function(){ i++; i++; showImage(i); }, 8000); } showImage(1); } this.initContactForm = function(){ var form = $('#contactForm') if(form.length <= 0)return false; var validField = function(field){ var type = field.attr('id'); var valid = true; var value = field.val(); if(type == 'form_data_phone'){ if(!value.isPhone()) valid = false; } if(type == 'form_data_email'){ if(!value.isEmail()) valid = false; } if(value.length <= 2) valid = false; if(valid) field.parent().find('.valid').removeClass('ok_gray').addClass('ok'); else field.parent().find('.valid').removeClass('ok').addClass('ok_gray'); } form.find('input[type=text]:first').focus(); form.find('input[type=text], textarea').each(function(){ $(this).parent().append('
'); $(this).keyup(function(){ validField($(this)); }); }); form.find('input[type=submit]').click(function(){ var alertMessage = "Wypełnij poprawnie formularz"; form.find('.ok_gray').each(function(){ alertMessage += "\n - "+$.trim($(this).parent().find('label').html()); }); form.find('.ok_gray:first').parent().find('input').focus(); if(form.find('.ok_gray').size() > 0){ alert(alertMessage); return false; } }); } this.initSlider = function(){ var box = $('#slide') if(box.find('img').size() <= 0)return false; var images = $('#slide > img'); images.css('opacity', '0').show(); var stop = false; var imagesNavigation = $('#slide .navigation img'); imagesNavigation.css('opacity', 0.2); function showImage(i, force){ if(stop && !force)return false; images.css('opacity', '0'); i = i-1; imagesNavigation.css('opacity', 0.2); if(i >= images.size()) i=0; images.eq(i).animate({ 'opacity': '1' },500); imagesNavigation.eq(i).css('opacity', 1); if(stop)return false; window.setTimeout(function(){ i++; i++; showImage(i); }, 5000); } showImage(1); // for(var j=1; j<=imagesNavigation.size(); j++){ imagesNavigation.eq(j-1).attr('rel', j); } imagesNavigation.click(function(){ stop = true; showImage($(this).attr('rel'), true); }); imagesNavigation.hover(function(){ if($(this).css('opacity') != 1) $(this).addClass('backTo'); $(this).css('opacity', '1'); }, function(){ if($(this).hasClass('backTo')) $(this).css('opacity', 0.2); $(this).removeClass('backTo'); }).click(function(){ $(this).css('opacity', '1'); $(this).removeClass('backTo'); }); window.onload = function(){ var left = ($('#slide').width()-$('#slide .navigation').width())/2; $('#slide .navigation').css('left', left+'px'); }; } this.initDictionary = function(){ //$('#menuSubPage').find('a:contains("Słownik")').addClass('active'); var box = $("#dictionary"); box.show(); box.find('ul').hide(); $('#sidebar').height('auto'); this.initMenuLength(); var navigation = $(''); var words = $('
'); navigation.appendTo(box); words.appendTo(box); var tmp; var selectLetter = function(letter){ navigation.find('.active').removeClass('active'); var tmp = box.find('#dictionary_letter_'+letter+' ul').clone().show(); words.html(tmp); }; box.find('.letter > strong').each(function(){ tmp = $.trim($(this).html()); navigation.append(''+tmp+''); }); navigation.find('a').click(function(){ selectLetter($(this).attr('rel')); $(this).addClass('active'); return false; }); if(box.find('.letter.active > strong').html()){ var tmp = box.find('.letter.active strong').html() navigation.find('[rel='+tmp+']').click(); return false; }else{ navigation.find('a:first').click(); } } this.initNewsBox = function(){ var box = $('#newsBox'); box.find('li').click(function(){ box.find('.active').removeClass('active'); box.find('[rel='+$(this).attr('rel')+']').addClass('active'); }); } this.BottomBoxInit = function(){ $('#bottomBox .box').each(function(){ that.BottomBoxDo($(this)); }); } this.BottomBoxDo = function(box){ var title = $.trim(box.find('.title').html()); var data = box.find('.data div'); var navigation = box.find('.navigation').hide(); var selectedData = 1; var dataSize = data.size(); var select = function(i){ box.find('.title').html(''+data.eq(i-1).find('p:first').html()+''); box.find('.description').html(data.eq(i-1).find('p:last').html()); navigation.find('.active').removeClass('active'); navigation.find('a:contains('+i+')').addClass('active'); } navigation.find('.prev').click(function(){ selectedData = selectedData-1; if(selectedData <= 0) selectedData = dataSize; select(selectedData); return false; }); navigation.find('.next').click(function(){ selectedData = selectedData+1; if(selectedData > dataSize) selectedData = 1; select(selectedData); return false; }); var link; for(var i=1; i<=dataSize; i++){ $(''+i+'').click(function(){ select($(this).html()); return false; }).appendTo(navigation); } select(selectedData); box.find('.navigation').show(); } this.initMenuLength = function(){ if($('#subPageContainer').length == 0)return; if($('#content').height() > $('#sidebar').height()) $('#sidebar').height($('#content').height()); } } String.prototype.isPhone = function() { var s = this; var r=true;var g="0123456789()-+ ";for(var i=0;i<=s.length-1;i++){if(g.indexOf(s.charAt(i))<0){r=false;}} if(r){ var l = 0;var g="0123456789";for(var i=0;i<=s.length-1;i++){if(g.indexOf(s.charAt(i))>=0){l++;}} if(l<9)r=false; } return r; }; String.prototype.isEmail = function() { var regexp = /^([a-zA-Z0-9_.\-+])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; return regexp.test(this); }; $(document).ready(function(){ var p = new Page; p.init(); });