Manipulate content from user-defined tables.

Registered by KaDMiO

This improvement to the International Package should allow the user to specify from which table he wishes to select a certain text, being able to give some additional instructions to the functions regarding language availability, etc. It should also allow to create new tables and delete additional language tables.

Blueprint information

Status:
Complete
Approver:
None
Priority:
High
Drafter:
None
Direction:
Approved
Assignee:
KaDMiO
Definition:
Approved
Series goal:
Accepted for v1
Implementation:
Implemented
Milestone target:
milestone icon alpha-3
Started by
KaDMiO
Completed by
KaDMiO

Sprints

Whiteboard

Changes that will be done to the language system:
- All language tables will have the name: $PREFIX.'lang_'.$NAME
- The table containing the language names will be $PREFIX.'langnames'.
- The table containing the language table names will be $PREFIX.'langtables'.
- The default name for the default language table will be 'default'.

Whenever the kernel starts, all the available language tables are loaded and cached to prevent too much database load (Value saved in global variable 'language_tables' .
The syntax will allow one of the following variations, considering:
- Both keywords ID, ESCAPE, FROM, TEXT and NOTRIM can be lower or uppercase in any possible combination (Eg: TeXT, FroM, etc)
- & represents a variable amount of spaces, from 0 on.
- {ID} is the ID number of the selected text to display.
- {TABLE_NAME} represents the name of the table from where to extract the language information.
- If the FROM parameter isn't used, the text is assumed to come from the default language table.
- If the requested ID was not found on the specified table, a blank text is returned.
- If the ESCAPE parameter is used, the system returns the ID for the language defined by {ESCAPE_LANG} if the one of the current language is a blank text.
- {ESCAPE_LANG} has to be the abbreviation of one of the supported languages of the system.
- {DISPLAY_TEXT} is the text to be returned by the TEXT keyword.
- The TEXT function by default trims all whitespaces on both sides of {DISPLAY_TEXT}.
- If NOTRIM is used as an additional parameter, {DISPLAY_TEXT} is not trimmed.

This is the list of all possible language instruction combinations.
    &ID&:&{ID}&
    &ID&:&{ID}&FROM&:&"{TABLE_NAME}"&
    &ID&:&{ID}&ESCAPE&:&{ESCAPE_LANG}&
    &ID&:&{ID}&FROM&:&"{TABLE_NAME}"&ESCAPE&:&{ESCAPE_LANG}&
    &TEXT&:{DISPLAY_TEXT}
    &TEXT&=&NOTRIM&:{DISPLAY_TEXT}

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.