@@ -325,8 +325,12 @@ def detect_email(backend, response, details, **kwargs): logger.info(f'{response=} from detect_email') logger.info(f'{details=} from detect_email') logger.info(f'{kwargs=} from detect_email') - if backend.name == 'yandex-oauth2' and not response.get('default_email') and response.get('login'): - details['email'] = f'{response["login"]}@yandex.ru' + if ( + backend.name == 'yandex-oauth2' + and not response.get('default_email') + and (login := response.get('login')) + ): + details['email'] = f'{login.split('@')[0]}@yandex.ru' if "@" not in login else login details['username'] = response['login'] return kwargs | {'backend': backend} | {'response': response} | {'details': details}