$.fn.sanitize_poll = function(options) {
  return this.each(function() {
    var elem = $(this);
    if (elem.find('input').length > 0) 
      $.fn.sanitize_poll.before(elem, options);
    else
      $.fn.sanitize_poll.after(elem, options);
    options.callback();
  });
}

$.fn.sanitize_poll.before = function(elem, options) {
  var elemp = elem;
  elem = elem.find('form').eq(0);
  elem.find('input[type=image]').remove();
  var id = elem.attr('id');
  var title = '<strong>'+elem.find('b').eq(0).html()+'</strong>';

  var hid = elem.find('input[type=hidden]');
  var hids = [];
  hid.each(function() {
    var e = $(this);
    hids.push('<input type="hidden" name="'+e.attr('name')+'" value="'+e.attr('value')+'" />');
  });
  hids.push('<input type="hidden" name="glosuj.x" value="1" />');
  hids.push('<input type="hidden" name="glosuj.y" value="1" />');

  var htm = elem.html().split(/<[iI][nN][pP][uU][tT][^>]+odpowiedz[^>]*>/)
  var htm_l = htm.length;
  var thtm = '';
  var opts = [];
  for (var i = 1; i < htm_l; i++) {
    var j = i - 1;
    var inhtm = '<input type="radio" name="odpowiedz" value="'+j+'" id="'+id+'_opt_'+j+'" />';
    inhtm += '<label for="'+id+'_opt_'+j+'">'+htm[i].split('<br').shift()+'</label>';
    opts.push(inhtm);
  }

  var outhtm = '<fieldset>';
  outhtm += title;
  outhtm += hids.join('');
  outhtm += '<ul><li>';
  outhtm += opts.join('</li><li>');
  outhtm += '</li></ul>';
  outhtm += '<div><input type="image" src="'+options.img_src+'" alt="'+options.img_alt+'" /></div>';
  outhtm += '</fieldset>';

  elemp.addClass(options.class_vote);
 
  elem.html(outhtm);
}

$.fn.sanitize_poll.after = function(elem, options) {
  var ob = elem.find('b');
  var ob_l = ob.length;
  var title = '<strong>'+ob.eq(0).html()+'</strong>';
  var votes = '<p>'+options.all_votes+' <strong>'+ob.eq(ob_l - 1).html()+'</strong></p>';
  var perc = [];

  for (var i = 1; i < ob_l - 1; i++) {
    perc.push(ob.eq(i).html());
  }

  var imgs = [];
  var img_m = elem.html().match(/<[iI][mM][gG][^>]+>/g);
  for (var i = 0; i < img_m.length; i++) {
    var img_w = parseInt(img_m[i].match(/width([^ ]+)/)[1].match(/[0-9]+/).pop());
    imgs.push('<span style="width:'+img_w+'px;"></span>');
  }

  elem.find('b,span').remove();
  var tmpary = elem.html().split(/<[bB][rR][^>]*>/);
  var captions = [];
  var tmpary_l = tmpary.length;
  var thtm = '';
  for (var i = 1; i < tmpary_l; i++) {
    var cpt = $.trim(tmpary[i]);
    if (cpt != '') captions.push(cpt);
  }

  var elems = [];
  var elems_l = perc.length;
  for (var i = 0; i < elems_l; i++) {
    elems.push('<em>'+perc[i]+'</em>'+imgs[i]+'<p>'+captions[i]+'</p>');
  }

  var outhtm = title;
  outhtm += '<ul><li>';
  outhtm += elems.join('</li><li>');
  outhtm += '</li></ul>';
  outhtm += votes;

  elem.addClass(options.class_results);
  elem.html(outhtm);
}

$(document).ready(function() {
	// sondaz
	  if ($('.SONwrp2').length > 0)
		$('.SONwrp2').sanitize_poll({
		  img_src: 'http://bi.gazeta.pl/i/obrazki/wysokieobcasy/glosuj.gif', 
		  img_alt: 'głosuj', 
		  class_vote: 'voting',
		  class_results: 'results',
		  all_votes: 'Liczba oddanych głosów:',
		  callback: function() { $('.SONwrp2').css({ display: 'block' }); }
		});
	$('img.SONimg').prependTo($('.SONwrp fieldset'));
	$('.SONwrp').prepend("<h2>Sondaż</h2>");
	
	// nawigacja
	$('#navH li').gazeta(gfunc.nav, {
		nextClass: 'nextClass',
		prevClass: 'prevClass'
	}); 

 
	// przewijak
    $('.mod_zr_tok4').gazeta(gfunc.slider, {
		slide: 300,
		offset: -280,
		selectors: {
		  bodyOuter: ".node_entries",
		  bodyInner: ".node_inner_entries",
		  bodyElems: ".node_entry",
		  buttonPrev: ".node_prev a",
		  buttonNext: ".node_next a"
		}
   });
   
   //przewijak indeksowy
	$('.indeks_przewijak').prepend('<div class="node_prev"><a href="#"></a></div>');
	$('.indeks_przewijak').append('<div class="node_next"><a href="#"></a></div>');
	$('.indeks_przewijak').gazeta(gfunc.slider, {
		slide: 300,
		offset: -280,
		selectors: {
		  bodyOuter: ".body",
		  bodyInner: ".body ul:first",
		  bodyElems: "li.entry",
		  buttonPrev: ".node_prev a",
		  buttonNext: ".node_next a"
		}
	});
	
	// popup radiowy nad nawigacja
      $('#navtop_wrap .mod_zrRadio .node_he .sluchaj a').click(function(e){
       e.preventDefault();
       var _r = $(this).parents('.mod_zrRadio');
       if(_r.find('.node_bo').css('display') == 'none'){
        _r.find('.node_bo').css({'display': 'block'});
       }else{
        _r.find('.node_bo').css({'display': 'none'});
       }
      });
	$('#navtop_wrap .mod_zrRadio .tubaFM a').click(function(e){
	  e.preventDefault();
	  window.open($(this).attr('href'), 'radio_popup','menubar=0,resizable=0,status=0,scrollbars=0,width=712,height=650');
	});

      //breaking news
      $('.mod_zr_breaking_news .close a').click(function(e){
        e.preventDefault();
        $(this).parents('.mod_zr_breaking_news').hide();
      });

       // search
	 var selOptionsLength = $('#searchH_sel option').length;
	 if(selOptionsLength > 0) {

	  var searchHTML = '<div class="searchSel0"><div class="arrow"></div><ul>';

	  //check for active element if not specified get first
	  var activeSearch = $('#searchH_sel option').eq(0);
	  if($('#searchH_sel option:selected').length > 0){
	   activeSearch =  $('#searchH_sel option:selected')
	  }
	  searchHTML += '<li class="selectedVal"><a href="#" class="selectedVal" alt="'+activeSearch.attr("value")+'">'+activeSearch.text()+'</a></li>';

        $('#VE_szukaj_id').each(function(){
         if($.trim($(this).val()) != ''){
          $(this).addClass('hasQuery');
         }else{
          $(this).removeClass('hasQuery');
         }
        }); 

        $('#VE_szukaj_id').addClass(activeSearch.attr("value"));
	  
	  // loop trough services select and create proprer html
	  for(var i = 0; i < selOptionsLength; i++){
	   var currentOption = $('#searchH_sel option').eq(i);
         if(i == 0){
	    searchHTML += '<li class="first '+currentOption.attr("value")+'"><a href="#" class="'+currentOption.attr("value")+'" alt="'+currentOption.attr("value")+'"><span>'+currentOption.text()+'</span></a></li>';
         }else{
          searchHTML += '<li class="'+currentOption.attr("value")+'"><a href="#" class="'+currentOption.attr("value")+'" alt="'+currentOption.attr("value")+'"><span>'+currentOption.text()+'</span></a></li>';
         }
	  }

	  searchHTML += '</ul></div>';

	  //build it
	  $('#searchH .b').wrap('<div class="searchSel">');
	  $('.searchSel').prepend(searchHTML);

	  $('#searchH .searchSel0 .arrow').click( function(){ $('#searchH0').hasClass('searchExpanded') ? $('#searchH0').removeClass('searchExpanded') : $('#searchH0').addClass('searchExpanded') });

	  // change search type after click
	  $('.searchSel0 a').click(function(e){
		e.preventDefault();
		if( $(this).hasClass('selectedVal') ) return;
            $('#VE_szukaj_id').removeClass($('.searchSel0 .selectedVal').attr('alt'));
		$('.searchSel0 .selectedVal').text( $(this).text() );
		$('.searchSel0 .selectedVal').attr( 'alt', $(this).attr('alt') );
		$('.searchSel0 a').removeClass('selected');
		$(this).addClass('selected');
            $('#VE_szukaj_id').addClass($('.searchSel0 .selectedVal').attr('alt'));


		$('#searchH_sel option:selected').attr('selected','');
		$('#searchH_sel option[value='+$(this).attr("alt")+']').attr('selected','selected');
		$('#searchH_sel').change( function(){ searchH.searchH_sel = $(this).find(':selected').attr('value') } );  
		$('#searchH_sel').change();
            $('#searchH0').removeClass('searchExpanded')

	  });

        $('#VE_szukaj_id').focus(function(){
         $(this).addClass('inEdit');
        });

        $('#VE_szukaj_id').blur(function(){
         $(this).removeClass('inEdit');
         if($.trim($(this).val()) != ''){
          $(this).addClass('hasQuery');
         }else{
          $(this).removeClass('hasQuery');
         }
        }); 

	 }
       $('#searchH .searchSel0').css({'display':'block'});
       
    /* Z OST. CHWILI */
    dNow = new Date;
    dNow.setHours(dNow.getHours()-1);
    $('.indeks_kafle .entry .when').each(function(){
        var date = $(this).html();
        date = date.split(' ');
        var year = date[0];
        var time = date[1];
        year = year.split('-');
        year[1] = year[1]*1-1;
        time = time.split(':');
        dArt = new Date(year[2],year[1],year[0],time[0],time[1]);
        if (dArt>dNow) $(this).html('Z ostatniej chwili').addClass('whenNew');
    });

});

