From dcb4d6566a3b0e03493c071931195cd4a6e8d7a3 Mon Sep 17 00:00:00 2001 From: DarkPhoenix Date: Tue, 26 Apr 2011 14:57:58 +0400 Subject: [PATCH] Make sure that items with forced group do not appear in their original group --- service/fit.py | 4 ++-- service/market.py | 7 +++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/service/fit.py b/service/fit.py index 9aa338cc3..8dd6a44ad 100644 --- a/service/fit.py +++ b/service/fit.py @@ -98,10 +98,10 @@ class Fit(object): def groupHasFits(self, id): sMkt = Market.getInstance() - grp = sMkt.getGroup(id) + grp = sMkt.getGroup(id, eager=("items", "group")) items = sMkt.getItemsByGroup(grp) for item in items: - if self.countFitsWithShip(item.id) > 0: + if self.countFitsWithShip(item.ID) > 0: return True return False diff --git a/service/market.py b/service/market.py index e8a750163..2c839d398 100644 --- a/service/market.py +++ b/service/market.py @@ -464,7 +464,7 @@ class Market(): def getItemsByGroup(self, group): """Get items assigned to group""" - items = group.items + items = set(filter(lambda item: self.getPublicityByItem(item) and item.group == group, group.items)) return items def getItemsByMarketGroup(self, mg, vars=True): @@ -563,9 +563,8 @@ class Market(): def getShipList(self, grpid): """Get ships for given group id""" - grp = self.getGroup(grpid, eager = ("items", "items.marketGroup", "items.attributes")) - ships = set(filter(lambda ship: self.getPublicityByItem(ship), grp.items)) - #ships.append((item.ID, item.name, item.race)) + grp = self.getGroup(grpid, eager = ("items", "items.group", "items.attributes")) + ships = self.getItemsByGroup(grp) return ships def getShipListDelayed(self, id, callback):