NovaBryan/EVE_Dump
Log | Files | 📦 下载最新源码 (.zip) | Refs | README

tradingUtil.py (3236B)


      1 #Embedded file name: C:\BuildAgent\work\20d73f1b24eed06e\eve\release\V24.01\eve\client\script\ui\cosmetics\ship\tradingUtil.py
      2 from cosmetics.client.shipSkinTradingSvc import get_ship_skin_trading_svc
      3 from eve.common.script.sys.idCheckers import IsNPCCorporation
      4 from itertoolsext.Enum import Enum
      5 from localization import GetByLabel
      6 DAY_SECONDS = 86400
      7 
      8 @Enum
      9 
     10 class SellDuration(object):
     11     DAY = 1 * DAY_SECONDS
     12     THREE_DAYS = 3 * DAY_SECONDS
     13     WEEK = 7 * DAY_SECONDS
     14     TWO_WEEKS = 14 * DAY_SECONDS
     15     MONTH = 30 * DAY_SECONDS
     16     THREE_MONTHS = 90 * DAY_SECONDS
     17 
     18 
     19 SELL_DURATION_LABELS = {SellDuration.DAY: GetByLabel('UI/Common/DateWords/Day'),
     20  SellDuration.THREE_DAYS: GetByLabel('UI/Market/MarketQuote/ThreeDays'),
     21  SellDuration.WEEK: GetByLabel('UI/Common/DateWords/Week'),
     22  SellDuration.TWO_WEEKS: GetByLabel('UI/Market/MarketQuote/TwoWeeks'),
     23  SellDuration.MONTH: GetByLabel('UI/Common/DateWords/Month'),
     24  SellDuration.THREE_MONTHS: GetByLabel('UI/Market/MarketQuote/ThreeMonths')}
     25 
     26 @Enum
     27 
     28 class SellAvailability(object):
     29     PUBLIC = 1
     30     MY_CORPORATION = 2
     31     MY_ALLIANCE = 3
     32     SPECIFIC = 4
     33 
     34 
     35 SELL_AVAILABILITY_LABELS = {SellAvailability.PUBLIC: GetByLabel('UI/Personalization/ShipSkins/SKINR/Collection/SellAvailability/Public'),
     36  SellAvailability.MY_CORPORATION: GetByLabel('UI/Personalization/ShipSkins/SKINR/Collection/SellAvailability/MyCorporation'),
     37  SellAvailability.MY_ALLIANCE: GetByLabel('UI/Personalization/ShipSkins/SKINR/Collection/SellAvailability/MyAlliance'),
     38  SellAvailability.SPECIFIC: GetByLabel('UI/Personalization/ShipSkins/SKINR/Collection/SellAvailability/Specific')}
     39 
     40 def get_sell_duration_options():
     41     listing_durations = get_ship_skin_trading_svc().get_available_listing_durations()
     42     options = []
     43     for duration in listing_durations:
     44         if duration == SellDuration.DAY:
     45             options.append([SELL_DURATION_LABELS[SellDuration.DAY], SellDuration.DAY])
     46         elif duration == SellDuration.THREE_DAYS:
     47             options.append([SELL_DURATION_LABELS[SellDuration.THREE_DAYS], SellDuration.THREE_DAYS])
     48         elif duration == SellDuration.WEEK:
     49             options.append([SELL_DURATION_LABELS[SellDuration.WEEK], SellDuration.WEEK])
     50         elif duration == SellDuration.TWO_WEEKS:
     51             options.append([SELL_DURATION_LABELS[SellDuration.TWO_WEEKS], SellDuration.TWO_WEEKS])
     52         elif duration == SellDuration.MONTH:
     53             options.append([SELL_DURATION_LABELS[SellDuration.MONTH], SellDuration.MONTH])
     54         elif duration == SellDuration.THREE_MONTHS:
     55             options.append([SELL_DURATION_LABELS[SellDuration.THREE_MONTHS], SellDuration.THREE_MONTHS])
     56 
     57     return options
     58 
     59 
     60 def get_sell_availability_options():
     61     options = [(SELL_AVAILABILITY_LABELS[SellAvailability.PUBLIC], SellAvailability.PUBLIC)]
     62     if session.corpid and not IsNPCCorporation(session.corpid):
     63         options.append((SELL_AVAILABILITY_LABELS[SellAvailability.MY_CORPORATION], SellAvailability.MY_CORPORATION))
     64     if session.allianceid:
     65         options.append((SELL_AVAILABILITY_LABELS[SellAvailability.MY_ALLIANCE], SellAvailability.MY_ALLIANCE))
     66     options.append((SELL_AVAILABILITY_LABELS[SellAvailability.SPECIFIC], SellAvailability.SPECIFIC))
     67     return options