function init_date_select()
{
	if($('dd_from'))
	{
		$('dd_from').onchange = function() {$('radio8').checked = true;}
		$('yy_from').onchange = function() {$('radio8').checked = true;}
		$('mm_from').onchange = function() {$('radio8').checked = true;}
		$('dd_to').onchange = function() {$('radio8').checked = true;}
		$('mm_to').onchange = function() {$('radio8').checked = true;}
		$('yy_to').onchange = function() {$('radio8').checked = true;}
	}
}


function init_top_categories() {
	if($('category_selector')) {
		lis = $('category_selector').getElementsByTagName('ul');
		lis = $A(lis[0].childNodes);
		lis.each(function(node) {
			if(node.tagName == 'LI') {
				categories_elements.push(node);

				node.onmouseover = function() {
					Element.removeClassName(category_selected, 'selected');
					if(category_selected == categories_elements[0])
						Element.removeClassName(category_selected, 'first');
					if(this == categories_elements[0])
						Element.addClassName(this, 'first');
					Element.addClassName(this, 'selected');
					category_selected = this;
				}
			}
		});
		category_selected = categories_elements[0];
	}
}

function change_font(size) {
	if($('article')) {
		ps = $('article').getElementsByTagName('p');
		for(i = 0; i < ps.length; ++ i)
			ps[i].style.fontSize = size + 'px';
		ps = $('article_content').getElementsByTagName('p');
		for(i = 0; i < ps.length; ++ i)
			ps[i].style.fontSize = size + 'px';
		lis = $('article_content').getElementsByTagName('li');
		for(i = 0; i < lis.length; ++ i)
			lis[i].style.fontSize = size + 'px';
		divs = $('article_content').getElementsByTagName('div');
		for(i = 0; i < divs.length; ++ i)
			divs[i].style.fontSize = size + 'px';
		$('article_content').style.fontSize = size + 'px';
	}
	return false;
}

function hide_comment_note() {
	if(node = $('note_comment'))
		$('note_comment').hide();
}

function comment_note(pthis, pom) {
	if(!(pnote_comment = $('note_comment'))) {
		var pnote_comment = document.createElement('div');
		pnote_comment.id = 'note_comment';
		pnote_comment.className = 'note_comment';
		document.body.appendChild(pnote_comment);
	} else
		Element.toggle(pnote_comment);

	text_note_comment = '<div class="' + pthis.className + ' selected_' + pom + '">' + pthis.innerHTML + '</div>' +
			_('	<p>Ocenę artykułu <b>musisz uzasadnić</b> komentarzem.') + '<br /><span id="note_upd">&nbsp;</span></p>' +
'	<form action="#" method="post" accept-charset="utf-8">' +
'		<fieldset>' +
'			<div class="row">' +
'				<label for="notecomment_text">' + _('Treść') + '</label><textarea name="notecomment_text" cols="20" rows="20" id="notecomment_text"></textarea>' +
'			</div>';

    if (language != 'lt_LT') {
    text_note_comment += '			<div class="row">' +
'				<label for="notecomment_tags">' + _('Dodaj tagi<br /><i>(nie wymagane)') + '</i></label><input type="text" name="notecomment_tags" id="notecomment_tags" class="notecomment_tags" /><p>' + _('np.: Irak, piłka nożna') + '</p>' +
'			</div>';

    }
    text_note_comment += '			<div class="row buttons">' +
'				<input type="button" name="notecomment_cancel" value="' + _('Anuluj') + '" class="button" id="notecomment_cancel" onclick="hide_comment_note();" />' +
'				<input type="button" name="notecomment_submit" value="' + _('Dodaj') + '" class="button submit" onclick="at_bump(\''+ pom +'\');" id="notecomment_submit" />' +
'				<img id="notecomment_preloader" alt="' + _('Proszę czekać') + '" src="/i/ico-wait-orange.gif" style="display: none;" />' +
'			</div>' +
'		</fieldset>' +
'	</form>';
	var position = Position.cumulativeOffset(pthis);
	pnote_comment.style.top = (position[1] - 9) + 'px';
	pnote_comment.style.left = (position[0] - 9) + 'px';
	pnote_comment.innerHTML = text_note_comment;

	new Ajax.Autocompleter('notecomment_tags', 'tag_auto_complete', '/ajax/tags_ac.php', {paramName: 'lookup', tokens: ','});
}

function init_notes() {
	var notes = $A(document.getElementsByClassName('note'));
	console.debug( notes );
	notes.each(function(note) {
	/*
		note.onmouseover = function() {
			Element.addClassName(this, 'hovered');
		}
		note.onmouseout = function() {
			Element.removeClassName(this, 'hovered');
		}
	*/
		var plus = document.getElementsByClassName('plus', note)[0];
		plus.onclick = function() {
			/* comment_note(this.parentNode, 'plus'); */
			at_quickbump('plus');
			return false;
		}
		var minus = document.getElementsByClassName('minus', note)[0];
		minus.onclick = function() {
		    if (language == 'pl_PL') {
			    comment_note(this.parentNode, 'minus');
		    } else {
		        at_quickbump('minus');
		    }
			return false;
		}
	});
}


function tabchange(ntabselect) {
	pa = ntabselect.getElementsByTagName('A')[0];
	new_name = pa.href.substr(pa.href.lastIndexOf('#') + 1);
	var node_new = $(new_name);
	
	type = (new_name.charAt(0) == 'a') ? 0 : 1;
		
	if (tabselected[type]) { 
		pa_old = tabselected[type].getElementsByTagName('A')[0];
		old_name = pa_old.href.substr(pa_old.href.lastIndexOf('#') + 1);
		var node_old = $(old_name);
		
		
		if (new_name.charAt(0) == old_name.charAt(0))
		{
			node_old.style.display = 'none';
			Element.removeClassName(tabselected[type], 'selected');
		}
	}

	Element.addClassName(ntabselect, 'selected');
	node_new.style.display = 'block'
	tabselected[type] = ntabselect;
	
	return true;
}

function init_tabs(tabclass) {
	var tabs = $A(document.getElementsByClassName(tabclass));
	var firsts = new Array();
	tabs.each(function(tab) {
		if(tab.tagName == 'UL' && tab.className != 'tab static') {
			lis = $A(tab.getElementsByTagName('li'));
			lis.each(function(li) {
				li.onclick = function() {
					tabchange(this);
					return false;
				}
			});
			firsts.push(lis[0]);
		} else if(tab.tagName == 'DIV' && tab.className != 'tab static')
			tab.style.display = 'none';
	});
	firsts.each(function(first){
		tabchange(first);
	});
}

function init_maxsizeTextarea(classname, limit) {
	var tareas = $A(document.getElementsByTagName('textarea'));
	tareas.each(function(tarea) {
		if(Element.hasClassName(tarea, classname)) {
			tarea.onkeyup = function() {
				pp = $A(document.getElementsByClassName(classname + '_counter', tarea.parentNode))[0];
				if($F(tarea).length > limit)
					tarea.value = $F(tarea).substr(0, limit);
				pp.innerHTML = limit - $F(tarea).length;
			}
			pp = $A(document.getElementsByClassName(classname + '_counter', tarea.parentNode))[0];
			if($F(tarea).length > limit)
				tarea.value = $F(tarea).substr(0, limit);
			pp.innerHTML = limit - $F(tarea).length;
		}
	});
}

//-----------

function setCheckboxes (the_form, do_check)
{
	var elts = document.forms[the_form].elements;
	for (var i = 0; i < elts.length; i++)
	{
		if (elts[i].type=="checkbox") elts[i].checked = do_check;
	}
	return true;
}

/* Obsluga okienka send to friend */
function open_sf_window()
{
	new Effect.Appear('send_to_friend',{duration: 0.250});
	return false;
}


function close_sf_window()
{
    new Effect.Fade('send_to_friend',{duration: 0.250});
	return false;
}

function show_article_monit(text)
{
	$('article_monit_msg').innerHTML = text;
	new Effect.Appear('article_monit',{duration: 0.250});
	return false;
}

function close_article_monit()
{
	new Effect.Fade('article_monit',{duration: 0.250});
	return false;
}

function article_popup(link)
{
	addr = link.href;
	var win = window.open(addr, 'ithink.pl' ,'width=800,height=800,resizable=1,scrollbars=yes,menubar=no' );
	win.moveTo(100,100);
	win.focus();
	return false;
}

function sublist_expand(ex)
{
	sublist = ex.parentNode.getElementsByClassName('sub')[0];
	if(sublist.style.display == 'none')
	{
		Effect.BlindDown(sublist);
		ex.innerHTML = _('ukryj');
	}
	else
	{
		Effect.BlindUp(sublist);
		ex.innerHTML = _('rozwiń');
	}
	return false;
}

function external_links()
{
	if (!document.getElementsByTagName) return;
	var anchors = document.getElementsByTagName("a");
	for (var i=0; i < anchors.length; i++)
	{
		var anchor = anchors[i];
	   	if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external")
	   	{
			anchor.setAttribute("target","_blank");
		}
	}
}

function open_popup (imageURL, caption)
{
  var windowTop = 100;                // Top position of popup
  var windowLeft = 100                // Left position of popup
  var defaultWidth = 730;             // Default width (for browsers that cannot resize)
  var defaultHeight = 532;            // Default height (for browsers that cannot resize)
  var undefined;

  var Options = "width=" + defaultWidth + ",height=" + defaultHeight + ",top=" + windowTop + ",left=" + windowLeft + ",resizable"

  var myScript = "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n" +
    "<html>\n" +
    "<head>\n" +
    "<title>" + caption + "\</title>\n" +
    "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n" +
    "<meta http-equiv=\"Content-Language\" content=\"pl\">\n" +
    "<script language=\"JavaScript\" type=\"text/javascript\">\n" +
    "function resizewindow () {\n" +
    "  var width = document.myimage.width;\n" +
    "  var height = document.myimage.height;\n";

  if (navigator.appName.indexOf("Netscape") != -1) {            // Netscape
    myScript = myScript +  "  window.innerHeight = height;\n  window.innerWidth = width;\n"
  }
  else if (navigator.appName.indexOf("Opera") != -1) {          // Opera
    myScript = myScript +  "  window.resizeTo (width+12, height+31);\n"
  }
  else if (navigator.appName.indexOf("Microsoft") != -1) {      // Microsoft
    myScript = myScript + "  window.resizeTo (width+12, height+31);\n"
  }
  else {    // any other browsers
    myScript = myScript + "  window.resizeTo (width+14, height+34);\n"
  }

  myScript = myScript + "}\n" + "window.onload = resizewindow;\n" +
    "</script>\n</head>\n" + "<body ";
  myScript = myScript + "style=\"margin: 0px; padding: 0px;\">\n" +
    "<img src=\"" + imageURL + "\" alt=\"" + caption + "\" title=\"" + caption + "\" name=\"myimage\">\n" +
    "</body>\n" +  "</html>\n";

  // Create the popup window
  var imageWindow = window.open ("","imageWin",Options);
  imageWindow.document.write (myScript)
  imageWindow.document.close ();
  if (window.focus) imageWindow.focus();
  return false;
}

function trim(str)
{
	return str.replace(/^\s+|\s+$/g, "");
}

function validate_form()
{
    f = document.forms['formdodaj'];
	var error = '';
	if(trim(f.tytul.value).length < 4)
		error += _('Tytuł artykułu jest za krótki.\n');
	if(trim(f.wstep.value).length < 9)
		error += _('Wstęp artykułu jest za krótki.\n');	
	//alert('1')	;
	//alert(!f.lokalna.checked+' && '+ f.addarticle_category.value+' == 0) || (' + f.lokalna.checked+' && '+ f.addarticle_category_local.value+' == 0)');
	if((!f.lokalna.checked && f.addarticle_category.value == 0) || (f.lokalna.checked && f.addarticle_category_local.value == 0)) 
		error += _('Proszę wybrać kategorię\n');
	//alert('2')	;	
	if(f.lokalna.checked && (f.id_wojewodztwa == -1))
		error += _('Proszę wybrać województwo\n');
	//alert('3')	
	try{	
	if(flash.isUpload())
		error += 'Proszę poczekać na zakończenie wysyłania pliku na patrz.pl\n';
	}catch(e)
	{
	    
	}
	if(error != '')
	{
		alert(error);
		return false;
	}
	else
	{
		return true;
	}
}

function validate_review()
{
	error = '';
	f = document.forms['formreview'];
	recenzja = '';
	
	for (i = 0; i < f.recenzja.length; i++)
    {
      if (f.recenzja[i].checked)
      {
        recenzja = f.recenzja[i].value;
        break;
      }
    }

	if (language == 'lt_LT' && recenzja == 'T')
	{
	    return true;
	}
	if( (trim(f.komentarz_do_recenzji.value).length < 5) && recenzja != '0')
	{
		alert( _('Proszę wprowadzić treść komentarza!'));
		return false;
	}
	return true;
}

function change_local()
{
	f = document.forms['formdodaj'];
	if(f.lokalna.checked)
	{
		$('local_main').style.display = 'none';
		$('local_local').style.display = 'block';
		$('local_wojewodztwo').style.display = 'block';
		$('local_powiat').style.display = 'block';
		reload_powiaty();
	}
	else
	{
		$('local_main').style.display = 'block';
		$('local_local').style.display = 'none';
		$('local_wojewodztwo').style.display = 'none';
		$('local_powiat').style.display = 'none';
	}
}

function reload_powiaty()
{
	var powiaty = $('local_powiat').getElementsByTagName('select');
	for(var i = 0; i < powiaty.length; i++)
	{
		powiaty[i].style.display = 'none';
	}
	$('addarticle_powiat_' + $('addarticle_wojewodztwo').value).style.display = 'block';
}

function reload_powiaty2()
{
	var powiaty = $('local_powiat').getElementsByTagName('span');
	for(var i = 0; i < powiaty.length; i++)
	{
		powiaty[i].style.display = 'none';
	}
	$('addarticle_powiat_' + $('addarticle_wojewodztwo').value).style.display = 'inline';
}

function initialize() 
{
	if(navigator.appName.indexOf("Microsoft") != -1) 
	{
		flash = window.upload;
	}
	else 
	{
		flash = window.document.upload;
	}
}

function toggle_change_regions()
{
	if($('regions_slideout').style.display == 'none')
	{
		Effect.BlindDown('regions_slideout');
	}
	else
	{
		Effect.BlindUp('regions_slideout');
	}
	return false;
}

function updateArticleImgLinks()
{
	counter = 0;
	links = $A($('article_content').getElementsByTagName('a'));
	
	links.each(function(link) {
		img = $A(link.getElementsByTagName('img'));
		
		if (img.length)
		{
		    
			id = 'contentPictureCaption' + counter;
		    
			link.id = 'hsLink' + counter;		
			link.className = 'highslide';
			link.onclick = function() {
				return hs.expand(this, {captionId: this.id.replace('hsLink' , 'contentPictureCaption')});
			};
			link.rel = '';
			link.target = '_self';
		
			caption = document.createElement('div');
			caption.id = id;
			caption.className = 'highslide-caption';
			caption.innerHTML = img[0].title;
			
			$('article_content').appendChild(caption);
			
			counter++;
		}
	});
}