avandenberghe / bbguild

Guild manager for phpBB 3.2
https://www.avathar.be
GNU General Public License v2.0
3 stars 0 forks source link

Wow API Import fails for two users from different realms in the same guild. #249

Closed AJH16 closed 9 years ago

AJH16 commented 10 years ago

The filtering for usernames in the wow armory importer does not work for multiple characters with the same name but on different realms in the same guild. This is due to incorrect filtering on only character name and guild. It should instead be on character name, realm and guild. The easiest fix for this is in the Member's class to add a hyphen and the realm name to both the newmembers and oldmembers arrays and then update the membership checks in the intersection and diff to use the same system. Additionally, the query of members from the DB needs to pull the realm.

Additionally, changes must be made to the Db schema as the unique constraint on the memberlist table is invalid. It should have the realm added to the unique constraint.

Finally, the makemember exists check must be updated to filter on realm as well or it will still not add the new member.

I can submit a patch if I can get access to submit as well.

AJH16 commented 10 years ago

I've added a pull request https://github.com/bbDKP/bbDKP/pull/251 for this fix.

avandenberghe commented 10 years ago

It's merged now, but i changed the unique index bit and moved that to the tableupdates function. $sql= "CREATE UNIQUE INDEX member_name ON " . $table_prefix . 'bbdkp_memberlist' . " (member_realm, member_name) ";

do you have any actual examples of crossrealm members in a guild ? to test it ?

AJH16 commented 10 years ago

Yeah, you can test it with First Regiment on Velen-US. There are toons from both Eonar and Velen there. There is also one character name used by one toon on Velen and one on Eonar.

avandenberghe commented 10 years ago

There's some issues with the forums / armory.

Internal Server Error 500 "An error occured. Please try again later." Error ID: 2KOBX

edit: for EU guilds it works

avandenberghe commented 10 years ago

http://us.battle.net/api/wow/guild/Velen/First%20Regiment

result received : {"status":"nok", "reason": "Guild not found."}

edit : any guild on that realm returns a 404.

avandenberghe commented 10 years ago

Then again, this guild works :

http://eu.battle.net/api/wow/guild/Lightbringer/obscure%20reference {"lastModified":1413327114000,"name":"Midgard","realm":"Lightbringer","battlegroup":"Cruelty / Crueldad","level":3,"side":0,"achievementPoints":10,"emblem":{"icon":141,"iconColor":"ffb1b8b1","border":0,"borderColor":"ff00317c","backgroundColor":"ff003582"}}

AJH16 commented 10 years ago

There is a bug right now with the guild API. I confirmed this with a friend of mine on the API team at Blizzard. They are working on it. It is related to the 6.0.2 updates. It impacts guilds on certain realms, but not all of them.

avandenberghe commented 10 years ago

ah ok. since i'm using the old API, i suppose they will only fix it for the new API. the new bbdkp wowapi library class is in the works now. https://github.com/bbDKP/bbDKP/commit/a00b945d2b4b85a245ca9daad4c01d278e0e89ab

AJH16 commented 10 years ago

Not sure. I'll ask my contact about it. I think they may be driven by the same back end though. 

Sent from my Verizon Wireless 4G LTE smartphone

-------- Original message -------- From: Sajaki notifications@github.com Date:10/24/2014 9:35 PM (GMT-05:00) To: bbDKP/bbDKP bbDKP@noreply.github.com Cc: AJH16 ajh16@nycap.rr.com Subject: Re: [bbDKP] Wow API Import fails for two users from different realms in the same guild. (#249)

ah ok. since i'm using the old API, i suppose they will only fix it for the new API. the new bbdkp wowapi library class is in the works now. a00b945

— Reply to this email directly or view it on GitHub.

avandenberghe commented 9 years ago

seems to be fixed now