(function($){
$.topics = {
columns: function($user) {
	$.topics.s.uid = ($.topics.s.uid||$user||0);

	var _s = $.topics.s;
	if (_s.page) _s.page = _s.page.replace(/^p/,'');

	if (screen.width == 1024 && $(window).width() == 1024) _s.size = 220;

	$.fn.aqPaging.defaults.max = 3;
	_s.size = $.nvzColumns.auto_width();
	$.nvzColumns.calculate();

	$('#content').html('<div class="err">'+$.Trans.Loading+'<\/div>');
	$.post(_s.cgi,
	{func: (_s.uid?'home':'list'), 
		search: _s.search,
		offset: _s.page-1, max: $.nvzColumns.cols*7, 
		specific: _s.uid, 'default': _s.forums},
	function($j) {
		var _json = JSON.parse($j);

		$('#content').empty();

		$.nvzColumns.callback = $.topics.columns;
		$.nvzColumns.create('#content');

		if (!_json.rows) return false;
		var _o = _json.data;

		for (var i=0;i<_o.length;i++) {
			if (_o[i].subject)
				$.topics.render_topics(_o[i]);
			else
				$.topics.render_notes(_o[i]);
		}

		$.topics.paging(_json.pages);
	});
},
render_notes: function($o) {
	var _item =
	$('<div class="corners">'
		+ '<img alt="blurb" id="s'+$o.id+'" class="star" src="/=i_star'+($o.fid ? 1:2)+'.gif">'
		+ '<div class="status">'+$o.text+'<\/div>'
		+ '<div class="data"><a href="/blurb:'+$o.id+'">'
		+ '<img class="id" height="30" width="30" src="/='+$o.uid+'&amp;s=30"><\/a>'
		+ '<div class="hide" style="float:right">'
		+ '<img title="'+$.Trans.Reply+'" src="/=i_reply.png"><\/div>'
		+ '<img src="/=i_'+$o.flag+'.gif"> '
		+ $.Trans.By + ' <a href="/'+$o.login+'">' + $o.name + '<\/a> //&nbsp;'
		+ $.aqStamp($o.uts,true)
		+ ' //&nbsp;' + $o.children + ' ' + $.Trans.Comments + ' //&nbsp;'
		+ $o.score + ' ' + $.Trans.Points
		+ '<\/div><\/div>')

	_item.css({backgroundColor: $.mau.sC})
	.hover(
		function(){ $(this).find('.hide').show() },
		function(){ $(this).find('.hide').hide() })
	.appendTo($.nvzColumns.shortest());

	_item.find('div.status')
	.css('cursor','pointer')
	.click(function(){ document.location.href = '/blurb:'+$o.id });

	_item
	.data('id',$o.id)
	.find('.hide').css('cursor','pointer')
	.click(function(){
		_item.comment({padding: 9, perm: 0, limit: 140,
			callback: function($o) {
				$.reply.blurb({
					blurb: $o.text, parent: _item.data('id')
				},function(){ document.location.href = '/blurb:'+_item.data('id') });
			}
		});
	});
},
render_topics: function($o) {
	var _flag 
		= (($o.flag & (1<<29)) ? 'i_new'
		: (($o.flag & (1<<7))  ? 'i_nil' 
		: ((($o.flag & 24576) == 24576) ? 'i_pri' 
		: (($o.flag & (1<<14)) ? 'i_fri' : 'i_pub'))));

	var _item =
	$('<div class="corners">'
		+ (_flag == 'i_new' || !$.defaults.id 
		? '':'<img id="s'+$o.id+'" class="star" src="/=i_star'+($o.flag & (1<<30) ? 1:2)+'.gif">')
		+ ($o.obj || '')
		+ '<a class="b" href="/'+$o.id+'"> ' + $o.subject + '<\/a>' 
		+ ($o.flag & (1<<10) ? ' <img src="/=i_lock.png"><br>':'<br>')
		+ $o.text
		+ '<div class="data"><a href="/'+$o.id+'">'
		+ '<img class="id" height="30" width="30" src="/='+($o.fid||$o.uid)+'&amp;s=30"><\/a>'
		+ '<img src="/='+_flag+'.gif"> '
		+ ($o.uid==$o.fid?$.Trans.By:$.Trans.In)
		+ ' <a href="/'+$o.login+'">' + $o.name + '<\/a> //&nbsp;'
		+ $.aqStamp($o.uts,true) + ' //&nbsp;'
		+ $o.read + ' ' + $.Trans.Views + ' //&nbsp;'
		+ $o.children + ' ' + $.Trans.Comments + ' //&nbsp;'
		+ $o.score + ' ' + $.Trans.Points
		+ '<\/div><\/div>');

	_item.css('backgroundColor',_flag=='i_new'?$.mau.sF:$.mau.sE)
		.appendTo($.nvzColumns.shortest());

	if ($o.img) {
		_item.find('div.image').show().height(300)
			.each($.topics.loadimages);
		_item.find('object.video').each($.topics.loadvideos);
		_item.find('iframe').width($.topics.s.size).height($.topics.s.size);
	}
},
loadvideos: function() {
	var $div = $(this);
	var _w = $div.width() || $div.css('width').replace(/px/,'');
	var _h = $div.height() || $div.css('height').replace(/px/,'');
	if (_w > ($.topics.s.size-10)) {
		$div.width($.topics.s.size);
		if (_h > 50)
			$div.height($.topics.s.size/(_w/_h));
	}
	$div.after('<br class="clear">');
},
loadimages: function() {
	var $div = $(this);
	var _i = new Image;
	var _ihandler = function() {
		if (_i.width >= ($.topics.s.size-50)) {
			$div.parent().prepend('<img style="width: '+$.topics.s.size+'px" class="img" src="'+_i.src+'">');
			$div.remove();
		}
		$.topics.s.images--;
		$div.height('auto');
	};
	$.topics.s.images++;
	_i.onload = _ihandler;
	_i.src = $div.find('img').attr('src');
	if (_i.complete) _ihandler;
},
paging: function($pages) {
	$('#content div.image').height('auto');
	if ($pages > 1) {
		$('<div class="corners2"><div id="paging"><\/div><br style="clear:both"><\/div>')
			.appendTo($.nvzColumns.shortest());
		$('#paging').aqPaging({
			current: $.topics.s.page, pages: $pages,
			cb: function($p){ 
				var _p = document.location.pathname;
				document.location.href 
					= _p.match(/\/$/) ? '/home:p'+$p
					: (_p.match(/:p\d+$/) ? _p.replace(/:p\d+$/,':p'+$p) 
						: _p+':p'+$p);
			}
		});
	}
	$('div.corners, div.corners2')
		.css({width: $.topics.s.size, padding: '9px'}).corners();
	
	if ($.defaults.id)
		$('div.corners, div.corners2')
			.find('img.star')
			.css('cursor','pointer')
			.click(function(){
				var _id = $(this).attr('id').replace(/^s/,'');
				$.reply.star(_id||0,($(this).attr('alt') == 'blurb'?1:0));
			});
},
s: { cgi: '/--/p2', uid: 0, page: "p1", forums: '0998,1087,1062,1070,1142,1190', images: 0, search: '', size: 240 }
};
})(jQuery);

