/** * Returns one spelling of an expression corresponding to a given DM * - in a given language if it exists * - or else in English * - or else in any language * @param $definedMeaningId */ function definedMeaningExpression( $definedMeaningId ) { global $wgLang; $userLanguageId = getLanguageIdForCode( $wgLang->getCode() ) ; list( $definingExpressionId, $definingExpression, $definingExpressionLanguage ) = definingExpressionRow( $definedMeaningId ); if ( $userLanguageId > 0 ) { $result = definedMeaningExpressionForLanguage( $definedMeaningId, $userLanguageId ); } else { $result = ""; } if ( $result == "" ) { // if no expression exists for the specified language : look for an expression in English $result = definedMeaningExpressionForLanguage( $definedMeaningId, 85 ); if ( $result == "" ) { $result = definedMeaningExpressionForAnyLanguage( $definedMeaningId ); if ( $result == "" ) { $result = $definingExpression; } } } return $result; }
function getDefiningExpressionRecord( $definedMeaningId ) { $o = OmegaWikiAttributes::getInstance(); $definingExpression = definingExpressionRow( $definedMeaningId ); $definingExpressionRecord = new ArrayRecord( $o->definedMeaningCompleteDefiningExpression->type ); $definingExpressionRecord->expressionId = $definingExpression[0]; $definingExpressionRecord->definedMeaningDefiningExpression = $definingExpression[1]; $definingExpressionRecord->language = $definingExpression[2]; return $definingExpressionRecord; }