reactionSmarts

This commit is contained in:
Tim Lorsbach
2026-09-02 21:30:53 +02:00
parent b54c8eaab6
commit 887de03a19
+11
View File
@@ -623,6 +623,10 @@ class PackageManager(object):
def grant_write(caller: User, package: Package, grantee: Union[User, Group]):
PackageManager.update_permissions(caller, package, grantee, Permission.WRITE[0])
@staticmethod
def grant_owner(caller: User, package: Package, grantee: Union[User, Group]):
PackageManager.update_permissions(caller, package, grantee, Permission.ALL[0])
@staticmethod
@transaction.atomic
def import_legacy_package(
@@ -821,7 +825,14 @@ class PackageManager(object):
r.name = rule["name"]
r.description = rule["description"]
r.aliases = rule.get("aliases", [])
if rule.get("smirks") is not None:
r.smirks = rule["smirks"]
elif rule.get("reactionSmarts") is not None:
r.smirks = rule["reactionSmarts"]
else:
raise ValueError("No SMIRKS or reactionSmarts found for rule {}".format(rule["id"]))
r.reactant_filter_smarts = rule.get("reactantFilterSmarts", None)
r.product_filter_smarts = rule.get("productFilterSmarts", None)
r.save()