@sunbird-cb/utils-v2 0.0.19 → 0.0.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2166,6 +2166,7 @@
2166
2166
  function EventService(environment, utilitySvc) {
2167
2167
  this.utilitySvc = utilitySvc;
2168
2168
  this.todaysEvents = [];
2169
+ this.todaysLiveEvents = [];
2169
2170
  this.eventsSubject = new rxjs.Subject();
2170
2171
  this.events$ = this.eventsSubject.asObservable();
2171
2172
  this.eventsChatbotSubject = new rxjs.Subject();
@@ -2296,16 +2297,35 @@
2296
2297
  var min = stime.substr(2, 3);
2297
2298
  return date + " " + hour + min;
2298
2299
  };
2300
+ EventService.prototype.sortItemByTime = function (eventsdata) {
2301
+ return eventsdata.sort((function (a, b) {
2302
+ var firstDate = new Date(a.eventDate);
2303
+ var secondDate = new Date(b.eventDate);
2304
+ return secondDate > firstDate ? 1 : -1;
2305
+ }));
2306
+ };
2307
+ EventService.prototype.sortItemByTimeAsc = function (eventsdata) {
2308
+ return eventsdata.sort((function (a, b) {
2309
+ var firstDate = new Date(a.eventDate);
2310
+ var secondDate = new Date(b.eventDate);
2311
+ return secondDate < firstDate ? 1 : -1;
2312
+ }));
2313
+ };
2299
2314
  EventService.prototype.setEventListData = function (eventObj) {
2300
2315
  var _this = this;
2301
2316
  if (eventObj !== undefined) {
2302
2317
  this.todaysEvents = [];
2318
+ this.todaysLiveEvents = [];
2303
2319
  var data_1 = eventObj;
2304
2320
  var isEventLive_1 = false;
2305
2321
  var isEventRecording_1 = false;
2322
+ var isEventPast_1 = false;
2323
+ var isEventFuture_1 = false;
2306
2324
  Object.keys(data_1).forEach((function (index) {
2307
2325
  isEventRecording_1 = false;
2308
2326
  isEventLive_1 = false;
2327
+ isEventPast_1 = false;
2328
+ isEventFuture_1 = false;
2309
2329
  var obj = data_1[index];
2310
2330
  var floor = Math.floor;
2311
2331
  var hours = floor(obj.duration / 60);
@@ -2341,9 +2361,21 @@
2341
2361
  else if (today >= eventendDate) {
2342
2362
  isEventRecording_1 = true;
2343
2363
  isEventLive_1 = false;
2364
+ if (moment(today).isAfter(eventendDate) && moment(today).isAfter(eventDate)) {
2365
+ isEventPast_1 = true;
2366
+ }
2367
+ }
2368
+ else {
2369
+ if (moment(today).isBefore(eventDate) && moment(today).isBefore(eventendDate)) {
2370
+ isEventFuture_1 = true;
2371
+ }
2344
2372
  }
2345
2373
  var eventDataObj = {
2374
+ eventDate: eventDate,
2375
+ eventendDate: eventendDate,
2346
2376
  isEventLive: isEventLive_1,
2377
+ isEventFuture: isEventFuture_1,
2378
+ isEventPast: isEventPast_1,
2347
2379
  isEventRecording: isEventRecording_1,
2348
2380
  event: obj,
2349
2381
  eventName: obj.name,
@@ -2359,14 +2391,29 @@
2359
2391
  pastevent: false,
2360
2392
  };
2361
2393
  var isToday = _this.compareDate(obj.startDate);
2362
- if (isToday && isEventLive_1) {
2394
+ if (isToday) {
2363
2395
  _this.todaysEvents.push(eventDataObj);
2364
2396
  }
2397
+ if (isToday && isEventLive_1) {
2398
+ _this.todaysLiveEvents.push(eventDataObj);
2399
+ }
2365
2400
  }));
2366
- this.todaysEvents = this.todaysEvents.sort((function (a, b) {
2367
- return (a.isEventLive === b.isEventLive) ? 0 : b.isEventLive ? -1 : 1;
2368
- }));
2369
- }
2401
+ this.todaysLiveEvents = this.sortItemByTime(this.todaysLiveEvents);
2402
+ this.todaysEvents = this.getTodaysEvents(this.todaysEvents);
2403
+ }
2404
+ };
2405
+ EventService.prototype.getTodaysEvents = function (eventData) {
2406
+ var liveEvents = [];
2407
+ var pastEvents = [];
2408
+ var futureEvents = [];
2409
+ liveEvents = this.todaysLiveEvents;
2410
+ pastEvents = eventData.filter((function (pastEvent) { return pastEvent.isEventPast; }));
2411
+ futureEvents = eventData.filter((function (futureEvent) { return futureEvent.isEventFuture; }));
2412
+ liveEvents = this.sortItemByTimeAsc(liveEvents);
2413
+ futureEvents = this.sortItemByTimeAsc(futureEvents);
2414
+ pastEvents = this.sortItemByTime(pastEvents);
2415
+ this.todaysEvents = __spread(liveEvents, futureEvents, pastEvents);
2416
+ return this.todaysEvents;
2370
2417
  };
2371
2418
  EventService.decorators = [
2372
2419
  { type: core.Injectable, args: [{
@@ -2382,6 +2429,7 @@
2382
2429
  }());
2383
2430
  if (false) {
2384
2431
  EventService.prototype.todaysEvents;
2432
+ EventService.prototype.todaysLiveEvents;
2385
2433
  EventService.prototype.eventsSubject;
2386
2434
  EventService.prototype.events$;
2387
2435
  EventService.prototype.eventsChatbotSubject;
@@ -2527,8 +2575,10 @@
2527
2575
  this.defaultMaxWidgets = this.defaultMaxWidgets ? this.widgetsLength < this.defaultMaxWidgets ?
2528
2576
  this.widgetsLength : this.defaultMaxWidgets : this.defaultMaxWidgets;
2529
2577
  arrLength_1 = this.defaultMaxWidgets / arrLength_1;
2530
- for (var i = 0; i < arrLength_1; i += 1) {
2531
- this.bottomDotsArray.push(i);
2578
+ if (arrLength_1 !== Infinity) {
2579
+ for (var i = 0; i < arrLength_1; i += 1) {
2580
+ this.bottomDotsArray.push(i);
2581
+ }
2532
2582
  }
2533
2583
  }
2534
2584
  }