def changeNation(self, nationID):
        Waiting.show('updating')
        self.__selectedNation = nationID
        modulesAll = g_itemsCache.items.getVehicles(
            self.__getClassesCriteria(nationID)).values()
        classes = []
        data = [self.__getVehicleClassEmptyRow()]
        modulesAll.sort()
        for module in modulesAll:
            if module.type in classes:
                continue
            classes.append(module.type)
            data.append({
                'id':
                module.type,
                'label':
                DIALOGS.recruitwindow_vehicleclassdropdown(module.type)
            })

        self.as_setVehicleClassDataS(
            self.__getSendingData(data,
                                  len(data) > 1, 0))
        self.as_setVehicleDataS(
            self.__getSendingData([self.__getVehicleEmptyRow()], False, 0))
        self.as_setTankmanRoleDataS(
            self.__getSendingData([self.__getTankmanRoleEmptyRow()], False, 0))
        Waiting.hide('updating')
        self.onDataChange(self.__selectedNation, self.__selectedVehClass,
                          self.__selectedVehicle, self.__selectedTmanRole)
    def updateAllDropdowns(self, nationID, tankType, typeID, roleType):
        nationsDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}, {'id': nationID,
          'label': MENU.nations(nations.NAMES[int(nationID)])}]
        classesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}, {'id': tankType,
          'label': DIALOGS.recruitwindow_vehicleclassdropdown(tankType)}]
        typesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        rolesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        unlocks = yield StatsRequester().getUnlocks()
        modulesAll = yield Requester('vehicle').getFromShop()
        for module in modulesAll:
            compdecs = module.descriptor.type.compactDescr
            if compdecs in unlocks and module.descriptor.type.id[0] == nationID and module.descriptor.type.id[1] == typeID:
                typesDP.append({'id': module.descriptor.type.id[1],
                 'label': module.descriptor.type.shortUserString})
                for role in module.descriptor.type.crewRoles:
                    if role[0] == roleType:
                        rolesDP.append({'id': role[0],
                         'label': convert(getSkillsConfig()[role[0]]['userString'])})

                break

        self.flashObject.as_setAllDropdowns(nationsDP, classesDP, typesDP, rolesDP)
        return
    def updateAllDropdowns(self, nationID, tankType, typeID, roleType):
        nationsDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}, {'id': nationID,
          'label': MENU.nations(nations.NAMES[int(nationID)])}]
        classesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}, {'id': tankType,
          'label': DIALOGS.recruitwindow_vehicleclassdropdown(tankType)}]
        typesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        rolesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        modulesAll = g_itemsCache.items.getVehicles(self.__getRoleCriteria(nationID, tankType, typeID)).values()
        modulesAll.sort()
        for module in modulesAll:
            typesDP.append({'id': module.innationID,
             'label': module.shortUserName})
            for role in module.descriptor.type.crewRoles:
                if role[0] == roleType:
                    rolesDP.append({'id': role[0],
                     'label': convert(getSkillsConfig()[role[0]]['userString'])})

            break

        self.flashObject.as_setAllDropdowns(nationsDP, classesDP, typesDP, rolesDP)
        return
Exemple #4
0
    def updateAllDropdowns(self, nationID, tankType, typeID, roleType):
        nationsDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}, {'id': nationID,
          'label': MENU.nations(nations.NAMES[int(nationID)])}]
        classesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}, {'id': tankType,
          'label': DIALOGS.recruitwindow_vehicleclassdropdown(tankType)}]
        typesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        rolesDP = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        modulesAll = g_itemsCache.items.getVehicles(self.__getRoleCriteria(nationID, tankType, typeID)).values()
        modulesAll.sort()
        for module in modulesAll:
            typesDP.append({'id': module.innationID,
             'label': module.shortUserName})
            for role in module.descriptor.type.crewRoles:
                if role[0] == roleType:
                    rolesDP.append({'id': role[0],
                     'label': convert(getSkillsConfig()[role[0]]['userString'])})

            break

        self.flashObject.as_setAllDropdowns(nationsDP, classesDP, typesDP, rolesDP)
        return
Exemple #5
0
    def __setVehicleClassesData(self):
        if self.__filteredVehClasses is not None:
            data = self.__filteredVehClasses[self.__selectedNationIdx]
            self.as_setVehicleClassDataS(
                self.__getSendingData(data,
                                      len(data) > 1, 0))
        else:
            modulesAll = self.itemsCache.items.getVehicles(
                self.__getClassesCriteria(self.__selectedNationIdx)).values()
            classes = []
            data = [self.__getVehicleClassEmptyRow()]
            modulesAll.sort()
            for module in modulesAll:
                if module.type in classes:
                    continue
                classes.append(module.type)
                data.append(
                    _packItemVO(
                        module.type,
                        DIALOGS.recruitwindow_vehicleclassdropdown(
                            module.type)))

            self.as_setVehicleClassDataS(
                self.__getSendingData(data,
                                      len(data) > 1, 0))
        return
    def __collectPredefinedRoleData(self):
        criteria = self.__getNationsCriteria()
        selectedNationsIds = []
        if self.__hasPredefinedNations():
            selectedNationsIds = self.__predefinedNationsIdxs
        else:
            for nId in nations.INDICES.itervalues():
                selectedNationsIds.append(nId)

        criteria |= REQ_CRITERIA.NATIONS(selectedNationsIds)
        if not constants.IS_IGR_ENABLED:
            criteria |= ~REQ_CRITERIA.VEHICLE.IS_PREMIUM_IGR
        if constants.IS_DEVELOPMENT:
            criteria |= ~REQ_CRITERIA.VEHICLE.IS_BOT
        modulesAll = self.itemsCache.items.getVehicles(
            criteria=criteria).values()
        modulesAll.sort()
        self.__filteredNations = dict()
        self.__filteredVehClasses = dict()
        self.__filteredVehClasses.setdefault(
            DEFAULT_NATION, [self.__getVehicleClassEmptyRow()])
        self.__filteredVehicles = dict()
        filteredVehClassesByNation = dict()
        count = 0
        for module in modulesAll:
            roleFound = False
            for role in module.descriptor.type.crewRoles:
                if not roleFound and role[0] in self.__predefinedTmanRoles:
                    roleFound = True
                    nationID, _ = module.descriptor.type.id
                    self.__filteredNations.setdefault(
                        nationID,
                        _packItemVO(nationID,
                                    MENU.nations(nations.NAMES[nationID])))
                    vehicleClassesSet = filteredVehClassesByNation.setdefault(
                        nationID, set())
                    self.__filteredVehClasses.setdefault(
                        DEFAULT_NATION, [self.__getVehicleClassEmptyRow()])
                    currentType = module.type
                    if currentType not in vehicleClassesSet:
                        vehicleClassesSet.add(module.type)
                        vehClasses = self.__filteredVehClasses.setdefault(
                            nationID, [self.__getVehicleClassEmptyRow()])
                        vehClasses.append(
                            _packItemVO(
                                currentType,
                                DIALOGS.recruitwindow_vehicleclassdropdown(
                                    currentType)))
                    vehicles = self.__filteredVehicles.setdefault(
                        (nationID, currentType), [self.__getVehicleEmptyRow()])
                    vehicles.append(
                        _packItemVO(module.innationID, module.shortUserName))
                    count += 1

        if count < 1:
            _logger.error('Something wrong with recruit tankman default role!')
            self.__clearFilteredData()
Exemple #7
0
    def updateVehicleClassDropdown(self, nationID):
        Waiting.show("updating")
        modulesAll = g_itemsCache.items.getVehicles(self.__getClassesCriteria(nationID)).values()
        classes = []
        data = [{"id": None, "label": DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        modulesAll.sort()
        for module in modulesAll:
            if module.type in classes:
                continue
            classes.append(module.type)
            data.append({"id": module.type, "label": DIALOGS.recruitwindow_vehicleclassdropdown(module.type)})

        self.flashObject.as_setVehicleClassDropdown(data)
        Waiting.hide("updating")
        return
Exemple #8
0
    def updateVehicleClassDropdown(self, nationID):
        Waiting.show('updating')
        modulesAll = g_itemsCache.items.getVehicles(self.__getClassesCriteria(nationID)).values()
        classes = []
        data = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        modulesAll.sort()
        for module in modulesAll:
            if module.type in classes:
                continue
            classes.append(module.type)
            data.append({'id': module.type,
             'label': DIALOGS.recruitwindow_vehicleclassdropdown(module.type)})

        self.flashObject.as_setVehicleClassDropdown(data)
        Waiting.hide('updating')
        return
    def updateVehicleClassDropdown(self, nationID):
        Waiting.show('updating')
        unlocks = yield StatsRequester().getUnlocks()
        modulesAll = yield Requester('vehicle').getFromShop()
        classes = []
        data = [{'id': None,
          'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        modulesAll.sort()
        for module in modulesAll:
            compdecs = module.descriptor.type.compactDescr
            if compdecs in unlocks and module.descriptor.type.id[0] == nationID and module.type not in classes:
                classes.append(module.type)
                data.append({'id': module.type,
                 'label': DIALOGS.recruitwindow_vehicleclassdropdown(module.type)})

        self.flashObject.as_setVehicleClassDropdown(data)
        Waiting.hide('updating')
        return
    def changeNation(self, nationID):
        Waiting.show('updating')
        self.__selectedNation = nationID
        modulesAll = g_itemsCache.items.getVehicles(self.__getClassesCriteria(nationID)).values()
        classes = []
        data = [self.__getVehicleClassEmptyRow()]
        modulesAll.sort()
        for module in modulesAll:
            if module.type in classes:
                continue
            classes.append(module.type)
            data.append({'id': module.type,
             'label': DIALOGS.recruitwindow_vehicleclassdropdown(module.type)})

        self.as_setVehicleClassDataS(self.__getSendingData(data, len(data) > 1, 0))
        self.as_setVehicleDataS(self.__getSendingData([self.__getVehicleEmptyRow()], False, 0))
        self.as_setTankmanRoleDataS(self.__getSendingData([self.__getTankmanRoleEmptyRow()], False, 0))
        Waiting.hide('updating')
        self.onDataChange(self.__selectedNation, self.__selectedVehClass, self.__selectedVehicle, self.__selectedTmanRole)
Exemple #11
0
    def updateAllDropdowns(self, nationID, tankType, typeID, roleType):
        nationsDP = [{
            'id': None,
            'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW
        }, {
            'id': nationID,
            'label': MENU.nations(nations.NAMES[int(nationID)])
        }]
        classesDP = [{
            'id': None,
            'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW
        }, {
            'id':
            tankType,
            'label':
            DIALOGS.recruitwindow_vehicleclassdropdown(tankType)
        }]
        typesDP = [{'id': None, 'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        rolesDP = [{'id': None, 'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        unlocks = yield StatsRequester().getUnlocks()
        modulesAll = yield Requester('vehicle').getFromShop()
        for module in modulesAll:
            compdecs = module.descriptor.type.compactDescr
            if compdecs in unlocks and module.descriptor.type.id[
                    0] == nationID and module.descriptor.type.id[1] == typeID:
                typesDP.append({
                    'id': module.descriptor.type.id[1],
                    'label': module.descriptor.type.shortUserString
                })
                for role in module.descriptor.type.crewRoles:
                    if role[0] == roleType:
                        rolesDP.append({
                            'id':
                            role[0],
                            'label':
                            convert(getSkillsConfig()[role[0]]['userString'])
                        })

                break

        self.flashObject.as_setAllDropdowns(nationsDP, classesDP, typesDP,
                                            rolesDP)
        return
    def __setVehicleClassesData(self):
        modulesAll = self.itemsCache.items.getVehicles(
            self.__getClassesCriteria(self.__selectedNation)).values()
        classes = []
        data = [self.__getVehicleClassEmptyRow()]
        modulesAll.sort()
        for module in modulesAll:
            if module.type in classes:
                continue
            classes.append(module.type)
            data.append({
                'id':
                module.type,
                'label':
                DIALOGS.recruitwindow_vehicleclassdropdown(module.type)
            })

        self.as_setVehicleClassDataS(
            self.__getSendingData(data,
                                  len(data) > 1, 0))
Exemple #13
0
    def updateVehicleClassDropdown(self, nationID):
        Waiting.show('updating')
        unlocks = yield StatsRequester().getUnlocks()
        modulesAll = yield Requester('vehicle').getFromShop()
        classes = []
        data = [{'id': None, 'label': DIALOGS.RECRUITWINDOW_MENUEMPTYROW}]
        modulesAll.sort()
        for module in modulesAll:
            compdecs = module.descriptor.type.compactDescr
            if compdecs in unlocks and module.descriptor.type.id[
                    0] == nationID and module.type not in classes:
                classes.append(module.type)
                data.append({
                    'id':
                    module.type,
                    'label':
                    DIALOGS.recruitwindow_vehicleclassdropdown(module.type)
                })

        self.flashObject.as_setVehicleClassDropdown(data)
        Waiting.hide('updating')
        return