From 1ba0d26fdd1e673dfcaefc87e2fa38f08cac61ad Mon Sep 17 00:00:00 2001
From: Dan Brown <ssddanbrown@googlemail.com>
Date: Wed, 2 Apr 2025 15:17:17 +0100
Subject: [PATCH] Sort Rules: Updated name comparison to not ignore non-ascii
 chars

Related to #5550 and #5542
---
 app/Sorting/SortSetOperationComparisons.php | 4 ++--
 tests/Sorting/SortRuleTest.php              | 2 ++
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/app/Sorting/SortSetOperationComparisons.php b/app/Sorting/SortSetOperationComparisons.php
index e506e9a13..cb20e1860 100644
--- a/app/Sorting/SortSetOperationComparisons.php
+++ b/app/Sorting/SortSetOperationComparisons.php
@@ -14,12 +14,12 @@ class SortSetOperationComparisons
 {
     public static function nameAsc(Entity $a, Entity $b): int
     {
-        return strtolower(ASCII::to_transliterate($a->name)) <=>  strtolower(ASCII::to_transliterate($b->name));
+        return strtolower(ASCII::to_transliterate($a->name, null)) <=> strtolower(ASCII::to_transliterate($b->name, null));
     }
 
     public static function nameDesc(Entity $a, Entity $b): int
     {
-        return strtolower(ASCII::to_transliterate($b->name)) <=>  strtolower(ASCII::to_transliterate($a->name));
+        return strtolower(ASCII::to_transliterate($b->name, null)) <=> strtolower(ASCII::to_transliterate($a->name, null));
     }
 
     public static function nameNumericAsc(Entity $a, Entity $b): int
diff --git a/tests/Sorting/SortRuleTest.php b/tests/Sorting/SortRuleTest.php
index b0f20cba5..4a9d3a7b3 100644
--- a/tests/Sorting/SortRuleTest.php
+++ b/tests/Sorting/SortRuleTest.php
@@ -200,6 +200,8 @@ class SortRuleTest extends TestCase
             "bread",
             "Éclaire",
             "egg",
+            "É😀ire",
+            "É🫠ire",
             "Milk",
             "pizza",
             "Tomato",