def post(self, request, format=None): auth_token = request.auth if isinstance(auth_token, TokenV2) and auth_token.is_desktop_client(): seafile_api.delete_repo_tokens_by_peer_id(request.user.username, auth_token.device_id) auth_token.delete() return {}
def do_unlink_device(username, platform, device_id): if platform in DESKTOP_PLATFORMS: # For desktop client, we also remove the sync tokens msg = 'failed to delete_repo_tokens_by_peer_id' try: if seafile_api.delete_repo_tokens_by_peer_id(username, device_id) < 0: logger.warning(msg) raise Exception(msg) except: logger.exception(msg) raise TokenV2.objects.delete_device_token(username, platform, device_id)
def do_unlink_device(username, platform, device_id, remote_wipe=False): if platform in DESKTOP_PLATFORMS: # For desktop client, we also remove the sync tokens msg = 'failed to delete_repo_tokens_by_peer_id' try: if seafile_api.delete_repo_tokens_by_peer_id(username, device_id) < 0: logger.warning(msg) raise Exception(msg) except: logger.exception(msg) raise if remote_wipe: try: TokenV2.objects.mark_device_to_be_remote_wiped(username, platform, device_id) except Exception as e: logger.error(e) TokenV2.objects.delete_device_token(username, platform, device_id) else: TokenV2.objects.delete_device_token(username, platform, device_id)
def post(self, request, format=None): auth_token = request.auth if isinstance(auth_token, TokenV2) and auth_token.is_desktop_client(): seafile_api.delete_repo_tokens_by_peer_id(request.user.username, auth_token.device_id) auth_token.delete() return {}