Skip to content

Commit

Permalink
Merge pull request #1972 from intersective/prerelease
Browse files Browse the repository at this point in the history
Release 2.2.1.5
  • Loading branch information
shawnm0705 authored Oct 20, 2023
2 parents 6dbb173 + f6c9037 commit 1f1f9aa
Show file tree
Hide file tree
Showing 22 changed files with 163 additions and 84 deletions.
7 changes: 4 additions & 3 deletions projects/v3/src/app/components/activity/activity.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -135,14 +135,14 @@ export class ActivityComponent {
return task.type === 'Assessment' && (!task.status || task.status === '' || task.status === 'in progress');
}

goto(task: Task, keyboardEvent?: KeyboardEvent) {
async goto(task: Task, keyboardEvent?: KeyboardEvent) {
if (keyboardEvent && (keyboardEvent?.code === 'Space' || keyboardEvent?.code === 'Enter')) {
keyboardEvent.preventDefault();
} else if (keyboardEvent) {
return;
}

return this._validateTeamAssessment(task, () => {
return this._validateTeamAssessment(task, async () => {
if (task.type === 'Locked') {
return this.notificationsService.alert({
message: $localize`This part of the app is still locked. You can unlock the features by engaging with the app and completing all tasks.`,
Expand All @@ -154,6 +154,7 @@ export class ActivityComponent {
]
});
}

this.navigate.emit(task);
});
}
Expand All @@ -162,7 +163,7 @@ export class ActivityComponent {
// update teamId
await this.sharedService.getTeamInfo().toPromise();

const doAssessment = (this.utils.isEmpty(this.submission) || this.submission.status === 'in progress');
const doAssessment = (this.utils.isEmpty(this.submission) || ['in progress', 'pending review'].includes(this.submission.status));
const teamId = this.storageService.getUser().teamId;

// display pop up if it is team assessment or team 360 assessment and user is not in team
Expand Down
2 changes: 2 additions & 0 deletions projects/v3/src/app/components/file/file.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
<ion-label i18n>Feedback</ion-label>
</ion-item>
<ion-textarea class="ion-no-margin textarea white-space-pre"
[autoGrow]="true"
[value]="review.comment"
[disabled]="true"
></ion-textarea>
Expand Down Expand Up @@ -84,6 +85,7 @@
<ion-label i18n>Feedback</ion-label>
</ion-item>
<ion-textarea class="ion-no-margin textarea"
[autoGrow]="true"
[attr.aria-label]="'expert\'s review feedback'"
#commentEle
[(ngModel)]="comment"
Expand Down
2 changes: 1 addition & 1 deletion projects/v3/src/app/components/file/file.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -173,7 +173,7 @@ export class FileComponent implements ControlValueAccessor, OnInit {

// adding save values to from control
private _showSavedAnswers() {
if ((this.reviewStatus === 'in progress') && (this.doReview)) {
if ((['in progress', 'not start'].includes(this.reviewStatus)) && (this.doReview)) {
this.innerValue = {
answer: {},
comment: ''
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,24 @@ <h3 class="for-accessibility" [id]="'multi-team-member-selector-question-' + que
(ionChange)="onChange(teamMember.key, 'answer')"
[disabled]="control.disabled"></ion-checkbox>
</ion-item>
</ion-list>

<ion-list class="ion-no-padding ion-padding-bottom"
*ngIf="question.canComment && submission.answer">
<ion-list-header class="ion-no-padding" lines="none">
<ion-label class="subtitle-2 black" i18n>Feedback</ion-label>
</ion-list-header>
<ion-textarea *ngIf="question.canComment"
[autoGrow]="true"
[attr.aria-label]="'expert\'s review feedback'"
class="textarea"
#commentEle
rows="4"
[(ngModel)]="comment"
(ngModelChange)="onChange(comment, 'comment')"
placeholder="Please put your feedback here"
[disabled]="control.disabled"
i18n-placeholder
></ion-textarea>
</ion-list>
<ion-textarea *ngIf="question.canComment"
[attr.aria-label]="'expert\'s review feedback'"
class="textarea" #commentEle rows="4" [(ngModel)]="comment"
(ngModelChange)="onChange(comment, 'comment')" placeholder="Please put your feedback here" i18n-placeholder
[disabled]="control.disabled"
></ion-textarea>
</ng-container>
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,11 @@ ion-item {
}

ion-textarea {
--border-radius: 6px;
padding-left: 5px;
padding-right: 5px;
border: 1px solid var(--practera-grey-50);
border-radius: var(--border-radius);
font-size: 14px !important;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ export class MultiTeamMemberSelectorComponent implements ControlValueAccessor, O

// adding save values to from control
private _showSavedAnswers() {
if ((this.reviewStatus === 'in progress') && (this.doReview)) {
if ((['in progress', 'not start'].includes(this.reviewStatus)) && (this.doReview)) {
this.innerValue = {
answer: this.review.answer,
comment: this.review.comment
Expand Down
33 changes: 21 additions & 12 deletions projects/v3/src/app/components/multiple/multiple.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -87,16 +87,25 @@ <h3 class="for-accessibility" [id]="'multiple-choice-question-' + question.id">{
></ion-checkbox>
</ion-item>
</ion-list>
<ion-textarea
[attr.aria-label]="'expert\'s review feedback'"
*ngIf="question.canComment && submission.answer"
class="textarea"
#commentEle
margin-top
rows="4"
[(ngModel)]="comment"
(ngModelChange)="onChange(comment, 'comment')"
placeholder="Please put your feedback here"
i18n-placeholder
[disabled]="control.disabled"></ion-textarea>

<ion-list class="ion-no-padding ion-padding-bottom"
*ngIf="question.canComment && submission.answer">
<ion-list-header class="ion-no-padding" lines="none">
<ion-label class="subtitle-2 black" i18n>Feedback</ion-label>
</ion-list-header>
<ion-textarea
[autoGrow]="true"
[attr.aria-label]="'expert\'s review feedback'"
*ngIf="question.canComment && submission.answer"
class="textarea"
#commentEle
margin-top
rows="4"
[(ngModel)]="comment"
(ngModelChange)="onChange(comment, 'comment')"
placeholder="Please put your feedback here"
i18n-placeholder
[disabled]="control.disabled"></ion-textarea>
</ion-list>

</ng-container>
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,11 @@ ion-item {
}

ion-textarea {
--border-radius: 6px;
padding-left: 5px;
padding-right: 5px;
border: 1px solid var(--practera-grey-50);
border-radius: var(--border-radius);
font-size: 14px !important;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ export class MultipleComponent implements ControlValueAccessor, OnInit {
}
// adding save values to from control
private _showSavedAnswers() {
if ((this.reviewStatus === 'in progress') && (this.doReview)) {
if ((['in progress', 'not start'].includes(this.reviewStatus)) && (this.doReview)) {
this.innerValue = {
answer: this.review.answer,
comment: this.review.comment
Expand Down
30 changes: 19 additions & 11 deletions projects/v3/src/app/components/oneof/oneof.component.html
Original file line number Diff line number Diff line change
Expand Up @@ -84,16 +84,24 @@ <h3 class="for-accessibility" [id]="'oneof-question-' + question.id">{{question.
</ion-item>
</ion-radio-group>
</ion-list>
<ion-textarea
[attr.aria-label]="'expert\'s review feedback'"
*ngIf="question.canComment && submission.answer"
class="textarea"
#commentEle
[(ngModel)]="comment"
rows="4"
(ngModelChange)="onChange(comment, 'comment')"
placeholder="Please put your feedback here"
i18n-placeholder
[disabled]="control.disabled"></ion-textarea>

<ion-list class="ion-no-padding ion-padding-bottom"
*ngIf="question.canComment && submission.answer">
<ion-list-header class="ion-no-padding" lines="none">
<ion-label class="subtitle-2 black" i18n>Feedback</ion-label>
</ion-list-header>
<ion-textarea
[autoGrow]="true"
[attr.aria-label]="'expert\'s review feedback'"
*ngIf="question.canComment && submission.answer"
class="textarea"
#commentEle
[(ngModel)]="comment"
rows="4"
(ngModelChange)="onChange(comment, 'comment')"
placeholder="Please put your feedback here"
i18n-placeholder
[disabled]="control.disabled"></ion-textarea>
</ion-list>
</div>
</ng-container>
4 changes: 4 additions & 0 deletions projects/v3/src/app/components/oneof/oneof.component.scss
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,15 @@ ion-radio-group ion-item ion-label {
}

ion-textarea {
--border-radius: 6px;
padding-left: 5px;
padding-right: 5px;
border: 1px solid var(--practera-grey-50);
border-radius: var(--border-radius);
font-size: 14px !important;
}


.answer-text {
margin-bottom: 10px;
}
Expand Down
2 changes: 1 addition & 1 deletion projects/v3/src/app/components/oneof/oneof.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ export class OneofComponent implements ControlValueAccessor, OnInit {

// adding save values to from control
private _showSavedAnswers() {
if ((this.reviewStatus === 'in progress') && (this.doReview)) {
if ((['in progress', 'not start'].includes(this.reviewStatus)) && (this.doReview)) {
this.innerValue = {
answer: '',
comment: ''
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,11 @@
</ion-item>
<p class="form-field-label subtitle-1 black">Please describe your problem <span title="required" class="required">*</span></p>
<ion-item lines="none" class="form-field">
<ion-textarea rows="4" spellcheck="true" [(ngModel)]="problemContent"></ion-textarea>
<ion-textarea rows="4"
[autoGrow]="true"
spellcheck="true"
[(ngModel)]="problemContent"
></ion-textarea>
</ion-item>
<p class="form-field-label subtitle-1 black">Attach support files (Optional. Screenshots or documents)</p>
<div class="file-container">
Expand Down
25 changes: 12 additions & 13 deletions projects/v3/src/app/components/support-popup/support-questions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ export const supportQuestionList = [
questionId: "two",
question: "I'VE SUBMITTED THE WRONG FILE!",
answer: [
"If you've accidentally submitted the wrong file or have encountered any other issues while submitting an assessment, it's important to reach out to your program coordinator as soon as possible. You can do this by (insert how students can gain additional feedback through the hubspot form) and providing them with the program name and assessment name.",
"It's important to be proactive and take action quickly, as this will help ensure that any issues are resolved in a timely manner and that you're able to continue making progress in your learning journey. "
"If you've accidentally submitted the wrong file or have encountered any other issues while submitting an assessment, it's important to reach out to your program coordinator as soon as possible. You can do this by clicking on “Contact Support” in the top right corner and providing them with the program name and assessment name.",
"It's important to be proactive and take action quickly, as this will help ensure that any issues are resolved in a timely manner and that you're able to continue making progress in your learning journey."
]
},
{
Expand Down Expand Up @@ -43,7 +43,7 @@ export const supportQuestionList = [
question: "HOW DO I WITHDRAW FROM THE PROGRAM?",
answer: [
"If you're considering withdrawing from a program, it's important to take action as soon as possible. Withdrawing from a program can be a difficult decision, but it's important to prioritise your well-being and make the choice that's best for you.",
"To withdraw from a program, the first step is to get in touch with your program coordinator by (process that will need to be included for hubspot form). They will be able to guide you through the process and provide you with any necessary information about the steps you'll need to take.",
"To withdraw from a program, the first step is to get in touch with your program coordinator by clicking on “Contact Support” in the top right corner and providing them with your program name. They will be able to guide you through the process and provide you with any necessary information about the steps you'll need to take.",
"Remember, there's no shame in withdrawing from a program if it's not the right fit for you. It takes courage to acknowledge when something isn't working and to take action to change it. So be kind to yourself, and don't be afraid to reach out for help and support. Your program coordinator is there to help you, and they'll do everything they can to make the withdrawal process as smooth and stress-free as possible."
]
},
Expand All @@ -52,16 +52,15 @@ export const supportQuestionList = [
question: "WHY HAVEN'T I RECEIVED MY CERTIFICATE?",
answer: [
"Congratulations on completing your course and earning a badge! The journey of learning is often challenging, but receiving a badge is a fantastic way to acknowledge your hard work and achievements.",
"To access your digital certificate, the first step is to check your inbox, including your Spam folder, for an email called 'You've been awarded a badge.' Once you've located the email, simply click the link 'View your Digital Certificate' at the bottom of the email to access your certificate. This is a great way to showcase your accomplishment to potential employers and colleagues.",
"If you haven't received the email or access to your certificate, it's possible that you haven't yet met all the requirements explained in the final milestone. To ensure that you receive your certificate, make sure that you have submitted all assessments, including the feedback survey. Double-check the final milestone requirements to ensure that you've met all the criteria for completion.",
"Check your inbox, including your Spam folder, for an email called 'You've been awarded a badge.' To access your certificate click the link 'View your Digital Certificate' at the bottom of the email. Alternatively, you might not have been awarded the certificate yet. Check the requirements explained in the final milestone. Tip: remember to submit all assessments, including the feedback survey."
"To access your digital certificate, the first step is to check your inbox, including your Spam folder, for an email called \"You've been awarded a badge.\" Once you've located the email, simply click the link \"View your Digital Certificate\" at the bottom of the email. This is a great way to showcase your accomplishment to potential employers and colleagues.",
"If you haven't received the email or access to your certificate, it's possible that you haven't yet met all the requirements. To ensure that you receive your certificate, make sure that you have submitted all assessments, including the feedback survey. Double-check the final milestone requirements to ensure that you've met all the criteria for completion."
]
},
{
questionId: "eight",
question: "HOW DO I ADD MY CERTIFICATE TO LINKEDIN?",
answer: [
"In the top right-hand corner of the certificate, click the LinkedIn share button. Paste this link under an Experience or Credential on your profile"
"Save your certificate as a PDF file. Then upload this file under an Experience or Credential on your LinkedIn profile."
]
},
{
Expand All @@ -75,21 +74,21 @@ export const supportQuestionList = [
questionId: "ten",
question: "Do I get a certificate and a Practera digital badge?",
answer: [
"You will receive a Practera Digital badge upon completion of the project, providing you have met all program requirements (time commitment, active participation and completion of all activities in Practera)."
"This is program dependent. If you are unsure if you should receive a certificate and digital badge, please contact your program coordinator by clicking on “Contact Support” in the top right corner and providing them with your program name."
]
},
{
questionId: "eleven",
question: "Do I have to be in the country or city location of the client?",
answer: [
"No. This program supports remote working conditions with fully virtual industry and team engagement through the Practera App, so you aren’t required to be physically in the location of the client to participate"
"No. This program supports remote working conditions with fully virtual industry and team engagement through the Practera Workspace, so you aren’t required to be physically in the location of the client to participate."
]
},
{
questionId: "twelve",
question: "What if I have a part-time job?",
answer: [
"It is fine if you have a part-time job, but you must be able to commit to the required number of hours of work on the project over theduration of the program. You will coordinate with your team to ensure that you’re able to attend meetings and contribute equally to all deliverables."
"It is fine if you have a part-time job, but you must be able to commit to the required number of hours of work on the project over the duration of the program. You will coordinate with your team to ensure that you’re able to attend meetings and contribute equally to all deliverables."
]
},
{
Expand Down Expand Up @@ -124,14 +123,14 @@ export const supportQuestionList = [
questionId: "seventeen",
question: "Will I be paid to work on this Project?",
answer: [
"No, you will not be paid to work on this project. This is first and foremost a learning experience that is part of a subject and your course."
"No, you will not be paid to work on this project. This is first and foremost a learning experience that is either extracurricular, part of a subject or your course."
]
},
{
questionId: "ighteen",
question: "Can I skip the orientation session?",
question: "Can I skip the induction session?",
answer: [
"The orientation session is compulsory. You will meet your team, mentor and client. Students who do not attend will be removed from the program."
"The induction session is compulsory. You will meet your team, mentor and client. Learners who do not attend will be removed from the program."
]
},
]
Original file line number Diff line number Diff line change
Expand Up @@ -65,13 +65,22 @@ <h3 class="for-accessibility" [id]="'team-member-selector-question-' + question.
</ion-radio-group>
</ion-list>

<ion-textarea *ngIf="question.canComment"
<ion-list class="ion-no-padding ion-padding-bottom"
*ngIf="question.canComment && submission.answer">
<ion-list-header class="ion-no-padding" lines="none">
<ion-label class="subtitle-2 black" i18n>Feedback</ion-label>
</ion-list-header>
<ion-textarea *ngIf="question.canComment"
[autoGrow]="true"
[attr.aria-label]="'expert\'s review feedback'"
#commentEle
class="textarea"
rows="4"
[(ngModel)]="comment"
(ngModelChange)="onChange(comment, 'comment')" placeholder="Please put your feedback here" i18n-placeholder
(ngModelChange)="onChange(comment, 'comment')"
placeholder="Please put your feedback here" i18n-placeholder
[disabled]="control.disabled"
></ion-textarea>
</ion-list>

</ng-container>
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,11 @@ ion-item {
}

ion-textarea {
--border-radius: 6px;
padding-left: 5px;
padding-right: 5px;
border: 1px solid var(--practera-grey-50);
border-radius: var(--border-radius);
font-size: 14px !important;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ export class TeamMemberSelectorComponent implements ControlValueAccessor, OnInit

// adding save values to from control
private _showSavedAnswers() {
if ((this.reviewStatus === 'in progress') && (this.doReview)) {
if ((['in progress', 'not start'].includes(this.reviewStatus)) && (this.doReview)) {
this.innerValue = {
answer: '',
comment: ''
Expand Down
Loading

0 comments on commit 1f1f9aa

Please sign in to comment.