App languages.php

From FusionPBX
Revision as of 07:10, 14 May 2013 by Sevenate (talk | contribs)
Jump to: navigation, search

The app_languages.php is an array of all the words, phrases and sentences used in the project.

To do list

All of them need to be done the highest priority ones cannot be automated. The lowest priority are ones that I can automate some of it.

  • dialplans
  • call_flows
  • hardware_phones
  • call_center
  • call center active
  • ivr_menu
  • modules
  • hot_desking
  • sip_profiles
  • hunt_groups
  • sql_query
  • queues
  • vars
  • schemas
  • core/apps
  • core/databases
  • core/menu
  • core/upgrade
  • core/user
  • grammar_edit
  • php_edit
  • xml edit
  • provision_editor

Completed

  • core/default_settings
  • core/domains
  • xmpp
  • contacts
  • destinations
  • recordings - soapee01
  • registrations - soapee01
  • ring_groups - soapee01
  • script_edit - soapee01
  • services - soapee01
  • settings - soapee01
  • sip_status - soapee01
  • voicemail_msgs
  • voicemail_status - soapee01
  • voicemail_greetings
  • xml_cdr
  • time_conditions - rinor
  • conferences active - soapee01
  • content - soapee01
  • dialplan inbound - rinor
  • dialplan outbound - soapee01
  • exec - soapee01
  • log_viewer - soapee01
  • traffic graph - (SVG excluded)
  • app/users
  • music_on_hold -soapee01
  • click_to_call - soapee01
  • gateways - mcrane
  • extensions

Guidelines

The words used in the text variable name

  • separated with a dash.
  • begin with a prefix
  • are lower case

Prefixes

  • title - the title of the page
  • description - information to describe the page or an item on the page
  • button - the label for the buttons
  • confirm - a message used to confirm and action like delete
  • label - the label for items on the page

Languages

Each word, phrase, or sentence has the language declared with the 2 language code with s dash seperating the region. There is one difference the region is entirely in lower case. For additional information see the following.

http://www.w3.org/International/articles/language-tags/

http://www.iana.org/assignments/language-subtag-registry

  • en-us
  • es-mx
  • de-ch
  • de-at
  • fr-ca
  • fr-ch
  • pt-pt
  • pt-br

Example File

An excerpt from the app_languages.php for Conference Center.

<?php
	$text['title-conference-center']['en-us'] = 'Conference Center';
	$text['title-conference-center']['pt-pt'] = ;

	$text['header-conference-center']['en-us'] = 'Conference Center';
	$text['header-conference-center']['pt-pt'] = ;

	$text['description-conference-center']['en-us'] = 'Conference Center is used to setup one or more conference rooms with a name, extension number, a required pin number length, and a description.';
	$text['description-conference-center']['pt-pt'] = ;

	$text['label-name']['en-us'] = 'Name';
	$text['label-name']['pt-pt'] = ;

	$text['label-extension']['en-us'] = 'Extension';
	$text['label-extension']['pt-pt'] = ;

	$text['label-delete']['en-us'] = 'Delete';
	$text['label-delete']['pt-pt'] = ;

	$text['label-edit']['en-us'] = 'Edit';
	$text['label-edit']['pt-pt'] = ;

	$text['button-view']['en-us'] = 'View';
	$text['button-view']['pt-pt'] = ;

	$text['button-back']['en-us'] = 'Back';
	$text['button-back']['pt-pt'] = 'Voltar';

	$text['confirm-update']['en-us'] = 'Update Complete';
	$text['confirm-update']['pt-pt'] = 'Actualização Completa';

	$text['confirm-delete']['en-us'] = 'Do you really want to delete this?';
	$text['confirm-delete']['pt-pt'] = ;

	$text['button-add']['en-us'] = 'Add';
	$text['button-add']['pt-pt'] = ;

	$text['button-save']['en-us'] = 'Save';
	$text['button-save']['pt-pt'] = 'Guardar';

?>

To use inside the code on each page that displays text. Place the following code at the top just after the permision_exists

//add multi-lingual support
	require_once "app_languages.php";
	foreach($text as $key => $value) {
		$text[$key] = $value[$_SESSION['domain']['language']['code']];
	}

To place a word, phrase or sentence it would be used in the code like the following example.

echo "<td align='left' width='30%' nowrap='nowrap'>".$text['title-conference-centers']."</td>\n";

An additional example.

echo "	<tr>\n";
echo "		<td align='left' colspan='2'>\n";
echo "			".$text['description-conference-centers']."\n";
echo "		</td>\n";
echo "	</tr>\n";
echo "</table>\n";