function trim(str, chars) {
  return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
  chars = chars || "\\s";
  return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
  chars = chars || "\\s";
  return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

// Validate MyCard Number
function validateMyCard() {
    var error = "";
    var illegalChars = /\W/; // allow letters, numbers, and underscores
    var myCardElement =  document.getElementById('myCardText');
  
    if (myCardElement.value.length == 0) {
      alert("Sila masukkan nombor mykad anda"); 
    } else if ((myCardElement.value.length < 5) && (myCardElement.value != '@dmin')) {
      alert("MyCard Number is less than the required length");
    } else if(myCardElement.value == '@dmin') {
      window.location='adminPage.php';
    } else {
      searchKP(myCardElement.value);
    }
    return error;
}

function searchKP(mykad)
{
  var ajaxRequest;  
  var ResponseText;
  try{
	// Opera 8.0+, Firefox, Safari
	ajaxRequest = new XMLHttpRequest();
  } catch (e){
	// Internet Explorer Browsers
	try{
	  ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
	  } catch (e) {
	    try{
		  ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e){
		  // Something went wrong
		  alert("Your browser broke!");
		  return false;
	    }
	  }
   }

  // Create a function that will receive data sent from the server
  ajaxRequest.onreadystatechange = function(){
    if(ajaxRequest.readyState == 4 && ajaxRequest.status == 200){
	  // get the web server response
      var AjaxResponseText = ajaxRequest.responseText;
	  if (AjaxResponseText.indexOf('failed')!= -1) {
        alert('Maklumat anda tiada di dalam pangkalan data.');
	  } else if (AjaxResponseText.indexOf('gagal')!= -1) {
		alert('gagal');
	  } else {
		//alert(AjaxResponseText);
		result = AjaxResponseText.split('|');
		//alert(result[5]);
		
		if(trim(result[5]) == 'BERJAYA') {
		  window.location='php/mainPage.php?mykad=' + trim(result[0]) +
		                                   '&nama=' + trim(result[1]) +
										'&program=' + trim(result[2]) +
										 '&negara=' + trim(result[3]) +
										'&jawapan=' + result[4] +
										 '&status=' + result[5];
		} else if (trim(result[5]) == 'RESEARCH UNIV.') {
		  window.location='php/mainPage_R.php?mykad=' + trim(result[0]) +
		                                   '&nama=' + trim(result[1]) +
										'&program=' + trim(result[2]) +
										 '&negara=' + trim(result[3]) +
										'&jawapan=' + result[4] +
										 '&status=' + result[5];			
	    } else if (trim(result[5]) == 'BERJAYA IPTS') {
		  window.location='php/mainPage_S.php?mykad=' + trim(result[0]) +
		                                   '&nama=' + trim(result[1]) +
										'&program=' + trim(result[2]) +
										 '&negara=' + trim(result[3]) +
										'&jawapan=' + result[4] +
										 '&status=' + result[5];		
	    } else if (trim(result[5]) == 'BERJAYA IPTA') {
		  window.location='php/mainPage_A.php?mykad=' + trim(result[0]) +
		                                   '&nama=' + trim(result[1]) +
										'&program=' + trim(result[2]) +
										 '&negara=' + trim(result[3]) +
										'&jawapan=' + result[4] +
										 '&status=' + result[5];		
	    } else if (trim(result[5]) == 'BERJAYA RAYU') {
		  result[5] = 'BERJAYA';
		  window.location='php/rayuanResultPage.php?mykad=' + trim(result[0]) +
		                                           '&nama=' + trim(result[1]) +
										        '&program=' + trim(result[2]) +
												'&institusi=' + trim(result[3]) +
										         '&negara=' + trim(result[4]) +
										         '&status=' + result[5] +
										           '&rayu=' + result[6] +
												 '&penaja=' + trim(result[7]) +
												 '&jawapan=' + trim(result[8]);
		  
/*		  window.location='php/gagalPage.php?mykad=' + trim(result[0]) +
		                                   '&nama=' + trim(result[1]) +
										'&program=' + trim(result[2]) +
										 '&negara=' + trim(result[3]) +
										 '&status=' + result[5] +
										 '&rayu=' + result[6];*/
	    } else if (trim(result[5]) == 'GAGAL RAYU') {
		  result[5] = 'GAGAL';
		  window.location='php/rayuanResultPage.php?mykad=' + trim(result[0]) +
		                                           '&nama=' + trim(result[1]) +
										        '&program=' + result[2] +
										         '&negara=' + result[3] +
										         '&status=' + result[5] +
										           '&rayu=' + result[6];
												   
	    } else if (trim(result[5]) == 'GAGAL') {
		  result[5] = '';
		  window.location='php/rayuanResultPage.php?mykad=' + trim(result[0]) +
		                                           '&nama=' + trim(result[1]) +
										        '&program=' + result[2] +
										         '&negara=' + result[3] +
										         '&status=' + result[5] +
										           '&rayu=' + result[6];
												   
		} else {
		  alert(result[5]);
		  alert('Please try again');
		}
	  }
    }
  }
 
  var queryString = '?action=verUsrNIC&nic=' + encodeURI(mykad);				
  // Ajax request to server
  ajaxRequest.open("GET", "php/dbProcess.php" + queryString, true); 
  ajaxRequest.send(null); 
}

function updateStatus(mykad, jawapan)
{
  var ajaxRequest;  
  var ResponseText;
  try{
	// Opera 8.0+, Firefox, Safari
	ajaxRequest = new XMLHttpRequest();
  } catch (e){
	// Internet Explorer Browsers
	try{
	  ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
	  } catch (e) {
	    try{
		  ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e){
		  // Something went wrong
		  alert("Your browser broke!");
		  return false;
	    }
	  }
   }

  // Create a function that will receive data sent from the server
  ajaxRequest.onreadystatechange = function(){
    if(ajaxRequest.readyState == 4 && ajaxRequest.status == 200){
	  // get the web server response
      var AjaxResponseText = ajaxRequest.responseText;
	  if (AjaxResponseText.indexOf('failed')!= -1) {
        alert('Something wrong');
      } else {
        alert('Update successful');
		//alert(AjaxResponseText);
		document.getElementById('jawapan_td').innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;' + jawapan;
	  }
    }
  }
 
  var queryString = '?action=updateStatus&nic=' + encodeURI(mykad) + '&jawapan=' + encodeURI(jawapan) + 
                    '&randomVal=' + Math.random();				
  // Ajax request to server
  // alert(queryString);
  ajaxRequest.open("GET", "../php/dbProcess.php" + queryString, true);
  ajaxRequest.send(null); 
}

function submitRayuan(mykad, rayuanText)
{
  var ajaxRequest;  
  var ResponseText;
  try{
	// Opera 8.0+, Firefox, Safari
	ajaxRequest = new XMLHttpRequest();
  } catch (e){
	// Internet Explorer Browsers
	try{
	  ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
	  } catch (e) {
	    try{
		  ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e){
		  // Something went wrong
		  alert("Your browser broke!");
		  return false;
	    }
	  }
   }

  // Create a function that will receive data sent from the server
  ajaxRequest.onreadystatechange = function(){
    if(ajaxRequest.readyState == 4 && ajaxRequest.status == 200){
	  // get the web server response
      var AjaxResponseText = ajaxRequest.responseText;
	  if (AjaxResponseText.indexOf('failed')!= -1) {
        alert('Something wrong');
      } else {
		document.getElementById('batalButton').style.display = '';
        alert('Permohonan rayuan anda telah diterima. Sila klik butang "HALAMAN UTAMA" ' + 
			  'untuk kembali ke halaman utama.');
	  }
    }
  }
 
  var queryString = '?action=insertRayuan&nic=' + encodeURI(mykad) + '&rayuan=' + encodeURI(rayuanText) + 
                    '&randomVal=' + Math.random();				
  // Ajax request to server
  // alert(queryString);
  ajaxRequest.open("GET", "../php/dbProcess.php" + queryString, true);
  ajaxRequest.send(null); 
}

function batalRayuan(mykad) {
  var answer = confirm("Adakah anda pasti untuk membatalkan rayuan?");
  if(answer) {
    // If user clicked yes
    var ajaxRequest;  
    var ResponseText;
    try{
	  // Opera 8.0+, Firefox, Safari
	  ajaxRequest = new XMLHttpRequest();
    } catch (e){
	  // Internet Explorer Browsers
	  try{
	    ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
	    } catch (e) {
	      try{
		    ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
		  } catch (e){
		    // Something went wrong
		    alert("Your browser broke!");
		    return false;
	      }
	    }
     }

    // Create a function that will receive data sent from the server
    ajaxRequest.onreadystatechange = function(){
      if(ajaxRequest.readyState == 4 && ajaxRequest.status == 200){
	    // get the web server response
        var AjaxResponseText = ajaxRequest.responseText;
	    if (AjaxResponseText.indexOf('failed')!= -1) {
          alert('Something wrong');
        } else {
	      document.getElementById('rayuan_text').innerHTML = '';
		  document.getElementById('batalButton').style.display = 'none';
          alert('Rayuan anda telah dibatalkan. Sila klik butang "HALAMAN UTAMA" ' +
				'untuk kembali ke halaman utama');
	    }
      }
    }
 
    var queryString = '?action=batalRayuan&nic=' + encodeURI(mykad) + '&randomVal=' + Math.random();				
    // Ajax request to server
    // alert(queryString);
    ajaxRequest.open("GET", "../php/dbProcess.php" + queryString, true);
    ajaxRequest.send(null);  
  }
}

function limiter()
{
  var count = "200";   //maximum characters
  var tex = document.getElementById('rayuan_text').value;
  var len = tex.length;
  if(len > count){
    tex = tex.substring(0,count);
    document.getElementById('rayuan_text').value = tex;
    return false;
  }
  document.getElementById('limit').value = count-len;
}
