Community Guild Roster Sort by Zone and Last Online Bug - Problem and Fix

First, some history:

  1. When BfA was first released, Communities were included with a new Guild Roster view which did not have the Last Online column.
  2. After many complaints, patch 8.0.1.27144 was released which changed the Zone column in the new Guild Roster view to display either the Zone Name (if member was logged on)
    or the Last Online time (if the member was offline).
  3. However from patch 8.0.1.27144 through to 10.1.0.49426, clicking on the Zone column in the new Guild Roster view only sorts all the guild members by Zone Name.
    It only cosmetically displays the Last Online time instead of the Zone name, but it is still sorted in Zone name sequence only.
  4. Guild leaders and guild officers need to be able to see the Last Online time in sorted sequence so that they can easily see the members
    who have not logged on for a long time and then remove them.
  5. The classic Guild Roster still existed in Retail, before 10.1, so guild officers could use that as a work-around to see the sorted Last Online (Player Status) view.
  6. However, now that the classic guild roster has been removed in 10.1, guild officers cannot see the Last Online time sorted because the Zone column sort is still broken.

Coding Bug:
7. From BfA 8.0.1 through DF 10.1 (see 3. above), in the CommunitiesMemberList.lua file, the CommunitiesMemberListMixin:SortByColumnIndex function, has always had the coding
to correctly sort the Zone column by Zone name and Last Online time.
8. However, since that Zone column change in BfA 8.0.1, the correctly sorted member list is immediately re-sorted by some old coding which calls the CommunitiesUtil.SortMemberInfoWithOverride function (presumably that old coding was to fix some previous sort bug).
This overrides the sort sequence back to Zone name sequence only, so it loses the sorted sequence by Last Online time.

Bug Fix:
9. In the CommunitiesMemberListMixin:SortByColumnIndex function, do not override the correctly sorted member list if the sortAttribute is equal to “zone”.
That is, the 2-line code bug fix as follows:

if sortAttribute ~= “zone” then
CommunitiesUtil.SortMemberInfoWithOverride(…);
end

Urgency:
10. Guild officers and guild members urgently need this bug to be fixed so that they can see the Last Online time sorted correctly in the Zone column.
Now that the old guild roster has been removed in Retail 10.1, there is no work-around now, so this bug fix has become critical priority for all guilds, to be able to admin their members by viewing the most inactive players by their Last Online times.

4 Likes

This REALLY needs to be fixed :smiley: Thanks!

2 Likes

Definitely. Can’t believe it has been allowed to sit there for so long … Blizzard … PLEEEASE have someone assigned to, at least part time, look out for us poor guild leaders!

Thank you so much to Xuulu for working it out, and providing Blizzard with a fix that hopefully they will be able to implement quickly, before too many guild leaders lose their minds :stuck_out_tongue:

And thank you Arkaan for being the guild leader’s saviour!

For any guild leader (or anyone at Blizzard who wants to give Arkaan a job :stuck_out_tongue: ) - this is the only thing keeping me sane: https://www.curseforge.com/wow/addons/guild-roster-manager

2 Likes

I’ve come here as a guild leader who has been using /guildroster, and no longer can use it. Please, Blizzard, fix this!

3 Likes

May the Guild Gods see this post and fix our YEARS LONG problem ASAP!!!

2 Likes

I just wanted to spread the word that “Guild Roster Manager” has added a custom guild roster frame you can sort by Last Online, in the meantime.

3 Likes

They fixed it everyone! Blizzard finally fixed the sorting issue after almost 3 years! Huzzah!

1 Like

HOLY COW!! I can’t believe it, but they did!! After reading this, I logged on and if you click on ZONE, it DOES put all offline member by LAST ON!

Elra, thank you so much for posting this!!

1 Like