Added the week number parameter.

This commit is contained in:
samip5 2018-04-09 17:20:51 +03:00
parent b144ded87b
commit 0186363753
3 changed files with 10 additions and 2 deletions

View file

@ -519,6 +519,7 @@ NEWSLETTER_PARAMETERS = [
'parameters': [ 'parameters': [
{'name': 'Server Name', 'type': 'str', 'value': 'server_name', 'description': 'The name of your Plex Server.'}, {'name': 'Server Name', 'type': 'str', 'value': 'server_name', 'description': 'The name of your Plex Server.'},
{'name': 'Start Date', 'type': 'str', 'value': 'start_date', 'description': 'The start date of the newesletter.'}, {'name': 'Start Date', 'type': 'str', 'value': 'start_date', 'description': 'The start date of the newesletter.'},
{'name': 'Week Number', 'type': 'int', 'value': 'newsletter_week_number', 'description': 'The week number of current week.'},
{'name': 'End Date', 'type': 'str', 'value': 'end_date', 'description': 'The end date of the newesletter.'}, {'name': 'End Date', 'type': 'str', 'value': 'end_date', 'description': 'The end date of the newesletter.'},
{'name': 'Newsletter Days', 'type': 'int', 'value': 'newsletter_days', 'description': 'The past number of days included in the newsletter.'}, {'name': 'Newsletter Days', 'type': 'int', 'value': 'newsletter_days', 'description': 'The past number of days included in the newsletter.'},
{'name': 'Newsletter URL', 'type': 'str', 'value': 'newsletter_url', 'description': 'The self-hosted URL to the newsletter.'}, {'name': 'Newsletter URL', 'type': 'str', 'value': 'newsletter_url', 'description': 'The self-hosted URL to the newsletter.'},

View file

@ -19,7 +19,7 @@ from itertools import groupby
from mako.lookup import TemplateLookup from mako.lookup import TemplateLookup
from mako import exceptions from mako import exceptions
import os import os
import datetime
import plexpy import plexpy
import common import common
import database import database
@ -308,13 +308,14 @@ class Newsletter(object):
_TEMPLATE_MASTER = '' _TEMPLATE_MASTER = ''
_TEMPLATE = '' _TEMPLATE = ''
def __init__(self, config=None, email_config=None, start_date=None, end_date=None, def __init__(self, config=None, email_config=None, start_date=None, week_number=None, end_date=None,
subject=None, body=None, message=None): subject=None, body=None, message=None):
self.config = self.set_config(config=config, default=self._DEFAULT_CONFIG) self.config = self.set_config(config=config, default=self._DEFAULT_CONFIG)
self.email_config = self.set_config(config=email_config, default=self._DEFAULT_EMAIL_CONFIG) self.email_config = self.set_config(config=email_config, default=self._DEFAULT_EMAIL_CONFIG)
self.uuid = generate_newsletter_uuid() self.uuid = generate_newsletter_uuid()
self.start_date = None self.start_date = None
self.week_number = None
self.end_date = None self.end_date = None
if end_date: if end_date:
@ -332,6 +333,9 @@ class Newsletter(object):
except ValueError: except ValueError:
pass pass
if week_number is None:
self.week_number = int(datetime.date.today().strftime("%W"))
if self.start_date is None: if self.start_date is None:
self.start_date = self.end_date.shift(days=-self.config['last_days']+1).floor('day') self.start_date = self.end_date.shift(days=-self.config['last_days']+1).floor('day')
@ -477,6 +481,7 @@ class Newsletter(object):
'server_name': plexpy.CONFIG.PMS_NAME, 'server_name': plexpy.CONFIG.PMS_NAME,
'start_date': self.start_date.format(date_format), 'start_date': self.start_date.format(date_format),
'end_date': self.end_date.format(date_format), 'end_date': self.end_date.format(date_format),
'newsletter_week_number': self.week_number,
'newsletter_days': self.config['last_days'], 'newsletter_days': self.config['last_days'],
'newsletter_url': base_url.rstrip('/') + plexpy.HTTP_ROOT + 'newsletter/' + self.uuid, 'newsletter_url': base_url.rstrip('/') + plexpy.HTTP_ROOT + 'newsletter/' + self.uuid,
'newsletter_uuid': self.uuid 'newsletter_uuid': self.uuid

View file

@ -26,6 +26,7 @@ import re
from string import Formatter from string import Formatter
import threading import threading
import time import time
from datetime import date
import plexpy import plexpy
import activity_processor import activity_processor
@ -702,6 +703,7 @@ def build_media_notify_params(notify_action=None, session=None, timeline=None, m
'tautulli_remote': plexpy.CONFIG.GIT_REMOTE, 'tautulli_remote': plexpy.CONFIG.GIT_REMOTE,
'tautulli_branch': plexpy.CONFIG.GIT_BRANCH, 'tautulli_branch': plexpy.CONFIG.GIT_BRANCH,
'tautulli_commit': plexpy.CURRENT_VERSION, 'tautulli_commit': plexpy.CURRENT_VERSION,
'week_number': int(date.today().isocalendar()[1]),
'server_name': plexpy.CONFIG.PMS_NAME, 'server_name': plexpy.CONFIG.PMS_NAME,
'server_ip': plexpy.CONFIG.PMS_IP, 'server_ip': plexpy.CONFIG.PMS_IP,
'server_port': plexpy.CONFIG.PMS_PORT, 'server_port': plexpy.CONFIG.PMS_PORT,