
// 	Author: Joju John	
// 	$Date: 2009-03-25	
<!-- 	Modified: 	 -->
<!-- 	$Date: 	 -->
//   malayalam_keyboard.js



// ------------malayalam key board------------ functions

function over(x) {
	if (x.id.length > 0) {
		x.style.border = '1px solid blue';
		//document.getElementById(x.id).style.backgroundColor= "red";
		x.style.backgroundColor= "#00ffdd";
		x.style.cursor = 'hand';
		x.style.cursor = 'pointer';
		
		
	}
}

function out(x) {
	if (x.id.length > 0) {
	        x.style.border = '1px solid #699';
		//x.style.border = '1px solid #000';
		x.style.cursor = 'default';
		x.style.backgroundColor= "white";
	}
}

function down(x) {
    if (x.id.length > 0) {
       
        if(x.id == "delete") {

        } else if(x.id == "backspace") {
            call_backspace();
        } else if(x.id == "enter") {
            call_enter();
        } else if(x.id == "clear_all") {
            call_clear();
        } else {
        
          call_rest(x.id)
        }
        
        call_default_keydown();
    }
}


function call_default_keydown()
{

}
function call_clear() 
{
    clear_dict_letter(); 
}

function call_backspace() 
{
    backspace_dict_letter();
}

function call_enter() 
{
     enter_dict_letter(); 
}


function call_rest(letter) 
{
    post_dict_letter(letter);
}


function cw_get_malayalam_keyboard() 
{
   var buffer ='';
      
   document.getElementById("mal_keyboard_span_id").innerHTML = get_malayalam_keyboard_str();

}	
	
	
function get_malayalam_keyboard_str() 
{
  var buffer = "";
  callb = "onmouseover=\"over(this);\" onmouseout = \"out(this);\"  onmousedown = \"down(this);\" ";
  callbclear = "onmouseover=\"over(this);\" onmouseout = \"out(this);\"  onmousedown = \"call_clear();\" ";
  callbenter = "onmouseover=\"over(this);\" onmouseout = \"out(this);\"  onmousedown = \"call_enter();\" ";
  var cols = 15;
  var j = 0;
  buffer  = "<table class=\"key\" cellpadding=\"0\" cellspacing=\"0\">";
  
  var key_mal_letters_display =new Array( 
  
   "&#3333;","&#3334;","&#3335;","&#3336;","&#3337;","&#3338;","&#3339;","&#3342;","&#3343;","&#3344;","&#3346;","&#3347;","&#3348;","&#3333;&#3330;","&#3333;&#3331;"
  ,"&nbsp;", "&#3390;","&#3391;","&#3392;","&#3393;","&#3394;","&#3395;","&#3398;","&#3399;","&#3400;","&#3402;","&#3403;","&#3415;","&#3330;", "&#3331;"
  ,"&#3349;","&#3350;","&#3351;","&#3352;","&#3353;","&#3353;&#3405;&#3349;","&#3375;","&#3376;","&#3378;","&#3381;", "X","X","X","X", "&#3354;&#3368;&#3405;&#3366;&#3405;&#3376;&#3349;&#3378;&nbsp;&nbsp;(&#3405;)"
  ,"&#3354;","&#3355;","&#3356;","&#3357;","&#3358;","&#3358;&#3405;&#3354;","&#3360;&#3405;&#3375;","&#3360;&#3405;&#3376;","&#3360;&#3405;&#3378;","&#3360;&#3405;&#3381;", "&#3363;&#3405;&#8205;", "&#3368;&#3405;&#8205;", "&#3376;&#3405;&#8205;", "&#3378;&#3405;&#8205;", "&#3379;&#3405;&#8205;"
  ,"&#3359;","&#3360;","&#3361;","&#3362;","&#3363;","&#3363;&#3405;&#3359;","&#3382;","&#3383;","&#3384;","&#3385;", "X","X","X","X", "Clear Cell"
  ,"&#3364;","&#3365;","&#3366;","&#3367;","&#3368;","&#3368;&#3405;&#3364;","&#3377;","&#3379;","&#3380;", "X","X","&nbsp;","Y","Y", "&nbsp;"
  ,"&#3370;","&#3371;","&#3372;","&#3373;","&#3374;","&#3374;&#3405;&#3370;","&#3377;&#3405;&#3377;","&#3349;&#3405;&#3383;", "X","X","X","Backspace"  
  );
  var key_mal_letters_value =new Array(
  
   "&#3333;","&#3334;","&#3335;","&#3336;","&#3337;","&#3338;","&#3339;","&#3342;","&#3343;","&#3344;","&#3346;","&#3347;","&#3348;","&#3333;&#3330;","&#3333;&#3331;"
  ,"",       "&#3390;","&#3391;","&#3392;","&#3393;","&#3394;","&#3395;","&#3398;","&#3399;","&#3400;","&#3402;","&#3403;","&#3415;","&#3330;",       "&#3331;"
  ,"&#3349;","&#3350;","&#3351;","&#3352;","&#3353;","&#3353;&#3405;&#3349;","&#3375;","&#3376;","&#3378;","&#3381;","X","X","X","X", "&#3405;"  
  ,"&#3354;","&#3355;","&#3356;","&#3357;","&#3358;","&#3358;&#3405;&#3354;","&#3405;&#3375;","&#3405;&#3376;","&#3405;&#3378;","&#3405;&#3381;", "&#3363;&#3405;&#8205;", "&#3368;&#3405;&#8205;", "&#3376;&#3405;&#8205;", "&#3378;&#3405;&#8205;", "&#3379;&#3405;&#8205;"
  ,"&#3359;","&#3360;","&#3361;","&#3362;","&#3363;","&#3363;&#3405;&#3359;","&#3382;","&#3383;","&#3384;","&#3385;", "X","X","X","X", "clear_all"
  ,"&#3364;","&#3365;","&#3366;","&#3367;","&#3368;","&#3368;&#3405;&#3364;","&#3377;","&#3379;","&#3380;", "X","X","delete","Y","Y", "enter"
  ,"&#3370;","&#3371;","&#3372;","&#3373;","&#3374;","&#3374;&#3405;&#3370;","&#3377;&#3405;&#3377;","&#3349;&#3405;&#3383;", "X","X","X","backspace" 
  );  

  var key_mal_letters_colour =new Array(
     "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black" 
   , "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black", "black" 
   , "blue" , "blue" , "blue" , "blue" , "blue" , "green", "black", "black", "black", "black", "black", "black", "black", "black", "red" 
   , "blue" , "blue" , "blue" , "blue" , "blue" , "green", "gray" , "gray" , "gray" , "gray" , "green", "green", "green", "green", "green" 
   , "blue" , "blue" , "blue" , "blue" , "blue" , "green", "black", "black", "black", "black", "black", "black", "black", "black", "black" 
   , "blue" , "blue" , "blue" , "blue" , "blue" , "green", "black", "black", "black", "black", "black", "black", "black", "black", "black" 
   , "blue" , "blue" , "blue" , "blue" , "blue" , "green", "green", "green", "black", "black", "black", "black", "black", "black", "black" 
  );  
  
  var key_mal_letters_manglish = new Array(
    "a",   "aa",   "i",   "ee",   "u",   "oo",   "r^",  "e",   "E",   "ai",   "o", "O", "au", "am_", "aH"
   ,"",    "aa",   "i",   "ee",   "u",   "oo",   "r^",  "e",   "E",   "ai",   "o", "O", "au", "m_", "H"
   ,"ka",  "kha",  "ga",  "gha",  "nga", "nKa",  "ya",  "ra",  "la",  "va",   "~(tilde)", "", "", "", "~(tilde)"
   ,"cha", "chha", "ja",  "jha",  "nja", "njcha", "~ya", "~ra", "~la", "~va",  "N_", "n_", "r_", "l_", "L_"
   ,"Ta",  "Tha",  "Da",  "Dha",  "Na",  "NTa",  "Sa",  "sha", "sa",  "ha",   "", "", "", "", "wipe the box"
   ,"tha", "thha", "da",  "dha",  "na",  "ntha", "Ra",  "La",  "zha", "", "", "", "", "", ""
   ,"pa",  "pha",  "ba",  "bha",  "ma",  "mpa",  "tta", "ksha", "", "", "", "", "", "", ""
   
  );
  
  col_span_count=0;
  row_span_count=0;
  colourb = "";
  for (var i = 0; i < 102; i++) {
	j++;
	colourb = "<font color=\""+ key_mal_letters_colour[i] + "\"> ";
	spanb   = "<span title=\""+ key_mal_letters_manglish[i] + "\"> ";
	colour_span_end = "</font></span>";
	if (j == 0) buffer  = buffer  + "<tr>";
	if (key_mal_letters_value[i] == "Y") {
			   col_span_count ++;
			   row_span_count=2;
	} else if (key_mal_letters_value[i] == "X") {
	   col_span_count ++;
	} else {
	   if (row_span_count > 0) {
	      col_span_count ++;
	      buffer  = buffer  + "<td id=\"" + key_mal_letters_value[i] + "\" "+ callb +" rowspan=\""+row_span_count+"\"  colspan=\""+col_span_count+"\" >" + spanb +colourb + key_mal_letters_display[i] + "</td>";
	      col_span_count=0;
	      row_span_count=0;
	   } else  if ( col_span_count > 0) {
	      col_span_count ++;
	      buffer  = buffer  + "<td id=\"" + key_mal_letters_value[i] + "\" "+ callb +" colspan=\""+col_span_count+"\" >" + spanb +colourb + key_mal_letters_display[i] + "</td>";
	      col_span_count=0;
	   } else {
	      buffer  = buffer  + "<td id=\"" + key_mal_letters_value[i] + "\" "+ callb +" >" + spanb + colourb + key_mal_letters_display[i] + colour_span_end+ "</td>";
	   }
	}
	
	if (j == cols) {
		buffer  = buffer  +"</tr>";
		j = 0;
	}
  }  
  buffer  = buffer  +"</tr>";
  buffer  = buffer  +"</table>";

  return buffer;
}


