diff --git a/seahub/api2/endpoints/admin/org_users.py b/seahub/api2/endpoints/admin/org_users.py index 957b7dd86d..572fbe7a17 100644 --- a/seahub/api2/endpoints/admin/org_users.py +++ b/seahub/api2/endpoints/admin/org_users.py @@ -312,11 +312,11 @@ class AdminOrgUser(APIView): orgs = ccnet_api.get_orgs_by_user(email) if orgs: org_id = orgs[0].org_id - seafile_db.delete_all_received_shares(email, org_id) - seafile_db.delete_all_my_shares(email, org_id) + seafile_db.delete_received_share_by_user(email, org_id) + seafile_db.delete_share_by_user(email, org_id) else: - seafile_db.delete_all_received_shares(email) - seafile_db.delete_all_my_shares(email) + seafile_db.delete_received_share_by_user(email) + seafile_db.delete_share_by_user(email) ExtraSharePermission.objects.filter(share_to=username).delete() try: diff --git a/seahub/api2/endpoints/admin/users.py b/seahub/api2/endpoints/admin/users.py index 035b79a37b..7f243f20a7 100644 --- a/seahub/api2/endpoints/admin/users.py +++ b/seahub/api2/endpoints/admin/users.py @@ -1270,11 +1270,11 @@ class AdminUser(APIView): orgs = ccnet_api.get_orgs_by_user(email) if orgs: org_id = orgs[0].org_id - seafile_db.delete_all_received_shares(email, org_id) - seafile_db.delete_all_my_shares(email, org_id) + seafile_db.delete_received_share_by_user(email, org_id) + seafile_db.delete_share_by_user(email, org_id) else: - seafile_db.delete_all_received_shares(email) - seafile_db.delete_all_my_shares(email) + seafile_db.delete_received_share_by_user(email) + seafile_db.delete_share_by_user(email) ExtraSharePermission.objects.filter(share_to=username).delete() try: is_active = to_python_boolean(is_active) diff --git a/seahub/utils/db_api.py b/seahub/utils/db_api.py index 3700689a5d..f112430371 100644 --- a/seahub/utils/db_api.py +++ b/seahub/utils/db_api.py @@ -619,7 +619,8 @@ class SeafileDB: wikis.append(wiki_info) return wikis - def delete_all_received_shares(self, username, org_id=''): + def delete_received_share_by_user(self, username, org_id=''): + # Delete the share content shared to if org_id: delete_share_sql = f""" DELETE FROM `{self.db_name}`.`OrgSharedRepo` WHERE to_email=%s AND org_id=%s @@ -632,7 +633,8 @@ class SeafileDB: with connection.cursor() as cursor: cursor.execute(delete_share_sql, [username, org_id] if org_id else [username]) - def delete_all_my_shares(self, username, org_id=''): + def delete_share_by_user(self, username, org_id=''): + # Delete the share content shared from if org_id: delete_share_sql = f""" DELETE FROM `{self.db_name}`.`OrgSharedRepo` WHERE from_email=%s AND org_id=%s