end-higri-date.component.ts 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import { Component, Injectable, OnInit, EventEmitter, Output, Input } from '@angular/core';
  2. import {
  3. NgbDate,NgbDateStruct, NgbCalendar, NgbCalendarIslamicUmalqura, NgbDatepickerI18n
  4. } from '@ng-bootstrap/ng-bootstrap';
  5. const WEEKDAYS = ['ن', 'ث', 'ر', 'خ', 'ج', 'س', 'ح'];
  6. const MONTHS = ['محرم', 'صفر', 'ربيع الأول', 'ربيع الآخر', 'جمادى الأولى', 'جمادى الآخرة', 'رجب', 'شعبان', 'رمضان', 'شوال',
  7. 'ذو القعدة', 'ذو الحجة'];
  8. @Injectable()
  9. export class IslamicI18n extends NgbDatepickerI18n {
  10. getWeekdayShortName(weekday: number) {
  11. return WEEKDAYS[weekday - 1];
  12. }
  13. getMonthShortName(month: number) {
  14. return MONTHS[month - 1];
  15. }
  16. getMonthFullName(month: number) {
  17. return MONTHS[month - 1];
  18. }
  19. getDayAriaLabel(date: NgbDateStruct): string {
  20. return `${date.day}-${date.month}-${date.year}`;
  21. }
  22. }
  23. @Component({
  24. selector: 'app-end-higri-date',
  25. templateUrl: './end-higri-date.component.html',
  26. styleUrls: ['./end-higri-date.component.css'],
  27. providers: [
  28. {provide: NgbCalendar, useClass: NgbCalendarIslamicUmalqura},
  29. {provide: NgbDatepickerI18n, useClass: IslamicI18n}
  30. ]
  31. })
  32. export class EndHigriDateComponent implements OnInit {
  33. @Output() onDatePicked: EventEmitter<NgbDate> = new EventEmitter<NgbDate>();
  34. @Input() myEndDate;
  35. @Input() higriDisabled;
  36. endModel: NgbDateStruct;
  37. ngOnInit() {
  38. this.endModel = this.myEndDate;
  39. console.log('moooodeeeeeeeeel' , this.myEndDate);
  40. }
  41. constructor(private calendar: NgbCalendar) {}
  42. onSearchChange(date) {
  43. this.onDatePicked.emit(date);
  44. }
  45. }