зеркало из https://github.com/mozilla/pjs.git
Add new console/ and libs/ files
This commit is contained in:
Родитель
9b036f94bc
Коммит
20d8422add
|
@ -0,0 +1,75 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0000_007f.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0000 through U+007F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0000_007f'][] = array('upper' => 65, 'status' => 'C', 'lower' => array(97)); /* LATIN CAPITAL LETTER A */
|
||||
$config['0000_007f'][] = array('upper' => 66, 'status' => 'C', 'lower' => array(98)); /* LATIN CAPITAL LETTER B */
|
||||
$config['0000_007f'][] = array('upper' => 67, 'status' => 'C', 'lower' => array(99)); /* LATIN CAPITAL LETTER C */
|
||||
$config['0000_007f'][] = array('upper' => 68, 'status' => 'C', 'lower' => array(100)); /* LATIN CAPITAL LETTER D */
|
||||
$config['0000_007f'][] = array('upper' => 69, 'status' => 'C', 'lower' => array(101)); /* LATIN CAPITAL LETTER E */
|
||||
$config['0000_007f'][] = array('upper' => 70, 'status' => 'C', 'lower' => array(102)); /* LATIN CAPITAL LETTER F */
|
||||
$config['0000_007f'][] = array('upper' => 71, 'status' => 'C', 'lower' => array(103)); /* LATIN CAPITAL LETTER G */
|
||||
$config['0000_007f'][] = array('upper' => 72, 'status' => 'C', 'lower' => array(104)); /* LATIN CAPITAL LETTER H */
|
||||
$config['0000_007f'][] = array('upper' => 73, 'status' => 'C', 'lower' => array(105)); /* LATIN CAPITAL LETTER I */
|
||||
$config['0000_007f'][] = array('upper' => 73, 'status' => 'T', 'lower' => array(305)); /* LATIN CAPITAL LETTER I */
|
||||
$config['0000_007f'][] = array('upper' => 74, 'status' => 'C', 'lower' => array(106)); /* LATIN CAPITAL LETTER J */
|
||||
$config['0000_007f'][] = array('upper' => 75, 'status' => 'C', 'lower' => array(107)); /* LATIN CAPITAL LETTER K */
|
||||
$config['0000_007f'][] = array('upper' => 76, 'status' => 'C', 'lower' => array(108)); /* LATIN CAPITAL LETTER L */
|
||||
$config['0000_007f'][] = array('upper' => 77, 'status' => 'C', 'lower' => array(109)); /* LATIN CAPITAL LETTER M */
|
||||
$config['0000_007f'][] = array('upper' => 78, 'status' => 'C', 'lower' => array(110)); /* LATIN CAPITAL LETTER N */
|
||||
$config['0000_007f'][] = array('upper' => 79, 'status' => 'C', 'lower' => array(111)); /* LATIN CAPITAL LETTER O */
|
||||
$config['0000_007f'][] = array('upper' => 80, 'status' => 'C', 'lower' => array(112)); /* LATIN CAPITAL LETTER P */
|
||||
$config['0000_007f'][] = array('upper' => 81, 'status' => 'C', 'lower' => array(113)); /* LATIN CAPITAL LETTER Q */
|
||||
$config['0000_007f'][] = array('upper' => 82, 'status' => 'C', 'lower' => array(114)); /* LATIN CAPITAL LETTER R */
|
||||
$config['0000_007f'][] = array('upper' => 83, 'status' => 'C', 'lower' => array(115)); /* LATIN CAPITAL LETTER S */
|
||||
$config['0000_007f'][] = array('upper' => 84, 'status' => 'C', 'lower' => array(116)); /* LATIN CAPITAL LETTER T */
|
||||
$config['0000_007f'][] = array('upper' => 85, 'status' => 'C', 'lower' => array(117)); /* LATIN CAPITAL LETTER U */
|
||||
$config['0000_007f'][] = array('upper' => 86, 'status' => 'C', 'lower' => array(118)); /* LATIN CAPITAL LETTER V */
|
||||
$config['0000_007f'][] = array('upper' => 87, 'status' => 'C', 'lower' => array(119)); /* LATIN CAPITAL LETTER W */
|
||||
$config['0000_007f'][] = array('upper' => 88, 'status' => 'C', 'lower' => array(120)); /* LATIN CAPITAL LETTER X */
|
||||
$config['0000_007f'][] = array('upper' => 89, 'status' => 'C', 'lower' => array(121)); /* LATIN CAPITAL LETTER Y */
|
||||
$config['0000_007f'][] = array('upper' => 90, 'status' => 'C', 'lower' => array(122)); /* LATIN CAPITAL LETTER Z */
|
||||
?>
|
|
@ -0,0 +1,80 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0080_00ff.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0080 through U+00FF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0080_00ff'][] = array('upper' => 181, 'status' => 'C', 'lower' => array(956)); /* MICRO SIGN */
|
||||
$config['0080_00ff'][] = array('upper' => 192, 'status' => 'C', 'lower' => array(224)); /* LATIN CAPITAL LETTER A WITH GRAVE */
|
||||
$config['0080_00ff'][] = array('upper' => 193, 'status' => 'C', 'lower' => array(225)); /* LATIN CAPITAL LETTER A WITH ACUTE */
|
||||
$config['0080_00ff'][] = array('upper' => 194, 'status' => 'C', 'lower' => array(226)); /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX */
|
||||
$config['0080_00ff'][] = array('upper' => 195, 'status' => 'C', 'lower' => array(227)); /* LATIN CAPITAL LETTER A WITH TILDE */
|
||||
$config['0080_00ff'][] = array('upper' => 196, 'status' => 'C', 'lower' => array(228)); /* LATIN CAPITAL LETTER A WITH DIAERESIS */
|
||||
$config['0080_00ff'][] = array('upper' => 197, 'status' => 'C', 'lower' => array(229)); /* LATIN CAPITAL LETTER A WITH RING ABOVE */
|
||||
$config['0080_00ff'][] = array('upper' => 198, 'status' => 'C', 'lower' => array(230)); /* LATIN CAPITAL LETTER AE */
|
||||
$config['0080_00ff'][] = array('upper' => 199, 'status' => 'C', 'lower' => array(231)); /* LATIN CAPITAL LETTER C WITH CEDILLA */
|
||||
$config['0080_00ff'][] = array('upper' => 200, 'status' => 'C', 'lower' => array(232)); /* LATIN CAPITAL LETTER E WITH GRAVE */
|
||||
$config['0080_00ff'][] = array('upper' => 201, 'status' => 'C', 'lower' => array(233)); /* LATIN CAPITAL LETTER E WITH ACUTE */
|
||||
$config['0080_00ff'][] = array('upper' => 202, 'status' => 'C', 'lower' => array(234)); /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX */
|
||||
$config['0080_00ff'][] = array('upper' => 203, 'status' => 'C', 'lower' => array(235)); /* LATIN CAPITAL LETTER E WITH DIAERESIS */
|
||||
$config['0080_00ff'][] = array('upper' => 204, 'status' => 'C', 'lower' => array(236)); /* LATIN CAPITAL LETTER I WITH GRAVE */
|
||||
$config['0080_00ff'][] = array('upper' => 205, 'status' => 'C', 'lower' => array(237)); /* LATIN CAPITAL LETTER I WITH ACUTE */
|
||||
$config['0080_00ff'][] = array('upper' => 206, 'status' => 'C', 'lower' => array(238)); /* LATIN CAPITAL LETTER I WITH CIRCUMFLEX */
|
||||
$config['0080_00ff'][] = array('upper' => 207, 'status' => 'C', 'lower' => array(239)); /* LATIN CAPITAL LETTER I WITH DIAERESIS */
|
||||
$config['0080_00ff'][] = array('upper' => 208, 'status' => 'C', 'lower' => array(240)); /* LATIN CAPITAL LETTER ETH */
|
||||
$config['0080_00ff'][] = array('upper' => 209, 'status' => 'C', 'lower' => array(241)); /* LATIN CAPITAL LETTER N WITH TILDE */
|
||||
$config['0080_00ff'][] = array('upper' => 210, 'status' => 'C', 'lower' => array(242)); /* LATIN CAPITAL LETTER O WITH GRAVE */
|
||||
$config['0080_00ff'][] = array('upper' => 211, 'status' => 'C', 'lower' => array(243)); /* LATIN CAPITAL LETTER O WITH ACUTE */
|
||||
$config['0080_00ff'][] = array('upper' => 212, 'status' => 'C', 'lower' => array(244)); /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX */
|
||||
$config['0080_00ff'][] = array('upper' => 213, 'status' => 'C', 'lower' => array(245)); /* LATIN CAPITAL LETTER O WITH TILDE */
|
||||
$config['0080_00ff'][] = array('upper' => 214, 'status' => 'C', 'lower' => array(246)); /* LATIN CAPITAL LETTER O WITH DIAERESIS */
|
||||
$config['0080_00ff'][] = array('upper' => 216, 'status' => 'C', 'lower' => array(248)); /* LATIN CAPITAL LETTER O WITH STROKE */
|
||||
$config['0080_00ff'][] = array('upper' => 217, 'status' => 'C', 'lower' => array(249)); /* LATIN CAPITAL LETTER U WITH GRAVE */
|
||||
$config['0080_00ff'][] = array('upper' => 218, 'status' => 'C', 'lower' => array(250)); /* LATIN CAPITAL LETTER U WITH ACUTE */
|
||||
$config['0080_00ff'][] = array('upper' => 219, 'status' => 'C', 'lower' => array(251)); /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX */
|
||||
$config['0080_00ff'][] = array('upper' => 220, 'status' => 'C', 'lower' => array(252)); /* LATIN CAPITAL LETTER U WITH DIAERESIS */
|
||||
$config['0080_00ff'][] = array('upper' => 221, 'status' => 'C', 'lower' => array(253)); /* LATIN CAPITAL LETTER Y WITH ACUTE */
|
||||
$config['0080_00ff'][] = array('upper' => 222, 'status' => 'C', 'lower' => array(254)); /* LATIN CAPITAL LETTER THORN */
|
||||
$config['0080_00ff'][] = array('upper' => 223, 'status' => 'F', 'lower' => array(115, 115)); /* LATIN SMALL LETTER SHARP S */
|
||||
?>
|
|
@ -0,0 +1,114 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0100_017f.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0100 through U+017F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0100_017f'][] = array('upper' => 256, 'status' => 'C', 'lower' => array(257)); /* LATIN CAPITAL LETTER A WITH MACRON */
|
||||
$config['0100_017f'][] = array('upper' => 258, 'status' => 'C', 'lower' => array(259)); /* LATIN CAPITAL LETTER A WITH BREVE */
|
||||
$config['0100_017f'][] = array('upper' => 260, 'status' => 'C', 'lower' => array(261)); /* LATIN CAPITAL LETTER A WITH OGONEK */
|
||||
$config['0100_017f'][] = array('upper' => 262, 'status' => 'C', 'lower' => array(263)); /* LATIN CAPITAL LETTER C WITH ACUTE */
|
||||
$config['0100_017f'][] = array('upper' => 264, 'status' => 'C', 'lower' => array(265)); /* LATIN CAPITAL LETTER C WITH CIRCUMFLEX */
|
||||
$config['0100_017f'][] = array('upper' => 266, 'status' => 'C', 'lower' => array(267)); /* LATIN CAPITAL LETTER C WITH DOT ABOVE */
|
||||
$config['0100_017f'][] = array('upper' => 268, 'status' => 'C', 'lower' => array(269)); /* LATIN CAPITAL LETTER C WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 270, 'status' => 'C', 'lower' => array(271)); /* LATIN CAPITAL LETTER D WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 272, 'status' => 'C', 'lower' => array(273)); /* LATIN CAPITAL LETTER D WITH STROKE */
|
||||
$config['0100_017f'][] = array('upper' => 274, 'status' => 'C', 'lower' => array(275)); /* LATIN CAPITAL LETTER E WITH MACRON */
|
||||
$config['0100_017f'][] = array('upper' => 276, 'status' => 'C', 'lower' => array(277)); /* LATIN CAPITAL LETTER E WITH BREVE */
|
||||
$config['0100_017f'][] = array('upper' => 278, 'status' => 'C', 'lower' => array(279)); /* LATIN CAPITAL LETTER E WITH DOT ABOVE */
|
||||
$config['0100_017f'][] = array('upper' => 280, 'status' => 'C', 'lower' => array(281)); /* LATIN CAPITAL LETTER E WITH OGONEK */
|
||||
$config['0100_017f'][] = array('upper' => 282, 'status' => 'C', 'lower' => array(283)); /* LATIN CAPITAL LETTER E WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 284, 'status' => 'C', 'lower' => array(285)); /* LATIN CAPITAL LETTER G WITH CIRCUMFLEX */
|
||||
$config['0100_017f'][] = array('upper' => 286, 'status' => 'C', 'lower' => array(287)); /* LATIN CAPITAL LETTER G WITH BREVE */
|
||||
$config['0100_017f'][] = array('upper' => 288, 'status' => 'C', 'lower' => array(289)); /* LATIN CAPITAL LETTER G WITH DOT ABOVE */
|
||||
$config['0100_017f'][] = array('upper' => 290, 'status' => 'C', 'lower' => array(291)); /* LATIN CAPITAL LETTER G WITH CEDILLA */
|
||||
$config['0100_017f'][] = array('upper' => 292, 'status' => 'C', 'lower' => array(293)); /* LATIN CAPITAL LETTER H WITH CIRCUMFLEX */
|
||||
$config['0100_017f'][] = array('upper' => 294, 'status' => 'C', 'lower' => array(295)); /* LATIN CAPITAL LETTER H WITH STROKE */
|
||||
$config['0100_017f'][] = array('upper' => 296, 'status' => 'C', 'lower' => array(297)); /* LATIN CAPITAL LETTER I WITH TILDE */
|
||||
$config['0100_017f'][] = array('upper' => 298, 'status' => 'C', 'lower' => array(299)); /* LATIN CAPITAL LETTER I WITH MACRON */
|
||||
$config['0100_017f'][] = array('upper' => 300, 'status' => 'C', 'lower' => array(301)); /* LATIN CAPITAL LETTER I WITH BREVE */
|
||||
$config['0100_017f'][] = array('upper' => 302, 'status' => 'C', 'lower' => array(303)); /* LATIN CAPITAL LETTER I WITH OGONEK */
|
||||
$config['0100_017f'][] = array('upper' => 304, 'status' => 'F', 'lower' => array(105, 775)); /* LATIN CAPITAL LETTER I WITH DOT ABOVE */
|
||||
$config['0100_017f'][] = array('upper' => 304, 'status' => 'T', 'lower' => array(105)); /* LATIN CAPITAL LETTER I WITH DOT ABOVE */
|
||||
$config['0100_017f'][] = array('upper' => 306, 'status' => 'C', 'lower' => array(307)); /* LATIN CAPITAL LIGATURE IJ */
|
||||
$config['0100_017f'][] = array('upper' => 308, 'status' => 'C', 'lower' => array(309)); /* LATIN CAPITAL LETTER J WITH CIRCUMFLEX */
|
||||
$config['0100_017f'][] = array('upper' => 310, 'status' => 'C', 'lower' => array(311)); /* LATIN CAPITAL LETTER K WITH CEDILLA */
|
||||
$config['0100_017f'][] = array('upper' => 313, 'status' => 'C', 'lower' => array(314)); /* LATIN CAPITAL LETTER L WITH ACUTE */
|
||||
$config['0100_017f'][] = array('upper' => 315, 'status' => 'C', 'lower' => array(316)); /* LATIN CAPITAL LETTER L WITH CEDILLA */
|
||||
$config['0100_017f'][] = array('upper' => 317, 'status' => 'C', 'lower' => array(318)); /* LATIN CAPITAL LETTER L WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 319, 'status' => 'C', 'lower' => array(320)); /* LATIN CAPITAL LETTER L WITH MIDDLE DOT */
|
||||
$config['0100_017f'][] = array('upper' => 321, 'status' => 'C', 'lower' => array(322)); /* LATIN CAPITAL LETTER L WITH STROKE */
|
||||
$config['0100_017f'][] = array('upper' => 323, 'status' => 'C', 'lower' => array(324)); /* LATIN CAPITAL LETTER N WITH ACUTE */
|
||||
$config['0100_017f'][] = array('upper' => 325, 'status' => 'C', 'lower' => array(326)); /* LATIN CAPITAL LETTER N WITH CEDILLA */
|
||||
$config['0100_017f'][] = array('upper' => 327, 'status' => 'C', 'lower' => array(328)); /* LATIN CAPITAL LETTER N WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 329, 'status' => 'F', 'lower' => array(700, 110)); /* LATIN SMALL LETTER N PRECEDED BY APOSTROPHE */
|
||||
$config['0100_017f'][] = array('upper' => 330, 'status' => 'C', 'lower' => array(331)); /* LATIN CAPITAL LETTER ENG */
|
||||
$config['0100_017f'][] = array('upper' => 332, 'status' => 'C', 'lower' => array(333)); /* LATIN CAPITAL LETTER O WITH MACRON */
|
||||
$config['0100_017f'][] = array('upper' => 334, 'status' => 'C', 'lower' => array(335)); /* LATIN CAPITAL LETTER O WITH BREVE */
|
||||
$config['0100_017f'][] = array('upper' => 336, 'status' => 'C', 'lower' => array(337)); /* LATIN CAPITAL LETTER O WITH DOUBLE ACUTE */
|
||||
$config['0100_017f'][] = array('upper' => 338, 'status' => 'C', 'lower' => array(339)); /* LATIN CAPITAL LIGATURE OE */
|
||||
$config['0100_017f'][] = array('upper' => 340, 'status' => 'C', 'lower' => array(341)); /* LATIN CAPITAL LETTER R WITH ACUTE */
|
||||
$config['0100_017f'][] = array('upper' => 342, 'status' => 'C', 'lower' => array(343)); /* LATIN CAPITAL LETTER R WITH CEDILLA */
|
||||
$config['0100_017f'][] = array('upper' => 344, 'status' => 'C', 'lower' => array(345)); /* LATIN CAPITAL LETTER R WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 346, 'status' => 'C', 'lower' => array(347)); /* LATIN CAPITAL LETTER S WITH ACUTE */
|
||||
$config['0100_017f'][] = array('upper' => 348, 'status' => 'C', 'lower' => array(349)); /* LATIN CAPITAL LETTER S WITH CIRCUMFLEX */
|
||||
$config['0100_017f'][] = array('upper' => 350, 'status' => 'C', 'lower' => array(351)); /* LATIN CAPITAL LETTER S WITH CEDILLA */
|
||||
$config['0100_017f'][] = array('upper' => 352, 'status' => 'C', 'lower' => array(353)); /* LATIN CAPITAL LETTER S WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 354, 'status' => 'C', 'lower' => array(355)); /* LATIN CAPITAL LETTER T WITH CEDILLA */
|
||||
$config['0100_017f'][] = array('upper' => 356, 'status' => 'C', 'lower' => array(357)); /* LATIN CAPITAL LETTER T WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 358, 'status' => 'C', 'lower' => array(359)); /* LATIN CAPITAL LETTER T WITH STROKE */
|
||||
$config['0100_017f'][] = array('upper' => 360, 'status' => 'C', 'lower' => array(361)); /* LATIN CAPITAL LETTER U WITH TILDE */
|
||||
$config['0100_017f'][] = array('upper' => 362, 'status' => 'C', 'lower' => array(363)); /* LATIN CAPITAL LETTER U WITH MACRON */
|
||||
$config['0100_017f'][] = array('upper' => 364, 'status' => 'C', 'lower' => array(365)); /* LATIN CAPITAL LETTER U WITH BREVE */
|
||||
$config['0100_017f'][] = array('upper' => 366, 'status' => 'C', 'lower' => array(367)); /* LATIN CAPITAL LETTER U WITH RING ABOVE */
|
||||
$config['0100_017f'][] = array('upper' => 368, 'status' => 'C', 'lower' => array(369)); /* LATIN CAPITAL LETTER U WITH DOUBLE ACUTE */
|
||||
$config['0100_017f'][] = array('upper' => 370, 'status' => 'C', 'lower' => array(371)); /* LATIN CAPITAL LETTER U WITH OGONEK */
|
||||
$config['0100_017f'][] = array('upper' => 372, 'status' => 'C', 'lower' => array(373)); /* LATIN CAPITAL LETTER W WITH CIRCUMFLEX */
|
||||
$config['0100_017f'][] = array('upper' => 374, 'status' => 'C', 'lower' => array(375)); /* LATIN CAPITAL LETTER Y WITH CIRCUMFLEX */
|
||||
$config['0100_017f'][] = array('upper' => 376, 'status' => 'C', 'lower' => array(255)); /* LATIN CAPITAL LETTER Y WITH DIAERESIS */
|
||||
$config['0100_017f'][] = array('upper' => 377, 'status' => 'C', 'lower' => array(378)); /* LATIN CAPITAL LETTER Z WITH ACUTE */
|
||||
$config['0100_017f'][] = array('upper' => 379, 'status' => 'C', 'lower' => array(380)); /* LATIN CAPITAL LETTER Z WITH DOT ABOVE */
|
||||
$config['0100_017f'][] = array('upper' => 381, 'status' => 'C', 'lower' => array(382)); /* LATIN CAPITAL LETTER Z WITH CARON */
|
||||
$config['0100_017f'][] = array('upper' => 383, 'status' => 'C', 'lower' => array(115)); /* LATIN SMALL LETTER LONG S */
|
||||
?>
|
|
@ -0,0 +1,156 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0180_024F.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0180 through U+024F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0180_024F'][] = array('upper' => 385, 'status' => 'C', 'lower' => array(595)); /* LATIN CAPITAL LETTER B WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 386, 'status' => 'C', 'lower' => array(387)); /* LATIN CAPITAL LETTER B WITH TOPBAR */
|
||||
$config['0180_024F'][] = array('upper' => 388, 'status' => 'C', 'lower' => array(389)); /* LATIN CAPITAL LETTER TONE SIX */
|
||||
$config['0180_024F'][] = array('upper' => 390, 'status' => 'C', 'lower' => array(596)); /* LATIN CAPITAL LETTER OPEN O */
|
||||
$config['0180_024F'][] = array('upper' => 391, 'status' => 'C', 'lower' => array(392)); /* LATIN CAPITAL LETTER C WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 393, 'status' => 'C', 'lower' => array(598)); /* LATIN CAPITAL LETTER AFRICAN D */
|
||||
$config['0180_024F'][] = array('upper' => 394, 'status' => 'C', 'lower' => array(599)); /* LATIN CAPITAL LETTER D WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 395, 'status' => 'C', 'lower' => array(396)); /* LATIN CAPITAL LETTER D WITH TOPBAR */
|
||||
$config['0180_024F'][] = array('upper' => 398, 'status' => 'C', 'lower' => array(477)); /* LATIN CAPITAL LETTER REVERSED E */
|
||||
$config['0180_024F'][] = array('upper' => 399, 'status' => 'C', 'lower' => array(601)); /* LATIN CAPITAL LETTER SCHWA */
|
||||
$config['0180_024F'][] = array('upper' => 400, 'status' => 'C', 'lower' => array(603)); /* LATIN CAPITAL LETTER OPEN E */
|
||||
$config['0180_024F'][] = array('upper' => 401, 'status' => 'C', 'lower' => array(402)); /* LATIN CAPITAL LETTER F WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 403, 'status' => 'C', 'lower' => array(608)); /* LATIN CAPITAL LETTER G WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 404, 'status' => 'C', 'lower' => array(611)); /* LATIN CAPITAL LETTER GAMMA */
|
||||
$config['0180_024F'][] = array('upper' => 406, 'status' => 'C', 'lower' => array(617)); /* LATIN CAPITAL LETTER IOTA */
|
||||
$config['0180_024F'][] = array('upper' => 407, 'status' => 'C', 'lower' => array(616)); /* LATIN CAPITAL LETTER I WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 408, 'status' => 'C', 'lower' => array(409)); /* LATIN CAPITAL LETTER K WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 412, 'status' => 'C', 'lower' => array(623)); /* LATIN CAPITAL LETTER TURNED M */
|
||||
$config['0180_024F'][] = array('upper' => 413, 'status' => 'C', 'lower' => array(626)); /* LATIN CAPITAL LETTER N WITH LEFT HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 415, 'status' => 'C', 'lower' => array(629)); /* LATIN CAPITAL LETTER O WITH MIDDLE TILDE */
|
||||
$config['0180_024F'][] = array('upper' => 416, 'status' => 'C', 'lower' => array(417)); /* LATIN CAPITAL LETTER O WITH HORN */
|
||||
$config['0180_024F'][] = array('upper' => 418, 'status' => 'C', 'lower' => array(419)); /* LATIN CAPITAL LETTER OI */
|
||||
$config['0180_024F'][] = array('upper' => 420, 'status' => 'C', 'lower' => array(421)); /* LATIN CAPITAL LETTER P WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 422, 'status' => 'C', 'lower' => array(640)); /* LATIN LETTER YR */
|
||||
$config['0180_024F'][] = array('upper' => 423, 'status' => 'C', 'lower' => array(424)); /* LATIN CAPITAL LETTER TONE TWO */
|
||||
$config['0180_024F'][] = array('upper' => 425, 'status' => 'C', 'lower' => array(643)); /* LATIN CAPITAL LETTER ESH */
|
||||
$config['0180_024F'][] = array('upper' => 428, 'status' => 'C', 'lower' => array(429)); /* LATIN CAPITAL LETTER T WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 430, 'status' => 'C', 'lower' => array(648)); /* LATIN CAPITAL LETTER T WITH RETROFLEX HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 431, 'status' => 'C', 'lower' => array(432)); /* LATIN CAPITAL LETTER U WITH HORN */
|
||||
$config['0180_024F'][] = array('upper' => 433, 'status' => 'C', 'lower' => array(650)); /* LATIN CAPITAL LETTER UPSILON */
|
||||
$config['0180_024F'][] = array('upper' => 434, 'status' => 'C', 'lower' => array(651)); /* LATIN CAPITAL LETTER V WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 435, 'status' => 'C', 'lower' => array(436)); /* LATIN CAPITAL LETTER Y WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 437, 'status' => 'C', 'lower' => array(438)); /* LATIN CAPITAL LETTER Z WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 439, 'status' => 'C', 'lower' => array(658)); /* LATIN CAPITAL LETTER EZH */
|
||||
$config['0180_024F'][] = array('upper' => 440, 'status' => 'C', 'lower' => array(441)); /* LATIN CAPITAL LETTER EZH REVERSED */
|
||||
$config['0180_024F'][] = array('upper' => 444, 'status' => 'C', 'lower' => array(445)); /* LATIN CAPITAL LETTER TONE FIVE */
|
||||
$config['0180_024F'][] = array('upper' => 452, 'status' => 'C', 'lower' => array(454)); /* LATIN CAPITAL LETTER DZ WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 453, 'status' => 'C', 'lower' => array(454)); /* LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 455, 'status' => 'C', 'lower' => array(457)); /* LATIN CAPITAL LETTER LJ */
|
||||
$config['0180_024F'][] = array('upper' => 456, 'status' => 'C', 'lower' => array(457)); /* LATIN CAPITAL LETTER L WITH SMALL LETTER J */
|
||||
$config['0180_024F'][] = array('upper' => 458, 'status' => 'C', 'lower' => array(460)); /* LATIN CAPITAL LETTER NJ */
|
||||
$config['0180_024F'][] = array('upper' => 459, 'status' => 'C', 'lower' => array(460)); /* LATIN CAPITAL LETTER N WITH SMALL LETTER J */
|
||||
$config['0180_024F'][] = array('upper' => 461, 'status' => 'C', 'lower' => array(462)); /* LATIN CAPITAL LETTER A WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 463, 'status' => 'C', 'lower' => array(464)); /* LATIN CAPITAL LETTER I WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 465, 'status' => 'C', 'lower' => array(466)); /* LATIN CAPITAL LETTER O WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 467, 'status' => 'C', 'lower' => array(468)); /* LATIN CAPITAL LETTER U WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 469, 'status' => 'C', 'lower' => array(470)); /* LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 471, 'status' => 'C', 'lower' => array(472)); /* LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE */
|
||||
$config['0180_024F'][] = array('upper' => 473, 'status' => 'C', 'lower' => array(474)); /* LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON */
|
||||
$config['0180_024F'][] = array('upper' => 475, 'status' => 'C', 'lower' => array(476)); /* LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE */
|
||||
$config['0180_024F'][] = array('upper' => 478, 'status' => 'C', 'lower' => array(479)); /* LATIN CAPITAL LETTER A WITH DIAERESIS AND MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 480, 'status' => 'C', 'lower' => array(481)); /* LATIN CAPITAL LETTER A WITH DOT ABOVE AND MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 482, 'status' => 'C', 'lower' => array(483)); /* LATIN CAPITAL LETTER AE WITH MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 484, 'status' => 'C', 'lower' => array(485)); /* LATIN CAPITAL LETTER G WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 486, 'status' => 'C', 'lower' => array(487)); /* LATIN CAPITAL LETTER G WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 488, 'status' => 'C', 'lower' => array(489)); /* LATIN CAPITAL LETTER K WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 490, 'status' => 'C', 'lower' => array(491)); /* LATIN CAPITAL LETTER O WITH OGONEK */
|
||||
$config['0180_024F'][] = array('upper' => 492, 'status' => 'C', 'lower' => array(493)); /* LATIN CAPITAL LETTER O WITH OGONEK AND MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 494, 'status' => 'C', 'lower' => array(495)); /* LATIN CAPITAL LETTER EZH WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 496, 'status' => 'F', 'lower' => array(106, 780)); /* LATIN SMALL LETTER J WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 497, 'status' => 'C', 'lower' => array(499)); /* LATIN CAPITAL LETTER DZ */
|
||||
$config['0180_024F'][] = array('upper' => 498, 'status' => 'C', 'lower' => array(499)); /* LATIN CAPITAL LETTER D WITH SMALL LETTER Z */
|
||||
$config['0180_024F'][] = array('upper' => 500, 'status' => 'C', 'lower' => array(501)); /* LATIN CAPITAL LETTER G WITH ACUTE */
|
||||
$config['0180_024F'][] = array('upper' => 502, 'status' => 'C', 'lower' => array(405)); /* LATIN CAPITAL LETTER HWAIR */
|
||||
$config['0180_024F'][] = array('upper' => 503, 'status' => 'C', 'lower' => array(447)); /* LATIN CAPITAL LETTER WYNN */
|
||||
$config['0180_024F'][] = array('upper' => 504, 'status' => 'C', 'lower' => array(505)); /* LATIN CAPITAL LETTER N WITH GRAVE */
|
||||
$config['0180_024F'][] = array('upper' => 506, 'status' => 'C', 'lower' => array(507)); /* LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE */
|
||||
$config['0180_024F'][] = array('upper' => 508, 'status' => 'C', 'lower' => array(509)); /* LATIN CAPITAL LETTER AE WITH ACUTE */
|
||||
$config['0180_024F'][] = array('upper' => 510, 'status' => 'C', 'lower' => array(511)); /* LATIN CAPITAL LETTER O WITH STROKE AND ACUTE */
|
||||
$config['0180_024F'][] = array('upper' => 512, 'status' => 'C', 'lower' => array(513)); /* LATIN CAPITAL LETTER A WITH DOUBLE GRAVE */
|
||||
$config['0180_024F'][] = array('upper' => 514, 'status' => 'C', 'lower' => array(515)); /* LATIN CAPITAL LETTER A WITH INVERTED BREVE */
|
||||
$config['0180_024F'][] = array('upper' => 516, 'status' => 'C', 'lower' => array(517)); /* LATIN CAPITAL LETTER E WITH DOUBLE GRAVE */
|
||||
$config['0180_024F'][] = array('upper' => 518, 'status' => 'C', 'lower' => array(519)); /* LATIN CAPITAL LETTER E WITH INVERTED BREVE */
|
||||
$config['0180_024F'][] = array('upper' => 520, 'status' => 'C', 'lower' => array(521)); /* LATIN CAPITAL LETTER I WITH DOUBLE GRAVE */
|
||||
$config['0180_024F'][] = array('upper' => 522, 'status' => 'C', 'lower' => array(523)); /* LATIN CAPITAL LETTER I WITH INVERTED BREVE */
|
||||
$config['0180_024F'][] = array('upper' => 524, 'status' => 'C', 'lower' => array(525)); /* LATIN CAPITAL LETTER O WITH DOUBLE GRAVE */
|
||||
$config['0180_024F'][] = array('upper' => 526, 'status' => 'C', 'lower' => array(527)); /* LATIN CAPITAL LETTER O WITH INVERTED BREVE */
|
||||
$config['0180_024F'][] = array('upper' => 528, 'status' => 'C', 'lower' => array(529)); /* LATIN CAPITAL LETTER R WITH DOUBLE GRAVE */
|
||||
$config['0180_024F'][] = array('upper' => 530, 'status' => 'C', 'lower' => array(531)); /* LATIN CAPITAL LETTER R WITH INVERTED BREVE */
|
||||
$config['0180_024F'][] = array('upper' => 532, 'status' => 'C', 'lower' => array(533)); /* LATIN CAPITAL LETTER U WITH DOUBLE GRAVE */
|
||||
$config['0180_024F'][] = array('upper' => 534, 'status' => 'C', 'lower' => array(535)); /* LATIN CAPITAL LETTER U WITH INVERTED BREVE */
|
||||
$config['0180_024F'][] = array('upper' => 536, 'status' => 'C', 'lower' => array(537)); /* LATIN CAPITAL LETTER S WITH COMMA BELOW */
|
||||
$config['0180_024F'][] = array('upper' => 538, 'status' => 'C', 'lower' => array(539)); /* LATIN CAPITAL LETTER T WITH COMMA BELOW */
|
||||
$config['0180_024F'][] = array('upper' => 540, 'status' => 'C', 'lower' => array(541)); /* LATIN CAPITAL LETTER YOGH */
|
||||
$config['0180_024F'][] = array('upper' => 542, 'status' => 'C', 'lower' => array(543)); /* LATIN CAPITAL LETTER H WITH CARON */
|
||||
$config['0180_024F'][] = array('upper' => 544, 'status' => 'C', 'lower' => array(414)); /* LATIN CAPITAL LETTER N WITH LONG RIGHT LEG */
|
||||
$config['0180_024F'][] = array('upper' => 546, 'status' => 'C', 'lower' => array(547)); /* LATIN CAPITAL LETTER OU */
|
||||
$config['0180_024F'][] = array('upper' => 548, 'status' => 'C', 'lower' => array(549)); /* LATIN CAPITAL LETTER Z WITH HOOK */
|
||||
$config['0180_024F'][] = array('upper' => 550, 'status' => 'C', 'lower' => array(551)); /* LATIN CAPITAL LETTER A WITH DOT ABOVE */
|
||||
$config['0180_024F'][] = array('upper' => 552, 'status' => 'C', 'lower' => array(553)); /* LATIN CAPITAL LETTER E WITH CEDILLA */
|
||||
$config['0180_024F'][] = array('upper' => 554, 'status' => 'C', 'lower' => array(555)); /* LATIN CAPITAL LETTER O WITH DIAERESIS AND MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 556, 'status' => 'C', 'lower' => array(557)); /* LATIN CAPITAL LETTER O WITH TILDE AND MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 558, 'status' => 'C', 'lower' => array(559)); /* LATIN CAPITAL LETTER O WITH DOT ABOVE */
|
||||
$config['0180_024F'][] = array('upper' => 560, 'status' => 'C', 'lower' => array(561)); /* LATIN CAPITAL LETTER O WITH DOT ABOVE AND MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 562, 'status' => 'C', 'lower' => array(563)); /* LATIN CAPITAL LETTER Y WITH MACRON */
|
||||
$config['0180_024F'][] = array('upper' => 570, 'status' => 'C', 'lower' => array(11365)); /* LATIN CAPITAL LETTER A WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 571, 'status' => 'C', 'lower' => array(572)); /* LATIN CAPITAL LETTER C WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 573, 'status' => 'C', 'lower' => array(410)); /* LATIN CAPITAL LETTER L WITH BAR */
|
||||
$config['0180_024F'][] = array('upper' => 574, 'status' => 'C', 'lower' => array(11366)); /* LATIN CAPITAL LETTER T WITH DIAGONAL STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 577, 'status' => 'C', 'lower' => array(578)); /* LATIN CAPITAL LETTER GLOTTAL STOP */
|
||||
$config['0180_024F'][] = array('upper' => 579, 'status' => 'C', 'lower' => array(384)); /* LATIN CAPITAL LETTER B WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 580, 'status' => 'C', 'lower' => array(649)); /* LATIN CAPITAL LETTER U BAR */
|
||||
$config['0180_024F'][] = array('upper' => 581, 'status' => 'C', 'lower' => array(652)); /* LATIN CAPITAL LETTER TURNED V */
|
||||
$config['0180_024F'][] = array('upper' => 582, 'status' => 'C', 'lower' => array(583)); /* LATIN CAPITAL LETTER E WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 584, 'status' => 'C', 'lower' => array(585)); /* LATIN CAPITAL LETTER J WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 586, 'status' => 'C', 'lower' => array(587)); /* LATIN CAPITAL LETTER SMALL Q WITH HOOK TAIL */
|
||||
$config['0180_024F'][] = array('upper' => 588, 'status' => 'C', 'lower' => array(589)); /* LATIN CAPITAL LETTER R WITH STROKE */
|
||||
$config['0180_024F'][] = array('upper' => 590, 'status' => 'C', 'lower' => array(591)); /* LATIN CAPITAL LETTER Y WITH STROKE */
|
||||
?>
|
|
@ -0,0 +1,49 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0300_036f.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0300 through U+036F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0300_036f'][] = array('upper' => 837, 'status' => 'C', 'lower' => array(953)); /* COMBINING GREEK YPOGEGRAMMENI */
|
||||
?>
|
|
@ -0,0 +1,110 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0370_03ff.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0370 through U+03FF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0370_03ff'][] = array('upper' => 902, 'status' => 'C', 'lower' => array(940)); /* GREEK CAPITAL LETTER ALPHA WITH TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 904, 'status' => 'C', 'lower' => array(941)); /* GREEK CAPITAL LETTER EPSILON WITH TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 905, 'status' => 'C', 'lower' => array(942)); /* GREEK CAPITAL LETTER ETA WITH TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 906, 'status' => 'C', 'lower' => array(943)); /* GREEK CAPITAL LETTER IOTA WITH TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 908, 'status' => 'C', 'lower' => array(972)); /* GREEK CAPITAL LETTER OMICRON WITH TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 910, 'status' => 'C', 'lower' => array(973)); /* GREEK CAPITAL LETTER UPSILON WITH TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 911, 'status' => 'C', 'lower' => array(974)); /* GREEK CAPITAL LETTER OMEGA WITH TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 912, 'status' => 'F', 'lower' => array(953, 776, 769)); /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 913, 'status' => 'C', 'lower' => array(945)); /* GREEK CAPITAL LETTER ALPHA */
|
||||
$config['0370_03ff'][] = array('upper' => 914, 'status' => 'C', 'lower' => array(946)); /* GREEK CAPITAL LETTER BETA */
|
||||
$config['0370_03ff'][] = array('upper' => 915, 'status' => 'C', 'lower' => array(947)); /* GREEK CAPITAL LETTER GAMMA */
|
||||
$config['0370_03ff'][] = array('upper' => 916, 'status' => 'C', 'lower' => array(948)); /* GREEK CAPITAL LETTER DELTA */
|
||||
$config['0370_03ff'][] = array('upper' => 917, 'status' => 'C', 'lower' => array(949)); /* GREEK CAPITAL LETTER EPSILON */
|
||||
$config['0370_03ff'][] = array('upper' => 918, 'status' => 'C', 'lower' => array(950)); /* GREEK CAPITAL LETTER ZETA */
|
||||
$config['0370_03ff'][] = array('upper' => 919, 'status' => 'C', 'lower' => array(951)); /* GREEK CAPITAL LETTER ETA */
|
||||
$config['0370_03ff'][] = array('upper' => 920, 'status' => 'C', 'lower' => array(952)); /* GREEK CAPITAL LETTER THETA */
|
||||
$config['0370_03ff'][] = array('upper' => 921, 'status' => 'C', 'lower' => array(953)); /* GREEK CAPITAL LETTER IOTA */
|
||||
$config['0370_03ff'][] = array('upper' => 922, 'status' => 'C', 'lower' => array(954)); /* GREEK CAPITAL LETTER KAPPA */
|
||||
$config['0370_03ff'][] = array('upper' => 923, 'status' => 'C', 'lower' => array(955)); /* GREEK CAPITAL LETTER LAMDA */
|
||||
$config['0370_03ff'][] = array('upper' => 924, 'status' => 'C', 'lower' => array(956)); /* GREEK CAPITAL LETTER MU */
|
||||
$config['0370_03ff'][] = array('upper' => 925, 'status' => 'C', 'lower' => array(957)); /* GREEK CAPITAL LETTER NU */
|
||||
$config['0370_03ff'][] = array('upper' => 926, 'status' => 'C', 'lower' => array(958)); /* GREEK CAPITAL LETTER XI */
|
||||
$config['0370_03ff'][] = array('upper' => 927, 'status' => 'C', 'lower' => array(959)); /* GREEK CAPITAL LETTER OMICRON */
|
||||
$config['0370_03ff'][] = array('upper' => 928, 'status' => 'C', 'lower' => array(960)); /* GREEK CAPITAL LETTER PI */
|
||||
$config['0370_03ff'][] = array('upper' => 929, 'status' => 'C', 'lower' => array(961)); /* GREEK CAPITAL LETTER RHO */
|
||||
$config['0370_03ff'][] = array('upper' => 931, 'status' => 'C', 'lower' => array(963)); /* GREEK CAPITAL LETTER SIGMA */
|
||||
$config['0370_03ff'][] = array('upper' => 932, 'status' => 'C', 'lower' => array(964)); /* GREEK CAPITAL LETTER TAU */
|
||||
$config['0370_03ff'][] = array('upper' => 933, 'status' => 'C', 'lower' => array(965)); /* GREEK CAPITAL LETTER UPSILON */
|
||||
$config['0370_03ff'][] = array('upper' => 934, 'status' => 'C', 'lower' => array(966)); /* GREEK CAPITAL LETTER PHI */
|
||||
$config['0370_03ff'][] = array('upper' => 935, 'status' => 'C', 'lower' => array(967)); /* GREEK CAPITAL LETTER CHI */
|
||||
$config['0370_03ff'][] = array('upper' => 936, 'status' => 'C', 'lower' => array(968)); /* GREEK CAPITAL LETTER PSI */
|
||||
$config['0370_03ff'][] = array('upper' => 937, 'status' => 'C', 'lower' => array(969)); /* GREEK CAPITAL LETTER OMEGA */
|
||||
$config['0370_03ff'][] = array('upper' => 938, 'status' => 'C', 'lower' => array(970)); /* GREEK CAPITAL LETTER IOTA WITH DIALYTIKA */
|
||||
$config['0370_03ff'][] = array('upper' => 939, 'status' => 'C', 'lower' => array(971)); /* GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA */
|
||||
$config['0370_03ff'][] = array('upper' => 944, 'status' => 'F', 'lower' => array(965, 776, 769)); /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND TONOS */
|
||||
$config['0370_03ff'][] = array('upper' => 962, 'status' => 'C', 'lower' => array(963)); /* GREEK SMALL LETTER FINAL SIGMA */
|
||||
$config['0370_03ff'][] = array('upper' => 976, 'status' => 'C', 'lower' => array(946)); /* GREEK BETA SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 977, 'status' => 'C', 'lower' => array(952)); /* GREEK THETA SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 981, 'status' => 'C', 'lower' => array(966)); /* GREEK PHI SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 982, 'status' => 'C', 'lower' => array(960)); /* GREEK PI SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 984, 'status' => 'C', 'lower' => array(985)); /* GREEK LETTER ARCHAIC KOPPA */
|
||||
$config['0370_03ff'][] = array('upper' => 986, 'status' => 'C', 'lower' => array(987)); /* GREEK LETTER STIGMA */
|
||||
$config['0370_03ff'][] = array('upper' => 988, 'status' => 'C', 'lower' => array(989)); /* GREEK LETTER DIGAMMA */
|
||||
$config['0370_03ff'][] = array('upper' => 990, 'status' => 'C', 'lower' => array(991)); /* GREEK LETTER KOPPA */
|
||||
$config['0370_03ff'][] = array('upper' => 992, 'status' => 'C', 'lower' => array(993)); /* GREEK LETTER SAMPI */
|
||||
$config['0370_03ff'][] = array('upper' => 994, 'status' => 'C', 'lower' => array(995)); /* COPTIC CAPITAL LETTER SHEI */
|
||||
$config['0370_03ff'][] = array('upper' => 996, 'status' => 'C', 'lower' => array(997)); /* COPTIC CAPITAL LETTER FEI */
|
||||
$config['0370_03ff'][] = array('upper' => 998, 'status' => 'C', 'lower' => array(999)); /* COPTIC CAPITAL LETTER KHEI */
|
||||
$config['0370_03ff'][] = array('upper' => 1000, 'status' => 'C', 'lower' => array(1001)); /* COPTIC CAPITAL LETTER HORI */
|
||||
$config['0370_03ff'][] = array('upper' => 1002, 'status' => 'C', 'lower' => array(1003)); /* COPTIC CAPITAL LETTER GANGIA */
|
||||
$config['0370_03ff'][] = array('upper' => 1004, 'status' => 'C', 'lower' => array(1005)); /* COPTIC CAPITAL LETTER SHIMA */
|
||||
$config['0370_03ff'][] = array('upper' => 1006, 'status' => 'C', 'lower' => array(1007)); /* COPTIC CAPITAL LETTER DEI */
|
||||
$config['0370_03ff'][] = array('upper' => 1008, 'status' => 'C', 'lower' => array(954)); /* GREEK KAPPA SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 1009, 'status' => 'C', 'lower' => array(961)); /* GREEK RHO SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 1012, 'status' => 'C', 'lower' => array(952)); /* GREEK CAPITAL THETA SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 1013, 'status' => 'C', 'lower' => array(949)); /* GREEK LUNATE EPSILON SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 1015, 'status' => 'C', 'lower' => array(1016)); /* GREEK CAPITAL LETTER SHO */
|
||||
$config['0370_03ff'][] = array('upper' => 1017, 'status' => 'C', 'lower' => array(1010)); /* GREEK CAPITAL LUNATE SIGMA SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 1018, 'status' => 'C', 'lower' => array(1019)); /* GREEK CAPITAL LETTER SAN */
|
||||
$config['0370_03ff'][] = array('upper' => 1021, 'status' => 'C', 'lower' => array(891)); /* GREEK CAPITAL REVERSED LUNATE SIGMA SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 1022, 'status' => 'C', 'lower' => array(892)); /* GREEK CAPITAL DOTTED LUNATE SIGMA SYMBOL */
|
||||
$config['0370_03ff'][] = array('upper' => 1023, 'status' => 'C', 'lower' => array(893)); /* GREEK CAPITAL REVERSED DOTTED LUNATE SIGMA SYMBOL */
|
||||
?>
|
|
@ -0,0 +1,172 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0400_04ff.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0400 through U+04FF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0400_04ff'][] = array('upper' => 1024, 'status' => 'C', 'lower' => array(1104)); /* CYRILLIC CAPITAL LETTER IE WITH GRAVE */
|
||||
$config['0400_04ff'][] = array('upper' => 1025, 'status' => 'C', 'lower' => array(1105)); /* CYRILLIC CAPITAL LETTER IO */
|
||||
$config['0400_04ff'][] = array('upper' => 1026, 'status' => 'C', 'lower' => array(1106)); /* CYRILLIC CAPITAL LETTER DJE */
|
||||
$config['0400_04ff'][] = array('upper' => 1027, 'status' => 'C', 'lower' => array(1107)); /* CYRILLIC CAPITAL LETTER GJE */
|
||||
$config['0400_04ff'][] = array('upper' => 1028, 'status' => 'C', 'lower' => array(1108)); /* CYRILLIC CAPITAL LETTER UKRAINIAN IE */
|
||||
$config['0400_04ff'][] = array('upper' => 1029, 'status' => 'C', 'lower' => array(1109)); /* CYRILLIC CAPITAL LETTER DZE */
|
||||
$config['0400_04ff'][] = array('upper' => 1030, 'status' => 'C', 'lower' => array(1110)); /* CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I */
|
||||
$config['0400_04ff'][] = array('upper' => 1031, 'status' => 'C', 'lower' => array(1111)); /* CYRILLIC CAPITAL LETTER YI */
|
||||
$config['0400_04ff'][] = array('upper' => 1032, 'status' => 'C', 'lower' => array(1112)); /* CYRILLIC CAPITAL LETTER JE */
|
||||
$config['0400_04ff'][] = array('upper' => 1033, 'status' => 'C', 'lower' => array(1113)); /* CYRILLIC CAPITAL LETTER LJE */
|
||||
$config['0400_04ff'][] = array('upper' => 1034, 'status' => 'C', 'lower' => array(1114)); /* CYRILLIC CAPITAL LETTER NJE */
|
||||
$config['0400_04ff'][] = array('upper' => 1035, 'status' => 'C', 'lower' => array(1115)); /* CYRILLIC CAPITAL LETTER TSHE */
|
||||
$config['0400_04ff'][] = array('upper' => 1036, 'status' => 'C', 'lower' => array(1116)); /* CYRILLIC CAPITAL LETTER KJE */
|
||||
$config['0400_04ff'][] = array('upper' => 1037, 'status' => 'C', 'lower' => array(1117)); /* CYRILLIC CAPITAL LETTER I WITH GRAVE */
|
||||
$config['0400_04ff'][] = array('upper' => 1038, 'status' => 'C', 'lower' => array(1118)); /* CYRILLIC CAPITAL LETTER SHORT U */
|
||||
$config['0400_04ff'][] = array('upper' => 1039, 'status' => 'C', 'lower' => array(1119)); /* CYRILLIC CAPITAL LETTER DZHE */
|
||||
$config['0400_04ff'][] = array('upper' => 1040, 'status' => 'C', 'lower' => array(1072)); /* CYRILLIC CAPITAL LETTER A */
|
||||
$config['0400_04ff'][] = array('upper' => 1041, 'status' => 'C', 'lower' => array(1073)); /* CYRILLIC CAPITAL LETTER BE */
|
||||
$config['0400_04ff'][] = array('upper' => 1042, 'status' => 'C', 'lower' => array(1074)); /* CYRILLIC CAPITAL LETTER VE */
|
||||
$config['0400_04ff'][] = array('upper' => 1043, 'status' => 'C', 'lower' => array(1075)); /* CYRILLIC CAPITAL LETTER GHE */
|
||||
$config['0400_04ff'][] = array('upper' => 1044, 'status' => 'C', 'lower' => array(1076)); /* CYRILLIC CAPITAL LETTER DE */
|
||||
$config['0400_04ff'][] = array('upper' => 1045, 'status' => 'C', 'lower' => array(1077)); /* CYRILLIC CAPITAL LETTER IE */
|
||||
$config['0400_04ff'][] = array('upper' => 1046, 'status' => 'C', 'lower' => array(1078)); /* CYRILLIC CAPITAL LETTER ZHE */
|
||||
$config['0400_04ff'][] = array('upper' => 1047, 'status' => 'C', 'lower' => array(1079)); /* CYRILLIC CAPITAL LETTER ZE */
|
||||
$config['0400_04ff'][] = array('upper' => 1048, 'status' => 'C', 'lower' => array(1080)); /* CYRILLIC CAPITAL LETTER I */
|
||||
$config['0400_04ff'][] = array('upper' => 1049, 'status' => 'C', 'lower' => array(1081)); /* CYRILLIC CAPITAL LETTER SHORT I */
|
||||
$config['0400_04ff'][] = array('upper' => 1050, 'status' => 'C', 'lower' => array(1082)); /* CYRILLIC CAPITAL LETTER KA */
|
||||
$config['0400_04ff'][] = array('upper' => 1051, 'status' => 'C', 'lower' => array(1083)); /* CYRILLIC CAPITAL LETTER EL */
|
||||
$config['0400_04ff'][] = array('upper' => 1052, 'status' => 'C', 'lower' => array(1084)); /* CYRILLIC CAPITAL LETTER EM */
|
||||
$config['0400_04ff'][] = array('upper' => 1053, 'status' => 'C', 'lower' => array(1085)); /* CYRILLIC CAPITAL LETTER EN */
|
||||
$config['0400_04ff'][] = array('upper' => 1054, 'status' => 'C', 'lower' => array(1086)); /* CYRILLIC CAPITAL LETTER O */
|
||||
$config['0400_04ff'][] = array('upper' => 1055, 'status' => 'C', 'lower' => array(1087)); /* CYRILLIC CAPITAL LETTER PE */
|
||||
$config['0400_04ff'][] = array('upper' => 1056, 'status' => 'C', 'lower' => array(1088)); /* CYRILLIC CAPITAL LETTER ER */
|
||||
$config['0400_04ff'][] = array('upper' => 1057, 'status' => 'C', 'lower' => array(1089)); /* CYRILLIC CAPITAL LETTER ES */
|
||||
$config['0400_04ff'][] = array('upper' => 1058, 'status' => 'C', 'lower' => array(1090)); /* CYRILLIC CAPITAL LETTER TE */
|
||||
$config['0400_04ff'][] = array('upper' => 1059, 'status' => 'C', 'lower' => array(1091)); /* CYRILLIC CAPITAL LETTER U */
|
||||
$config['0400_04ff'][] = array('upper' => 1060, 'status' => 'C', 'lower' => array(1092)); /* CYRILLIC CAPITAL LETTER EF */
|
||||
$config['0400_04ff'][] = array('upper' => 1061, 'status' => 'C', 'lower' => array(1093)); /* CYRILLIC CAPITAL LETTER HA */
|
||||
$config['0400_04ff'][] = array('upper' => 1062, 'status' => 'C', 'lower' => array(1094)); /* CYRILLIC CAPITAL LETTER TSE */
|
||||
$config['0400_04ff'][] = array('upper' => 1063, 'status' => 'C', 'lower' => array(1095)); /* CYRILLIC CAPITAL LETTER CHE */
|
||||
$config['0400_04ff'][] = array('upper' => 1064, 'status' => 'C', 'lower' => array(1096)); /* CYRILLIC CAPITAL LETTER SHA */
|
||||
$config['0400_04ff'][] = array('upper' => 1065, 'status' => 'C', 'lower' => array(1097)); /* CYRILLIC CAPITAL LETTER SHCHA */
|
||||
$config['0400_04ff'][] = array('upper' => 1066, 'status' => 'C', 'lower' => array(1098)); /* CYRILLIC CAPITAL LETTER HARD SIGN */
|
||||
$config['0400_04ff'][] = array('upper' => 1067, 'status' => 'C', 'lower' => array(1099)); /* CYRILLIC CAPITAL LETTER YERU */
|
||||
$config['0400_04ff'][] = array('upper' => 1068, 'status' => 'C', 'lower' => array(1100)); /* CYRILLIC CAPITAL LETTER SOFT SIGN */
|
||||
$config['0400_04ff'][] = array('upper' => 1069, 'status' => 'C', 'lower' => array(1101)); /* CYRILLIC CAPITAL LETTER E */
|
||||
$config['0400_04ff'][] = array('upper' => 1070, 'status' => 'C', 'lower' => array(1102)); /* CYRILLIC CAPITAL LETTER YU */
|
||||
$config['0400_04ff'][] = array('upper' => 1071, 'status' => 'C', 'lower' => array(1103)); /* CYRILLIC CAPITAL LETTER YA */
|
||||
$config['0400_04ff'][] = array('upper' => 1120, 'status' => 'C', 'lower' => array(1121)); /* CYRILLIC CAPITAL LETTER OMEGA */
|
||||
$config['0400_04ff'][] = array('upper' => 1122, 'status' => 'C', 'lower' => array(1123)); /* CYRILLIC CAPITAL LETTER YAT */
|
||||
$config['0400_04ff'][] = array('upper' => 1124, 'status' => 'C', 'lower' => array(1125)); /* CYRILLIC CAPITAL LETTER IOTIFIED E */
|
||||
$config['0400_04ff'][] = array('upper' => 1126, 'status' => 'C', 'lower' => array(1127)); /* CYRILLIC CAPITAL LETTER LITTLE YUS */
|
||||
$config['0400_04ff'][] = array('upper' => 1128, 'status' => 'C', 'lower' => array(1129)); /* CYRILLIC CAPITAL LETTER IOTIFIED LITTLE YUS */
|
||||
$config['0400_04ff'][] = array('upper' => 1130, 'status' => 'C', 'lower' => array(1131)); /* CYRILLIC CAPITAL LETTER BIG YUS */
|
||||
$config['0400_04ff'][] = array('upper' => 1132, 'status' => 'C', 'lower' => array(1133)); /* CYRILLIC CAPITAL LETTER IOTIFIED BIG YUS */
|
||||
$config['0400_04ff'][] = array('upper' => 1134, 'status' => 'C', 'lower' => array(1135)); /* CYRILLIC CAPITAL LETTER KSI */
|
||||
$config['0400_04ff'][] = array('upper' => 1136, 'status' => 'C', 'lower' => array(1137)); /* CYRILLIC CAPITAL LETTER PSI */
|
||||
$config['0400_04ff'][] = array('upper' => 1138, 'status' => 'C', 'lower' => array(1139)); /* CYRILLIC CAPITAL LETTER FITA */
|
||||
$config['0400_04ff'][] = array('upper' => 1140, 'status' => 'C', 'lower' => array(1141)); /* CYRILLIC CAPITAL LETTER IZHITSA */
|
||||
$config['0400_04ff'][] = array('upper' => 1142, 'status' => 'C', 'lower' => array(1143)); /* CYRILLIC CAPITAL LETTER IZHITSA WITH DOUBLE GRAVE ACCENT */
|
||||
$config['0400_04ff'][] = array('upper' => 1144, 'status' => 'C', 'lower' => array(1145)); /* CYRILLIC CAPITAL LETTER UK */
|
||||
$config['0400_04ff'][] = array('upper' => 1146, 'status' => 'C', 'lower' => array(1147)); /* CYRILLIC CAPITAL LETTER ROUND OMEGA */
|
||||
$config['0400_04ff'][] = array('upper' => 1148, 'status' => 'C', 'lower' => array(1149)); /* CYRILLIC CAPITAL LETTER OMEGA WITH TITLO */
|
||||
$config['0400_04ff'][] = array('upper' => 1150, 'status' => 'C', 'lower' => array(1151)); /* CYRILLIC CAPITAL LETTER OT */
|
||||
$config['0400_04ff'][] = array('upper' => 1152, 'status' => 'C', 'lower' => array(1153)); /* CYRILLIC CAPITAL LETTER KOPPA */
|
||||
$config['0400_04ff'][] = array('upper' => 1162, 'status' => 'C', 'lower' => array(1163)); /* CYRILLIC CAPITAL LETTER SHORT I WITH TAIL */
|
||||
$config['0400_04ff'][] = array('upper' => 1164, 'status' => 'C', 'lower' => array(1165)); /* CYRILLIC CAPITAL LETTER SEMISOFT SIGN */
|
||||
$config['0400_04ff'][] = array('upper' => 1166, 'status' => 'C', 'lower' => array(1167)); /* CYRILLIC CAPITAL LETTER ER WITH TICK */
|
||||
$config['0400_04ff'][] = array('upper' => 1168, 'status' => 'C', 'lower' => array(1169)); /* CYRILLIC CAPITAL LETTER GHE WITH UPTURN */
|
||||
$config['0400_04ff'][] = array('upper' => 1170, 'status' => 'C', 'lower' => array(1171)); /* CYRILLIC CAPITAL LETTER GHE WITH STROKE */
|
||||
$config['0400_04ff'][] = array('upper' => 1172, 'status' => 'C', 'lower' => array(1173)); /* CYRILLIC CAPITAL LETTER GHE WITH MIDDLE HOOK */
|
||||
$config['0400_04ff'][] = array('upper' => 1174, 'status' => 'C', 'lower' => array(1175)); /* CYRILLIC CAPITAL LETTER ZHE WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1176, 'status' => 'C', 'lower' => array(1177)); /* CYRILLIC CAPITAL LETTER ZE WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1178, 'status' => 'C', 'lower' => array(1179)); /* CYRILLIC CAPITAL LETTER KA WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1180, 'status' => 'C', 'lower' => array(1181)); /* CYRILLIC CAPITAL LETTER KA WITH VERTICAL STROKE */
|
||||
$config['0400_04ff'][] = array('upper' => 1182, 'status' => 'C', 'lower' => array(1183)); /* CYRILLIC CAPITAL LETTER KA WITH STROKE */
|
||||
$config['0400_04ff'][] = array('upper' => 1184, 'status' => 'C', 'lower' => array(1185)); /* CYRILLIC CAPITAL LETTER BASHKIR KA */
|
||||
$config['0400_04ff'][] = array('upper' => 1186, 'status' => 'C', 'lower' => array(1187)); /* CYRILLIC CAPITAL LETTER EN WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1188, 'status' => 'C', 'lower' => array(1189)); /* CYRILLIC CAPITAL LIGATURE EN GHE */
|
||||
$config['0400_04ff'][] = array('upper' => 1190, 'status' => 'C', 'lower' => array(1191)); /* CYRILLIC CAPITAL LETTER PE WITH MIDDLE HOOK */
|
||||
$config['0400_04ff'][] = array('upper' => 1192, 'status' => 'C', 'lower' => array(1193)); /* CYRILLIC CAPITAL LETTER ABKHASIAN HA */
|
||||
$config['0400_04ff'][] = array('upper' => 1194, 'status' => 'C', 'lower' => array(1195)); /* CYRILLIC CAPITAL LETTER ES WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1196, 'status' => 'C', 'lower' => array(1197)); /* CYRILLIC CAPITAL LETTER TE WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1198, 'status' => 'C', 'lower' => array(1199)); /* CYRILLIC CAPITAL LETTER STRAIGHT U */
|
||||
$config['0400_04ff'][] = array('upper' => 1200, 'status' => 'C', 'lower' => array(1201)); /* CYRILLIC CAPITAL LETTER STRAIGHT U WITH STROKE */
|
||||
$config['0400_04ff'][] = array('upper' => 1202, 'status' => 'C', 'lower' => array(1203)); /* CYRILLIC CAPITAL LETTER HA WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1204, 'status' => 'C', 'lower' => array(1205)); /* CYRILLIC CAPITAL LIGATURE TE TSE */
|
||||
$config['0400_04ff'][] = array('upper' => 1206, 'status' => 'C', 'lower' => array(1207)); /* CYRILLIC CAPITAL LETTER CHE WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1208, 'status' => 'C', 'lower' => array(1209)); /* CYRILLIC CAPITAL LETTER CHE WITH VERTICAL STROKE */
|
||||
$config['0400_04ff'][] = array('upper' => 1210, 'status' => 'C', 'lower' => array(1211)); /* CYRILLIC CAPITAL LETTER SHHA */
|
||||
$config['0400_04ff'][] = array('upper' => 1212, 'status' => 'C', 'lower' => array(1213)); /* CYRILLIC CAPITAL LETTER ABKHASIAN CHE */
|
||||
$config['0400_04ff'][] = array('upper' => 1214, 'status' => 'C', 'lower' => array(1215)); /* CYRILLIC CAPITAL LETTER ABKHASIAN CHE WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1216, 'status' => 'C', 'lower' => array(1231)); /* CYRILLIC LETTER PALOCHKA */
|
||||
$config['0400_04ff'][] = array('upper' => 1217, 'status' => 'C', 'lower' => array(1218)); /* CYRILLIC CAPITAL LETTER ZHE WITH BREVE */
|
||||
$config['0400_04ff'][] = array('upper' => 1219, 'status' => 'C', 'lower' => array(1220)); /* CYRILLIC CAPITAL LETTER KA WITH HOOK */
|
||||
$config['0400_04ff'][] = array('upper' => 1221, 'status' => 'C', 'lower' => array(1222)); /* CYRILLIC CAPITAL LETTER EL WITH TAIL */
|
||||
$config['0400_04ff'][] = array('upper' => 1223, 'status' => 'C', 'lower' => array(1224)); /* CYRILLIC CAPITAL LETTER EN WITH HOOK */
|
||||
$config['0400_04ff'][] = array('upper' => 1225, 'status' => 'C', 'lower' => array(1226)); /* CYRILLIC CAPITAL LETTER EN WITH TAIL */
|
||||
$config['0400_04ff'][] = array('upper' => 1227, 'status' => 'C', 'lower' => array(1228)); /* CYRILLIC CAPITAL LETTER KHAKASSIAN CHE */
|
||||
$config['0400_04ff'][] = array('upper' => 1229, 'status' => 'C', 'lower' => array(1230)); /* CYRILLIC CAPITAL LETTER EM WITH TAIL */
|
||||
$config['0400_04ff'][] = array('upper' => 1232, 'status' => 'C', 'lower' => array(1233)); /* CYRILLIC CAPITAL LETTER A WITH BREVE */
|
||||
$config['0400_04ff'][] = array('upper' => 1234, 'status' => 'C', 'lower' => array(1235)); /* CYRILLIC CAPITAL LETTER A WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1236, 'status' => 'C', 'lower' => array(1237)); /* CYRILLIC CAPITAL LIGATURE A IE */
|
||||
$config['0400_04ff'][] = array('upper' => 1238, 'status' => 'C', 'lower' => array(1239)); /* CYRILLIC CAPITAL LETTER IE WITH BREVE */
|
||||
$config['0400_04ff'][] = array('upper' => 1240, 'status' => 'C', 'lower' => array(1241)); /* CYRILLIC CAPITAL LETTER SCHWA */
|
||||
$config['0400_04ff'][] = array('upper' => 1242, 'status' => 'C', 'lower' => array(1243)); /* CYRILLIC CAPITAL LETTER SCHWA WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1244, 'status' => 'C', 'lower' => array(1245)); /* CYRILLIC CAPITAL LETTER ZHE WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1246, 'status' => 'C', 'lower' => array(1247)); /* CYRILLIC CAPITAL LETTER ZE WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1248, 'status' => 'C', 'lower' => array(1249)); /* CYRILLIC CAPITAL LETTER ABKHASIAN DZE */
|
||||
$config['0400_04ff'][] = array('upper' => 1250, 'status' => 'C', 'lower' => array(1251)); /* CYRILLIC CAPITAL LETTER I WITH MACRON */
|
||||
$config['0400_04ff'][] = array('upper' => 1252, 'status' => 'C', 'lower' => array(1253)); /* CYRILLIC CAPITAL LETTER I WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1254, 'status' => 'C', 'lower' => array(1255)); /* CYRILLIC CAPITAL LETTER O WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1256, 'status' => 'C', 'lower' => array(1257)); /* CYRILLIC CAPITAL LETTER BARRED O */
|
||||
$config['0400_04ff'][] = array('upper' => 1258, 'status' => 'C', 'lower' => array(1259)); /* CYRILLIC CAPITAL LETTER BARRED O WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1260, 'status' => 'C', 'lower' => array(1261)); /* CYRILLIC CAPITAL LETTER E WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1262, 'status' => 'C', 'lower' => array(1263)); /* CYRILLIC CAPITAL LETTER U WITH MACRON */
|
||||
$config['0400_04ff'][] = array('upper' => 1264, 'status' => 'C', 'lower' => array(1265)); /* CYRILLIC CAPITAL LETTER U WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1266, 'status' => 'C', 'lower' => array(1267)); /* CYRILLIC CAPITAL LETTER U WITH DOUBLE ACUTE */
|
||||
$config['0400_04ff'][] = array('upper' => 1268, 'status' => 'C', 'lower' => array(1269)); /* CYRILLIC CAPITAL LETTER CHE WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1270, 'status' => 'C', 'lower' => array(1271)); /* CYRILLIC CAPITAL LETTER GHE WITH DESCENDER */
|
||||
$config['0400_04ff'][] = array('upper' => 1272, 'status' => 'C', 'lower' => array(1273)); /* CYRILLIC CAPITAL LETTER YERU WITH DIAERESIS */
|
||||
$config['0400_04ff'][] = array('upper' => 1274, 'status' => 'C', 'lower' => array(1275)); /* CYRILLIC CAPITAL LETTER GHE WITH STROKE AND HOOK */
|
||||
$config['0400_04ff'][] = array('upper' => 1276, 'status' => 'C', 'lower' => array(1277)); /* CYRILLIC CAPITAL LETTER HA WITH HOOK */
|
||||
$config['0400_04ff'][] = array('upper' => 1278, 'status' => 'C', 'lower' => array(1279)); /* CYRILLIC CAPITAL LETTER HA WITH STROKE */
|
||||
?>
|
|
@ -0,0 +1,58 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0500_052f.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0500 through U+052F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0500_052f'][] = array('upper' => 1280, 'status' => 'C', 'lower' => array(1281)); /* CYRILLIC CAPITAL LETTER KOMI DE */
|
||||
$config['0500_052f'][] = array('upper' => 1282, 'status' => 'C', 'lower' => array(1283)); /* CYRILLIC CAPITAL LETTER KOMI DJE */
|
||||
$config['0500_052f'][] = array('upper' => 1284, 'status' => 'C', 'lower' => array(1285)); /* CYRILLIC CAPITAL LETTER KOMI ZJE */
|
||||
$config['0500_052f'][] = array('upper' => 1286, 'status' => 'C', 'lower' => array(1287)); /* CYRILLIC CAPITAL LETTER KOMI DZJE */
|
||||
$config['0500_052f'][] = array('upper' => 1288, 'status' => 'C', 'lower' => array(1289)); /* CYRILLIC CAPITAL LETTER KOMI LJE */
|
||||
$config['0500_052f'][] = array('upper' => 1290, 'status' => 'C', 'lower' => array(1291)); /* CYRILLIC CAPITAL LETTER KOMI NJE */
|
||||
$config['0500_052f'][] = array('upper' => 1292, 'status' => 'C', 'lower' => array(1293)); /* CYRILLIC CAPITAL LETTER KOMI SJE */
|
||||
$config['0500_052f'][] = array('upper' => 1294, 'status' => 'C', 'lower' => array(1295)); /* CYRILLIC CAPITAL LETTER KOMI TJE */
|
||||
$config['0500_052f'][] = array('upper' => 1296, 'status' => 'C', 'lower' => array(1297)); /* CYRILLIC CAPITAL LETTER REVERSED ZE */
|
||||
$config['0500_052f'][] = array('upper' => 1298, 'status' => 'C', 'lower' => array(1299)); /* CYRILLIC CAPITAL LETTER EL WITH HOOK */
|
||||
?>
|
|
@ -0,0 +1,87 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 0530_058f.php,v 1.1 2007-11-19 09:05:44 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+0530 through U+058F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:44 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['0530_058f'][] = array('upper' => 1329, 'status' => 'C', 'lower' => array(1377)); /* ARMENIAN CAPITAL LETTER AYB */
|
||||
$config['0530_058f'][] = array('upper' => 1330, 'status' => 'C', 'lower' => array(1378)); /* ARMENIAN CAPITAL LETTER BEN */
|
||||
$config['0530_058f'][] = array('upper' => 1331, 'status' => 'C', 'lower' => array(1379)); /* ARMENIAN CAPITAL LETTER GIM */
|
||||
$config['0530_058f'][] = array('upper' => 1332, 'status' => 'C', 'lower' => array(1380)); /* ARMENIAN CAPITAL LETTER DA */
|
||||
$config['0530_058f'][] = array('upper' => 1333, 'status' => 'C', 'lower' => array(1381)); /* ARMENIAN CAPITAL LETTER ECH */
|
||||
$config['0530_058f'][] = array('upper' => 1334, 'status' => 'C', 'lower' => array(1382)); /* ARMENIAN CAPITAL LETTER ZA */
|
||||
$config['0530_058f'][] = array('upper' => 1335, 'status' => 'C', 'lower' => array(1383)); /* ARMENIAN CAPITAL LETTER EH */
|
||||
$config['0530_058f'][] = array('upper' => 1336, 'status' => 'C', 'lower' => array(1384)); /* ARMENIAN CAPITAL LETTER ET */
|
||||
$config['0530_058f'][] = array('upper' => 1337, 'status' => 'C', 'lower' => array(1385)); /* ARMENIAN CAPITAL LETTER TO */
|
||||
$config['0530_058f'][] = array('upper' => 1338, 'status' => 'C', 'lower' => array(1386)); /* ARMENIAN CAPITAL LETTER ZHE */
|
||||
$config['0530_058f'][] = array('upper' => 1339, 'status' => 'C', 'lower' => array(1387)); /* ARMENIAN CAPITAL LETTER INI */
|
||||
$config['0530_058f'][] = array('upper' => 1340, 'status' => 'C', 'lower' => array(1388)); /* ARMENIAN CAPITAL LETTER LIWN */
|
||||
$config['0530_058f'][] = array('upper' => 1341, 'status' => 'C', 'lower' => array(1389)); /* ARMENIAN CAPITAL LETTER XEH */
|
||||
$config['0530_058f'][] = array('upper' => 1342, 'status' => 'C', 'lower' => array(1390)); /* ARMENIAN CAPITAL LETTER CA */
|
||||
$config['0530_058f'][] = array('upper' => 1343, 'status' => 'C', 'lower' => array(1391)); /* ARMENIAN CAPITAL LETTER KEN */
|
||||
$config['0530_058f'][] = array('upper' => 1344, 'status' => 'C', 'lower' => array(1392)); /* ARMENIAN CAPITAL LETTER HO */
|
||||
$config['0530_058f'][] = array('upper' => 1345, 'status' => 'C', 'lower' => array(1393)); /* ARMENIAN CAPITAL LETTER JA */
|
||||
$config['0530_058f'][] = array('upper' => 1346, 'status' => 'C', 'lower' => array(1394)); /* ARMENIAN CAPITAL LETTER GHAD */
|
||||
$config['0530_058f'][] = array('upper' => 1347, 'status' => 'C', 'lower' => array(1395)); /* ARMENIAN CAPITAL LETTER CHEH */
|
||||
$config['0530_058f'][] = array('upper' => 1348, 'status' => 'C', 'lower' => array(1396)); /* ARMENIAN CAPITAL LETTER MEN */
|
||||
$config['0530_058f'][] = array('upper' => 1349, 'status' => 'C', 'lower' => array(1397)); /* ARMENIAN CAPITAL LETTER YI */
|
||||
$config['0530_058f'][] = array('upper' => 1350, 'status' => 'C', 'lower' => array(1398)); /* ARMENIAN CAPITAL LETTER NOW */
|
||||
$config['0530_058f'][] = array('upper' => 1351, 'status' => 'C', 'lower' => array(1399)); /* ARMENIAN CAPITAL LETTER SHA */
|
||||
$config['0530_058f'][] = array('upper' => 1352, 'status' => 'C', 'lower' => array(1400)); /* ARMENIAN CAPITAL LETTER VO */
|
||||
$config['0530_058f'][] = array('upper' => 1353, 'status' => 'C', 'lower' => array(1401)); /* ARMENIAN CAPITAL LETTER CHA */
|
||||
$config['0530_058f'][] = array('upper' => 1354, 'status' => 'C', 'lower' => array(1402)); /* ARMENIAN CAPITAL LETTER PEH */
|
||||
$config['0530_058f'][] = array('upper' => 1355, 'status' => 'C', 'lower' => array(1403)); /* ARMENIAN CAPITAL LETTER JHEH */
|
||||
$config['0530_058f'][] = array('upper' => 1356, 'status' => 'C', 'lower' => array(1404)); /* ARMENIAN CAPITAL LETTER RA */
|
||||
$config['0530_058f'][] = array('upper' => 1357, 'status' => 'C', 'lower' => array(1405)); /* ARMENIAN CAPITAL LETTER SEH */
|
||||
$config['0530_058f'][] = array('upper' => 1358, 'status' => 'C', 'lower' => array(1406)); /* ARMENIAN CAPITAL LETTER VEW */
|
||||
$config['0530_058f'][] = array('upper' => 1359, 'status' => 'C', 'lower' => array(1407)); /* ARMENIAN CAPITAL LETTER TIWN */
|
||||
$config['0530_058f'][] = array('upper' => 1360, 'status' => 'C', 'lower' => array(1408)); /* ARMENIAN CAPITAL LETTER REH */
|
||||
$config['0530_058f'][] = array('upper' => 1361, 'status' => 'C', 'lower' => array(1409)); /* ARMENIAN CAPITAL LETTER CO */
|
||||
$config['0530_058f'][] = array('upper' => 1362, 'status' => 'C', 'lower' => array(1410)); /* ARMENIAN CAPITAL LETTER YIWN */
|
||||
$config['0530_058f'][] = array('upper' => 1363, 'status' => 'C', 'lower' => array(1411)); /* ARMENIAN CAPITAL LETTER PIWR */
|
||||
$config['0530_058f'][] = array('upper' => 1364, 'status' => 'C', 'lower' => array(1412)); /* ARMENIAN CAPITAL LETTER KEH */
|
||||
$config['0530_058f'][] = array('upper' => 1365, 'status' => 'C', 'lower' => array(1413)); /* ARMENIAN CAPITAL LETTER OH */
|
||||
$config['0530_058f'][] = array('upper' => 1366, 'status' => 'C', 'lower' => array(1414)); /* ARMENIAN CAPITAL LETTER FEH */
|
||||
$config['0530_058f'][] = array('upper' => 1415, 'status' => 'F', 'lower' => array(1381, 1410)); /* ARMENIAN SMALL LIGATURE ECH YIWN */
|
||||
?>
|
|
@ -0,0 +1,88 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 10400_1044f.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+10400 through U+1044F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['10400_1044f'][] = array('upper' => 66560, 'status' => 'C', 'lower' => array(66600)); /* DESERET CAPITAL LETTER LONG I */
|
||||
$config['10400_1044f'][] = array('upper' => 66561, 'status' => 'C', 'lower' => array(66601)); /* DESERET CAPITAL LETTER LONG E */
|
||||
$config['10400_1044f'][] = array('upper' => 66562, 'status' => 'C', 'lower' => array(66602)); /* DESERET CAPITAL LETTER LONG A */
|
||||
$config['10400_1044f'][] = array('upper' => 66563, 'status' => 'C', 'lower' => array(66603)); /* DESERET CAPITAL LETTER LONG AH */
|
||||
$config['10400_1044f'][] = array('upper' => 66564, 'status' => 'C', 'lower' => array(66604)); /* DESERET CAPITAL LETTER LONG O */
|
||||
$config['10400_1044f'][] = array('upper' => 66565, 'status' => 'C', 'lower' => array(66605)); /* DESERET CAPITAL LETTER LONG OO */
|
||||
$config['10400_1044f'][] = array('upper' => 66566, 'status' => 'C', 'lower' => array(66606)); /* DESERET CAPITAL LETTER SHORT I */
|
||||
$config['10400_1044f'][] = array('upper' => 66567, 'status' => 'C', 'lower' => array(66607)); /* DESERET CAPITAL LETTER SHORT E */
|
||||
$config['10400_1044f'][] = array('upper' => 66568, 'status' => 'C', 'lower' => array(66608)); /* DESERET CAPITAL LETTER SHORT A */
|
||||
$config['10400_1044f'][] = array('upper' => 66569, 'status' => 'C', 'lower' => array(66609)); /* DESERET CAPITAL LETTER SHORT AH */
|
||||
$config['10400_1044f'][] = array('upper' => 66570, 'status' => 'C', 'lower' => array(66610)); /* DESERET CAPITAL LETTER SHORT O */
|
||||
$config['10400_1044f'][] = array('upper' => 66571, 'status' => 'C', 'lower' => array(66611)); /* DESERET CAPITAL LETTER SHORT OO */
|
||||
$config['10400_1044f'][] = array('upper' => 66572, 'status' => 'C', 'lower' => array(66612)); /* DESERET CAPITAL LETTER AY */
|
||||
$config['10400_1044f'][] = array('upper' => 66573, 'status' => 'C', 'lower' => array(66613)); /* DESERET CAPITAL LETTER OW */
|
||||
$config['10400_1044f'][] = array('upper' => 66574, 'status' => 'C', 'lower' => array(66614)); /* DESERET CAPITAL LETTER WU */
|
||||
$config['10400_1044f'][] = array('upper' => 66575, 'status' => 'C', 'lower' => array(66615)); /* DESERET CAPITAL LETTER YEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66576, 'status' => 'C', 'lower' => array(66616)); /* DESERET CAPITAL LETTER H */
|
||||
$config['10400_1044f'][] = array('upper' => 66577, 'status' => 'C', 'lower' => array(66617)); /* DESERET CAPITAL LETTER PEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66578, 'status' => 'C', 'lower' => array(66618)); /* DESERET CAPITAL LETTER BEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66579, 'status' => 'C', 'lower' => array(66619)); /* DESERET CAPITAL LETTER TEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66580, 'status' => 'C', 'lower' => array(66620)); /* DESERET CAPITAL LETTER DEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66581, 'status' => 'C', 'lower' => array(66621)); /* DESERET CAPITAL LETTER CHEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66582, 'status' => 'C', 'lower' => array(66622)); /* DESERET CAPITAL LETTER JEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66583, 'status' => 'C', 'lower' => array(66623)); /* DESERET CAPITAL LETTER KAY */
|
||||
$config['10400_1044f'][] = array('upper' => 66584, 'status' => 'C', 'lower' => array(66624)); /* DESERET CAPITAL LETTER GAY */
|
||||
$config['10400_1044f'][] = array('upper' => 66585, 'status' => 'C', 'lower' => array(66625)); /* DESERET CAPITAL LETTER EF */
|
||||
$config['10400_1044f'][] = array('upper' => 66586, 'status' => 'C', 'lower' => array(66626)); /* DESERET CAPITAL LETTER VEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66587, 'status' => 'C', 'lower' => array(66627)); /* DESERET CAPITAL LETTER ETH */
|
||||
$config['10400_1044f'][] = array('upper' => 66588, 'status' => 'C', 'lower' => array(66628)); /* DESERET CAPITAL LETTER THEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66589, 'status' => 'C', 'lower' => array(66629)); /* DESERET CAPITAL LETTER ES */
|
||||
$config['10400_1044f'][] = array('upper' => 66590, 'status' => 'C', 'lower' => array(66630)); /* DESERET CAPITAL LETTER ZEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66591, 'status' => 'C', 'lower' => array(66631)); /* DESERET CAPITAL LETTER ESH */
|
||||
$config['10400_1044f'][] = array('upper' => 66592, 'status' => 'C', 'lower' => array(66632)); /* DESERET CAPITAL LETTER ZHEE */
|
||||
$config['10400_1044f'][] = array('upper' => 66593, 'status' => 'C', 'lower' => array(66633)); /* DESERET CAPITAL LETTER ER */
|
||||
$config['10400_1044f'][] = array('upper' => 66594, 'status' => 'C', 'lower' => array(66634)); /* DESERET CAPITAL LETTER EL */
|
||||
$config['10400_1044f'][] = array('upper' => 66595, 'status' => 'C', 'lower' => array(66635)); /* DESERET CAPITAL LETTER EM */
|
||||
$config['10400_1044f'][] = array('upper' => 66596, 'status' => 'C', 'lower' => array(66636)); /* DESERET CAPITAL LETTER EN */
|
||||
$config['10400_1044f'][] = array('upper' => 66597, 'status' => 'C', 'lower' => array(66637)); /* DESERET CAPITAL LETTER ENG */
|
||||
$config['10400_1044f'][] = array('upper' => 66598, 'status' => 'C', 'lower' => array(66638)); /* DESERET CAPITAL LETTER OI */
|
||||
$config['10400_1044f'][] = array('upper' => 66599, 'status' => 'C', 'lower' => array(66639)); /* DESERET CAPITAL LETTER EW */
|
||||
?>
|
|
@ -0,0 +1,86 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 10a0_10ff.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+10A0 through U+10FF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['10a0_10ff'][] = array('upper' => 4256, 'status' => 'C', 'lower' => array(11520)); /* GEORGIAN CAPITAL LETTER AN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4257, 'status' => 'C', 'lower' => array(11521)); /* GEORGIAN CAPITAL LETTER BAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4258, 'status' => 'C', 'lower' => array(11522)); /* GEORGIAN CAPITAL LETTER GAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4259, 'status' => 'C', 'lower' => array(11523)); /* GEORGIAN CAPITAL LETTER DON */
|
||||
$config['10a0_10ff'][] = array('upper' => 4260, 'status' => 'C', 'lower' => array(11524)); /* GEORGIAN CAPITAL LETTER EN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4261, 'status' => 'C', 'lower' => array(11525)); /* GEORGIAN CAPITAL LETTER VIN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4262, 'status' => 'C', 'lower' => array(11526)); /* GEORGIAN CAPITAL LETTER ZEN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4263, 'status' => 'C', 'lower' => array(11527)); /* GEORGIAN CAPITAL LETTER TAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4264, 'status' => 'C', 'lower' => array(11528)); /* GEORGIAN CAPITAL LETTER IN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4265, 'status' => 'C', 'lower' => array(11529)); /* GEORGIAN CAPITAL LETTER KAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4266, 'status' => 'C', 'lower' => array(11530)); /* GEORGIAN CAPITAL LETTER LAS */
|
||||
$config['10a0_10ff'][] = array('upper' => 4267, 'status' => 'C', 'lower' => array(11531)); /* GEORGIAN CAPITAL LETTER MAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4268, 'status' => 'C', 'lower' => array(11532)); /* GEORGIAN CAPITAL LETTER NAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4269, 'status' => 'C', 'lower' => array(11533)); /* GEORGIAN CAPITAL LETTER ON */
|
||||
$config['10a0_10ff'][] = array('upper' => 4270, 'status' => 'C', 'lower' => array(11534)); /* GEORGIAN CAPITAL LETTER PAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4271, 'status' => 'C', 'lower' => array(11535)); /* GEORGIAN CAPITAL LETTER ZHAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4272, 'status' => 'C', 'lower' => array(11536)); /* GEORGIAN CAPITAL LETTER RAE */
|
||||
$config['10a0_10ff'][] = array('upper' => 4273, 'status' => 'C', 'lower' => array(11537)); /* GEORGIAN CAPITAL LETTER SAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4274, 'status' => 'C', 'lower' => array(11538)); /* GEORGIAN CAPITAL LETTER TAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4275, 'status' => 'C', 'lower' => array(11539)); /* GEORGIAN CAPITAL LETTER UN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4276, 'status' => 'C', 'lower' => array(11540)); /* GEORGIAN CAPITAL LETTER PHAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4277, 'status' => 'C', 'lower' => array(11541)); /* GEORGIAN CAPITAL LETTER KHAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4278, 'status' => 'C', 'lower' => array(11542)); /* GEORGIAN CAPITAL LETTER GHAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4279, 'status' => 'C', 'lower' => array(11543)); /* GEORGIAN CAPITAL LETTER QAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4280, 'status' => 'C', 'lower' => array(11544)); /* GEORGIAN CAPITAL LETTER SHIN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4281, 'status' => 'C', 'lower' => array(11545)); /* GEORGIAN CAPITAL LETTER CHIN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4282, 'status' => 'C', 'lower' => array(11546)); /* GEORGIAN CAPITAL LETTER CAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4283, 'status' => 'C', 'lower' => array(11547)); /* GEORGIAN CAPITAL LETTER JIL */
|
||||
$config['10a0_10ff'][] = array('upper' => 4284, 'status' => 'C', 'lower' => array(11548)); /* GEORGIAN CAPITAL LETTER CIL */
|
||||
$config['10a0_10ff'][] = array('upper' => 4285, 'status' => 'C', 'lower' => array(11549)); /* GEORGIAN CAPITAL LETTER CHAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4286, 'status' => 'C', 'lower' => array(11550)); /* GEORGIAN CAPITAL LETTER XAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4287, 'status' => 'C', 'lower' => array(11551)); /* GEORGIAN CAPITAL LETTER JHAN */
|
||||
$config['10a0_10ff'][] = array('upper' => 4288, 'status' => 'C', 'lower' => array(11552)); /* GEORGIAN CAPITAL LETTER HAE */
|
||||
$config['10a0_10ff'][] = array('upper' => 4289, 'status' => 'C', 'lower' => array(11553)); /* GEORGIAN CAPITAL LETTER HE */
|
||||
$config['10a0_10ff'][] = array('upper' => 4290, 'status' => 'C', 'lower' => array(11554)); /* GEORGIAN CAPITAL LETTER HIE */
|
||||
$config['10a0_10ff'][] = array('upper' => 4291, 'status' => 'C', 'lower' => array(11555)); /* GEORGIAN CAPITAL LETTER WE */
|
||||
$config['10a0_10ff'][] = array('upper' => 4292, 'status' => 'C', 'lower' => array(11556)); /* GEORGIAN CAPITAL LETTER HAR */
|
||||
$config['10a0_10ff'][] = array('upper' => 4293, 'status' => 'C', 'lower' => array(11557)); /* GEORGIAN CAPITAL LETTER HOE */
|
||||
?>
|
|
@ -0,0 +1,174 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 1e00_1eff.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+1E00 through U+1EFF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['1e00_1eff'][] = array('upper' => 7680, 'status' => 'C', 'lower' => array(7681)); /* LATIN CAPITAL LETTER A WITH RING BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7682, 'status' => 'C', 'lower' => array(7683)); /* LATIN CAPITAL LETTER B WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7684, 'status' => 'C', 'lower' => array(7685)); /* LATIN CAPITAL LETTER B WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7686, 'status' => 'C', 'lower' => array(7687)); /* LATIN CAPITAL LETTER B WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7688, 'status' => 'C', 'lower' => array(7689)); /* LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7690, 'status' => 'C', 'lower' => array(7691)); /* LATIN CAPITAL LETTER D WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7692, 'status' => 'C', 'lower' => array(7693)); /* LATIN CAPITAL LETTER D WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7694, 'status' => 'C', 'lower' => array(7695)); /* LATIN CAPITAL LETTER D WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7696, 'status' => 'C', 'lower' => array(7697)); /* LATIN CAPITAL LETTER D WITH CEDILLA */
|
||||
$config['1e00_1eff'][] = array('upper' => 7698, 'status' => 'C', 'lower' => array(7699)); /* LATIN CAPITAL LETTER D WITH CIRCUMFLEX BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7700, 'status' => 'C', 'lower' => array(7701)); /* LATIN CAPITAL LETTER E WITH MACRON AND GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7702, 'status' => 'C', 'lower' => array(7703)); /* LATIN CAPITAL LETTER E WITH MACRON AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7704, 'status' => 'C', 'lower' => array(7705)); /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7706, 'status' => 'C', 'lower' => array(7707)); /* LATIN CAPITAL LETTER E WITH TILDE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7708, 'status' => 'C', 'lower' => array(7709)); /* LATIN CAPITAL LETTER E WITH CEDILLA AND BREVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7710, 'status' => 'C', 'lower' => array(7711)); /* LATIN CAPITAL LETTER F WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7712, 'status' => 'C', 'lower' => array(7713)); /* LATIN CAPITAL LETTER G WITH MACRON */
|
||||
$config['1e00_1eff'][] = array('upper' => 7714, 'status' => 'C', 'lower' => array(7715)); /* LATIN CAPITAL LETTER H WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7716, 'status' => 'C', 'lower' => array(7717)); /* LATIN CAPITAL LETTER H WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7718, 'status' => 'C', 'lower' => array(7719)); /* LATIN CAPITAL LETTER H WITH DIAERESIS */
|
||||
$config['1e00_1eff'][] = array('upper' => 7720, 'status' => 'C', 'lower' => array(7721)); /* LATIN CAPITAL LETTER H WITH CEDILLA */
|
||||
$config['1e00_1eff'][] = array('upper' => 7722, 'status' => 'C', 'lower' => array(7723)); /* LATIN CAPITAL LETTER H WITH BREVE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7724, 'status' => 'C', 'lower' => array(7725)); /* LATIN CAPITAL LETTER I WITH TILDE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7726, 'status' => 'C', 'lower' => array(7727)); /* LATIN CAPITAL LETTER I WITH DIAERESIS AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7728, 'status' => 'C', 'lower' => array(7729)); /* LATIN CAPITAL LETTER K WITH ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7730, 'status' => 'C', 'lower' => array(7731)); /* LATIN CAPITAL LETTER K WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7732, 'status' => 'C', 'lower' => array(7733)); /* LATIN CAPITAL LETTER K WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7734, 'status' => 'C', 'lower' => array(7735)); /* LATIN CAPITAL LETTER L WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7736, 'status' => 'C', 'lower' => array(7737)); /* LATIN CAPITAL LETTER L WITH DOT BELOW AND MACRON */
|
||||
$config['1e00_1eff'][] = array('upper' => 7738, 'status' => 'C', 'lower' => array(7739)); /* LATIN CAPITAL LETTER L WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7740, 'status' => 'C', 'lower' => array(7741)); /* LATIN CAPITAL LETTER L WITH CIRCUMFLEX BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7742, 'status' => 'C', 'lower' => array(7743)); /* LATIN CAPITAL LETTER M WITH ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7744, 'status' => 'C', 'lower' => array(7745)); /* LATIN CAPITAL LETTER M WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7746, 'status' => 'C', 'lower' => array(7747)); /* LATIN CAPITAL LETTER M WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7748, 'status' => 'C', 'lower' => array(7749)); /* LATIN CAPITAL LETTER N WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7750, 'status' => 'C', 'lower' => array(7751)); /* LATIN CAPITAL LETTER N WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7752, 'status' => 'C', 'lower' => array(7753)); /* LATIN CAPITAL LETTER N WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7754, 'status' => 'C', 'lower' => array(7755)); /* LATIN CAPITAL LETTER N WITH CIRCUMFLEX BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7756, 'status' => 'C', 'lower' => array(7757)); /* LATIN CAPITAL LETTER O WITH TILDE AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7758, 'status' => 'C', 'lower' => array(7759)); /* LATIN CAPITAL LETTER O WITH TILDE AND DIAERESIS */
|
||||
$config['1e00_1eff'][] = array('upper' => 7760, 'status' => 'C', 'lower' => array(7761)); /* LATIN CAPITAL LETTER O WITH MACRON AND GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7762, 'status' => 'C', 'lower' => array(7763)); /* LATIN CAPITAL LETTER O WITH MACRON AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7764, 'status' => 'C', 'lower' => array(7765)); /* LATIN CAPITAL LETTER P WITH ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7766, 'status' => 'C', 'lower' => array(7767)); /* LATIN CAPITAL LETTER P WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7768, 'status' => 'C', 'lower' => array(7769)); /* LATIN CAPITAL LETTER R WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7770, 'status' => 'C', 'lower' => array(7771)); /* LATIN CAPITAL LETTER R WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7772, 'status' => 'C', 'lower' => array(7773)); /* LATIN CAPITAL LETTER R WITH DOT BELOW AND MACRON */
|
||||
$config['1e00_1eff'][] = array('upper' => 7774, 'status' => 'C', 'lower' => array(7775)); /* LATIN CAPITAL LETTER R WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7776, 'status' => 'C', 'lower' => array(7777)); /* LATIN CAPITAL LETTER S WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7778, 'status' => 'C', 'lower' => array(7779)); /* LATIN CAPITAL LETTER S WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7780, 'status' => 'C', 'lower' => array(7781)); /* LATIN CAPITAL LETTER S WITH ACUTE AND DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7782, 'status' => 'C', 'lower' => array(7783)); /* LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7784, 'status' => 'C', 'lower' => array(7785)); /* LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7786, 'status' => 'C', 'lower' => array(7787)); /* LATIN CAPITAL LETTER T WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7788, 'status' => 'C', 'lower' => array(7789)); /* LATIN CAPITAL LETTER T WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7790, 'status' => 'C', 'lower' => array(7791)); /* LATIN CAPITAL LETTER T WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7792, 'status' => 'C', 'lower' => array(7793)); /* LATIN CAPITAL LETTER T WITH CIRCUMFLEX BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7794, 'status' => 'C', 'lower' => array(7795)); /* LATIN CAPITAL LETTER U WITH DIAERESIS BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7796, 'status' => 'C', 'lower' => array(7797)); /* LATIN CAPITAL LETTER U WITH TILDE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7798, 'status' => 'C', 'lower' => array(7799)); /* LATIN CAPITAL LETTER U WITH CIRCUMFLEX BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7800, 'status' => 'C', 'lower' => array(7801)); /* LATIN CAPITAL LETTER U WITH TILDE AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7802, 'status' => 'C', 'lower' => array(7803)); /* LATIN CAPITAL LETTER U WITH MACRON AND DIAERESIS */
|
||||
$config['1e00_1eff'][] = array('upper' => 7804, 'status' => 'C', 'lower' => array(7805)); /* LATIN CAPITAL LETTER V WITH TILDE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7806, 'status' => 'C', 'lower' => array(7807)); /* LATIN CAPITAL LETTER V WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7808, 'status' => 'C', 'lower' => array(7809)); /* LATIN CAPITAL LETTER W WITH GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7810, 'status' => 'C', 'lower' => array(7811)); /* LATIN CAPITAL LETTER W WITH ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7812, 'status' => 'C', 'lower' => array(7813)); /* LATIN CAPITAL LETTER W WITH DIAERESIS */
|
||||
$config['1e00_1eff'][] = array('upper' => 7814, 'status' => 'C', 'lower' => array(7815)); /* LATIN CAPITAL LETTER W WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7816, 'status' => 'C', 'lower' => array(7817)); /* LATIN CAPITAL LETTER W WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7818, 'status' => 'C', 'lower' => array(7819)); /* LATIN CAPITAL LETTER X WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7820, 'status' => 'C', 'lower' => array(7821)); /* LATIN CAPITAL LETTER X WITH DIAERESIS */
|
||||
$config['1e00_1eff'][] = array('upper' => 7822, 'status' => 'C', 'lower' => array(7823)); /* LATIN CAPITAL LETTER Y WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7824, 'status' => 'C', 'lower' => array(7825)); /* LATIN CAPITAL LETTER Z WITH CIRCUMFLEX */
|
||||
$config['1e00_1eff'][] = array('upper' => 7826, 'status' => 'C', 'lower' => array(7827)); /* LATIN CAPITAL LETTER Z WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7828, 'status' => 'C', 'lower' => array(7829)); /* LATIN CAPITAL LETTER Z WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7830, 'status' => 'F', 'lower' => array(104, 817)); /* LATIN SMALL LETTER H WITH LINE BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7831, 'status' => 'F', 'lower' => array(116, 776)); /* LATIN SMALL LETTER T WITH DIAERESIS */
|
||||
$config['1e00_1eff'][] = array('upper' => 7832, 'status' => 'F', 'lower' => array(119, 778)); /* LATIN SMALL LETTER W WITH RING ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7833, 'status' => 'F', 'lower' => array(121, 778)); /* LATIN SMALL LETTER Y WITH RING ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7834, 'status' => 'F', 'lower' => array(97, 702)); /* LATIN SMALL LETTER A WITH RIGHT HALF RING */
|
||||
$config['1e00_1eff'][] = array('upper' => 7835, 'status' => 'C', 'lower' => array(7777)); /* LATIN SMALL LETTER LONG S WITH DOT ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7840, 'status' => 'C', 'lower' => array(7841)); /* LATIN CAPITAL LETTER A WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7842, 'status' => 'C', 'lower' => array(7843)); /* LATIN CAPITAL LETTER A WITH HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7844, 'status' => 'C', 'lower' => array(7845)); /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7846, 'status' => 'C', 'lower' => array(7847)); /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7848, 'status' => 'C', 'lower' => array(7849)); /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7850, 'status' => 'C', 'lower' => array(7851)); /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND TILDE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7852, 'status' => 'C', 'lower' => array(7853)); /* LATIN CAPITAL LETTER A WITH CIRCUMFLEX AND DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7854, 'status' => 'C', 'lower' => array(7855)); /* LATIN CAPITAL LETTER A WITH BREVE AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7856, 'status' => 'C', 'lower' => array(7857)); /* LATIN CAPITAL LETTER A WITH BREVE AND GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7858, 'status' => 'C', 'lower' => array(7859)); /* LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7860, 'status' => 'C', 'lower' => array(7861)); /* LATIN CAPITAL LETTER A WITH BREVE AND TILDE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7862, 'status' => 'C', 'lower' => array(7863)); /* LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7864, 'status' => 'C', 'lower' => array(7865)); /* LATIN CAPITAL LETTER E WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7866, 'status' => 'C', 'lower' => array(7867)); /* LATIN CAPITAL LETTER E WITH HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7868, 'status' => 'C', 'lower' => array(7869)); /* LATIN CAPITAL LETTER E WITH TILDE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7870, 'status' => 'C', 'lower' => array(7871)); /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7872, 'status' => 'C', 'lower' => array(7873)); /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7874, 'status' => 'C', 'lower' => array(7875)); /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7876, 'status' => 'C', 'lower' => array(7877)); /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND TILDE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7878, 'status' => 'C', 'lower' => array(7879)); /* LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7880, 'status' => 'C', 'lower' => array(7881)); /* LATIN CAPITAL LETTER I WITH HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7882, 'status' => 'C', 'lower' => array(7883)); /* LATIN CAPITAL LETTER I WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7884, 'status' => 'C', 'lower' => array(7885)); /* LATIN CAPITAL LETTER O WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7886, 'status' => 'C', 'lower' => array(7887)); /* LATIN CAPITAL LETTER O WITH HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7888, 'status' => 'C', 'lower' => array(7889)); /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7890, 'status' => 'C', 'lower' => array(7891)); /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7892, 'status' => 'C', 'lower' => array(7893)); /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7894, 'status' => 'C', 'lower' => array(7895)); /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND TILDE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7896, 'status' => 'C', 'lower' => array(7897)); /* LATIN CAPITAL LETTER O WITH CIRCUMFLEX AND DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7898, 'status' => 'C', 'lower' => array(7899)); /* LATIN CAPITAL LETTER O WITH HORN AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7900, 'status' => 'C', 'lower' => array(7901)); /* LATIN CAPITAL LETTER O WITH HORN AND GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7902, 'status' => 'C', 'lower' => array(7903)); /* LATIN CAPITAL LETTER O WITH HORN AND HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7904, 'status' => 'C', 'lower' => array(7905)); /* LATIN CAPITAL LETTER O WITH HORN AND TILDE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7906, 'status' => 'C', 'lower' => array(7907)); /* LATIN CAPITAL LETTER O WITH HORN AND DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7908, 'status' => 'C', 'lower' => array(7909)); /* LATIN CAPITAL LETTER U WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7910, 'status' => 'C', 'lower' => array(7911)); /* LATIN CAPITAL LETTER U WITH HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7912, 'status' => 'C', 'lower' => array(7913)); /* LATIN CAPITAL LETTER U WITH HORN AND ACUTE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7914, 'status' => 'C', 'lower' => array(7915)); /* LATIN CAPITAL LETTER U WITH HORN AND GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7916, 'status' => 'C', 'lower' => array(7917)); /* LATIN CAPITAL LETTER U WITH HORN AND HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7918, 'status' => 'C', 'lower' => array(7919)); /* LATIN CAPITAL LETTER U WITH HORN AND TILDE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7920, 'status' => 'C', 'lower' => array(7921)); /* LATIN CAPITAL LETTER U WITH HORN AND DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7922, 'status' => 'C', 'lower' => array(7923)); /* LATIN CAPITAL LETTER Y WITH GRAVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7924, 'status' => 'C', 'lower' => array(7925)); /* LATIN CAPITAL LETTER Y WITH DOT BELOW */
|
||||
$config['1e00_1eff'][] = array('upper' => 7926, 'status' => 'C', 'lower' => array(7927)); /* LATIN CAPITAL LETTER Y WITH HOOK ABOVE */
|
||||
$config['1e00_1eff'][] = array('upper' => 7928, 'status' => 'C', 'lower' => array(7929)); /* LATIN CAPITAL LETTER Y WITH TILDE */
|
||||
?>
|
|
@ -0,0 +1,224 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 1f00_1fff.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+1F00 through U+1FFF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['1f00_1fff'][] = array('upper' => 7944, 'status' => 'C', 'lower' => array(7936)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7945, 'status' => 'C', 'lower' => array(7937)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7946, 'status' => 'C', 'lower' => array(7938)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7947, 'status' => 'C', 'lower' => array(7939)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7948, 'status' => 'C', 'lower' => array(7940)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7949, 'status' => 'C', 'lower' => array(7941)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7950, 'status' => 'C', 'lower' => array(7942)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7951, 'status' => 'C', 'lower' => array(7943)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7960, 'status' => 'C', 'lower' => array(7952)); /* GREEK CAPITAL LETTER EPSILON WITH PSILI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7961, 'status' => 'C', 'lower' => array(7953)); /* GREEK CAPITAL LETTER EPSILON WITH DASIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7962, 'status' => 'C', 'lower' => array(7954)); /* GREEK CAPITAL LETTER EPSILON WITH PSILI AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7963, 'status' => 'C', 'lower' => array(7955)); /* GREEK CAPITAL LETTER EPSILON WITH DASIA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7964, 'status' => 'C', 'lower' => array(7956)); /* GREEK CAPITAL LETTER EPSILON WITH PSILI AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7965, 'status' => 'C', 'lower' => array(7957)); /* GREEK CAPITAL LETTER EPSILON WITH DASIA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7976, 'status' => 'C', 'lower' => array(7968)); /* GREEK CAPITAL LETTER ETA WITH PSILI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7977, 'status' => 'C', 'lower' => array(7969)); /* GREEK CAPITAL LETTER ETA WITH DASIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7978, 'status' => 'C', 'lower' => array(7970)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7979, 'status' => 'C', 'lower' => array(7971)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7980, 'status' => 'C', 'lower' => array(7972)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7981, 'status' => 'C', 'lower' => array(7973)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7982, 'status' => 'C', 'lower' => array(7974)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7983, 'status' => 'C', 'lower' => array(7975)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7992, 'status' => 'C', 'lower' => array(7984)); /* GREEK CAPITAL LETTER IOTA WITH PSILI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7993, 'status' => 'C', 'lower' => array(7985)); /* GREEK CAPITAL LETTER IOTA WITH DASIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7994, 'status' => 'C', 'lower' => array(7986)); /* GREEK CAPITAL LETTER IOTA WITH PSILI AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7995, 'status' => 'C', 'lower' => array(7987)); /* GREEK CAPITAL LETTER IOTA WITH DASIA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7996, 'status' => 'C', 'lower' => array(7988)); /* GREEK CAPITAL LETTER IOTA WITH PSILI AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7997, 'status' => 'C', 'lower' => array(7989)); /* GREEK CAPITAL LETTER IOTA WITH DASIA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 7998, 'status' => 'C', 'lower' => array(7990)); /* GREEK CAPITAL LETTER IOTA WITH PSILI AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 7999, 'status' => 'C', 'lower' => array(7991)); /* GREEK CAPITAL LETTER IOTA WITH DASIA AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8008, 'status' => 'C', 'lower' => array(8000)); /* GREEK CAPITAL LETTER OMICRON WITH PSILI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8009, 'status' => 'C', 'lower' => array(8001)); /* GREEK CAPITAL LETTER OMICRON WITH DASIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8010, 'status' => 'C', 'lower' => array(8002)); /* GREEK CAPITAL LETTER OMICRON WITH PSILI AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8011, 'status' => 'C', 'lower' => array(8003)); /* GREEK CAPITAL LETTER OMICRON WITH DASIA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8012, 'status' => 'C', 'lower' => array(8004)); /* GREEK CAPITAL LETTER OMICRON WITH PSILI AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8013, 'status' => 'C', 'lower' => array(8005)); /* GREEK CAPITAL LETTER OMICRON WITH DASIA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8016, 'status' => 'F', 'lower' => array(965, 787)); /* GREEK SMALL LETTER UPSILON WITH PSILI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8018, 'status' => 'F', 'lower' => array(965, 787, 768)); /* GREEK SMALL LETTER UPSILON WITH PSILI AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8020, 'status' => 'F', 'lower' => array(965, 787, 769)); /* GREEK SMALL LETTER UPSILON WITH PSILI AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8022, 'status' => 'F', 'lower' => array(965, 787, 834)); /* GREEK SMALL LETTER UPSILON WITH PSILI AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8025, 'status' => 'C', 'lower' => array(8017)); /* GREEK CAPITAL LETTER UPSILON WITH DASIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8027, 'status' => 'C', 'lower' => array(8019)); /* GREEK CAPITAL LETTER UPSILON WITH DASIA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8029, 'status' => 'C', 'lower' => array(8021)); /* GREEK CAPITAL LETTER UPSILON WITH DASIA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8031, 'status' => 'C', 'lower' => array(8023)); /* GREEK CAPITAL LETTER UPSILON WITH DASIA AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8040, 'status' => 'C', 'lower' => array(8032)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8041, 'status' => 'C', 'lower' => array(8033)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8042, 'status' => 'C', 'lower' => array(8034)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8043, 'status' => 'C', 'lower' => array(8035)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8044, 'status' => 'C', 'lower' => array(8036)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8045, 'status' => 'C', 'lower' => array(8037)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8046, 'status' => 'C', 'lower' => array(8038)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8047, 'status' => 'C', 'lower' => array(8039)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8064, 'status' => 'F', 'lower' => array(7936, 953)); /* GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8065, 'status' => 'F', 'lower' => array(7937, 953)); /* GREEK SMALL LETTER ALPHA WITH DASIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8066, 'status' => 'F', 'lower' => array(7938, 953)); /* GREEK SMALL LETTER ALPHA WITH PSILI AND VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8067, 'status' => 'F', 'lower' => array(7939, 953)); /* GREEK SMALL LETTER ALPHA WITH DASIA AND VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8068, 'status' => 'F', 'lower' => array(7940, 953)); /* GREEK SMALL LETTER ALPHA WITH PSILI AND OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8069, 'status' => 'F', 'lower' => array(7941, 953)); /* GREEK SMALL LETTER ALPHA WITH DASIA AND OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8070, 'status' => 'F', 'lower' => array(7942, 953)); /* GREEK SMALL LETTER ALPHA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8071, 'status' => 'F', 'lower' => array(7943, 953)); /* GREEK SMALL LETTER ALPHA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8072, 'status' => 'F', 'lower' => array(7936, 953)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8072, 'status' => 'S', 'lower' => array(8064)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8073, 'status' => 'F', 'lower' => array(7937, 953)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8073, 'status' => 'S', 'lower' => array(8065)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8074, 'status' => 'F', 'lower' => array(7938, 953)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8074, 'status' => 'S', 'lower' => array(8066)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8075, 'status' => 'F', 'lower' => array(7939, 953)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8075, 'status' => 'S', 'lower' => array(8067)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8076, 'status' => 'F', 'lower' => array(7940, 953)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8076, 'status' => 'S', 'lower' => array(8068)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8077, 'status' => 'F', 'lower' => array(7941, 953)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8077, 'status' => 'S', 'lower' => array(8069)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8078, 'status' => 'F', 'lower' => array(7942, 953)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8078, 'status' => 'S', 'lower' => array(8070)); /* GREEK CAPITAL LETTER ALPHA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8079, 'status' => 'F', 'lower' => array(7943, 953)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8079, 'status' => 'S', 'lower' => array(8071)); /* GREEK CAPITAL LETTER ALPHA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8080, 'status' => 'F', 'lower' => array(7968, 953)); /* GREEK SMALL LETTER ETA WITH PSILI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8081, 'status' => 'F', 'lower' => array(7969, 953)); /* GREEK SMALL LETTER ETA WITH DASIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8082, 'status' => 'F', 'lower' => array(7970, 953)); /* GREEK SMALL LETTER ETA WITH PSILI AND VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8083, 'status' => 'F', 'lower' => array(7971, 953)); /* GREEK SMALL LETTER ETA WITH DASIA AND VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8084, 'status' => 'F', 'lower' => array(7972, 953)); /* GREEK SMALL LETTER ETA WITH PSILI AND OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8085, 'status' => 'F', 'lower' => array(7973, 953)); /* GREEK SMALL LETTER ETA WITH DASIA AND OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8086, 'status' => 'F', 'lower' => array(7974, 953)); /* GREEK SMALL LETTER ETA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8087, 'status' => 'F', 'lower' => array(7975, 953)); /* GREEK SMALL LETTER ETA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8088, 'status' => 'F', 'lower' => array(7968, 953)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8088, 'status' => 'S', 'lower' => array(8080)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8089, 'status' => 'F', 'lower' => array(7969, 953)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8089, 'status' => 'S', 'lower' => array(8081)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8090, 'status' => 'F', 'lower' => array(7970, 953)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8090, 'status' => 'S', 'lower' => array(8082)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8091, 'status' => 'F', 'lower' => array(7971, 953)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8091, 'status' => 'S', 'lower' => array(8083)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8092, 'status' => 'F', 'lower' => array(7972, 953)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8092, 'status' => 'S', 'lower' => array(8084)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8093, 'status' => 'F', 'lower' => array(7973, 953)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8093, 'status' => 'S', 'lower' => array(8085)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8094, 'status' => 'F', 'lower' => array(7974, 953)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8094, 'status' => 'S', 'lower' => array(8086)); /* GREEK CAPITAL LETTER ETA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8095, 'status' => 'F', 'lower' => array(7975, 953)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8095, 'status' => 'S', 'lower' => array(8087)); /* GREEK CAPITAL LETTER ETA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8096, 'status' => 'F', 'lower' => array(8032, 953)); /* GREEK SMALL LETTER OMEGA WITH PSILI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8097, 'status' => 'F', 'lower' => array(8033, 953)); /* GREEK SMALL LETTER OMEGA WITH DASIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8098, 'status' => 'F', 'lower' => array(8034, 953)); /* GREEK SMALL LETTER OMEGA WITH PSILI AND VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8099, 'status' => 'F', 'lower' => array(8035, 953)); /* GREEK SMALL LETTER OMEGA WITH DASIA AND VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8100, 'status' => 'F', 'lower' => array(8036, 953)); /* GREEK SMALL LETTER OMEGA WITH PSILI AND OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8101, 'status' => 'F', 'lower' => array(8037, 953)); /* GREEK SMALL LETTER OMEGA WITH DASIA AND OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8102, 'status' => 'F', 'lower' => array(8038, 953)); /* GREEK SMALL LETTER OMEGA WITH PSILI AND PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8103, 'status' => 'F', 'lower' => array(8039, 953)); /* GREEK SMALL LETTER OMEGA WITH DASIA AND PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8104, 'status' => 'F', 'lower' => array(8032, 953)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8104, 'status' => 'S', 'lower' => array(8096)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8105, 'status' => 'F', 'lower' => array(8033, 953)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8105, 'status' => 'S', 'lower' => array(8097)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8106, 'status' => 'F', 'lower' => array(8034, 953)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8106, 'status' => 'S', 'lower' => array(8098)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8107, 'status' => 'F', 'lower' => array(8035, 953)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8107, 'status' => 'S', 'lower' => array(8099)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND VARIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8108, 'status' => 'F', 'lower' => array(8036, 953)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8108, 'status' => 'S', 'lower' => array(8100)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8109, 'status' => 'F', 'lower' => array(8037, 953)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8109, 'status' => 'S', 'lower' => array(8101)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND OXIA AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8110, 'status' => 'F', 'lower' => array(8038, 953)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8110, 'status' => 'S', 'lower' => array(8102)); /* GREEK CAPITAL LETTER OMEGA WITH PSILI AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8111, 'status' => 'F', 'lower' => array(8039, 953)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8111, 'status' => 'S', 'lower' => array(8103)); /* GREEK CAPITAL LETTER OMEGA WITH DASIA AND PERISPOMENI AND PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8114, 'status' => 'F', 'lower' => array(8048, 953)); /* GREEK SMALL LETTER ALPHA WITH VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8115, 'status' => 'F', 'lower' => array(945, 953)); /* GREEK SMALL LETTER ALPHA WITH YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8116, 'status' => 'F', 'lower' => array(940, 953)); /* GREEK SMALL LETTER ALPHA WITH OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8118, 'status' => 'F', 'lower' => array(945, 834)); /* GREEK SMALL LETTER ALPHA WITH PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8119, 'status' => 'F', 'lower' => array(945, 834, 953)); /* GREEK SMALL LETTER ALPHA WITH PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8120, 'status' => 'C', 'lower' => array(8112)); /* GREEK CAPITAL LETTER ALPHA WITH VRACHY */
|
||||
$config['1f00_1fff'][] = array('upper' => 8121, 'status' => 'C', 'lower' => array(8113)); /* GREEK CAPITAL LETTER ALPHA WITH MACRON */
|
||||
$config['1f00_1fff'][] = array('upper' => 8122, 'status' => 'C', 'lower' => array(8048)); /* GREEK CAPITAL LETTER ALPHA WITH VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8123, 'status' => 'C', 'lower' => array(8049)); /* GREEK CAPITAL LETTER ALPHA WITH OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8124, 'status' => 'F', 'lower' => array(945, 953)); /* GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8124, 'status' => 'S', 'lower' => array(8115)); /* GREEK CAPITAL LETTER ALPHA WITH PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8126, 'status' => 'C', 'lower' => array(953)); /* GREEK PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8130, 'status' => 'F', 'lower' => array(8052, 953)); /* GREEK SMALL LETTER ETA WITH VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8131, 'status' => 'F', 'lower' => array(951, 953)); /* GREEK SMALL LETTER ETA WITH YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8132, 'status' => 'F', 'lower' => array(942, 953)); /* GREEK SMALL LETTER ETA WITH OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8134, 'status' => 'F', 'lower' => array(951, 834)); /* GREEK SMALL LETTER ETA WITH PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8135, 'status' => 'F', 'lower' => array(951, 834, 953)); /* GREEK SMALL LETTER ETA WITH PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8136, 'status' => 'C', 'lower' => array(8050)); /* GREEK CAPITAL LETTER EPSILON WITH VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8137, 'status' => 'C', 'lower' => array(8051)); /* GREEK CAPITAL LETTER EPSILON WITH OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8138, 'status' => 'C', 'lower' => array(8052)); /* GREEK CAPITAL LETTER ETA WITH VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8139, 'status' => 'C', 'lower' => array(8053)); /* GREEK CAPITAL LETTER ETA WITH OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8140, 'status' => 'F', 'lower' => array(951, 953)); /* GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8140, 'status' => 'S', 'lower' => array(8131)); /* GREEK CAPITAL LETTER ETA WITH PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8146, 'status' => 'F', 'lower' => array(953, 776, 768)); /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8147, 'status' => 'F', 'lower' => array(953, 776, 769)); /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8150, 'status' => 'F', 'lower' => array(953, 834)); /* GREEK SMALL LETTER IOTA WITH PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8151, 'status' => 'F', 'lower' => array(953, 776, 834)); /* GREEK SMALL LETTER IOTA WITH DIALYTIKA AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8152, 'status' => 'C', 'lower' => array(8144)); /* GREEK CAPITAL LETTER IOTA WITH VRACHY */
|
||||
$config['1f00_1fff'][] = array('upper' => 8153, 'status' => 'C', 'lower' => array(8145)); /* GREEK CAPITAL LETTER IOTA WITH MACRON */
|
||||
$config['1f00_1fff'][] = array('upper' => 8154, 'status' => 'C', 'lower' => array(8054)); /* GREEK CAPITAL LETTER IOTA WITH VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8155, 'status' => 'C', 'lower' => array(8055)); /* GREEK CAPITAL LETTER IOTA WITH OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8162, 'status' => 'F', 'lower' => array(965, 776, 768)); /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8163, 'status' => 'F', 'lower' => array(965, 776, 769)); /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8164, 'status' => 'F', 'lower' => array(961, 787)); /* GREEK SMALL LETTER RHO WITH PSILI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8166, 'status' => 'F', 'lower' => array(965, 834)); /* GREEK SMALL LETTER UPSILON WITH PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8167, 'status' => 'F', 'lower' => array(965, 776, 834)); /* GREEK SMALL LETTER UPSILON WITH DIALYTIKA AND PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8168, 'status' => 'C', 'lower' => array(8160)); /* GREEK CAPITAL LETTER UPSILON WITH VRACHY */
|
||||
$config['1f00_1fff'][] = array('upper' => 8169, 'status' => 'C', 'lower' => array(8161)); /* GREEK CAPITAL LETTER UPSILON WITH MACRON */
|
||||
$config['1f00_1fff'][] = array('upper' => 8170, 'status' => 'C', 'lower' => array(8058)); /* GREEK CAPITAL LETTER UPSILON WITH VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8171, 'status' => 'C', 'lower' => array(8059)); /* GREEK CAPITAL LETTER UPSILON WITH OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8172, 'status' => 'C', 'lower' => array(8165)); /* GREEK CAPITAL LETTER RHO WITH DASIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8178, 'status' => 'F', 'lower' => array(8060, 953)); /* GREEK SMALL LETTER OMEGA WITH VARIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8179, 'status' => 'F', 'lower' => array(969, 953)); /* GREEK SMALL LETTER OMEGA WITH YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8180, 'status' => 'F', 'lower' => array(974, 953)); /* GREEK SMALL LETTER OMEGA WITH OXIA AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8182, 'status' => 'F', 'lower' => array(969, 834)); /* GREEK SMALL LETTER OMEGA WITH PERISPOMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8183, 'status' => 'F', 'lower' => array(969, 834, 953)); /* GREEK SMALL LETTER OMEGA WITH PERISPOMENI AND YPOGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8184, 'status' => 'C', 'lower' => array(8056)); /* GREEK CAPITAL LETTER OMICRON WITH VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8185, 'status' => 'C', 'lower' => array(8057)); /* GREEK CAPITAL LETTER OMICRON WITH OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8186, 'status' => 'C', 'lower' => array(8060)); /* GREEK CAPITAL LETTER OMEGA WITH VARIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8187, 'status' => 'C', 'lower' => array(8061)); /* GREEK CAPITAL LETTER OMEGA WITH OXIA */
|
||||
$config['1f00_1fff'][] = array('upper' => 8188, 'status' => 'F', 'lower' => array(969, 953)); /* GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI */
|
||||
$config['1f00_1fff'][] = array('upper' => 8188, 'status' => 'S', 'lower' => array(8179)); /* GREEK CAPITAL LETTER OMEGA WITH PROSGEGRAMMENI */
|
||||
?>
|
|
@ -0,0 +1,52 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 2100_214f.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+2100 through U+214F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['2100_214f'][] = array('upper' => 8486, 'status' => 'C', 'lower' => array(969)); /* OHM SIGN */
|
||||
$config['2100_214f'][] = array('upper' => 8490, 'status' => 'C', 'lower' => array(107)); /* KELVIN SIGN */
|
||||
$config['2100_214f'][] = array('upper' => 8491, 'status' => 'C', 'lower' => array(229)); /* ANGSTROM SIGN */
|
||||
$config['2100_214f'][] = array('upper' => 8498, 'status' => 'C', 'lower' => array(8526)); /* TURNED CAPITAL F */
|
||||
?>
|
|
@ -0,0 +1,65 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 2150_218f.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+2150 through U+218F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['2150_218f'][] = array('upper' => 8544, 'status' => 'C', 'lower' => array(8560)); /* ROMAN NUMERAL ONE */
|
||||
$config['2150_218f'][] = array('upper' => 8545, 'status' => 'C', 'lower' => array(8561)); /* ROMAN NUMERAL TWO */
|
||||
$config['2150_218f'][] = array('upper' => 8546, 'status' => 'C', 'lower' => array(8562)); /* ROMAN NUMERAL THREE */
|
||||
$config['2150_218f'][] = array('upper' => 8547, 'status' => 'C', 'lower' => array(8563)); /* ROMAN NUMERAL FOUR */
|
||||
$config['2150_218f'][] = array('upper' => 8548, 'status' => 'C', 'lower' => array(8564)); /* ROMAN NUMERAL FIVE */
|
||||
$config['2150_218f'][] = array('upper' => 8549, 'status' => 'C', 'lower' => array(8565)); /* ROMAN NUMERAL SIX */
|
||||
$config['2150_218f'][] = array('upper' => 8550, 'status' => 'C', 'lower' => array(8566)); /* ROMAN NUMERAL SEVEN */
|
||||
$config['2150_218f'][] = array('upper' => 8551, 'status' => 'C', 'lower' => array(8567)); /* ROMAN NUMERAL EIGHT */
|
||||
$config['2150_218f'][] = array('upper' => 8552, 'status' => 'C', 'lower' => array(8568)); /* ROMAN NUMERAL NINE */
|
||||
$config['2150_218f'][] = array('upper' => 8553, 'status' => 'C', 'lower' => array(8569)); /* ROMAN NUMERAL TEN */
|
||||
$config['2150_218f'][] = array('upper' => 8554, 'status' => 'C', 'lower' => array(8570)); /* ROMAN NUMERAL ELEVEN */
|
||||
$config['2150_218f'][] = array('upper' => 8555, 'status' => 'C', 'lower' => array(8571)); /* ROMAN NUMERAL TWELVE */
|
||||
$config['2150_218f'][] = array('upper' => 8556, 'status' => 'C', 'lower' => array(8572)); /* ROMAN NUMERAL FIFTY */
|
||||
$config['2150_218f'][] = array('upper' => 8557, 'status' => 'C', 'lower' => array(8573)); /* ROMAN NUMERAL ONE HUNDRED */
|
||||
$config['2150_218f'][] = array('upper' => 8558, 'status' => 'C', 'lower' => array(8574)); /* ROMAN NUMERAL FIVE HUNDRED */
|
||||
$config['2150_218f'][] = array('upper' => 8559, 'status' => 'C', 'lower' => array(8575)); /* ROMAN NUMERAL ONE THOUSAND */
|
||||
$config['2150_218f'][] = array('upper' => 8579, 'status' => 'C', 'lower' => array(8580)); /* ROMAN NUMERAL REVERSED ONE HUNDRED */
|
||||
?>
|
|
@ -0,0 +1,74 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 2460_24ff.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+2460 through U+24FF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['2460_24ff'][] = array('upper' => 9398, 'status' => 'C', 'lower' => array(9424)); /* CIRCLED LATIN CAPITAL LETTER A */
|
||||
$config['2460_24ff'][] = array('upper' => 9399, 'status' => 'C', 'lower' => array(9425)); /* CIRCLED LATIN CAPITAL LETTER B */
|
||||
$config['2460_24ff'][] = array('upper' => 9400, 'status' => 'C', 'lower' => array(9426)); /* CIRCLED LATIN CAPITAL LETTER C */
|
||||
$config['2460_24ff'][] = array('upper' => 9401, 'status' => 'C', 'lower' => array(9427)); /* CIRCLED LATIN CAPITAL LETTER D */
|
||||
$config['2460_24ff'][] = array('upper' => 9402, 'status' => 'C', 'lower' => array(9428)); /* CIRCLED LATIN CAPITAL LETTER E */
|
||||
$config['2460_24ff'][] = array('upper' => 9403, 'status' => 'C', 'lower' => array(9429)); /* CIRCLED LATIN CAPITAL LETTER F */
|
||||
$config['2460_24ff'][] = array('upper' => 9404, 'status' => 'C', 'lower' => array(9430)); /* CIRCLED LATIN CAPITAL LETTER G */
|
||||
$config['2460_24ff'][] = array('upper' => 9405, 'status' => 'C', 'lower' => array(9431)); /* CIRCLED LATIN CAPITAL LETTER H */
|
||||
$config['2460_24ff'][] = array('upper' => 9406, 'status' => 'C', 'lower' => array(9432)); /* CIRCLED LATIN CAPITAL LETTER I */
|
||||
$config['2460_24ff'][] = array('upper' => 9407, 'status' => 'C', 'lower' => array(9433)); /* CIRCLED LATIN CAPITAL LETTER J */
|
||||
$config['2460_24ff'][] = array('upper' => 9408, 'status' => 'C', 'lower' => array(9434)); /* CIRCLED LATIN CAPITAL LETTER K */
|
||||
$config['2460_24ff'][] = array('upper' => 9409, 'status' => 'C', 'lower' => array(9435)); /* CIRCLED LATIN CAPITAL LETTER L */
|
||||
$config['2460_24ff'][] = array('upper' => 9410, 'status' => 'C', 'lower' => array(9436)); /* CIRCLED LATIN CAPITAL LETTER M */
|
||||
$config['2460_24ff'][] = array('upper' => 9411, 'status' => 'C', 'lower' => array(9437)); /* CIRCLED LATIN CAPITAL LETTER N */
|
||||
$config['2460_24ff'][] = array('upper' => 9412, 'status' => 'C', 'lower' => array(9438)); /* CIRCLED LATIN CAPITAL LETTER O */
|
||||
$config['2460_24ff'][] = array('upper' => 9413, 'status' => 'C', 'lower' => array(9439)); /* CIRCLED LATIN CAPITAL LETTER P */
|
||||
$config['2460_24ff'][] = array('upper' => 9414, 'status' => 'C', 'lower' => array(9440)); /* CIRCLED LATIN CAPITAL LETTER Q */
|
||||
$config['2460_24ff'][] = array('upper' => 9415, 'status' => 'C', 'lower' => array(9441)); /* CIRCLED LATIN CAPITAL LETTER R */
|
||||
$config['2460_24ff'][] = array('upper' => 9416, 'status' => 'C', 'lower' => array(9442)); /* CIRCLED LATIN CAPITAL LETTER S */
|
||||
$config['2460_24ff'][] = array('upper' => 9417, 'status' => 'C', 'lower' => array(9443)); /* CIRCLED LATIN CAPITAL LETTER T */
|
||||
$config['2460_24ff'][] = array('upper' => 9418, 'status' => 'C', 'lower' => array(9444)); /* CIRCLED LATIN CAPITAL LETTER U */
|
||||
$config['2460_24ff'][] = array('upper' => 9419, 'status' => 'C', 'lower' => array(9445)); /* CIRCLED LATIN CAPITAL LETTER V */
|
||||
$config['2460_24ff'][] = array('upper' => 9420, 'status' => 'C', 'lower' => array(9446)); /* CIRCLED LATIN CAPITAL LETTER W */
|
||||
$config['2460_24ff'][] = array('upper' => 9421, 'status' => 'C', 'lower' => array(9447)); /* CIRCLED LATIN CAPITAL LETTER X */
|
||||
$config['2460_24ff'][] = array('upper' => 9422, 'status' => 'C', 'lower' => array(9448)); /* CIRCLED LATIN CAPITAL LETTER Y */
|
||||
$config['2460_24ff'][] = array('upper' => 9423, 'status' => 'C', 'lower' => array(9449)); /* CIRCLED LATIN CAPITAL LETTER Z */
|
||||
?>
|
|
@ -0,0 +1,95 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 2c00_2c5f.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+2C00 through U+2C5F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['2c00_2c5f'][] = array('upper' => 11264, 'status' => 'C', 'lower' => array(11312)); /* GLAGOLITIC CAPITAL LETTER AZU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11265, 'status' => 'C', 'lower' => array(11313)); /* GLAGOLITIC CAPITAL LETTER BUKY */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11266, 'status' => 'C', 'lower' => array(11314)); /* GLAGOLITIC CAPITAL LETTER VEDE */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11267, 'status' => 'C', 'lower' => array(11315)); /* GLAGOLITIC CAPITAL LETTER GLAGOLI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11268, 'status' => 'C', 'lower' => array(11316)); /* GLAGOLITIC CAPITAL LETTER DOBRO */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11269, 'status' => 'C', 'lower' => array(11317)); /* GLAGOLITIC CAPITAL LETTER YESTU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11270, 'status' => 'C', 'lower' => array(11318)); /* GLAGOLITIC CAPITAL LETTER ZHIVETE */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11271, 'status' => 'C', 'lower' => array(11319)); /* GLAGOLITIC CAPITAL LETTER DZELO */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11272, 'status' => 'C', 'lower' => array(11320)); /* GLAGOLITIC CAPITAL LETTER ZEMLJA */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11273, 'status' => 'C', 'lower' => array(11321)); /* GLAGOLITIC CAPITAL LETTER IZHE */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11274, 'status' => 'C', 'lower' => array(11322)); /* GLAGOLITIC CAPITAL LETTER INITIAL IZHE */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11275, 'status' => 'C', 'lower' => array(11323)); /* GLAGOLITIC CAPITAL LETTER I */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11276, 'status' => 'C', 'lower' => array(11324)); /* GLAGOLITIC CAPITAL LETTER DJERVI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11277, 'status' => 'C', 'lower' => array(11325)); /* GLAGOLITIC CAPITAL LETTER KAKO */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11278, 'status' => 'C', 'lower' => array(11326)); /* GLAGOLITIC CAPITAL LETTER LJUDIJE */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11279, 'status' => 'C', 'lower' => array(11327)); /* GLAGOLITIC CAPITAL LETTER MYSLITE */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11280, 'status' => 'C', 'lower' => array(11328)); /* GLAGOLITIC CAPITAL LETTER NASHI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11281, 'status' => 'C', 'lower' => array(11329)); /* GLAGOLITIC CAPITAL LETTER ONU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11282, 'status' => 'C', 'lower' => array(11330)); /* GLAGOLITIC CAPITAL LETTER POKOJI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11283, 'status' => 'C', 'lower' => array(11331)); /* GLAGOLITIC CAPITAL LETTER RITSI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11284, 'status' => 'C', 'lower' => array(11332)); /* GLAGOLITIC CAPITAL LETTER SLOVO */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11285, 'status' => 'C', 'lower' => array(11333)); /* GLAGOLITIC CAPITAL LETTER TVRIDO */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11286, 'status' => 'C', 'lower' => array(11334)); /* GLAGOLITIC CAPITAL LETTER UKU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11287, 'status' => 'C', 'lower' => array(11335)); /* GLAGOLITIC CAPITAL LETTER FRITU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11288, 'status' => 'C', 'lower' => array(11336)); /* GLAGOLITIC CAPITAL LETTER HERU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11289, 'status' => 'C', 'lower' => array(11337)); /* GLAGOLITIC CAPITAL LETTER OTU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11290, 'status' => 'C', 'lower' => array(11338)); /* GLAGOLITIC CAPITAL LETTER PE */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11291, 'status' => 'C', 'lower' => array(11339)); /* GLAGOLITIC CAPITAL LETTER SHTA */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11292, 'status' => 'C', 'lower' => array(11340)); /* GLAGOLITIC CAPITAL LETTER TSI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11293, 'status' => 'C', 'lower' => array(11341)); /* GLAGOLITIC CAPITAL LETTER CHRIVI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11294, 'status' => 'C', 'lower' => array(11342)); /* GLAGOLITIC CAPITAL LETTER SHA */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11295, 'status' => 'C', 'lower' => array(11343)); /* GLAGOLITIC CAPITAL LETTER YERU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11296, 'status' => 'C', 'lower' => array(11344)); /* GLAGOLITIC CAPITAL LETTER YERI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11297, 'status' => 'C', 'lower' => array(11345)); /* GLAGOLITIC CAPITAL LETTER YATI */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11298, 'status' => 'C', 'lower' => array(11346)); /* GLAGOLITIC CAPITAL LETTER SPIDERY HA */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11299, 'status' => 'C', 'lower' => array(11347)); /* GLAGOLITIC CAPITAL LETTER YU */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11300, 'status' => 'C', 'lower' => array(11348)); /* GLAGOLITIC CAPITAL LETTER SMALL YUS */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11301, 'status' => 'C', 'lower' => array(11349)); /* GLAGOLITIC CAPITAL LETTER SMALL YUS WITH TAIL */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11302, 'status' => 'C', 'lower' => array(11350)); /* GLAGOLITIC CAPITAL LETTER YO */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11303, 'status' => 'C', 'lower' => array(11351)); /* GLAGOLITIC CAPITAL LETTER IOTATED SMALL YUS */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11304, 'status' => 'C', 'lower' => array(11352)); /* GLAGOLITIC CAPITAL LETTER BIG YUS */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11305, 'status' => 'C', 'lower' => array(11353)); /* GLAGOLITIC CAPITAL LETTER IOTATED BIG YUS */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11306, 'status' => 'C', 'lower' => array(11354)); /* GLAGOLITIC CAPITAL LETTER FITA */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11307, 'status' => 'C', 'lower' => array(11355)); /* GLAGOLITIC CAPITAL LETTER IZHITSA */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11308, 'status' => 'C', 'lower' => array(11356)); /* GLAGOLITIC CAPITAL LETTER SHTAPIC */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11309, 'status' => 'C', 'lower' => array(11357)); /* GLAGOLITIC CAPITAL LETTER TROKUTASTI A */
|
||||
$config['2c00_2c5f'][] = array('upper' => 11310, 'status' => 'C', 'lower' => array(11358)); /* GLAGOLITIC CAPITAL LETTER LATINATE MYSLITE */
|
||||
?>
|
|
@ -0,0 +1,56 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 2c60_2c7f.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+2C60 through U+2C7F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['2c60_2c7f'][] = array('upper' => 11360, 'status' => 'C', 'lower' => array(11361)); /* LATIN CAPITAL LETTER L WITH DOUBLE BAR */
|
||||
$config['2c60_2c7f'][] = array('upper' => 11362, 'status' => 'C', 'lower' => array(619)); /* LATIN CAPITAL LETTER L WITH MIDDLE TILDE */
|
||||
$config['2c60_2c7f'][] = array('upper' => 11363, 'status' => 'C', 'lower' => array(7549)); /* LATIN CAPITAL LETTER P WITH STROKE */
|
||||
$config['2c60_2c7f'][] = array('upper' => 11364, 'status' => 'C', 'lower' => array(637)); /* LATIN CAPITAL LETTER R WITH TAIL */
|
||||
$config['2c60_2c7f'][] = array('upper' => 11367, 'status' => 'C', 'lower' => array(11368)); /* LATIN CAPITAL LETTER H WITH DESCENDER */
|
||||
$config['2c60_2c7f'][] = array('upper' => 11369, 'status' => 'C', 'lower' => array(11370)); /* LATIN CAPITAL LETTER K WITH DESCENDER */
|
||||
$config['2c60_2c7f'][] = array('upper' => 11371, 'status' => 'C', 'lower' => array(11372)); /* LATIN CAPITAL LETTER Z WITH DESCENDER */
|
||||
$config['2c60_2c7f'][] = array('upper' => 11381, 'status' => 'C', 'lower' => array(11382)); /* LATIN CAPITAL LETTER HALF H */
|
||||
?>
|
|
@ -0,0 +1,98 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: 2c80_2cff.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+2C80 through U+2CFF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['2c80_2cff'][] = array('upper' => 11392, 'status' => 'C', 'lower' => array(11393)); /* COPTIC CAPITAL LETTER ALFA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11394, 'status' => 'C', 'lower' => array(11395)); /* COPTIC CAPITAL LETTER VIDA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11396, 'status' => 'C', 'lower' => array(11397)); /* COPTIC CAPITAL LETTER GAMMA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11398, 'status' => 'C', 'lower' => array(11399)); /* COPTIC CAPITAL LETTER DALDA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11400, 'status' => 'C', 'lower' => array(11401)); /* COPTIC CAPITAL LETTER EIE */
|
||||
$config['2c80_2cff'][] = array('upper' => 11402, 'status' => 'C', 'lower' => array(11403)); /* COPTIC CAPITAL LETTER SOU */
|
||||
$config['2c80_2cff'][] = array('upper' => 11404, 'status' => 'C', 'lower' => array(11405)); /* COPTIC CAPITAL LETTER ZATA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11406, 'status' => 'C', 'lower' => array(11407)); /* COPTIC CAPITAL LETTER HATE */
|
||||
$config['2c80_2cff'][] = array('upper' => 11408, 'status' => 'C', 'lower' => array(11409)); /* COPTIC CAPITAL LETTER THETHE */
|
||||
$config['2c80_2cff'][] = array('upper' => 11410, 'status' => 'C', 'lower' => array(11411)); /* COPTIC CAPITAL LETTER IAUDA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11412, 'status' => 'C', 'lower' => array(11413)); /* COPTIC CAPITAL LETTER KAPA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11414, 'status' => 'C', 'lower' => array(11415)); /* COPTIC CAPITAL LETTER LAULA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11416, 'status' => 'C', 'lower' => array(11417)); /* COPTIC CAPITAL LETTER MI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11418, 'status' => 'C', 'lower' => array(11419)); /* COPTIC CAPITAL LETTER NI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11420, 'status' => 'C', 'lower' => array(11421)); /* COPTIC CAPITAL LETTER KSI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11422, 'status' => 'C', 'lower' => array(11423)); /* COPTIC CAPITAL LETTER O */
|
||||
$config['2c80_2cff'][] = array('upper' => 11424, 'status' => 'C', 'lower' => array(11425)); /* COPTIC CAPITAL LETTER PI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11426, 'status' => 'C', 'lower' => array(11427)); /* COPTIC CAPITAL LETTER RO */
|
||||
$config['2c80_2cff'][] = array('upper' => 11428, 'status' => 'C', 'lower' => array(11429)); /* COPTIC CAPITAL LETTER SIMA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11430, 'status' => 'C', 'lower' => array(11431)); /* COPTIC CAPITAL LETTER TAU */
|
||||
$config['2c80_2cff'][] = array('upper' => 11432, 'status' => 'C', 'lower' => array(11433)); /* COPTIC CAPITAL LETTER UA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11434, 'status' => 'C', 'lower' => array(11435)); /* COPTIC CAPITAL LETTER FI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11436, 'status' => 'C', 'lower' => array(11437)); /* COPTIC CAPITAL LETTER KHI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11438, 'status' => 'C', 'lower' => array(11439)); /* COPTIC CAPITAL LETTER PSI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11440, 'status' => 'C', 'lower' => array(11441)); /* COPTIC CAPITAL LETTER OOU */
|
||||
$config['2c80_2cff'][] = array('upper' => 11442, 'status' => 'C', 'lower' => array(11443)); /* COPTIC CAPITAL LETTER DIALECT-P ALEF */
|
||||
$config['2c80_2cff'][] = array('upper' => 11444, 'status' => 'C', 'lower' => array(11445)); /* COPTIC CAPITAL LETTER OLD COPTIC AIN */
|
||||
$config['2c80_2cff'][] = array('upper' => 11446, 'status' => 'C', 'lower' => array(11447)); /* COPTIC CAPITAL LETTER CRYPTOGRAMMIC EIE */
|
||||
$config['2c80_2cff'][] = array('upper' => 11448, 'status' => 'C', 'lower' => array(11449)); /* COPTIC CAPITAL LETTER DIALECT-P KAPA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11450, 'status' => 'C', 'lower' => array(11451)); /* COPTIC CAPITAL LETTER DIALECT-P NI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11452, 'status' => 'C', 'lower' => array(11453)); /* COPTIC CAPITAL LETTER CRYPTOGRAMMIC NI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11454, 'status' => 'C', 'lower' => array(11455)); /* COPTIC CAPITAL LETTER OLD COPTIC OOU */
|
||||
$config['2c80_2cff'][] = array('upper' => 11456, 'status' => 'C', 'lower' => array(11457)); /* COPTIC CAPITAL LETTER SAMPI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11458, 'status' => 'C', 'lower' => array(11459)); /* COPTIC CAPITAL LETTER CROSSED SHEI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11460, 'status' => 'C', 'lower' => array(11461)); /* COPTIC CAPITAL LETTER OLD COPTIC SHEI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11462, 'status' => 'C', 'lower' => array(11463)); /* COPTIC CAPITAL LETTER OLD COPTIC ESH */
|
||||
$config['2c80_2cff'][] = array('upper' => 11464, 'status' => 'C', 'lower' => array(11465)); /* COPTIC CAPITAL LETTER AKHMIMIC KHEI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11466, 'status' => 'C', 'lower' => array(11467)); /* COPTIC CAPITAL LETTER DIALECT-P HORI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11468, 'status' => 'C', 'lower' => array(11469)); /* COPTIC CAPITAL LETTER OLD COPTIC HORI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11470, 'status' => 'C', 'lower' => array(11471)); /* COPTIC CAPITAL LETTER OLD COPTIC HA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11472, 'status' => 'C', 'lower' => array(11473)); /* COPTIC CAPITAL LETTER L-SHAPED HA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11474, 'status' => 'C', 'lower' => array(11475)); /* COPTIC CAPITAL LETTER OLD COPTIC HEI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11476, 'status' => 'C', 'lower' => array(11477)); /* COPTIC CAPITAL LETTER OLD COPTIC HAT */
|
||||
$config['2c80_2cff'][] = array('upper' => 11478, 'status' => 'C', 'lower' => array(11479)); /* COPTIC CAPITAL LETTER OLD COPTIC GANGIA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11480, 'status' => 'C', 'lower' => array(11481)); /* COPTIC CAPITAL LETTER OLD COPTIC DJA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11482, 'status' => 'C', 'lower' => array(11483)); /* COPTIC CAPITAL LETTER OLD COPTIC SHIMA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11484, 'status' => 'C', 'lower' => array(11485)); /* COPTIC CAPITAL LETTER OLD NUBIAN SHIMA */
|
||||
$config['2c80_2cff'][] = array('upper' => 11486, 'status' => 'C', 'lower' => array(11487)); /* COPTIC CAPITAL LETTER OLD NUBIAN NGI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11488, 'status' => 'C', 'lower' => array(11489)); /* COPTIC CAPITAL LETTER OLD NUBIAN NYI */
|
||||
$config['2c80_2cff'][] = array('upper' => 11490, 'status' => 'C', 'lower' => array(11491)); /* COPTIC CAPITAL LETTER OLD NUBIAN WAU */
|
||||
?>
|
|
@ -0,0 +1,60 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: fb00_fb4f.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+FB00 through U+FB4F
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['fb00_fb4f'][] = array('upper' => 64256, 'status' => 'F', 'lower' => array(102, 102)); /* LATIN SMALL LIGATURE FF */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64257, 'status' => 'F', 'lower' => array(102, 105)); /* LATIN SMALL LIGATURE FI */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64258, 'status' => 'F', 'lower' => array(102, 108)); /* LATIN SMALL LIGATURE FL */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64259, 'status' => 'F', 'lower' => array(102, 102, 105)); /* LATIN SMALL LIGATURE FFI */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64260, 'status' => 'F', 'lower' => array(102, 102, 108)); /* LATIN SMALL LIGATURE FFL */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64261, 'status' => 'F', 'lower' => array(115, 116)); /* LATIN SMALL LIGATURE LONG S T */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64262, 'status' => 'F', 'lower' => array(115, 116)); /* LATIN SMALL LIGATURE ST */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64275, 'status' => 'F', 'lower' => array(1396, 1398)); /* ARMENIAN SMALL LIGATURE MEN NOW */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64276, 'status' => 'F', 'lower' => array(1396, 1381)); /* ARMENIAN SMALL LIGATURE MEN ECH */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64277, 'status' => 'F', 'lower' => array(1396, 1387)); /* ARMENIAN SMALL LIGATURE MEN INI */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64278, 'status' => 'F', 'lower' => array(1406, 1398)); /* ARMENIAN SMALL LIGATURE VEW NOW */
|
||||
$config['fb00_fb4f'][] = array('upper' => 64279, 'status' => 'F', 'lower' => array(1396, 1389)); /* ARMENIAN SMALL LIGATURE MEN XEH */
|
||||
?>
|
|
@ -0,0 +1,74 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: ff00_ffef.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Case Folding Properties.
|
||||
*
|
||||
* Provides case mapping of Unicode characters for code points U+FF00 through U+FFEF
|
||||
*
|
||||
* @see http://www.unicode.org/Public/UNIDATA/UCD.html
|
||||
* @see http://www.unicode.org/Public/UNIDATA/CaseFolding.txt
|
||||
* @see http://www.unicode.org/reports/tr21/tr21-5.html
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.config.unicode.casefolding
|
||||
* @since CakePHP(tm) v 1.2.0.5691
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* The upper field is the decimal value of the upper case character
|
||||
*
|
||||
* The lower filed is an array of the decimal values that form the lower case version of a character.
|
||||
*
|
||||
* The status field is:
|
||||
* C: common case folding, common mappings shared by both simple and full mappings.
|
||||
* F: full case folding, mappings that cause strings to grow in length. Multiple characters are separated by spaces.
|
||||
* S: simple case folding, mappings to single characters where different from F.
|
||||
* T: special case for uppercase I and dotted uppercase I
|
||||
* - For non-Turkic languages, this mapping is normally not used.
|
||||
* - For Turkic languages (tr, az), this mapping can be used instead of the normal mapping for these characters.
|
||||
* Note that the Turkic mappings do not maintain canonical equivalence without additional processing.
|
||||
* See the discussions of case mapping in the Unicode Standard for more information.
|
||||
*/
|
||||
$config['ff00_ffef'][] = array('upper' => 65313, 'status' => 'C', 'lower' => array(65345)); /* FULLWIDTH LATIN CAPITAL LETTER A */
|
||||
$config['ff00_ffef'][] = array('upper' => 65314, 'status' => 'C', 'lower' => array(65346)); /* FULLWIDTH LATIN CAPITAL LETTER B */
|
||||
$config['ff00_ffef'][] = array('upper' => 65315, 'status' => 'C', 'lower' => array(65347)); /* FULLWIDTH LATIN CAPITAL LETTER C */
|
||||
$config['ff00_ffef'][] = array('upper' => 65316, 'status' => 'C', 'lower' => array(65348)); /* FULLWIDTH LATIN CAPITAL LETTER D */
|
||||
$config['ff00_ffef'][] = array('upper' => 65317, 'status' => 'C', 'lower' => array(65349)); /* FULLWIDTH LATIN CAPITAL LETTER E */
|
||||
$config['ff00_ffef'][] = array('upper' => 65318, 'status' => 'C', 'lower' => array(65350)); /* FULLWIDTH LATIN CAPITAL LETTER F */
|
||||
$config['ff00_ffef'][] = array('upper' => 65319, 'status' => 'C', 'lower' => array(65351)); /* FULLWIDTH LATIN CAPITAL LETTER G */
|
||||
$config['ff00_ffef'][] = array('upper' => 65320, 'status' => 'C', 'lower' => array(65352)); /* FULLWIDTH LATIN CAPITAL LETTER H */
|
||||
$config['ff00_ffef'][] = array('upper' => 65321, 'status' => 'C', 'lower' => array(65353)); /* FULLWIDTH LATIN CAPITAL LETTER I */
|
||||
$config['ff00_ffef'][] = array('upper' => 65322, 'status' => 'C', 'lower' => array(65354)); /* FULLWIDTH LATIN CAPITAL LETTER J */
|
||||
$config['ff00_ffef'][] = array('upper' => 65323, 'status' => 'C', 'lower' => array(65355)); /* FULLWIDTH LATIN CAPITAL LETTER K */
|
||||
$config['ff00_ffef'][] = array('upper' => 65324, 'status' => 'C', 'lower' => array(65356)); /* FULLWIDTH LATIN CAPITAL LETTER L */
|
||||
$config['ff00_ffef'][] = array('upper' => 65325, 'status' => 'C', 'lower' => array(65357)); /* FULLWIDTH LATIN CAPITAL LETTER M */
|
||||
$config['ff00_ffef'][] = array('upper' => 65326, 'status' => 'C', 'lower' => array(65358)); /* FULLWIDTH LATIN CAPITAL LETTER N */
|
||||
$config['ff00_ffef'][] = array('upper' => 65327, 'status' => 'C', 'lower' => array(65359)); /* FULLWIDTH LATIN CAPITAL LETTER O */
|
||||
$config['ff00_ffef'][] = array('upper' => 65328, 'status' => 'C', 'lower' => array(65360)); /* FULLWIDTH LATIN CAPITAL LETTER P */
|
||||
$config['ff00_ffef'][] = array('upper' => 65329, 'status' => 'C', 'lower' => array(65361)); /* FULLWIDTH LATIN CAPITAL LETTER Q */
|
||||
$config['ff00_ffef'][] = array('upper' => 65330, 'status' => 'C', 'lower' => array(65362)); /* FULLWIDTH LATIN CAPITAL LETTER R */
|
||||
$config['ff00_ffef'][] = array('upper' => 65331, 'status' => 'C', 'lower' => array(65363)); /* FULLWIDTH LATIN CAPITAL LETTER S */
|
||||
$config['ff00_ffef'][] = array('upper' => 65332, 'status' => 'C', 'lower' => array(65364)); /* FULLWIDTH LATIN CAPITAL LETTER T */
|
||||
$config['ff00_ffef'][] = array('upper' => 65333, 'status' => 'C', 'lower' => array(65365)); /* FULLWIDTH LATIN CAPITAL LETTER U */
|
||||
$config['ff00_ffef'][] = array('upper' => 65334, 'status' => 'C', 'lower' => array(65366)); /* FULLWIDTH LATIN CAPITAL LETTER V */
|
||||
$config['ff00_ffef'][] = array('upper' => 65335, 'status' => 'C', 'lower' => array(65367)); /* FULLWIDTH LATIN CAPITAL LETTER W */
|
||||
$config['ff00_ffef'][] = array('upper' => 65336, 'status' => 'C', 'lower' => array(65368)); /* FULLWIDTH LATIN CAPITAL LETTER X */
|
||||
$config['ff00_ffef'][] = array('upper' => 65337, 'status' => 'C', 'lower' => array(65369)); /* FULLWIDTH LATIN CAPITAL LETTER Y */
|
||||
$config['ff00_ffef'][] = array('upper' => 65338, 'status' => 'C', 'lower' => array(65370)); /* FULLWIDTH LATIN CAPITAL LETTER Z */
|
||||
?>
|
|
@ -0,0 +1,236 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: api.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* API shell to get CakePHP core method signatures.
|
||||
*
|
||||
* Implementation of a Cake Shell to show CakePHP core method signatures.
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs
|
||||
* @since CakePHP(tm) v 1.2.0.5012
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
|
||||
/**
|
||||
* API shell to show method signatures of CakePHP core classes.
|
||||
*
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs
|
||||
*/
|
||||
class ApiShell extends Shell {
|
||||
/**
|
||||
* Map between short name for paths and real paths.
|
||||
*
|
||||
* @var array
|
||||
* @access public
|
||||
*/
|
||||
var $paths = array();
|
||||
/**
|
||||
* Override intialize of the Shell
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function initialize () {
|
||||
$this->paths = am($this->paths, array(
|
||||
'behavior' => LIBS . 'model' . DS . 'behaviors' . DS,
|
||||
'cache' => LIBS . 'cache' . DS,
|
||||
'controller' => LIBS . 'controller' . DS,
|
||||
'component' => LIBS . 'controller' . DS . 'components' . DS,
|
||||
'helper' => LIBS . 'view' . DS . 'helpers' . DS,
|
||||
'model' => LIBS . 'model' . DS,
|
||||
'view' => LIBS . 'view' . DS
|
||||
));
|
||||
}
|
||||
/**
|
||||
* Override main() to handle action
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function main() {
|
||||
if (empty($this->args)) {
|
||||
return $this->help();
|
||||
}
|
||||
if (count($this->args) == 1 && in_array($this->args[0], array_keys($this->paths))) {
|
||||
$this->args[1] = $this->args[0];
|
||||
}
|
||||
|
||||
if (count($this->args) > 1) {
|
||||
$path = $this->args[0];
|
||||
$class = $this->args[1];
|
||||
|
||||
$this->__loadDependencies($path);
|
||||
|
||||
if (in_array(low($path), array('behavior', 'component', 'helper')) && low($path) !== low($class)) {
|
||||
if (!preg_match('/' . Inflector::camelize($path) . '$/', $class)) {
|
||||
$class .= Inflector::camelize($path);
|
||||
}
|
||||
} elseif (low($path) === low($class)) {
|
||||
$class = Inflector::camelize($path);
|
||||
}
|
||||
|
||||
if (isset($this->paths[low($path)])) {
|
||||
$path = $this->paths[low($path)];
|
||||
}
|
||||
} else {
|
||||
$class = $this->args[0];
|
||||
$path = LIBS;
|
||||
}
|
||||
|
||||
if (!is_readable($path) || !is_dir($path)) {
|
||||
$this->err(sprintf(__('Path %s could not be accessed', true), $path));
|
||||
return;
|
||||
}
|
||||
|
||||
$File = null;
|
||||
|
||||
$candidates = array(
|
||||
Inflector::underscore($class),
|
||||
substr(Inflector::underscore($class), 0, strpos(Inflector::underscore($class), '_'))
|
||||
);
|
||||
|
||||
foreach ($candidates as $candidate) {
|
||||
$File =& new File($path . $candidate . '.php');
|
||||
|
||||
if ($File->exists()) {
|
||||
if (!class_exists($class)) {
|
||||
include($File->pwd());
|
||||
}
|
||||
if (class_exists($class)) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
$File = null;
|
||||
}
|
||||
|
||||
if (empty($File)) {
|
||||
$this->err(sprintf(__('No file for class %s could be found', true), $class));
|
||||
return;
|
||||
}
|
||||
|
||||
$parsed = $this->__parseClass($File, $class);
|
||||
|
||||
if (!empty($parsed)) {
|
||||
$this->out(ucwords($class));
|
||||
$this->hr();
|
||||
|
||||
foreach ($parsed as $method) {
|
||||
$this->out("\t" . $method['method'] . "(" . $method['parameters'] . ")", true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Show help for this shell.
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function help() {
|
||||
$head = "Usage: cake api [<path>] <className>\n";
|
||||
$head .= "-----------------------------------------------\n";
|
||||
$head .= "Parameters:\n\n";
|
||||
|
||||
$commands = array(
|
||||
'path' => "\t<path>\n" .
|
||||
"\t\tEither a full path or an indicator on where the class is stored.\n".
|
||||
"\t\tAvailable values:\n\n".
|
||||
"\t\tbehavior\tLook for class in CakePHP behavior path\n".
|
||||
"\t\tcache\tLook for class in CakePHP cache path\n".
|
||||
"\t\tcontroller\tLook for class in CakePHP controller path\n".
|
||||
"\t\tcomponent\tLook for class in CakePHP component path\n".
|
||||
"\t\thelper\tLook for class in CakePHP helper path\n".
|
||||
"\t\tmodel\tLook for class in CakePHP model path\n".
|
||||
"\t\tview\tLook for class in CakePHP view path\n",
|
||||
'className' => "\t<className>\n" .
|
||||
"\t\tA CakePHP core class name (e.g: Component, HtmlHelper).\n"
|
||||
);
|
||||
|
||||
$this->out($head);
|
||||
if (!isset($this->args[1])) {
|
||||
foreach ($commands as $cmd) {
|
||||
$this->out("{$cmd}\n\n");
|
||||
}
|
||||
} elseif (isset($commands[low($this->args[1])])) {
|
||||
$this->out($commands[low($this->args[1])] . "\n\n");
|
||||
} else {
|
||||
$this->out("Command '" . $this->args[1] . "' not found");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse a given class (located on given file) and get public methods and their
|
||||
* signatures.
|
||||
*
|
||||
* @param object $File File object
|
||||
* @param string $class Class name
|
||||
* @return array Methods and signatures indexed by method name
|
||||
* @access private
|
||||
*/
|
||||
function __parseClass(&$File, $class) {
|
||||
$parsed = array();
|
||||
|
||||
$methods = am(array(), array_diff(get_class_methods($class), get_class_methods(get_parent_class($class))));
|
||||
|
||||
$contents = $File->read();
|
||||
|
||||
foreach ($methods as $method) {
|
||||
if (strpos($method, '__') !== 0 && strpos($method, '_') !== 0) {
|
||||
$regex = '/\s+function\s+(' . preg_quote($method, '/') . ')\s*\(([^{]*)\)\s*{/is';
|
||||
|
||||
if (preg_match($regex, $contents, $matches)) {
|
||||
$parsed[$method] = array(
|
||||
'method' => trim($matches[1]),
|
||||
'parameters' => trim($matches[2])
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
sort($parsed);
|
||||
return $parsed;
|
||||
}
|
||||
|
||||
/**
|
||||
* Load dependencies for given element (controller/component/helper)
|
||||
*
|
||||
* @param string $element Element to load dependency for
|
||||
* @access private
|
||||
*/
|
||||
function __loadDependencies($element) {
|
||||
switch(low($element)) {
|
||||
case 'behavior':
|
||||
loadModel(null);
|
||||
loadBehavior(null);
|
||||
break;
|
||||
case 'controller':
|
||||
loadController(null);
|
||||
break;
|
||||
case 'component':
|
||||
loadComponent(null);
|
||||
break;
|
||||
case 'helper':
|
||||
uses('view'.DS.'helper');
|
||||
loadHelper(null);
|
||||
break;
|
||||
case 'model':
|
||||
loadModel(null);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
|
@ -0,0 +1,151 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: i18n.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Short description for file.
|
||||
*
|
||||
* Long description for file
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs
|
||||
* @since CakePHP(tm) v 1.2.0.5669
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* Shell for I18N management.
|
||||
*
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs
|
||||
*/
|
||||
class I18nShell extends Shell {
|
||||
/**
|
||||
* Contains database source to use
|
||||
*
|
||||
* @var string
|
||||
* @access public
|
||||
*/
|
||||
var $dataSource = 'default';
|
||||
/**
|
||||
* Contains tasks to load and instantiate
|
||||
*
|
||||
* @var array
|
||||
* @access public
|
||||
*/
|
||||
var $tasks = array('DbConfig', 'Extract');
|
||||
|
||||
/**
|
||||
* Override startup of the Shell
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function startup() {
|
||||
if (isset($this->params['datasource'])) {
|
||||
$this->dataSource = $this->params['datasource'];
|
||||
}
|
||||
|
||||
if ($this->command && !in_array($this->command, array('help'))) {
|
||||
if (!config('database')) {
|
||||
$this->out(__('Your database configuration was not found. Take a moment to create one.', true), true);
|
||||
return $this->DbConfig->execute();
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Override main() for help message hook
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function main() {
|
||||
$this->out(__('I18n Shell', true));
|
||||
$this->hr();
|
||||
$this->out(__('[E]xtract POT file from sources', true));
|
||||
$this->out(__('[I]nitialize i18n database table', true));
|
||||
$this->out(__('[H]elp', true));
|
||||
$this->out(__('[Q]uit', true));
|
||||
|
||||
$choice = strtoupper($this->in(__('What would you like to do?', true), array('E', 'I', 'H', 'Q')));
|
||||
switch($choice) {
|
||||
case 'E':
|
||||
$this->Extract->execute();
|
||||
break;
|
||||
case 'I':
|
||||
$this->initdb();
|
||||
break;
|
||||
case 'H':
|
||||
$this->help();
|
||||
break;
|
||||
case 'Q':
|
||||
exit(0);
|
||||
break;
|
||||
default:
|
||||
$this->out(__('You have made an invalid selection. Please choose a command to execute by entering E, I, H, or Q.', true));
|
||||
}
|
||||
$this->hr();
|
||||
$this->main();
|
||||
}
|
||||
/**
|
||||
* Initialize I18N database.
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function initdb() {
|
||||
$db =& ConnectionManager::getDataSource($this->dataSource);
|
||||
$this->out(__('Initializing Database...', true), true);
|
||||
$this->out(__('Creating i18n table ...', true), true);
|
||||
$sql = ' CREATE TABLE '.$db->fullTableName('i18n').' (
|
||||
'.$db->name('id').' '.$db->column($db->columns['primary_key']).',
|
||||
'.$db->name('locale').' '.$db->column(array('name' => 'varchar', 'limit' => 6)).' NOT NULL,
|
||||
'.$db->name('model').' '.$db->column($db->columns['string']).' NOT NULL,
|
||||
'.$db->name('foreign_key').' '.$db->column($db->columns['integer']).' NOT NULL,
|
||||
'.$db->name('field').' '.$db->column($db->columns['string']).' NOT NULL,
|
||||
'.$db->name('content').' '.$db->column($db->columns['text']).',
|
||||
PRIMARY KEY ('.$db->name('id').'),
|
||||
INDEX locale ('.$db->name('locale').'),
|
||||
INDEX model ('.$db->name('model').'),
|
||||
INDEX foreign_key ('.$db->name('foreign_key').'),
|
||||
INDEX field ('.$db->name('field').')
|
||||
)';
|
||||
if ($db->query($sql) === false) {
|
||||
die('Error: ' . $db->lastError());
|
||||
}
|
||||
|
||||
$this->out(__('Done.', true), true);
|
||||
}
|
||||
/**
|
||||
* Show help screen.
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function help() {
|
||||
$this->hr();
|
||||
$this->out(__('I18n Shell:', true));
|
||||
$this->hr();
|
||||
$this->out(__('I18n Shell initializes i18n database table for your application', true));
|
||||
$this->out(__('and generates .pot file(s) with translations.', true));
|
||||
$this->hr();
|
||||
$this->out(__('usage:', true));
|
||||
$this->out(' cake i18n help');
|
||||
$this->out(' cake i18n initdb [-datasource custom]');
|
||||
$this->out('');
|
||||
$this->hr();
|
||||
|
||||
$this->Extract->help();
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
|
@ -0,0 +1,242 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: schema.php,v 1.1 2007-11-19 09:05:45 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Command-line database management utility to automate programmer chores.
|
||||
*
|
||||
* Schema is CakePHP's database management utility. This helps you maintain versions of
|
||||
* of your database.
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs
|
||||
* @since CakePHP(tm) v 1.2.0.5550
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:45 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
uses('file', 'model' . DS . 'schema');
|
||||
/**
|
||||
* Schema is a command-line database management utility for automating programmer chores.
|
||||
*
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs
|
||||
*/
|
||||
class SchemaShell extends Shell {
|
||||
/**
|
||||
* Override initialize
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function initialize() {
|
||||
$this->out('Cake Schema Shell');
|
||||
$this->hr();
|
||||
}
|
||||
/**
|
||||
* Override startup
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function startup() {
|
||||
$settings = am(array('path'=> CONFIGS .'sql'), $this->params);
|
||||
$this->Schema =& new CakeSchema($settings);
|
||||
}
|
||||
/**
|
||||
* Override main
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function main() {
|
||||
$this->help();
|
||||
}
|
||||
/**
|
||||
* Read and output contents od schema object
|
||||
* path to read as second arg
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function view() {
|
||||
$File = new File($this->Schema->path . DS .'schema.php');
|
||||
if ($File->exists()) {
|
||||
$this->out($File->read());
|
||||
exit();
|
||||
} else {
|
||||
$this->err(__('Schema could not be found', true));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Read database and Write schema object
|
||||
* accepts a connection as first arg or path to save as second arg
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function generate() {
|
||||
$this->out('Generating Schema...');
|
||||
$content = $this->Schema->read();
|
||||
if ($this->Schema->write($content)) {
|
||||
$this->out(__('Schema file created.', true));
|
||||
exit();
|
||||
} else {
|
||||
$this->err(__('Schema could not be created', true));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Dump Schema object to sql file
|
||||
* if first arg == write, file will be written to sql file
|
||||
* or it will output sql
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function dump() {
|
||||
$write = false;
|
||||
$Schema = $this->Schema->load();
|
||||
if (!empty($this->args[0])) {
|
||||
if($this->args[0] == 'true') {
|
||||
$write = Inflector::underscore($this->Schema->name);
|
||||
} else {
|
||||
$write = $this->args[0];
|
||||
}
|
||||
}
|
||||
$db =& ConnectionManager::getDataSource($this->Schema->connection);
|
||||
$contents = "#". $Schema->name ." sql generated on: " . date('Y-m-d H:m:s') . " : ". time()."\n\n";
|
||||
$contents .= $db->dropSchema($Schema) . "\n\n". $db->createSchema($Schema);
|
||||
if($write) {
|
||||
if(strpos($write, '.sql') === false) {
|
||||
$write .= '.sql';
|
||||
}
|
||||
$File = new File($this->Schema->path . DS . $write, true);
|
||||
if($File->write($contents)) {
|
||||
$this->out(sprintf(__('SQL dump file created in %s', true), $File->pwd()));
|
||||
exit();
|
||||
} else {
|
||||
$this->err(__('SQL dump could not be created', true));
|
||||
exit();
|
||||
}
|
||||
}
|
||||
$this->out($contents);
|
||||
return $contents;
|
||||
}
|
||||
/**
|
||||
* Create database from Schema object
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function create() {
|
||||
$Schema = $this->Schema->load();
|
||||
$table = null;
|
||||
$event = array_keys($Schema->tables);
|
||||
if(isset($this->args[0])) {
|
||||
$table = $this->args[0];
|
||||
$event = array($table);
|
||||
}
|
||||
$errors = array();
|
||||
$db =& ConnectionManager::getDataSource($this->Schema->connection);
|
||||
$drop = $db->dropSchema($Schema, $table);
|
||||
$this->out($drop);
|
||||
if('y' == $this->in('Are you sure you want to drop tables and create your database?', array('y', 'n'), 'n')) {
|
||||
$create = $db->createSchema($Schema, $table);
|
||||
$this->out('Updating Database...');
|
||||
$contents = array_map('trim', explode(";", $drop. $create));
|
||||
foreach($contents as $sql) {
|
||||
if(!empty($sql)) {
|
||||
if(!$this->Schema->before(array('created'=> $event))) {
|
||||
return false;
|
||||
}
|
||||
if (!$db->_execute($sql)) {
|
||||
$errors[] = $db->lastError();
|
||||
}
|
||||
$this->Schema->after(array('created'=> $event, 'errors'=> $errors));
|
||||
}
|
||||
}
|
||||
}
|
||||
if(!empty($errors)) {
|
||||
$this->err($errors);
|
||||
exit();
|
||||
}
|
||||
$this->out(__('Database updated', true));
|
||||
exit();
|
||||
}
|
||||
/**
|
||||
* Update database with Schema object
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function update() {
|
||||
$this->out('Comparing Database to Schema...');
|
||||
$Old = $this->Schema->read();
|
||||
$Schema = $this->Schema->load();
|
||||
$compare = $this->Schema->compare($Old, $Schema);
|
||||
|
||||
$table = null;
|
||||
if(isset($this->args[0])) {
|
||||
$table = $this->args[0];
|
||||
$compare = array($table => $compare[$table]);
|
||||
}
|
||||
|
||||
$db =& ConnectionManager::getDataSource($this->Schema->connection);
|
||||
$db->fullDebug = true;
|
||||
Configure::write('debug', 2);
|
||||
|
||||
$contents = $db->alterSchema($compare, $table);
|
||||
if(empty($contents)) {
|
||||
$this->out(__('Current database is up to date.', true));
|
||||
exit();
|
||||
} else {
|
||||
$this->out($contents);
|
||||
}
|
||||
if('y' == $this->in('Are you sure you want to update your database?', array('y', 'n'), 'n')) {
|
||||
$this->out('Updating Database...');
|
||||
if(!$this->Schema->before($compare)) {
|
||||
return false;
|
||||
}
|
||||
if ($db->_execute($contents)) {
|
||||
$this->Schema->after($compare);
|
||||
$this->out(__('Database updated', true));
|
||||
exit();
|
||||
} else {
|
||||
$this->err(__('Database could not be updated', true));
|
||||
$this->err($db->lastError());
|
||||
exit();
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Displays help contents
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function help() {
|
||||
$this->out('The Schema Shell generates a schema object from the database and updates the database from the schema.');
|
||||
$this->hr();
|
||||
$this->out("Usage: cake schema <command> <arg1> <arg2>...");
|
||||
$this->hr();
|
||||
$this->out('Params:');
|
||||
$this->out("\n\t-connection\n\t\tset db config. uses 'default' if none is specified");
|
||||
$this->out("\n\t-path\n\t\tpath to read and write schema.php. uses ". $this->Schema->path ." by default");
|
||||
$this->out('Commands:');
|
||||
$this->out("\n\tschema help\n\t\tshows this help message.");
|
||||
$this->out("\n\tschema view\n\t\tread and output contents of schema file");
|
||||
$this->out("\n\tschema generate\n\t\treads from 'connection' writes to 'path'");
|
||||
$this->out("\n\tschema dump <filename>\n\t\tdump database sql based on schema file to filename in schema path. if filename is true, default will use the app directory name.");
|
||||
$this->out("\n\tschema create <table>\n\t\tdrop tables and create database based on schema file\n\t\toptional <table> arg for creating only one table");
|
||||
$this->out("\n\tschema update <table>\n\t\talter tables based on schema file\n\t\toptional <table> arg for altering only one table");
|
||||
$this->out("");
|
||||
exit();
|
||||
}
|
||||
|
||||
}
|
||||
?>
|
|
@ -0,0 +1,689 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: extract.php,v 1.1 2007-11-19 09:05:46 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Short description for file.
|
||||
*
|
||||
* Long description for file
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs
|
||||
* @since CakePHP(tm) v 1.2.0.5012
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:46 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* Only used when -debug option
|
||||
*/
|
||||
ob_start();
|
||||
|
||||
$singularReturn = __('Singular string return __()', true);
|
||||
$singularEcho = __('Singular string echo __()');
|
||||
|
||||
$pluralReturn = __n('% apple in the bowl (plural string return __n())', '% apples in the blowl (plural string 2 return __n())', 3, true);
|
||||
$pluralEcho = __n('% apple in the bowl (plural string 2 echo __n())', '% apples in the blowl (plural string 2 echo __n()', 3);
|
||||
|
||||
$singularDomainReturn = __d('controllers', 'Singular string domain lookup return __d()', true);
|
||||
$singularDomainEcho = __d('controllers', 'Singular string domain lookup echo __d()');
|
||||
|
||||
$pluralDomainReturn = __dn('controllers', '% pears in the bowl (plural string domain lookup return __dn())', '% pears in the blowl (plural string domain lookup return __dn())', 3, true);
|
||||
$pluralDomainEcho = __dn('controllers', '% pears in the bowl (plural string domain lookup echo __dn())', '% pears in the blowl (plural string domain lookup echo __dn())', 3);
|
||||
|
||||
$singularDomainCategoryReturn = __dc('controllers', 'Singular string domain and category lookup return __dc()', 5, true);
|
||||
$singularDomainCategoryEcho = __dc('controllers', 'Singular string domain and category lookup echo __dc()', 5);
|
||||
|
||||
$pluralDomainCategoryReturn = __dcn('controllers', '% apple in the bowl (plural string 1 domain and category lookup return __dcn())', '% apples in the blowl (plural string 2 domain and category lookup return __dcn())', 3, 5, true);
|
||||
$pluralDomainCategoryEcho = __dcn('controllers', '% apple in the bowl (plural string 1 domain and category lookup echo __dcn())', '% apples in the blowl (plural string 2 domain and category lookup echo __dcn())', 3, 5);
|
||||
|
||||
$categoryReturn = __c('Category string lookup line return __c()', 5, true);
|
||||
$categoryEcho = __c('Category string lookup line echo __c()', 5);
|
||||
|
||||
ob_end_clean();
|
||||
/**
|
||||
* Language string extractor
|
||||
*
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs
|
||||
*/
|
||||
class ExtractTask extends Shell{
|
||||
/**
|
||||
* Path to use when looking for strings
|
||||
*
|
||||
* @var string
|
||||
* @access public
|
||||
*/
|
||||
var $path = null;
|
||||
/**
|
||||
* Files from where to extract
|
||||
*
|
||||
* @var array
|
||||
* @access public
|
||||
*/
|
||||
var $files = array();
|
||||
/**
|
||||
* Filename where to deposit translations
|
||||
*
|
||||
* @var string
|
||||
* @access private
|
||||
*/
|
||||
var $__filename = 'default';
|
||||
/**
|
||||
* True if all strings should be merged into one file
|
||||
*
|
||||
* @var boolean
|
||||
* @access private
|
||||
*/
|
||||
var $__oneFile = true;
|
||||
/**
|
||||
* Current file being processed
|
||||
*
|
||||
* @var string
|
||||
* @access private
|
||||
*/
|
||||
var $__file = null;
|
||||
/**
|
||||
* Extracted tokens
|
||||
*
|
||||
* @var array
|
||||
* @access private
|
||||
*/
|
||||
var $__tokens = array();
|
||||
/**
|
||||
* Extracted strings
|
||||
*
|
||||
* @var array
|
||||
* @access private
|
||||
*/
|
||||
var $__strings = array();
|
||||
/**
|
||||
* History of file versions
|
||||
*
|
||||
* @var array
|
||||
* @access private
|
||||
*/
|
||||
var $__fileVersions = array();
|
||||
/**
|
||||
* Destination path
|
||||
*
|
||||
* @var string
|
||||
* @access private
|
||||
*/
|
||||
var $__output = null;
|
||||
/**
|
||||
* Override initialize
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function initialize() {
|
||||
if (isset($this->params['files']) && !is_array($this->params['files'])) {
|
||||
$this->files = explode(',', $this->params['files']);
|
||||
}
|
||||
if (isset($this->params['path'])) {
|
||||
$this->path = $this->params['path'];
|
||||
} else {
|
||||
$response = '';
|
||||
while ($response == '') {
|
||||
$response = $this->in("What is the full path you would like to extract?\nExample: " . $this->params['root'] . DS . "myapp\n[Q]uit", null, 'Q');
|
||||
if (strtoupper($response) === 'Q') {
|
||||
$this->out('Extract Aborted');
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
if (is_dir($response)) {
|
||||
$this->path = $response;
|
||||
} else {
|
||||
$this->err('The directory path you supplied was not found. Please try again.');
|
||||
$this->initialize();
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($this->params['debug'])) {
|
||||
$this->path = ROOT;
|
||||
$this->files = array(__FILE__);
|
||||
}
|
||||
|
||||
if (isset($this->params['output'])) {
|
||||
$this->__output = $this->params['output'];
|
||||
} else {
|
||||
$response = '';
|
||||
while ($response == '') {
|
||||
$response = $this->in("What is the full path you would like to output?\nExample: " . $this->path . DS . "locale\n[Q]uit", null, $this->path . DS . "locale");
|
||||
if (strtoupper($response) === 'Q') {
|
||||
$this->out('Extract Aborted');
|
||||
exit();
|
||||
}
|
||||
}
|
||||
|
||||
if (is_dir($response)) {
|
||||
$this->__output = $response . DS;
|
||||
} else {
|
||||
$this->err('The directory path you supplied was not found. Please try again.');
|
||||
$this->initialize();
|
||||
}
|
||||
}
|
||||
|
||||
if (empty($this->files)) {
|
||||
$this->files = $this->__searchDirectory();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Override startup
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function startup() {
|
||||
}
|
||||
/**
|
||||
* Execution method always used for tasks
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function execute() {
|
||||
$this->out('');
|
||||
$this->out('');
|
||||
$this->out(__('Extracting...', true));
|
||||
$this->hr();
|
||||
$this->out(__('Path: ', true). $this->path);
|
||||
$this->out(__('Output Directory: ', true). $this->__output);
|
||||
$this->hr();
|
||||
|
||||
$response = '';
|
||||
$filename = '';
|
||||
while ($response == '') {
|
||||
$response = $this->in(__('Would you like to merge all translations into one file?', true), array('y','n'), 'y');
|
||||
if (strtolower($response) == 'n') {
|
||||
$this->__oneFile = false;
|
||||
} else {
|
||||
while ($filename == '') {
|
||||
$filename = $this->in(__('What should we name this file?', true), null, $this->__filename);
|
||||
if ($filename == '') {
|
||||
$this->out(__('The filesname you supplied was empty. Please try again.', true));
|
||||
}
|
||||
}
|
||||
$this->__filename = $filename;
|
||||
}
|
||||
}
|
||||
$this->__extractTokens();
|
||||
}
|
||||
/**
|
||||
* Show help options
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
function help() {
|
||||
$this->out(__('CakePHP Language String Extraction:', true));
|
||||
$this->hr();
|
||||
$this->out(__('The Extract script generates .pot file(s) with translations', true));
|
||||
$this->out(__('By default the .pot file(s) will be place in the locale directory of -app', true));
|
||||
$this->out(__('By default -app is ROOT/app', true));
|
||||
$this->hr();
|
||||
$this->out(__('usage: cake i18n extract [command] [path...]', true));
|
||||
$this->out('');
|
||||
$this->out(__('commands:', true));
|
||||
$this->out(__(' -app [path...]: directory where your application is located', true));
|
||||
$this->out(__(' -root [path...]: path to install', true));
|
||||
$this->out(__(' -core [path...]: path to cake directory', true));
|
||||
$this->out(__(' -path [path...]: Full path to directory to extract strings', true));
|
||||
$this->out(__(' -output [path...]: Full path to output directory', true));
|
||||
$this->out(__(' -files: [comma separated list of files, full path to file is needed]', true));
|
||||
$this->out(__(' cake i18n extract help: Shows this help message.', true));
|
||||
$this->out(__(' -debug: Perform self test.', true));
|
||||
$this->out('');
|
||||
}
|
||||
/**
|
||||
* Extract tokens out of all files to be processed
|
||||
*
|
||||
* @access private
|
||||
*/
|
||||
function __extractTokens() {
|
||||
foreach ($this->files as $file) {
|
||||
$this->__file = $file;
|
||||
$this->out(sprintf(__('Processing %s...', true), $file));
|
||||
|
||||
$code = file_get_contents($file);
|
||||
|
||||
$this->__findVersion($code, $file);
|
||||
$allTokens = token_get_all($code);
|
||||
$this->__tokens = array();
|
||||
$lineNumber = 1;
|
||||
|
||||
foreach ($allTokens as $token) {
|
||||
if ((!is_array($token)) || (($token[0] != T_WHITESPACE) && ($token[0] != T_INLINE_HTML))) {
|
||||
if (is_array($token)) {
|
||||
$token[] = $lineNumber;
|
||||
}
|
||||
$this->__tokens[] = $token;
|
||||
}
|
||||
|
||||
if (is_array($token)) {
|
||||
$lineNumber += count(split("\n", $token[1])) - 1;
|
||||
} else {
|
||||
$lineNumber += count(split("\n", $token)) - 1;
|
||||
}
|
||||
}
|
||||
unset($allTokens);
|
||||
$this->basic();
|
||||
$this->basic('__c');
|
||||
$this->extended();
|
||||
$this->extended('__dc', 2);
|
||||
$this->extended('__n', 0, true);
|
||||
$this->extended('__dn', 2, true);
|
||||
$this->extended('__dcn', 4, true);
|
||||
}
|
||||
$this->__buildFiles();
|
||||
$this->__writeFiles();
|
||||
$this->out('Done.');
|
||||
}
|
||||
/**
|
||||
* Will parse __(), __c() functions
|
||||
*
|
||||
* @param string $functionName Function name that indicates translatable string (e.g: '__')
|
||||
* @access public
|
||||
*/
|
||||
function basic($functionName = '__') {
|
||||
$count = 0;
|
||||
$tokenCount = count($this->__tokens);
|
||||
|
||||
while (($tokenCount - $count) > 3) {
|
||||
list($countToken, $parenthesis, $middle, $right) = array($this->__tokens[$count], $this->__tokens[$count + 1], $this->__tokens[$count + 2], $this->__tokens[$count + 3]);
|
||||
if (!is_array($countToken)) {
|
||||
$count++;
|
||||
continue;
|
||||
}
|
||||
|
||||
list($type, $string, $line) = $countToken;
|
||||
if (($type == T_STRING) && ($string == $functionName) && ($parenthesis == '(')) {
|
||||
|
||||
if (in_array($right, array(')', ','))
|
||||
&& (is_array($middle) && ($middle[0] == T_CONSTANT_ENCAPSED_STRING))) {
|
||||
|
||||
if ($this->__oneFile === true) {
|
||||
$this->__strings[$this->__formatString($middle[1])][$this->__file][] = $line;
|
||||
} else {
|
||||
$this->__strings[$this->__file][$this->__formatString($middle[1])][] = $line;
|
||||
}
|
||||
} else {
|
||||
$this->__markerError($this->__file, $line, $functionName, $count);
|
||||
}
|
||||
}
|
||||
$count++;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Will parse __d(), __dc(), __n(), __dn(), __dcn()
|
||||
*
|
||||
* @param string $functionName Function name that indicates translatable string (e.g: '__')
|
||||
* @param integer $shift Number of parameters to shift to find translateable string
|
||||
* @param boolean $plural Set to true if function supports plural format, false otherwise
|
||||
* @access public
|
||||
*/
|
||||
function extended($functionName = '__d', $shift = 0, $plural = false) {
|
||||
$count = 0;
|
||||
$tokenCount = count($this->__tokens);
|
||||
|
||||
while (($tokenCount - $count) > 7) {
|
||||
list($countToken, $firstParenthesis) = array($this->__tokens[$count], $this->__tokens[$count + 1]);
|
||||
if (!is_array($countToken)) {
|
||||
$count++;
|
||||
continue;
|
||||
}
|
||||
|
||||
list($type, $string, $line) = $countToken;
|
||||
if (($type == T_STRING) && ($string == $functionName) && ($firstParenthesis == '(')) {
|
||||
$position = $count;
|
||||
$depth = 0;
|
||||
|
||||
while ($depth == 0) {
|
||||
if ($this->__tokens[$position] == '(') {
|
||||
$depth++;
|
||||
} elseif ($this->__tokens[$position] == ')') {
|
||||
$depth--;
|
||||
}
|
||||
$position++;
|
||||
}
|
||||
|
||||
if ($plural) {
|
||||
$end = $position + $shift + 7;
|
||||
|
||||
if ($this->__tokens[$position + $shift + 5] === ')') {
|
||||
$end = $position + $shift + 5;
|
||||
}
|
||||
|
||||
if (empty($shift)) {
|
||||
list($singular, $firstComma, $plural, $seoncdComma, $endParenthesis) = array($this->__tokens[$position], $this->__tokens[$position + 1], $this->__tokens[$position + 2], $this->__tokens[$position + 3], $this->__tokens[$end]);
|
||||
$condition = ($seoncdComma == ',');
|
||||
} else {
|
||||
list($domain, $firstComma, $singular, $seoncdComma, $plural, $comma3, $endParenthesis) = array($this->__tokens[$position], $this->__tokens[$position + 1], $this->__tokens[$position + 2], $this->__tokens[$position + 3], $this->__tokens[$position + 4], $this->__tokens[$position + 5], $this->__tokens[$end]);
|
||||
$condition = ($comma3 == ',');
|
||||
}
|
||||
$condition = $condition &&
|
||||
(is_array($singular) && ($singular[0] == T_CONSTANT_ENCAPSED_STRING)) &&
|
||||
(is_array($plural) && ($plural[0] == T_CONSTANT_ENCAPSED_STRING));
|
||||
} else {
|
||||
if ($this->__tokens[$position + $shift + 5] === ')') {
|
||||
$comma = $this->__tokens[$position + $shift + 3];
|
||||
$end = $position + $shift + 5;
|
||||
} else {
|
||||
$comma = null;
|
||||
$end = $position + $shift + 3;
|
||||
}
|
||||
|
||||
list($domain, $firstComma, $text, $seoncdComma, $endParenthesis) = array($this->__tokens[$position], $this->__tokens[$position + 1], $this->__tokens[$position + 2], $comma, $this->__tokens[$end]);
|
||||
$condition = ($seoncdComma == ',' || $seoncdComma === null) &&
|
||||
(is_array($domain) && ($domain[0] == T_CONSTANT_ENCAPSED_STRING)) &&
|
||||
(is_array($text) && ($text[0] == T_CONSTANT_ENCAPSED_STRING));
|
||||
}
|
||||
|
||||
if (($endParenthesis == ')') && $condition) {
|
||||
if ($this->__oneFile === true) {
|
||||
if ($plural) {
|
||||
$this->__strings[$this->__formatString($singular[1]) . "\0" . $this->__formatString($plural[1])][$this->__file][] = $line;
|
||||
} else {
|
||||
$this->__strings[$this->__formatString($text[1])][$this->__file][] = $line;
|
||||
}
|
||||
} else {
|
||||
if ($plural) {
|
||||
$this->__strings[$this->__file][$this->__formatString($singular[1]) . "\0" . $this->__formatString($plural[1])][] = $line;
|
||||
} else {
|
||||
$this->__strings[$this->__file][$this->__formatString($text[1])][] = $line;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$this->__markerError($this->__file, $line, $functionName, $count);
|
||||
}
|
||||
}
|
||||
$count++;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Build the translate template file contents out of obtained strings
|
||||
*
|
||||
* @access private
|
||||
*/
|
||||
function __buildFiles() {
|
||||
$output = '';
|
||||
foreach ($this->__strings as $str => $fileInfo) {
|
||||
$occured = $fileList = array();
|
||||
|
||||
if ($this->__oneFile === true) {
|
||||
foreach ($fileInfo as $file => $lines) {
|
||||
$occured[] = "$file:" . join(';', $lines);
|
||||
|
||||
if (isset($this->__fileVersions[$file])) {
|
||||
$fileList[] = $this->__fileVersions[$file];
|
||||
}
|
||||
}
|
||||
$occurances = join("\n#: ", $occured);
|
||||
$occurances = str_replace($this->path, '', $occurances);
|
||||
$output = "#: $occurances\n";
|
||||
$filename = $this->__filename;
|
||||
|
||||
if (strpos($str, "\0") === false) {
|
||||
$output .= "msgid \"$str\"\n";
|
||||
$output .= "msgstr \"\"\n";
|
||||
} else {
|
||||
list($singular, $plural) = explode("\0", $str);
|
||||
$output .= "msgid \"$singular\"\n";
|
||||
$output .= "msgid_plural \"$plural\"\n";
|
||||
$output .= "msgstr[0] \"\"\n";
|
||||
$output .= "msgstr[1] \"\"\n";
|
||||
}
|
||||
$output .= "\n";
|
||||
} else {
|
||||
foreach ($fileInfo as $file => $lines) {
|
||||
$filename = $str;
|
||||
$occured = array("$str:" . join(';', $lines));
|
||||
|
||||
if (isset($this->__fileVersions[$str])) {
|
||||
$fileList[] = $this->__fileVersions[$str];
|
||||
}
|
||||
$occurances = join("\n#: ", $occured);
|
||||
$occurances = str_replace($this->path, '', $occurances);
|
||||
$output .= "#: $occurances\n";
|
||||
|
||||
if (strpos($file, "\0") === false) {
|
||||
$output .= "msgid \"$file\"\n";
|
||||
$output .= "msgstr \"\"\n";
|
||||
} else {
|
||||
list($singular, $plural) = explode("\0", $file);
|
||||
$output .= "msgid \"$singular\"\n";
|
||||
$output .= "msgid_plural \"$plural\"\n";
|
||||
$output .= "msgstr[0] \"\"\n";
|
||||
$output .= "msgstr[1] \"\"\n";
|
||||
}
|
||||
$output .= "\n";
|
||||
}
|
||||
}
|
||||
$this->__store($filename, $output, $fileList);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Prepare a file to be stored
|
||||
*
|
||||
* @param string $file Filename
|
||||
* @param string $input What to store
|
||||
* @param array $fileList File list
|
||||
* @param integer $get Set to 1 to get files to store, false to set
|
||||
* @return mixed If $get == 1, files to store, otherwise void
|
||||
* @access private
|
||||
*/
|
||||
function __store($file = 0, $input = 0, $fileList = array(), $get = 0) {
|
||||
static $storage = array();
|
||||
|
||||
if (!$get) {
|
||||
if (isset($storage[$file])) {
|
||||
$storage[$file][1] = array_unique(array_merge($storage[$file][1], $fileList));
|
||||
$storage[$file][] = $input;
|
||||
} else {
|
||||
$storage[$file] = array();
|
||||
$storage[$file][0] = $this->__writeHeader();
|
||||
$storage[$file][1] = $fileList;
|
||||
$storage[$file][2] = $input;
|
||||
}
|
||||
} else {
|
||||
return $storage;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Write the files that need to be stored
|
||||
*
|
||||
* @access private
|
||||
*/
|
||||
function __writeFiles() {
|
||||
$output = $this->__store(0, 0, array(), 1);
|
||||
$output = $this->__mergeFiles($output);
|
||||
|
||||
foreach ($output as $file => $content) {
|
||||
$tmp = str_replace(array($this->path, '.php','.ctp','.thtml', '.inc','.tpl' ), '', $file);
|
||||
$tmp = str_replace(DS, '.', $tmp);
|
||||
$file = str_replace('.', '-', $tmp) .'.pot';
|
||||
$fileList = $content[1];
|
||||
|
||||
unset($content[1]);
|
||||
|
||||
$fileList = str_replace(array($this->path), '', $fileList);
|
||||
|
||||
if (count($fileList) > 1) {
|
||||
$fileList = "Generated from files:\n# " . join("\n# ", $fileList);
|
||||
} elseif (count($fileList) == 1) {
|
||||
$fileList = 'Generated from file: ' . join('', $fileList);
|
||||
} else {
|
||||
$fileList = 'No version information was available in the source files.';
|
||||
}
|
||||
|
||||
if (is_file($this->__output . $file)) {
|
||||
$response = '';
|
||||
while ($response == '') {
|
||||
$response = $this->in("\n\nError: ".$file . ' already exists in this location. Overwrite?', array('y','n', 'q'), 'n');
|
||||
if (strtoupper($response) === 'Q') {
|
||||
$this->out('Extract Aborted');
|
||||
exit();
|
||||
} elseif (strtoupper($response) === 'N') {
|
||||
$response = '';
|
||||
while ($response == '') {
|
||||
$response = $this->in("What would you like to name this file?\nExample: new_" . $file, null, "new_" . $file);
|
||||
$file = $response;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
$fp = fopen($this->__output . $file, 'w');
|
||||
fwrite($fp, str_replace('--VERSIONS--', $fileList, join('', $content)));
|
||||
fclose($fp);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Merge output files
|
||||
*
|
||||
* @param array $output Output to merge
|
||||
* @return array Merged output
|
||||
* @access private
|
||||
*/
|
||||
function __mergeFiles($output) {
|
||||
foreach ($output as $file => $content) {
|
||||
if (count($content) <= 1 && $file != $this->__filename) {
|
||||
@$output[$this->__filename][1] = array_unique(array_merge($output[$this->__filename][1], $content[1]));
|
||||
|
||||
if (!isset($output[$this->__filename][0])) {
|
||||
$output[$this->__filename][0] = $content[0];
|
||||
}
|
||||
unset($content[0]);
|
||||
unset($content[1]);
|
||||
|
||||
foreach ($content as $msgid) {
|
||||
$output[$this->__filename][] = $msgid;
|
||||
}
|
||||
unset($output[$file]);
|
||||
}
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
/**
|
||||
* Build the translation template header
|
||||
*
|
||||
* @return string Translation template header
|
||||
* @access private
|
||||
*/
|
||||
function __writeHeader() {
|
||||
$output = "# LANGUAGE translation of CakePHP Application\n";
|
||||
$output .= "# Copyright YEAR NAME <EMAIL@ADDRESS>\n";
|
||||
$output .= "# --VERSIONS--\n";
|
||||
$output .= "#\n";
|
||||
$output .= "#, fuzzy\n";
|
||||
$output .= "msgid \"\"\n";
|
||||
$output .= "msgstr \"\"\n";
|
||||
$output .= "\"Project-Id-Version: PROJECT VERSION\\n\"\n";
|
||||
$output .= "\"POT-Creation-Date: " . date("Y-m-d H:iO") . "\\n\"\n";
|
||||
$output .= "\"PO-Revision-Date: YYYY-mm-DD HH:MM+ZZZZ\\n\"\n";
|
||||
$output .= "\"Last-Translator: NAME <EMAIL@ADDRESS>\\n\"\n";
|
||||
$output .= "\"Language-Team: LANGUAGE <EMAIL@ADDRESS>\\n\"\n";
|
||||
$output .= "\"MIME-Version: 1.0\\n\"\n";
|
||||
$output .= "\"Content-Type: text/plain; charset=utf-8\\n\"\n";
|
||||
$output .= "\"Content-Transfer-Encoding: 8bit\\n\"\n";
|
||||
$output .= "\"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\\n\"\n\n";
|
||||
return $output;
|
||||
}
|
||||
/**
|
||||
* Find the version number of a file looking for SVN commands
|
||||
*
|
||||
* @param string $code Source code of file
|
||||
* @param string $file File
|
||||
* @access private
|
||||
*/
|
||||
function __findVersion($code, $file) {
|
||||
$header = '$Id' . ':';
|
||||
if (preg_match('/\\' . $header . ' [\\w.]* ([\\d]*)/', $code, $versionInfo)) {
|
||||
$version = str_replace(ROOT, '', 'Revision: ' . $versionInfo[1] . ' ' .$file);
|
||||
$this->__fileVersions[$file] = $version;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Format a string to be added as a translateable string
|
||||
*
|
||||
* @param string $string String to format
|
||||
* @return string Formatted string
|
||||
* @access private
|
||||
*/
|
||||
function __formatString($string) {
|
||||
$quote = substr($string, 0, 1);
|
||||
$string = substr($string, 1, -1);
|
||||
if ($quote == '"') {
|
||||
$string = stripcslashes($string);
|
||||
} else {
|
||||
$string = strtr($string, array("\\'" => "'", "\\\\" => "\\"));
|
||||
}
|
||||
return addcslashes($string, "\0..\37\\\"");
|
||||
}
|
||||
/**
|
||||
* Indicate an invalid marker on a processed file
|
||||
*
|
||||
* @param string $file File where invalid marker resides
|
||||
* @param integer $line Line number
|
||||
* @param string $marker Marker found
|
||||
* @param integer $count Count
|
||||
* @access private
|
||||
*/
|
||||
function __markerError($file, $line, $marker, $count) {
|
||||
$this->out("Invalid marker content in $file:$line\n* $marker(", true);
|
||||
$count += 2;
|
||||
$tokenCount = count($this->__tokens);
|
||||
$parenthesis = 1;
|
||||
|
||||
while ((($tokenCount - $count) > 0) && $parenthesis) {
|
||||
if (is_array($this->__tokens[$count])) {
|
||||
$this->out($this->__tokens[$count][1], false);
|
||||
} else {
|
||||
$this->out($this->__tokens[$count], false);
|
||||
if ($this->__tokens[$count] == '(') {
|
||||
$parenthesis++;
|
||||
}
|
||||
|
||||
if ($this->__tokens[$count] == ')') {
|
||||
$parenthesis--;
|
||||
}
|
||||
}
|
||||
$count++;
|
||||
}
|
||||
$this->out("\n", true);
|
||||
}
|
||||
/**
|
||||
* Search the specified path for files that may contain translateable strings
|
||||
*
|
||||
* @param string $path Path (or set to null to use current)
|
||||
* @return array Files
|
||||
* @access private
|
||||
*/
|
||||
function __searchDirectory($path = null) {
|
||||
if ($path === null) {
|
||||
$path = $this->path .DS;
|
||||
}
|
||||
$files = glob("$path*.{php,ctp,thtml,inc,tpl}", GLOB_BRACE);
|
||||
$dirs = glob("$path*", GLOB_ONLYDIR);
|
||||
|
||||
foreach ($dirs as $dir) {
|
||||
if (!preg_match("!(^|.+/)(CVS|.svn)$!", $dir)) {
|
||||
$files = array_merge($files, $this->__searchDirectory("$dir" . DS));
|
||||
if (($id = array_search($dir . DS . 'extract.php', $files)) !== FALSE) {
|
||||
unset($files[$id]);
|
||||
}
|
||||
}
|
||||
}
|
||||
return $files;
|
||||
}
|
||||
}
|
||||
?>
|
|
@ -0,0 +1,72 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: form.ctp,v 1.1 2007-11-19 09:05:47 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs.templates.views
|
||||
* @since CakePHP(tm) v 1.2.0.5234
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:47 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
?>
|
||||
<div class="<?php echo $singularVar;?>">
|
||||
<?php echo "<?php echo \$form->create('{$modelClass}');?>\n";?>
|
||||
<fieldset>
|
||||
<legend><?php echo "<?php echo sprintf(__('".Inflector::humanize($action)." %s', true), __('{$singularHumanName}', true));?>";?></legend>
|
||||
<?php
|
||||
echo "\t<?php\n";
|
||||
foreach ($fields as $field) {
|
||||
if ($action == 'add' && $field['name'] == $primaryKey) {
|
||||
continue;
|
||||
} elseif (!in_array($field['name'], array('created', 'modified', 'updated'))) {
|
||||
echo "\t\techo \$form->input('{$field['name']}');\n";
|
||||
}
|
||||
}
|
||||
foreach ($hasAndBelongsToMany as $assocName => $assocData) {
|
||||
echo "\t\t echo \$form->input('{$assocName}');\n";
|
||||
}
|
||||
echo "\t?>\n";
|
||||
?>
|
||||
</fieldset>
|
||||
<?php
|
||||
echo "<?php echo \$form->end('Submit');?>\n";
|
||||
?>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<ul>
|
||||
<?php if ($action != 'add'):?>
|
||||
<li><?php echo "<?php echo \$html->link(__('Delete', true), array('action'=>'delete', \$form->value('{$modelClass}.{$primaryKey}')), null, sprintf(__('Are you sure you want to delete # %s?', true), \$form->value('{$modelClass}.{$primaryKey}'))); ?>";?></li>
|
||||
<?php endif;?>
|
||||
<li><?php echo "<?php echo \$html->link(sprintf(__('List %s', true), __('{$pluralHumanName}', true)), array('action'=>'index'));?>";?></li>
|
||||
<?php
|
||||
foreach ($foreignKeys as $field => $value) {
|
||||
$otherModelClass = $value['1'];
|
||||
if ($otherModelClass != $modelClass) {
|
||||
$otherModelKey = Inflector::underscore($otherModelClass);
|
||||
$otherControllerName = Inflector::pluralize($otherModelClass);
|
||||
$otherControllerPath = Inflector::underscore($otherControllerName);
|
||||
$otherSingularName = Inflector::variable($otherModelClass);
|
||||
$otherPluralHumanName = Inflector::humanize($otherControllerPath);
|
||||
$otherSingularHumanName = Inflector::humanize($otherModelKey);
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('List %s', true), __('{$otherPluralHumanName}', true)), array('controller'=> '{$otherControllerPath}', 'action'=>'index')); ?> </li>\n";
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('New %s', true), __('{$otherSingularHumanName}', true)), array('controller'=> '{$otherControllerPath}', 'action'=>'add')); ?> </li>\n";
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</div>
|
|
@ -0,0 +1,108 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: index.ctp,v 1.1 2007-11-19 09:05:47 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs.templates.views
|
||||
* @since CakePHP(tm) v 1.2.0.5234
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:47 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
?>
|
||||
<div class="<?php echo $pluralVar;?>">
|
||||
<h2><?php echo "<?php __('{$pluralHumanName}');?>";?></h2>
|
||||
<p>
|
||||
<?php echo "<?php
|
||||
echo \$paginator->counter(array(
|
||||
'format' => __('Page %page% of %pages%, showing %current% records out of %count% total, starting on record %start%, ending on %end%', true)
|
||||
));
|
||||
?>";?>
|
||||
</p>
|
||||
<table cellpadding="0" cellspacing="0">
|
||||
<tr>
|
||||
<?php foreach ($fields as $field):?>
|
||||
<th><?php echo "<?php echo \$paginator->sort('{$field['name']}');?>";?></th>
|
||||
<?php endforeach;?>
|
||||
<th class="actions"><?php echo "<?php __('Actions');?>";?></th>
|
||||
</tr>
|
||||
<?php
|
||||
echo "<?php
|
||||
\$i = 0;
|
||||
foreach (\${$pluralVar} as \${$singularVar}):
|
||||
\$class = null;
|
||||
if (\$i++ % 2 == 0) {
|
||||
\$class = ' class=\"altrow\"';
|
||||
}
|
||||
?>\n";
|
||||
echo "\t<tr<?php echo \$class;?>>\n";
|
||||
|
||||
foreach ($fields as $field) {
|
||||
if (in_array($field['name'], array_keys($foreignKeys))) {
|
||||
$otherModelClass = $foreignKeys[$field['name']][1];
|
||||
$otherModelKey = Inflector::underscore($otherModelClass);
|
||||
$otherControllerName = Inflector::pluralize($otherModelClass);
|
||||
$otherControllerPath = Inflector::underscore($otherControllerName);
|
||||
if (isset($foreignKeys[$field['name']][2])) {
|
||||
$otherModelClass = $foreignKeys[$field['name']][2];
|
||||
}
|
||||
$otherVariableName = Inflector::variable($otherModelClass);
|
||||
$otherModelObj =& ClassRegistry::getObject($otherModelKey);
|
||||
$otherPrimaryKey = $otherModelObj->primaryKey;
|
||||
$otherDisplayField = $otherModelObj->displayField;
|
||||
echo "\t\t<td>\n\t\t\t<?php echo \$html->link(__(\${$singularVar}['{$otherModelClass}']['{$otherDisplayField}'], true), array('controller'=> '{$otherControllerPath}', 'action'=>'view', \${$singularVar}['{$otherModelClass}']['{$otherPrimaryKey}'])); ?>\n\t\t</td>\n";
|
||||
} else {
|
||||
echo "\t\t<td>\n\t\t\t<?php echo \${$singularVar}['{$modelClass}']['{$field['name']}'] ?>\n\t\t</td>\n";
|
||||
}
|
||||
}
|
||||
|
||||
echo "\t\t<td class=\"actions\">\n";
|
||||
echo "\t\t\t<?php echo \$html->link(__('View', true), array('action'=>'view', \${$singularVar}['{$modelClass}']['{$primaryKey}'])); ?>\n";
|
||||
echo "\t\t\t<?php echo \$html->link(__('Edit', true), array('action'=>'edit', \${$singularVar}['{$modelClass}']['{$primaryKey}'])); ?>\n";
|
||||
echo "\t\t\t<?php echo \$html->link(__('Delete', true), array('action'=>'delete', \${$singularVar}['{$modelClass}']['{$primaryKey}']), null, sprintf(__('Are you sure you want to delete # %s?', true), \${$singularVar}['{$modelClass}']['{$primaryKey}'])); ?>\n";
|
||||
echo "\t\t</td>\n";
|
||||
echo "\t</tr>\n";
|
||||
|
||||
echo "<?php endforeach; ?>\n";
|
||||
?>
|
||||
</table>
|
||||
</div>
|
||||
<div class="paging">
|
||||
<?php echo "\t<?php echo \$paginator->prev('<< '.__('previous', true), array(), null, array('class'=>'disabled'));?>\n";?>
|
||||
| <?php echo "\t<?php echo \$paginator->numbers();?>\n"?>
|
||||
<?php echo "\t<?php echo \$paginator->next(__('next', true).' >>', array(), null, array('class'=>'disabled'));?>\n";?>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<ul>
|
||||
<li><?php echo "<?php echo \$html->link(sprintf(__('New %s', true), __('{$singularHumanName}', true)), array('action'=>'add')); ?>";?></li>
|
||||
<?php
|
||||
foreach ($foreignKeys as $field => $value) {
|
||||
$otherModelClass = $value['1'];
|
||||
if ($otherModelClass != $modelClass) {
|
||||
$otherModelKey = Inflector::underscore($otherModelClass);
|
||||
$otherControllerName = Inflector::pluralize($otherModelClass);
|
||||
$otherControllerPath = Inflector::underscore($otherControllerName);
|
||||
$otherVariableName = Inflector::variable($otherModelClass);
|
||||
$otherPluralHumanName = Inflector::humanize($otherControllerPath);
|
||||
$otherSingularHumanName = Inflector::humanize($otherModelKey);
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('List %s', true), __('{$otherPluralHumanName}', true)), array('controller'=> '{$otherControllerPath}', 'action'=>'index')); ?> </li>\n";
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('New %s', true), __('{$otherSingularHumanName}', true)), array('controller'=> '{$otherControllerPath}', 'action'=>'add')); ?> </li>\n";
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</div>
|
|
@ -0,0 +1,183 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: view.ctp,v 1.1 2007-11-19 09:05:47 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.console.libs.templates.views
|
||||
* @since CakePHP(tm) v 1.2.0.5234
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:47 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
?>
|
||||
<div class="<?php echo $singularVar;?>">
|
||||
<h2><?php echo "<?php __('{$singularHumanName}');?>";?></h2>
|
||||
<dl>
|
||||
<?php
|
||||
$i = 0;
|
||||
foreach ($fields as $field) {
|
||||
$class = null;
|
||||
if ($i++ % 2 == 0) {
|
||||
$class = ' class="altrow"';
|
||||
}
|
||||
|
||||
if (in_array($field['name'], array_keys($foreignKeys))) {
|
||||
$otherModelClass = $foreignKeys[$field['name']][1];
|
||||
$otherModelKey = Inflector::underscore($otherModelClass);
|
||||
$otherControllerName = Inflector::pluralize($otherModelClass);
|
||||
$otherControllerPath = Inflector::underscore($otherControllerName);
|
||||
if (isset($foreignKeys[$field['name']][2])) {
|
||||
$otherModelClass = $foreignKeys[$field['name']][2];
|
||||
}
|
||||
$otherSingularVar = Inflector::variable($otherModelClass);
|
||||
$otherModelObj =& ClassRegistry::getObject($otherModelKey);
|
||||
$otherPrimaryKey = $otherModelObj->primaryKey;
|
||||
$otherDisplayField = $otherModelObj->displayField;
|
||||
echo "\t\t<dt{$class}><?php __('".Inflector::humanize($otherModelClass)."') ?></dt>\n";
|
||||
echo "\t\t<dd{$class}>\n\t\t\t<?php echo \$html->link(__(\${$singularVar}['{$otherModelClass}']['{$otherDisplayField}'], true), array('controller'=> '{$otherControllerPath}', 'action'=>'view', \${$singularVar}['{$otherModelClass}']['{$otherPrimaryKey}'])); ?>\n\t\t\t \n\t\t</dd>\n";
|
||||
} else {
|
||||
echo "\t\t<dt{$class}><?php __('".Inflector::humanize($field['name'])."') ?></dt>\n";
|
||||
echo "\t\t<dd{$class}>\n\t\t\t<?php echo \${$singularVar}['{$modelClass}']['{$field['name']}'] ?>\n\t\t\t \n\t\t</dd>\n";
|
||||
}
|
||||
}
|
||||
?>
|
||||
</dl>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<ul>
|
||||
<?php
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('Edit %s', true), __('{$singularHumanName}', true)), array('action'=>'edit', \${$singularVar}['{$modelClass}']['{$primaryKey}'])); ?> </li>\n";
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('Delete %s', true), __('{$singularHumanName}', true)), array('action'=>'delete', \${$singularVar}['{$modelClass}']['{$primaryKey}']), null, sprintf(__('Are you sure you want to delete # %s?', true), \${$singularVar}['{$modelClass}']['{$primaryKey}'])); ?> </li>\n";
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('List %s', true), __('{$pluralHumanName}', true)), array('action'=>'index')); ?> </li>\n";
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('New %s', true), __('{$singularHumanName}', true)), array('action'=>'add')); ?> </li>\n";
|
||||
|
||||
foreach ($foreignKeys as $field => $value) {
|
||||
$otherModelClass = $value['1'];
|
||||
if ($otherModelClass != $modelClass) {
|
||||
$otherModelKey = Inflector::underscore($otherModelClass);
|
||||
$otherControllerName = Inflector::pluralize($otherModelClass);
|
||||
$otherControllerPath = Inflector::underscore($otherControllerName);
|
||||
$otherSingularVar = Inflector::variable($otherModelClass);
|
||||
$otherPluralHumanName = Inflector::humanize($otherControllerPath);
|
||||
$otherSingularHumanName = Inflector::humanize($otherModelKey);
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('List %s', true), __('{$otherPluralHumanName}', true)), array('controller'=> '{$otherControllerPath}', 'action'=>'index')); ?> </li>\n";
|
||||
echo "\t\t<li><?php echo \$html->link(sprintf(__('New %s', true), __('{$otherSingularHumanName}', true)), array('controller'=> '{$otherControllerPath}', 'action'=>'add')); ?> </li>\n";
|
||||
}
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
</div>
|
||||
<?php
|
||||
$i = 0;
|
||||
foreach ($hasOne as $assocName => $assocData):
|
||||
$otherModelKey = Inflector::underscore($assocData['className']);
|
||||
$otherControllerPath = Inflector::pluralize($otherModelKey);
|
||||
$otherControllerName = Inflector::camelize($otherControllerPath);
|
||||
$assocKey = Inflector::underscore($assocName);
|
||||
$otherPluralHumanName = Inflector::humanize(Inflector::pluralize($assocKey));
|
||||
$otherSingularHumanName = Inflector::humanize($assocKey);
|
||||
$otherModelObj =& ClassRegistry::getObject($otherModelKey);
|
||||
$otherFields = $otherModelObj->_tableInfo->value;
|
||||
$otherPrimaryKey = $otherModelObj->primaryKey;
|
||||
?>
|
||||
<div class="related">
|
||||
<h3><?php echo "<?php echo sprintf(__('Related %s', true), __('{$otherSingularHumanName}', true));?>";?></h3>
|
||||
<?php echo "<?php if (!empty(\${$singularVar}['{$assocName}'])):?>\n";?>
|
||||
<dl>
|
||||
<?php
|
||||
$i = 0;
|
||||
foreach ($otherFields as $field) {
|
||||
$class = null;
|
||||
if ($i++ % 2 == 0) {
|
||||
$class = ' class="altrow"';
|
||||
}
|
||||
|
||||
echo "\t\t<dt{$class}>".Inflector::humanize($field['name'])."</dt>\n";
|
||||
echo "\t\t<dd{$class}>\n\t<?php echo \${$singularVar}['{$assocName}']['{$field['name']}'] ?>\n </dd>\n";
|
||||
}
|
||||
?>
|
||||
</dl>
|
||||
<?php echo "<?php endif; ?>\n";?>
|
||||
<div class="actions">
|
||||
<ul>
|
||||
<li><?php echo "<?php echo \$html->link(sprintf(__('Edit %s', true), __('{$otherSingularHumanName}', true)), array('controller'=> '{$otherControllerPath}', 'action'=>'edit', \${$singularVar}['{$assocName}']['{$otherPrimaryKey}']));?></li>\n";?>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<?php
|
||||
$i++;
|
||||
endforeach;
|
||||
|
||||
$relations = array_merge($hasMany, $hasAndBelongsToMany);
|
||||
$i = 0;
|
||||
foreach ($relations as $assocName => $assocData):
|
||||
$otherModelKey = Inflector::underscore($assocData['className']);
|
||||
$otherModelObj =& ClassRegistry::getObject($otherModelKey);
|
||||
$otherControllerPath = Inflector::pluralize($otherModelKey);
|
||||
$otherControllerName = Inflector::camelize($otherControllerPath);
|
||||
$otherSingularVar = Inflector::variable($assocName);
|
||||
$assocKey = Inflector::underscore($assocName);
|
||||
$otherPluralHumanName = Inflector::humanize(Inflector::pluralize($assocKey));
|
||||
$otherSingularHumanName = Inflector::humanize($assocKey);
|
||||
$otherFields = $otherModelObj->_tableInfo->value;
|
||||
$otherPrimaryKey = $otherModelObj->primaryKey;
|
||||
?>
|
||||
<div class="related">
|
||||
<h3><?php echo "<?php echo sprintf(__('Related %s', true), __('{$otherPluralHumanName}', true));?>";?></h3>
|
||||
<?php echo "<?php if (!empty(\${$singularVar}['{$assocName}'])):?>\n";?>
|
||||
<table cellpadding = "0" cellspacing = "0">
|
||||
<tr>
|
||||
<?php
|
||||
foreach ($otherFields as $field) {
|
||||
echo "\t\t<th><?php __('".Inflector::humanize($field['name'])."') ?></th>\n";
|
||||
}
|
||||
?>
|
||||
<th class="actions"><?php echo "<?php __('Actions');?>";?></th>
|
||||
</tr>
|
||||
<?php
|
||||
echo "\t<?php
|
||||
\$i = 0;
|
||||
foreach (\${$singularVar}['{$assocName}'] as \${$otherSingularVar}):
|
||||
\$class = null;
|
||||
if (\$i++ % 2 == 0) {
|
||||
\$class = ' class=\"altrow\"';
|
||||
}
|
||||
?>\n";
|
||||
echo "\t\t<tr<?php echo \$class;?>>\n";
|
||||
|
||||
foreach ($otherFields as $field) {
|
||||
echo "\t\t\t<td><?php echo \${$otherSingularVar}['{$field['name']}'];?></td>\n";
|
||||
}
|
||||
|
||||
echo "\t\t\t<td class=\"actions\">\n";
|
||||
echo "\t\t\t\t<?php echo \$html->link(__('View', true), array('controller'=> '{$otherControllerPath}', 'action'=>'view', \${$otherSingularVar}['{$otherPrimaryKey}'])); ?>\n";
|
||||
echo "\t\t\t\t<?php echo \$html->link(__('Edit', true), array('controller'=> '{$otherControllerPath}', 'action'=>'edit', \${$otherSingularVar}['{$otherPrimaryKey}'])); ?>\n";
|
||||
echo "\t\t\t\t<?php echo \$html->link(__('Delete', true), array('controller'=> '{$otherControllerPath}', 'action'=>'delete', \${$otherSingularVar}['{$otherPrimaryKey}']), null, sprintf(__('Are you sure you want to delete # %s?', true), \${$otherSingularVar}['{$otherPrimaryKey}'])); ?>\n";
|
||||
echo "\t\t\t</td>\n";
|
||||
echo "\t\t</tr>\n";
|
||||
|
||||
echo "\t<?php endforeach; ?>\n";
|
||||
?>
|
||||
</table>
|
||||
<?php echo "<?php endif; ?>\n\n";?>
|
||||
<div class="actions">
|
||||
<ul>
|
||||
<li><?php echo "<?php echo \$html->link(sprintf(__('New %s', true), __('{$otherSingularHumanName}', true)), array('controller'=> '{$otherControllerPath}', 'action'=>'add'));?> </li>\n";?>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
<?php endforeach;?>
|
|
@ -0,0 +1,176 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: magic_db.php,v 1.1 2007-11-19 09:05:47 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* MagicDb parser and file analyzer
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs
|
||||
* @since CakePHP(tm) v 1.2.0
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: the_undefined $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:47 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
|
||||
uses ('object', 'file');
|
||||
/**
|
||||
* A class to parse and use the MagicDb for file type analysis
|
||||
*
|
||||
* @package cake.tests
|
||||
* @subpackage cake.tests.cases.libs
|
||||
*/
|
||||
class MagicDb extends Object {
|
||||
/**
|
||||
* Holds the parsed MagicDb for this class instance
|
||||
*
|
||||
* @var array
|
||||
**/
|
||||
var $db = array();
|
||||
|
||||
/**
|
||||
* The file currently being read. Can be a string or a file resource
|
||||
*
|
||||
* @var mixed
|
||||
*/
|
||||
var $_file = null;
|
||||
|
||||
/**
|
||||
* Reads a MagicDb from various formats
|
||||
*
|
||||
* @var $magicDb mixed Can be an array containing the db, a magic db as a string, or a filename pointing to a magic db in .db or magic.db.php format
|
||||
* @return boolean Returns false if reading / validation failed or true on success.
|
||||
* @author Felix
|
||||
**/
|
||||
function read($magicDb = null) {
|
||||
if (!is_string($magicDb) && !is_array($magicDb)) {
|
||||
return false;
|
||||
}
|
||||
if (is_array($magicDb) || strpos($magicDb, '# FILE_ID DB') === 0) {
|
||||
$data = $magicDb;
|
||||
} else {
|
||||
$File =& new File($magicDb);
|
||||
if (!$File->exists()) {
|
||||
return false;
|
||||
}
|
||||
if ($File->ext() == 'php') {
|
||||
include($File->pwd());
|
||||
$data = $magicDb;
|
||||
} else {
|
||||
// @TODO: Needs test coverage
|
||||
$data = $File->read();
|
||||
}
|
||||
}
|
||||
|
||||
$magicDb = $this->toArray($data);
|
||||
if (!$this->validates($magicDb)) {
|
||||
return false;
|
||||
}
|
||||
return !!($this->db = $magicDb);
|
||||
}
|
||||
|
||||
/**
|
||||
* Parses a MagicDb $data string into an array or returns the current MagicDb instance as an array
|
||||
*
|
||||
* @param string $data A MagicDb string to turn into an array
|
||||
* @return array A parsed MagicDb array or an empty array if the $data param was invalid. Returns the db property if $data is not set.
|
||||
* @access public
|
||||
*/
|
||||
function toArray($data = null) {
|
||||
if (is_array($data)) {
|
||||
return $data;
|
||||
}
|
||||
if ($data === null) {
|
||||
return $this->db;
|
||||
}
|
||||
|
||||
if (strpos($data, '# FILE_ID DB') !== 0) {
|
||||
return array();
|
||||
}
|
||||
|
||||
$lines = explode("\r\n", $data);
|
||||
$db = array();
|
||||
|
||||
$validHeader = count($lines > 3)
|
||||
&& preg_match('/^# Date:([0-9]{4}-[0-9]{2}-[0-9]{2})$/', $lines[1], $date)
|
||||
&& preg_match('/^# Source:(.+)$/', $lines[2], $source)
|
||||
&& strlen($lines[3]) == 0;
|
||||
if (!$validHeader) {
|
||||
return $db;
|
||||
}
|
||||
|
||||
$db = array('header' => array('Date' => $date[1], 'Source' => $source[1]), 'database' => array());
|
||||
$lines = array_splice($lines, 3);
|
||||
|
||||
$format = array();
|
||||
while (!empty($lines)) {
|
||||
$line = array_shift($lines);
|
||||
if (strpos($line, '#') === 0 || empty($line)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
$columns = explode("\t", $line);
|
||||
if (in_array($columns[0]{0}, array('&', '>'))) {
|
||||
$format[] = $columns;
|
||||
} elseif (!empty($format)) {
|
||||
$db['database'][] = $format;
|
||||
$format = array();
|
||||
}
|
||||
}
|
||||
|
||||
return $db;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns true if the MagicDb instance or the passed $magicDb is valid
|
||||
*
|
||||
* @param mixed $magicDb A $magicDb string / array to validate (optional)
|
||||
* @return boolean True if the $magicDb / instance db validates, false if not
|
||||
* @access public
|
||||
*/
|
||||
function validates($magicDb = null) {
|
||||
if (is_null($magicDb)) {
|
||||
$magicDb = $this->db;
|
||||
} elseif (!is_array($magicDb)) {
|
||||
$magicDb = $this->toArray($magicDb);
|
||||
}
|
||||
|
||||
return isset($magicDb['header'], $magicDb['database']) && is_array($magicDb['header']) && is_array($magicDb['database']);
|
||||
}
|
||||
|
||||
/**
|
||||
* Analyzes a given $file using the currently loaded MagicDb information based on the desired $options
|
||||
*
|
||||
* @param string $file Absolute path to the file to analyze
|
||||
* @param array $options TBT
|
||||
* @return mixed
|
||||
* @access public
|
||||
*/
|
||||
function analyze($file, $options = array()) {
|
||||
if (!is_string($file)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
if (file_exists($file)) {
|
||||
$this->_file =& new File($file);
|
||||
} else {
|
||||
$this->_file = $file;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
|
@ -0,0 +1,517 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: dbo_firebird.php,v 1.1 2007-11-19 09:05:48 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Firebird/Interbase layer for DBO
|
||||
*
|
||||
* Long description for file
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs.model.dbo
|
||||
* @since CakePHP(tm) v 1.2.0.5152
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:48 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* Short description for class.
|
||||
*
|
||||
* Long description for class
|
||||
*
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs.model.dbo
|
||||
*/
|
||||
class DboFirebird extends DboSource {
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @var unknown_type
|
||||
*/
|
||||
var $description = "Firebird/Interbase DBO Driver";
|
||||
/**
|
||||
* Saves the original table name
|
||||
*
|
||||
* @var unknown_type
|
||||
*/
|
||||
var $modeltmp = array();
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @var unknown_type
|
||||
*/
|
||||
var $startQuote = "\'";
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @var unknown_type
|
||||
*/
|
||||
var $endQuote = "\'";
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @var unknown_type
|
||||
*/
|
||||
var $alias = ' ';
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @var unknown_type
|
||||
*/
|
||||
var $goofyLimit = true;
|
||||
/**
|
||||
* Creates a map between field aliases and numeric indexes.
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
var $__fieldMappings = array();
|
||||
/**
|
||||
* Base configuration settings for Firebird driver
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
var $_baseConfig = array(
|
||||
'persistent' => true,
|
||||
'host' => 'localhost',
|
||||
'login' => 'SYSDBA',
|
||||
'password' => 'masterkey',
|
||||
'database' => 'c:\\CAKE.FDB',
|
||||
'port' => '3050',
|
||||
'connect' => 'ibase_connect'
|
||||
);
|
||||
/**
|
||||
* Firebird column definition
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
var $columns = array(
|
||||
'primary_key' => array('name' => 'integer IDENTITY (1, 1) NOT NULL'),
|
||||
'string' => array('name' => 'varchar', 'limit' => '255'),
|
||||
'text' => array('name' => 'BLOB SUB_TYPE 1 SEGMENT SIZE 100 CHARACTER SET NONE'),
|
||||
'integer' => array('name' => 'integer'),
|
||||
'float' => array('name' => 'float', 'formatter' => 'floatval'),
|
||||
'datetime' => array('name' => 'timestamp', 'format' => 'd.m.Y H:i:s', 'formatter' => 'date'),
|
||||
'timestamp' => array('name' => 'timestamp', 'format' => 'd.m.Y H:i:s', 'formatter' => 'date'),
|
||||
'time' => array('name' => 'time', 'format' => 'H:i:s', 'formatter' => 'date'),
|
||||
'date' => array('name' => 'date', 'format' => 'd.m.Y', 'formatter' => 'date'),
|
||||
'binary' => array('name' => 'blob'),
|
||||
'boolean' => array('name' => 'smallint')
|
||||
);
|
||||
/**
|
||||
* Connects to the database using options in the given configuration array.
|
||||
*
|
||||
* @return boolean True if the database could be connected, else false
|
||||
*/
|
||||
function connect() {
|
||||
$config = $this->config;
|
||||
$connect = $config['connect'];
|
||||
|
||||
$this->connected = false;
|
||||
$this->connection = $connect($config['host'] . ':' . $config['database'], $config['login'], $config['password']);
|
||||
$this->connected = true;
|
||||
}
|
||||
/**
|
||||
* Disconnects from database.
|
||||
*
|
||||
* @return boolean True if the database could be disconnected, else false
|
||||
*/
|
||||
function disconnect() {
|
||||
$this->connected = false;
|
||||
return @ibase_close($this->connection);
|
||||
}
|
||||
/**
|
||||
* Executes given SQL statement.
|
||||
*
|
||||
* @param string $sql SQL statement
|
||||
* @return resource Result resource identifier
|
||||
* @access protected
|
||||
*/
|
||||
function _execute($sql) {
|
||||
if (strpos(strtolower($sql),"update") > 0) {
|
||||
break;
|
||||
}
|
||||
return @ibase_query($this->connection, $sql);
|
||||
}
|
||||
/**
|
||||
* Returns a row from given resultset as an array .
|
||||
*
|
||||
* @param boolean $assoc Associative array only, or both?
|
||||
* @return array The fetched row as an array
|
||||
*/
|
||||
function fetchRow($assoc = false) {
|
||||
if (is_resource($this->_result)) {
|
||||
$this->resultSet($this->_result);
|
||||
$resultRow = $this->fetchResult();
|
||||
return $resultRow;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Returns an array of sources (tables) in the database.
|
||||
*
|
||||
* @return array Array of tablenames in the database
|
||||
*/
|
||||
function listSources() {
|
||||
$cache = parent::listSources();
|
||||
|
||||
if ($cache != null) {
|
||||
return $cache;
|
||||
}
|
||||
$sql = "select RDB" . "$" . "RELATION_NAME as name
|
||||
FROM RDB" ."$" . "RELATIONS
|
||||
Where RDB" . "$" . "SYSTEM_FLAG =0";
|
||||
|
||||
$result = @ibase_query($this->connection,$sql);
|
||||
$tables=array();
|
||||
while ($row = ibase_fetch_row ($result)) {
|
||||
$tables[] = strtolower(trim($row[0]));
|
||||
}
|
||||
parent::listSources($tables);
|
||||
return $tables;
|
||||
}
|
||||
/**
|
||||
* Returns an array of the fields in given table name.
|
||||
*
|
||||
* @param Model $model Model object to describe
|
||||
* @return array Fields in table. Keys are name and type
|
||||
*/
|
||||
function describe(&$model) {
|
||||
$this->modeltmp[$model->table] = $model->name;
|
||||
$cache = parent::describe($model);
|
||||
|
||||
if ($cache != null) {
|
||||
return $cache;
|
||||
}
|
||||
$fields = false;
|
||||
$sql = "SELECT * FROM " . $this->fullTableName($model, false);
|
||||
$rs = ibase_query($sql);
|
||||
$coln = ibase_num_fields($rs);
|
||||
$fields = false;
|
||||
|
||||
for ($i = 0; $i < $coln; $i++) {
|
||||
$col_info = ibase_field_info($rs, $i);
|
||||
$col_info['type'] = $this->column($col_info['type']);
|
||||
|
||||
$fields[strtolower($col_info['name'])] = array(
|
||||
'type' => $col_info['type'],
|
||||
'null' => '',
|
||||
'length' => $col_info['length']
|
||||
);
|
||||
}
|
||||
$this->__cacheDescription($this->fullTableName($model, false), $fields);
|
||||
return $fields;
|
||||
}
|
||||
/**
|
||||
* Returns a quoted name of $data for use in an SQL statement.
|
||||
*
|
||||
* @param string $data Name (table.field) to be prepared for use in an SQL statement
|
||||
* @return string Quoted for Firebird
|
||||
*/
|
||||
function name($data) {
|
||||
if ($data == '*') {
|
||||
return '*';
|
||||
}
|
||||
$pos = strpos($data, '"');
|
||||
|
||||
if ($pos === false) {
|
||||
if (!strpos($data, ".")) {
|
||||
$data = '"' . strtoupper($data) . '"';
|
||||
} else {
|
||||
$build = explode('.', $data);
|
||||
$data = '"' . strtoupper($build[0]) . '"."' . strtoupper($build[1]) . '"';
|
||||
}
|
||||
}
|
||||
return $data;
|
||||
}
|
||||
/**
|
||||
* Returns a quoted and escaped string of $data for use in an SQL statement.
|
||||
*
|
||||
* @param string $data String to be prepared for use in an SQL statement
|
||||
* @param string $column The column into which this data will be inserted
|
||||
* @param boolean $safe Whether or not numeric data should be handled automagically if no column data is provided
|
||||
* @return string Quoted and escaped data
|
||||
*/
|
||||
function value($data, $column = null, $safe = false) {
|
||||
$parent = parent::value($data, $column, $safe);
|
||||
|
||||
if ($parent != null) {
|
||||
return $parent;
|
||||
}
|
||||
if ($data === null) {
|
||||
return 'NULL';
|
||||
}
|
||||
if ($data === '') {
|
||||
return "''";
|
||||
}
|
||||
|
||||
switch($column) {
|
||||
case 'boolean':
|
||||
$data = $this->boolean((bool)$data);
|
||||
break;
|
||||
default:
|
||||
if (get_magic_quotes_gpc()) {
|
||||
$data = stripslashes(r("'", "''", $data));
|
||||
} else {
|
||||
$data = r("'", "''", $data);
|
||||
}
|
||||
break;
|
||||
}
|
||||
return "'" . $data . "'";
|
||||
}
|
||||
/**
|
||||
* Removes Identity (primary key) column from update data before returning to parent
|
||||
*
|
||||
* @param Model $model
|
||||
* @param array $fields
|
||||
* @param array $values
|
||||
* @return array
|
||||
*/
|
||||
function update(&$model, $fields = array(), $values = array()) {
|
||||
foreach ($fields as $i => $field) {
|
||||
if ($field == $model->primaryKey) {
|
||||
unset ($fields[$i]);
|
||||
unset ($values[$i]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
return parent::update($model, $fields, $values);
|
||||
}
|
||||
/**
|
||||
* Returns a formatted error message from previous database operation.
|
||||
*
|
||||
* @return string Error message with error number
|
||||
*/
|
||||
function lastError() {
|
||||
$error = ibase_errmsg();
|
||||
|
||||
if ($error !== false) {
|
||||
return $error;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
/**
|
||||
* Returns number of affected rows in previous database operation. If no previous operation exists,
|
||||
* this returns false.
|
||||
*
|
||||
* @return integer Number of affected rows
|
||||
*/
|
||||
function lastAffected() {
|
||||
if ($this->_result) {
|
||||
return ibase_affected_rows($this->connection);
|
||||
}
|
||||
return null;
|
||||
}
|
||||
/**
|
||||
* Returns number of rows in previous resultset. If no previous resultset exists,
|
||||
* this returns false.
|
||||
*
|
||||
* @return integer Number of rows in resultset
|
||||
*/
|
||||
function lastNumRows() {
|
||||
return $this->_result? /*ibase_affected_rows($this->_result)*/ 1: false;
|
||||
}
|
||||
/**
|
||||
* Returns the ID generated from the previous INSERT operation.
|
||||
*
|
||||
* @param unknown_type $source
|
||||
* @return in
|
||||
*/
|
||||
function lastInsertId($source = null, $field = 'id') {
|
||||
$query = "SELECT RDB\$TRIGGER_SOURCE
|
||||
FROM RDB\$TRIGGERS WHERE RDB\$RELATION_NAME = '". strtoupper($source) . "' AND
|
||||
RDB\$SYSTEM_FLAG IS NULL AND RDB\$TRIGGER_TYPE = 1 ";
|
||||
|
||||
$result = @ibase_query($this->connection,$query);
|
||||
$generator = "";
|
||||
|
||||
while ($row = ibase_fetch_row($result, IBASE_TEXT)) {
|
||||
if (strpos($row[0], "NEW." . strtoupper($field))) {
|
||||
$pos = strpos($row[0], "GEN_ID(");
|
||||
|
||||
if ($pos > 0) {
|
||||
$pos2 = strpos($row[0],",",$pos + 7);
|
||||
|
||||
if ($pos2 > 0) {
|
||||
$generator = substr($row[0], $pos +7, $pos2 - $pos- 7);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if (!empty($generator)) {
|
||||
$sql = "SELECT GEN_ID(". $generator . ",0) AS maxi FROM RDB" . "$" . "DATABASE";
|
||||
$res = $this->rawQuery($sql);
|
||||
$data = $this->fetchRow($res);
|
||||
return $data['maxi'];
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Returns a limit statement in the correct format for the particular database.
|
||||
*
|
||||
* @param integer $limit Limit of results returned
|
||||
* @param integer $offset Offset from which to start results
|
||||
* @return string SQL limit/offset statement
|
||||
*/
|
||||
function limit($limit, $offset = null) {
|
||||
if ($limit) {
|
||||
$rt = '';
|
||||
|
||||
if (!strpos(strtolower($limit), 'top') || strpos(strtolower($limit), 'top') === 0) {
|
||||
$rt = ' FIRST';
|
||||
}
|
||||
$rt .= ' ' . $limit;
|
||||
|
||||
if (is_int($offset) && $offset > 0) {
|
||||
$rt .= ' SKIP ' . $offset;
|
||||
}
|
||||
return $rt;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
/**
|
||||
* Converts database-layer column types to basic types
|
||||
*
|
||||
* @param string $real Real database-layer column type (i.e. "varchar(255)")
|
||||
* @return string Abstract column type (i.e. "string")
|
||||
*/
|
||||
function column($real) {
|
||||
if (is_array($real)) {
|
||||
$col = $real['name'];
|
||||
|
||||
if (isset($real['limit'])) {
|
||||
$col .= '(' . $real['limit'] . ')';
|
||||
}
|
||||
return $col;
|
||||
}
|
||||
|
||||
$col = r(')', '', $real);
|
||||
$limit = null;
|
||||
@list($col, $limit)=explode('(', $col);
|
||||
|
||||
if (in_array($col, array('DATE', 'TIME'))) {
|
||||
return strtolower($col);
|
||||
}
|
||||
if ($col == 'TIMESTAMP') {
|
||||
return 'datetime';
|
||||
}
|
||||
if ($col == 'SMALLINT') {
|
||||
return 'boolean';
|
||||
}
|
||||
if (strpos($col, 'int') !== false || $col == 'numeric' || $col == 'INTEGER') {
|
||||
return 'integer';
|
||||
}
|
||||
if (strpos($col, 'char') !== false) {
|
||||
return 'string';
|
||||
}
|
||||
if (strpos($col, 'text') !== false) {
|
||||
return 'text';
|
||||
}
|
||||
if (strpos($col, 'VARCHAR') !== false) {
|
||||
return 'string';
|
||||
}
|
||||
if (strpos($col, 'BLOB') !== false) {
|
||||
return 'text';
|
||||
}
|
||||
if (in_array($col, array('FLOAT', 'NUMERIC', 'DECIMAL'))) {
|
||||
return 'float';
|
||||
}
|
||||
return 'text';
|
||||
}
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @param unknown_type $results
|
||||
*/
|
||||
function resultSet(&$results) {
|
||||
$this->results =& $results;
|
||||
$this->map = array();
|
||||
$num_fields = ibase_num_fields($results);
|
||||
$index = 0;
|
||||
$j = 0;
|
||||
|
||||
while ($j < $num_fields) {
|
||||
$column = ibase_field_info($results, $j);
|
||||
if (!empty($column[2])) {
|
||||
$this->map[$index++] = array(ucfirst(strtolower($this->modeltmp[strtolower($column[2])])), strtolower($column[1]));
|
||||
} else {
|
||||
$this->map[$index++] = array(0, strtolower($column[1]));
|
||||
}
|
||||
$j++;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Builds final SQL statement
|
||||
*
|
||||
* @param array $data Query data
|
||||
* @return string
|
||||
*/
|
||||
function renderStatement($data) {
|
||||
extract($data);
|
||||
|
||||
if (preg_match('/offset\s+([0-9]+)/i', $limit, $offset)) {
|
||||
$limit = preg_replace('/\s*offset.*$/i', '', $limit);
|
||||
preg_match('/top\s+([0-9]+)/i', $limit, $limitVal);
|
||||
$offset = intval($offset[1]) + intval($limitVal[1]);
|
||||
$rOrder = $this->__switchSort($order);
|
||||
list($order2, $rOrder) = array($this->__mapFields($order), $this->__mapFields($rOrder));
|
||||
return "SELECT * FROM (SELECT {$limit} * FROM (SELECT TOP {$offset} {$fields} FROM {$table} {$alias} {$joins} {$conditions} {$order}) AS Set1 {$rOrder}) AS Set2 {$order2}";
|
||||
} else {
|
||||
return "SELECT {$limit} {$fields} FROM {$table} {$alias} {$joins} {$conditions} {$order}";
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Fetches the next row from the current result set
|
||||
*
|
||||
* @return unknown
|
||||
*/
|
||||
function fetchResult() {
|
||||
if ($row = ibase_fetch_row($this->results, IBASE_TEXT)) {
|
||||
$resultRow = array();
|
||||
$i = 0;
|
||||
|
||||
foreach ($row as $index => $field) {
|
||||
list($table, $column) = $this->map[$index];
|
||||
|
||||
if (trim($table) == "") {
|
||||
$resultRow[0][$column] = $row[$index];
|
||||
} else {
|
||||
$resultRow[$table][$column] = $row[$index];
|
||||
$i++;
|
||||
}
|
||||
}
|
||||
return $resultRow;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* Inserts multiple values into a join table
|
||||
*
|
||||
* @param string $table
|
||||
* @param string $fields
|
||||
* @param array $values
|
||||
*/
|
||||
function insertMulti($table, $fields, $values) {
|
||||
$count = count($values);
|
||||
for ($x = 0; $x < $count; $x++) {
|
||||
$this->query("INSERT INTO {$table} ({$fields}) VALUES {$values[$x]}");
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
|
@ -0,0 +1,453 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: schema.php,v 1.1 2007-11-19 09:05:48 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Schema database management for CakePHP.
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs
|
||||
* @since CakePHP(tm) v 1.2.0.5550
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:48 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
if (!class_exists('connectionmanager')) {
|
||||
uses('model' . DS . 'connection_manager');
|
||||
}
|
||||
/**
|
||||
* Base Class for Schema management
|
||||
*
|
||||
* @package cake.libs
|
||||
* @subpackage cake.libs
|
||||
*/
|
||||
class CakeSchema extends Object {
|
||||
/**
|
||||
* name of the App Schema
|
||||
*
|
||||
* @var string
|
||||
* @access public
|
||||
*/
|
||||
var $name = null;
|
||||
/**
|
||||
* path to write location
|
||||
*
|
||||
* @var string
|
||||
* @access public
|
||||
*/
|
||||
var $path = TMP;
|
||||
/**
|
||||
* connection used for read
|
||||
*
|
||||
* @var string
|
||||
* @access public
|
||||
*/
|
||||
var $connection = 'default';
|
||||
/**
|
||||
* array of tables
|
||||
*
|
||||
* @var array
|
||||
* @access public
|
||||
*/
|
||||
var $tables = array();
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param array $data optional load object properties
|
||||
* @access private
|
||||
*/
|
||||
function __construct($data = array()) {
|
||||
$this->path = CONFIGS . 'sql';
|
||||
$data = am(get_object_vars($this), $data);
|
||||
|
||||
$this->_build($data);
|
||||
|
||||
if (empty($this->name)) {
|
||||
$this->name = preg_replace('/schema$/i', '', get_class($this));
|
||||
}
|
||||
parent::__construct();
|
||||
}
|
||||
/**
|
||||
* Builds schema object properties
|
||||
*
|
||||
* @param array $data loaded object properties
|
||||
* @access protected
|
||||
*/
|
||||
function _build($data) {
|
||||
foreach ($data as $key => $val) {
|
||||
if (!in_array($key, array('name', 'path', 'connection', 'tables', '_log'))) {
|
||||
$this->tables[$key] = $val;
|
||||
unset($this->{$key});
|
||||
} elseif ($key != 'tables' && !empty($val)) {
|
||||
$this->{$key} = $val;
|
||||
}
|
||||
}
|
||||
}
|
||||
/**
|
||||
* before callback to be implemented in subclasses
|
||||
*
|
||||
* @param array $events schema object properties
|
||||
* @access public
|
||||
* @return bool
|
||||
*/
|
||||
function before($event = array()) {
|
||||
return true;
|
||||
}
|
||||
/**
|
||||
* after callback to be implemented in subclasses
|
||||
*
|
||||
* @param array $events schema object properties
|
||||
* @access public
|
||||
*/
|
||||
function after($event = array()) {
|
||||
}
|
||||
/**
|
||||
* Reads database and creates schema tables
|
||||
*
|
||||
* @param array $options schema object properties
|
||||
* @access public
|
||||
* @return array $name, $tables
|
||||
*/
|
||||
function load($options = array()) {
|
||||
if (is_string($options)) {
|
||||
$options = array('path'=> $options);
|
||||
}
|
||||
if (!isset($options['name'])) {
|
||||
$options['name'] = Inflector::camelize(Configure::read('App.dir'));
|
||||
}
|
||||
$options = am(
|
||||
get_object_vars($this), $options
|
||||
);
|
||||
extract($options);
|
||||
if (file_exists($path . DS . 'schema.php')) {
|
||||
require_once($path . DS . 'schema.php');
|
||||
$class = $name .'Schema';
|
||||
if(class_exists($class)) {
|
||||
$Schema =& new $class();
|
||||
$this->_build($options);
|
||||
return $Schema;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
/**
|
||||
* Reads database and creates schema tables
|
||||
*
|
||||
* @param array $options schema object properties
|
||||
* @access public
|
||||
* @return array $name, $tables
|
||||
*/
|
||||
function read($options = array()) {
|
||||
extract(am(
|
||||
array(
|
||||
'connection' => $this->connection,
|
||||
'name' => Inflector::camelize(Configure::read('App.dir')),
|
||||
),
|
||||
$options
|
||||
));
|
||||
$db =& ConnectionManager::getDataSource($connection);
|
||||
$currentTables = array_flip($db->sources());
|
||||
$prefix = null;
|
||||
if(isset($db->config['prefix'])) {
|
||||
$prefix = $db->config['prefix'];
|
||||
}
|
||||
if (empty($models)) {
|
||||
$models = Configure::listObjects('model');
|
||||
}
|
||||
loadModel(null);
|
||||
$tables = array();
|
||||
foreach ($models as $model) {
|
||||
if($model == 'ArosAco') {
|
||||
$model = 'Permission';
|
||||
}
|
||||
if (!class_exists(low($model))) {
|
||||
if(!class_exists(low('AclNode')) && in_array($model, array('Aro','Aco', 'Permission'))) {
|
||||
uses('model' . DS . 'db_acl');
|
||||
} else {
|
||||
loadModel($model);
|
||||
}
|
||||
}
|
||||
if(class_exists(low($model))) {
|
||||
$Object =& new $model();
|
||||
$Object->setDataSource($connection);
|
||||
$table = $db->fullTableName($Object, false);
|
||||
if (is_object($Object)) {
|
||||
$table = $db->fullTableName($Object, false);
|
||||
if(isset($currentTables[$table])) {
|
||||
if(empty($tables[$Object->table])) {
|
||||
$tables[$Object->table] = $this->__columns($Object);
|
||||
$tables[$Object->table]['indexes'] = $db->index($Object);
|
||||
unset($currentTables[$table]);
|
||||
}
|
||||
if(!empty($Object->hasAndBelongsToMany)) {
|
||||
foreach($Object->hasAndBelongsToMany as $Assoc => $assocData) {
|
||||
if (isset($assocData['with'])) {
|
||||
$class = $assocData['with'];
|
||||
} elseif ($assocData['_with']) {
|
||||
$class = $assocData['_with'];
|
||||
}
|
||||
if (is_object($Object->$class)) {
|
||||
$table = $db->fullTableName($Object->$class, false);
|
||||
if(isset($currentTables[$table])) {
|
||||
$tables[$Object->$class->table] = $this->__columns($Object->$class);
|
||||
$tables[$Object->$class->table]['indexes'] = $db->index($Object->$class);
|
||||
unset($currentTables[$table]);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if(!empty($currentTables)) {
|
||||
foreach(array_flip($currentTables) as $table) {
|
||||
if($prefix) {
|
||||
$table = str_replace($prefix, '', $table);
|
||||
}
|
||||
$Object = new AppModel(array('name'=> Inflector::classify($table), 'table'=> $table, 'ds'=> $connection));
|
||||
$tables['missing'][$table] = $this->__columns($Object);
|
||||
$tables['missing'][$table]['indexes'] = $db->index($Object);
|
||||
}
|
||||
}
|
||||
|
||||
ksort($tables);
|
||||
return compact('name', 'tables');
|
||||
}
|
||||
/**
|
||||
* Writes schema file from object or options
|
||||
*
|
||||
* @param mixed $object schema object or options array
|
||||
* @param array $options schema object properties to override object
|
||||
* @access public
|
||||
* @return mixed false or string written to file
|
||||
*/
|
||||
function write($object, $options = array()) {
|
||||
if (is_object($object)) {
|
||||
$object = get_object_vars($object);
|
||||
$this->_build($object);
|
||||
}
|
||||
|
||||
if (is_array($object)) {
|
||||
$options = $object;
|
||||
unset($object);
|
||||
}
|
||||
|
||||
extract(am(
|
||||
get_object_vars($this), $options
|
||||
));
|
||||
|
||||
$out = "\n\nclass {$name}Schema extends CakeSchema {\n\n";
|
||||
|
||||
$out .= "\tvar \$name = '{$name}';\n\n";
|
||||
|
||||
if ($path !== $this->path) {
|
||||
$out .= "\tvar \$path = '{$path}';\n\n";
|
||||
}
|
||||
|
||||
if ($connection !== 'default') {
|
||||
$out .= "\tvar \$connection = '{$connection}';\n\n";
|
||||
}
|
||||
|
||||
$out .= "\tfunction before(\$event = array()) {\n\t\treturn true;\n\t}\n\n\tfunction after(\$event = array()) {\n\t}\n\n";
|
||||
|
||||
if(empty($tables)) {
|
||||
$this->read();
|
||||
}
|
||||
|
||||
foreach ($tables as $table => $fields) {
|
||||
if(!is_numeric($table) && $table !== 'missing') {
|
||||
$out .= "\tvar \${$table} = array(\n";
|
||||
if (is_array($fields)) {
|
||||
$cols = array();
|
||||
foreach ($fields as $field => $value) {
|
||||
if($field != 'indexes') {
|
||||
if (is_string($value)) {
|
||||
$type = $value;
|
||||
$value = array('type'=> $type);
|
||||
}
|
||||
$col = "\t\t\t'{$field}' => array('type'=>'" . $value['type'] . "', ";
|
||||
unset($value['type']);
|
||||
$col .= join(', ', $this->__values($value));
|
||||
} else {
|
||||
$col = "\t\t\t'indexes' => array(";
|
||||
$props = array();
|
||||
foreach ($value as $key => $index) {
|
||||
$props[] = "'{$key}' => array(".join(', ', $this->__values($index)).")";
|
||||
}
|
||||
$col .= join(', ', $props);
|
||||
}
|
||||
$col .= ")";
|
||||
$cols[] = $col;
|
||||
}
|
||||
$out .= join(",\n", $cols);
|
||||
}
|
||||
$out .= "\n\t\t);\n";
|
||||
$out .="\n";
|
||||
}
|
||||
}
|
||||
$out .="\n}\n\n";
|
||||
|
||||
$File =& new File($path . DS . 'schema.php', true);
|
||||
$content = "<?php \n/*<!--". $name ." schema generated on: " . date('Y-m-d H:m:s') . " : ". time() . "-->*/\n{$out}?>";
|
||||
if ($File->write($content)) {
|
||||
return $content;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
/**
|
||||
* Writes schema file from object or options
|
||||
*
|
||||
* @param mixed $old schema object or array
|
||||
* @param mixed $new schema object or array
|
||||
* @access public
|
||||
* @return array $add, $drop, $change
|
||||
*/
|
||||
function compare($old, $new = null) {
|
||||
if (empty($new)) {
|
||||
$new = $this;
|
||||
}
|
||||
if (is_array($new)) {
|
||||
if (isset($new['tables'])) {
|
||||
$new = $new['tables'];
|
||||
}
|
||||
} else {
|
||||
$new = $new->tables;
|
||||
}
|
||||
|
||||
if (is_array($old)) {
|
||||
if (isset($old['tables'])) {
|
||||
$old = $old['tables'];
|
||||
}
|
||||
} else {
|
||||
$old = $old->tables;
|
||||
}
|
||||
$tables = array();
|
||||
foreach ($new as $table => $fields) {
|
||||
if($table == 'missing') {
|
||||
break;
|
||||
}
|
||||
if (!array_key_exists($table, $old)) {
|
||||
$tables[$table]['add'] = $fields;
|
||||
} else {
|
||||
$diff = array_diff_assoc($fields, $old[$table]);
|
||||
if (!empty($diff)) {
|
||||
$tables[$table]['add'] = $diff;
|
||||
}
|
||||
$diff = array_diff_assoc($old[$table], $fields);
|
||||
if (!empty($diff)) {
|
||||
$tables[$table]['drop'] = $diff;
|
||||
}
|
||||
}
|
||||
foreach ($fields as $field => $value) {
|
||||
if (isset($old[$table][$field])) {
|
||||
$diff = array_diff_assoc($value, $old[$table][$field]);
|
||||
if (!empty($diff)) {
|
||||
$tables[$table]['change'][$field] = am($old[$table][$field], $diff);
|
||||
}
|
||||
}
|
||||
|
||||
if (isset($add[$table][$field])) {
|
||||
$wrapper = array_keys($fields);
|
||||
if ($column = array_search($field, $wrapper)) {
|
||||
if (isset($wrapper[$column - 1])) {
|
||||
$tables[$table]['add'][$field]['after'] = $wrapper[$column - 1];
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return $tables;
|
||||
}
|
||||
/**
|
||||
* Formats Schema columns from Model Object
|
||||
*
|
||||
* @param array $value options keys(type, null, default, key, length, extra)
|
||||
* @access public
|
||||
* @return array $name, $tables
|
||||
*/
|
||||
function __values($values) {
|
||||
$vals = array();
|
||||
if(is_array($values)) {
|
||||
foreach ($values as $key => $val) {
|
||||
if(is_array($val)) {
|
||||
$vals[] = "'{$key}' => array('".join("', '", $val)."')";
|
||||
} else if (!is_numeric($key)) {
|
||||
$prop = "'{$key}' => ";
|
||||
if (is_bool($val)) {
|
||||
$prop .= $val ? 'true' : 'false';
|
||||
} elseif (is_numeric($val)) {
|
||||
$prop .= $val;
|
||||
} elseif ($val === null) {
|
||||
$prop .= 'null';
|
||||
} else {
|
||||
$prop .= "'{$val}'";
|
||||
}
|
||||
$vals[] = $prop;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $vals;
|
||||
}
|
||||
/**
|
||||
* Formats Schema columns from Model Object
|
||||
*
|
||||
* @param array $Obj model object
|
||||
* @access public
|
||||
* @return array $name, $tables
|
||||
*/
|
||||
function __columns(&$Obj) {
|
||||
$db =& ConnectionManager::getDataSource($Obj->useDbConfig);
|
||||
$fields = $Obj->schema(true);
|
||||
//pr($fields);
|
||||
$columns = $props = array();
|
||||
foreach ($fields->value as $name => $value) {
|
||||
|
||||
if ($Obj->primaryKey == $name) {
|
||||
$value['key'] = 'primary';
|
||||
}
|
||||
if (!isset($db->columns[$value['type']])) {
|
||||
trigger_error('Schema generation error: invalid column type ' . $value['type'] . ' does not exist in DBO', E_USER_WARNING);
|
||||
continue;
|
||||
} else {
|
||||
$defaultCol = $db->columns[$value['type']];
|
||||
if (isset($defaultCol['limit']) && $defaultCol['limit'] == $value['length']) {
|
||||
unset($value['length']);
|
||||
} elseif (isset($defaultCol['length']) && $defaultCol['length'] == $value['length']) {
|
||||
unset($value['length']);
|
||||
}
|
||||
unset($value['limit']);
|
||||
}
|
||||
|
||||
if (isset($value['default']) && $value['default'] != 0) {
|
||||
unset($value['default']);
|
||||
}
|
||||
if (empty($value['length'])) {
|
||||
unset($value['length']);
|
||||
}
|
||||
if (empty($value['key'])) {
|
||||
unset($value['key']);
|
||||
}
|
||||
if (empty($value['extra'])) {
|
||||
unset($value['extra']);
|
||||
}
|
||||
$columns[$name] = $value;
|
||||
}
|
||||
|
||||
return $columns;
|
||||
}
|
||||
}
|
||||
?>
|
|
@ -0,0 +1,709 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: string.php,v 1.1 2007-11-19 09:05:47 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* String handling methods.
|
||||
*
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs
|
||||
* @since CakePHP(tm) v 1.2.0.5551
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:47 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
/**
|
||||
* String handling methods.
|
||||
*
|
||||
*
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs
|
||||
*/
|
||||
class String extends Object {
|
||||
/**
|
||||
* Holds the decimal value of a multi-byte character
|
||||
*
|
||||
* @var array
|
||||
* @access private
|
||||
*/
|
||||
var $__utf8Map = array();
|
||||
/**
|
||||
* Holds the case folding values
|
||||
*
|
||||
* @var array
|
||||
* @access private
|
||||
*/
|
||||
var $__caseFold = array();
|
||||
/**
|
||||
* Holds an array of Unicode code point ranges
|
||||
*
|
||||
* @var array
|
||||
* @access private
|
||||
*/
|
||||
var $__codeRange = array();
|
||||
/**
|
||||
* Holds the current code point range
|
||||
*
|
||||
* @var string
|
||||
* @access private
|
||||
*/
|
||||
var $__table = null;
|
||||
/**
|
||||
* Gets a reference to the String object instance
|
||||
*
|
||||
* @return object String instance
|
||||
* @access public
|
||||
* @static
|
||||
*/
|
||||
function &getInstance() {
|
||||
static $instance = array();
|
||||
|
||||
if (!isset($instance[0]) || !$instance[0]) {
|
||||
$instance[0] =& new String();
|
||||
}
|
||||
return $instance[0];
|
||||
}
|
||||
/**
|
||||
* Generate a random UUID
|
||||
*
|
||||
* @see http://www.ietf.org/rfc/rfc4122.txt
|
||||
* @return RFC 4122 UUID
|
||||
* @static
|
||||
*/
|
||||
function uuid() {
|
||||
$node = env('SERVER_ADDR');
|
||||
|
||||
if(empty($node)) {
|
||||
$host = env('HOSTNAME');
|
||||
|
||||
if (empty($host)) {
|
||||
$host = env('HOST');
|
||||
}
|
||||
|
||||
if (empty($host)) {
|
||||
$node = ip2long('127.0.0.1');
|
||||
} else {
|
||||
$ip = gethostbyname($host);
|
||||
if ($ip === $host) {
|
||||
$node = crc32($host);
|
||||
} else {
|
||||
$node = ip2long($ip);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$node = ip2long($node);
|
||||
}
|
||||
|
||||
if (function_exists('zend_thread_id')) {
|
||||
$pid = zend_thread_id();
|
||||
} else {
|
||||
$pid = getmypid();
|
||||
}
|
||||
|
||||
list($timeMid, $timeLow) = explode(' ', microtime());
|
||||
$uuid = sprintf("%08x-%04x-%04x-%02x%02x-%04x%08x", (int)$timeLow, (int)substr($timeMid, 2) & 0xffff,
|
||||
mt_rand(0, 0xfff) | 0x4000, mt_rand(0, 0x3f) | 0x80, mt_rand(0, 0xff), $pid, $node);
|
||||
return $uuid;
|
||||
}
|
||||
/**
|
||||
* Converts a multi-byte character string
|
||||
* to the decimal value of the character
|
||||
*
|
||||
* @param multi-byte string $string
|
||||
* @return array
|
||||
* @access public
|
||||
* @static
|
||||
*/
|
||||
function utf8($string) {
|
||||
$_this =& String::getInstance();
|
||||
$_this->__reset();
|
||||
|
||||
$values = array();
|
||||
$find = 1;
|
||||
$length = strlen($string);
|
||||
|
||||
for ($i = 0; $i < $length; $i++ ) {
|
||||
$value = ord(($string[$i]));
|
||||
|
||||
if ($value < 128) {
|
||||
$_this->__utf8Map[] = $value;
|
||||
|
||||
} else {
|
||||
if (count($values) == 0) {
|
||||
$find = ife($value < 224, 2, 3);
|
||||
}
|
||||
$values[] = $value;
|
||||
|
||||
if (count($values) === $find) {
|
||||
if ($find == 3) {
|
||||
$_this->__utf8Map[] = (($values[0] % 16) * 4096) + (($values[1] % 64) * 64) + ($values[2] % 64);
|
||||
|
||||
} else {
|
||||
$_this->__utf8Map[] = (($values[0] % 32) * 64) + ($values[1] % 64);
|
||||
|
||||
}
|
||||
$values = array();
|
||||
$find = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
return $_this->__utf8Map;
|
||||
}
|
||||
/**
|
||||
* Converts the decimal value of a multi-byte character string
|
||||
* to a string
|
||||
*
|
||||
* @param array $array
|
||||
* @return string
|
||||
* @access public
|
||||
* @static
|
||||
*/
|
||||
function ascii($array) {
|
||||
$ascii = '';
|
||||
|
||||
foreach($array as $utf8) {
|
||||
if ($utf8 < 128) {
|
||||
$ascii .= chr($utf8);
|
||||
|
||||
} elseif ($utf8 < 2048) {
|
||||
$ascii .= chr(192 + (($utf8 - ($utf8 % 64)) / 64));
|
||||
$ascii .= chr(128 + ($utf8 % 64));
|
||||
} else {
|
||||
$ascii .= chr(224 + (($utf8 - ($utf8 % 4096)) / 4096));
|
||||
$ascii .= chr(128 + ((($utf8 % 4096) - ($utf8 % 64)) / 64));
|
||||
$ascii .= chr(128 + ($utf8 % 64));
|
||||
}
|
||||
}
|
||||
return $ascii;
|
||||
}
|
||||
/**
|
||||
* Find position of first occurrence of a string
|
||||
*
|
||||
* Returns the numeric position of the first occurrence of needle in the haystack string.
|
||||
*
|
||||
* @param multi-byte string $haystack
|
||||
* @param multi-byte string $needle
|
||||
* @param integer $offset
|
||||
* @return int|boolean
|
||||
* @access public
|
||||
* @static
|
||||
*/
|
||||
function strpos($haystack, $needle, $offset = 0) {
|
||||
$_this =& String::getInstance();
|
||||
|
||||
$haystack = $_this->utf8($haystack);
|
||||
$needle = $_this->utf8($needle);
|
||||
$position = $offset;
|
||||
$found = false;
|
||||
$haystackCount = count($haystack);
|
||||
$needleCount = count($needle);
|
||||
|
||||
while (($found === false) && ($position < $haystackCount)) {
|
||||
if (isset($needle[0]) && $needle[0] === $haystack[$position]) {
|
||||
for ($i = 1; $i < $needleCount; $i++) {
|
||||
if ($needle[$i] !== $haystack[$position + $i]) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ($i === $needleCount) {
|
||||
$found = true;
|
||||
$position--;
|
||||
}
|
||||
}
|
||||
$position++;
|
||||
}
|
||||
$return = ife($found, $position, false);
|
||||
return $return;
|
||||
}
|
||||
/**
|
||||
* Find position of first occurrence of a case-insensitive string
|
||||
*
|
||||
* Returns the numeric position of the first occurrence of needle in the haystack
|
||||
*
|
||||
* @param multi-byte string $haystack
|
||||
* @param multi-byte string $needle
|
||||
* @param integer $offset
|
||||
* @return int|boolean
|
||||
* @access public
|
||||
* @static
|
||||
*/
|
||||
function stripos($haystack, $needle, $offset = 0) {
|
||||
$_this =& String::getInstance();
|
||||
|
||||
$haystack = $_this->strtoupper($haystack);
|
||||
$needle = $_this->strtoupper($needle);
|
||||
return $_this->strpos($haystack, $needle, $offset);
|
||||
}
|
||||
/**
|
||||
* Make a multi-byte string uppercase
|
||||
*
|
||||
* Returns string with all alphabetic characters converted to uppercase.
|
||||
*
|
||||
* @param multi-byte string $string
|
||||
* @return string
|
||||
* @access public
|
||||
* @static
|
||||
*/
|
||||
function strtoupper($string) {
|
||||
$_this =& String::getInstance();
|
||||
$_this->utf8($string);
|
||||
$length = count($_this->__utf8Map);
|
||||
$upperCase = array();
|
||||
$replaced = array();
|
||||
$matched = false;
|
||||
|
||||
for ($i = 0 ; $i < $length; $i++) {
|
||||
$char = $_this->__utf8Map[$i];
|
||||
|
||||
if ($char < 128) {
|
||||
$str = strtoupper(chr($char));
|
||||
$strlen = strlen($str);
|
||||
for ($ii = 0 ; $ii < $strlen; $ii++) {
|
||||
$upper = ord(substr($str, $ii, 1));
|
||||
}
|
||||
$upperCase[] = $upper;
|
||||
$matched = true;
|
||||
|
||||
} else {
|
||||
$matched = false;
|
||||
$keys = $_this->__find($char);
|
||||
$keyCount = count($keys);
|
||||
|
||||
if (!empty($keys)) {
|
||||
foreach ($keys as $key => $value) {
|
||||
$matched = false;
|
||||
$replace = 0;
|
||||
if ($length > 1 && count($keys[$key]['lower']) > 1) {
|
||||
$j = 0;
|
||||
|
||||
for ($ii = 0 ; $ii < count($keys[$key]['lower']) ; $ii++) {
|
||||
$nextChar = $_this->__utf8Map[$i + $ii];
|
||||
|
||||
if (isset($nextChar) && ($nextChar == $keys[$key]['lower'][$j + $ii])) {
|
||||
$replace++;
|
||||
}
|
||||
}
|
||||
if ($replace == count($keys[$key]['lower'])) {
|
||||
$upperCase[] = $keys[$key]['upper'];
|
||||
$replaced = array_merge($replaced, array_values($keys[$key]['lower']));
|
||||
$matched = true;
|
||||
break 1;
|
||||
}
|
||||
} elseif ($length > 1 && $keyCount > 1) {
|
||||
$j = 0;
|
||||
for ($ii = 1; $ii < $keyCount; $ii++) {
|
||||
$nextChar = $_this->__utf8Map[$i + $ii - 1];
|
||||
|
||||
if (in_array($nextChar, $keys[$ii]['lower'])) {
|
||||
|
||||
for ($jj = 0 ; $jj < count($keys[$ii]['lower']) ; $jj++) {
|
||||
$nextChar = $_this->__utf8Map[$i + $jj];
|
||||
|
||||
if (isset($nextChar) && ($nextChar == $keys[$ii]['lower'][$j + $jj])) {
|
||||
$replace++;
|
||||
}
|
||||
}
|
||||
if ($replace == count($keys[$ii]['lower'])) {
|
||||
$upperCase[] = $keys[$ii]['upper'];
|
||||
$replaced = array_merge($replaced, array_values($keys[$ii]['lower']));
|
||||
$matched = true;
|
||||
break 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($keys[$key]['lower'][0] == $char) {
|
||||
$upperCase[] = $keys[$key]['upper'];
|
||||
$matched = true;
|
||||
break 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if ($matched === false && !in_array($char, $replaced, true)) {
|
||||
$upperCase[] = $char;
|
||||
}
|
||||
}
|
||||
if (empty($upperCase)) {
|
||||
return $string;
|
||||
}
|
||||
return $_this->ascii($upperCase);
|
||||
}
|
||||
/**
|
||||
* Return the Code points range for Unicode characters
|
||||
*
|
||||
* @param interger $decimal
|
||||
* @return string
|
||||
* @access private
|
||||
*/
|
||||
function __codepoint ($decimal) {
|
||||
$_this =& String::getInstance();
|
||||
|
||||
if ($decimal < 128) {
|
||||
$return = '0000_007f'; // Basic Latin
|
||||
} elseif ($decimal < 256) {
|
||||
$return = '0080_00ff'; // Latin-1 Supplement
|
||||
} elseif ($decimal < 384) {
|
||||
$return = '0100_017f'; // Latin Extended-A
|
||||
} elseif ($decimal < 592) {
|
||||
$return = '0180_024F'; // Latin Extended-B
|
||||
} elseif ($decimal < 688) {
|
||||
$return = '0250_02af'; // IPA Extensions
|
||||
} elseif ($decimal < 768) {
|
||||
$return = '02b0_02ff'; // Spacing Modifier Letters
|
||||
} elseif ($decimal < 880) {
|
||||
$return = '0300_036f'; // Combining Diacritical Marks
|
||||
} elseif ($decimal < 1024) {
|
||||
$return = '0370_03ff'; // Greek and Coptic
|
||||
} elseif ($decimal < 1280) {
|
||||
$return = '0400_04ff'; // Cyrillic
|
||||
} elseif ($decimal < 1328) {
|
||||
$return = '0500_052f'; // Cyrillic Supplement
|
||||
} elseif ($decimal < 1424) {
|
||||
$return = '0530_058f'; // Armenian
|
||||
} elseif ($decimal < 1536) {
|
||||
$return = '0590_05ff'; // Hebrew
|
||||
} elseif ($decimal < 1792) {
|
||||
$return = '0600_06ff'; // Arabic
|
||||
} elseif ($decimal < 1872) {
|
||||
$return = '0700_074f'; // Syriac
|
||||
} elseif ($decimal < 1920) {
|
||||
$return = '0750_077f'; // Arabic Supplement
|
||||
} elseif ($decimal < 1984) {
|
||||
$return = '0780_07bf'; // Thaana
|
||||
} elseif ($decimal < 2304) {
|
||||
$return = '07c0_07ff'; // NKo
|
||||
} elseif ($decimal < 2432) {
|
||||
$return = '0900_097f'; // Devanagari
|
||||
} elseif ($decimal < 2560) {
|
||||
$return = '0980_09ff'; // Bengali
|
||||
} elseif ($decimal < 2688) {
|
||||
$return = '0a00_0a7f'; // Gurmukhi
|
||||
} elseif ($decimal < 2816) {
|
||||
$return = '0a80_0aff'; // Gujarati
|
||||
} elseif ($decimal < 2944) {
|
||||
$return = '0b00_0b7f'; // Oriya
|
||||
} elseif ($decimal < 3072) {
|
||||
$return = '0b80_0bff'; // Tamil
|
||||
} elseif ($decimal < 3200) {
|
||||
$return = '0c00_0c7f'; // Telugu
|
||||
} elseif ($decimal < 3328) {
|
||||
$return = '0c80_0cff'; // Kannada
|
||||
} elseif ($decimal < 3456) {
|
||||
$return = '0d00_0d7f'; // Malayalam
|
||||
} elseif ($decimal < 3584) {
|
||||
$return = '0d80_0dff'; // Sinhala
|
||||
} elseif ($decimal < 3712) {
|
||||
$return = '0e00_0e7f'; // Thai
|
||||
} elseif ($decimal < 3840) {
|
||||
$return = '0e80_0eff'; // Lao
|
||||
} elseif ($decimal < 4096) {
|
||||
$return = '0f00_0fff'; // Tibetan
|
||||
} elseif ($decimal < 4256) {
|
||||
$return = '1000_109f'; // Myanmar
|
||||
} elseif ($decimal < 4352) {
|
||||
$return = '10a0_10ff'; // Georgian
|
||||
} elseif ($decimal < 4608) {
|
||||
$return = '1100_11ff'; // Hangul Jamo
|
||||
} elseif ($decimal < 4992) {
|
||||
$return = '1200_137f'; // Ethiopic
|
||||
} elseif ($decimal < 5024) {
|
||||
$return = '1380_139f'; // Ethiopic Supplement
|
||||
} elseif ($decimal < 5120) {
|
||||
$return = '13a0_13ff'; // Cherokee
|
||||
} elseif ($decimal < 5760) {
|
||||
$return = '1400_167f'; // Unified Canadian Aboriginal Syllabics
|
||||
} elseif ($decimal < 5792) {
|
||||
$return = '1680_169f'; // Ogham
|
||||
} elseif ($decimal < 5888) {
|
||||
$return = '16a0_16ff'; // Runic
|
||||
} elseif ($decimal < 5920) {
|
||||
$return = '1700_171f'; // Tagalog
|
||||
} elseif ($decimal < 5952) {
|
||||
$return = '1720_173f'; // Hanunoo
|
||||
} elseif ($decimal < 5984) {
|
||||
$return = '1740_175f'; // Buhid
|
||||
} elseif ($decimal < 6016) {
|
||||
$return = '1760_177f'; // Tagbanwa
|
||||
} elseif ($decimal < 6144) {
|
||||
$return = '1780_17ff'; // Khmer
|
||||
} elseif ($decimal < 6400) {
|
||||
$return = '1800_18af'; // Mongolian
|
||||
} elseif ($decimal < 6480) {
|
||||
$return = '1900_194f'; // Limbu
|
||||
} elseif ($decimal < 6528) {
|
||||
$return = '1950_197f'; // Tai Le
|
||||
} elseif ($decimal < 6624) {
|
||||
$return = '1980_19df'; // New Tai Lue
|
||||
} elseif ($decimal < 6656) {
|
||||
$return = '19e0_19ff'; // Khmer Symbols
|
||||
} elseif ($decimal < 6912) {
|
||||
$return = '1a00_1a1f'; // Buginese
|
||||
} elseif ($decimal < 7424) {
|
||||
$return = '1b00_1b7f'; // Balinese
|
||||
} elseif ($decimal < 7552) {
|
||||
$return = '1d00_1d7f'; // Phonetic Extensions
|
||||
} elseif ($decimal < 7616) {
|
||||
$return = '1d80_1dbf'; // Phonetic Extensions Supplement
|
||||
} elseif ($decimal < 7680) {
|
||||
$return = '1dc0_1dff'; // Combining Diacritical Marks Supplement
|
||||
} elseif ($decimal < 7936) {
|
||||
$return = '1e00_1eff'; // Latin Extended Additional
|
||||
} elseif ($decimal < 8192) {
|
||||
$return = '1f00_1fff'; // Greek Extended
|
||||
} elseif ($decimal < 8304) {
|
||||
$return = '2000_206f'; // General Punctuation
|
||||
} elseif ($decimal < 8352) {
|
||||
$return = '2070_209f'; // Superscripts and Subscripts
|
||||
} elseif ($decimal < 8400) {
|
||||
$return = '20a0_20cf'; // Currency Symbols
|
||||
} elseif ($decimal < 8448) {
|
||||
$return = '20d0_20ff'; // Combining Diacritical Marks for Symbols
|
||||
} elseif ($decimal < 8528) {
|
||||
$return = '2100_214f'; // Letterlike Symbols
|
||||
} elseif ($decimal < 8592) {
|
||||
$return = '2150_218f'; // Number Forms
|
||||
} elseif ($decimal < 8704) {
|
||||
$return = '2190_21ff'; // Arrows
|
||||
} elseif ($decimal < 8960) {
|
||||
$return = '2200_22ff'; // Mathematical Operators
|
||||
} elseif ($decimal < 9216) {
|
||||
$return = '2300_23ff'; // Miscellaneous Technical
|
||||
} elseif ($decimal < 9280) {
|
||||
$return = '2400_243f'; // Control Pictures
|
||||
} elseif ($decimal < 9312) {
|
||||
$return = '2440_245f'; // Optical Character Recognition
|
||||
} elseif ($decimal < 9472) {
|
||||
$return = '2460_24ff'; // Enclosed Alphanumerics
|
||||
} elseif ($decimal < 9600) {
|
||||
$return = '2500_257f'; // Box Drawing
|
||||
} elseif ($decimal < 9632) {
|
||||
$return = '2580_259f'; // Block Elements
|
||||
} elseif ($decimal < 9728) {
|
||||
$return = '25a0_25ff'; // Geometric Shapes
|
||||
} elseif ($decimal < 9984) {
|
||||
$return = '2600_26ff'; // Miscellaneous Symbols
|
||||
} elseif ($decimal < 10176) {
|
||||
$return = '2700_27bf'; // Dingbats
|
||||
} elseif ($decimal < 10224) {
|
||||
$return = '27c0_27ef'; // Miscellaneous Mathematical Symbols-A
|
||||
} elseif ($decimal < 10240) {
|
||||
$return = '27f0_27ff'; // Supplemental Arrows-A
|
||||
} elseif ($decimal < 10496) {
|
||||
$return = '2800_28ff'; // Braille Patterns
|
||||
} elseif ($decimal < 10624) {
|
||||
$return = '2900_297f'; // Supplemental Arrows-B
|
||||
} elseif ($decimal < 10752) {
|
||||
$return = '2980_29ff'; // Miscellaneous Mathematical Symbols-B
|
||||
} elseif ($decimal < 11008) {
|
||||
$return = '2a00_2aff'; // Supplemental Mathematical Operators
|
||||
} elseif ($decimal < 11264) {
|
||||
$return = '2b00_2bff'; // Miscellaneous Symbols and Arrows
|
||||
} elseif ($decimal < 11360) {
|
||||
$return = '2c00_2c5f'; // Glagolitic
|
||||
} elseif ($decimal < 11392) {
|
||||
$return = '2c60_2c7f'; // Latin Extended-C
|
||||
} elseif ($decimal < 11520) {
|
||||
$return = '2c80_2cff'; // Coptic
|
||||
} elseif ($decimal < 11568) {
|
||||
$return = '2d00_2d2f'; // Georgian Supplement
|
||||
} elseif ($decimal < 11648) {
|
||||
$return = '2d30_2d7f'; // Tifinagh
|
||||
} elseif ($decimal < 11776) {
|
||||
$return = '2d80_2ddf'; // Ethiopic Extended
|
||||
} elseif ($decimal < 11904) {
|
||||
$return = '2e00_2e7f'; // Supplemental Punctuation
|
||||
} elseif ($decimal < 12032) {
|
||||
$return = '2e80_2eff'; // CJK Radicals Supplement
|
||||
} elseif ($decimal < 12272) {
|
||||
$return = '2f00_2fdf'; // Kangxi Radicals
|
||||
} elseif ($decimal < 12288) {
|
||||
$return = '2ff0_2fff'; // Ideographic Description Characters
|
||||
} elseif ($decimal < 12352) {
|
||||
$return = '3000_303f'; // CJK Symbols and Punctuation
|
||||
} elseif ($decimal < 12448) {
|
||||
$return = '3040_309f'; // Hiragana
|
||||
} elseif ($decimal < 12544) {
|
||||
$return = '30a0_30ff'; // Katakana
|
||||
} elseif ($decimal < 12592) {
|
||||
$return = '3100_312f'; // Bopomofo
|
||||
} elseif ($decimal < 12688) {
|
||||
$return = '3130_318f'; // Hangul Compatibility Jamo
|
||||
} elseif ($decimal < 12704) {
|
||||
$return = '3190_319f'; // Kanbun
|
||||
} elseif ($decimal < 12736) {
|
||||
$return = '31a0_31bf'; // Bopomofo Extended
|
||||
} elseif ($decimal < 12784) {
|
||||
$return = '31c0_31ef'; // CJK Strokes
|
||||
} elseif ($decimal < 12800) {
|
||||
$return = '31f0_31ff'; // Katakana Phonetic Extensions
|
||||
} elseif ($decimal < 13056) {
|
||||
$return = '3200_32ff'; // Enclosed CJK Letters and Months
|
||||
} elseif ($decimal < 13312) {
|
||||
$return = '3300_33ff'; // CJK Compatibility
|
||||
} elseif ($decimal < 19904) {
|
||||
$return = '3400_4dbf'; // CJK Unified Ideographs Extension A
|
||||
} elseif ($decimal < 19968) {
|
||||
$return = '4dc0_4dff'; // Yijing Hexagram Symbols
|
||||
} elseif ($decimal < 40960) {
|
||||
$return = '4e00_9fff'; // CJK Unified Ideographs
|
||||
} elseif ($decimal < 42128) {
|
||||
$return = 'a000_a48f'; // Yi Syllables
|
||||
} elseif ($decimal < 42752) {
|
||||
$return = 'a490_a4cf'; // Yi Radicals
|
||||
} elseif ($decimal < 42784) {
|
||||
$return = 'a700_a71f'; // Modifier Tone Letters
|
||||
} elseif ($decimal < 43008) {
|
||||
$return = 'a720_a7ff'; // Latin Extended-D
|
||||
} elseif ($decimal < 43072) {
|
||||
$return = 'a800_a82f'; // Syloti Nagri
|
||||
} elseif ($decimal < 44032) {
|
||||
$return = 'a840_a87f'; // Phags-pa
|
||||
} elseif ($decimal < 55296) {
|
||||
$return = 'ac00_d7af'; // Hangul Syllables
|
||||
} elseif ($decimal < 56192) {
|
||||
$return = 'd800_db7f'; // High Surrogates
|
||||
} elseif ($decimal < 56320) {
|
||||
$return = 'db80_dbff'; // High Private Use Surrogates
|
||||
} elseif ($decimal < 57344) {
|
||||
$return = 'dc00_dfff'; // Low Surrogates
|
||||
} elseif ($decimal < 63744) {
|
||||
$return = 'e000_f8ff'; // Private Use Area
|
||||
} elseif ($decimal < 64256) {
|
||||
$return = 'f900_faff'; // CJK Compatibility Ideographs
|
||||
} elseif ($decimal < 64336) {
|
||||
$return = 'fb00_fb4f'; // Alphabetic Presentation Forms
|
||||
} elseif ($decimal < 65024) {
|
||||
$return = 'fb50_fdff'; // Arabic Presentation Forms-A
|
||||
} elseif ($decimal < 65040) {
|
||||
$return = 'fe00_fe0f'; // Variation Selectors
|
||||
} elseif ($decimal < 65056) {
|
||||
$return = 'fe10_fe1f'; // Vertical Forms
|
||||
} elseif ($decimal < 65072) {
|
||||
$return = 'fe20_fe2f'; // Combining Half Marks
|
||||
} elseif ($decimal < 65104) {
|
||||
$return = 'fe30_fe4f'; // CJK Compatibility Forms
|
||||
} elseif ($decimal < 65136) {
|
||||
$return = 'fe50_fe6f'; // Small Form Variants
|
||||
} elseif ($decimal < 65280) {
|
||||
$return = 'fe70_feff'; // Arabic Presentation Forms-B
|
||||
} elseif ($decimal < 65520) {
|
||||
$return = 'ff00_ffef'; // Halfwidth and Fullwidth Forms
|
||||
} elseif ($decimal < 65536) {
|
||||
$return = 'fff0_ffff'; // Specials
|
||||
} elseif ($decimal < 65664) {
|
||||
$return = '10000_1007f'; // Linear B Syllabary
|
||||
} elseif ($decimal < 65792) {
|
||||
$return = '10080_100ff'; // Linear B Ideograms
|
||||
} elseif ($decimal < 65856) {
|
||||
$return = '10100_1013f'; // Aegean Numbers
|
||||
} elseif ($decimal < 66304) {
|
||||
$return = '10140_1018f'; // Ancient Greek Numbers
|
||||
} elseif ($decimal < 66352) {
|
||||
$return = '10300_1032f'; // Old Italic
|
||||
} elseif ($decimal < 66432) {
|
||||
$return = '10330_1034f'; // Gothic
|
||||
} elseif ($decimal < 66464) {
|
||||
$return = '10380_1039f'; // Ugaritic
|
||||
} elseif ($decimal < 66560) {
|
||||
$return = '103a0_103df'; // Old Persian
|
||||
} elseif ($decimal < 66640) {
|
||||
$return = '10400_1044f'; // Deseret
|
||||
} elseif ($decimal < 66688) {
|
||||
$return = '10450_1047f'; // Shavian
|
||||
} elseif ($decimal < 67584) {
|
||||
$return = '10480_104af'; // Osmanya
|
||||
} elseif ($decimal < 67840) {
|
||||
$return = '10800_1083f'; // Cypriot Syllabary
|
||||
} elseif ($decimal < 68096) {
|
||||
$return = '10900_1091f'; // Phoenician
|
||||
} elseif ($decimal < 73728) {
|
||||
$return = '10a00_10a5f'; // Kharoshthi
|
||||
} elseif ($decimal < 74752) {
|
||||
$return = '12000_123ff'; // Cuneiform
|
||||
} elseif ($decimal < 118784) {
|
||||
$return = '12400_1247f'; // Cuneiform Numbers and Punctuation
|
||||
} elseif ($decimal < 119040) {
|
||||
$return = '1d000_1d0ff'; // Byzantine Musical Symbols
|
||||
} elseif ($decimal < 119296) {
|
||||
$return = '1d100_1d1ff'; // Musical Symbols
|
||||
} elseif ($decimal < 119552) {
|
||||
$return = '1d200_1d24f'; // Ancient Greek Musical Notation
|
||||
} elseif ($decimal < 119648) {
|
||||
$return = '1d300_1d35f'; // Tai Xuan Jing Symbols
|
||||
} elseif ($decimal < 119808) {
|
||||
$return = '1d360_1d37f'; // Counting Rod Numerals
|
||||
} elseif ($decimal < 131072) {
|
||||
$return = '1d400_1d7ff'; // Mathematical Alphanumeric Symbols
|
||||
} elseif ($decimal < 194560) {
|
||||
$return = '20000_2a6df'; // CJK Unified Ideographs Extension B
|
||||
} elseif ($decimal < 917504) {
|
||||
$return = '2f800_2fa1f'; // CJK Compatibility Ideographs Supplement
|
||||
} elseif ($decimal < 917760) {
|
||||
$return = 'e0000_e007f'; // Tags
|
||||
} elseif ($decimal < 983040) {
|
||||
$return = 'e0100_e01ef'; // Variation Selectors Supplement
|
||||
} elseif ($decimal < 1048576) {
|
||||
$return = 'f0000_fffff'; // Supplementary Private Use Area-A
|
||||
} elseif ($decimal > 1048575) {
|
||||
$return = '100000_10ffff'; // Supplementary Private Use Area-B
|
||||
} else {
|
||||
$return = false;
|
||||
}
|
||||
$_this->__codeRange[$decimal] = $return;
|
||||
return $return;
|
||||
}
|
||||
/**
|
||||
* Find the related code folding values for $char
|
||||
*
|
||||
* @param integer $char decimal value of character
|
||||
* @param string $type
|
||||
* @return array
|
||||
* @access private
|
||||
*/
|
||||
function __find($char, $type = 'lower'){
|
||||
$_this =& String::getInstance();
|
||||
$value = false;
|
||||
$found = array();
|
||||
if(!isset($_this->__codeRange[$char])) {
|
||||
$range = $_this->__codepoint($char);
|
||||
if ($range === false) {
|
||||
|
||||
}
|
||||
Configure::load('unicode' . DS . 'casefolding' . DS . $range);
|
||||
$_this->__caseFold[$range] = Configure::read($range);
|
||||
Configure::delete($range);
|
||||
}
|
||||
$_this->__table = $_this->__codeRange[$char];
|
||||
$count = count($_this->__caseFold[$_this->__table]);
|
||||
for($i = 0; $i < $count; $i++) {
|
||||
if ($_this->__caseFold[$_this->__table][$i][$type][0] === $char) {
|
||||
$found[] = $_this->__caseFold[$_this->__table][$i];
|
||||
}
|
||||
}
|
||||
return $found;
|
||||
}
|
||||
/**
|
||||
* resets the utf8 map array
|
||||
*
|
||||
* @access private
|
||||
*/
|
||||
function __reset() {
|
||||
$_this =& String::getInstance();
|
||||
$_this->__utf8Map = array();
|
||||
}
|
||||
}
|
||||
?>
|
|
@ -0,0 +1,185 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: media.php,v 1.1 2007-11-19 09:05:49 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
* Short description for file.
|
||||
*
|
||||
* Long description for file
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs.view
|
||||
* @since CakePHP(tm) v 1.2.0.5714
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:49 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
class MediaView extends View {
|
||||
/**
|
||||
* Holds known mime type mappings
|
||||
*
|
||||
* @var array
|
||||
*/
|
||||
var $mimeType = array('ai' => 'application/postscript', 'bcpio' => 'application/x-bcpio', 'bin' => 'application/octet-stream',
|
||||
'ccad' => 'application/clariscad', 'cdf' => 'application/x-netcdf', 'class' => 'application/octet-stream',
|
||||
'cpio' => 'application/x-cpio', 'cpt' => 'application/mac-compactpro', 'csh' => 'application/x-csh',
|
||||
'dcr' => 'application/x-director', 'dir' => 'application/x-director', 'dms' => 'application/octet-stream',
|
||||
'doc' => 'application/msword', 'drw' => 'application/drafting', 'dvi' => 'application/x-dvi',
|
||||
'dwg' => 'application/acad', 'dxf' => 'application/dxf', 'dxr' => 'application/x-director',
|
||||
'eps' => 'application/postscript', 'exe' => 'application/octet-stream', 'ez' => 'application/andrew-inset',
|
||||
'flv' => 'video/x-flv', 'gtar' => 'application/x-gtar', 'gz' => 'application/x-gzip', 'hdf' => 'application/x-hdf',
|
||||
'hqx' => 'application/mac-binhex40', 'ips' => 'application/x-ipscript', 'ipx' => 'application/x-ipix',
|
||||
'js' => 'application/x-javascript', 'latex' => 'application/x-latex', 'lha' => 'application/octet-stream',
|
||||
'lsp' => 'application/x-lisp', 'lzh' => 'application/octet-stream', 'man' => 'application/x-troff-man',
|
||||
'me' => 'application/x-troff-me', 'mif' => 'application/vnd.mif', 'ms' => 'application/x-troff-ms',
|
||||
'nc' => 'application/x-netcdf', 'oda' => 'application/oda', 'pdf' => 'application/pdf',
|
||||
'pgn' => 'application/x-chess-pgn', 'pot' => 'application/mspowerpoint', 'pps' => 'application/mspowerpoint',
|
||||
'ppt' => 'application/mspowerpoint', 'ppz' => 'application/mspowerpoint', 'pre' => 'application/x-freelance',
|
||||
'prt' => 'application/pro_eng', 'ps' => 'application/postscript', 'roff' => 'application/x-troff',
|
||||
'scm' => 'application/x-lotusscreencam', 'set' => 'application/set', 'sh' => 'application/x-sh',
|
||||
'shar' => 'application/x-shar', 'sit' => 'application/x-stuffit', 'skd' => 'application/x-koan',
|
||||
'skm' => 'application/x-koan', 'skp' => 'application/x-koan', 'skt' => 'application/x-koan',
|
||||
'smi' => 'application/smil', 'smil' => 'application/smil', 'sol' => 'application/solids',
|
||||
'spl' => 'application/x-futuresplash', 'src' => 'application/x-wais-source', 'step' => 'application/STEP',
|
||||
'stl' => 'application/SLA', 'stp' => 'application/STEP', 'sv4cpio' => 'application/x-sv4cpio',
|
||||
'sv4crc' => 'application/x-sv4crc', 'swf' => 'application/x-shockwave-flash', 't' => 'application/x-troff',
|
||||
'tar' => 'application/x-tar', 'tcl' => 'application/x-tcl', 'tex' => 'application/x-tex',
|
||||
'texi' => 'application/x-texinfo', 'texinfo' => 'application/x-texinfo', 'tr' => 'application/x-troff',
|
||||
'tsp' => 'application/dsptype', 'unv' => 'application/i-deas', 'ustar' => 'application/x-ustar',
|
||||
'vcd' => 'application/x-cdlink', 'vda' => 'application/vda', 'xlc' => 'application/vnd.ms-excel',
|
||||
'xll' => 'application/vnd.ms-excel', 'xlm' => 'application/vnd.ms-excel', 'xls' => 'application/vnd.ms-excel',
|
||||
'xlw' => 'application/vnd.ms-excel', 'zip' => 'application/zip', 'aif' => 'audio/x-aiff', 'aifc' => 'audio/x-aiff',
|
||||
'aiff' => 'audio/x-aiff', 'au' => 'audio/basic', 'kar' => 'audio/midi', 'mid' => 'audio/midi',
|
||||
'midi' => 'audio/midi', 'mp2' => 'audio/mpeg', 'mp3' => 'audio/mpeg', 'mpga' => 'audio/mpeg',
|
||||
'ra' => 'audio/x-realaudio', 'ram' => 'audio/x-pn-realaudio', 'rm' => 'audio/x-pn-realaudio',
|
||||
'rpm' => 'audio/x-pn-realaudio-plugin', 'snd' => 'audio/basic', 'tsi' => 'audio/TSP-audio', 'wav' => 'audio/x-wav',
|
||||
'asc' => 'text/plain', 'c' => 'text/plain', 'cc' => 'text/plain', 'css' => 'text/css', 'etx' => 'text/x-setext',
|
||||
'f' => 'text/plain', 'f90' => 'text/plain', 'h' => 'text/plain', 'hh' => 'text/plain', 'htm' => 'text/html',
|
||||
'html' => 'text/html', 'm' => 'text/plain', 'rtf' => 'text/rtf', 'rtx' => 'text/richtext', 'sgm' => 'text/sgml',
|
||||
'sgml' => 'text/sgml', 'tsv' => 'text/tab-separated-values', 'tpl' => 'text/template', 'txt' => 'text/plain',
|
||||
'xml' => 'text/xml', 'avi' => 'video/x-msvideo', 'fli' => 'video/x-fli', 'mov' => 'video/quicktime',
|
||||
'movie' => 'video/x-sgi-movie', 'mpe' => 'video/mpeg', 'mpeg' => 'video/mpeg', 'mpg' => 'video/mpeg',
|
||||
'qt' => 'video/quicktime', 'viv' => 'video/vnd.vivo', 'vivo' => 'video/vnd.vivo', 'gif' => 'image/gif',
|
||||
'ief' => 'image/ief', 'jpe' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'jpg' => 'image/jpeg',
|
||||
'pbm' => 'image/x-portable-bitmap', 'pgm' => 'image/x-portable-graymap', 'png' => 'image/png',
|
||||
'pnm' => 'image/x-portable-anymap', 'ppm' => 'image/x-portable-pixmap', 'ras' => 'image/cmu-raster',
|
||||
'rgb' => 'image/x-rgb', 'tif' => 'image/tiff', 'tiff' => 'image/tiff', 'xbm' => 'image/x-xbitmap',
|
||||
'xpm' => 'image/x-xpixmap', 'xwd' => 'image/x-xwindowdump', 'ice' => 'x-conference/x-cooltalk',
|
||||
'iges' => 'model/iges', 'igs' => 'model/iges', 'mesh' => 'model/mesh', 'msh' => 'model/mesh',
|
||||
'silo' => 'model/mesh', 'vrml' => 'model/vrml', 'wrl' => 'model/vrml',
|
||||
'mime' => 'www/mime', 'pdb' => 'chemical/x-pdb', 'xyz' => 'chemical/x-pdb');
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
* @param object $controller
|
||||
*/
|
||||
function __construct(&$controller) {
|
||||
parent::__construct($controller);
|
||||
}
|
||||
|
||||
/**
|
||||
* Enter description here...
|
||||
*
|
||||
* @return unknown
|
||||
*/
|
||||
function render() {
|
||||
$name = null;
|
||||
$download = null;
|
||||
$extension = null;
|
||||
$id = null;
|
||||
$modified = null;
|
||||
$path = null;
|
||||
$size = null;
|
||||
extract($this->viewVars, EXTR_OVERWRITE);
|
||||
|
||||
if ($size) {
|
||||
$id = $id . "_$size";
|
||||
}
|
||||
$path = APP . $path . $id;
|
||||
|
||||
if (is_null($name)) {
|
||||
$name = $id;
|
||||
}
|
||||
|
||||
if (file_exists($path) && isset($extension) && array_key_exists($extension, $this->mimeType)) {
|
||||
$chunkSize = 1 * (1024 * 1024);
|
||||
$buffer = '';
|
||||
$fileSize = @filesize($path);
|
||||
$handle = fopen($path, 'rb');
|
||||
|
||||
if ($handle === false) {
|
||||
return false;
|
||||
}
|
||||
if (isset($modified) && !empty($modified)) {
|
||||
$modified = gmdate('D, d M Y H:i:s', strtotime($modified, time()).' GMT');
|
||||
} else {
|
||||
$modified = gmdate('D, d M Y H:i:s').' GMT';
|
||||
}
|
||||
|
||||
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
|
||||
header("Last-Modified: $modified");
|
||||
|
||||
if ($download) {
|
||||
$contentType = 'application/octet-stream';
|
||||
$agent = env('HTTP_USER_AGENT');
|
||||
|
||||
if (preg_match('%Opera(/| )([0-9].[0-9]{1,2})%', $agent) || preg_match('/MSIE ([0-9].[0-9]{1,2})/', $agent)) {
|
||||
$contentType = 'application/octetstream';
|
||||
}
|
||||
|
||||
header('Content-Type: ' . $contentType);
|
||||
header("Content-Disposition: attachment; filename=\"" . $name . '.' . $extension . "\";");
|
||||
header("Expires: 0");
|
||||
header('Accept-Ranges: bytes');
|
||||
header("Cache-Control: private", false);
|
||||
header("Pragma: private");
|
||||
|
||||
$httpRange = env('HTTP_RANGE');
|
||||
|
||||
if (isset($httpRange)) {
|
||||
list ($toss, $range) = explode("=", $httpRange);
|
||||
str_replace($range, "-", $range);
|
||||
|
||||
$size = $fileSize - 1;
|
||||
$length = $fileSize - $range;
|
||||
|
||||
header("HTTP/1.1 206 Partial Content");
|
||||
header("Content-Length: $length");
|
||||
header("Content-Range: bytes $range$size/$fileSize");
|
||||
fseek($handle, $range);
|
||||
} else {
|
||||
header("Content-Length: " . $fileSize);
|
||||
}
|
||||
} else {
|
||||
header("Content-Type: " . $this->mimeType[$extension]);
|
||||
header("Content-Length: " . $fileSize);
|
||||
}
|
||||
@ob_end_clean();
|
||||
|
||||
while (!feof($handle) && connection_status() == 0) {
|
||||
set_time_limit(0);
|
||||
$buffer = fread($handle, $chunkSize);
|
||||
echo $buffer;
|
||||
@ob_flush();
|
||||
@flush();
|
||||
}
|
||||
fclose($handle);
|
||||
return;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
||||
?>
|
|
@ -0,0 +1,33 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: default.ctp,v 1.1 2007-11-19 09:05:50 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs.view.templates.elements.email.html
|
||||
* @since CakePHP(tm) v 0.10.0.1076
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:50 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
?>
|
||||
<?php
|
||||
$content = explode("\n", $content);
|
||||
|
||||
foreach($content as $line):
|
||||
echo '<p> ' . $line . '</p>';
|
||||
endforeach;
|
||||
?>
|
|
@ -0,0 +1,27 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: default.ctp,v 1.1 2007-11-19 09:05:50 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs.view.templates.elements.email.text
|
||||
* @since CakePHP(tm) v 0.10.0.1076
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:50 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
?>
|
||||
<?php echo $content; ?>
|
|
@ -0,0 +1,39 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: default.ctp,v 1.1 2007-11-19 09:05:51 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs.view.templates.layouts.email.html
|
||||
* @since CakePHP(tm) v 0.10.0.1076
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:51 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
?>
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title><?php echo $title_for_layout;?></title>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<?php echo $content_for_layout;?>
|
||||
|
||||
<p>This email was sent using the <a href="http://cakephp.org">CakePHP Framework</a></p>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,31 @@
|
|||
<?php
|
||||
/* SVN FILE: $Id: default.ctp,v 1.1 2007-11-19 09:05:51 rflint%ryanflint.com Exp $ */
|
||||
/**
|
||||
*
|
||||
* PHP versions 4 and 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework <http://www.cakephp.org/>
|
||||
* Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* 1785 E. Sahara Avenue, Suite 490-204
|
||||
* Las Vegas, Nevada 89104
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @filesource
|
||||
* @copyright Copyright 2005-2007, Cake Software Foundation, Inc.
|
||||
* @link http://www.cakefoundation.org/projects/info/cakephp CakePHP(tm) Project
|
||||
* @package cake
|
||||
* @subpackage cake.cake.libs.view.templates.layouts.email.text
|
||||
* @since CakePHP(tm) v 0.10.0.1076
|
||||
* @version $Revision: 1.1 $
|
||||
* @modifiedby $LastChangedBy: phpnut $
|
||||
* @lastmodified $Date: 2007-11-19 09:05:51 $
|
||||
* @license http://www.opensource.org/licenses/mit-license.php The MIT License
|
||||
*/
|
||||
?>
|
||||
|
||||
<?php echo $content_for_layout;?>
|
||||
|
||||
This email was sent using the CakePHP Framework, http://cakephp.org.
|
||||
|
Загрузка…
Ссылка в новой задаче