@@ -38,12 +38,15 @@ def add_arguments(self, parser):
3838 help = "Minimum interval between re-sending email messages, default: %(default)s days" )
3939 parser .add_argument ('-r' , '--rate' , type = float , default = 1.0 ,
4040 help = 'Rate of sending mail, default: %(default)s/s' )
41+ parser .add_argument ('-R' , '--reminder' , action = 'store_true' , default = False ,
42+ help = 'Preface the subject with "Reminder:"' )
4143 parser .add_argument ('user' , nargs = '*' )
4244
4345
4446 def handle (self , * args , ** options ):
4547 # Don't send copies of the whole bulk mailing to the debug mailbox
46- settings .EMAIL_COPY_TO = "Email Debug Copy <outbound@ietf.org>"
48+ if settings .SERVER_MODE == 'production' :
49+ settings .EMAIL_COPY_TO = "Email Debug Copy <outbound@ietf.org>"
4750 #
4851 event_type = 'gdpr_notice_email'
4952 # Arguments
@@ -73,6 +76,9 @@ def handle(self, *args, **options):
7376 # Report the size of the run
7477 runtime = persons .count () * delay
7578 self .stdout .write ('Sending to %d users; estimated time a bit more than %d:%02d hours' % (persons .count (), runtime // 3600 , runtime % 3600 // 60 ))
79+ subject = 'Personal Information in the IETF Datatracker'
80+ if options ['reminder' ]:
81+ subject = "Reminder: " + subject
7682 for person in persons :
7783 fields = ', ' .join (person .needs_consent ())
7884 if fields and person .email_set .exists ():
@@ -84,7 +90,7 @@ def handle(self, *args, **options):
8490 to = [ e .address for e in person .email_set .all () ] # pyflakes:ignore
8591 self .stdout .write ("Sendimg email to %s" % to )
8692 send_mail (None , to , "<gdprnoreply@ietf.org>" ,
87- subject = 'Personal Information in the IETF Datatracker' ,
93+ subject = subject ,
8894 template = 'utils/personal_information_notice.txt' ,
8995 context = {
9096 'date' : date , 'days' : days , 'fields' : fields ,
0 commit comments