forked from s3lph/matemat
Added log output to receipt generation function.
This commit is contained in:
parent
fecaf55b2b
commit
2161ff79d9
2 changed files with 8 additions and 1 deletions
|
@ -320,6 +320,7 @@ class MatematWebserver(object):
|
|||
_PAGELET_CRON_STATIC_EVENT.set()
|
||||
|
||||
def _cron_runner(self, fun: Callable[[Dict[str, str], jinja2.Environment, logging.Logger], None]):
|
||||
self._httpd.logger.info('Executing cron job "%s"', fun.__name__)
|
||||
fun(self._httpd.pagelet_variables,
|
||||
self._httpd.jinja_env,
|
||||
self._httpd.logger)
|
||||
|
|
|
@ -20,16 +20,22 @@ def receipt_smtp_cron(config: Dict[str, str],
|
|||
if config['SmtpSendReceipts'] != '1':
|
||||
# Sending receipts via mail is disabled
|
||||
return
|
||||
logger.info('Searching users due for receipts.')
|
||||
receipts: List[Receipt] = []
|
||||
# Connect to the database
|
||||
with MatematDatabase(config['DatabaseFile']) as db:
|
||||
users: List[User] = db.list_users()
|
||||
for user in users:
|
||||
if user.email is None:
|
||||
logger.debug('User "%s" has no e-mail address.', user.name)
|
||||
if db.check_receipt_due(user):
|
||||
logger.info('Generating receipt for user "%s".', user.name)
|
||||
# Generate receipts that are due
|
||||
receipt: Receipt = db.create_receipt(user, write=True)
|
||||
receipts.append(receipt)
|
||||
# Send all generated receipts via e-mail
|
||||
else:
|
||||
logger.debug('No receipt due for user "%s".', user.name)
|
||||
# Send all generated receipts via e-mailgi
|
||||
if len(receipts) > 0:
|
||||
_send_receipt_mails(receipts, jinja_env, logger, config)
|
||||
|
||||
|
|
Loading…
Reference in a new issue