Bug 14621: Messaging preferences table needs to be sorted
authorLari Taskula <larit@student.uef.fi>
Thu, 30 Jul 2015 15:34:49 +0000 (18:34 +0300)
committerMason James <mtj@kohaaloha.com>
Mon, 28 Sep 2015 12:14:33 +0000 (01:14 +1300)
I have been working with messaging preferences and I noticed a weird issue in Firefox on Ubuntu.

On messaging preferences page, the table is unsorted and the content in rows are generated randomly
on every page refresh. When you select/deselect checkboxes and refresh the page (without posting the changes),
Firefox will remember your choices. Now the issue is that when the table is unsorted and the rows keep
changing on page refresh, Firefox has trouble remembering your choices. This makes it appear as if the
checkboxes are magically changing values on each page refresh.

Here is a patch that prevents this problem by sorting the messaging settings.

Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>

Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit 46ac35f8e11c06a784ca309b0dc876aff9469edb)
Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
(cherry picked from commit 6c44d1f4645b4c98577d6af23b05b9608b421253)
Signed-off-by: Liz Rea <wizzyrea@gmail.com>

C4/Members/Messaging.pm

index 6be8347..98a7f4a 100644 (file)
@@ -217,6 +217,9 @@ END_SQL
     }
 
     my @return = values %$choices;
+
+    @return = sort { $a->{message_attribute_id} <=> $b->{message_attribute_id} } @return;
+
     # warn( Data::Dumper->Dump( [ \@return ], [ 'return' ] ) );
     return \@return;
 }