2
0
mirror of https://github.com/ACSPRI/queXS synced 2024-04-02 12:12:16 +00:00

Merged from McMasterReports branch

This commit is contained in:
azammitdcarf
2010-01-14 07:45:37 +00:00
parent 18dbb16138
commit d1b139d315
1884 changed files with 555891 additions and 364768 deletions

View File

@@ -1,310 +0,0 @@
<?php
//============================================================+
// File name : html_entity_decode_php4.php
// Begin : 2006-06-22
// Last Update : 2006-06-22
// Author : Nicola Asuni
// Version : 1.0.000
// License : GNU LGPL (http://www.gnu.org/copyleft/lesser.html)
//
// Description : This is a PHP4 function that redefine the
// standard html_entity_decode function to support
// UTF-8 encoding.
//
//============================================================+
/**
* TCPDF Class.
* @package com.tecnick.tcpdf
*/
/**
* Returns the UTF-8 string corresponding to unicode value.
* @param $num unicode value to convert.
* @return string converted
*/
function code_to_utf8($num) {
if ($num <= 0x7F) {
return chr($num);
} elseif ($num <= 0x7FF) {
return chr(($num >> 0x06) + 0xC0).chr(($num & 0x3F) + 128);
} elseif ($num <= 0xFFFF) {
return chr(($num >> 0x0C) + 0xE0).chr((($num >> 0x06) & 0x3F) + 0x80).chr(($num & 0x3F) + 0x80);
} elseif ($num <= 0x1FFFFF) {
return chr(($num >> 0x12) + 0xF0).chr((($num >> 0x0C) & 0x3F) + 0x80).chr((($num >> 0x06) & 0x3F) + 0x80).chr(($num & 0x3F) + 0x80);
}
return ' '; // default value
}
/**
* Reverse function for htmlentities.
* Convert entities in UTF-8.
* @param $text_to_convert Text to convert.
* @return string converted
*/
function html_entity_decode_php4($text_to_convert) {
$htmlentities_table = array (
"&Aacute;" => "".chr(195).chr(129)."",
"&aacute;" => "".chr(195).chr(161)."",
"&Acirc;" => "".chr(195).chr(130)."",
"&acirc;" => "".chr(195).chr(162)."",
"&acute;" => "".chr(194).chr(180)."",
"&AElig;" => "".chr(195).chr(134)."",
"&aelig;" => "".chr(195).chr(166)."",
"&Agrave;" => "".chr(195).chr(128)."",
"&agrave;" => "".chr(195).chr(160)."",
"&alefsym;" => "".chr(226).chr(132).chr(181)."",
"&Alpha;" => "".chr(206).chr(145)."",
"&alpha;" => "".chr(206).chr(177)."",
"&amp;" => "".chr(38)."",
"&and;" => "".chr(226).chr(136).chr(167)."",
"&ang;" => "".chr(226).chr(136).chr(160)."",
"&Aring;" => "".chr(195).chr(133)."",
"&aring;" => "".chr(195).chr(165)."",
"&asymp;" => "".chr(226).chr(137).chr(136)."",
"&Atilde;" => "".chr(195).chr(131)."",
"&atilde;" => "".chr(195).chr(163)."",
"&Auml;" => "".chr(195).chr(132)."",
"&auml;" => "".chr(195).chr(164)."",
"&bdquo;" => "".chr(226).chr(128).chr(158)."",
"&Beta;" => "".chr(206).chr(146)."",
"&beta;" => "".chr(206).chr(178)."",
"&brvbar;" => "".chr(194).chr(166)."",
"&bull;" => "".chr(226).chr(128).chr(162)."",
"&cap;" => "".chr(226).chr(136).chr(169)."",
"&Ccedil;" => "".chr(195).chr(135)."",
"&ccedil;" => "".chr(195).chr(167)."",
"&cedil;" => "".chr(194).chr(184)."",
"&cent;" => "".chr(194).chr(162)."",
"&Chi;" => "".chr(206).chr(167)."",
"&chi;" => "".chr(207).chr(135)."",
"&circ;" => "".chr(203).chr(134)."",
"&clubs;" => "".chr(226).chr(153).chr(163)."",
"&cong;" => "".chr(226).chr(137).chr(133)."",
"&copy;" => "".chr(194).chr(169)."",
"&crarr;" => "".chr(226).chr(134).chr(181)."",
"&cup;" => "".chr(226).chr(136).chr(170)."",
"&curren;" => "".chr(194).chr(164)."",
"&dagger;" => "".chr(226).chr(128).chr(160)."",
"&Dagger;" => "".chr(226).chr(128).chr(161)."",
"&darr;" => "".chr(226).chr(134).chr(147)."",
"&dArr;" => "".chr(226).chr(135).chr(147)."",
"&deg;" => "".chr(194).chr(176)."",
"&Delta;" => "".chr(206).chr(148)."",
"&delta;" => "".chr(206).chr(180)."",
"&diams;" => "".chr(226).chr(153).chr(166)."",
"&divide;" => "".chr(195).chr(183)."",
"&Eacute;" => "".chr(195).chr(137)."",
"&eacute;" => "".chr(195).chr(169)."",
"&Ecirc;" => "".chr(195).chr(138)."",
"&ecirc;" => "".chr(195).chr(170)."",
"&Egrave;" => "".chr(195).chr(136)."",
"&egrave;" => "".chr(195).chr(168)."",
"&empty;" => "".chr(226).chr(136).chr(133)."",
"&emsp;" => "".chr(226).chr(128).chr(131)."",
"&ensp;" => "".chr(226).chr(128).chr(130)."",
"&Epsilon;" => "".chr(206).chr(149)."",
"&epsilon;" => "".chr(206).chr(181)."",
"&equiv;" => "".chr(226).chr(137).chr(161)."",
"&Eta;" => "".chr(206).chr(151)."",
"&eta;" => "".chr(206).chr(183)."",
"&ETH;" => "".chr(195).chr(144)."",
"&eth;" => "".chr(195).chr(176)."",
"&Euml;" => "".chr(195).chr(139)."",
"&euml;" => "".chr(195).chr(171)."",
"&euro;" => "".chr(226).chr(130).chr(172)."",
"&exist;" => "".chr(226).chr(136).chr(131)."",
"&fnof;" => "".chr(198).chr(146)."",
"&forall;" => "".chr(226).chr(136).chr(128)."",
"&frac12;" => "".chr(194).chr(189)."",
"&frac14;" => "".chr(194).chr(188)."",
"&frac34;" => "".chr(194).chr(190)."",
"&frasl;" => "".chr(226).chr(129).chr(132)."",
"&Gamma;" => "".chr(206).chr(147)."",
"&gamma;" => "".chr(206).chr(179)."",
"&ge;" => "".chr(226).chr(137).chr(165)."",
"&harr;" => "".chr(226).chr(134).chr(148)."",
"&hArr;" => "".chr(226).chr(135).chr(148)."",
"&hearts;" => "".chr(226).chr(153).chr(165)."",
"&hellip;" => "".chr(226).chr(128).chr(166)."",
"&Iacute;" => "".chr(195).chr(141)."",
"&iacute;" => "".chr(195).chr(173)."",
"&Icirc;" => "".chr(195).chr(142)."",
"&icirc;" => "".chr(195).chr(174)."",
"&iexcl;" => "".chr(194).chr(161)."",
"&Igrave;" => "".chr(195).chr(140)."",
"&igrave;" => "".chr(195).chr(172)."",
"&image;" => "".chr(226).chr(132).chr(145)."",
"&infin;" => "".chr(226).chr(136).chr(158)."",
"&int;" => "".chr(226).chr(136).chr(171)."",
"&Iota;" => "".chr(206).chr(153)."",
"&iota;" => "".chr(206).chr(185)."",
"&iquest;" => "".chr(194).chr(191)."",
"&isin;" => "".chr(226).chr(136).chr(136)."",
"&Iuml;" => "".chr(195).chr(143)."",
"&iuml;" => "".chr(195).chr(175)."",
"&Kappa;" => "".chr(206).chr(154)."",
"&kappa;" => "".chr(206).chr(186)."",
"&Lambda;" => "".chr(206).chr(155)."",
"&lambda;" => "".chr(206).chr(187)."",
"&lang;" => "".chr(226).chr(140).chr(169)."",
"&laquo;" => "".chr(194).chr(171)."",
"&larr;" => "".chr(226).chr(134).chr(144)."",
"&lArr;" => "".chr(226).chr(135).chr(144)."",
"&lceil;" => "".chr(226).chr(140).chr(136)."",
"&ldquo;" => "".chr(226).chr(128).chr(156)."",
"&le;" => "".chr(226).chr(137).chr(164)."",
"&lfloor;" => "".chr(226).chr(140).chr(138)."",
"&lowast;" => "".chr(226).chr(136).chr(151)."",
"&loz;" => "".chr(226).chr(151).chr(138)."",
"&lrm;" => "".chr(226).chr(128).chr(142)."",
"&lsaquo;" => "".chr(226).chr(128).chr(185)."",
"&lsquo;" => "".chr(226).chr(128).chr(152)."",
"&macr;" => "".chr(194).chr(175)."",
"&mdash;" => "".chr(226).chr(128).chr(148)."",
"&micro;" => "".chr(194).chr(181)."",
"&middot;" => "".chr(194).chr(183)."",
"&minus;" => "".chr(226).chr(136).chr(146)."",
"&Mu;" => "".chr(206).chr(156)."",
"&mu;" => "".chr(206).chr(188)."",
"&nabla;" => "".chr(226).chr(136).chr(135)."",
"&nbsp;" => "".chr(194).chr(160)."",
"&ndash;" => "".chr(226).chr(128).chr(147)."",
"&ne;" => "".chr(226).chr(137).chr(160)."",
"&ni;" => "".chr(226).chr(136).chr(139)."",
"&not;" => "".chr(194).chr(172)."",
"&notin;" => "".chr(226).chr(136).chr(137)."",
"&nsub;" => "".chr(226).chr(138).chr(132)."",
"&Ntilde;" => "".chr(195).chr(145)."",
"&ntilde;" => "".chr(195).chr(177)."",
"&Nu;" => "".chr(206).chr(157)."",
"&nu;" => "".chr(206).chr(189)."",
"&Oacute;" => "".chr(195).chr(147)."",
"&oacute;" => "".chr(195).chr(179)."",
"&Ocirc;" => "".chr(195).chr(148)."",
"&ocirc;" => "".chr(195).chr(180)."",
"&OElig;" => "".chr(197).chr(146)."",
"&oelig;" => "".chr(197).chr(147)."",
"&Ograve;" => "".chr(195).chr(146)."",
"&ograve;" => "".chr(195).chr(178)."",
"&oline;" => "".chr(226).chr(128).chr(190)."",
"&Omega;" => "".chr(206).chr(169)."",
"&omega;" => "".chr(207).chr(137)."",
"&Omicron;" => "".chr(206).chr(159)."",
"&omicron;" => "".chr(206).chr(191)."",
"&oplus;" => "".chr(226).chr(138).chr(149)."",
"&or;" => "".chr(226).chr(136).chr(168)."",
"&ordf;" => "".chr(194).chr(170)."",
"&ordm;" => "".chr(194).chr(186)."",
"&Oslash;" => "".chr(195).chr(152)."",
"&oslash;" => "".chr(195).chr(184)."",
"&Otilde;" => "".chr(195).chr(149)."",
"&otilde;" => "".chr(195).chr(181)."",
"&otimes;" => "".chr(226).chr(138).chr(151)."",
"&Ouml;" => "".chr(195).chr(150)."",
"&ouml;" => "".chr(195).chr(182)."",
"&para;" => "".chr(194).chr(182)."",
"&part;" => "".chr(226).chr(136).chr(130)."",
"&permil;" => "".chr(226).chr(128).chr(176)."",
"&perp;" => "".chr(226).chr(138).chr(165)."",
"&Phi;" => "".chr(206).chr(166)."",
"&phi;" => "".chr(207).chr(134)."",
"&Pi;" => "".chr(206).chr(160)."",
"&pi;" => "".chr(207).chr(128)."",
"&piv;" => "".chr(207).chr(150)."",
"&plusmn;" => "".chr(194).chr(177)."",
"&pound;" => "".chr(194).chr(163)."",
"&prime;" => "".chr(226).chr(128).chr(178)."",
"&Prime;" => "".chr(226).chr(128).chr(179)."",
"&prod;" => "".chr(226).chr(136).chr(143)."",
"&prop;" => "".chr(226).chr(136).chr(157)."",
"&Psi;" => "".chr(206).chr(168)."",
"&psi;" => "".chr(207).chr(136)."",
"&quot;" => chr(34),
"&radic;" => "".chr(226).chr(136).chr(154)."",
"&rang;" => "".chr(226).chr(140).chr(170)."",
"&raquo;" => "".chr(194).chr(187)."",
"&rarr;" => "".chr(226).chr(134).chr(146)."",
"&rArr;" => "".chr(226).chr(135).chr(146)."",
"&rceil;" => "".chr(226).chr(140).chr(137)."",
"&rdquo;" => "".chr(226).chr(128).chr(157)."",
"&real;" => "".chr(226).chr(132).chr(156)."",
"&reg;" => "".chr(194).chr(174)."",
"&rfloor;" => "".chr(226).chr(140).chr(139)."",
"&Rho;" => "".chr(206).chr(161)."",
"&rho;" => "".chr(207).chr(129)."",
"&rlm;" => "".chr(226).chr(128).chr(143)."",
"&rsaquo;" => "".chr(226).chr(128).chr(186)."",
"&rsquo;" => "".chr(226).chr(128).chr(153)."",
"&sbquo;" => "".chr(226).chr(128).chr(154)."",
"&Scaron;" => "".chr(197).chr(160)."",
"&scaron;" => "".chr(197).chr(161)."",
"&sdot;" => "".chr(226).chr(139).chr(133)."",
"&sect;" => "".chr(194).chr(167)."",
"&shy;" => "".chr(194).chr(173)."",
"&Sigma;" => "".chr(206).chr(163)."",
"&sigma;" => "".chr(207).chr(131)."",
"&sigmaf;" => "".chr(207).chr(130)."",
"&sim;" => "".chr(226).chr(136).chr(188)."",
"&spades;" => "".chr(226).chr(153).chr(160)."",
"&sub;" => "".chr(226).chr(138).chr(130)."",
"&sube;" => "".chr(226).chr(138).chr(134)."",
"&sum;" => "".chr(226).chr(136).chr(145)."",
"&sup1;" => "".chr(194).chr(185)."",
"&sup2;" => "".chr(194).chr(178)."",
"&sup3;" => "".chr(194).chr(179)."",
"&sup;" => "".chr(226).chr(138).chr(131)."",
"&supe;" => "".chr(226).chr(138).chr(135)."",
"&szlig;" => "".chr(195).chr(159)."",
"&Tau;" => "".chr(206).chr(164)."",
"&tau;" => "".chr(207).chr(132)."",
"&there4;" => "".chr(226).chr(136).chr(180)."",
"&Theta;" => "".chr(206).chr(152)."",
"&theta;" => "".chr(206).chr(184)."",
"&thetasym;" => "".chr(207).chr(145)."",
"&thinsp;" => "".chr(226).chr(128).chr(137)."",
"&THORN;" => "".chr(195).chr(158)."",
"&thorn;" => "".chr(195).chr(190)."",
"&tilde;" => "".chr(203).chr(156)."",
"&times;" => "".chr(195).chr(151)."",
"&trade;" => "".chr(226).chr(132).chr(162)."",
"&Uacute;" => "".chr(195).chr(154)."",
"&uacute;" => "".chr(195).chr(186)."",
"&uarr;" => "".chr(226).chr(134).chr(145)."",
"&uArr;" => "".chr(226).chr(135).chr(145)."",
"&Ucirc;" => "".chr(195).chr(155)."",
"&ucirc;" => "".chr(195).chr(187)."",
"&Ugrave;" => "".chr(195).chr(153)."",
"&ugrave;" => "".chr(195).chr(185)."",
"&uml;" => "".chr(194).chr(168)."",
"&upsih;" => "".chr(207).chr(146)."",
"&Upsilon;" => "".chr(206).chr(165)."",
"&upsilon;" => "".chr(207).chr(133)."",
"&Uuml;" => "".chr(195).chr(156)."",
"&uuml;" => "".chr(195).chr(188)."",
"&weierp;" => "".chr(226).chr(132).chr(152)."",
"&Xi;" => "".chr(206).chr(158)."",
"&xi;" => "".chr(206).chr(190)."",
"&Yacute;" => "".chr(195).chr(157)."",
"&yacute;" => "".chr(195).chr(189)."",
"&yen;" => "".chr(194).chr(165)."",
"&yuml;" => "".chr(195).chr(191)."",
"&Yuml;" => "".chr(197).chr(184)."",
"&Zeta;" => "".chr(206).chr(150)."",
"&zeta;" => "".chr(206).chr(182)."",
"&zwj;" => "".chr(226).chr(128).chr(141)."",
"&zwnj;" => "".chr(226).chr(128).chr(140)."",
"&gt;" => ">",
"&lt;" => "<"
);
$return_text = strtr($text_to_convert, $htmlentities_table);
$return_text = preg_replace('~&#x([0-9a-f]+);~ei', 'code_to_utf8(hexdec("\\1"))', $return_text);
$return_text = preg_replace('~&#([0-9]+);~e', 'code_to_utf8(\\1)', $return_text);
return $return_text;
}
//============================================================+
// END OF FILE
//============================================================+
?>

View File

@@ -1,6 +1,6 @@
<?php
/*
* $Id: sanitize.php 4950 2008-05-30 07:42:49Z c_schmitz $
* $Id: sanitize.php 7497 2009-08-19 17:12:48Z c_schmitz $
*
* Copyright (c) 2002,2003 Free Software Foundation
* developed under the custody of the
@@ -93,6 +93,45 @@ function nice_addslashes($string)
}
/**
* 1. Remove leading and trailing dots
* 2. Remove dodgy characters from filename, including spaces and dots except last.
* 3. Force extension if specified..
*
* @param mixed $filename
* @param mixed $forceextension
* @return string
*/
function sanitize_filename($filename, $forceextension="")
{
$defaultfilename = "none";
$dodgychars = "[^0-9a-zA-z()_-]"; // allow only alphanumeric, underscore, parentheses and hyphen
$filename = preg_replace("/^[.]*/","",$filename); // lose any leading dots
$filename = preg_replace("/[.]*$/","",$filename); // lose any trailing dots
$filename = $filename?$filename:$defaultfilename; // if filename is blank, provide default
$lastdotpos=strrpos($filename, "."); // save last dot position
$filename = preg_replace("/$dodgychars/","_",$filename); // replace dodgy characters
$afterdot = "";
if ($lastdotpos !== false) { // Split into name and extension, if any.
$beforedot = substr($filename, 0, $lastdotpos);
if ($lastdotpos < (strlen($filename) - 1))
$afterdot = substr($filename, $lastdotpos + 1);
}
else // no extension
$beforedot = $filename;
if ($forceextension)
$filename = $beforedot . "." . $forceextension;
elseif ($afterdot)
$filename = $beforedot . "." . $afterdot;
else
$filename = $beforedot;
return $filename;
}
// paranoid sanitization -- only let the alphanumeric set through
function sanitize_paranoid_string($string, $min='', $max='')
@@ -107,6 +146,18 @@ function sanitize_paranoid_string($string, $min='', $max='')
}
}
function sanitize_cquestions($string, $min='', $max='')
{
if (isset($string))
{
$string = preg_replace("/[^_.a-zA-Z0-9+#]/", "", $string);
$len = strlen($string);
if((($min != '') && ($len < $min)) || (($max != '') && ($len > $max)))
return FALSE;
return $string;
}
}
function sanitize_email($email) {
// Handles now emails separated with a semikolon
$emailarray=explode(';',$email);
@@ -194,7 +245,7 @@ function sanitize_html_string($string)
// make int int!
function sanitize_int($integer, $min='', $max='')
{
$int = ereg_replace("[^0-9]", "", $integer);
$int = preg_replace("#[^0-9]#", "", $integer);
if((($min != '') && ($int < $min)) || (($max != '') && ($int > $max)))
{
return FALSE;
@@ -323,4 +374,17 @@ function sanitize_languagecodeS($codestringtosanitize) {
return implode(" ",$codearray);
}
function sanitize_signedint($integer, $min='', $max='')
{
$int = (int) $integer;
if((($min != '') && ($int < $min)) || (($max != '') && ($int > $max)))
{
return FALSE; // Oops! Outside limits.
}
return $int;
};
?>

View File

@@ -10,7 +10,7 @@
* other free or open source software licenses.
* See COPYRIGHT.php for copyright notices and details.
*
* $Id: surveytranslator.php 5101 2008-06-18 10:13:03Z c_schmitz $
* $Id: surveytranslator.php 7323 2009-07-14 20:29:38Z jaycburton $
*/
@@ -21,7 +21,38 @@
* @subpackage Core
*/
/**
* Returns all available dateformats in a structured aray
* If $format is given only the particual dateformat will be returned
*
* @param $format integer
* @returns array
*
*/
function getDateFormatData($format=0)
{
$dateformats= array(1=> array ('phpdate' => 'd.m.Y', 'jsdate' => 'dd.mm.yy', 'dateformat' => 'dd.mm.yyyy'),
2=> array ('phpdate' => 'd-m-Y', 'jsdate' => 'dd-mm-yy', 'dateformat' => 'dd-mm-yyyy'),
5=> array ('phpdate' => 'd/m/Y', 'jsdate' => 'dd/mm/yy', 'dateformat' => 'dd/mm/yyyy'),
3=> array ('phpdate' => 'Y.m.d', 'jsdate' => 'yy.mm.dd', 'dateformat' => 'yyyy.mm.dd'),
6=> array ('phpdate' => 'Y-m-d', 'jsdate' => 'yy-mm-dd', 'dateformat' => 'yyyy-mm-dd'),
7=> array ('phpdate' => 'Y/m/d', 'jsdate' => 'yy/mm/dd', 'dateformat' => 'yyyy/mm/dd'),
4=> array ('phpdate' => 'j.n.Y', 'jsdate' => 'd.m.yy', 'dateformat' => 'd.m.yyyy'),
8=> array ('phpdate' => 'j/n/Y', 'jsdate' => 'd/m/yy', 'dateformat' => 'd/m/yyyy'),
9=> array ('phpdate' => 'm-d-Y', 'jsdate' => 'mm-dd-yy', 'dateformat' => 'mm-dd-yyyy')
);
if ($format >0)
{
return $dateformats[$format];
}
else
return $dateformats;
}
function getLanguageCodefromLanguage($languagetosearch)
{
$detaillanguages = getLanguageData();
@@ -37,6 +68,7 @@
}
function getLanguageNameFromCode($codetosearch, $withnative=true)
{
@@ -67,253 +99,347 @@
}
}
/**
* Returns the locale settings for a certain language code
*
* @param string $codetosearch
* @return array Array with locale details
*
*/
function getLanguageDetails($codetosearch)
{
$detaillanguages = getLanguageData();
if (isset($detaillanguages[$codetosearch]))
{
return $detaillanguages[$codetosearch];
}
else
{
return $detaillanguages['en'];
}
}
function getLanguageData() {
global $clang;
unset($supportedLanguages);
// Albanian
$supportedLanguages['sq']['description'] = $clang->gT('Albanian');
$supportedLanguages['sq']['nativedescription'] = 'Shqipe';
$supportedLanguages['sq']['rtl'] = false;
$supportedLanguages['sq']['dateformat'] = 1;
// Arabic
$supportedLanguages['ar']['description'] = $clang->gT('Arabic');
$supportedLanguages['ar']['nativedescription'] = '&#1593;&#1614;&#1585;&#1614;&#1576;&#1610;&#1618;';
$supportedLanguages['ar']['rtl'] = true;
$supportedLanguages['ar']['dateformat'] = 2;
// Basque
$supportedLanguages['eu']['description'] = $clang->gT('Basque');
$supportedLanguages['eu']['nativedescription'] = 'Euskara';
$supportedLanguages['eu']['rtl'] = false;
$supportedLanguages['eu']['dateformat'] = 3;
// Bosnian
$supportedLanguages['bs']['description'] = $clang->gT('Bosnian');
$supportedLanguages['bs']['nativedescription'] = '&#x0411;&#x044a;&#x043b;&#x0433;&#x0430;&#x0440;&#x0441;&#x043a;&#x0438;';
$supportedLanguages['bs']['nativedescription'] = 'Bosanski';
$supportedLanguages['bs']['rtl'] = false;
$supportedLanguages['bs']['dateformat'] = 4;
// Bulgarian
$supportedLanguages['bg']['description'] = $clang->gT('Bulgarian');
$supportedLanguages['bg']['nativedescription'] = '&#x0411;&#x044a;&#x043b;&#x0433;&#x0430;&#x0440;&#x0441;&#x043a;&#x0438;';
$supportedLanguages['bg']['rtl'] = false;
$supportedLanguages['bg']['dateformat'] = 1;
// Catalan
$supportedLanguages['ca']['description'] = $clang->gT('Catalan');
$supportedLanguages['ca']['nativedescription'] = 'Catal&#940;';
$supportedLanguages['ca']['rtl'] = false;
$supportedLanguages['ca']['dateformat'] = 1;
// Welsh
$supportedLanguages['cy']['description'] = $clang->gT('Welsh');
$supportedLanguages['cy']['nativedescription'] = 'Cymraeg';
$supportedLanguages['cy']['rtl'] = false;
$supportedLanguages['cy']['dateformat'] = 5;
// Chinese (Simplified)
$supportedLanguages['zh-Hans']['description'] = $clang->gT('Chinese (Simplified)');
$supportedLanguages['zh-Hans']['nativedescription'] = '&#31616;&#20307;&#20013;&#25991;';
$supportedLanguages['zh-Hans']['rtl'] = false;
$supportedLanguages['zh-Hans']['dateformat'] = 6;
// Chinese (Traditional - Hong Kong)
$supportedLanguages['zh-Hant-HK']['description'] = $clang->gT('Chinese (Traditional - Hong Kong)');
$supportedLanguages['zh-Hant-HK']['nativedescription'] = '&#32321;&#39636;&#20013;&#25991;&#35486;&#31995;';
$supportedLanguages['zh-Hant-HK']['rtl'] = false;
$supportedLanguages['zh-Hant-HK']['dateformat'] = 6;
// Chinese (Traditional - Taiwan)
$supportedLanguages['zh-Hant-TW']['description'] = $clang->gT('Chinese (Traditional - Taiwan)');
$supportedLanguages['zh-Hant-TW']['nativedescription'] = 'Chinese (Traditional - Taiwan)';
$supportedLanguages['zh-Hant-TW']['rtl'] = false;
$supportedLanguages['zh-Hant-TW']['dateformat'] = 6;
// Croatian
$supportedLanguages['hr']['description'] = $clang->gT('Croatian');
$supportedLanguages['hr']['nativedescription'] = 'Hrvatski';
$supportedLanguages['hr']['rtl'] = false;
$supportedLanguages['hr']['dateformat'] = 4;
// Czech
$supportedLanguages['cs']['description'] = $clang->gT('Czech');
$supportedLanguages['cs']['nativedescription'] = '&#x010c;esky';
$supportedLanguages['cs']['rtl'] = false;
$supportedLanguages['cs']['dateformat'] = 4;
// Danish
$supportedLanguages['da']['description'] = $clang->gT('Danish');
$supportedLanguages['da']['nativedescription'] = 'Dansk';
$supportedLanguages['da']['rtl'] = false;
$supportedLanguages['da']['dateformat'] = 2;
// Dutch
$supportedLanguages['nl']['description'] = $clang->gT('Dutch');
$supportedLanguages['nl']['nativedescription'] = 'Nederlands';
$supportedLanguages['nl']['rtl'] = false;
$supportedLanguages['nl']['dateformat'] = 2;
// Dutch
$supportedLanguages['nl-informal']['description'] = $clang->gT('Dutch Informal');
$supportedLanguages['nl-informal']['nativedescription'] = 'Nederlands (Du)';
$supportedLanguages['nl-informal']['rtl'] = false;
$supportedLanguages['nl-informal']['dateformat'] = 2;
// English
$supportedLanguages['en']['description'] = $clang->gT('English');
$supportedLanguages['en']['nativedescription'] = 'English';
$supportedLanguages['en']['rtl'] = false;
$supportedLanguages['en']['dateformat'] = 9;
// Estonian
$supportedLanguages['et']['description'] = $clang->gT('Estonian');
$supportedLanguages['et']['nativedescription'] = 'Eesti';
$supportedLanguages['et']['rtl'] = false;
$supportedLanguages['et']['dateformat'] = 4;
// Finnish
$supportedLanguages['fi']['description'] = $clang->gT('Finnish');
$supportedLanguages['fi']['nativedescription'] = 'Suomi';
$supportedLanguages['fi']['rtl'] = false;
$supportedLanguages['fi']['dateformat'] = 4;
// French
$supportedLanguages['fr']['description'] = $clang->gT('French');
$supportedLanguages['fr']['nativedescription'] = 'Fran&#231;ais';
$supportedLanguages['fr']['rtl'] = false;
$supportedLanguages['fr']['dateformat'] = 2;
// Galician
$supportedLanguages['gl']['description'] = $clang->gT('Galician');
$supportedLanguages['gl']['nativedescription'] = 'Galego';
$supportedLanguages['gl']['rtl'] = false;
$supportedLanguages['gl']['dateformat'] = 5;
// German
$supportedLanguages['de']['description'] = $clang->gT('German');
$supportedLanguages['de']['nativedescription'] = 'Deutsch (Sie)';
$supportedLanguages['de']['rtl'] = false;
$supportedLanguages['de']['dateformat'] = 1;
// German informal
$supportedLanguages['de-informal']['description'] = $clang->gT('German informal');
$supportedLanguages['de-informal']['nativedescription'] = 'Deutsch (Du)';
$supportedLanguages['de-informal']['rtl'] = false;
$supportedLanguages['de-informal']['dateformat'] = 1;
// Greek
$supportedLanguages['el']['description'] = $clang->gT('Greek');
$supportedLanguages['el']['nativedescription'] = '&#949;&#955;&#955;&#951;&#957;&#953;&#954;&#940;';
$supportedLanguages['el']['rtl'] = false;
$supportedLanguages['el']['dateformat'] = 8;
// Hindi
$supportedLanguages['hi']['description'] = $clang->gT('Hindi');
$supportedLanguages['hi']['nativedescription'] = '&#2361;&#2367;&#2344;&#2381;&#2342;&#2368;';
$supportedLanguages['hi']['rtl'] = false;
$supportedLanguages['hi']['dateformat'] = 2;
// Hebrew
$supportedLanguages['he']['description'] = $clang->gT('Hebrew');
$supportedLanguages['he']['nativedescription'] = ' &#1506;&#1489;&#1512;&#1497;&#1514;';
$supportedLanguages['he']['rtl'] = true;
$supportedLanguages['he']['dateformat'] = 5;
// Hungarian
$supportedLanguages['hu']['description'] = $clang->gT('Hungarian');
$supportedLanguages['hu']['nativedescription'] = 'Magyar';
$supportedLanguages['hu']['rtl'] = false;
$supportedLanguages['hu']['dateformat'] = 6;
// Icelandic
$supportedLanguages['is']['description'] = $clang->gT('Icelandic');
$supportedLanguages['is']['nativedescription'] = '&#237;slenska';
$supportedLanguages['is']['rtl'] = false;
$supportedLanguages['is']['dateformat'] = 1;
// Indonesian
$supportedLanguages['id']['description'] = $clang->gT('Indonesian');
$supportedLanguages['id']['nativedescription'] = 'Bahasa Indonesia';
$supportedLanguages['id']['rtl'] = false;
$supportedLanguages['id']['dateformat'] = 5;
// Italian
$supportedLanguages['it']['description'] = $clang->gT('Italian');
$supportedLanguages['it']['nativedescription'] = 'Italiano';
$supportedLanguages['it']['rtl'] = false;
$supportedLanguages['it']['dateformat'] = 5;
// Italian-Formal
$supportedLanguages['it-formal']['description'] = $clang->gT('Italian-Formal');
$supportedLanguages['it-formal']['nativedescription'] = 'Formale Italiano';
$supportedLanguages['it-formal']['rtl'] = false;
$supportedLanguages['it-formal']['dateformat'] = 5;
// Japanese
$supportedLanguages['ja']['description'] = $clang->gT('Japanese');
$supportedLanguages['ja']['nativedescription'] = '&#x65e5;&#x672c;&#x8a9e;';
$supportedLanguages['ja']['rtl'] = false;
$supportedLanguages['ja']['dateformat'] = 6;
// Korean
$supportedLanguages['ko']['description'] = $clang->gT('Korean');
$supportedLanguages['ko']['nativedescription'] = '&#54620;&#44397;&#50612;';
$supportedLanguages['ko']['rtl'] = false;
$supportedLanguages['ko']['dateformat'] = 7;
// Lithuanian
$supportedLanguages['lt']['description'] = $clang->gT('Lithuanian');
$supportedLanguages['lt']['nativedescription'] = 'Lietuvi&#371;';
$supportedLanguages['lt']['rtl'] = false;
$supportedLanguages['lt']['dateformat'] = 6;
// Latvian
$supportedLanguages['lv']['description'] = $clang->gT('Latvian');
$supportedLanguages['lv']['nativedescription'] = 'Latvie&#353;u';
$supportedLanguages['lv']['rtl'] = false;
$supportedLanguages['lv']['dateformat'] = 6;
// Macedonian
$supportedLanguages['mk']['description'] = $clang->gT('Macedonian');
$supportedLanguages['mk']['nativedescription'] = '&#1052;&#1072;&#1082;&#1077;&#1076;&#1086;&#1085;&#1089;&#1082;&#1080;';
$supportedLanguages['mk']['rtl'] = false;
$supportedLanguages['mk']['dateformat'] = 1;
// Norwegian Bokml
// Norwegian Bokmal
$supportedLanguages['nb']['description'] = $clang->gT('Norwegian (Bokmal)');
$supportedLanguages['nb']['nativedescription'] = 'Norsk Bokm&#229;l';
$supportedLanguages['nb']['rtl'] = false;
$supportedLanguages['nb']['dateformat'] = 4;
// Norwegian Nynorsk
$supportedLanguages['nn']['description'] = $clang->gT('Norwegian (Nynorsk)');
$supportedLanguages['nn']['nativedescription'] = 'Norsk Nynorsk';
$supportedLanguages['nn']['rtl'] = false;
$supportedLanguages['nn']['dateformat'] = 4;
// Persian
$supportedLanguages['fa']['description'] = $clang->gT('Persian');
$supportedLanguages['fa']['nativedescription'] = '&#1601;&#1575;&#1585;&#1587;&#1740;';
$supportedLanguages['fa']['rtl'] = true;
$supportedLanguages['fa']['dateformat'] = 6;
// Polish
$supportedLanguages['pl']['description'] = $clang->gT('Polish');
$supportedLanguages['pl']['nativedescription'] = 'Polski';
$supportedLanguages['pl']['rtl'] = false;
$supportedLanguages['pl']['dateformat'] = 1;
// Portuguese
$supportedLanguages['pt']['description'] = $clang->gT('Portuguese');
$supportedLanguages['pt']['nativedescription'] = 'Portugu&#234;s';
$supportedLanguages['pt']['rtl'] = false;
$supportedLanguages['pt']['dateformat'] = 5;
// Brazilian Portuguese
$supportedLanguages['pt-BR']['description'] = $clang->gT('Portuguese (Brazilian)');
$supportedLanguages['pt-BR']['nativedescription'] = 'Portugu&#234;s do Brasil';
$supportedLanguages['pt-BR']['rtl'] = false;
$supportedLanguages['pt-BR']['dateformat'] = 5;
// Russian
$supportedLanguages['ru']['description'] = $clang->gT('Russian');
$supportedLanguages['ru']['nativedescription'] = '&#1056;&#1091;&#1089;&#1089;&#1082;&#1080;&#1081;';
$supportedLanguages['ru']['rtl'] = false;
$supportedLanguages['ru']['dateformat'] = 1;
// Romanian
$supportedLanguages['ro']['description'] = $clang->gT('Romanian');
$supportedLanguages['ro']['nativedescription'] = 'Rom&#226;nesc';
$supportedLanguages['ro']['rtl'] = false;
$supportedLanguages['ro']['dateformat'] = 1;
// Slovak
$supportedLanguages['sk']['description'] = $clang->gT('Slovak');
$supportedLanguages['sk']['nativedescription'] = 'Slov&aacute;k';
$supportedLanguages['sk']['rtl'] = false;
$supportedLanguages['sk']['dateformat'] = 4;
// Sinhala
$supportedLanguages['si']['description'] = $clang->gT('Sinhala');
$supportedLanguages['si']['nativedescription'] = '&#3523;&#3538;&#3458;&#3524;&#3517;';
$supportedLanguages['si']['rtl'] = false;
$supportedLanguages['si']['dateformat'] = 5;
// Slovenian
$supportedLanguages['sl']['description'] = $clang->gT('Slovenian');
$supportedLanguages['sl']['nativedescription'] = 'Sloven&#353;&#269;ina';
$supportedLanguages['sl']['rtl'] = false;
$supportedLanguages['sl']['dateformat'] = 4;
// Serbian
$supportedLanguages['sr']['description'] = $clang->gT('Serbian');
$supportedLanguages['sr']['nativedescription'] = 'Srpski';
$supportedLanguages['sr']['rtl'] = false;
$supportedLanguages['sr']['dateformat'] = 4;
// Spanish
$supportedLanguages['es']['description'] = $clang->gT('Spanish');
$supportedLanguages['es']['nativedescription'] = 'Espa&#241;ol';
$supportedLanguages['es']['rtl'] = false;
$supportedLanguages['es']['dateformat'] = 5;
// Spanish (Mexico)
$supportedLanguages['es-MX']['description'] = $clang->gT('Spanish (Mexico)');
$supportedLanguages['es-MX']['nativedescription'] = 'Espa&#241;ol Mejicano';
$supportedLanguages['es-MX']['rtl'] = false;
$supportedLanguages['es-MX']['dateformat'] = 5;
// Swedish
$supportedLanguages['sv']['description'] = $clang->gT('Swedish');
$supportedLanguages['sv']['nativedescription'] = 'Svenska';
$supportedLanguages['sv']['rtl'] = false;
$supportedLanguages['sv']['dateformat'] = 6;
// Turkish
$supportedLanguages['tr']['description'] = $clang->gT('Turkish');
$supportedLanguages['tr']['nativedescription'] = 'T&#252;rk&#231;e';
$supportedLanguages['tr']['rtl'] = false;
$supportedLanguages['tr']['dateformat'] = 5;
// Thai
$supportedLanguages['th']['description'] = $clang->gT('Thai');
$supportedLanguages['th']['nativedescription'] = '&#3616;&#3634;&#3625;&#3634;&#3652;&#3607;&#3618;';
$supportedLanguages['th']['rtl'] = false;
$supportedLanguages['th']['dateformat'] = 5;
// Vietnamese
$supportedLanguages['vi']['description'] = $clang->gT('Vietnamese');
$supportedLanguages['vi']['nativedescription'] = 'Ti&#7871;ng Vi&#7879;t';
$supportedLanguages['vi']['rtl'] = false;
$supportedLanguages['vi']['dateformat'] = 5;
uasort($supportedLanguages,"user_sort");
@@ -321,39 +447,58 @@
}
function user_sort($a, $b) {
// smarts is all-important, so sort it first
if($a['description'] >$b['description']) {
return 1;
}
else {
return -1;
}
// smarts is all-important, so sort it first
if($a['description'] >$b['description']) {
return 1;
}
else {
return -1;
}
}
/* // future languages
// Afrikaans
$supportedLanguages['za']['nativedescription'] = 'Afrikaans';
// Irish
$supportedLanguages['ie']['nativedescription'] = 'Gaeilge';
// Icelandic
$supportedLanguages['is']['nativedescription'] = 'Icelandic';
// Latvian
$supportedLanguages['lv']['nativedescription'] = 'Latvie&#353;u';
// Serbian
// Serbian
$supportedLanguages['yu']['nativedescription'] = 'Srpski';
*/
// Arabic
$supportedLanguages['sa']['nativedescription'] = '&#1575;&#1604;&#1593;&#1585;&#1576;&#1610;&#1577;';
$supportedLanguages['sa']['right-to-left'] = true;
/**
* This function support the ability NOT to reverse numbers (for example when you output
* a phrase as a parameter for a SWF file that can't handle RTL languages itself, but
* obviously any numbers should remain the same as in the original phrase).
* Note that it can be used just as well for UTF-8 usages if you want the numbers to remain intact
*
* @param string $str
* @param boolean $reverse_numbers
* @return string
*/
function utf8_strrev($str, $reverse_numbers=false) {
preg_match_all('/./us', $str, $ar);
if ($reverse_numbers)
return join('',array_reverse($ar[0]));
else {
$temp = array();
foreach ($ar[0] as $value) {
if (is_numeric($value) && !empty($temp[0]) && is_numeric($temp[0])) {
foreach ($temp as $key => $value2) {
if (is_numeric($value2))
$pos = ($key + 1);
else
break;
}
$temp2 = array_splice($temp, $pos);
$temp = array_merge($temp, array($value), $temp2);
} else
array_unshift($temp, $value);
}
return implode('', $temp);
}
}
$supportedLanguages['he']['right-to-left'] = true;
*/
?>