sharing/db: conversion and enable
This commit is contained in:
@@ -147,6 +147,8 @@ class Sharing(sharing.BaseSharing):
|
|||||||
"Owner": Owner,
|
"Owner": Owner,
|
||||||
"User": UserShare,
|
"User": UserShare,
|
||||||
"Hidden": Hidden,
|
"Hidden": Hidden,
|
||||||
|
"EnabledByOwner": row['EnabledByOwner'],
|
||||||
|
"EnabledByUser": row['EnabledByUser'],
|
||||||
"Permissions": Permissions,
|
"Permissions": Permissions,
|
||||||
"Properties": Properties,
|
"Properties": Properties,
|
||||||
"Conversion": Conversion,
|
"Conversion": Conversion,
|
||||||
@@ -173,7 +175,7 @@ class Sharing(sharing.BaseSharing):
|
|||||||
|
|
||||||
with self._storage.acquire_lock("r", path=self._sharing_db_file):
|
with self._storage.acquire_lock("r", path=self._sharing_db_file):
|
||||||
if logger.isEnabledFor(logging.DEBUG):
|
if logger.isEnabledFor(logging.DEBUG):
|
||||||
logger.debug("TRACE/sharing/list/called: ShareType=%r OwnerOrUser=%r User=%r PathOrToken=%r PathMapped=%r EnabledByOwner=%s EnabledByUser=%s HiddenByOwner=%s HiddenByUser=%s", ShareType, OwnerOrUser, User, PathOrToken, PathMapped, EnabledByOwner, EnabledByUser, HiddenByOwner, HiddenByUser)
|
logger.debug("TRACE/sharing/list/called: ShareType=%r OwnerOrUser=%r User=%r PathOrToken=%r PathMapped=%r EnabledByOwner=%s EnabledByUser=%s HiddenByOwner=%s HiddenByUser=%s Conversion=%r", ShareType, OwnerOrUser, User, PathOrToken, PathMapped, EnabledByOwner, EnabledByUser, HiddenByOwner, HiddenByUser, Conversion)
|
||||||
|
|
||||||
for row in self._sharing_cache:
|
for row in self._sharing_cache:
|
||||||
if index == 0:
|
if index == 0:
|
||||||
@@ -208,6 +210,8 @@ class Sharing(sharing.BaseSharing):
|
|||||||
pass
|
pass
|
||||||
elif HiddenByUser is not None and row['HiddenByUser'] != HiddenByUser:
|
elif HiddenByUser is not None and row['HiddenByUser'] != HiddenByUser:
|
||||||
pass
|
pass
|
||||||
|
elif Conversion is not None and row['Conversion'] != Conversion:
|
||||||
|
pass
|
||||||
else:
|
else:
|
||||||
if logger.isEnabledFor(logging.DEBUG):
|
if logger.isEnabledFor(logging.DEBUG):
|
||||||
logger.debug("TRACE/sharing/list/row: add : %r", row)
|
logger.debug("TRACE/sharing/list/row: add : %r", row)
|
||||||
@@ -218,13 +222,13 @@ class Sharing(sharing.BaseSharing):
|
|||||||
def database_create_sharing(self,
|
def database_create_sharing(self,
|
||||||
ShareType: str,
|
ShareType: str,
|
||||||
PathOrToken: str, PathMapped: str,
|
PathOrToken: str, PathMapped: str,
|
||||||
|
Conversion: str,
|
||||||
Owner: str, User: str,
|
Owner: str, User: str,
|
||||||
Permissions: str = "r",
|
Permissions: str = "r",
|
||||||
EnabledByOwner: bool = False, EnabledByUser: bool = False,
|
EnabledByOwner: bool = False, EnabledByUser: bool = False,
|
||||||
HiddenByOwner: bool = True, HiddenByUser: bool = True,
|
HiddenByOwner: bool = True, HiddenByUser: bool = True,
|
||||||
Timestamp: int = 0,
|
Timestamp: int = 0,
|
||||||
Properties: Union[dict, None] = None,
|
Properties: Union[dict, None] = None,
|
||||||
Conversion: Union[str, None] = None,
|
|
||||||
Actions: Union[dict, None] = None,
|
Actions: Union[dict, None] = None,
|
||||||
) -> dict:
|
) -> dict:
|
||||||
""" create sharing """
|
""" create sharing """
|
||||||
@@ -255,17 +259,6 @@ class Sharing(sharing.BaseSharing):
|
|||||||
# must be unique systemwide
|
# must be unique systemwide
|
||||||
logger.error("sharing/map/create: entry already exists: PathMapped=%r User=%r", PathMapped, User)
|
logger.error("sharing/map/create: entry already exists: PathMapped=%r User=%r", PathMapped, User)
|
||||||
return {"status": "conflict"}
|
return {"status": "conflict"}
|
||||||
elif ShareType == "bday":
|
|
||||||
if logger.isEnabledFor(logging.DEBUG):
|
|
||||||
logger.debug("TRACE/sharing/bday/create: PathOrToken=%r Owner=%r PathMapped=%r User=%r Permissions=%r", PathOrToken, Owner, PathMapped, User, Permissions)
|
|
||||||
# check for duplicate map entry
|
|
||||||
for row in self._sharing_cache:
|
|
||||||
if row['ShareType'] != "bday":
|
|
||||||
continue
|
|
||||||
if row['PathMapped'] == PathMapped and row['User'] == User and row['PathOrToken'] == PathOrToken:
|
|
||||||
# must be unique systemwide
|
|
||||||
logger.error("sharing/bday/create: entry already exists: PathMapped=%r User=%r", PathMapped, User)
|
|
||||||
return {"status": "conflict"}
|
|
||||||
else:
|
else:
|
||||||
return {"status": "error"}
|
return {"status": "error"}
|
||||||
|
|
||||||
|
|||||||
@@ -142,6 +142,8 @@ class Sharing(sharing.BaseSharing):
|
|||||||
"Owner": Owner,
|
"Owner": Owner,
|
||||||
"User": UserShare,
|
"User": UserShare,
|
||||||
"Hidden": Hidden,
|
"Hidden": Hidden,
|
||||||
|
"EnabledByOwner": row['EnabledByOwner'],
|
||||||
|
"EnabledByUser": row['EnabledByUser'],
|
||||||
"Permissions": Permissions,
|
"Permissions": Permissions,
|
||||||
"Properties": Properties,
|
"Properties": Properties,
|
||||||
"Conversion": Conversion,
|
"Conversion": Conversion,
|
||||||
@@ -166,7 +168,7 @@ class Sharing(sharing.BaseSharing):
|
|||||||
result = []
|
result = []
|
||||||
|
|
||||||
if logger.isEnabledFor(logging.DEBUG):
|
if logger.isEnabledFor(logging.DEBUG):
|
||||||
logger.debug("TRACE/sharing/list/called: ShareType=%r OwnerOrUser=%r User=%r PathOrToken=%r PathMapped=%r EnabledByOwner=%s EnabledByUser=%s HiddenByOwner=%s HiddenByUser=%s", ShareType, OwnerOrUser, User, PathOrToken, PathMapped, EnabledByOwner, EnabledByUser, HiddenByOwner, HiddenByUser)
|
logger.debug("TRACE/sharing/list/called: ShareType=%r OwnerOrUser=%r User=%r PathOrToken=%r PathMapped=%r EnabledByOwner=%s EnabledByUser=%s HiddenByOwner=%s HiddenByUser=%s Conversion=%r", ShareType, OwnerOrUser, User, PathOrToken, PathMapped, EnabledByOwner, EnabledByUser, HiddenByOwner, HiddenByUser, Conversion)
|
||||||
|
|
||||||
for _ShareType in sharing.SHARE_TYPES_V1:
|
for _ShareType in sharing.SHARE_TYPES_V1:
|
||||||
if ShareType is not None and _ShareType != ShareType:
|
if ShareType is not None and _ShareType != ShareType:
|
||||||
@@ -217,6 +219,8 @@ class Sharing(sharing.BaseSharing):
|
|||||||
pass
|
pass
|
||||||
elif HiddenByUser is not None and row['HiddenByUser'] != HiddenByUser:
|
elif HiddenByUser is not None and row['HiddenByUser'] != HiddenByUser:
|
||||||
pass
|
pass
|
||||||
|
elif Conversion is not None and row['Conversion'] != Conversion:
|
||||||
|
pass
|
||||||
else:
|
else:
|
||||||
if logger.isEnabledFor(logging.DEBUG):
|
if logger.isEnabledFor(logging.DEBUG):
|
||||||
logger.debug("TRACE/sharing/list/row: add: %r", row)
|
logger.debug("TRACE/sharing/list/row: add: %r", row)
|
||||||
@@ -227,13 +231,13 @@ class Sharing(sharing.BaseSharing):
|
|||||||
def database_create_sharing(self,
|
def database_create_sharing(self,
|
||||||
ShareType: str,
|
ShareType: str,
|
||||||
PathOrToken: str, PathMapped: str,
|
PathOrToken: str, PathMapped: str,
|
||||||
|
Conversion: str,
|
||||||
Owner: str, User: str,
|
Owner: str, User: str,
|
||||||
Permissions: str = "r",
|
Permissions: str = "r",
|
||||||
EnabledByOwner: bool = False, EnabledByUser: bool = False,
|
EnabledByOwner: bool = False, EnabledByUser: bool = False,
|
||||||
HiddenByOwner: bool = True, HiddenByUser: bool = True,
|
HiddenByOwner: bool = True, HiddenByUser: bool = True,
|
||||||
Timestamp: int = 0,
|
Timestamp: int = 0,
|
||||||
Properties: Union[dict, None] = None,
|
Properties: Union[dict, None] = None,
|
||||||
Conversion: Union[str, None] = None,
|
|
||||||
Actions: Union[dict, None] = None,
|
Actions: Union[dict, None] = None,
|
||||||
) -> dict:
|
) -> dict:
|
||||||
""" create sharing """
|
""" create sharing """
|
||||||
|
|||||||
Reference in New Issue
Block a user