This commit is contained in:
Markus Birth 2021-08-22 23:43:10 +02:00
parent 139fcbf36a
commit 1ca9a23ad0
Signed by: mbirth
GPG Key ID: A9928D7A098C3A9A
2 changed files with 6 additions and 39 deletions

View File

@ -64,7 +64,7 @@ for item in opif:
target_group_name = "Recycle Bin" target_group_name = "Recycle Bin"
# Add entry to KeePass # Add entry to KeePass
entry = kp.add_entry(target_group_name, item["title"]) entry = kp.add_entry(target_group_name, props["title"])
fids_done.append("title") fids_done.append("title")
# UUID - memorise for later linking? # UUID - memorise for later linking?
@ -104,8 +104,8 @@ for item in opif:
fids_done.append("notesPlain") fids_done.append("notesPlain")
# Dates # Dates
entry.ctime = datetime.datetime.fromtimestamp(item["createdAt"]) entry.ctime = datetime.datetime.fromtimestamp(props["createdAt"])
entry.mtime = datetime.datetime.fromtimestamp(item["updatedAt"]) entry.mtime = datetime.datetime.fromtimestamp(props["updatedAt"])
fids_done.append("createdAt") fids_done.append("createdAt")
fids_done.append("updatedAt") fids_done.append("updatedAt")
@ -137,26 +137,15 @@ for item in opif:
# TODO: scope: Never = never suggest in browser # TODO: scope: Never = never suggest in browser (i.e. don't add KPH fields)
secure = item["secureContents"]
secure = item.raw["secureContents"]
# Other web fields # Other web fields
if "fields" in secure: if "fields" in secure:
for field in secure["fields"]: for field in secure["fields"]:
d = field.get("designation") d = field.get("designation")
if d != "username" and d != "password": if d != "username" and d != "password":
entry.set_custom_property("Web field: {}".format(field["name"]), field["value"]) entry.set_custom_property("KPH: {}".format(field["name"]), field["value"])
# Find URL in fields
if not entry.url:
if "htmlAction" in secure:
entry.url = secure["htmlAction"]
# AFTER ALL OTHER PROCESSING IS DONE: Password history # AFTER ALL OTHER PROCESSING IS DONE: Password history
if "passwordHistory" in props: if "passwordHistory" in props:
@ -171,5 +160,4 @@ for item in opif:
entry.password = original_password entry.password = original_password
entry.mtime = original_mtime entry.mtime = original_mtime
kp.save() kp.save()

View File

@ -184,24 +184,3 @@ class OnepifEntry():
props[new_key] = v props[new_key] = v
# TODO: Maybe walk all keys and see if there's (xxx_dd), xxx_mm, xxx_yy and turn them into a date # TODO: Maybe walk all keys and see if there's (xxx_dd), xxx_mm, xxx_yy and turn them into a date
return props return props
def __getattr__(self, name):
if name not in self.raw:
raise AttributeError
return self.raw[name]
def __getitem__(self, key):
if self.__missing__(key):
raise KeyError
return self.raw[key]
def __contains__(self, item):
return item in self.raw
def __missing__(self, key):
return key not in self.raw
def get(self, key):
if key not in self.raw:
return None
return self.raw[key]