Guest User

Untitled

a guest
Oct 19th, 2017
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.01 KB | None | 0 0
  1. generateHeadings(): AsyncSubject<CalendarHeading[]> {
  2.  
  3. let subjectGenerateHeadings = new AsyncSubject<CalendarHeading[]>();
  4.  
  5. /* Calculate month headings */
  6. let i;
  7. let currentMonth = this.month;
  8.  
  9. // 3 Headings : 93 days
  10.  
  11. for (i = 0; i < 3; i++) {
  12.  
  13. let heading: CalendarHeading = {
  14. clickViewType: this.viewType = 'q',
  15. title: this.getMonthName(currentMonth),
  16. }
  17.  
  18. currentMonth++;
  19. this.calendarHeadings.push(heading);
  20. // console.log(this.monthlyHeadings);
  21. }
  22.  
  23. /* Calculate week headings */
  24.  
  25. let weekCount = this.weekCount(this.year, this.month);
  26.  
  27. this.weekNo = SabreCommon.getISOWeekNumber();
  28.  
  29. for (i = 0; i < this.weekCount(this.year, this.month); i++) {
  30.  
  31. // 1 heading : 4-5 Weeks
  32. var mthHeading: CalendarHeading = {
  33. clickViewType: this.viewType = 'm',
  34. weekNumber: this.weekNo,
  35. daysInMonth: this.monthLength,
  36. numberOfWeeks: this.weekCount(this.year, this.month),
  37. }
  38.  
  39. this.weekNo++
  40. this.calendarHeadings.push(mthHeading);
  41. // console.log(this.weeklyHeadings);
  42. }
  43.  
  44.  
  45. /* Calculate week days */
  46.  
  47. let daysOfWeek = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
  48.  
  49. for (i = 1; i < 7; i++) {
  50.  
  51. let wklHeading: CalendarHeading = {
  52. dayOfWeek: this.dayName,
  53. clickViewType: this.viewType = 'w'
  54. }
  55.  
  56. switch (this.day) {
  57. case 0:
  58. this.dayName = 'Monday';
  59. break;
  60. case 1:
  61. this.dayName = 'Tuesday';
  62. break;
  63. case 2:
  64. this.dayName = 'Wednesday';
  65. break;
  66. case 3:
  67. this.dayName = 'Thursday';
  68. break;
  69. case 4:
  70. this.dayName = 'Friday';
  71. break;
  72. case 5:
  73. this.dayName = 'Saturday';
  74. case 6:
  75. this.dayName = 'Sunday';
  76. break;
  77. }
  78. this.day++;
  79. this.calendarHeadings.push(wklHeading);
  80. // console.log(this.dailyHeadings);
  81. }
  82.  
  83. // this.calendarHeadings.map(x => {
  84. // switch (x.clickViewType) {
  85. // case 'q':
  86. // this.calendarHeadings = this.monthlyHeadings;
  87. // break;
  88. // case 'm':
  89. // this.calendarHeadings = this.weeklyHeadings;
  90. // case 'w':
  91. // this.calendarHeadings = this.dailyHeadings;
  92. // }
  93.  
  94. // })
  95.  
  96. subjectGenerateHeadings.next(this.calendarHeadings);
  97. console.log(this.calendarHeadings);
  98. subjectGenerateHeadings.complete;
  99.  
  100. return subjectGenerateHeadings;
  101.  
  102. }
Add Comment
Please, Sign In to add comment