mirror of
https://github.com/mewtek/i2ME-Legacy.git
synced 2025-05-12 01:10:24 -05:00
51 lines
1.7 KiB
Python
51 lines
1.7 KiB
Python
import json
|
|
import xmltodict
|
|
|
|
|
|
# Open the MachineProductCfg.xml file in the root directory
|
|
with open("MachineProductCfg.xml") as MPCxml:
|
|
MPCdict = xmltodict.parse(MPCxml.read())
|
|
MPCdump = json.dumps(MPCdict)
|
|
data = json.loads(MPCdump)
|
|
|
|
|
|
def getPrimaryLocations():
|
|
""" Returns all of the primary locations in the MachineProductCfg """
|
|
locationIds = []
|
|
# iterate on the json data and grab anything that has PrimaryLocation.
|
|
# Also needs to return anything in the Regional area.
|
|
for i in data['Config']['ConfigDef']['ConfigItems']['ConfigItem']:
|
|
if "PrimaryLocation" in i['@key'] and i['@value'] != "":
|
|
# Split the string up
|
|
locationIds.append(i['@value'].split("_")[2])
|
|
|
|
if "NearbyLocation" in i['@key'] and i['@value'] != "":
|
|
locationIds.append(i['@value'].split("_")[2])
|
|
|
|
return locationIds
|
|
|
|
|
|
def getAirportCodes():
|
|
""" Returns all of the airport identifiers present in the MachineProductCfg """
|
|
airports = []
|
|
for i in data['Config']['ConfigDef']['ConfigItems']['ConfigItem']:
|
|
if "Airport" in i['@key'] and i['@value'] != "":
|
|
# Split the string up
|
|
airports.append(i['@value'].split("_")[2])
|
|
|
|
return airports
|
|
|
|
def getZones():
|
|
""" Returns a list of zones present in the MachineProductCfg """
|
|
zones = []
|
|
for i in data['Config']['ConfigDef']['ConfigItems']['ConfigItem']:
|
|
if i['@key'] == "primaryZone" and i['@value'] != "":
|
|
zones.append(i['@value']) # This should only be one value
|
|
|
|
if i['@key'] == "secondaryZones" and i['@value'] != "":
|
|
for x in i['@value'].split(','):
|
|
zones.append(x)
|
|
|
|
return zones
|
|
|
|
print(getZones()) |