var IE = (navigator.appVersion.indexOf("MSIE")!=-1);
var slide_categories = !IE;
var num_stars = 0;

window.onload = function () {;

	activate_quick_search();
	activate_main_tabs();
	activate_select();
	activate_list();
	activate_categories();
	activate_votes();
	activate_post_comments();
	activate_friends_delete();
	activate_calendar();
	activate_kategoria_sugerowana();
	activate_abuse(); // zgłaszanie naruszenie zasad
}

function activate_abuse() {
    var items = $$('a.abuse_link');
    for(var i = 0; i < items.length; i++) {
		items[i].onclick = function() {
			
			if(confirm('Czy napewno chcesz zgłośić naruszenie zasad regulaminu?')) {
			    form = this.next(0);
			    form.action = "abuse/";
			    form.request({
					onComplete: function(transport) {
						if(transport.responseText == "1") show_message('popup_dialog', 'Dziękujemy. Zgłoszenie zostało wysłane.');
					    else show_message('popup_dialog', 'Aby to zrobić musisz się zalogować<br />do Domowej Kawiarenki Gellwe');
					} 
			    });
			}
		}
	}
}


function activate_calendar() {
	var inputs = $$('input.input_date');
	for(var i = 0; i < inputs.length; i++) {
		Calendar.setup( { inputField: inputs[i] } );
	}
}

function hide_vote_buttons() {
	var buttons = $$('div.blog_buttons a');
	for(var i = 0; i < buttons.length; i++) {
		if(buttons[i].rel == 'blog_vote') buttons[i].style.display = 'none';
	}
	return false;
}

function activate_fav_buttons() {
		var lis = $$('ul.favorites li');
		for(var i = 0; i < lis.length; i++) {
			lis[i].onmouseover = function() { var div = this.getElementsByTagName('div').item(0); if(div) { div.style.display = 'block'; }}
			lis[i].onmouseout = function() { var div = this.getElementsByTagName('div').item(0); if(div) { div.style.display = 'none'; }}
		}
}

function activate_friends_delete() {
		var lis = $$('ul#friends-list li');
		for(var i = 0; i < lis.length; i++) {
			lis[i].onmouseover = function() { if(this.childNodes.item(0).className=="delete") { this.childNodes.item(0).style.display = 'block'; } }
			lis[i].onmouseout = function() { if(this.childNodes.item(0).className=="delete") { this.childNodes.item(0).style.display = 'none'; } }
		}
}

function show_message(message_layer, message) {
	$('root_message').innerHTML = message;
	$('blackarea').style.display = 'block';
	var arrayPageSize = getPageSize();
	var arrayPageScroll = getPageScroll();
	var lightboxTop = arrayPageScroll[1] + (arrayPageSize[3] / 2);
	var lightboxLeft = arrayPageSize[0] / 2;
	var blackWidth = arrayPageSize[0];
	var blackHeight = arrayPageSize[1];
//	alert(blackWidth);
	$('blackarea').style.width = blackWidth+"px";
	$('blackarea').style.height = blackHeight+"px";
	$(message_layer).style.top = lightboxTop+"px";
	$(message_layer).style.left = lightboxLeft+"px";
	$(message_layer).style.display = 'block';
}

function hide_message(message_layer) {
	$(message_layer).style.display = 'none';
	$('blackarea').style.display = 'none';
}

function getScrollXY() {
  var scrOfX = 0, scrOfY = 0;
  if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scrOfY = window.pageYOffset;
    scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scrOfY = document.body.scrollTop;
    scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scrOfY = document.documentElement.scrollTop;
    scrOfX = document.documentElement.scrollLeft;
  }
  return [ scrOfX, scrOfY ];
}

function activate_post_comments() {
	if($('add_comment_link') && $('add_comment_div')) {
		$('add_comment_link').onclick = function() {
			if($('add_comment_div').style.display == 'none') {
				new Effect.SlideDown('add_comment_div');	
			}
		}
	} else if($('add_comment_link') && !$('add_comment_div')) {
	    $('add_comment_link').onclick = function() {
		show_message('popup_dialog', 'Aby to zrobić musisz się zalogować<br />do Domowej Kawiarenki Gellwe');
	    }
	}
}

function activate_votes() {
	var stars = $$('div#vote a');
	for(var i = 0; i < stars.length; i++) {
		if(stars[i].className == 'active') num_stars++;
		
		stars[i].onclick = function() {
			this.onmouseover = function(){};
			this.onmouseout = function(){};
			set_vote('vote_value', this.rel);  
			this.className='active'; 
			return submit_form('vote_form','vote-message', 'vote');
		}
		stars[i].onmouseover = function() {
			var message = $('vote-message');
			message.innerHTML = this.title;
			var stars = $$('div#vote a');
			for(var i = 0; i < stars.length; i++) {
				if(i < parseInt(this.rel)) stars[i].className = 'active';
					else stars[i].className = '';
			}
		}
		stars[i].onmouseout = function() {
			var message = $('vote-message');
			message.innerHTML = '';
			var stars = $$('div#vote a');
			for(var i = 0; i < stars.length; i++) {
				if(i < window.num_stars) stars[i].className = 'active';
					else stars[i].className = '';
			}
		}
	}
}

function set_vote(valueid, value) {
	$(valueid).value = value;
	return true;
}

function activate_categories() {
	var links = $$('div#box_kategorie span.arrow');
	for(var i = 0; i < links.length; i++) {
		links[i].onclick = function(){ open_category(this); return false; }
		switch(links[i].className) {
			case 'arrow right': links[i].title = 'Otwórz kategorię'; break;
			case 'arrow down': links[i].title = 'Zamknij kategorię'; break;
		}
		links[i].parentNode.onfocus = links[i].parentNode.blur;
		if(!links[i].parentNode.nextSibling.nextSibling) links[i].className = 'arrow none';
	} 
}

function open_category(span) {
	var div = span.parentNode.parentNode.childNodes.item((IE)?2:3);
	if(span.className == 'arrow right' && div) {
		
		if(slide_categories) new Effect.SlideDown(div);
			else div.style.display = 'block';
		span.className = 'arrow down';
		span.title = 'Zamknij kategorię';
		
	} else if(span.className == 'arrow down' && div) {
		
		if(slide_categories) new Effect.SlideUp(div);
			else { div.style.display = 'none'; }
		span.className = 'arrow right';
		span.title = 'Otwórz kategorię';
		
	}
}

function activate_list() {
	var rows = $$('ul#lista li');
	for(var i = 0; i < rows.length; i++) {
		rows[i].onmouseover = function(){ this.className='selected'; }
		rows[i].onmouseout = function(){ this.className=''; }
	} 
}

function activate_select() {
	if($('select_link')) {
		$('select_link').onfocus = $('select_link').blur;
		$('select_link').onclick = function() { return rolldown(this); }
	}
}

function rolldown() 
{
    var p=$('select_link').parentNode;
    var d=document;
	if(p.className=='') {
		p.className='on';
		function cl() { d.onclick = function() { rolldown($('select_link')) } }
		setTimeout(cl, 10);
	} else {
		p.className='';
		d.onclick = function() {}
	}
    return false;
}

function activate_main_tabs() {
	var tabs = $$('div.tabs a');
	for(var i = 0; i < tabs.length; i++) {
		if (tabs[i].rel) { tabs[i].onclick = function() { get_url(this.rel,'content'); select_tab(this); return false; } }
		tabs[i].onfocus = tabs[i].blur;
	}
}

function select_tab(tab) {
	var tabs = $$('div.tabs a');
	for(var i = 0; i < tabs.length; i++) {
		tabs[i].className = '';
	}
	tab.className = 'selected';
}

function activate_quick_search() {
	if($('w_serwisie') && $('w_dziale')) {
		$('w_dziale').onclick = function() { change_radio_button(1); }
		$('w_serwisie').onclick = function() { change_radio_button(2); }
	}
}

function change_radio_button(type) {
	$('w_dziale').className = "radio";
	$('w_serwisie').className = "radio";
	if(type == 1) {
		$('w_dziale').className = "radio selected";
		$('gdzie').value = "1";
	} else if(type == 2) {
		$('w_serwisie').className = "radio selected";
		$('gdzie').value = "0";
	}
}

function show_mail(user,domena,kraj,attr) {
	var start = "<a href=\"mailto:"+user+"@"+domena+"."+kraj+"\" title=\"\""
	+ attr + ">";
	var end = "</a>";
	document.write(start+user+"@"+domena+"."+kraj+end);
	return 0;
}

function submit_form(formid,div, data_div, button_div, wait_div, show_button, hide_data) {
	if(!formid) formid = 'FormName';
	if(!div) return false;
	if(!show_button) show_button = 'block';
	if(!wait_div) wait_div = 'form-wait-div';
	if(!button_div) button_div = 'form-button-div';
	if(!hide_data) hide_data = 'block';
	if($(wait_div)) $(wait_div).style.display = "block";
	if($(button_div)) $(button_div).style.display = "none";
	$(formid).request({
		onComplete: function(transport) {
			$(div).style.visibility = "visible";
			$(div).innerHTML = transport.responseText;
			if($(wait_div)) $(wait_div).style.display = "none";
			if($(button_div)) $(button_div).style.display = show_button;
			if($(data_div)) $(data_div).style.display = hide_data;
			transport.responseText.evalScripts(); // tu jest istotna kolejnosc, eval musi byc na koncu
		},
		onError : function() { $(div).style.display= "block"; $(div).innerHTML = 'ERROR while loading';	}
	});
	return false;
}

/**
 * pobieranie contentu metoda get 
 *
 * @param object obj object a
 * @param string div ID elementu
 */
function get_url(url,div) {
	if(!div) div = 'content';
	$(div).innerHTML = "";
	var objDiv = document.createElement("div");
	objDiv.setAttribute('id','home_box_loader');
	var objImage = document.createElement("img");
	objImage.setAttribute('src','./public/images/clock_blue.gif');
	objDiv.appendChild(objImage);
	$(div).appendChild(objDiv);
	
	new Ajax.Updater(div,url,{
		method: 'get',
		evalScripts: true,
		onComplete: function() { 
		$('home_box_loader').style.visibility = "hidden";
		 },
		onError : function() { $(div).innerHTML = 'ERROR while loading'; }
	});
	return false;
}

function set_form_action(formid, act) {
	if(!formid) return false;
	if(!act) return false;
	$(formid).action = act;
	return false;
}


function show_ecard_window(width, height) {
	var ecard_window = window.open('','ecard_window','width='+width+', height='+height);
	if(window.focus) ecard_window.focus();
	return false;
}

function set_form_target(formid, t) {
	if(!formid) return false;
	if(!t) return false;
	$(formid).target = t;
	return false;
}

function form_reset(formid) {
 if(!formid) return false;
 $(formid).reset();
 return false;
}

function print_window($adres) {
	PrintWindow= window.open($adres,'','resizable=no,scrollbars=yes,status=no');
}


function change_sugerowana_kategoria() {
	$('kategoria_sugerowana').update( $('lista_kategorii').options[$('lista_kategorii').selectedIndex].text + '/<b>' + $('nowa_kategoria').value) + '</b>';
}

function activate_kategoria_sugerowana() {
	if($('nowa_kategoria')) {
		$('nowa_kategoria').onkeyup = function() {
				change_sugerowana_kategoria();
		}
		$('lista_kategorii').onchange = function() {
			change_sugerowana_kategoria();
		}
	}
}

function redir(adr) {
	window.location.replace(adr);
}

function show_mail(user,domena,kraj,title, attr) {
	var start = "<a href=\"mailto:"+user+"@"+domena+"."+kraj+"\" title=\""+ title + "\"" + attr + ">";
	var end = "</a>";
	document.write(start+user+"@"+domena+"."+kraj+end);
	return 0;
}

 function textCounter(field, countfield, maxlimit) {
		//original:  Ronnie T. Moore
		//Web Site:  The JavaScript Source
		//Dynamic 'fix' by: Nannette Thacker
		//Web Site: http://www.shiningstar.net
		//This script and many more are available free online at
		//The JavaScript Source!! http://javascript.internet.com 
	
		if (field.value.length > maxlimit) // if too long...trim it!
		field.value = field.value.substring(0, maxlimit);
		// otherwise, update 'characters left' counter
		else 
		countfield.value = maxlimit - field.value.length;
	}	

function display_favourites(idsec, current) {
    obj = $(idsec);
    if(obj.style.display == 'none') { 
      obj.style.display = 'block'; 
      $('span_fav_'+current.id).className = 'active';
      }
    else { 
      obj.style.display = 'none'; 
       $('span_fav_'+current.id).className = 'inactive';
      }
}