// ======================================================================
//
// JScript Source File -- copyright 2006 derStandard.at GmbH
// 
// NAME: Forum.js
//
// AUTHOR: Lukas Klaus, derStandard.at GmbH
// DATE  : 05.06.2007 v1.11
// 
// COMMENT: Forum Tools Support 2006
// 
// sources are not to be used in other websites.
// if you want to use the navigation write to webmaster@derStandard.at
// =========================================================================
// object referenz

//Schreiben der Links
document.observe("dom:loaded", function() {
	var threads = $$('.thread');
	threads.each(function(e) {
		var tid = e.id.substring(1);
		e.down('.a').update('<a class="onclick" onclick="window.open(\'/?page=post&re=' + tid + '\',\'\',\'toolbar=no,menubar=no,scrollbars=no,resizable=yes,width=525,height=525\');" rel="nofollow" title="Klicken Sie hier, wenn Sie auf dieses Posting antworten m&ouml;chten.">antworten</a>');
		e.down('.p').update('<a href="/plink/' + PageProperties.objectID + '/' + tid + '" title="Mit diesem Link k&ouml;nnen Sie die URL des Postings aufrufen." rel="nofollow">permalink</a>');
		e.down('.b').update('<a class="onclick" onclick="window.open(\'?page=postbewerten&amp;postID=' + tid + '\',\'\',\'toolbar=no,menubar=no,scrollbars=no,resizable=yes,width=515,height=505\');" rel="nofollow" title="Geben Sie Ihre Bewertung &uuml;ber die Qualit&auml;t dieses Postings ab.">bewerten</a>');
		e.down('.m').update('<a class="onclick" onclick="window.open(\'/?page=postmelden&amp;re=' + tid + '\',\'\',\'toolbar=no,menubar=no,scrollbars=no,resizable=yes,width=515,height=505\');" rel="nofollow" title="Melden Sie Postings an die Redaktion, wenn diese den Community Richtlinien widersprechen.">melden</a>');
		if (ratingData[tid]) {
			e.down('.rating').update(t_create(ratingData[tid][0], ratingData[tid][1], ratingData[tid][2]));
		}
	});
});

// HTML für Bewerungsbalken und Anzahl
function t_create(pos, med, neg) {
	var posCol = "#009A30";
	var negCol = "#CF0000";
	var posLeftBase = 27;
	var negLeftBase = 26;
	var leftOffset = 0;
	
	var wert_ges = 4 * pos + 2 * med + 3 * neg;
	var wert_pos = 4 * pos + 2 * med;
	var wert_neg = 3 * neg;
	
	var posLength = 0;
	var negLength = 0;
	
	var titleText = "Gesamtbewertung: " + pos + " brillant | " + med + " interessant | " + neg + " unn&ouml;tig";

	if (wert_ges >= 50)
	{
		if (wert_pos >= wert_neg)
		{
			posLength = Math.round(50 * wert_pos / wert_ges);
			negLength = 51 - posLength;
			leftOffset = posLength - 25;
			posLeftBase -= leftOffset;
			negLeftBase -= leftOffset - 1;
		}
		else
		{
			negLength = Math.round(50 * wert_neg / wert_ges);
			posLength = 51 - negLength;
			leftOffset = negLength -25;
			posLeftBase += (leftOffset - 1);
			negLeftBase += leftOffset;
		}
	}
	else if (wert_pos >= 25)
	{
		posLength = wert_pos;
		negLength = wert_neg;
		leftOffset = posLength - 25;
		posLeftBase -= leftOffset;
		negLeftBase -= (leftOffset - 1);
	}
	else if (wert_neg >= 25)
	{
		posLength = wert_pos;
		negLength = wert_neg;
		leftOffset = negLength - 25;
		posLeftBase += leftOffset;
		negLeftBase += leftOffset;
	}
	else if ((wert_neg <= 25) && (wert_pos <= 25))
	{
		posLength = wert_pos;
		negLength = wert_neg;
	}
	
	var html = '';
	// schaue ob ich tabelle ueberhaupt aufbauen muss
	if (wert_ges > 0) {
		html += '<div style="position: relative; width: 70px; height: 14px; background-image: url(/css/rating_bg.png); background-repeat: no-repeat; background-position: 0 1px" title="' + titleText + '">';
		html += '<div style="position: absolute; left: ' + (negLeftBase - negLength) + 'px; top: 4px; background-color:' + negCol + '; width: ' + negLength + 'px; height: 9px"></div>';
		html += '<div style="position: absolute; left: ' + posLeftBase + 'px; top: 4px; background-color:' + posCol + '; width: ' + posLength + 'px; height: 9px"></div><span style="visibility: hidden">.</span>';
		html += '<div style="position: absolute; top: -1px; left: 53px; font-family: Verdana,sans-serif; font-size: 11px">[' + (pos + med + neg) + ']</div>';
		html += '<div style="position: absolute; top: 0px; left: 26px; width: 1px; height: 17px; border-left: 1px solid #000"><span style="visibility:hidden">.</span></div>';
		html += '</div>';
		// schreibe HTML
		return html;
		
	}
}

// HTML für Bewerungsbalken und Anzahl im Live-Bericht
function t_create_liveBericht(pos, med, neg)
{
	return '<span>TEST</span>';
}

// wird fuer die beschneidung der textlaenge im bewerten posting verwendet
function cuttext(str_obj, id, length)
{
	if(str_obj.length > length)
	{
		var tmp = str_obj.substring(0, length);
		var index = tmp.lastIndexOf('.');
		if((index != -1) && (tmp.charAt(index+1) == " "))
		{
			eval(fs).getElementById(id).innerHTML = (tmp.substring(0, index)).replace(/'/g, '');
		}
		else
		{
			var str = tmp.replace(/'/g, '');
			eval(fs).getElementById(id).innerHTML = (str.substring(0, str.lastIndexOf(" ")) + "...");
		}
	}
	else
	{
		eval(fs).getElementById(id).innerHTML = str_obj;
	}
}
