def setOpener(self, view):
     self.__opener = view
     eventData = self.__opener.eventData
     leaderboards = eventData.getLeaderboards()
     leaderboardID = leaderboards[0][0]
     if eventData.getType() == EVENT_TYPE.VEHICLE:
         currentVehicleCD = g_currentVehicle.item.intCD if g_currentVehicle.item else None
         _leaderboardID = eventData.getLeaderboardID(currentVehicleCD)
         if _leaderboardID is not None:
             leaderboardID = _leaderboardID
         elif leaderboards:
             vehicleIds = [veh for _, veh in leaderboards]
             allVehicles = self.itemsCache.items.getVehicles(
                 REQ_CRITERIA.IN_CD_LIST(vehicleIds))
             fields = (('level', False), ('nations', True), ('type', True))
             sortedVehicles = sortByFields(fields, allVehicles.itervalues(),
                                           vehicleValueGetter)
             leaderboardID = eventData.getLeaderboardID(
                 sortedVehicles[0].intCD)
     else:
         header = {
             'filters':
             makeFiltersVO(eventData.getType(),
                           leaderboards,
                           leaderboardID,
                           category='awards')
         }
         self.as_setHeaderS(header)
     self._setData(leaderboardID)
     return
예제 #2
0
 def _request(self, isReset=False, sort=tuple()):
     self.__sentRequestCount += 1
     self._offset = max(self._offset, 0)
     offset = 0
     count = self._offset + self._count
     if not self.__lastStatus or not self.__allInvitesCached:
         if len(sort):
             yield self.__requestInvites(0,
                                         PERSONAL_INVITES_COUNT_THRESHOLD,
                                         isReset)
             self.__allInvitesCached = self.__lastStatus
         else:
             yield self.__requestInvites(offset, count, isReset)
     self.__lastResult = []
     if self.__lastStatus:
         if sort is not None and sort != self.__lastSort:
             self.__invitesCache = sortByFields(sort,
                                                self.__invitesCache,
                                                valueGetter=getattr)
             self.__lastSort = sort
             self.__rebuildMapping()
         self.__lastResult = self.__getSlice(offset, count)
     self.__sentRequestCount -= 1
     self.onListUpdated(self._selectedID, True, True,
                        (self.__lastStatus, self.__lastResult))
     return
예제 #3
0
 def pySortOn(self, fields, order):
     super(_ClanProfileProvinceDataProvider, self).pySortOn(fields, order)
     if self.__dataList:
         self.__dataList = sortByFields(self._sort,
                                        self.__dataList,
                                        valueGetter=self.__sortingMethod)
         self.buildList(self.__dataList)
         self.refresh()
 def pySortOn(self, fields, order):
     super(_ClanMembersDataProvider, self).pySortOn(fields, order)
     if self.__accountsList:
         self.__accountsList = sortByFields(
             self._sort,
             self.__accountsList,
             valueGetter=self.__sortingMethod)
         self.buildList(self.__accountsList)
         self.refresh()
예제 #5
0
 def _request(self, isReset = False, sort = tuple()):
     self.__sentRequestCount += 1
     self._offset = max(self._offset, 0)
     offset = 0
     count = self._offset + self._count
     if not self.__lastStatus or not self.__allInvitesCached:
         if len(sort):
             yield self.__requestInvites(0, PERSONAL_INVITES_COUNT_THRESHOLD, isReset)
             self.__allInvitesCached = self.__lastStatus
         else:
             yield self.__requestInvites(offset, count, isReset)
     self.__lastResult = []
     if self.__lastStatus:
         if sort is not None and sort != self.__lastSort:
             self.__invitesCache = sortByFields(sort, self.__invitesCache, valueGetter=getattr)
             self.__lastSort = sort
             self.__rebuildMapping()
         self.__lastResult = self.__getSlice(offset, count)
     self.__sentRequestCount -= 1
     self.onListUpdated(self._selectedID, True, True, (self.__lastStatus, self.__lastResult))
     return
 def pySortOn(self, fields, order):
     super(VehiclesDataProvider, self).pySortOn(fields, order)
     if self.__list:
         self.__list = sortByFields(self._sort, self.__list,
                                    self.__sortingMethod)
         self.buildList(self.__list)
 def sortedCollection(self):
     return sortByFields(self._sort, self.__list, self.__sortingMethod)
 def pySortOn(self, fields, order):
     super(_ClanMembersDataProvider, self).pySortOn(fields, order)
     if self.__accountsList:
         self.__accountsList = sortByFields(self._sort, self.__accountsList, valueGetter=self.__sortingMethod)
         self.buildList(self.__accountsList)
         self.refresh()
예제 #9
0
 def sortedCollection(self):
     return map(self.addBrackets, sortByFields(self._sort, map(self.deleteBrackets, self.collection)))
예제 #10
0
 def sortedCollection(self):
     return sortByFields(self._sort, self.collection)
 def pySortOn(self, fields, order):
     super(_ClanProfileProvinceDataProvider, self).pySortOn(fields, order)
     if self.__dataList:
         self.__dataList = sortByFields(self._sort, self.__dataList, valueGetter=self.__sortingMethod)
         self.buildList(self.__dataList)
         self.refresh()
예제 #12
0
 def __sort(self):
     self.__list = sortByFields(self._sort, self.__list, vehicleValueGetter)
예제 #13
0
 def sortedCollection(self):
     return sortByFields(self._sort, self.collection)
 def pySortOn(self, fields, order):
     super(VehiclesDataProvider, self).pySortOn(fields, order)
     if self.__list:
         self.__list = sortByFields(self._sort, self.__list, self.__sortingMethod)
         self.buildList(self.__list)
 def sortedCollection(self):
     return sortByFields(self._sort, self.__list, self.__sortingMethod)