
$(function() {
	// Comment filter initializers
	var entry_id = 2864481;
	var cfiltermin = -10;
	var cfiltermax = 10;
	var filtercss = '';
	var moderatorcss = '';
	var filterarray = new Array();
	filterarray[0] = '0',
	bestcomments = [];
	for(var i=(cfiltermin-1); i<=(cfiltermax+1); i++) {
		if(i<0) {
			filterarray[i] = 'm'+(-1*i);
		} else if(i>0) {
			filterarray[i] = 'p'+i;
		}
	}

	// Maak css regels aan voor die de comments filteren
	for(var i=cfiltermin; i<=cfiltermax; i++) {
		var cfmainclass = '#comments.cfilter-'+filterarray[i];
		for(var j=cfiltermin; j<=(cfiltermax+1); j++) {
			filtercss+= cfmainclass+' article.r-'+filterarray[j]+' { ';
			filtercss+= (i>=j) ? 'display: none' : 'display: block';
			filtercss+= '}\r\n';
		}
		filtercss+= '\r\n';
		
		moderatorcss+='#comments.modview article.r-'+filterarray[i]+' { ';
		moderatorcss+= (i<0) ? 'display: block' : 'display: none';
		moderatorcss+= '}\r\n';
		
		// roodmaken waar nodig
		moderatorcss+= (i<-4) ? '#comments.modview article.r-'+filterarray[i]+' .modrating { color: #f00; font-weight: bold; }' : '';
	} // en nog 1 regel die alle comments boven het max wegfietst
	moderatorcss+='#comments.modview article.r-'+filterarray[(cfiltermax+1)]+' { ';
	moderatorcss+= ((cfiltermax+1)<0) ? 'display: block' : 'display: none';
	moderatorcss+= '}\r\n';
	
	moderatorcss+= '#comments.modview article.nsb {display: block; }\r\n';
	
	// $('<style></style>').attr('innerHTML', filtercss+moderatorcss).appendTo('head');
	// $('<style></style>').text(filtercss+moderatorcss).appendTo('head');
	$('<style>'+filtercss+moderatorcss+'</style>').appendTo('head');


	function setcommentfilter(val) {
		$.cookie('commentfilter-min', val, { expires: 365, path: '/'});
		if(val=='--') {
			$('#comments').attr('class', '');
		} else if(val=='modview') {
			$('#comments').attr('class', 'modview');
		} else {
			$('#comments').attr('class', 'cfilter-'+filterarray[val]);
		}
		try {GSTV.fixheight();} catch(e) {}
	}
	
	// Bouw selectbox en voeg toe aan commentcontainer
	var minrating = $.cookie('commentfilter-min');
	setcommentfilter(minrating);
	$commentfilter = $('<select class="thinborder"></select>');
	for(var i=cfiltermin; i<=cfiltermax; (i=i+2)) {
		var numstr = i>0 ? '+'+i : i;
		$commentfilter.prepend(minrating==i ? '<option value="'+i+'" selected>&gt; '+numstr+'</option>' : '<option value="'+i+'">&gt; '+numstr+'</option>');
	}
	$commentfilter.prepend('<option value="--">Alles</option>')
		.change(function() {
			var newval = $(this).prop('value');
			setcommentfilter(newval);
		})
		.wrap('<div id="commentfilter">')
		.parent().prepend('toon: ')
		.appendTo('#comments header');



	$('#loggedin #text').bind('keypress focusout', function(e) {
		var txtval = $(this).prop('value');
		var rxShorterner = /(bit\.ly|is\.gd|tinyurl\.com|\/\/t\.co|goo\.gl|cli\.gs|short\.ie|adf\.ly|u\.bb|9\.bb|j\.gs|q\.gs|quidlinks\.com|tiny\.cc|alturl\.com|shrtlnk\.nl|adfoc\.us)/i,
		rxSpam = /(zakelijkthuis\.nl)/i;

		if (rxShorterner.test(txtval)) {
			$('#loggedin form').replaceWith($('<strong style="color: red">Noem eens &eacute;&eacute;n goede reden om een url-verkorter te gebruiken.</strong>'));
		}

		if (rxSpam.test(txtval)) {
			$('#loggedin form').replaceWith($('<strong style="color: red">Dat is een hele goede manier om een permaban te krijgen.</strong>'));
		}

	});



	var moderation = [];

	moderation['147176211'] = '-4';
	moderation['147144521'] = '10';
	moderation['147144581'] = '11';
	moderation['147144991'] = '-8';
	moderation['147145091'] = '-1';
	moderation['147145811'] = '3';
	moderation['147145861'] = '-20';
	moderation['147146441'] = '12';
	moderation['147146581'] = '-13';
	moderation['147146661'] = '-3';
	moderation['147146701'] = '4';
	moderation['147146741'] = '3';
	moderation['147146761'] = '1';
	moderation['147173861'] = '-2';
	moderation['147173731'] = '2';
	moderation['147173671'] = '2';
	moderation['147173551'] = '2';
	moderation['147172291'] = '5';
	moderation['147170741'] = '4';
	moderation['147165561'] = '4';
	moderation['147165091'] = '-9';
	moderation['147163621'] = '3';
	moderation['147161581'] = '4';
	moderation['147161461'] = '5';
	moderation['147155411'] = '8';
	moderation['147153281'] = '11';
	moderation['147152821'] = '7';
	moderation['147152571'] = '-14';
	moderation['147152061'] = '1';
	moderation['147151871'] = '2';
	moderation['147151231'] = '-31';
	moderation['147151161'] = '-1';
	moderation['147151061'] = '-56';
	moderation['147149661'] = '3';
	moderation['147149071'] = '3';
	moderation['147148811'] = '3';
	moderation['147147551'] = '7';
	moderation['147147511'] = '-1';
	moderation['147147151'] = '-30';
	moderation['147147131'] = '-12';
	moderation['147147111'] = '-30';
	moderation['147144111'] = '6';
	moderation['147214831'] = '-5';
	moderation['147143831'] = '2';
	moderation['147143611'] = '-7';
	moderation['147143491'] = '27';
	moderation['147211461'] = '1';
	moderation['147142861'] = '-38';
	moderation['147142731'] = '-1';
	moderation['147203081'] = '-3';
	moderation['147141631'] = '98';
	moderation['147197691'] = '-6';
	moderation['147135831'] = '419';
	moderation['147135851'] = '242';
	moderation['147135961'] = '233';
	moderation['147136011'] = '-256';
	moderation['147136031'] = '-49';
	moderation['147136201'] = '-224';
	moderation['147136301'] = '116';
	moderation['147136391'] = '-58';
	moderation['147136571'] = '213';
	moderation['147136631'] = '102';
	moderation['147136701'] = '-47';
	moderation['147136741'] = '211';
	moderation['147136811'] = '58';
	moderation['147136931'] = '222';
	moderation['147137131'] = '71';
	moderation['147137241'] = '45';
	moderation['147137291'] = '71';
	moderation['147137301'] = '39';
	moderation['147137331'] = '-83';
	moderation['147137381'] = '103';
	moderation['147137441'] = '-5';
	moderation['147137621'] = '-380';
	moderation['147137881'] = '-25';
	moderation['147138171'] = '77';
	moderation['147138451'] = '-138';
	moderation['147140181'] = '22';
	moderation['147138561'] = '105';
	moderation['147138581'] = '36';
	moderation['147138661'] = '-25';
	moderation['147138781'] = '7';
	moderation['147139001'] = '50';
	moderation['147139561'] = '18';
	moderation['147139571'] = '31';
	moderation['147139951'] = '-3';
	moderation['147139991'] = '27';
	moderation['147140611'] = '50';
	moderation['147140731'] = '21';
	moderation['147141031'] = '-2';
	moderation['147141141'] = '-2';
	moderation['147222521'] = '2';
	moderation['147224321'] = '4';
	moderation['147227041'] = '4';
	moderation['147236181'] = '1';
	moderation['147279971'] = '3';
	moderation['147305491'] = '1';

	// Let's get to business!

	$('#comments article').each(function () {
		var comment_id = $(this).attr('id').substring(1);
		var rating = (undefined==moderation[comment_id]) ? 0 : moderation[comment_id];
		
		var $footer = $(this).find('footer');

		// set the comments class based on the rating
		if(rating>cfiltermax) {
			var cname = 'r-'+filterarray[cfiltermax+1];
		} else if(rating<=cfiltermin) {
			var cname = 'r-'+filterarray[cfiltermin];
		} else {
			var cname = 'r-'+filterarray[rating];
		}
		$(this).addClass(cname);
		$footer.append(' | <a class="modmark p" title="+1" data-modifier="1">+</a> <span class="modrating">'+rating+'</span> <a class="modmark m" title="-1" data-modifier="-1">-</a>');
		
		$(this).find('footer a.modmark').click(function() {
			var modifier = $(this).attr('data-modifier');
			var $rating = $(this).parent().find('span.modrating');
			$.getJSON('http://www.geenstijl.tv/modlinks/domod.php?entry='+entry_id+'&cid='+comment_id+'&mod='+modifier, function(data) {
				if(data.success===true) {
//					$rating.attr('innerHTML', parseInt($rating.attr('innerHTML'))+parseInt(modifier));
					$rating.html(parseInt($rating.text())+parseInt(modifier));
				}
			});
		});

		// NSB knopjes
		$('<span class="nsb" title="Deze reactie is in overtreding met de huisregels."></span>').click(function () {
			if(confirm('Ongepaste reactie melden?')) {
				$.getJSON('http://www.geenstijl.tv/modlinks/report.php?entry='+entry_id+'&cid='+comment_id, function(data) {
					if(data.success===true) {
						// alert('Je melding is ontvangen.');
					}
				});
			}
		}).appendTo($footer);

	});

	$.each(bestcomments, function() {
		//if(undefined!== moderation[this] && moderation[this]>10) $('#c'+this).clone(true).addClass('promoted').insertAfter('#comments header');
		if(undefined!== moderation[this] && moderation[this]>10) $('#c'+this).addClass('promoted').insertAfter('#comments header');
	});	


});
