2
0
Adam Shaw 8 жил өмнө
parent
commit
4ab58b5c6e

+ 0 - 30
src/common/Grid.events.js

@@ -1150,36 +1150,6 @@ function pluckEventDateProps(event) {
 FC.pluckEventDateProps = pluckEventDateProps;
 
 
-function isBgEvent(event) { // returns true if background OR inverse-background
-	var rendering = getEventRendering(event);
-	return rendering === 'background' || rendering === 'inverse-background';
-}
-FC.isBgEvent = isBgEvent; // export
-
-
-function isInverseBgEvent(event) {
-	return getEventRendering(event) === 'inverse-background';
-}
-
-
-function getEventRendering(event) {
-	return firstDefined((event.source || {}).rendering, event.rendering);
-}
-
-
-function groupEventsById(events) {
-	var eventsById = {};
-	var i, event;
-
-	for (i = 0; i < events.length; i++) {
-		event = events[i];
-		(eventsById[event._id] || (eventsById[event._id] = [])).push(event);
-	}
-
-	return eventsById;
-}
-
-
 // A cmp function for determining which non-inverted "ranges" (see above) happen earlier
 function compareRanges(range1, range2) {
 	return range1.start - range2.start; // earlier ranges go first

+ 23 - 0
src/models/EventDefinition.js

@@ -32,8 +32,31 @@ var EventDefinition = Class.extend({
 		copy.miscProps = $.extend({}, this.miscProps);
 
 		return copy;
+	},
+
+
+	getRendering: function() {
+		if (this.rendering != null) {
+			return this.rendering;
+		}
+		if (this.source) {
+			return this.source.rendering;
+		}
+	},
+
+
+	isInverseBgEvent: function() {
+		return this.getRendering() === 'inverse-background';
+	},
+
+
+	isBgEvent: function() {
+		var rendering = this.getRendering();
+
+		return rendering === 'inverse-background' || rendering === 'background';
 	}
 
+
 });
 
 

+ 8 - 3
src/models/EventInstanceGroup.js

@@ -7,11 +7,16 @@ var EventInstanceGroup = Class.extend({
 		this.eventInstances = eventInstances;
 	},
 
+	getEventDef: function() {
+		if (this.eventInstances.length) {
+			return this.eventInstances[0].eventDefinition;
+		}
+	},
+
 	isInverse: function() {
-		var eventInstances = this.eventInstances;
+		var eventDef = this.getEventDef();
 
-		// TODO: ask the source/calendar
-		return eventInstances.length && eventInstances[0].eventDefinition.rendering === 'inverse-background';
+		return eventDef && eventDef.isInverseBgEvent();
 	},
 
 	buildRenderRanges: function(constraintRange, calendar) { // TODO: buildRenderableEventRanges ?