private function getTransactionAsRecordSet( $queryResult ) {

		$o = OmegaWikiAttributes::getInstance();

		$dbr = wfGetDB( DB_SLAVE );

		$userAttribute = new Attribute( "user", wfMsg( 'ow_User' ), "short-text" );
		$timestampAttribute = new Attribute( "timestamp", wfMsg( 'ow_Time' ), "timestamp" );
		$summaryAttribute = new Attribute( "summary", wfMsg( 'ow_transaction_summary' ), "short-text" );

		$recordSet = new ArrayRecordSet( new Structure( $o->id, $userAttribute, $timestampAttribute, $summaryAttribute ), new Structure( $o->id ) );

		while ( $row = $dbr->fetchObject( $queryResult ) )
			$recordSet->addRecord( array( $row->transaction_id, getUserLabel( $row->user_id, $row->user_ip ), $row->time, $row->comment ) );

		$editor = createSuggestionsTableViewer( null );
		$editor->addEditor( createShortTextViewer( $timestampAttribute ) );
		$editor->addEditor( createShortTextViewer( $o->id ) );
		$editor->addEditor( createShortTextViewer( $userAttribute ) );
		$editor->addEditor( createShortTextViewer( $summaryAttribute ) );

		return array( $recordSet, $editor );
	}
function getTranslatedContentHistorySelector( $attribute ) {

	$o = OmegaWikiAttributes::getInstance();

	$o = OmegaWikiAttributes::getInstance();

	$result = createSuggestionsTableViewer( $attribute );
	$result->addEditor( createLongTextViewer( $o->text ) );
	$result->addEditor( createTableLifeSpanEditor( $o->recordLifeSpan ) );

	$result = new RecordSetRecordSelector( $result );
	
	return $result;
}