mirror of
https://github.com/YunoHost-Apps/limesurvey_ynh.git
synced 2024-09-03 19:36:32 +02:00
996 lines
40 KiB
PHP
996 lines
40 KiB
PHP
<?php
|
|
if ( ! defined('BASEPATH')) exit('No direct script access allowed');
|
|
/*
|
|
* LimeSurvey
|
|
* Copyright (C) 2007-2011 The LimeSurvey Project Team / Carsten Schmitz
|
|
* All rights reserved.
|
|
* License: GNU/GPL License v2 or later, see LICENSE.php
|
|
* LimeSurvey is free software. This version may have been modified pursuant
|
|
* to the GNU General Public License, and as distributed it includes or
|
|
* is derivative of works licensed under the GNU General Public License or
|
|
* other free or open source software licenses.
|
|
* See COPYRIGHT.php for copyright notices and details.
|
|
*
|
|
*/
|
|
|
|
|
|
/*
|
|
* Internationalization and Localization utilities
|
|
*
|
|
* @package LimeSurvey
|
|
* @subpackage Helpers
|
|
*/
|
|
|
|
|
|
/**
|
|
* Returns all available dateformats in a structured aray
|
|
* If $iDateFormat is given only the particual dateformat will be returned
|
|
*
|
|
* @param $iDateFormat integer
|
|
* @param $sLanguageCode string
|
|
* @returns array
|
|
*
|
|
*/
|
|
function getDateFormatData($iDateFormat=0,$sLanguageCode='en')
|
|
{
|
|
$clang = new Limesurvey_lang($sLanguageCode);
|
|
$aDateFormats= array(
|
|
1=> array ('phpdate' => 'd.m.Y', 'jsdate' => 'dd.mm.yy', 'dateformat' => $clang->gT('dd.mm.yyyy')),
|
|
2=> array ('phpdate' => 'd-m-Y', 'jsdate' => 'dd-mm-yy', 'dateformat' => $clang->gT('dd-mm-yyyy')),
|
|
3=> array ('phpdate' => 'Y.m.d', 'jsdate' => 'yy.mm.dd', 'dateformat' => $clang->gT('yyyy.mm.dd')),
|
|
4=> array ('phpdate' => 'j.n.Y', 'jsdate' => 'd.m.yy', 'dateformat' => $clang->gT('d.m.yyyy')),
|
|
5=> array ('phpdate' => 'd/m/Y', 'jsdate' => 'dd/mm/yy', 'dateformat' => $clang->gT('dd/mm/yyyy')),
|
|
6=> array ('phpdate' => 'Y-m-d', 'jsdate' => 'yy-mm-dd', 'dateformat' => $clang->gT('yyyy-mm-dd')),
|
|
7=> array ('phpdate' => 'Y/m/d', 'jsdate' => 'yy/mm/dd', 'dateformat' => $clang->gT('yyyy/mm/dd')),
|
|
8=> array ('phpdate' => 'j/n/Y', 'jsdate' => 'd/m/yy', 'dateformat' => $clang->gT('d/m/yyyy')),
|
|
9=> array ('phpdate' => 'm-d-Y', 'jsdate' => 'mm-dd-yy', 'dateformat' => $clang->gT('mm-dd-yyyy')),
|
|
10=>array ('phpdate' => 'm.d.Y', 'jsdate' => 'mm.dd.yy', 'dateformat' => $clang->gT('mm.dd.yyyy')),
|
|
11=>array ('phpdate' => 'm/d/Y', 'jsdate' => 'mm/dd/yy', 'dateformat' => $clang->gT('mm/dd/yyyy')),
|
|
12=>array ('phpdate' => 'j-n-Y', 'jsdate' => 'd-m-yy', 'dateformat' => $clang->gT('d-m-yyyy'))
|
|
);
|
|
|
|
if ($iDateFormat > 12 || $iDateFormat<0) {
|
|
$iDateFormat = 11; // TODO - what should default be?
|
|
}
|
|
if ($iDateFormat >0)
|
|
{
|
|
return $aDateFormats[$iDateFormat];
|
|
}
|
|
else
|
|
return $aDateFormats;
|
|
|
|
}
|
|
|
|
function getLanguageData($bOrderByNative=false,$sLanguageCode='en') {
|
|
|
|
$clang = new Limesurvey_lang($sLanguageCode);
|
|
|
|
static $result = array();
|
|
|
|
if (isset($result[$sLanguageCode][$bOrderByNative])) return $result[$sLanguageCode][$bOrderByNative];
|
|
|
|
// Afrikaans
|
|
$supportedLanguages['af']['description'] = $clang->gT('Afrikaans');
|
|
$supportedLanguages['af']['nativedescription'] = 'Afrikaans';
|
|
$supportedLanguages['af']['rtl'] = false;
|
|
$supportedLanguages['af']['dateformat'] = 1;
|
|
$supportedLanguages['af']['radixpoint'] = 1;
|
|
|
|
// Albanian
|
|
$supportedLanguages['sq']['description'] = $clang->gT('Albanian');
|
|
$supportedLanguages['sq']['nativedescription'] = 'Shqipe';
|
|
$supportedLanguages['sq']['rtl'] = false;
|
|
$supportedLanguages['sq']['dateformat'] = 1;
|
|
$supportedLanguages['sq']['radixpoint'] = 1;
|
|
|
|
// Amharic
|
|
$supportedLanguages['am']['description'] = $clang->gT('Amharic');
|
|
$supportedLanguages['am']['nativedescription'] = 'አማርኛ';
|
|
$supportedLanguages['am']['rtl'] = false;
|
|
$supportedLanguages['am']['dateformat'] = 2;
|
|
$supportedLanguages['am']['radixpoint'] = 1;
|
|
|
|
// Arabic
|
|
$supportedLanguages['ar']['description'] = $clang->gT('Arabic');
|
|
$supportedLanguages['ar']['nativedescription'] = 'عَرَبيْ';
|
|
$supportedLanguages['ar']['rtl'] = true;
|
|
$supportedLanguages['ar']['dateformat'] = 2;
|
|
$supportedLanguages['ar']['radixpoint'] = 0;
|
|
|
|
// Armenian
|
|
$supportedLanguages['hy']['description'] = $clang->gT('Armenian');
|
|
$supportedLanguages['hy']['nativedescription'] = 'հայերեն';
|
|
$supportedLanguages['hy']['rtl'] = false;
|
|
$supportedLanguages['hy']['dateformat'] = 1;
|
|
$supportedLanguages['hy']['radixpoint'] = 1;
|
|
|
|
// Basque
|
|
$supportedLanguages['eu']['description'] = $clang->gT('Basque');
|
|
$supportedLanguages['eu']['nativedescription'] = 'Euskara';
|
|
$supportedLanguages['eu']['rtl'] = false;
|
|
$supportedLanguages['eu']['dateformat'] = 3;
|
|
$supportedLanguages['eu']['radixpoint'] = 1;
|
|
|
|
// Belarusian
|
|
$supportedLanguages['be']['description'] = $clang->gT('Belarusian');
|
|
$supportedLanguages['be']['nativedescription'] = 'Беларускі';
|
|
$supportedLanguages['be']['rtl'] = false;
|
|
$supportedLanguages['be']['dateformat'] = 1;
|
|
$supportedLanguages['be']['radixpoint'] = 1;
|
|
|
|
// Bosnian
|
|
$supportedLanguages['bs']['description'] = $clang->gT('Bosnian');
|
|
$supportedLanguages['bs']['nativedescription'] = 'Bosanski';
|
|
$supportedLanguages['bs']['rtl'] = false;
|
|
$supportedLanguages['bs']['dateformat'] = 4;
|
|
$supportedLanguages['bs']['radixpoint'] = 0;
|
|
|
|
// Bulgarian
|
|
$supportedLanguages['bg']['description'] = $clang->gT('Bulgarian');
|
|
$supportedLanguages['bg']['nativedescription'] = 'Български';
|
|
$supportedLanguages['bg']['rtl'] = false;
|
|
$supportedLanguages['bg']['dateformat'] = 1;
|
|
$supportedLanguages['bg']['radixpoint'] = 0;
|
|
|
|
// Catalan
|
|
$supportedLanguages['ca-valencia']['description'] = $clang->gT('Catalan (Valencian)');
|
|
$supportedLanguages['ca-valencia']['nativedescription'] = 'Català (Valencià)';
|
|
$supportedLanguages['ca-valencia']['rtl'] = false;
|
|
$supportedLanguages['ca-valencia']['dateformat'] = 1;
|
|
$supportedLanguages['ca-valencia']['radixpoint'] = 1;
|
|
|
|
// Catalan
|
|
$supportedLanguages['ca']['description'] = $clang->gT('Catalan');
|
|
$supportedLanguages['ca']['nativedescription'] = 'Català';
|
|
$supportedLanguages['ca']['rtl'] = false;
|
|
$supportedLanguages['ca']['dateformat'] = 1;
|
|
$supportedLanguages['ca']['radixpoint'] = 1;
|
|
|
|
// Welsh
|
|
$supportedLanguages['cy']['description'] = $clang->gT('Welsh');
|
|
$supportedLanguages['cy']['nativedescription'] = 'Cymraeg';
|
|
$supportedLanguages['cy']['rtl'] = false;
|
|
$supportedLanguages['cy']['dateformat'] = 5;
|
|
$supportedLanguages['cy']['radixpoint'] = 0;
|
|
|
|
// Chinese (Simplified)
|
|
$supportedLanguages['zh-Hans']['description'] = $clang->gT('Chinese (Simplified)');
|
|
$supportedLanguages['zh-Hans']['nativedescription'] = '简体中文';
|
|
$supportedLanguages['zh-Hans']['rtl'] = false;
|
|
$supportedLanguages['zh-Hans']['dateformat'] = 6;
|
|
$supportedLanguages['zh-Hans']['radixpoint'] = 0;
|
|
|
|
// Chinese (Traditional - Hong Kong)
|
|
$supportedLanguages['zh-Hant-HK']['description'] = $clang->gT('Chinese (Traditional - Hong Kong)');
|
|
$supportedLanguages['zh-Hant-HK']['nativedescription'] = '繁體中文語系';
|
|
$supportedLanguages['zh-Hant-HK']['rtl'] = false;
|
|
$supportedLanguages['zh-Hant-HK']['dateformat'] = 6;
|
|
$supportedLanguages['zh-Hant-HK']['radixpoint'] = 0;
|
|
|
|
// Chinese (Traditional - Taiwan)
|
|
$supportedLanguages['zh-Hant-TW']['description'] = $clang->gT('Chinese (Traditional - Taiwan)');
|
|
$supportedLanguages['zh-Hant-TW']['nativedescription'] = '繁體中文(台灣)';
|
|
$supportedLanguages['zh-Hant-TW']['rtl'] = false;
|
|
$supportedLanguages['zh-Hant-TW']['dateformat'] = 6;
|
|
$supportedLanguages['zh-Hant-TW']['radixpoint'] = 0;
|
|
|
|
// Croatian
|
|
$supportedLanguages['hr']['description'] = $clang->gT('Croatian');
|
|
$supportedLanguages['hr']['nativedescription'] = 'Hrvatski';
|
|
$supportedLanguages['hr']['rtl'] = false;
|
|
$supportedLanguages['hr']['dateformat'] = 4;
|
|
$supportedLanguages['hr']['radixpoint'] = 1;
|
|
|
|
// Czech
|
|
$supportedLanguages['cs']['description'] = $clang->gT('Czech');
|
|
$supportedLanguages['cs']['nativedescription'] = 'Česky';
|
|
$supportedLanguages['cs']['rtl'] = false;
|
|
$supportedLanguages['cs']['dateformat'] = 4;
|
|
$supportedLanguages['cs']['radixpoint'] = 1;
|
|
|
|
// Czech informal
|
|
$supportedLanguages['cs-informal']['description'] = $clang->gT('Czech (informal)');
|
|
$supportedLanguages['cs-informal']['nativedescription'] = 'Česky neformální';
|
|
$supportedLanguages['cs-informal']['rtl'] = false;
|
|
$supportedLanguages['cs-informal']['dateformat'] = 4;
|
|
$supportedLanguages['cs-informal']['radixpoint'] = 1;
|
|
|
|
|
|
// Danish
|
|
$supportedLanguages['da']['description'] = $clang->gT('Danish');
|
|
$supportedLanguages['da']['nativedescription'] = 'Dansk';
|
|
$supportedLanguages['da']['rtl'] = false;
|
|
$supportedLanguages['da']['dateformat'] = 2;
|
|
$supportedLanguages['da']['radixpoint'] = 1;
|
|
|
|
// Dari
|
|
$supportedLanguages['prs']['description'] = $clang->gT('Dari');
|
|
$supportedLanguages['prs']['nativedescription'] = 'دری';
|
|
$supportedLanguages['prs']['rtl'] = true;
|
|
$supportedLanguages['prs']['dateformat'] = 6;
|
|
$supportedLanguages['prs']['radixpoint'] = 0;
|
|
|
|
// Dutch
|
|
$supportedLanguages['nl']['description'] = $clang->gT('Dutch');
|
|
$supportedLanguages['nl']['nativedescription'] = 'Nederlands';
|
|
$supportedLanguages['nl']['rtl'] = false;
|
|
$supportedLanguages['nl']['dateformat'] = 2;
|
|
$supportedLanguages['nl']['radixpoint'] = 1;
|
|
|
|
// Dutch
|
|
$supportedLanguages['nl-informal']['description'] = $clang->gT('Dutch (informal)');
|
|
$supportedLanguages['nl-informal']['nativedescription'] = 'Nederlands (informeel)';
|
|
$supportedLanguages['nl-informal']['rtl'] = false;
|
|
$supportedLanguages['nl-informal']['dateformat'] = 2;
|
|
$supportedLanguages['nl-informal']['radixpoint'] = 1;
|
|
|
|
// English
|
|
$supportedLanguages['en']['description'] = $clang->gT('English');
|
|
$supportedLanguages['en']['nativedescription'] = 'English';
|
|
$supportedLanguages['en']['rtl'] = false;
|
|
$supportedLanguages['en']['dateformat'] = 9;
|
|
$supportedLanguages['en']['radixpoint'] = 0;
|
|
|
|
// Estonian
|
|
$supportedLanguages['et']['description'] = $clang->gT('Estonian');
|
|
$supportedLanguages['et']['nativedescription'] = 'Eesti';
|
|
$supportedLanguages['et']['rtl'] = false;
|
|
$supportedLanguages['et']['dateformat'] = 4;
|
|
$supportedLanguages['et']['radixpoint'] = 1;
|
|
|
|
// Finnish
|
|
$supportedLanguages['fi']['description'] = $clang->gT('Finnish');
|
|
$supportedLanguages['fi']['nativedescription'] = 'Suomi';
|
|
$supportedLanguages['fi']['rtl'] = false;
|
|
$supportedLanguages['fi']['dateformat'] = 4;
|
|
$supportedLanguages['fi']['radixpoint'] = 1;
|
|
|
|
// French
|
|
$supportedLanguages['fr']['description'] = $clang->gT('French');
|
|
$supportedLanguages['fr']['nativedescription'] = 'Français';
|
|
$supportedLanguages['fr']['rtl'] = false;
|
|
$supportedLanguages['fr']['dateformat'] = 5;
|
|
$supportedLanguages['fr']['radixpoint'] = 1;
|
|
|
|
// Fula
|
|
$supportedLanguages['ful']['description'] = $clang->gT('Fula');
|
|
$supportedLanguages['ful']['nativedescription'] = 'Fulfulde';
|
|
$supportedLanguages['ful']['rtl'] = false;
|
|
$supportedLanguages['ful']['dateformat'] = 5;
|
|
$supportedLanguages['ful']['radixpoint'] = 1;
|
|
|
|
// Galician
|
|
$supportedLanguages['gl']['description'] = $clang->gT('Galician');
|
|
$supportedLanguages['gl']['nativedescription'] = 'Galego';
|
|
$supportedLanguages['gl']['rtl'] = false;
|
|
$supportedLanguages['gl']['dateformat'] = 5;
|
|
$supportedLanguages['gl']['radixpoint'] = 1;
|
|
|
|
// Georgian
|
|
$supportedLanguages['ka']['description'] = $clang->gT('Georgian');
|
|
$supportedLanguages['ka']['nativedescription'] = 'ქართული ენა';
|
|
$supportedLanguages['ka']['rtl'] = false;
|
|
$supportedLanguages['ka']['dateformat'] = 1;
|
|
$supportedLanguages['ka']['radixpoint'] = 1;
|
|
|
|
// German
|
|
$supportedLanguages['de']['description'] = $clang->gT('German');
|
|
$supportedLanguages['de']['nativedescription'] = 'Deutsch';
|
|
$supportedLanguages['de']['rtl'] = false;
|
|
$supportedLanguages['de']['dateformat'] = 1;
|
|
$supportedLanguages['de']['radixpoint'] = 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;
|
|
$supportedLanguages['de-informal']['radixpoint'] = 1;
|
|
|
|
// Gujarati
|
|
$supportedLanguages['gu']['description'] = $clang->gT('Gujarati');
|
|
$supportedLanguages['gu']['nativedescription'] = 'ગુજરાતી';
|
|
$supportedLanguages['gu']['rtl'] = false;
|
|
$supportedLanguages['gu']['dateformat'] = 2;
|
|
$supportedLanguages['gu']['radixpoint'] = 0;
|
|
|
|
// Greek
|
|
$supportedLanguages['el']['description'] = $clang->gT('Greek');
|
|
$supportedLanguages['el']['nativedescription'] = 'ελληνικά';
|
|
$supportedLanguages['el']['rtl'] = false;
|
|
$supportedLanguages['el']['dateformat'] = 8;
|
|
$supportedLanguages['el']['radixpoint'] = 1;
|
|
|
|
// Hindi
|
|
$supportedLanguages['hi']['description'] = $clang->gT('Hindi');
|
|
$supportedLanguages['hi']['nativedescription'] = 'हिन्दी';
|
|
$supportedLanguages['hi']['rtl'] = false;
|
|
$supportedLanguages['hi']['dateformat'] = 2;
|
|
$supportedLanguages['hi']['radixpoint'] = 0;
|
|
|
|
// Hebrew
|
|
$supportedLanguages['he']['description'] = $clang->gT('Hebrew');
|
|
$supportedLanguages['he']['nativedescription'] = ' עברית';
|
|
$supportedLanguages['he']['rtl'] = true;
|
|
$supportedLanguages['he']['dateformat'] = 5;
|
|
$supportedLanguages['he']['radixpoint'] = 0;
|
|
|
|
// Hungarian
|
|
$supportedLanguages['hu']['description'] = $clang->gT('Hungarian');
|
|
$supportedLanguages['hu']['nativedescription'] = 'Magyar';
|
|
$supportedLanguages['hu']['rtl'] = false;
|
|
$supportedLanguages['hu']['dateformat'] = 6;
|
|
$supportedLanguages['hu']['radixpoint'] = 1;
|
|
|
|
// Icelandic
|
|
$supportedLanguages['is']['description'] = $clang->gT('Icelandic');
|
|
$supportedLanguages['is']['nativedescription'] = 'íslenska';
|
|
$supportedLanguages['is']['rtl'] = false;
|
|
$supportedLanguages['is']['dateformat'] = 1;
|
|
$supportedLanguages['is']['radixpoint'] = 1;
|
|
|
|
// Indonesian
|
|
$supportedLanguages['id']['description'] = $clang->gT('Indonesian');
|
|
$supportedLanguages['id']['nativedescription'] = 'Bahasa Indonesia';
|
|
$supportedLanguages['id']['rtl'] = false;
|
|
$supportedLanguages['id']['dateformat'] = 5;
|
|
$supportedLanguages['id']['radixpoint'] = 1;
|
|
|
|
// Irish
|
|
$supportedLanguages['ie']['description'] = $clang->gT('Irish');
|
|
$supportedLanguages['ie']['nativedescription'] = 'Gaeilge';
|
|
$supportedLanguages['ie']['rtl'] = false;
|
|
$supportedLanguages['ie']['dateformat'] = 2;
|
|
$supportedLanguages['ie']['radixpoint'] = 0;
|
|
|
|
// Italian
|
|
$supportedLanguages['it']['description'] = $clang->gT('Italian');
|
|
$supportedLanguages['it']['nativedescription'] = 'Italiano';
|
|
$supportedLanguages['it']['rtl'] = false;
|
|
$supportedLanguages['it']['dateformat'] = 5;
|
|
$supportedLanguages['it']['radixpoint'] = 1;
|
|
|
|
// Italian informal
|
|
$supportedLanguages['it-informal']['description'] = $clang->gT('Italian (informal)');
|
|
$supportedLanguages['it-informal']['nativedescription'] = 'Italiano (informale)';
|
|
$supportedLanguages['it-informal']['rtl'] = false;
|
|
$supportedLanguages['it-informal']['dateformat'] = 5;
|
|
$supportedLanguages['it-informal']['radixpoint'] = 1;
|
|
|
|
// Japanese
|
|
$supportedLanguages['ja']['description'] = $clang->gT('Japanese');
|
|
$supportedLanguages['ja']['nativedescription'] = '日本語';
|
|
$supportedLanguages['ja']['rtl'] = false;
|
|
$supportedLanguages['ja']['dateformat'] = 6;
|
|
$supportedLanguages['ja']['radixpoint'] = 0;
|
|
|
|
// Kinyarwanda
|
|
$supportedLanguages['rw']['description'] = $clang->gT('Kinyarwanda');
|
|
$supportedLanguages['rw']['nativedescription'] = 'Kinyarwanda';
|
|
$supportedLanguages['rw']['rtl'] = false;
|
|
$supportedLanguages['rw']['dateformat'] = 5;
|
|
$supportedLanguages['rw']['radixpoint'] = 1;
|
|
|
|
// Korean
|
|
$supportedLanguages['ko']['description'] = $clang->gT('Korean');
|
|
$supportedLanguages['ko']['nativedescription'] = '한국어';
|
|
$supportedLanguages['ko']['rtl'] = false;
|
|
$supportedLanguages['ko']['dateformat'] = 7;
|
|
$supportedLanguages['ko']['radixpoint'] = 0;
|
|
|
|
// Kurdish (Sorani)
|
|
$supportedLanguages['ckb']['description'] = $clang->gT('Kurdish (Sorani)');
|
|
$supportedLanguages['ckb']['nativedescription'] = 'کوردیی ناوەندی';
|
|
$supportedLanguages['ckb']['rtl'] = true;
|
|
$supportedLanguages['ckb']['dateformat'] = 1;
|
|
$supportedLanguages['ckb']['radixpoint'] = 1;
|
|
|
|
|
|
// Lithuanian
|
|
$supportedLanguages['lt']['description'] = $clang->gT('Lithuanian');
|
|
$supportedLanguages['lt']['nativedescription'] = 'Lietuvių';
|
|
$supportedLanguages['lt']['rtl'] = false;
|
|
$supportedLanguages['lt']['dateformat'] = 6;
|
|
$supportedLanguages['lt']['radixpoint'] = 1;
|
|
|
|
// Latvian
|
|
$supportedLanguages['lv']['description'] = $clang->gT('Latvian');
|
|
$supportedLanguages['lv']['nativedescription'] = 'Latviešu';
|
|
$supportedLanguages['lv']['rtl'] = false;
|
|
$supportedLanguages['lv']['dateformat'] = 6;
|
|
$supportedLanguages['lv']['radixpoint'] = 1;
|
|
|
|
// Macedonian
|
|
$supportedLanguages['mk']['description'] = $clang->gT('Macedonian');
|
|
$supportedLanguages['mk']['nativedescription'] = 'Македонски';
|
|
$supportedLanguages['mk']['rtl'] = false;
|
|
$supportedLanguages['mk']['dateformat'] = 1;
|
|
$supportedLanguages['mk']['radixpoint'] = 1;
|
|
|
|
// Mongolian
|
|
$supportedLanguages['mn']['description'] = $clang->gT('Mongolian');
|
|
$supportedLanguages['mn']['nativedescription'] = 'Монгол';
|
|
$supportedLanguages['mn']['rtl'] = false;
|
|
$supportedLanguages['mn']['dateformat'] = 3;
|
|
$supportedLanguages['mn']['radixpoint'] = 0;
|
|
|
|
// Malay
|
|
$supportedLanguages['ms']['description'] = $clang->gT('Malay');
|
|
$supportedLanguages['ms']['nativedescription'] = 'Bahasa Melayu';
|
|
$supportedLanguages['ms']['rtl'] = false;
|
|
$supportedLanguages['ms']['dateformat'] = 1;
|
|
$supportedLanguages['ms']['radixpoint'] = 0;
|
|
|
|
// Maltese
|
|
$supportedLanguages['mt']['description'] = $clang->gT('Maltese');
|
|
$supportedLanguages['mt']['nativedescription'] = 'Malti';
|
|
$supportedLanguages['mt']['rtl'] = false;
|
|
$supportedLanguages['mt']['dateformat'] = 1;
|
|
$supportedLanguages['mt']['radixpoint'] = 0;
|
|
|
|
// Marathi
|
|
$supportedLanguages['mr']['description'] = $clang->gT('Marathi');
|
|
$supportedLanguages['mr']['nativedescription'] = 'मराठी';
|
|
$supportedLanguages['mr']['rtl'] = false;
|
|
$supportedLanguages['mr']['dateformat'] = 2;
|
|
$supportedLanguages['mr']['radixpoint'] = 0;
|
|
|
|
// Norwegian Bokmal
|
|
$supportedLanguages['nb']['description'] = $clang->gT('Norwegian (Bokmal)');
|
|
$supportedLanguages['nb']['nativedescription'] = 'Norsk Bokmål';
|
|
$supportedLanguages['nb']['rtl'] = false;
|
|
$supportedLanguages['nb']['dateformat'] = 4;
|
|
$supportedLanguages['nb']['radixpoint'] = 1;
|
|
|
|
// Norwegian Nynorsk
|
|
$supportedLanguages['nn']['description'] = $clang->gT('Norwegian (Nynorsk)');
|
|
$supportedLanguages['nn']['nativedescription'] = 'Norsk Nynorsk';
|
|
$supportedLanguages['nn']['rtl'] = false;
|
|
$supportedLanguages['nn']['dateformat'] = 4;
|
|
$supportedLanguages['nn']['radixpoint'] = 1;
|
|
|
|
// Occitan
|
|
$supportedLanguages['oc']['description'] = $clang->gT('Occitan');
|
|
$supportedLanguages['oc']['nativedescription'] = 'Lenga d'òc';
|
|
$supportedLanguages['oc']['rtl'] = false;
|
|
$supportedLanguages['oc']['dateformat'] = 5;
|
|
$supportedLanguages['oc']['radixpoint'] = 1;
|
|
|
|
// Pashto
|
|
$supportedLanguages['ps']['description'] = $clang->gT('Pashto');
|
|
$supportedLanguages['ps']['nativedescription'] = 'پښتو';
|
|
$supportedLanguages['ps']['rtl'] = true;
|
|
$supportedLanguages['ps']['dateformat'] = 6;
|
|
$supportedLanguages['ps']['radixpoint'] = 0;
|
|
|
|
// Persian
|
|
$supportedLanguages['fa']['description'] = $clang->gT('Persian');
|
|
$supportedLanguages['fa']['nativedescription'] = 'فارسی';
|
|
$supportedLanguages['fa']['rtl'] = true;
|
|
$supportedLanguages['fa']['dateformat'] = 6;
|
|
$supportedLanguages['fa']['radixpoint'] = 0;
|
|
|
|
// Papiamento (Aruba)
|
|
$supportedLanguages['pap-AW']['description'] = $clang->gT('Papiamento (Aruba)');
|
|
$supportedLanguages['pap-AW']['nativedescription'] = 'Papiamento';
|
|
$supportedLanguages['pap-AW']['rtl'] = false;
|
|
$supportedLanguages['pap-AW']['dateformat'] = 2;
|
|
$supportedLanguages['pap-AW']['radixpoint'] = 1;
|
|
|
|
// Papiamento (Curaçao and Bonaire)
|
|
$supportedLanguages['pap-CW']['description'] = $clang->gT('Papiamento (Curaçao and Bonaire)');
|
|
$supportedLanguages['pap-CW']['nativedescription'] = 'Papiamentu';
|
|
$supportedLanguages['pap-CW']['rtl'] = false;
|
|
$supportedLanguages['pap-CW']['dateformat'] = 2;
|
|
$supportedLanguages['pap-CW']['radixpoint'] = 1;
|
|
|
|
// Polish
|
|
$supportedLanguages['pl']['description'] = $clang->gT('Polish');
|
|
$supportedLanguages['pl']['nativedescription'] = 'Polski';
|
|
$supportedLanguages['pl']['rtl'] = false;
|
|
$supportedLanguages['pl']['dateformat'] = 1;
|
|
$supportedLanguages['pl']['radixpoint'] = 1;
|
|
|
|
// Portuguese
|
|
$supportedLanguages['pt']['description'] = $clang->gT('Portuguese');
|
|
$supportedLanguages['pt']['nativedescription'] = 'Português';
|
|
$supportedLanguages['pt']['rtl'] = false;
|
|
$supportedLanguages['pt']['dateformat'] = 5;
|
|
$supportedLanguages['pt']['radixpoint'] = 1;
|
|
|
|
// Brazilian Portuguese
|
|
$supportedLanguages['pt-BR']['description'] = $clang->gT('Portuguese (Brazilian)');
|
|
$supportedLanguages['pt-BR']['nativedescription'] = 'Português do Brasil';
|
|
$supportedLanguages['pt-BR']['rtl'] = false;
|
|
$supportedLanguages['pt-BR']['dateformat'] = 5;
|
|
$supportedLanguages['pt-BR']['radixpoint'] = 1;
|
|
|
|
// Punjabi
|
|
$supportedLanguages['pa']['description'] = $clang->gT('Punjabi');
|
|
$supportedLanguages['pa']['nativedescription'] = 'ਪੰਜਾਬੀ';
|
|
$supportedLanguages['pa']['rtl'] = false;
|
|
$supportedLanguages['pa']['dateformat'] = 2;
|
|
$supportedLanguages['pa']['radixpoint'] = 0;
|
|
|
|
// Russian
|
|
$supportedLanguages['ru']['description'] = $clang->gT('Russian');
|
|
$supportedLanguages['ru']['nativedescription'] = 'Русский';
|
|
$supportedLanguages['ru']['rtl'] = false;
|
|
$supportedLanguages['ru']['dateformat'] = 1;
|
|
$supportedLanguages['ru']['radixpoint'] = 1;
|
|
|
|
// Romanian
|
|
$supportedLanguages['ro']['description'] = $clang->gT('Romanian');
|
|
$supportedLanguages['ro']['nativedescription'] = 'Româna';
|
|
$supportedLanguages['ro']['rtl'] = false;
|
|
$supportedLanguages['ro']['dateformat'] = 1;
|
|
$supportedLanguages['ro']['radixpoint'] = 1;
|
|
|
|
// Slovak
|
|
$supportedLanguages['sk']['description'] = $clang->gT('Slovak');
|
|
$supportedLanguages['sk']['nativedescription'] = 'Slovenčina';
|
|
$supportedLanguages['sk']['rtl'] = false;
|
|
$supportedLanguages['sk']['dateformat'] = 4;
|
|
$supportedLanguages['sk']['radixpoint'] = 1;
|
|
|
|
// Sinhala
|
|
$supportedLanguages['si']['description'] = $clang->gT('Sinhala');
|
|
$supportedLanguages['si']['nativedescription'] = 'සිංහල';
|
|
$supportedLanguages['si']['rtl'] = false;
|
|
$supportedLanguages['si']['dateformat'] = 5;
|
|
$supportedLanguages['si']['radixpoint'] = 0;
|
|
|
|
// Slovenian
|
|
$supportedLanguages['sl']['description'] = $clang->gT('Slovenian');
|
|
$supportedLanguages['sl']['nativedescription'] = 'Slovenščina';
|
|
$supportedLanguages['sl']['rtl'] = false;
|
|
$supportedLanguages['sl']['dateformat'] = 4;
|
|
$supportedLanguages['sl']['radixpoint'] = 1;
|
|
|
|
// Serbian
|
|
$supportedLanguages['sr']['description'] = $clang->gT('Serbian (Cyrillic)');
|
|
$supportedLanguages['sr']['nativedescription'] = 'Српски';
|
|
$supportedLanguages['sr']['rtl'] = false;
|
|
$supportedLanguages['sr']['dateformat'] = 4;
|
|
$supportedLanguages['sr']['radixpoint'] = 1;
|
|
|
|
// Serbian (Latin script)
|
|
$supportedLanguages['sr-Latn']['description'] = $clang->gT('Serbian (Latin)');
|
|
$supportedLanguages['sr-Latn']['nativedescription'] = 'Srpski';
|
|
$supportedLanguages['sr-Latn']['rtl'] = false;
|
|
$supportedLanguages['sr-Latn']['dateformat'] = 4;
|
|
$supportedLanguages['sr-Latn']['radixpoint'] = 1;
|
|
|
|
// Spanish
|
|
$supportedLanguages['es']['description'] = $clang->gT('Spanish');
|
|
$supportedLanguages['es']['nativedescription'] = 'Español';
|
|
$supportedLanguages['es']['rtl'] = false;
|
|
$supportedLanguages['es']['dateformat'] = 5;
|
|
$supportedLanguages['es']['radixpoint'] = 1;
|
|
|
|
// Spanish (Argentina)
|
|
$supportedLanguages['es-AR']['description'] = $clang->gT('Spanish (Argentina)');
|
|
$supportedLanguages['es-AR']['nativedescription'] = 'Español rioplatense';
|
|
$supportedLanguages['es-AR']['rtl'] = false;
|
|
$supportedLanguages['es-AR']['dateformat'] = 5;
|
|
$supportedLanguages['es-AR']['radixpoint'] = 0;
|
|
|
|
// Spanish (Argentina) (Informal)
|
|
$supportedLanguages['es-AR-informal']['description'] = $clang->gT('Spanish (Argentina) (Informal)');
|
|
$supportedLanguages['es-AR-informal']['nativedescription'] = 'Español rioplatense informal';
|
|
$supportedLanguages['es-AR-informal']['rtl'] = false;
|
|
$supportedLanguages['es-AR-informal']['dateformat'] = 5;
|
|
$supportedLanguages['es-AR-informal']['radixpoint'] = 0;
|
|
|
|
// Spanish (Chile)
|
|
$supportedLanguages['es-CL']['description'] = $clang->gT('Spanish (Chile)');
|
|
$supportedLanguages['es-CL']['nativedescription'] = 'Español chileno';
|
|
$supportedLanguages['es-CL']['rtl'] = false;
|
|
$supportedLanguages['es-CL']['dateformat'] = 5;
|
|
$supportedLanguages['es-CL']['radixpoint'] = 0;
|
|
|
|
// Spanish (Mexico)
|
|
$supportedLanguages['es-MX']['description'] = $clang->gT('Spanish (Mexico)');
|
|
$supportedLanguages['es-MX']['nativedescription'] = 'Español mexicano';
|
|
$supportedLanguages['es-MX']['rtl'] = false;
|
|
$supportedLanguages['es-MX']['dateformat'] = 5;
|
|
$supportedLanguages['es-MX']['radixpoint'] = 0;
|
|
|
|
// Swahili
|
|
$supportedLanguages['swh']['description'] = $clang->gT('Swahili');
|
|
$supportedLanguages['swh']['nativedescription'] = 'Kiswahili';
|
|
$supportedLanguages['swh']['rtl'] = false;
|
|
$supportedLanguages['swh']['dateformat'] = 1;
|
|
$supportedLanguages['swh']['radixpoint'] = 1;
|
|
|
|
// Swedish
|
|
$supportedLanguages['sv']['description'] = $clang->gT('Swedish');
|
|
$supportedLanguages['sv']['nativedescription'] = 'Svenska';
|
|
$supportedLanguages['sv']['rtl'] = false;
|
|
$supportedLanguages['sv']['dateformat'] = 6;
|
|
$supportedLanguages['sv']['radixpoint'] = 1;
|
|
|
|
// Tamil
|
|
$supportedLanguages['ta']['description'] = $clang->gT('Tamil');
|
|
$supportedLanguages['ta']['nativedescription'] = 'தமிழ்';
|
|
$supportedLanguages['ta']['rtl'] = false;
|
|
$supportedLanguages['ta']['dateformat'] = 2;
|
|
$supportedLanguages['ta']['radixpoint'] = 0;
|
|
|
|
// Turkish
|
|
$supportedLanguages['tr']['description'] = $clang->gT('Turkish');
|
|
$supportedLanguages['tr']['nativedescription'] = 'Türkçe';
|
|
$supportedLanguages['tr']['rtl'] = false;
|
|
$supportedLanguages['tr']['dateformat'] = 5;
|
|
$supportedLanguages['tr']['radixpoint'] = 1;
|
|
|
|
// Thai
|
|
$supportedLanguages['th']['description'] = $clang->gT('Thai');
|
|
$supportedLanguages['th']['nativedescription'] = 'ภาษาไทย';
|
|
$supportedLanguages['th']['rtl'] = false;
|
|
$supportedLanguages['th']['dateformat'] = 5;
|
|
$supportedLanguages['th']['radixpoint'] = 0;
|
|
|
|
|
|
//Urdu
|
|
$supportedLanguages['ur']['description'] = $clang->gT('Urdu');
|
|
$supportedLanguages['ur']['nativedescription'] = 'اردو';
|
|
$supportedLanguages['ur']['rtl'] = true;
|
|
$supportedLanguages['ur']['dateformat'] = 2;
|
|
$supportedLanguages['ur']['radixpoint'] = 0;
|
|
|
|
// Vietnamese
|
|
$supportedLanguages['vi']['description'] = $clang->gT('Vietnamese');
|
|
$supportedLanguages['vi']['nativedescription'] = 'Tiếng Việt';
|
|
$supportedLanguages['vi']['rtl'] = false;
|
|
$supportedLanguages['vi']['dateformat'] = 5;
|
|
$supportedLanguages['vi']['radixpoint'] = 1;
|
|
|
|
// Zulu
|
|
$supportedLanguages['zu']['description'] = $clang->gT('Zulu');
|
|
$supportedLanguages['zu']['nativedescription'] = 'isiZulu';
|
|
$supportedLanguages['zu']['rtl'] = false;
|
|
$supportedLanguages['zu']['dateformat'] = 5;
|
|
$supportedLanguages['zu']['radixpoint'] = 1;
|
|
|
|
if ($bOrderByNative)
|
|
{
|
|
uasort($supportedLanguages,"userSortNative");
|
|
}
|
|
else
|
|
{
|
|
uasort($supportedLanguages,"userSort");
|
|
}
|
|
|
|
$result[$sLanguageCode][$bOrderByNative] = $supportedLanguages;
|
|
|
|
Return $supportedLanguages;
|
|
}
|
|
|
|
|
|
/**
|
|
* Returns avaliable formats for Radix Points (Decimal Separators) or returns
|
|
* radix point info about a specific format.
|
|
*
|
|
* @param int $format Format ID/Number [optional]
|
|
*/
|
|
function getRadixPointData($format=-1)
|
|
{
|
|
$clang = Yii::app()->lang;
|
|
$aRadixFormats = array (
|
|
0=>array('separator'=> '.', 'desc'=> $clang->gT('Dot (.)')),
|
|
1=>array('separator'=> ',', 'desc'=> $clang->gT('Comma (,)'))
|
|
);
|
|
|
|
// hack for fact that null sometimes sent to this function
|
|
if (is_null($format)) {
|
|
$format = 0;
|
|
}
|
|
|
|
if ($format >= 0)
|
|
return $aRadixFormats[$format];
|
|
else
|
|
return $aRadixFormats;
|
|
}
|
|
|
|
|
|
/**
|
|
* Convert a 'dateformat' format string to a 'phpdate' format.
|
|
*
|
|
* @param $sDateformat string
|
|
* @returns string
|
|
*
|
|
*/
|
|
function getPHPDateFromDateFormat($sDateformat)
|
|
{
|
|
// Note that order is relevant (longer strings first)
|
|
$aFmts = array(
|
|
// With leading zero
|
|
"dd" => "d",
|
|
"mm" => "m",
|
|
"yyyy" => "Y",
|
|
"HH" => "H",
|
|
"MM" => "i",
|
|
// Without leading zero
|
|
"d" => "j",
|
|
"m" => "n",
|
|
"yy" => "y",
|
|
"H" => "G",
|
|
"M" => "i");
|
|
|
|
// Extra allowed characters
|
|
$aAllowed = array('-', '.', '/', ':', ' ');
|
|
|
|
// Convert
|
|
$tmp = array();
|
|
foreach ($aAllowed as $k)
|
|
{
|
|
$tmp[$k] = true;
|
|
}
|
|
foreach (array_values($aFmts) as $k)
|
|
{
|
|
for ($i = 0; $i < strlen($k); $i++)
|
|
{
|
|
$tmp[$k[$i]] = true;
|
|
}
|
|
}
|
|
$aAllowed = $tmp;
|
|
|
|
$tmp = strtr($sDateformat, $aFmts);
|
|
$sPhpdate = "";
|
|
for ($i = 0; $i < strlen($tmp); $i++)
|
|
{
|
|
$c = $tmp[$i];
|
|
if(isset($aAllowed[$c]))
|
|
{
|
|
$sPhpdate .= $c;
|
|
}
|
|
}
|
|
|
|
return $sPhpdate;
|
|
}
|
|
|
|
|
|
/**
|
|
* Convert a 'dateformat' format string to a 'jsdate' format.
|
|
*
|
|
* @param $sDateformat string
|
|
* @returns string
|
|
*
|
|
*/
|
|
function getJSDateFromDateFormat($sDateformat)
|
|
{
|
|
// The only difference from dateformat is that Jsdate does not support truncated years
|
|
return str_replace(array('yy'), array('y'), $sDateformat);
|
|
}
|
|
|
|
|
|
/**
|
|
* Get the date format details for a specific question.
|
|
*
|
|
* @param $aQidAttributes array Question attributes
|
|
* @param $mThisSurvey mixed Array of Survey attributes or surveyid
|
|
* @returns array
|
|
*
|
|
*/
|
|
function getDateFormatDataForQID($aQidAttributes, $mThisSurvey)
|
|
{
|
|
if (isset($aQidAttributes['date_format']) && trim($aQidAttributes['date_format'])!='')
|
|
{
|
|
$aDateFormatDetails = array();
|
|
$aDateFormatDetails['dateformat'] = trim($aQidAttributes['date_format']);
|
|
$aDateFormatDetails['phpdate'] = getPHPDateFromDateFormat($aDateFormatDetails['dateformat']);
|
|
$aDateFormatDetails['jsdate'] = getJSDateFromDateFormat($aDateFormatDetails['dateformat']);
|
|
}
|
|
else
|
|
{
|
|
if(!is_array($mThisSurvey))
|
|
{
|
|
$mThisSurvey = array('surveyls_dateformat' => getDateFormatForSID($mThisSurvey));
|
|
}
|
|
$aDateFormatDetails = getDateFormatData($mThisSurvey['surveyls_dateformat']);
|
|
}
|
|
return $aDateFormatDetails;
|
|
}
|
|
|
|
|
|
/**
|
|
* Get the date format for a specified survey
|
|
*
|
|
* @param $surveyid integer Survey id
|
|
* @param $languagecode string Survey language code (optional)
|
|
* @returns integer
|
|
*
|
|
*/
|
|
function getDateFormatForSID($surveyid, $languagecode='')
|
|
{
|
|
if (!isset($languagecode) || $languagecode=='')
|
|
{
|
|
$languagecode=Survey::model()->findByPk($surveyid)->language;
|
|
}
|
|
$data = SurveyLanguageSetting::model()->getDateFormat($surveyid,$languagecode);
|
|
|
|
if(empty($data))
|
|
{
|
|
$dateformat = 0;
|
|
}
|
|
else
|
|
{
|
|
$dateformat = (int) $data;
|
|
}
|
|
return (int) $dateformat;
|
|
}
|
|
|
|
|
|
/**
|
|
* Check whether we can show the JS date picker with the current format
|
|
*
|
|
* @param $dateformatdetails array Date format details for the question
|
|
* @param $dateformats array Available date formats
|
|
* @returns integer
|
|
*
|
|
*/
|
|
function canShowDatePicker($dateformatdetails, $dateformats=null)
|
|
{
|
|
if(is_null($dateformats))
|
|
{
|
|
$dateformats = getDateFormatData();
|
|
}
|
|
$showpicker = false;
|
|
foreach($dateformats as $format)
|
|
{
|
|
if($format['jsdate'] == $dateformatdetails['jsdate'])
|
|
{
|
|
$showpicker = true;
|
|
break;
|
|
}
|
|
}
|
|
return $showpicker;
|
|
}
|
|
|
|
|
|
function getLanguageCodefromLanguage($languagetosearch)
|
|
{
|
|
$detaillanguages = getLanguageData(false,Yii::app()->session['adminlang']);
|
|
foreach ($detaillanguages as $key2=>$languagename)
|
|
{
|
|
if ($languagetosearch==$languagename['description'])
|
|
{
|
|
return $key2;
|
|
}
|
|
}
|
|
// else return default en code
|
|
return "en";
|
|
}
|
|
|
|
|
|
|
|
|
|
function getLanguageNameFromCode($codetosearch, $withnative=true, $sTranslationLanguage=null)
|
|
{
|
|
if (is_null($sTranslationLanguage))
|
|
{
|
|
$sTranslationLanguage=Yii::app()->session['adminlang'];
|
|
}
|
|
$detaillanguages = getLanguageData(false,$sTranslationLanguage);
|
|
if (isset($detaillanguages[$codetosearch]['description']))
|
|
{
|
|
if ($withnative) {
|
|
return array($detaillanguages[$codetosearch]['description'], $detaillanguages[$codetosearch]['nativedescription']);
|
|
}
|
|
else { return $detaillanguages[$codetosearch]['description'];}
|
|
}
|
|
else
|
|
// else return default en code
|
|
return false;
|
|
}
|
|
|
|
|
|
function getLanguageRTL($sLanguageCode)
|
|
{
|
|
$aLanguageData= getLanguageData(false,$sLanguageCode);
|
|
if (isset($aLanguageData[$sLanguageCode]['rtl']))
|
|
{
|
|
return $aLanguageData[$sLanguageCode]['rtl'];
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Returns the locale settings for a certain language code
|
|
*
|
|
* @param string $codetosearch
|
|
* @return array Array with locale details
|
|
*
|
|
*/
|
|
function getLanguageDetails($codetosearch)
|
|
{
|
|
$detaillanguages = getLanguageData(false,Yii::app()->session['adminlang']);
|
|
if (isset($detaillanguages[$codetosearch]))
|
|
{
|
|
return $detaillanguages[$codetosearch];
|
|
}
|
|
else
|
|
{
|
|
return $detaillanguages['en'];
|
|
}
|
|
}
|
|
|
|
function getLanguageDataRestricted($bOrderByNative=false,$sLanguageCode='en') {
|
|
$aLanguageData=getLanguageData($bOrderByNative, $sLanguageCode);
|
|
|
|
if (trim(Yii::app()->getConfig('restrictToLanguages'))!='')
|
|
{
|
|
foreach(explode(' ',trim(Yii::app()->getConfig('restrictToLanguages'))) AS $key) {
|
|
$aArray[$key] = $aLanguageData[$key];
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$aArray=$aLanguageData;
|
|
}
|
|
return $aArray;
|
|
}
|
|
|
|
|
|
function userSort($a, $b) {
|
|
|
|
// smarts is all-important, so sort it first
|
|
if($a['description'] >$b['description']) {
|
|
return 1;
|
|
}
|
|
else {
|
|
return -1;
|
|
}
|
|
}
|
|
|
|
|
|
function userSortNative($a, $b) {
|
|
|
|
// smarts is all-important, so sort it first
|
|
if($a['nativedescription'] >$b['nativedescription']) {
|
|
return 1;
|
|
}
|
|
else {
|
|
return -1;
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* 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 UTF8Strrev($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);
|
|
}
|
|
}
|
|
|
|
?>
|