diff --git a/rest/horarios.php b/rest/horarios.php
index 2ef619c..f2fe335 100644
--- a/rest/horarios.php
+++ b/rest/horarios.php
@@ -19,6 +19,14 @@ require_once $ruta_superior."/include/bd_pdo_rest.php";
require_once __DIR__."/token.php";
require_once __DIR__."/LogCambios.php";
+function quitaAcentos($cadena) {
+ // Normalizar la cadena para descomponer caracteres acentuados en sus formas base y acentos
+ $cadenaNormalizada = Normalizer::normalize($cadena, Normalizer::FORM_D);
+ // Utilizar una expresión regular para eliminar los caracteres diacríticos
+ $cadenaSinAcentos = preg_replace('/\p{M}/u', '', $cadenaNormalizada);
+ return $cadenaSinAcentos;
+}
+
//--------------ACTUALIZA HORARIOS--------------------------
if(!empty($_GET["fecha"])){
$hoy = $_GET["fecha"];
@@ -271,7 +279,11 @@ try{
//------------------
// Encontrar los "hash" que están en $sgu pero no están en $bd
- $hashes_no_en_sgu = array_diff($hashes_bd, $hashes_sgu);
+ //$hashes_no_en_sgu = array_udiff($hashes_bd, $hashes_sgu, 'strcasecmp');
+ $hashes_no_en_sgu = array_udiff($hashes_bd, $hashes_sgu, function($a, $b){
+ return strcasecmp(quitaAcentos($a), quitaAcentos($b));
+ });
+
if($debug) echo "hashes_no_en_sgu ".count($hashes_no_en_sgu)."
";
if(count($hashes_no_en_sgu)>0){
@@ -305,7 +317,10 @@ try{
}
// Encontrar los "hash" que están en $sgu pero no están en $bd
- $hashes_no_en_bd = array_diff($hashes_sgu, $hashes_bd);
+ //$hashes_no_en_bd = array_udiff($hashes_sgu, $hashes_bd, 'strcasecmp');
+ $hashes_no_en_bd = array_udiff($hashes_sgu, $hashes_bd, function($a, $b){
+ return strcasecmp(quitaAcentos($a), quitaAcentos($b));
+ });
//echo "hashes_no_en_bd ".count($hashes_no_en_bd)."
";
@@ -427,4 +442,4 @@ try{
}
-?>
\ No newline at end of file
+?>