1
- import django
2
1
from django .contrib .auth import get_user_model
3
2
from django .core import signing
4
3
5
- if django .VERSION >= (4 , 0 ):
6
- b62_encode = signing .b62_encode
7
- b62_decode = signing .b62_decode
8
- else :
9
- from django .utils import baseconv
10
-
11
- b62_encode = baseconv .base62 .encode
12
- b62_decode = baseconv .base62 .decode
13
-
14
-
15
4
__all__ = (
16
5
"UserDoesNotExist" ,
17
6
"UserSigner" ,
@@ -39,7 +28,7 @@ def to_timestamp(value):
39
28
"""
40
29
if value is None :
41
30
return ""
42
- return b62_encode (int (value .timestamp ()))
31
+ return signing . b62_encode (int (value .timestamp ()))
43
32
44
33
def sign (self , user ):
45
34
"""
@@ -60,7 +49,7 @@ def sign(self, user):
60
49
61
50
def _make_hash_value (self , user ):
62
51
last_login = self .to_timestamp (user .last_login )
63
- user_pk = b62_encode (user .pk )
52
+ user_pk = signing . b62_encode (user .pk )
64
53
return self .sep .join ((user_pk , last_login ))
65
54
66
55
def unsign (self , value , max_age = None , single_use = True ):
@@ -94,7 +83,7 @@ def unsign(self, value, max_age=None, single_use=True):
94
83
"""
95
84
result = super ().unsign (value , max_age = max_age )
96
85
user_pk , last_login = result .rsplit (self .sep , 2 )
97
- user_pk = b62_decode (user_pk )
86
+ user_pk = signing . b62_decode (user_pk )
98
87
try :
99
88
user = get_user_model ()._default_manager .get (pk = user_pk )
100
89
except get_user_model ().DoesNotExist as e :
0 commit comments