Filter history modal on graphs based on clicked series

This commit is contained in:
JonnyWong16 2016-03-04 22:21:34 -08:00
parent e8a65df7f0
commit efdc050a28
5 changed files with 38 additions and 15 deletions

View file

@ -249,7 +249,7 @@
<script>
// Modal popup dialog
function selectHandler(selectedDate) {
function selectHandler(selectedDate, selectedSeries) {
try
{
@ -259,10 +259,25 @@
var y = dateValue.getFullYear();
var dateString = '' + y + '-' + (m<=9 ? '0' + m : m) + '-' + (d <= 9 ? '0' + d : d);
var media_type = 'all';
var transcode_decision = null;
switch(selectedSeries) {
case "TV": media_type = 'episode'; break;
case "Movies": media_type = 'movie'; break;
case "Music": media_type = 'track'; break;
case "Direct Play": transcode_decision = 'direct play'; break;
case "Direct Stream": transcode_decision = 'copy'; break;
case "Transcode": transcode_decision = 'transcode'; break;
}
$.ajax({
"url": "history_table_modal",
url: "history_table_modal",
type: 'post',
data: { 'start_date': dateString },
data: {
start_date: dateString,
media_type: media_type,
transcode_decision: transcode_decision
},
complete: function(xhr, status) {
$('#history-modal').modal('show');
$("#history-modal").html(xhr.responseText);
@ -271,7 +286,7 @@
}
catch(err)
{
console.log("Failed to retrieve data");
console.log("Failed to retrieve history modal data.");
}
}
</script>

View file

@ -5,7 +5,7 @@
<button type="button" class="close" data-dismiss="modal" aria-hidden="true"><i class="fa fa-remove"></i></button>
<h4 class="modal-title" id="myModalLabel">
<strong><span id="modal_header_ip_address">
<i class="fa fa-history"></i> History for <span id="date-header">${data}</span>
<i class="fa fa-history"></i> History for <span id="date-header">${data['start_date']}</span>
</span></strong>
</h4>
</div>
@ -32,7 +32,7 @@
<script src="interfaces/default/js/tables/history_table_modal.js"></script>
<script>
$(document).ready(function() {
$('#date-header').html(moment('${data}','YYYY-MM-DD').format('ddd MMM Do YYYY'));
$('#date-header').html(moment('${data["start_date"]}','YYYY-MM-DD').format('ddd MMM Do YYYY'));
history_table_modal_options.ajax = {
url: 'get_history',
type: 'post',
@ -40,7 +40,9 @@
return {
json_data: JSON.stringify(d),
grouping: false,
start_date: '${data}'
start_date: "${data['start_date']}",
media_type: "${data.get('media_type')}",
transcode_decision: "${data.get('transcode_decision')}"
};
}
}

View file

@ -28,8 +28,8 @@ var hc_plays_by_day_options = {
cursor: 'pointer',
point: {
events: {
click: function() {
selectHandler(this.category);
click: function () {
selectHandler(this.category, this.series.name);
}
}
}
@ -60,7 +60,8 @@ var hc_plays_by_day_options = {
}
},
tooltip: {
shared: true
shared: true,
crosshairs: true
},
series: [{}]
};

View file

@ -29,7 +29,7 @@ var hc_plays_by_stream_type_options = {
point: {
events: {
click: function() {
selectHandler(this.category);
selectHandler(this.category, this.series.name);
}
}
}
@ -60,7 +60,8 @@ var hc_plays_by_stream_type_options = {
}
},
tooltip: {
shared: true
shared: true,
crosshairs: true
},
series: [{}]
};

View file

@ -777,6 +777,10 @@ class WebInterface(object):
media_type = kwargs.get('media_type', "")
if media_type != 'all':
custom_where.append(['session_history.media_type', media_type])
if 'transcode_decision' in kwargs:
transcode_decision = kwargs.get('transcode_decision', "")
if transcode_decision:
custom_where.append(['session_history_media_info.transcode_decision', transcode_decision])
data_factory = datafactory.DataFactory()
history = data_factory.get_datatables_history(kwargs=kwargs, custom_where=custom_where, grouping=grouping, watched_percent=watched_percent)
@ -990,9 +994,9 @@ class WebInterface(object):
logger.warn(u"Unable to retrieve data for get_stream_type_by_top_10_platforms.")
@cherrypy.expose
def history_table_modal(self, start_date=None, **kwargs):
def history_table_modal(self, **kwargs):
return serve_template(templatename="history_table_modal.html", title="History Data", data=start_date)
return serve_template(templatename="history_table_modal.html", title="History Data", data=kwargs)
##### Sync #####