mirror of
https://github.com/lidarr/lidarr.git
synced 2025-07-14 17:13:49 -07:00
Calendar moved to layout
This commit is contained in:
parent
60e28140ab
commit
c04dc9d5e9
14 changed files with 211 additions and 149 deletions
|
@ -1,92 +0,0 @@
|
|||
'use strict';
|
||||
|
||||
define(['app', 'Calendar/CalendarItemView'], function () {
|
||||
NzbDrone.Calendar.CalendarCollectionView = Backbone.Marionette.CompositeView.extend({
|
||||
itemView : NzbDrone.Calendar.CalendarItemView,
|
||||
itemViewContainer: '#events',
|
||||
template : 'Calendar/CalendarCollectionTemplate',
|
||||
|
||||
ui: {
|
||||
calendar: '#calendar'
|
||||
},
|
||||
|
||||
initialize : function () {
|
||||
//should use this.collection?
|
||||
this.calendar = new NzbDrone.Calendar.CalendarCollection();
|
||||
},
|
||||
onCompositeCollectionRendered: function () {
|
||||
$(this.ui.calendar).empty().fullCalendar({
|
||||
defaultView : 'basicWeek',
|
||||
allDayDefault : false,
|
||||
ignoreTimezone: false,
|
||||
weekMode : 'variable',
|
||||
timeFormat : 'h(:mm)tt',
|
||||
header : {
|
||||
left : 'prev,next today',
|
||||
center: 'title',
|
||||
right : 'month,basicWeek'
|
||||
},
|
||||
buttonText : {
|
||||
prev: '<i class="icon-arrow-left"></i>',
|
||||
next: '<i class="icon-arrow-right"></i>'
|
||||
},
|
||||
events : this.getEvents,
|
||||
eventRender : function (event, element) {
|
||||
$(element).addClass(event.statusLevel);
|
||||
$(element).children('.fc-event-inner').addClass(event.statusLevel);
|
||||
|
||||
element.popover({
|
||||
title : '{seriesTitle} - {season}x{episode} - {episodeTitle}'.assign({
|
||||
seriesTitle : event.title,
|
||||
season : event.seasonNumber,
|
||||
episode : event.episodeNumber.pad(2),
|
||||
episodeTitle: event.episodeTitle
|
||||
}),
|
||||
content : event.overview,
|
||||
placement: 'bottom',
|
||||
trigger : 'manual'
|
||||
});
|
||||
},
|
||||
eventMouseover: function () {
|
||||
$(this).popover('show');
|
||||
},
|
||||
eventMouseout : function () {
|
||||
$(this).popover('hide');
|
||||
}
|
||||
});
|
||||
|
||||
NzbDrone.Calendar.CalendarCollectionView.Instance = this;
|
||||
},
|
||||
|
||||
|
||||
onShow: function () {
|
||||
this.$('.fc-button-today').click();
|
||||
},
|
||||
|
||||
|
||||
getEvents: function (start, end, callback) {
|
||||
var bbView = NzbDrone.Calendar.CalendarCollectionView.Instance;
|
||||
|
||||
var startDate = Date.create(start).format(Date.ISO8601_DATETIME);
|
||||
var endDate = Date.create(end).format(Date.ISO8601_DATETIME);
|
||||
|
||||
bbView.calendar.fetch({
|
||||
data : { start: startDate, end: endDate },
|
||||
success: function (calendarCollection) {
|
||||
_.each(calendarCollection.models, function (element) {
|
||||
var episodeTitle = element.get('title');
|
||||
var seriesTitle = element.get('series').title;
|
||||
var start = element.get('airDate');
|
||||
|
||||
element.set('title', seriesTitle);
|
||||
element.set('episodeTitle', episodeTitle);
|
||||
element.set('start', start);
|
||||
element.set('allDay', false);
|
||||
});
|
||||
|
||||
callback(calendarCollection.toJSON());
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
Loading…
Add table
Add a link
Reference in a new issue