mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-10 23:42:37 -07:00
Add generating newsletter loader
This commit is contained in:
parent
25355f29ce
commit
8b1c7df3ce
4 changed files with 77 additions and 3 deletions
|
@ -3976,3 +3976,18 @@ a:hover .overlay-refresh-image:hover {
|
|||
-webkit-appearance: none;
|
||||
margin: 0;
|
||||
}
|
||||
.newsletter-loader-container {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
}
|
||||
.newsletter-loader-message {
|
||||
color: #282A2D;
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
left: 50%;
|
||||
top: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
|
|
@ -302,6 +302,9 @@
|
|||
<p class="help-block">
|
||||
Test if the ${newsletter['agent_label']} newsletter is working. Check the <a href="logs">logs</a> for troubleshooting.
|
||||
</p>
|
||||
<p class="help-block">
|
||||
Warning: This will send the newsletter to all users in your email configuration!
|
||||
</p>
|
||||
<div class="form-group">
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
|
|
42
data/interfaces/default/newsletter_preview.html
Normal file
42
data/interfaces/default/newsletter_preview.html
Normal file
|
@ -0,0 +1,42 @@
|
|||
<!doctype html>
|
||||
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Tautulli - ${title} | ${server_name}</title>
|
||||
<link href="${http_root}css/plexpy.css${cache_param}" rel="stylesheet">
|
||||
<link href="${http_root}css/opensans.min.css" rel="stylesheet">
|
||||
<link href="${http_root}css/font-awesome.min.css" rel="stylesheet">
|
||||
<style>
|
||||
* {
|
||||
padding: 0 !important;
|
||||
margin: 0 !important;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="loader" class="newsletter-loader-container">
|
||||
<div class="newsletter-loader-message">
|
||||
<i class="fa fa-refresh fa-spin"></i> Generating Newsletter
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<script src="${http_root}js/jquery-2.1.4.min.js"></script>
|
||||
<script>
|
||||
$(document).ready(function () {
|
||||
var frame = $('<iframe></iframe>', {
|
||||
src: 'real_newsletter?newsletter_id=${newsletter_id}&preview=${preview}&master=${master}&raw=${raw}',
|
||||
frameborder: '0',
|
||||
style: 'display: none; height: 100vh; width: 100vw;'
|
||||
});
|
||||
frame.on('load', function (e) {
|
||||
$(e.target).fadeIn();
|
||||
$('#loader').fadeOut();
|
||||
});
|
||||
$('body').append(frame)
|
||||
});
|
||||
</script>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -5491,18 +5491,32 @@ class WebInterface(object):
|
|||
@cherrypy.expose
|
||||
@requireAuth(member_of("admin"))
|
||||
def newsletter(self, newsletter_id=None, preview=False, master=False, raw=False, **kwargs):
|
||||
return serve_template(templatename="newsletter_preview.html",
|
||||
title="Newsletter",
|
||||
newsletter_id=newsletter_id,
|
||||
preview=preview,
|
||||
master=master,
|
||||
raw=raw)
|
||||
|
||||
@cherrypy.expose
|
||||
@requireAuth(member_of("admin"))
|
||||
def real_newsletter(self, newsletter_id=None, preview=False, master=False, raw=False, **kwargs):
|
||||
if newsletter_id:
|
||||
newsletter = newsletters.get_newsletter_config(newsletter_id=newsletter_id)
|
||||
newsletter_agent = newsletters.get_agent_class(agent_id=newsletter['agent_id'], config=newsletter['config'])
|
||||
|
||||
if newsletter_agent:
|
||||
if newsletter:
|
||||
newsletter_agent = newsletters.get_agent_class(agent_id=newsletter['agent_id'],
|
||||
config=newsletter['config'])
|
||||
preview = (preview == 'true')
|
||||
master = (master == 'true')
|
||||
raw = (raw == 'true')
|
||||
|
||||
if raw:
|
||||
cherrypy.response.headers['Content-Type'] = 'application/json;charset=UTF-8'
|
||||
return json.dumps(newsletter_agent.raw_data(preview=preview))
|
||||
|
||||
return newsletter_agent.generate_newsletter(preview=preview, master=master)
|
||||
|
||||
return "Invalid newsletter id %s" % newsletter_id
|
||||
return "Invalid Newsletter ID #%s" % newsletter_id
|
||||
|
||||
return "Missing newsletter_id parameter"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue