Пример #1
0
	public function setVersioningAttributes( Record $record, $row ) {

		$o = OmegaWikiAttributes::getInstance();
			
		if ( $this->addAttributes )
			$record->recordLifeSpan = getRecordLifeSpanTuple( $row['add_transaction_id'], $row['remove_transaction_id'] );
	}
function getTranslatedContentHistory( $translatedContentId, $languageId, $isLatest ) {

	$o = OmegaWikiAttributes::getInstance();

	$dc = wdGetDataSetContext();
	$recordSet = new ArrayRecordSet( $o->translatedContentHistoryStructure, $o->translatedContentHistoryKeyStructure );
	
	if ( $isLatest ) {
		$dbr = wfGetDB( DB_SLAVE );
		$queryResult = $dbr->query(
			"SELECT text_text, add_transaction_id, remove_transaction_id " .
			" FROM {$dc}_translated_content, {$dc}_text" .
			" WHERE {$dc}_translated_content.translated_content_id=$translatedContentId" .
			" AND {$dc}_translated_content.language_id=$languageId " .
			" AND {$dc}_translated_content.text_id={$dc}_text.text_id " .
			" ORDER BY add_transaction_id DESC"
		);
		
		while ( $row = $dbr->fetchObject( $queryResult ) ) {
			$record = new ArrayRecord( $o->translatedContentHistoryStructure );
			$record->text = $row->text_text;
			$record->addTransactionId = (int) $row->add_transaction_id;
			$record->recordLifeSpan = getRecordLifeSpanTuple( (int) $row->add_transaction_id, (int) $row->remove_transaction_id );
			
			$recordSet->add( $record );
		}
	}
	
	return $recordSet;
}