99 PGP_SYM_ENCRYPT_SQL ,
1010)
1111from pgcrypto .lookups import (
12- DateEXACT ,
13- DateGT ,
14- DateGTE ,
15- DateLT ,
16- DateLTE ,
17- DateTimeEXACT ,
18- DateTimeGT ,
19- DateTimeGTE ,
20- DateTimeLT ,
21- DateTimeLTE ,
12+ DatePGPPublicKeyEXACT ,
13+ DatePGPPublicKeyGT ,
14+ DatePGPPublicKeyGTE ,
15+ DatePGPPublicKeyLT ,
16+ DatePGPPublicKeyLTE ,
17+ DatePGPSymmetricKeyEXACT ,
18+ DatePGPSymmetricKeyGT ,
19+ DatePGPSymmetricKeyGTE ,
20+ DatePGPSymmetricKeyLT ,
21+ DatePGPSymmetricKeyLTE ,
22+ DateTimePGPPublicKeyEXACT ,
23+ DateTimePGPPublicKeyGT ,
24+ DateTimePGPPublicKeyGTE ,
25+ DateTimePGPPublicKeyLT ,
26+ DateTimePGPPublicKeyLTE ,
27+ DateTimePGPSymmetricKeyEXACT ,
28+ DateTimePGPSymmetricKeyGT ,
29+ DateTimePGPSymmetricKeyGTE ,
30+ DateTimePGPSymmetricKeyLT ,
31+ DateTimePGPSymmetricKeyLTE ,
2232 DigestLookup ,
2333 HMACLookup ,
2434)
2535from pgcrypto .mixins import (
36+ DatePGPPublicKeyFieldMixin ,
2637 DatePGPSymmetricKeyFieldMixin ,
38+ DateTimePGPPublicKeyFieldMixin ,
2739 DateTimePGPSymmetricKeyFieldMixin ,
2840 EmailPGPPublicKeyFieldMixin ,
2941 EmailPGPSymmetricKeyFieldMixin ,
@@ -64,6 +76,32 @@ class TextPGPPublicKeyField(PGPPublicKeyFieldMixin, models.TextField):
6476 encrypt_sql = PGP_PUB_ENCRYPT_SQL
6577
6678
79+ class DatePGPPublicKeyField (DatePGPPublicKeyFieldMixin , models .TextField ):
80+ """Date PGP public key encrypted field for postgres."""
81+ encrypt_sql = PGP_PUB_ENCRYPT_SQL
82+ cast_sql = 'cast(%s as DATE)'
83+
84+
85+ DatePGPPublicKeyField .register_lookup (DatePGPPublicKeyEXACT )
86+ DatePGPPublicKeyField .register_lookup (DatePGPPublicKeyGT )
87+ DatePGPPublicKeyField .register_lookup (DatePGPPublicKeyGTE )
88+ DatePGPPublicKeyField .register_lookup (DatePGPPublicKeyLT )
89+ DatePGPPublicKeyField .register_lookup (DatePGPPublicKeyLTE )
90+
91+
92+ class DateTimePGPPublicKeyField (DateTimePGPPublicKeyFieldMixin , models .TextField ):
93+ """DateTime PGP public key encrypted field for postgres."""
94+ encrypt_sql = PGP_PUB_ENCRYPT_SQL
95+ cast_sql = 'cast(%s as TIMESTAMP)'
96+
97+
98+ DateTimePGPPublicKeyField .register_lookup (DateTimePGPPublicKeyEXACT )
99+ DateTimePGPPublicKeyField .register_lookup (DateTimePGPPublicKeyGT )
100+ DateTimePGPPublicKeyField .register_lookup (DateTimePGPPublicKeyGTE )
101+ DateTimePGPPublicKeyField .register_lookup (DateTimePGPPublicKeyLT )
102+ DateTimePGPPublicKeyField .register_lookup (DateTimePGPPublicKeyLTE )
103+
104+
67105class EmailPGPSymmetricKeyField (EmailPGPSymmetricKeyFieldMixin , models .EmailField ):
68106 """Email PGP symmetric key encrypted field."""
69107 encrypt_sql = PGP_SYM_ENCRYPT_SQL
@@ -85,11 +123,11 @@ class DatePGPSymmetricKeyField(DatePGPSymmetricKeyFieldMixin, models.TextField):
85123 cast_sql = 'cast(%s as DATE)'
86124
87125
88- DatePGPSymmetricKeyField .register_lookup (DateEXACT )
89- DatePGPSymmetricKeyField .register_lookup (DateGT )
90- DatePGPSymmetricKeyField .register_lookup (DateGTE )
91- DatePGPSymmetricKeyField .register_lookup (DateLT )
92- DatePGPSymmetricKeyField .register_lookup (DateLTE )
126+ DatePGPSymmetricKeyField .register_lookup (DatePGPSymmetricKeyEXACT )
127+ DatePGPSymmetricKeyField .register_lookup (DatePGPSymmetricKeyGT )
128+ DatePGPSymmetricKeyField .register_lookup (DatePGPSymmetricKeyGTE )
129+ DatePGPSymmetricKeyField .register_lookup (DatePGPSymmetricKeyLT )
130+ DatePGPSymmetricKeyField .register_lookup (DatePGPSymmetricKeyLTE )
93131
94132
95133class DateTimePGPSymmetricKeyField (DateTimePGPSymmetricKeyFieldMixin , models .TextField ):
@@ -98,8 +136,8 @@ class DateTimePGPSymmetricKeyField(DateTimePGPSymmetricKeyFieldMixin, models.Tex
98136 cast_sql = 'cast(%s as TIMESTAMP)'
99137
100138
101- DateTimePGPSymmetricKeyField .register_lookup (DateTimeEXACT )
102- DateTimePGPSymmetricKeyField .register_lookup (DateTimeGT )
103- DateTimePGPSymmetricKeyField .register_lookup (DateTimeGTE )
104- DateTimePGPSymmetricKeyField .register_lookup (DateTimeLT )
105- DateTimePGPSymmetricKeyField .register_lookup (DateTimeLTE )
139+ DateTimePGPSymmetricKeyField .register_lookup (DateTimePGPSymmetricKeyEXACT )
140+ DateTimePGPSymmetricKeyField .register_lookup (DateTimePGPSymmetricKeyGT )
141+ DateTimePGPSymmetricKeyField .register_lookup (DateTimePGPSymmetricKeyGTE )
142+ DateTimePGPSymmetricKeyField .register_lookup (DateTimePGPSymmetricKeyLT )
143+ DateTimePGPSymmetricKeyField .register_lookup (DateTimePGPSymmetricKeyLTE )
0 commit comments