Commit Graph

71 Commits (9fd9d928b8ef90ddf1e91af8a5a9182d69e1e6bc)

Author SHA1 Message Date
Ivan Tcholakov 0ac2e538a5 Issue #306 - The multibute string library: Adding the function api_strripos() wich is found as needed for Dokeos LMS. Adding in the main API two constants for PHP5 subversion detection. 16 years ago
Ivan Tcholakov ccaf540550 Issue #306 - The internationalization library: Creation of two functions api_is_western_name_order() and api_get_person_name() for maintaining the conventions for full person name constructed from the first name and the last name. The functions are documented and stable, developers may freely use them. 16 years ago
Ivan Tcholakov 0cb59eb5a7 Issue #306 - Adding a new library about internationalization issues. Currently it contains routines for date/time formatting. 16 years ago
Ivan Tcholakov 3659ea7fd4 Issue #306 - Elimination of the function api_set_string_library_default_language(). Various logic improvements. 16 years ago
Ivan Tcholakov 21b8d880dd Issue #306 - Renaming the folder multibyte_string_database as internationalization_database. The content of this folder will grow with data outside the scope of sting operations only, this is why a more generic name has been chosen. 16 years ago
Ivan Tcholakov fecadb6abe Issue #306 - A sanity check within api_str_ireplace() has been added. 16 years ago
Ivan Tcholakov 146468b7f9 Issue #306 - Replacing the implementation of api_str_ireplace() with a better one. 16 years ago
Ivan Tcholakov c5a9ffb9bb Issue #306 - Testing the multibyte string library, corrections about the functions api_ucwords() and api_substr_replace(). Now the stanalone test makes successfully all passes (135) on Windows and Linux machines. 16 years ago
Ivan Tcholakov b76924e465 Issue #306 - The multibyte string library: Testing and corrections, a formal standalone test has been added. Two encodings are added for support. Improved logic to deal with encoding aliases. It seems that installed mbstring extension is not a mandatory requirement anymore. The php-extensions mbstring and iconv are optional: for speed or for supporting some exotic encodings. 16 years ago
Ivan Tcholakov 1fd25b29ff Issue #306 - The multibute string library: Corrections after testing. 16 years ago
Ivan Tcholakov c3c4275f33 Issue #306: Reworks about the initialization of the multibyte string library. 16 years ago
Ivan Tcholakov 1b116477fe Issue #306 - The multibute string library: Adding comments, corrections. 16 years ago
Ivan Tcholakov a3cb586fd0 Issue #306 - The multibute string library: Restructuring the functions - those for internal use are renamed and moved in the correspondent file. 16 years ago
Ivan Tcholakov 9376bb9d20 Issue #306 - The multibute string library: Logic upgrades, optimizations for speed, part 2. 16 years ago
Ivan Tcholakov 51a649cd96 Issue #306 - The multibute string library: Logic upgrades, optimizations for speed. 16 years ago
Ivan Tcholakov a29e18b691 Issue #306 - Fixing some my mistakes about using the function api_transliterate(). 16 years ago
Ivan Tcholakov b188da6f32 Issue #306 - The multibute string library: Fixing my newly made mistakes, logic upgrades, optimizations for speed. 16 years ago
Ivan Tcholakov b4635b9089 Issue #306 - The myltibyte string library: Various reworks are in progress. 16 years ago
Ivan Tcholakov 0cc113bd14 Issue #306 - The myltibyte string library: Reorganizing some functions. Upgrading the function api_substr() so it could process UTF-8 strings correctly even if there are no mbstring and iconv extensions installed. 16 years ago
Ivan Tcholakov 6cf885f3b3 Feature #306 - Upgrading the myltibyte string library with php-implemented conversion functionality for some single-byte character sets (non-UTF8): 16 years ago
Ivan Tcholakov 7d07b31a40 Task #306 - The myltibyte string library: Final corrections in the functions api_htmlentities() and api_html_entity_decode(). 16 years ago
Ivan Tcholakov d622e4b58a Task #306 - The myltibyte string library: Renaming the functions api_utf8_to_unicode() and api_utf8_from_unicode() as _api_utf8_to_unicode() and _api_utf8_from_unicode(). These functions are for internal use only, so they are moved into the correspondent file. Upgrading the function api_htmlentities(), so it to be able to work with UTF-8 strings even without installed extension mbstring and iconv (the core php5 function htmlentities() does not deal with UTF-8 strings correctly). 16 years ago
Ivan Tcholakov 2c517dab3d Task #306 - The myltibyte string library: Moving the functions for internal use behind the API into a separate file. 16 years ago
Ivan Tcholakov c6ef2946aa Task #306 - Elimination of occurences of the deprecated function api_add_pcre_unicode_modifier(). Correction for the function generate_course_code(). 16 years ago
Ivan Tcholakov 89be813958 Task #306 - The myltibyte string library: File reorganization, adding a file-based database that will help in letter_case operations on UTF-8 strings. Upgrading the functions api_strtolower() and api_strtoupper() in order they not to depend on the mbstring extension for dealing with UTF-8 strings. 16 years ago
Ivan Tcholakov ecfb9ea136 Task #306 - The myltibyte string library: Making the library less dependable on the mbstring extension. Adding derivate UTF-8 aware pcre functions. 16 years ago
Ivan Tcholakov 595b3b57ee Task #306 - The multibyte string library: Reordering some functions for better categorization. Fixing a minor string-sorting related bug. 16 years ago
Ivan Tcholakov 217aae3678 [svn r21618] FS#306 - The multi-byte string library: Renaming a local variable $charset into $system_encoding for avoiding confusion while reading code. 17 years ago
Ivan Tcholakov 12aa14a32a [svn r21547] FS#306 - Moving the checks for installed optional php-extensions to the main API. 17 years ago
Ivan Tcholakov bbd225437f [svn r21539] FS#306 - The multi-bute string library: Removing recently introduced functions api_strcasercmp(), api_strrcmp(), api_strnatcasercmp(), api_strnatrcmp(). They have no chance to be useful. 17 years ago
Ivan Tcholakov f83ae8a87f [svn r21528] FS#306 - The multi-byte string library: Adding new functions for reverse string comparisons - api_strcasercmp(), api_strrcmp(), api_strnatcasercmp(), api_strnatrcmp(). They are handy to be used as callback functions. 17 years ago
Ivan Tcholakov 8f367c5921 [svn r21527] FS#306 - The multi-byte string library: Adding new functions for sorting by keys - api_knatsort(), api_knatrsort(), api_knatcasesort(), api_knatcasersort(). 17 years ago
Ivan Tcholakov 195b64fd61 [svn r21526] FS#306 - The multi-byte string library: Adding new functions for sorting - api_natrsort(), api_natcasersort(). 17 years ago
Ivan Tcholakov 814e9c8fad [svn r21525] FS#306 - The multi-byte string library: Correcting some comments. 17 years ago
Ivan Tcholakov ad7f604358 [svn r21516] FS#306 - The multibyte string library: Adding two functions for language-sensitive sorting in "natural order" - api_natsort() and api_natcasesort(). 17 years ago
Ivan Tcholakov 501c1ed0a3 [svn r21514] FS#306 - The multibyte string library: Adding two functions for language-sensitive sorting in "natural order" - api_strnatcmp() and api_strnatcasecmp(). 17 years ago
Ivan Tcholakov 96c9cf38f3 [svn r21513] FS#306 - The multibyte string library: Some minor corrections in the comments. 17 years ago
Ivan Tcholakov d17be586a8 [svn r21510] FS#306 - The multibyte string library: Adding functions for language-sensitive sorting - api_ksort() and api_krsort(). 17 years ago
Ivan Tcholakov ebe7832bea [svn r21509] FS#306 - The multibyte string function: Adding functions for language-sensitive sorting - api_asort() and api_arsort(). 17 years ago
Ivan Tcholakov a409e16979 [svn r21508] FS#306 - The multibyte string function: Adding functions for language-sensitive sorting - api_sort() and api_rsort(). 17 years ago
Ivan Tcholakov d18c4da1da [svn r21480] FS#306 - The multi-byte string library: Reworking of the function api_strcasecmp(). 17 years ago
Ivan Tcholakov 1df78517c1 [svn r21477] FS#306 - The multi-byte string library: Implementation of a new function for case-sensitive string comparison api_strcmp(). When intl extension is installed, this function depends internally on the more reliable ICU locale, not on OS POSIX locale. Replacing strcmp() with api_strcmp() in some relevant places. Reworking of TableSort::sort_table() for avoiding unnecessary recursive calls. 17 years ago
Ivan Tcholakov 8667c7c752 [svn r21472] FS#306 - The multi-byte string library: Various reworks, introducing support for ICU localses (intl extension from PECL). The goal is the routines of this extension to be used (if ii is installed) for proper comparison of UTF-8 strings in any language. 17 years ago
Ivan Tcholakov 911255f364 [svn r21471] FS#306 - Renaming the function api_initialize_internal_encoding() to api_set_default_encoding(). Other minor changes in comments. 17 years ago
Ivan Tcholakov 1c5c1f3c8f [svn r21432] FS#306 - Adding the Microsoft's alias CP65001 within the function api_get_file_system_encoding() to be recognized as UTF-8. 17 years ago
Ivan Tcholakov 83bef50300 [svn r21415] FS#306 - Removing previously introduced functions api_is_apache and api_is_iis(), they wont be needed. Introducing new functions in the multi-byte string library: api_initialize_internal_encoding($encoding), api_is_latin1_compatible(), api_get_latin1_compatible_languages(). Minor corrections for api_in_array_nocase() and api_refine_language_id(). Corrections in some comments. 17 years ago
Ivan Tcholakov f943595f2a [svn r21405] FS#306 - The multi-byte string library: Adding the function api_is_latin1($encoding) for detection aliases of the Latin 1 character set - ISO-8859-15, ISO-8859-1, WINDOWS-1252, CP1252, ... . Typically this function will be needed for code that provides backward compatibility for Latin 1 Dokeos sites. 17 years ago
Ivan Tcholakov 511972892f [svn r21394] FS#306 - The multi-byte string library: Corrections in the comments about the transliteration function. Renaming a variable according to our rules. 17 years ago
Ivan Tcholakov 5ff36ef2ef [svn r21392] FS#306 - The multi-byte string library: Adding a function that performs transliteration from UTF-8 to ASCII. Adding also a required database with character replacements. The solution has been adapted from the source code of the Drupal's module "Transliteration", version 6.x-2.1, 09-JUN-2009. 17 years ago
Ivan Tcholakov 7fcede25e5 [svn r21382] FS#306 - The multi-byte string library: Making the function api_is_valid_utf8() unaffected by the PHP ini-setting mbstring.func_overload. 17 years ago