diff --git a/src/app/community/community.component.ts b/src/app/community/community.component.ts index 6c81a417cc..16db15e92a 100644 --- a/src/app/community/community.component.ts +++ b/src/app/community/community.component.ts @@ -8,6 +8,7 @@ import { DialogsLoadingService } from '../shared/dialogs/dialogs-loading.service import { MatDialog } from '@angular/material/dialog'; import { CommunityLinkDialogComponent } from './community-link-dialog.component'; import { TeamsService } from '../teams/teams.service'; +import { DialogsAnnouncementComponent } from '../shared/dialogs/dialogs-announcement.component'; import { DialogsPromptComponent } from '../shared/dialogs/dialogs-prompt.component'; import { CouchService } from '../shared/couchdb.service'; import { PlanetMessageService } from '../shared/planet-message.service'; @@ -48,6 +49,18 @@ export class CommunityComponent implements OnInit, OnDestroy { resizeCalendar: any = false; deviceType: DeviceType; deviceTypes = DeviceType; + challengeActive: boolean; + challengeTemplate = ` + # Challenge Template + + Please add your screenshot below: + + ![Screenshot](https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRUcXBM7Z8y61oNm2yWy_4NPsGPBvCcKJiPhw&s) + + Please add your short message below: + + > Your message here... + `; constructor( private dialog: MatDialog, @@ -83,6 +96,10 @@ export class CommunityComponent implements OnInit, OnDestroy { this.setCouncillors(users); } }); + this.challengeActive = this.configuration.code === 'learning' && new Date().getMonth() === 9; + if (this.challengeActive) { + this.openAnnouncementDialog(); + } } @HostListener('window:resize') onResize() { @@ -139,7 +156,11 @@ export class CommunityComponent implements OnInit, OnDestroy { } } - openAddMessageDialog(message = '') { + openAnnouncementDialog() { + this.dialog.open(DialogsAnnouncementComponent); + } + + openAddMessageDialog(message = this.challengeActive ? this.challengeTemplate : '') { this.dialogsFormService.openDialogsForm( $localize`Add Voice`, [ { name: 'message', placeholder: $localize`Your Voice`, type: 'markdown', required: true, imageGroup: 'community' } ], diff --git a/src/app/shared/dialogs/dialogs-announcement.component.ts b/src/app/shared/dialogs/dialogs-announcement.component.ts new file mode 100644 index 0000000000..814b63e2ee --- /dev/null +++ b/src/app/shared/dialogs/dialogs-announcement.component.ts @@ -0,0 +1,35 @@ +import { Component } from '@angular/core'; +import { MatDialogRef } from '@angular/material/dialog'; + +@Component({ + template: ` + + ` +}) +export class DialogsAnnouncementComponent { + announcement = ` + ## Planet issues challenge + + issues challenge + + Get ready for virtual intern github issues challenge! + + **Duration:** 30 days + + ## Steps to participate: + - Find an issue on Planet + - Take a screenshot/record a video + - Create an issue on our github repository using link below + + [open new Planet issue](https://github.com/open-learning-exchange/planet/issues/new) + `; + + + constructor( + public dialogRef: MatDialogRef, + ) {} + + onClose(): void { + this.dialogRef.close(); + } +} diff --git a/src/app/shared/dialogs/planet-dialogs.module.ts b/src/app/shared/dialogs/planet-dialogs.module.ts index 879ce81aa5..0a7f384566 100644 --- a/src/app/shared/dialogs/planet-dialogs.module.ts +++ b/src/app/shared/dialogs/planet-dialogs.module.ts @@ -16,6 +16,7 @@ import { SharedComponentsModule } from '../shared-components.module'; import { SyncDirective } from '../../manager-dashboard/sync.directive'; import { DialogsImagesComponent } from './dialogs-images.component'; import { DialogsVideoComponent } from './dialogs-video.component'; +import { DialogsAnnouncementComponent } from './dialogs-announcement.component'; import { DialogsRatingsComponent, DialogsRatingsDirective } from './dialogs-ratings.component'; @@ -40,7 +41,8 @@ import { DialogsRatingsComponent, DialogsRatingsDirective } from './dialogs-rati DialogsRatingsComponent, DialogsRatingsDirective, ChangePasswordDirective, - SyncDirective + SyncDirective, + DialogsAnnouncementComponent, ], declarations: [ DialogsFormComponent, @@ -54,7 +56,8 @@ import { DialogsRatingsComponent, DialogsRatingsDirective } from './dialogs-rati DialogsRatingsComponent, DialogsRatingsDirective, ChangePasswordDirective, - SyncDirective + SyncDirective, + DialogsAnnouncementComponent ], providers: [ DialogsFormService,