def __init__(self, exclude=None):
     super(SearchUsersDataProvider, self).__init__(SearchUsersProcessor())
     self._converter = ContactConverter()
     if exclude is not None:
         self.__exclude = exclude
     else:
         self.__exclude = []
Esempio n. 2
0
 def __init__(self, searchProcessor=None, exclude=None):
     if searchProcessor is None:
         searchProcessor = SearchUsersProcessor()
     super(SearchUsersDataProvider, self).__init__(searchProcessor)
     self._converter = ContactConverter()
     if exclude is not None:
         self.__exclude = exclude
     else:
         self.__exclude = []
     return
 def _makeVO(self, memberData):
     memberDBID = memberData.getDbID()
     contactEntity = self.userStorage.getUser(memberDBID)
     if contactEntity:
         userVO = ContactConverter().makeVO(contactEntity)
         userVO['userProps']['clanAbbrev'] = ''
     else:
         userVO = {'userProps': {'userName': self.__getMemberName(memberData)}}
     return {'dbID': memberDBID,
      'userName': self.__getMemberName(memberData),
      'post': items.formatField(getter=memberData.getRoleString),
      'postIcon': memberData.getRoleIcon(),
      'personalRating': items.formatField(getter=memberData.getGlobalRating, formatter=BigWorld.wg_getIntegralFormat),
      'battlesCount': items.formatField(getter=memberData.getBattlesCount, formatter=BigWorld.wg_getIntegralFormat),
      'wins': items.formatField(getter=memberData.getBattlesPerformanceAvg, formatter=lambda x: BigWorld.wg_getNiceNumberFormat(x) + '%'),
      'awgExp': items.formatField(getter=memberData.getBattleXpAvg, formatter=BigWorld.wg_getIntegralFormat),
      'daysInClan': items.formatField(getter=memberData.getDaysInClan, formatter=BigWorld.wg_getIntegralFormat),
      'canShowContextMenu': memberDBID != getAccountDatabaseID(),
      'contactItem': userVO}
Esempio n. 4
0
 def __init__(self, ctx=None):
     super(SendInvitesWindow, self).__init__()
     self._onlineMode = True
     self._ctx = ctx
     self._converter = ContactConverter()
     if 'ctrlType' in ctx:
         self._ctrlType = ctx['ctrlType']
     else:
         self._ctrlType = CTRL_ENTITY_TYPE.UNKNOWN
         LOG_ERROR('Control type is not defined', ctx)
     if 'prbName' in ctx:
         self._prbName = ctx['prbName']
     else:
         self._prbName = 'prebattle'
     if 'showClanOnly' in ctx:
         self._showClanOnly = ctx['showClanOnly']
     else:
         self._showClanOnly = False
     if 'invites' in ctx:
         self._invites = ctx['invites']
     else:
         self._invites = ()
    def __makeTableData(self):
        ms = i18n.makeString
        result = []
        referrals = self.refSystem.getReferrals()
        numOfReferrals = len(referrals)
        for i, item in enumerate(referrals):
            referralNumber = text_styles.stats(ms('%d.' % (i + 1)))
            dbID = item.getAccountDBID()
            user = self.usersStorage.getUser(dbID)
            if not user:
                raise AssertionError('User must be defined')
                contactConverter = ContactConverter()
                contactData = contactConverter.makeVO(user)
                xpIcon = RES_ICONS.MAPS_ICONS_LIBRARY_NORMALXPICON
                icon = icons.makeImageTag(xpIcon, 16, 16, -3, 0)
                bonus, timeLeft = item.getBonus()
                if bonus == 1:
                    multiplier = '-'
                    multiplierTooltip = TOOLTIPS.REFERRALMANAGEMENTWINDOW_MULTIPLIER_X1
                    icon = ''
                else:
                    multiplier = 'x%s' % BigWorld.wg_getNiceNumberFormat(bonus)
                    multiplierTooltip = ''
                if timeLeft:
                    multiplierTime = text_styles.main(
                        ms(item.getBonusTimeLeftStr()))
                    expMultiplierText = text_styles.standard(
                        ms(MENU.
                           REFERRALMANAGEMENTWINDOW_REFERRALSTABLE_LEFTTIME,
                           time=multiplierTime))
                else:
                    expMultiplierText = ''
                multiplierFactor = text_styles.credits(multiplier)
                multiplierStr = ms(icon + '<nobr>' + multiplierFactor + ' ' +
                                   expMultiplierText)
                referralData = {
                    'accID': dbID,
                    'fullName': user.getFullName(),
                    'userName': user.getName(),
                    'clanAbbrev': user.getClanAbbrev()
                }
                permissions = self.prbEntity.getPermissions()
                canInviteToSquad = permissions.canCreateSquad(
                ) or self.prbEntity.getEntityType(
                ) == PREBATTLE_TYPE.SQUAD and permissions.canSendInvite()
                btnEnabled = canInviteToSquad or False
                btnTooltip = TOOLTIPS.REFERRALMANAGEMENTWINDOW_CREATESQUADBTN_DISABLED_SQUADISFULL
            else:
                btnEnabled = True
                btnTooltip = TOOLTIPS.REFERRALMANAGEMENTWINDOW_CREATESQUADBTN_ENABLED
            result.append({
                'isEmpty':
                False,
                'contactData':
                contactData,
                'referralNo':
                referralNumber,
                'referralVO':
                referralData,
                'exp':
                BigWorld.wg_getNiceNumberFormat(item.getXPPool()),
                'multiplier':
                multiplierStr,
                'multiplierTooltip':
                multiplierTooltip,
                'btnEnabled':
                btnEnabled,
                'btnTooltip':
                btnTooltip
            })

        if numOfReferrals < self.MIN_REF_NUMBER:
            for i in xrange(numOfReferrals, self.MIN_REF_NUMBER):
                referralNumber = text_styles.disabled(
                    ms(MENU.REFERRALMANAGEMENTWINDOW_REFERRALSTABLE_EMPTYLINE,
                       lineNo=str(i + 1)))
                result.append({'isEmpty': True, 'referralNo': referralNumber})

        self.as_setTableDataS(result)