// Caractères spéciaux : 1 = espace, 0 = saut de ligne
caracteres = new Array();
caracteres["latin"] = [192,193,194,195,196,197,198,199,268,200,201,202,203,204,205,206,207,304,321,208,209,210,211,212,213,214,216,338,217,218,219,220,352,222,376,381,222,0,224,225,226,227,228,229,230,231,269,162,232,233,234,235,236,237,238,239,322,240,241,242,243,244,245,246,248,339,249,250,251,252,353,223,253,255,382,254,183];
caracteres["grec"] = [913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,0,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969];
caracteres["cyrillique"] = [1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1032,1051,1033,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,0,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1112,1083,1113,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103];
caracteres["chinois"] = [12295,19968,20108,19977,22235,20116,20845,19971,20843,20061,21313,30334,21315,19975,0,38646,22777,36019,21441,32902,20237,38520,26578,25420,29590,25342,20336,20191,33836,0,20803,35282,20998,22291,27627,20870,0,24180,1,24179,25104,1,26157,21644,1,27491,22823,1,22283,27665,33775,20013,0,20013,21326,33775,20154,27665,20849,21644,22269,22283,1,20013,22269,20154,27665,37504,34892,1,39321,28207,1,26085,26412,22269];
caracteres["thailandais"] = [3663,3664,3665,3666,3667,3668,3669,3670,3671,3672,3673,3674,3675,0,3585,3586,3587,3588,3589,3590,3591,3592,3593,3594,3595,3596,3597,3598,3599,3600,3601,3602,3603,3604,3605,3606,3607,3608,3609,3610,3611,3612,3613,3614,3615,3616,3617,3618,3619,3620,3621,3622,3623,3624,3625,3626,3627,3628,3629,3630,3631,3632,0,3633,3636,3637,3638,3639,3640,3641,3642,3655,3656,3657,3658,3659,3660,3661,3662];
caracteres["hebreu"] = [1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514]
caracteres["arabe"] = [1569,1575,1570,1571,1573,1572,1574,1576,1578,1579,1577,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1,65020,0,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,0,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785];
caracteres["braille"] = [10241,10242,10243,10244,10245,10246,10247,10248,10249,10250,10251,10252,10253,10254,10255,10256,10257,10258,10259,10260,10261,10262,10263,10254,10265,10266,10267,10268,10269,10270,10271,10272,10273,10274,10275,10276,10277,10278,10279,10280,10281,10282,10283,10284,10285,10286,10287,10288,10289,10290,10291,10292,10293,10294,10295,10296,10297,10298,10299,10300,10301,10302,10303];
caracteres["indien"] = [2406,2407,2408,2409,2410,2411,2412,2413,2414,2415,0,2309,2310,2311,2312,2313,2314,2315,2316,2317,2318,2319,2320,2321,2322,2323,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2341,2342,2343,2344,2345,2346,2347,2348,2349,2350,2351,2352,2353,2354,2355,2356,2357,2358,2359,2360,2361,2384,0,2305,2306,2307,2364,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381];
caracteres["tamoul"] = [3047,3048,3049,3050,3051,3052,3053,3054,3055,0,2949,2950,2951,2952,2953,2954,2958,2959,2960,2962,2963,2964,2965,2969,2972,2974,2975,2979,2980,2984,2985,2986,2990,2991,2992,2993,2994,2995,2996,2997,2999,3000,3001,0,2946,2947,3006,3007,3008,3009,3010,3014,3015,3016,3018,3019,3020,3021,3031];
caracteres["singhalais"] = [3458,3459,3461,3462,3463,3463,3465,3466,3467,3468,3469,3470,3471,3474,3475,3476,3477,3478,3482,3483,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3507,3508,3509,3510,3511,3512,3513,3514,3515,3517,3520,3521,3522,3523,3524,3525,3526,3530,3535,3536,3537,3538,3539,3540,3542,3544,3545,3546,3547,3548,3549,3550,3551,3570,3571,3572];
caracteres["birman"] = [4160,4161,4162,4163,4164,4165,4166,4167,4168,4169,0,4096,4097,4098,4099,4100,4101,4102,4103,4104,4105,4106,4107,4108,4109,4110,4111,4112,4113,4114,4115,4116,4117,4118,4119,4120,4121,4122,4123,4124,4125,4126,4127,4128,4129,4140,4141,4142,4143,4144,4145,4146,4152,4153,4182,4183,4184,4185];
caracteres["telougou"] = [3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,0,3077,3078,3079,3080,3081,3082,3083,3084,3086,3087,3088,3090,3091,3092,3093,3094,3095,3096,3097,3098,3099,3100,3101,3102,3103,3104,3105,3106,3107,3108,3109,3110,3112,3114,3115,3116,3117,3118,3119,3120,3122,3123,3125,3126,3127,3128,3129,0,3073,3074,3075,3134,3135,3136,3138,3139,3140,3142,3143,3144,3146,3147,3148,3149,3157,3158];
caracteres["bengali"] = [2534,2535,2536,2537,2538,2539,2540,2541,2542,2543,0,2437,2438,2439,2440,2441,2442,2443,2444,2447,2448,2451,2452,2453,2454,2455,2456,2457,2458,2459,2460,2461,2462,2463,2464,2465,2466,2467,2468,2469,2470,2471,2472,2474,2475,2476,2477,2478,2479,2480,2482,2486,2487,2488,2489,2493,2524,2525,2527,2528,2529,0,2433,2434,2435,2492,2494,2495,2496,2497,2498,2499,2500,2503,2504,2507,2508,2509,2519,2530,2531];
caracteres["lao"] = [3792,3793,3794,3795,3796,3797,3798,3799,3800,3801,0,3713,3714,3716,3719,3720,3754,3722,3725,3732,3733,3734,3735,3737,3738,3739,3740,3741,3742,3743,3745,3746,3747,3749,3751,3755,3757,3758,0,3760,3776,3762,3771,3761,3764,3765,3767,3766,3789,3768,3769,3778,3780,3779,3773];

function afficherAlphabets(alphabet, id_textarea)
{
	if(alphabet=="aucun")
	{
		document.getElementById('alphabets_'+id_textarea).style.display='none';
	}
	else
	{
		if(alphabet=='hebreu' || alphabet=='arabe') var direction = 'droite';
		else var direction = 'gauche';
		var classe = direction+' '+alphabet;
		var contenu = '<p class="'+classe+'">';
		for(i=0; i<caracteres[alphabet].length; i++)
		{
			var car = caracteres[alphabet][i];
			if(car==0) contenu += '</p><p class="'+classe+'">';
			else if(car==1) contenu += '<span class="separateur_'+direction+'"> </span>';
			else
			{
				contenu += '<a href="javascript:ajouterLettre(\'&#'+car+';\', \''+id_textarea+'\')">';
				if(car==3633
					|| car==3636
					|| car==3637
					|| car==3638
					|| car==3639
					|| car==3640
					|| car==3641
					|| car==3642
					|| car==3655
					|| car==3656
					|| car==3657
					|| car==3658
					|| car==3659
					|| car==3660
					|| car==3661
					|| car==3662
					|| car==4140
					|| car==4141
					|| car==4142
					|| car==4143
					|| car==4144
					|| car==4145
					|| car==4146
					|| car==4152
					|| car==4153
					|| car==4182
					|| car==4183
					|| car==4184
					|| car==4185)
					contenu += 'o';
				contenu += '&#'+car+';</a>';
			}
		}
		contenu +='<div style="clear:both;"></div></p>';
		document.getElementById('alphabets_'+id_textarea).innerHTML = contenu;
		document.getElementById('alphabets_'+id_textarea).style.display='block';
	}
}

function ajouterLettre(lettre, id_textarea)
{
	var champ = document.getElementById(id_textarea);
	var scroll = champ.scrollTop;
	if(champ.selectionStart>=0) // Fonctionne avec FF
	{
		var debut = champ.value.substring(0, champ.selectionStart);
		var fin = champ.value.substring(champ.selectionEnd);
		champ.value = debut + lettre + fin;
		champ.focus();
		champ.setSelectionRange(debut.length+lettre.length, champ.value.length-fin.length);
	}
	else if(champ.createTextRange)  // Fonctionne avec IE
	{
		if(document.selection.createRange().text.length > 0)
		{
			var range = document.selection.createRange();
			range.text = lettre;
			range.collapse();
			range.select();
		}
		else
		{
			champ.focus();
			champ.curseur = document.selection.createRange();
			champ.curseur.text = lettre;
		}
	}
	else // Fonctionne avec le reste
	{
		champ.value += lettre;
		champ.focus();
	}
	champ.scrollTop = scroll;
}
