Skip to content

Commit

Permalink
Merge branch 'release-1.1.0' into release-1.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
itsvick authored Dec 24, 2024
2 parents e772ff5 + cb3db5d commit f4b75d6
Show file tree
Hide file tree
Showing 36 changed files with 1,722 additions and 357 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/tekdi-qa-deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Deploy to Tekdi-QA Server
on:
push:
branches:
- release-1.0.0
- release-1.1.0
jobs:
deploy:
#if: github.event.pull_request.merged == true
Expand Down
14 changes: 12 additions & 2 deletions app.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,11 @@ export const DaysOfWeek = {

export const Program = ['Second Chance', 'secondchance'];

export const tenantId = process.env.NEXT_PUBLIC_TENANT_ID || '';
if (!tenantId) {
export const tenantId =
(typeof window !== 'undefined' && localStorage.getItem('tenantId')) ||
process.env.NEXT_PUBLIC_TENANT_ID;

if (!tenantId && typeof window !== 'undefined') {
console.warn(
'NEXT_PUBLIC_TENANT_ID is not set in the environment variables.'
);
Expand Down Expand Up @@ -113,3 +116,10 @@ export const MIME_TYPE = {
'application/vnd.ekstep.html-archive',
],
};

export const TENANT_DATA = {
TENANT_NAME: 'tenantName',
SECOND_CHANCE_PROGRAM: 'Second Chance Program',
PRATHAM_SCP: 'pratham SCP',
YOUTHNET: 'YouthNet',
};
1 change: 1 addition & 0 deletions next.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -117,3 +117,4 @@ const pwaConfig = withPWA({
});

export default pwaConfig(nextConfig);
// export default nextConfig;
137 changes: 77 additions & 60 deletions public/firebase-messaging-sw.js
Original file line number Diff line number Diff line change
@@ -1,62 +1,79 @@
// Scripts for firebase and firebase messaging
importScripts('https://www.gstatic.com/firebasejs/8.2.0/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/8.2.0/firebase-messaging.js');
import firebaseConfig from '../firebaseConfig';



const firebaseConfig = firebaseConfig
// Initialize the Firebase app in the service worker by passing the generated config
firebase.initializeApp(firebaseConfig);
// Retrieve firebase messaging
const messaging = firebase.messaging();
// messaging.onBackgroundMessage((payload) => {
// console.log('[firebase-messaging-sw.js] Received background message ', payload);
// const notificationTitle = payload.notification.title;
// const notificationOptions = {
// body: payload.notification.body,
// icon: payload.notification.icon,
// };


// self.registration.showNotification(notificationTitle, notificationOptions);
// });
messaging.onBackgroundMessage(function (payload) {
console.log('Received background message ', payload);


// const notificationTitle = payload.data.title;
// const navigate_to = payload.data.navigate_to;
// const notificationOptions = {
// body: payload.data.body,
// icon: payload.data.icon,
// vibrate: [100, 50, 100],
// data: {
// dateOfArrival: Date.now(),
// primaryKey: 1,
// },
// };
const notificationTitle = payload.notification.title;
const navigate_to = payload.notification.navigate_to;
const notificationOptions = {
body: payload.notification.body,
icon: payload.notification.icon,
vibrate: [100, 50, 100],
data: {
dateOfArrival: Date.now(),
primaryKey: 1,
},
};


self.registration.showNotification(notificationTitle, notificationOptions);
if (navigate_to != "" && navigate_to != undefined) {
// Open the specified URL when the notification is clicked
self.addEventListener('notificationclick', function (event) {
event.notification.close();
event.waitUntil(
clients.openWindow(navigate_to)
);
// import firebaseConfig from '../firebaseConfig';

self.addEventListener('install', async () => {
try {
// Scripts for firebase and firebase messaging
importScripts('https://www.gstatic.com/firebasejs/8.2.0/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/8.2.0/firebase-messaging.js');

const response = await fetch('/api/env');
const env = await response.json();
const firebaseConfig = {
apiKey: env.NEXT_PUBLIC_FCM_API_KEY,
authDomain: env.NEXT_PUBLIC_FCM_AUTH_DOMAIN,
projectId: env.NEXT_PUBLIC_FCM_PROJECT_FCM_ID,
storageBucket: env.NEXT_PUBLIC_FCM_STORAGE_BUCKET,
messagingSenderId: env.NEXT_PUBLIC_FCM_MESSAGING_SENDER,
appId: env.NEXT_PUBLIC_FCM_FCM_APP_ID,
measurementId: env.NEXT_PUBLIC_FCM_MEASUREMENT_ID,
};

// Initialize the Firebase app in the service worker by passing the generated config
firebase.initializeApp(firebaseConfig);
// Retrieve firebase messaging
const messaging = firebase.messaging();
// messaging.onBackgroundMessage((payload) => {
// console.log('[firebase-messaging-sw.js] Received background message ', payload);
// const notificationTitle = payload.notification.title;
// const notificationOptions = {
// body: payload.notification.body,
// icon: payload.notification.icon,
// };


// self.registration.showNotification(notificationTitle, notificationOptions);
// });
messaging.onBackgroundMessage(function (payload) {
console.log('Received background message ', payload);


// const notificationTitle = payload.data.title;
// const navigate_to = payload.data.navigate_to;
// const notificationOptions = {
// body: payload.data.body,
// icon: payload.data.icon,
// vibrate: [100, 50, 100],
// data: {
// dateOfArrival: Date.now(),
// primaryKey: 1,
// },
// };
const notificationTitle = payload.notification.title;
const navigate_to = payload.notification.navigate_to;
const notificationOptions = {
body: payload.notification.body,
icon: payload.notification.icon,
vibrate: [100, 50, 100],
data: {
dateOfArrival: Date.now(),
primaryKey: 1,
},
};


self.registration.showNotification(notificationTitle, notificationOptions);
if (navigate_to != "" && navigate_to != undefined) {
// Open the specified URL when the notification is clicked
self.addEventListener('notificationclick', function (event) {
event.notification.close();
event.waitUntil(
clients.openWindow(navigate_to)
);
});
}
});
} catch (error) {
console.error('An error occurred while retrieving the environment');
}
});

});
21 changes: 20 additions & 1 deletion public/locales/en/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -550,7 +550,8 @@
"LANGUAGE": "Language",
"SCIENCE": "Science",
"SOCIAL_SCIENCE": "Social Science",
"LIFE_SKILLS": "Life Skills"
"LIFE_SKILLS": "Life Skills",
"USERNAME": "Username"
},
"FORM_ERROR_MESSAGES": {
"INVALID_INPUT": "Invalid Input.",
Expand Down Expand Up @@ -652,5 +653,23 @@
"OBSERVATION_STATUS": "Survey Status",
"OBSERVATION_NOT_STARTED_YET": "Survey not started yet",
"EXPIRED": "Expired"
},
"YOUTHNET": {
"SURVEY": {
"NEW_SURVEY": "New Survey",
"ASSIGN_VOLUNTEERS_NOW": "Assign Volunteers Now",
"REMIND_ME_LATER": "Remind Me Later",
"NEW_SURVEY_HAS_BEEN_ADDED": "A new survey '{{surveyName}}' has been added and has been assigned to {{villageCount}} villages",
"ASSIGN_VOLUNTEERS_TO_ENSURE": "Assign Volunteers to ensure they can access the survey"
},
"DASHBOARD": {
"VILLAGES_MANAGED_BY_YOU": "Villages Managed by you : {{totalVillageCount}}",
"MONTHLY_REGISTRATIONS_OVERVIEW": "Monthly Registrations Overview",
"CLOSED_ON": "Closed on"
},
"VOLUNTEERLIST": {
"ENTRIES": "Entries",
"VOLUNTEERS_ASSIGNED": "Volunteers assigned"
}
}
}
79 changes: 39 additions & 40 deletions public/locales/hi/common.json
Original file line number Diff line number Diff line change
Expand Up @@ -135,19 +135,18 @@
"AND_COUNT_MORE": "और {{count}} अधिक",
"RETURN_TO_LOGIN": "लॉगिन पर वापस जाएं",
"NO_CENTER_FOUND": "कोई केंद्र नहीं मिला",
"FILTER_BY": "फ़िल्टर करें",
"ALL": "सभी",
"ACTIVE": "सक्रिय",
"NA": "लागू नहीं (N.A.)",
"SORT_BY_NAMES": "नामों के अनुसार क्रमबद्ध करें",
"DELETE_USER_FROM_CENTER": "केंद्र से उपयोगकर्ता को हटाएं",
"ADD_OR_REASSIGN_CENTERS": "केंद्र जोड़ें या पुनः असाइन करें",
"SURE_MARK": "क्या आप सुनिश्चित हैं कि आप इस उपस्थिति को चिह्नित करना चाहते हैं?",

"FILTER_BY": "फ़िल्टर करें",
"ALL": "सभी",
"ACTIVE": "सक्रिय",
"NA": "लागू नहीं (N.A.)",
"SORT_BY_NAMES": "नामों के अनुसार क्रमबद्ध करें",
"DELETE_USER_FROM_CENTER": "केंद्र से उपयोगकर्ता को हटाएं",
"ADD_OR_REASSIGN_CENTERS": "केंद्र जोड़ें या पुनः असाइन करें",
"SURE_MARK": "क्या आप सुनिश्चित हैं कि आप इस उपस्थिति को चिह्नित करना चाहते हैं?",
"CANNOT_REASSIGN_TODAY_ATTENDANCE_MARKED": "आज की उपस्थिति पहले ही चिह्नित की जा चुकी है, इसलिए शिक्षार्थी को पुनः आवंटित नहीं किया जा सकता",
"INCORRECT_DATA_ENTRY": "गलत डेटा प्रविष्टि",
"DUPLICATED_USER": "डुप्लिकेट उपयोगकर्ता"

},
"LOGIN_PAGE": {
"USERNAME": "उपयोगकर्ता नाम",
Expand Down Expand Up @@ -187,8 +186,6 @@
"NO_USERNAME": "उपयोगकर्ता नाम नहीं मिला",
"PASSWORD_SAME_AS_OLD": "पासवर्ड पुराना पासवर्ड जैसा ही है",
"CURRENT_PASSWORD_NOT": "वर्तमान पासवर्ड मेल नहीं खाता"


},
"DASHBOARD": {
"DASHBOARD": "डैशबोर्ड",
Expand Down Expand Up @@ -224,7 +221,6 @@
"BLOCK": "ब्लॉक",
"ATTENDANCE": "उपस्थिति (%)",
"WORKSPACE": "कार्यस्थान"

},
"ATTENDANCE": {
"TOTAL_STUDENTS": "कुल छात्रों की संख्या: {{count}}",
Expand Down Expand Up @@ -295,8 +291,6 @@
"CONTACT_NUMBER": "संपर्क नंबर",
"SELECT_OPTION": "विकल्प चुनें",
"ENROLLMENT_NUMBER": "पंजीकरण संख्या"


},
"FIELDS": {
"DESIGNATION": "पद",
Expand Down Expand Up @@ -393,7 +387,6 @@
"ERROR_EMPTY": "केंद्र का नाम खाली नहीं हो सकता",
"ERROR_NUMBER": "केंद्र का नाम संख्या नहीं हो सकता",
"DUPLICATE_CENTER": "केंद्र पहले से ही मौजूद है"

},
"CENTER_SESSION": {
"THIS_SESSION": "यह सत्र",
Expand Down Expand Up @@ -463,7 +456,7 @@
"IDENTIFIER_NOT_FOUND": "पहचानकर्ता नहीं मिला! सामग्री नहीं खोल सकते!",
"PREREQUISITES": "पूर्व-आवश्यकताएँ",
"POST_REQUISITES": "पश्च-आवश्यकताएँ",

"SELECT_SESSION": "कृपया सत्र का प्रकार चुनें",
"MEETING_LINK_REQUIRED": "कृपया बैठक लिंक दर्ज करें!",
"WEEKDAY_ERROR": "कृपया आवर्ती कार्यक्रम के लिए कम से कम एक सप्ताह का दिन चुनें।",
Expand All @@ -477,14 +470,11 @@
"INVALID_DATE": "अमान्य तिथि।",
"INVALID_EVENT_CONFIGURATION": "अमान्य कार्यक्रम विन्यास। कृपया अपनी इनपुट जांचें।",
"MEETING_URL_ERROR": "कृपया एक मान्य बैठक URL प्रदान करें।"

},
"MANAGE_USERS": {
"CENTERS_REQUEST_FAILED": "केंद्र अनुरोध विफल रहा",
"CENTERS_REQUESTED_SUCCESSFULLY": "केंद्र ने सफलतापूर्वक अनुरोध किया",
"CENTERS_REASSIGNED_SUCCESSFULLY": "केंद्र को सफलतापूर्वक पुनः आवंटित किया गया है।"


},
"FORM": {
"FULL_NAME": "पूरा नाम",
Expand Down Expand Up @@ -572,7 +562,6 @@
"SOCIAL_SCIENCE": "सामाजिक विज्ञान",
"LIFE_SKILLS": "जीवन कौशल",
"NUMBER_OF_CLUSTERS_I_TEACH": "क्लस्टर की संख्या जो मैं पढ़ाता हूँ"

},
"FORM_ERROR_MESSAGES": {
"INVALID_INPUT": "अवैध इनपुट।",
Expand All @@ -592,18 +581,18 @@
"ENTER_VALID_CENTER_NAME": "वैध केंद्र नाम दर्ज करें"
},
"COURSE_PLANNER": {
"COURSE_PLANNER": "कोर्स योजना",
"FOUNDATION_COURSE": "फाउंडेशन कोर्स",
"MAIN_COURSE": "मुख्य कोर्स",
"COLLAPSE_ALL": "सभी को संकुचित करें",
"EXPAND_ALL": "सभी को विस्तारित करें",
"RESOURCES": "संसाधन",
"MARK_AS_COMPLETED": "पूर्ण के रूप में चिह्नित करें",
"COURSE_TYPE": "कोर्स प्रकार",
"SUBTOPICS_SELECTED": "उपविषयों का चयन किया गया",
"NO_RESOURCES_FOUND": "कोई संसाधन नहीं मिला",
"INVALID_RESOURCE": "अमान्य संसाधन"
},
"COURSE_PLANNER": "कोर्स योजना",
"FOUNDATION_COURSE": "फाउंडेशन कोर्स",
"MAIN_COURSE": "मुख्य कोर्स",
"COLLAPSE_ALL": "सभी को संकुचित करें",
"EXPAND_ALL": "सभी को विस्तारित करें",
"RESOURCES": "संसाधन",
"MARK_AS_COMPLETED": "पूर्ण के रूप में चिह्नित करें",
"COURSE_TYPE": "कोर्स प्रकार",
"SUBTOPICS_SELECTED": "उपविषयों का चयन किया गया",
"NO_RESOURCES_FOUND": "कोई संसाधन नहीं मिला",
"INVALID_RESOURCE": "अमान्य संसाधन"
},
"ASSESSMENTS": {
"ASSESSMENTS": "मूल्यांकन",
"CENTER": "केंद्र",
Expand Down Expand Up @@ -675,12 +664,22 @@
"OBSERVATION_STATUS": "निरीक्षण की वर्तमान स्थिति",
"OBSERVATION_NOT_STARTED_YET": "सर्वेक्षण अभी शुरू नहीं हुआ है।",
"EXPIRED": "समाप्त हो गया।"
},

"YOUTHNET": {
"SURVEY": {
"NEW_SURVEY": "नया सर्वेक्षण",
"ASSIGN_VOLUNTEERS_NOW": "स्वयंसेवकों को अभी असाइन करें",
"REMIND_ME_LATER": "मुझे बाद में याद दिलाएं",
"NEW_SURVEY_HAS_BEEN_ADDED": "एक नया सर्वेक्षण '{{surveyName}}' जोड़ा गया है और {{villageCount}} गांवों को असाइन किया गया है",
"ASSIGN_VOLUNTEERS_TO_ENSURE": "यह सुनिश्चित करने के लिए स्वयंसेवकों को असाइन करें कि वे सर्वेक्षण तक पहुंच सकें"
},
"DASHBOARD": {
"VILLAGES_MANAGED_BY_YOU": "आपके द्वारा प्रबंधित गांव : {{totalVillageCount}}"
},
"VOLUNTEERLIST": {
"ENTRIES": "प्रविष्टियाँ",
"VOLUNTEERS_ASSIGNED": "स्वयंसेवक सौंपे गए"
}
}

}






Loading

0 comments on commit f4b75d6

Please sign in to comment.