API:EPrints/Language

From EPrints Documentation
Revision as of 15:12, 25 February 2010 by Tdb01r (talk | contribs)
Jump to: navigation, search

EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects


API: Core API

Latest Source Code (3.4, 3.3) | Revision Log | Before editing this page please read Pod2Wiki


NAME

EPrints::Language - A Single Language supported by a repository.

User Comments


DESCRIPTION

The language class handles loading the "phrase" files for a single language. See the mail documentation for a full explanation of the format of phrase files.

User Comments


METHODS

User Comments


new

$language = EPrints::Language->new( $langid, $repository, [$fallback] )

Create a new language object representing the phases eprints will use in a given language, loading them from the phrase config XML files.

$langid is the ISO language ID of the language, $repository is the repository to which this language object belongs. $fallback is either undef or a reference to the main language object for the repository.

User Comments


get_phrase_info

$info = $lang->get_phrase_info( $phraseid, $session )

Returns a hash describing the phrase $phraseid. Contains:

 langid - the language the phrase is from
 phraseid - the phrase id
 xml - the raw XML fragment
 fallback - whether the phrase was from the fallback language
 system - whether the phrase was from the system files
 filename - the file the phrase came from
 

If $phraseid doesn't exist returns undef.

User Comments


get_phrase_ids

$phraseids = $language->get_phrase_ids( $fallback )

Return a reference to an array of all phrase ids that are defined in this language (repository and system).

If $fallback is true returns any additional phrase ids defined in the fallback language.

User Comments


phrase

$xhtml = $language->phrase( $phraseid, $inserts, $session )

Return an XHTML DOM structure for the phrase with the given phraseid.

The phraseid is looked for in the following order, if it's not in one phrase file the system checks the next.

User Comments


this_languages_repository_specific_phrases

This languages repository specific phrases.

User Comments


phrases

The fallback languages repository specific phrases (if there is a fallback).

User Comments


this_languages_general_phrases

This languages general phrases.

User Comments


phrases

The fallback languages general phrases (if there is a fallback).

User Comments


failing_that_it_returns_an_xhtml_dom_encoded_error

Failing that it returns an XHTML DOM encoded error.

User Comments


has_phrase

$boolean = $language->has_phrase( $phraseid, $session )

Return 1 if the phraseid is defined for this language. Return 0 if it is only available as a fallback or unavailable.

User Comments


get_id

$langid = $language->get_id

Return the ISO language ID of this language object.

User Comments


get_fallback

$lang = $language->get_fallback()

Return the fallback language for this language. Returns undef if there is no fallback.

User Comments


load_phrases

$ok = $language->load_phrases( $session, $file )

Load phrases from $file into the current language (use with care!).

User Comments


create_phrase_doc

$doc = EPrints::Language->create_phrase_doc( $session, [ $comment ] )

Create and return a new, empty, phrases document. Optionally put $comment at the top.

User Comments