in legacy/src/Calendar/EventSources/VSOIterationEventSource.ts [34:104]
public getEvents(query?: Calendar_Contracts.IEventQuery): PromiseLike<Calendar_Contracts.CalendarEvent[]> {
const result: Calendar_Contracts.CalendarEvent[] = [];
this._events = null;
const webContext = VSS.getWebContext();
const teamContext: TFS_Core_Contracts.TeamContext = {
projectId: webContext.project.id,
teamId: this._teamId,
project: "",
team: "",
};
const workClient: Work_Client.WorkHttpClient2_1 = Service.VssConnection
.getConnection()
.getHttpClient(Work_Client.WorkHttpClient2_1, WebApi_Constants.ServiceInstanceTypes.TFS);
// fetch the wit events
return workClient.getTeamIterations(teamContext).then(iterations => {
for (const iteration of iterations) {
if (iteration && iteration.attributes && iteration.attributes.startDate) {
const event: any = {};
event.startDate = iteration.attributes.startDate.toISOString();
if (iteration.attributes.finishDate) {
event.endDate = iteration.attributes.finishDate.toISOString();
}
event.title = iteration.name;
const start = new Date(event.startDate);
const end = new Date(event.endDate);
const startAsUtc = new Date(
start.getUTCFullYear(),
start.getUTCMonth(),
start.getUTCDate(),
start.getUTCHours(),
start.getUTCMinutes(),
start.getUTCSeconds(),
);
const endAsUtc = new Date(
end.getUTCFullYear(),
end.getUTCMonth(),
end.getUTCDate(),
end.getUTCHours(),
end.getUTCMinutes(),
end.getUTCSeconds(),
);
event.category = <Calendar_Contracts.IEventCategory>{
id: this.id + "." + iteration.name,
title: iteration.name,
subTitle: Utils_String.format(
"{0} - {1}",
Utils_Date.format(startAsUtc, "M"),
Utils_Date.format(endAsUtc, "M"),
),
};
if (this._isCurrentIteration(event)) {
event.category.color = Calendar_ColorUtils.generateBackgroundColor(event.title);
} else {
event.category.color = "#FFFFFF";
}
result.push(event);
}
}
result.sort((a, b) => {
return new Date(a.startDate).valueOf() - new Date(b.startDate).valueOf();
});
this._events = result;
return result;
});
}