// common valtozok
var urlparam = 'post_id=';

// showLinkterLink valtozok
var linkterbase = 'http://www.linkter.hu/index.php?action=suggest_link';

// showErtesitsLink
var ertesitsimg = 'http://www.benjamin.hu/blogter/ertesits.hu.gif';

var MONTHS = new Array('január', 'február', 'március', 'április', 'május', 'június', 'július', 'augusztus', 'szeptember', 'október', 'november', 'december');

/*
	A bejegyzes cimet a bongeszo fejlecebe allitja be.

	a sablont modositani kell:
		<h2><a href="<$BejegyzesPermalink$>"><$BejegyzesCime$></a></h2>

		<h2 id="c_title"><a href="<$BejegyzesPermalink$>"><$BejegyzesCime$></a></h2>

	A "b_title" (es a separator) a javascript hivasakor modosithato:
		setPostTitletoBrowserTitle("mas_title_id", ' - ')

*/
function setPostTitletoBrowserTitle(titleid, separator)
{
	var titleid = (titleid == null) ? 'c_title' : titleid;
	var separator = (separator == null) ? ' / ' : separator;

	// ha nem a fooldalon vagyunk
	if (location.href.indexOf(urlparam) > -1) {
		var tartalom = document.getElementById(titleid);
		document.title += separator + removeHTML(tartalom.innerHTML);
	}
}

/*
	A megadott div elejere beszurja a linkter linket.

	a sablont modositani kell:
		<p><$BejegyzesTest$></p>
		<p id="c_bejegyzes"><$BejegyzesTest$></p>
*/
function showLinkterLink(contentid, linkterid, cimkeid, desclength)
{
	var contentid = (contentid == null) ? 'c_bejegyzes' : contentid;
	var linkterid = (linkterid == null) ? 'c_linkter' : linkterid;
	var cimkeid = (cimkeid == null) ? 'c_postinfo' : cimkeid;
	var desclength = (desclength == null) ? 120 : desclength;
	var tmp = '';

	// ha nem a fooldalon vagyunk
	if (location.href.indexOf(urlparam) > -1) {
		// bejegyzes-bol "intro" kivagasa
		var desc = customSubstr(removeHTML(document.getElementById(contentid).innerHTML), desclength);

		// cimkek kiszedese
		var str = removeHTML(document.getElementById(cimkeid).innerHTML);
		// cimkek: .... | keresese
		var cimkek = str.match(/:([^\|]*)\|/i);
		cimkek = cimkek[1].replace(/,/g, '');

		// link osszeallitasa es kirakasa a linkterdiv-be
		var linkterdiv = document.getElementById(linkterid);
		var link = linkterbase + '&link%5Burl%5D=' + location.href + '&link%5Btitle%5D=' + encodeURI(document.title) + '&link%5Bdesc%5D=' + encodeURI(desc) + '&link%5Btag%5D=' + encodeURI(cimkek) + '&link%5Bbtn_suggest%5D=link+aj%C3%A1nl%C3%A1sa';
 		linkterdiv.innerHTML = '<a href="' + link + '"><img src="http://benjamin.hu/blogter/linkterbe.gif" hspace="0" vpspace="0" class="" style="margin: 0; padding: 0;" /> linktérbe vele</a><br /><br />';
	}
}

// az adott stringbol eltavolitja a HTML-t
function removeHTML(str)
{
	// HTML tag cleanup
	str = str.replace(/<[^>]*>/gi, '');
	// space cleanup
	str = str.replace(/\s+/gi, ' ');
	// sor eleji space
	str = str.replace(/^\s/gi, '');

	return str;
}

function customSubstr(str, maxlength)
{
	// egesz szavakat adjunk vissza:
	var arrofstr = str.split(' ');
	var tmp = '';
	for (var i = 0; i < arrofstr.length; i++) {
		if (tmp.length < maxlength) {
			sep = (i == 0) ? '' : ' ';
			tmp += sep + arrofstr[i];
		} else {
			tmp += '...'; 
			break;
		}
	}
	return tmp;
}

/*
	Az oldalon talalhato minden olyan linket aminek a hrefjeben szerepel az "ertesits.hu/reminders_add.php?"

	automatikusan berek a szoveg vegere egy boritekot es ha ures a title akkor szoveget ir bele
*/
function showErtesitsLink()
{
	var elems = getElementsByTagandAttr('a', 'href', /ertesits\.hu\/reminders_add\.php\?/i);
	if (elems.length) {
		for (i = 0; i < elems.length; i++) {
			if (elems[i].href && elems[i].href != '') {
				elems[i].innerHTML += '<img src="' + ertesitsimg + '" hspace="0" vspace="0" style="margin: 0 3px 0 2px; padding: 0;" valign="absmiddle"/>';
				if (elems[i].title == '') elems[i].title = 'Emlékeztető beállítása - www.ertesits.hu';
			}
		}
	}
}

// http://weblabor.hu/cikkek/diszkretjavascript#comment-25967 - sly	
function getElementsByTagandAttr(tag, attr, name) {
	var found = 0;
	var elems = new Array();
	var alltags = document.getElementsByTagName(tag);

	if (alltags) {
		for (i = 0; i < alltags.length; i++) {
			var t = eval('alltags[' + i + '].' + attr);
			if (t.match(name)) {
				elems[found++] = alltags[i];
			}
		}
	}
	return(elems);
}

function archiveLinksFormat(archiveid, separator)
{
	var archiveid = (archiveid == null) ? 'c_archive' : archiveid;
	var separator = (separator == null) ? ' | ' : separator;

	var items = document.getElementById(archiveid).innerHTML;
	var arr = items.match(/<li><a href="([^"]*)">([^<]*)</gi);
	var sy = 0;
	var newc = '';

	for (i = 0; i < arr.length; i++) {
		// href, text
		var e = arr[i].match(/<li><a href="([^"]*)">([^<]*)</i);
		e[0] = '';
		// datum darabolas
		var d = e[2].split(' - ');
		// start date, end date: ev honap nap
		var sd = d[0].split('-');
		var ed = d[1].split('-');

		// van mar "beallitot" ev ami nagyobb mint az utolso ("uj" ev)
		if (sy != 0 && sd[0] > sy) {
			newc += '</ul></li>';
		}

		// "uj" ev
		if (sd[0] != sy) {
			newc += '<li><h4>' + sd[0] + '</h4><ul style="margin: 2px 0; padding: 0px; ">';
			sy = sd[0];
		}

		var link = '<a href="' + e[1] + '">' + sd[1] + '-' + sd[2] + ' - ' + ed[1] + '-' + ed[2] + '</a>';
		newc += '<li style="display: inline; margin: 2px;">' + link + separator + '</li>';
	}
	newc += '</ul></li></ul>';

	document.getElementById(archiveid).innerHTML = newc;
}

function formatDates(elems)
{
	if (elems.length) {
		for (i = 0; i < elems.length; i++) {
			elems[i].innerHTML = elems[i].innerHTML.replace(/([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2})/g,
				function (str, y, m, d, h, i, s) {
					// -1: tomb 0-s indexxel kezdodik
					return y + '. ' + MONTHS[(m - 1)] + ' ' + (d - 0) + '., ' + h + ':' + i;
			   }
			)
		}
	}
}

function commentDateFormat()
{
	var elems = getElementsByTagandAttr('span', 'className', /hozzaszolascime/g);
	formatDates(elems);
}

function postDateFormat()
{
	var elems = getElementsByTagandAttr('div', 'id', /tartalom/g);
	formatDates(elems);
}

function commentReververse()
{
	var elems = getElementsByTagandAttr('div', 'className', /^hozzaszolas$/g);
	var backuparr = new Array();

	if (elems.length) {
		for (i = 0; i < (elems.length / 2); i++) {
			j = elems.length - 1 - i;
			var tmp = elems[j].innerHTML;
			elems[j].innerHTML = elems[i].innerHTML;
			elems[i].innerHTML = tmp;
		}
	}
}

