var window_width = 0; var window_height = 0; var click_type = 'click'; // main click event for mouse or touch events var sliders = new Array(); // array with sliders handlers function addToFavourites() { var browser = navigator.browserTypeVersion; if (browser[0] == "Firefox" && browser[1] >= 23) { alert(atf_error1); } else { if (window.sidebar) { window.sidebar.addPanel(atf_title, atf_address, ""); } else if (window.external) { window.external.AddFavorite(atf_address, atf_title); } else { alert(atf_error1); } } } function changeFontSize(value) { var ele1 = jQuery('#content_font_size'); switch (value) { case 'increase': if (umws_rpo_font_size + 1 <= 5) { ele1.removeClass('font_size' + umws_rpo_font_size); umws_rpo_font_size++; ele1.addClass('font_size' + umws_rpo_font_size); } break; case 'decrease': if (umws_rpo_font_size - 1 >= 1) { ele1.removeClass('font_size' + umws_rpo_font_size); umws_rpo_font_size--; ele1.addClass('font_size' + umws_rpo_font_size); } break; default: ele1.removeClass('font_size' + umws_rpo_font_size); umws_rpo_font_size = 3; ele1.addClass('font_size' + umws_rpo_font_size); } jQuery.cookie('umws_rpo_font_size', umws_rpo_font_size, { duration: 365, path: '/' }); } function changeContrast() { if (umws_rpo_contrast == 1) { umws_rpo_contrast = 2; } else { umws_rpo_contrast = 1; } jQuery("link[title='contrast']").attr("href", contrast_url + umws_rpo_contrast + '.css'); jQuery.cookie('umws_rpo_contrast', umws_rpo_contrast, { duration: 365, path: '/' }); } navigator.browserTypeVersion = (function(){ var ua = navigator.userAgent, tem, M = ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*([\d\.]+)/i) || []; if(/trident/i.test(M[1])){ tem = /\brv[ :]+(\d+(\.\d+)?)/g.exec(ua) || []; return 'IE '+(tem[1] || ''); } M = M[2]? [M[1], M[2]]:[navigator.appName, navigator.appVersion, '-?']; if ((tem = ua.match(/version\/([\.\d]+)/i)) != null) { M[2] = tem[1]; } M[1] = parseInt(M[1]); return M; })(); // -------------------------- sidebar var sidebar_dir = 1; var sidebar_side = 'left'; var sidebar_width = 260; var sidebar_anim = 'js'; // default, but can be: translate (css3), js (jquery), static (simple css) var sidebar_content = true; // move also content div? function containerConfig() { // set content1 div width jQuery('#content1').css('width', window_width + 'px'); } function sidebarAnimate(element, anim_type, anim_property, property_value) { if (anim_type == 'translate') { // css3 animation jQuery(element).css('transform', 'translate('+ property_value +')'); } else if (anim_type == 'js') { // javascript (jquery) var anim_properties = {}; anim_properties[anim_property] = property_value; jQuery(element).stop().animate(anim_properties); } else { // simple css jQuery(element).css(anim_property, property_value); } } function sidebarReset(element, anim_type) { if (anim_type == 'translate') { // css3 animation jQuery(element).css('transform', 'translate(0)'); } else { jQuery(element).css('margin-'+ sidebar_side, 0); } sidebar_dir = 1; } // -------------------------- dropdown tools mechanics function toolsToggle(el, anim_time, hide_slibs) { var curr_id = el.attr('id'); var el_ctrled = jQuery('#'+ el.attr('aria-controls')); if (el.hasClass('el_ctrl_active')) { el.removeClass('el_ctrl_active'); el_ctrled.stop().slideUp(anim_time, 'easeInOutExpo').attr('aria-expanded', 'false'); } else { //check if controlled element is not higher then window height // if so then set its height and add scrollbar var available_height = window_height - jQuery('#tools').height() - jQuery('#nav_main > ul').height() - 50; if (el_ctrled.height() > available_height) { el_ctrled.css('height', available_height +'px'); el_ctrled.css('overflow', 'auto'); } el.addClass('el_ctrl_active'); el_ctrled.stop().slideDown(anim_time, 'easeInOutExpo').attr('aria-expanded', 'true'); //el_controlled.stop().animate({ height: 30 }, 600); } // hide other buttons if required and active if (hide_slibs == true) { jQuery('.tools_toggler.el_ctrl_active').not(el).each(function() { var el_sib = jQuery(this); if (el_sib.hasClass('el_ctrl_active')) { var curr_id_sib = el_sib.attr('id'); var el_sib_ctrled = jQuery('#'+ el_sib.attr('aria-controls')); el_sib.removeClass('el_ctrl_active'); el_sib_ctrled.stop().slideUp(anim_time, 'easeInOutExpo').attr('aria-expanded', 'false'); } }); } } // focus on search field function toolsSrchFocus() { toolsBtnClick(jQuery('#tools_btn_srch'), 0, true); jQuery('#tools_srch_word').focus(); } // ------------------------- glob: elements show/hide mechanics function elControlledToggle(el, anim_time) { // el_ctrled - controlled element var el_ctrled = jQuery('#'+ el.attr('aria-controls')); if (el_ctrled.attr('aria-expanded') == 'false') { elControlledShow(el, anim_time); } else { elControlledHide(el, anim_time); } } function elControlledShow(el, anim_time) { // el_ctrled - controlled element var el_ctrled = jQuery('#'+ el.attr('aria-controls')); // only if not expanded (active) if (el_ctrled.attr('aria-expanded') != 'true') { el_ctrled.stop().slideDown(anim_time, 'easeInOutExpo').attr('aria-expanded', 'true'); // add active CSS class to element that active this element el.addClass('el_ctrl_active'); // move focus to the region //el_ctrled.focus(); } } function elControlledHide(el, anim_time) { // el_ctrled - controlled element var el_ctrled_name = el.attr('aria-controls'); var el_ctrled = jQuery('#'+ el_ctrled_name); // only if expanded (active) if (el_ctrled.attr('aria-expanded') == 'true') { el_ctrled.stop().slideUp(anim_time, 'easeInOutExpo').attr('aria-expanded', 'false'); // remove active CSS class for all buttons that controlls element and set them as ARIA inactive jQuery('button[aria-controls="'+ el_ctrled_name +'"][class*="el_ctrl_active"]').removeClass('el_ctrl_active'); } } // ------------------------- after page load function afterPageLoad() { // ------------------------- SLIDERS // lightSlider: rebuild mechanics for WCAG if (jQuery('.slr_ls1').length == 1) { jQuery('.slr_ls1').each(function() { var el = this; // get slider id var slider_id = jQuery('ul.lightSlider', el).attr('id'); // add elements/attributes for WCAG/ARIA; hide from focus jQuery('.lSPrev', el).attr('title', TEXT_MP_FLASHNEWS_PREVIOUS).attr('tabindex', -1); jQuery('.lSNext', el).attr('title', TEXT_MP_FLASHNEWS_NEXT).attr('tabindex', -1); // add tablist role var lSPager_counter = 1; jQuery('ul.lSPager a', el).each(function() { // attributes for all tabs var lSPager_attrs = { 'id': 'mp_fn1_tab'+ lSPager_counter, 'aria-controls': 'mp_fn1_panel'+ lSPager_counter, 'title': TEXT_MP_FLASHNEWS_SHOW_INFO_NUMBER +' '+ lSPager_counter }; jQuery(this).attr(lSPager_attrs); // hide from focus jQuery(this).attr('tabindex', -1); lSPager_counter++; }); jQuery('li:first header a, li:last header a', el).on('focusin', function() { // only if li index is bigger than 0 // get li element var mp_fn1_li = jQuery(this).closest('li'); // get curr li index var mp_fn1_li_index = mp_fn1_li.index(); // run slider mechanics sliders[slider_id].jumpToSlide(mp_fn1_li_index); //jQuery(mp_fn1_li).find('header a').focus(); }); jQuery('li header a', el).on('keydown', function(event) { // move slider before focus; we need to know direction // Tab + Shift if ((event.keyCode || event.which) == 9 && event.shiftKey) { // only if li index is bigger than 0 // get li element var mp_fn1_li = jQuery(this).closest('li'); // get curr li index var mp_fn1_li_index = mp_fn1_li.index(); // do nothing if this is first slide if (mp_fn1_li_index > 0) { mp_fn1_li_index -= 1; // decrease for prev Tab // run slider mechanics sliders[slider_id].jumpToSlide(mp_fn1_li_index); // make sure focus is on current title //jQuery(mp_fn1_li).find('header a').focus(); } } // Tab else if ((event.keyCode || event.which) == 9) { // get amount of li elements var mp_fn1_lis = jQuery('li', el).length; // get li element var mp_fn1_li = jQuery(this).closest('li'); // get curr li index var mp_fn1_li_index = mp_fn1_li.index(); // do nothing if this is last slide if (mp_fn1_li_index < (mp_fn1_lis - 1)) { mp_fn1_li_index += 1; // increase for next Tab // run slider mechanics sliders[slider_id].jumpToSlide(mp_fn1_li_index); // make sure focus is on current title //jQuery(mp_fn1_li).find('header a').focus(); } } else { } }); }); } } jQuery(document).ready(function() { // ------------------------- checks & config window_width = jQuery(window).width(); window_height = jQuery(window).height(); // check if touch device if (Modernizr.touch) { click_type = 'touchend'; } // ------------------------- mobile extra check var ua = navigator.userAgent, // Get user agent string. android = false, // Variable for storing android version. iOS = false; // Variable for storing iOS version. if (/Android/.test(ua)) { // Detect Android in user agent string. android = ua.substr(ua.indexOf('Android')+8, 3); // Set version of Android. } else if (/(iPhone|iPod|iPad)/.test(ua)) { // Detect iOS in user agent string. iOS = ua.substr(ua.indexOf('OS ')+3, 3).replace('_', '.'); // Set version of iOS. } // ------------------------- tools // dropdown tools togglers jQuery('.tools_toggler').on(click_type, function() { toolsToggle(jQuery(this), 500, true); }); //jQuery('.tools_tb1 .hdrs_close').on(click_type, function() { // var el = jQuery('#'+ jQuery(this).attr('aria-controls') +'_btn'); // toolsBtnClick(el, 500, true); //}); // print jQuery('#tools_print_btn').on(click_type, function() { var href = jQuery(location).attr('href'); if (jQuery(location).attr('search') != '') { href += '&tmpl=print&print=1'; } else { href += '?tmpl=print&print=1'; } window.open(href, 'print', 'status=no, toolbar=no, scrollbars=yes, titlebar=no, menubar=no, resizable=yes, width=640, height=480, directories=no, location=no'); return false; }); // back to prev page jQuery('#tools_back_btn').on(click_type, function() { history.go(-1); return false; }); // back to top jQuery('#tools_btt_btn').on(click_type, function() { var scroll_top = jQuery(window).scrollTop(); if (scroll_top > 0) { jQuery('html, body').animate({ scrollTop: 0 }, 500, 'easeInOutExpo'); jQuery('html').focus(); } return false; }); // ------------------------- sidebar nav // TODO: PA - make it better & move to plugin // check for CSS3 translate support if (Modernizr.csstransforms && Modernizr.csstransitions) { sidebar_anim = 'translate'; } // ... and for old android if (android && android < 4.4) { sidebar_anim = 'static'; } // after window is resized jQuery(window).resize( function(){ // store new width window_width = jQuery(window).width(); window_height = jQuery(window).height(); containerConfig(); }); containerConfig(); // ------------------------- toggle elements // toggle buttons 1 jQuery('.btn_ctrls1').on(click_type, function(evt) { elControlledToggle(jQuery(this), 500); }); // close buttons 1 jQuery('.btn_close1').on(click_type, function(evt) { elControlledHide(jQuery(this), 400); }); // ------------------------- mp: programm 2 list jQuery('#mp_funds2_btn1').on(click_type, function(evt) { var el_ctrl = jQuery('#'+ jQuery(this).attr('aria-controls')); if (el_ctrl.attr('aria-expanded') == 'false') { el_ctrl.stop().slideDown(500, 'easeInOutExpo').attr('aria-expanded', 'true'); jQuery('#mp_funds2_btn1_on').stop().fadeOut(500); } else { el_ctrl.stop().slideUp(500, 'easeInOutExpo').attr('aria-expanded', 'false'); jQuery('#mp_funds2_btn1_on').stop().fadeIn(500); } }); // ------------------------- main navigation var nav_main = jQuery('#nav_main').paRdm({ activate_btn_id: 'main_menu_toggler', activate_btn_add_top: jQuery('#tools').height(), paRdmAfterActiveNav: function (menu_type_curr) { // dropdown if (menu_type_curr == 'drop') { // hide fast all submenus nav_main.data('PaRdm').hideFastAllSubmenus(); // set handlers var pa_rdm_nav_el = jQuery('#nav_main'); var pa_rdm_btn_el = jQuery('#main_menu_toggler'); // position under toolbar var pa_rdm_toolbar_pos = pa_rdm_btn_el.outerHeight() - pa_rdm_nav_el.outerHeight(); if (pa_rdm_nav_el.hasClass('pa_rdm_nav_active')) { // menu is active // move under toolbar; remove active class after animation pa_rdm_nav_el.animate({ top: pa_rdm_toolbar_pos +'px' }, 200, function() { // remove CSS class pa_rdm_nav_el.removeClass('pa_rdm_nav_active'); // set base deactive position pa_rdm_nav_el.css({ top: pa_rdm_btn_el.outerHeight() +'px' }); }); } else { //alert(pa_rdm_btn_el.outerHeight()); // not active // add CSS class pa_rdm_nav_el.addClass('pa_rdm_nav_active'); // set position under toolbar pa_rdm_nav_el.css({ top: pa_rdm_toolbar_pos +'px' }); // run animation: place under toolbar var pa_rdm_nav_pos_top = pa_rdm_btn_el.position().top + pa_rdm_btn_el.outerHeight(); pa_rdm_nav_el.animate({ top: pa_rdm_nav_pos_top +'px' }, 200); // focus on first link pa_rdm_nav_el.find('a').first().focus(); } } // slidedown if (menu_type_curr == 'slide') { var sidebar1_nav1_box = jQuery('#nav_main'); var content1_box = jQuery('#content1'); if (sidebar_dir == 1) { // set property value - css translate requires just distance in px property_value = '0px'; if (sidebar_anim == 'translate') { property_value = sidebar_width +'px'; } sidebarAnimate('#nav_main', sidebar_anim, 'margin-'+ sidebar_side, property_value); if (sidebar_content == true) { property_value = sidebar_width +'px'; sidebarAnimate('#content1', sidebar_anim, 'margin-'+ sidebar_side, property_value); } sidebar_dir = 2; } else { // set property value - css translate requires just distance in px property_value = '0px'; if (sidebar_anim != 'translate') { property_value = '-'+ sidebar_width +'px'; } sidebarAnimate('#nav_main', sidebar_anim, 'margin-'+ sidebar_side, property_value); if (sidebar_content == true) { property_value = '0px'; sidebarAnimate('#content1', sidebar_anim, 'margin-'+ sidebar_side, property_value); } sidebar_dir = 1; } } }, paRdmAfterTypeChange: function (menu_type_curr) { // menu changed for drop type if (menu_type_curr == 'drop') { sidebarReset('#nav_main', sidebar_anim); sidebarReset('#content1', sidebar_anim); } } }); // ------------------------- tooltips (qtip2) /* jQuery(".tooltip_tm1").qtip({ position: { my: 'bottom center', at: 'top center', adjust: { y: -2 } }, style: { classes: 'qtip-tipsy' } }); jQuery(".tooltip_tr1").qtip({ position: { my: 'bottom left', at: 'top center', adjust: { x: 0, y: -3 } }, style: { classes: 'qtip-tipsy' } }); jQuery(".tooltip_tl1").qtip({ position: { my: 'bottom right', at: 'top center', adjust: { x: 0, y: -3 } }, style: { classes: 'qtip-tipsy' } }); jQuery(".tooltip_bm1").qtip({ position: { my: 'top center', at: 'bottom center', adjust: { x: 0, y: 5 } }, style: { classes: 'qtip-tipsy' } }); */ // ------------------------- search jQuery(".nag_szu_przycisk1, .nag_szu_przycisk3").on(click_type, function() { if (!jQuery("#nag_szu1").val() || jQuery("#nag_szu1").val() == szukaj_tekst) { alert(szukaj_blad1); } else { jQuery("#szukaj1").submit(); } }); jQuery("#fszukaj1").focus(function() { if (szukaj_tekst == jQuery(this).val()) { jQuery(this).val(''); } }); jQuery("#fszukaj1").blur(function() { if (jQuery.trim(jQuery(this).val()) == "") { jQuery(this).val(szukaj_tekst); } }); jQuery(".sr_szukaj1").on(click_type, function() { if (!jQuery("#fszukaj1").val() || jQuery("#fszukaj1").val() == szukaj_tekst) { alert(szukaj_blad1); } else { jQuery("#searchForm").submit(); } }); // ------------------------- jquery prettyphoto jQuery("a[rel^='prettyPhoto']").prettyPhoto({ deeplinking: false, markup: '
\ ', gallery_markup: '', inline_markup: '', social_tools: '' }); });