work on getting abyssal modules imported via clipboard

This commit is contained in:
Ryan Holmes
2018-11-20 00:49:04 -05:00
parent 0294684bb8
commit 58daf2a543
6 changed files with 126 additions and 18 deletions

View File

@@ -37,6 +37,7 @@ from service.port.esi import exportESI, importESI
from service.port.multibuy import exportMultiBuy
from service.port.shared import IPortUser, UserCancelException, processing_notify
from service.port.xml import importXml, exportXml
from service.port.muta import importMutant
pyfalog = Logger(__name__)
@@ -188,18 +189,20 @@ class Port(object):
# TODO: catch the exception?
# activeFit is reserved?, bufferStr is unicode? (assume only clipboard string?
sFit = svcFit.getInstance()
_, fits = Port.importAuto(bufferStr, activeFit=activeFit)
for fit in fits:
fit.character = sFit.character
fit.damagePattern = sFit.pattern
fit.targetResists = sFit.targetResists
if len(fit.implants) > 0:
fit.implantLocation = ImplantLocation.FIT
else:
useCharImplants = sFit.serviceFittingOptions["useCharacterImplantsByDefault"]
fit.implantLocation = ImplantLocation.CHARACTER if useCharImplants else ImplantLocation.FIT
db.save(fit)
return fits
import_type, fits = Port.importAuto(bufferStr, activeFit=activeFit)
if import_type != 'Abyssal':
for fit in fits:
fit.character = sFit.character
fit.damagePattern = sFit.pattern
fit.targetResists = sFit.targetResists
if len(fit.implants) > 0:
fit.implantLocation = ImplantLocation.FIT
else:
useCharImplants = sFit.serviceFittingOptions["useCharacterImplantsByDefault"]
fit.implantLocation = ImplantLocation.CHARACTER if useCharImplants else ImplantLocation.FIT
db.save(fit)
return import_type, fits
@classmethod
def importAuto(cls, string, path=None, activeFit=None, iportuser=None):
@@ -228,8 +231,11 @@ class Port(object):
if re.match("\[.*,.*\]", firstLine):
return "EFT", (cls.importEft(string),)
# Use DNA format for all other cases
return "DNA", (cls.importDna(string),)
try:
return "Abyssal", (importMutant(string.split("\n")),)
except:
# Use DNA format for all other cases
return "DNA", (cls.importDna(string),)
# EFT-related methods
@staticmethod