Skip to content

Commit 9382d3b

Browse files
authored
Merge pull request #2174 from tekdi/release-1.12.0
Release 1.12.0 to prod fix
2 parents 47895c8 + df6ff26 commit 9382d3b

File tree

12 files changed

+49
-60
lines changed

12 files changed

+49
-60
lines changed

apps/learner-web-app/src/app/manual-assessment/page.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1806,6 +1806,7 @@ console.log('assessmentStatusData>>>>>:', assessmentStatusData);
18061806
isReUploadMode={isReUploadMode}
18071807
setAssessmentTrackingData={setAssessmentTrackingData}
18081808
parentId={parentId as string}
1809+
customMaxImages={10}
18091810
/>
18101811

18111812
{/* Snackbar for feedback */}

apps/learner-web-app/src/components/assessment/UploadOptionsPopup.tsx

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
3939
onSubmissionSuccess,
4040
setAssessmentTrackingData,
4141
parentId,
42+
customMaxImages = 4
4243
}) => {
4344
const { t } = useTranslation();
4445
const [isCameraOpen, setIsCameraOpen] = useState(false);
@@ -81,8 +82,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
8182
if (!files || files.length === 0) return;
8283

8384
// Check if adding new files would exceed the limit
84-
if (uploadedImages.length + files.length > 4) {
85-
showToast('You can only upload up to 4 images', 'warning');
85+
if (uploadedImages.length + files.length > customMaxImages) {
86+
showToast(`You can only upload up to ${customMaxImages} images`, 'warning');
8687
return;
8788
}
8889

@@ -152,8 +153,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
152153

153154
const handleCameraCapture = async (imageData: string, fileName: string) => {
154155
// Check if adding new image would exceed the limit
155-
if (uploadedImages.length >= 4) {
156-
showToast('You can only upload up to 4 images', 'warning');
156+
if (uploadedImages.length >= customMaxImages) {
157+
showToast(`You can only upload up to ${customMaxImages} images`, 'warning');
157158
setIsCameraOpen(false);
158159
return;
159160
}
@@ -361,7 +362,7 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
361362
{/* Take Photo Button */}
362363
<Button
363364
onClick={!isUploading ? handleTakePhoto : undefined}
364-
disabled={isUploading || uploadedImages.length >= 4}
365+
disabled={isUploading || uploadedImages.length >= customMaxImages}
365366
variant="outlined"
366367
startIcon={<PhotoCameraIcon />}
367368
sx={{
@@ -384,15 +385,15 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
384385
>
385386
{isUploading
386387
? 'Uploading...'
387-
: uploadedImages.length >= 4
388-
? 'Max 4 Images'
388+
: uploadedImages.length >= customMaxImages
389+
? `Max ${customMaxImages} Images`
389390
: 'Take A Photo'}
390391
</Button>
391392

392393
{/* Upload Photo Button */}
393394
<Button
394395
onClick={!isUploading ? handleChooseFromGallery : undefined}
395-
disabled={isUploading || uploadedImages.length >= 4}
396+
disabled={isUploading || uploadedImages.length >= customMaxImages}
396397
variant="outlined"
397398
startIcon={<CloudUploadIcon />}
398399
sx={{
@@ -415,8 +416,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
415416
>
416417
{isUploading
417418
? 'Uploading...'
418-
: uploadedImages.length >= 4
419-
? 'Max 4 Images'
419+
: uploadedImages.length >= customMaxImages
420+
? `Max ${customMaxImages} Images`
420421
: 'Upload A Photo'}
421422
</Button>
422423
</Box>

apps/learner-web-app/src/components/assessment/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ export interface UploadOptionsPopupProps {
1111
isReUploadMode?: boolean;
1212
setAssessmentTrackingData?: (data: any) => void;
1313
parentId?: string;
14+
customMaxImages?: number;
1415
}
1516

1617
export interface UploadedImage {

libs/shared-lib-v2/src/lib/context/locales/en.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -823,6 +823,7 @@
823823
"NO_ASSESSMENT_TYPE_FOUND":"No Assessment Type Found",
824824
"IMAGE_UPLOADED": "Image Uploaded",
825825
"VIEW": "View",
826-
"REUPLOAD": "Reupload"
826+
"REUPLOAD": "Reupload",
827+
"FORMAT_JPG_SIZE_MB_UP_TO_IMAGES": "* Format: jpg, jpeg. Size: {{mb}} MB Up to {{count}} images"
827828
}
828829
}

mfes/scp-teacher-repo/public/locales/en/common.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -753,7 +753,8 @@
753753
"NO_ASSESSMENT_TYPE_FOUND":"No Assessment Type Found",
754754
"IMAGE_UPLOADED": "Image Uploaded",
755755
"VIEW": "View",
756-
"REUPLOAD": "Reupload"
756+
"REUPLOAD": "Reupload",
757+
"FORMAT_JPG_SIZE_MB_UP_TO_IMAGES": "* Format: jpg, jpeg. Size: {{mb}} MB Up to {{count}} images"
757758
},
758759
"BOARD_ENROLMENT": {
759760
"BOARD_ENROLLMENT": "Board Enrollment",

mfes/scp-teacher-repo/src/components/assessment/UploadOptionsPopup.tsx

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
3636
questionSetId,
3737
identifier,
3838
onSubmissionSuccess,
39-
setAssessmentTrackingData
39+
setAssessmentTrackingData,
40+
customMaxImages = 4
4041
}) => {
4142
const { t } = useTranslation();
4243
const [isCameraOpen, setIsCameraOpen] = useState(false);
@@ -79,8 +80,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
7980
if (!files || files.length === 0) return;
8081

8182
// Check if adding new files would exceed the limit
82-
if (uploadedImages.length + files.length > 4) {
83-
showToast('You can only upload up to 4 images', 'warning');
83+
if (uploadedImages.length + files.length > customMaxImages) {
84+
showToast(`You can only upload up to ${customMaxImages} images`, 'warning');
8485
return;
8586
}
8687

@@ -150,8 +151,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
150151

151152
const handleCameraCapture = async (imageData: string, fileName: string) => {
152153
// Check if adding new image would exceed the limit
153-
if (uploadedImages.length >= 4) {
154-
showToast('You can only upload up to 4 images', 'warning');
154+
if (uploadedImages.length >= customMaxImages) {
155+
showToast(`You can only upload up to ${customMaxImages} images`, 'warning');
155156
setIsCameraOpen(false);
156157
return;
157158
}
@@ -332,7 +333,7 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
332333
fontWeight: 400,
333334
}}
334335
>
335-
{t('AI.FORMAT_JPG_SIZE_5MB_UP_TO_4_IMAGES')}
336+
{t('ASSESSMENTS.FORMAT_JPG_SIZE_MB_UP_TO_IMAGES', { mb: 5, count: customMaxImages })}
336337
</Typography>
337338
</Box>
338339

@@ -358,7 +359,7 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
358359
{/* Take Photo Button */}
359360
<Button
360361
onClick={!isUploading ? handleTakePhoto : undefined}
361-
disabled={isUploading || uploadedImages.length >= 4}
362+
disabled={isUploading || uploadedImages.length >= customMaxImages}
362363
variant="outlined"
363364
startIcon={<PhotoCameraIcon />}
364365
sx={{
@@ -381,15 +382,15 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
381382
>
382383
{isUploading
383384
? 'Uploading...'
384-
: uploadedImages.length >= 4
385-
? 'Max 4 Images'
385+
: uploadedImages.length >= customMaxImages
386+
? `Max ${customMaxImages} Images`
386387
: 'Take A Photo'}
387388
</Button>
388389

389390
{/* Upload Photo Button */}
390391
<Button
391392
onClick={!isUploading ? handleChooseFromGallery : undefined}
392-
disabled={isUploading || uploadedImages.length >= 4}
393+
disabled={isUploading || uploadedImages.length >= customMaxImages}
393394
variant="outlined"
394395
startIcon={<CloudUploadIcon />}
395396
sx={{
@@ -412,8 +413,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
412413
>
413414
{isUploading
414415
? 'Uploading...'
415-
: uploadedImages.length >= 4
416-
? 'Max 4 Images'
416+
: uploadedImages.length >= customMaxImages
417+
? `Max ${customMaxImages} Images`
417418
: 'Upload A Photo'}
418419
</Button>
419420
</Box>

mfes/scp-teacher-repo/src/components/assessment/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ export interface UploadOptionsPopupProps {
1010
onSubmissionSuccess?: () => void;
1111
isReUploadMode?: boolean;
1212
setAssessmentTrackingData?: (data: any) => void;
13+
customMaxImages?: number;
1314
}
1415

1516
export interface UploadedImage {

mfes/scp-teacher-repo/src/pages/manual-assessments/[assessmentId]/[userId]/index.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1474,6 +1474,7 @@ const AssessmentDetails = () => {
14741474
onSubmissionSuccess={handleSubmissionSuccess}
14751475
isReUploadMode={isReUploadMode}
14761476
setAssessmentTrackingData={setAssessmentTrackingData}
1477+
customMaxImages={10}
14771478
/>
14781479

14791480
{/* Snackbar for feedback */}

mfes/youthNet/public/locales/en/common.json

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -649,29 +649,6 @@
649649
"NO_RESOURCES_FOUND": "No resources found",
650650
"INVALID_RESOURCE": "Invalid Resource"
651651
},
652-
"ASSESSMENTS": {
653-
"ASSESSMENTS": "Assessments",
654-
"CENTER": "Center",
655-
"ASSESSMENT_TYPE": "Assessment Type",
656-
"COMPLETED_THE_ASSESSMENT": "learners completed all the assigned assessments",
657-
"SUBMITTED_ON": "Submitted On",
658-
"CORRECT_ANSWER": "correct answers",
659-
"NO_DATA_FOUND": "No data found",
660-
"SEARCH_STUDENT": "Search student",
661-
"NO_ASSESSMENTS_FOUND": "No assessments found",
662-
"ASSESSMENT_STATUS": "Assessment Status",
663-
"NOT_STARTED": "Not Started",
664-
"IN_PROGRESS": "In Progress",
665-
"COMPLETED": "Completed",
666-
"MARKS_OBTAINED": "Marks Obtained",
667-
"OVERALL_SCORE": "Overall Score",
668-
"ASSESSMENT_NOT_STARTED_YET": "Assessment not started yet",
669-
"NUMBER_OUT_OF_COMPLETED": "{{completedCount}} out of {{totalCount}} completed",
670-
"NO_SUBTOPIC_SELECTED": "No Subtopic selected",
671-
"NO_SUBJECT_FOUND": "No Subject found",
672-
"NO_ASSIGNED": "No assigned",
673-
"OUT_OF": "Out of"
674-
},
675652
"BOARD_ENROLMENT": {
676653
"BOARD_ENROLLMENT": "Board Enrollment",
677654
"BOARD_SELECTION": "Board Selection",
@@ -986,7 +963,8 @@
986963
"NO_ASSESSMENT_TYPE_FOUND":"No Assessment Type Found",
987964
"IMAGE_UPLOADED": "Image Uploaded",
988965
"VIEW": "View",
989-
"REUPLOAD": "Reupload"
966+
"REUPLOAD": "Reupload",
967+
"FORMAT_JPG_SIZE_MB_UP_TO_IMAGES": "* Format: jpg, jpeg. Size: {{mb}} MB Up to {{count}} images"
990968
},
991969
"UNIT_NAME": "Unit Name",
992970
"TYPE_OF_CENTER": "Type Of Center",

mfes/youthNet/src/components/assessment/UploadOptionsPopup.tsx

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
3737
identifier,
3838
parentId,
3939
onSubmissionSuccess,
40-
setAssessmentTrackingData
40+
setAssessmentTrackingData,
41+
customMaxImages = 4
4142
}) => {
4243
const { t } = useTranslation();
4344
const [isCameraOpen, setIsCameraOpen] = useState(false);
@@ -80,8 +81,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
8081
if (!files || files.length === 0) return;
8182

8283
// Check if adding new files would exceed the limit
83-
if (uploadedImages.length + files.length > 4) {
84-
showToast('You can only upload up to 4 images', 'warning');
84+
if (uploadedImages.length + files.length > customMaxImages) {
85+
showToast(`You can only upload up to ${customMaxImages} images`, 'warning');
8586
return;
8687
}
8788

@@ -151,8 +152,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
151152

152153
const handleCameraCapture = async (imageData: string, fileName: string) => {
153154
// Check if adding new image would exceed the limit
154-
if (uploadedImages.length >= 4) {
155-
showToast('You can only upload up to 4 images', 'warning');
155+
if (uploadedImages.length >= customMaxImages) {
156+
showToast(`You can only upload up to ${customMaxImages} images`, 'warning');
156157
setIsCameraOpen(false);
157158
return;
158159
}
@@ -334,7 +335,7 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
334335
fontWeight: 400,
335336
}}
336337
>
337-
{t('AI.FORMAT_JPG_SIZE_5MB_UP_TO_4_IMAGES')}
338+
{t('ASSESSMENTS.FORMAT_JPG_SIZE_MB_UP_TO_IMAGES', { mb: 5, count: customMaxImages })}
338339
</Typography>
339340
</Box>
340341

@@ -360,7 +361,7 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
360361
{/* Take Photo Button */}
361362
<Button
362363
onClick={!isUploading ? handleTakePhoto : undefined}
363-
disabled={isUploading || uploadedImages.length >= 4}
364+
disabled={isUploading || uploadedImages.length >= customMaxImages}
364365
variant="outlined"
365366
startIcon={<PhotoCameraIcon />}
366367
sx={{
@@ -383,15 +384,15 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
383384
>
384385
{isUploading
385386
? 'Uploading...'
386-
: uploadedImages.length >= 4
387-
? 'Max 4 Images'
387+
: uploadedImages.length >= customMaxImages
388+
? `Max ${customMaxImages} Images`
388389
: 'Take A Photo'}
389390
</Button>
390391

391392
{/* Upload Photo Button */}
392393
<Button
393394
onClick={!isUploading ? handleChooseFromGallery : undefined}
394-
disabled={isUploading || uploadedImages.length >= 4}
395+
disabled={isUploading || uploadedImages.length >= customMaxImages}
395396
variant="outlined"
396397
startIcon={<CloudUploadIcon />}
397398
sx={{
@@ -414,8 +415,8 @@ const UploadOptionsPopup: React.FC<UploadOptionsPopupProps> = ({
414415
>
415416
{isUploading
416417
? 'Uploading...'
417-
: uploadedImages.length >= 4
418-
? 'Max 4 Images'
418+
: uploadedImages.length >= customMaxImages
419+
? `Max ${customMaxImages} Images`
419420
: 'Upload A Photo'}
420421
</Button>
421422
</Box>

0 commit comments

Comments
 (0)