touchstudy-core 0.1.68 → 0.1.70
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Chats/hooks/useMessageList.d.ts +5 -2
- package/dist/components/Commons/NotFound.d.ts +1 -1
- package/dist/components/Dialogs/PassCodeDialog.d.ts +10 -0
- package/dist/components/Dialogs/configs/types.d.ts +4 -0
- package/dist/components/Loading/LoadingComponent.d.ts +6 -0
- package/dist/components/Selectors/InActiveAcademySelector.d.ts +16 -0
- package/dist/containers/Academies/apiClients/academyService.d.ts +1 -2
- package/dist/containers/Academies/components/PassCodeDialog.d.ts +10 -0
- package/dist/containers/Academies/hooks/useAcademyList.d.ts +1 -2
- package/dist/containers/ExamResult/apiClients/index.d.ts +0 -1
- package/dist/containers/ExamResult/hooks/useExamResult.d.ts +1 -0
- package/dist/containers/Login/hooks/useLogin.d.ts +1 -1
- package/dist/containers/PassCodes/configs/types.d.ts +6 -0
- package/dist/containers/PassCodes/hooks/usePassCodeCheck.d.ts +19 -0
- package/dist/containers/PassCodes/views/PassCodeCheck.d.ts +13 -0
- package/dist/containers/Textbooks/apiClient/examSessionService.d.ts +0 -2
- package/dist/index.css +0 -1
- package/dist/index.d.ts +6 -3
- package/dist/index.js +1036 -323
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +1015 -307
- package/dist/index.modern.js.map +1 -1
- package/dist/services/academyService.d.ts +4 -1
- package/dist/services/accountService.d.ts +1 -0
- package/dist/services/passCodeService.d.ts +1 -0
- package/dist/services/recentUserActionService.d.ts +10 -0
- package/dist/utils/constants.d.ts +21 -0
- package/dist/utils/enums/index.d.ts +2 -1
- package/dist/utils/enums/recentUserAction.d.ts +7 -0
- package/dist/utils/hooks/useLayoutContext.d.ts +3 -1
- package/dist/utils/hooks/useSwitchAcademy.d.ts +1 -1
- package/dist/utils/types/checkSuperUrl.d.ts +1 -0
- package/dist/utils/types/index.d.ts +2 -1
- package/dist/utils/types/recentUserAction.d.ts +33 -0
- package/package.json +1 -1
package/dist/index.modern.js
CHANGED
@@ -85,10 +85,10 @@ var encodeParams = function encodeParams(params) {
|
|
85
85
|
if (Array.isArray(params[key])) {
|
86
86
|
return params[key].map(function (i) {
|
87
87
|
return encodeURIComponent(key) + "=" + encodeURIComponent(i);
|
88
|
-
}).join(
|
88
|
+
}).join("&");
|
89
89
|
}
|
90
90
|
return encodeURIComponent(key) + "=" + encodeURIComponent(params[key]);
|
91
|
-
}).join(
|
91
|
+
}).join("&");
|
92
92
|
};
|
93
93
|
var Role;
|
94
94
|
(function (Role) {
|
@@ -102,6 +102,27 @@ var Language;
|
|
102
102
|
Language["ko"] = "ko";
|
103
103
|
Language["en"] = "en";
|
104
104
|
})(Language || (Language = {}));
|
105
|
+
var RecentUserAction = {
|
106
|
+
ViewedUser: "viewed_user",
|
107
|
+
ViewedQNA: "viewed_QNA",
|
108
|
+
ViewedExamResult: "viewed_exam_result",
|
109
|
+
PrintedExamResult: "printed_exam_result",
|
110
|
+
ViewedAttendance: "viewed_attendance",
|
111
|
+
UpdatedUser: "updated_user",
|
112
|
+
CreatedNewUser: "created_new_user",
|
113
|
+
ImportedUser: "imported_user",
|
114
|
+
ImportedRemoveUser: "imported_remove_user",
|
115
|
+
DeletedUser: "deleted_user",
|
116
|
+
CompletedQNA: "completed_QNA",
|
117
|
+
AnsweredQNA: "answered_QNA",
|
118
|
+
RemoveMessageQNA: "remove_message_QNA",
|
119
|
+
UpdateMessageQNA: "update_message_QNA",
|
120
|
+
UpdatedAttendance: "updated_attendance",
|
121
|
+
AddedTeacherToClass: "added_teacher_to_class",
|
122
|
+
RemovedTeacherFromClass: "removed_teacher_from_class",
|
123
|
+
AddedStudentToClass: "added_student_to_class",
|
124
|
+
RemovedStudentFromClass: "removed_student_from_class"
|
125
|
+
};
|
105
126
|
var PrintHeaderClassName = "print-header";
|
106
127
|
var PrintTitleClassName = "print-title";
|
107
128
|
var PrintContentClassName = "print-content";
|
@@ -144,6 +165,13 @@ function _objectWithoutPropertiesLoose(source, excluded) {
|
|
144
165
|
}
|
145
166
|
return target;
|
146
167
|
}
|
168
|
+
function _taggedTemplateLiteralLoose(strings, raw) {
|
169
|
+
if (!raw) {
|
170
|
+
raw = strings.slice(0);
|
171
|
+
}
|
172
|
+
strings.raw = raw;
|
173
|
+
return strings;
|
174
|
+
}
|
147
175
|
|
148
176
|
var styles = {"lighter":"#F0FFF6","light":"#89F0B2","less_dark":"#3DC674","dark":"#349056","darker":"#18442A","gray_50":"#FBFBF9","gray_100":"#EAEAE5","gray_300":"#D0D0C8","gray_500":"#9A9A98","gray_700":"#5D5D5B","gray_900":"#363634","btn-login-google":"_2HqmH","block-login":"_wWIyO","box-login":"_38Lo1","btn-primary":"_rd4Uy","dropdown-menu":"_1krbH","header-avatar":"_RQaHE","dropdown-menu-flag":"_XK8oS","dropdown-content":"_3ys4W","dropdown-change":"_ToOW_","item-address":"_3sQlR","item-logout":"_3bqSM","title-address":"_1jgSI","img-avatar":"_35Ttz","item-contact":"_1wc7o","content-text":"_3S4f2","dropdown-content-language":"_3ajui","dropdown-item-language":"_3Y_y4","dropdown-item-language-active":"_CzNMi","dropdown-academy":"_3CMVp","image-academy":"_2ibYC","academy-btn":"_1JMRU","switch-icon":"_N4FNf","dropdown-content-academy":"_31Dr0","dropdown-academy-item":"_3bjcz","noGutters":"_31ZQk","custom-col-2":"_3yXyK","custom-col-3":"_1RsJQ","custom-col-5":"_L42CP","custom-col-10":"_2u6eL","custom-row":"_8x7OP","custom-col":"_1JmTh","custom-col-4":"_3HO1e","custom-col-8":"_Oy31M","custom-col-12":"_3aUKo","custom-container":"_39LRs","form-label":"__Ut-u","form-control":"_2k4dX","btn-outline-primary":"_2PWdX","sort-icons":"_mQvLF","active":"_3oAH-","form-select":"_3W3aw","truncate":"_3NJzN","headers":"_3xnI5","logo-container":"_3YG70","tabBox":"_1CQPn","routerBox":"_3hx2T","tabText":"_3UyhW","router-link-active":"_1TGKA","router-link":"_1AqMh","userImg":"_2RI6G","disabled-link":"_3aVHg","line-clamp":"_3fpky"};
|
149
177
|
|
@@ -456,6 +484,9 @@ var apiLoginWithAccessToken = function apiLoginWithAccessToken(body, domain) {
|
|
456
484
|
headers: (_headers = {}, _headers[AcademyHeaders] = domain, _headers)
|
457
485
|
});
|
458
486
|
};
|
487
|
+
var apiLoginSuperAdminWithAccessToken = function apiLoginSuperAdminWithAccessToken(body) {
|
488
|
+
return api.post(AUTH_SUPER_ADMIN_URL + "/login/access-token", body);
|
489
|
+
};
|
459
490
|
|
460
491
|
var useGoogleSignOut = function useGoogleSignOut(props) {
|
461
492
|
var dispatch = useDispatch();
|
@@ -484,7 +515,10 @@ var useGoogleSignOut = function useGoogleSignOut(props) {
|
|
484
515
|
localStorage.removeItem(ACADEMY_DOMAIN);
|
485
516
|
}
|
486
517
|
try {
|
518
|
+
var _window$gapi, _window$gapi$auth, _auth2$signOut;
|
487
519
|
signOut();
|
520
|
+
var auth2 = (_window$gapi = window.gapi) === null || _window$gapi === void 0 ? void 0 : (_window$gapi$auth = _window$gapi.auth2) === null || _window$gapi$auth === void 0 ? void 0 : _window$gapi$auth.getAuthInstance();
|
521
|
+
auth2 === null || auth2 === void 0 ? void 0 : (_auth2$signOut = auth2.signOut) === null || _auth2$signOut === void 0 ? void 0 : _auth2$signOut.call(auth2);
|
488
522
|
} catch (error) {
|
489
523
|
console.log({
|
490
524
|
error: error
|
@@ -535,6 +569,10 @@ var useLogin = function useLogin(history, homeAcademyUrl, homeUrl, registerUrl)
|
|
535
569
|
t = _useTranslation.t;
|
536
570
|
var _useGoogleSignOut = useGoogleSignOut({}),
|
537
571
|
handleSignOut = _useGoogleSignOut.handleSignOut;
|
572
|
+
var user = useSelector(function (state) {
|
573
|
+
var _state$common;
|
574
|
+
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.user;
|
575
|
+
});
|
538
576
|
var searchParams = new URLSearchParams(window.location.search);
|
539
577
|
var paramDomain = searchParams.get('domain');
|
540
578
|
var handleLoginGoogle = function handleLoginGoogle(data, isLogout) {
|
@@ -547,16 +585,28 @@ var useLogin = function useLogin(history, homeAcademyUrl, homeUrl, registerUrl)
|
|
547
585
|
return Promise.resolve(handleLogin(function () {
|
548
586
|
return new Promise(function (resolve, reject) {
|
549
587
|
try {
|
550
|
-
var
|
588
|
+
var _temp3 = _catch(function () {
|
551
589
|
return Promise.resolve(academyDomain ? apiLoginGoogle(data) : apiLoginGoogleSuperAdmin(data)).then(function (loginResponse) {
|
590
|
+
function _temp2() {
|
591
|
+
resolve(result);
|
592
|
+
}
|
552
593
|
var result = loginResponse.data;
|
553
|
-
|
594
|
+
var _temp = function () {
|
595
|
+
if (loginResponse.status === 204 && academyDomain) {
|
596
|
+
localStorage.removeItem(ACADEMY_DOMAIN);
|
597
|
+
return Promise.resolve(apiLoginGoogleSuperAdmin(data)).then(function (_apiLoginGoogleSuperA) {
|
598
|
+
loginResponse = _apiLoginGoogleSuperA;
|
599
|
+
result = loginResponse.data;
|
600
|
+
});
|
601
|
+
}
|
602
|
+
}();
|
603
|
+
return _temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp);
|
554
604
|
});
|
555
605
|
}, function (error) {
|
556
606
|
!!academyDomain && localStorage.removeItem(ACADEMY_DOMAIN);
|
557
607
|
reject(error);
|
558
608
|
});
|
559
|
-
return Promise.resolve(
|
609
|
+
return Promise.resolve(_temp3 && _temp3.then ? _temp3.then(function () {}) : void 0);
|
560
610
|
} catch (e) {
|
561
611
|
return Promise.reject(e);
|
562
612
|
}
|
@@ -575,15 +625,16 @@ var useLogin = function useLogin(history, homeAcademyUrl, homeUrl, registerUrl)
|
|
575
625
|
return Promise.resolve(handleLogin(function () {
|
576
626
|
return new Promise(function (resolve, reject) {
|
577
627
|
try {
|
578
|
-
var
|
579
|
-
|
628
|
+
var isSuperAdminUser = user && !user.academyDomain;
|
629
|
+
var _temp4 = _catch(function () {
|
630
|
+
return Promise.resolve(isSuperAdminUser ? apiLoginSuperAdminWithAccessToken(data) : apiLoginWithAccessToken(data, domain)).then(function (loginResponse) {
|
580
631
|
var result = loginResponse.data;
|
581
632
|
resolve(result);
|
582
633
|
});
|
583
634
|
}, function (error) {
|
584
635
|
reject(error);
|
585
636
|
});
|
586
|
-
return Promise.resolve(
|
637
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(function () {}) : void 0);
|
587
638
|
} catch (e) {
|
588
639
|
return Promise.reject(e);
|
589
640
|
}
|
@@ -598,11 +649,11 @@ var useLogin = function useLogin(history, homeAcademyUrl, homeUrl, registerUrl)
|
|
598
649
|
isLogout = true;
|
599
650
|
}
|
600
651
|
try {
|
601
|
-
var
|
652
|
+
var _temp6 = function _temp6() {
|
602
653
|
dispatch(setLoading(false));
|
603
654
|
};
|
604
655
|
dispatch(setLoading(true));
|
605
|
-
var
|
656
|
+
var _temp5 = _catch(function () {
|
606
657
|
return Promise.resolve(apiLogin()).then(function (loginResponse) {
|
607
658
|
var isFirstLogin = loginResponse.isFirstLogin,
|
608
659
|
token = loginResponse.token,
|
@@ -619,7 +670,7 @@ var useLogin = function useLogin(history, homeAcademyUrl, homeUrl, registerUrl)
|
|
619
670
|
alert(getErrorMessage(t, error));
|
620
671
|
isLogout && handleSignOut();
|
621
672
|
});
|
622
|
-
return Promise.resolve(
|
673
|
+
return Promise.resolve(_temp5 && _temp5.then ? _temp5.then(_temp6) : _temp6(_temp5));
|
623
674
|
} catch (e) {
|
624
675
|
return Promise.reject(e);
|
625
676
|
}
|
@@ -944,13 +995,16 @@ var defaultInfo = {
|
|
944
995
|
captcha: "",
|
945
996
|
rememberMe: false
|
946
997
|
};
|
947
|
-
var
|
998
|
+
var PAGE_TITLE = "sign_in";
|
999
|
+
var useLogin$1 = function useLogin(homeAcademyUrl, homeUrl) {
|
948
1000
|
var _useState = useState(false),
|
949
1001
|
openLogin = _useState[0],
|
950
1002
|
setOpenLogin = _useState[1];
|
951
1003
|
var _useState2 = useState(),
|
952
1004
|
infoUser = _useState2[0],
|
953
1005
|
setInfoUser = _useState2[1];
|
1006
|
+
var _useTranslation = useTranslation(),
|
1007
|
+
t = _useTranslation.t;
|
954
1008
|
var toggle = useCallback(function () {
|
955
1009
|
setOpenLogin(!openLogin);
|
956
1010
|
}, [openLogin]);
|
@@ -968,8 +1022,13 @@ var useLogin$1 = function useLogin() {
|
|
968
1022
|
}, [gapi]);
|
969
1023
|
useEffect(function () {
|
970
1024
|
var token = getAccessToken();
|
971
|
-
|
972
|
-
|
1025
|
+
var academyDomain = getAcademyDomain();
|
1026
|
+
if (token && academyDomain) window.location.href = homeAcademyUrl;
|
1027
|
+
if (token && !academyDomain) window.location.href = homeUrl;
|
1028
|
+
}, [homeAcademyUrl, homeUrl]);
|
1029
|
+
useEffect(function () {
|
1030
|
+
document.title = t("study_peak") + " | " + t(PAGE_TITLE);
|
1031
|
+
}, [t]);
|
973
1032
|
return {
|
974
1033
|
defaultInfo: defaultInfo,
|
975
1034
|
openLogin: openLogin,
|
@@ -1079,7 +1138,7 @@ var _excluded = ["history"];
|
|
1079
1138
|
var Login = function Login(_ref) {
|
1080
1139
|
var history = _ref.history,
|
1081
1140
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded);
|
1082
|
-
var _useLogin = useLogin$1(),
|
1141
|
+
var _useLogin = useLogin$1(rest.homeAcademyUrl, rest.homeUrl),
|
1083
1142
|
defaultInfo = _useLogin.defaultInfo;
|
1084
1143
|
useLanguage(history);
|
1085
1144
|
return React__default.createElement("div", {
|
@@ -1362,9 +1421,9 @@ var NotFound = function NotFound(_ref) {
|
|
1362
1421
|
var history = _ref.history;
|
1363
1422
|
var _useTranslation = useTranslation(),
|
1364
1423
|
t = _useTranslation.t;
|
1365
|
-
useLanguage(history);
|
1424
|
+
history && useLanguage(history);
|
1366
1425
|
useEffect(function () {
|
1367
|
-
document.title = t(TITLE);
|
1426
|
+
document.title = t("study_peak") + " | " + t(TITLE);
|
1368
1427
|
}, [t]);
|
1369
1428
|
return React__default.createElement("div", {
|
1370
1429
|
className: "not-found d-flex justify-content-center"
|
@@ -1423,11 +1482,21 @@ var getUserAcademies = function getUserAcademies(role) {
|
|
1423
1482
|
}
|
1424
1483
|
});
|
1425
1484
|
};
|
1485
|
+
var getAcademyByDomainApi = function getAcademyByDomainApi(domain, role) {
|
1486
|
+
return api.get(SUPER_ADMIN_ACADEMY_URL + "/domain/" + domain, {
|
1487
|
+
params: {
|
1488
|
+
role: role
|
1489
|
+
}
|
1490
|
+
});
|
1491
|
+
};
|
1426
1492
|
var getAcademyDetail = function getAcademyDetail() {
|
1427
1493
|
return api.get(ACADEMY_URL + "/detail");
|
1428
1494
|
};
|
1429
|
-
var switchAcademy = function switchAcademy(academyId) {
|
1430
|
-
return api.post(ACADEMY_URL + "/switch-academy
|
1495
|
+
var switchAcademy = function switchAcademy(academyId, role) {
|
1496
|
+
return api.post(ACADEMY_URL + "/" + academyId + "/switch-academy/" + role);
|
1497
|
+
};
|
1498
|
+
var switchSuperAdminAcademy = function switchSuperAdminAcademy(academyId, role) {
|
1499
|
+
return api.post(SUPER_ADMIN_ACADEMY_URL + "/" + academyId + "/switch-academy/" + role);
|
1431
1500
|
};
|
1432
1501
|
|
1433
1502
|
var useLayoutContext = function useLayoutContext(role, pusherRegisterUrls) {
|
@@ -1453,6 +1522,7 @@ var useLayoutContext = function useLayoutContext(role, pusherRegisterUrls) {
|
|
1453
1522
|
var roles = (user === null || user === void 0 ? void 0 : user.roles) || [];
|
1454
1523
|
var academyDomain = user === null || user === void 0 ? void 0 : user.academyDomain;
|
1455
1524
|
var pathname = window.location.pathname;
|
1525
|
+
var search = window.location.search;
|
1456
1526
|
var resetAuth = function resetAuth() {
|
1457
1527
|
handleSignOut();
|
1458
1528
|
};
|
@@ -1480,7 +1550,7 @@ var useLayoutContext = function useLayoutContext(role, pusherRegisterUrls) {
|
|
1480
1550
|
}
|
1481
1551
|
};
|
1482
1552
|
var checkRoleUser = useCallback(function () {
|
1483
|
-
if (!user) return;
|
1553
|
+
if (!(user !== null && user !== void 0 && user.email)) return;
|
1484
1554
|
if (!roles.includes(role) && !!academyDomain) {
|
1485
1555
|
alert(t("user_not_allow_to_register_role", {
|
1486
1556
|
user: user.email,
|
@@ -1488,7 +1558,7 @@ var useLayoutContext = function useLayoutContext(role, pusherRegisterUrls) {
|
|
1488
1558
|
}));
|
1489
1559
|
resetAuth();
|
1490
1560
|
}
|
1491
|
-
}, [role, JSON.stringify(
|
1561
|
+
}, [role, user === null || user === void 0 ? void 0 : user.email, academyDomain, JSON.stringify(roles)]);
|
1492
1562
|
var loadInfo = function loadInfo() {
|
1493
1563
|
try {
|
1494
1564
|
var _temp4 = function _temp4() {
|
@@ -1496,6 +1566,7 @@ var useLayoutContext = function useLayoutContext(role, pusherRegisterUrls) {
|
|
1496
1566
|
};
|
1497
1567
|
var token = getAccessToken();
|
1498
1568
|
if (!token) {
|
1569
|
+
localStorage.setItem(REDIRECT_URL, "" + pathname + search);
|
1499
1570
|
resetAuth();
|
1500
1571
|
return Promise.resolve();
|
1501
1572
|
}
|
@@ -1566,8 +1637,10 @@ var useLayoutContext = function useLayoutContext(role, pusherRegisterUrls) {
|
|
1566
1637
|
}, [pusherRegisterUrls.join(","), academyDomain, pathname, isReadyRegisterPusher, currentPusher === null || currentPusher === void 0 ? void 0 : (_currentPusher$connec2 = currentPusher.connection) === null || _currentPusher$connec2 === void 0 ? void 0 : _currentPusher$connec2.state]);
|
1567
1638
|
useEffect(function () {
|
1568
1639
|
!user && loadInfo();
|
1569
|
-
|
1570
|
-
|
1640
|
+
}, []);
|
1641
|
+
useEffect(function () {
|
1642
|
+
checkRoleUser();
|
1643
|
+
}, [checkRoleUser]);
|
1571
1644
|
useEffect(function () {
|
1572
1645
|
handleGetAcademyDetail();
|
1573
1646
|
}, [academyDomain]);
|
@@ -1579,6 +1652,33 @@ var useLayoutContext = function useLayoutContext(role, pusherRegisterUrls) {
|
|
1579
1652
|
}
|
1580
1653
|
};
|
1581
1654
|
}, [registerPusher]);
|
1655
|
+
return {
|
1656
|
+
user: user
|
1657
|
+
};
|
1658
|
+
};
|
1659
|
+
|
1660
|
+
var loadingStyle$1 = {
|
1661
|
+
minWidth: "100vw",
|
1662
|
+
minHeight: "100vh",
|
1663
|
+
position: "fixed",
|
1664
|
+
top: 0,
|
1665
|
+
left: 0,
|
1666
|
+
zIndex: 999999999,
|
1667
|
+
backgroundColor: "rgba(0, 0, 0, 0.4)",
|
1668
|
+
display: "flex",
|
1669
|
+
justifyContent: "center",
|
1670
|
+
alignItems: "center"
|
1671
|
+
};
|
1672
|
+
var LoadingComponent = function LoadingComponent(_ref) {
|
1673
|
+
var isLoading = _ref.isLoading;
|
1674
|
+
return isLoading ? React__default.createElement("div", {
|
1675
|
+
style: loadingStyle$1
|
1676
|
+
}, React__default.createElement("div", {
|
1677
|
+
className: "spinner-border text-secondary",
|
1678
|
+
role: "status"
|
1679
|
+
}, React__default.createElement("span", {
|
1680
|
+
className: "sr-only"
|
1681
|
+
}))) : null;
|
1582
1682
|
};
|
1583
1683
|
|
1584
1684
|
var LayoutContext = function LayoutContext(_ref) {
|
@@ -1586,8 +1686,14 @@ var LayoutContext = function LayoutContext(_ref) {
|
|
1586
1686
|
role = _ref.role,
|
1587
1687
|
_ref$pusherRegisterUr = _ref.pusherRegisterUrls,
|
1588
1688
|
pusherRegisterUrls = _ref$pusherRegisterUr === void 0 ? [] : _ref$pusherRegisterUr;
|
1689
|
+
var user = useSelector(function (state) {
|
1690
|
+
var _state$common;
|
1691
|
+
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : _state$common.user;
|
1692
|
+
});
|
1589
1693
|
useLayoutContext(role, pusherRegisterUrls);
|
1590
|
-
return React__default.createElement(
|
1694
|
+
if (!(user !== null && user !== void 0 && user.email)) return React__default.createElement(LoadingComponent, {
|
1695
|
+
isLoading: true
|
1696
|
+
});else return React__default.createElement(Fragment$1, null, children);
|
1591
1697
|
};
|
1592
1698
|
|
1593
1699
|
var ConfirmDialog = function ConfirmDialog(_ref) {
|
@@ -1740,7 +1846,7 @@ var formatTime = (function (time, ORIGINAL_FORMAT, FORMAT) {
|
|
1740
1846
|
var diffFromNow = (function (time, unitOfTime, targetTime) {
|
1741
1847
|
if (time === DATE_MIN_VALUE || targetTime === DATE_MIN_VALUE) return 0;
|
1742
1848
|
try {
|
1743
|
-
var now =
|
1849
|
+
var now = !targetTime ? moment() : moment.utc(targetTime).local();
|
1744
1850
|
return now.diff(moment.utc(time).local(), unitOfTime);
|
1745
1851
|
} catch (_unused) {
|
1746
1852
|
return "";
|
@@ -2184,7 +2290,7 @@ var user_academy = {
|
|
2184
2290
|
remove_failed: "아카데미에서 사용자를 제거하지 못했습니다",
|
2185
2291
|
remove_successfully: "아카데미에서 사용자를 성공적으로 제거했습니다",
|
2186
2292
|
update_user_roles_failed: "아카데미 사용자 역할 업데이트에 실패했습니다",
|
2187
|
-
|
2293
|
+
update_user_roles_successfully: "아카데미 사용자 역할을 성공적으로 제거했습니다",
|
2188
2294
|
get_failed: "아카데미 사용자 가져오기 실패"
|
2189
2295
|
};
|
2190
2296
|
var get_users_failed = "사용자 가져오기 실패";
|
@@ -2516,9 +2622,97 @@ var number_of_correct_answers = "정답 수";
|
|
2516
2622
|
var total_solve_time = "총 풀이 시간";
|
2517
2623
|
var number_of_answer = "{{ number }} 개";
|
2518
2624
|
var time_comparison = "시간 비교";
|
2625
|
+
var import_student_exam_results = "학생 시험 결과 가져오기";
|
2626
|
+
var file_required = "파일이 필요합니다";
|
2627
|
+
var exam_required = "시험이 필요합니다";
|
2628
|
+
var teacher_required = "선생님은 필수입니다";
|
2519
2629
|
var total_users = "총 사용자";
|
2520
2630
|
var added_date = "추가된 날짜";
|
2631
|
+
var sync_exam_results = "시험 결과 동기화";
|
2521
2632
|
var update_data_fail = "데이터 업데이트 실패";
|
2633
|
+
var are_you_sure_to_sync_exam_results_to_academy = "시험 결과를 아카데미 {{ academyName }}에 동기화하시겠습니까(백그라운드에서 실행되며 시간이 다소 소요됨)";
|
2634
|
+
var messages = {
|
2635
|
+
exam_sessions_are_being_synchronized: "{{ total }} 개의 시험 세션이 동기화되고 있습니다"
|
2636
|
+
};
|
2637
|
+
var submit = "제출하다";
|
2638
|
+
var must_select_a_teacher_first = "먼저 교사를 선택해야 합니다";
|
2639
|
+
var student_grade_is_invalid = "학생 등급은 1에서 12 사이여야 합니다";
|
2640
|
+
var recent_users = "최근 사용자";
|
2641
|
+
var recent_students = "최근 학생";
|
2642
|
+
var viewed_user = "본 사용자";
|
2643
|
+
var viewed_QNA = "조회한 질문&답변";
|
2644
|
+
var viewed_exam_result = "시험 결과를 보았습니다";
|
2645
|
+
var printed_exam_result = "인쇄된 시험 결과";
|
2646
|
+
var viewed_attendance = "출석 조회";
|
2647
|
+
var updated_user = "업데이트된 사용자";
|
2648
|
+
var created_new_user = "새 사용자가 생성되었습니다";
|
2649
|
+
var imported_user = "가져온 사용자";
|
2650
|
+
var imported_remove_user = "가져온 사용자 제거";
|
2651
|
+
var deleted_user = "삭제된 사용자";
|
2652
|
+
var completed_QNA = "완료된 질문 및 답변";
|
2653
|
+
var answered_QNA = "답변된 질문&답변";
|
2654
|
+
var remove_message_QNA = "메시지 질문 및 답변 제거";
|
2655
|
+
var update_message_QNA = "메시지 질문 및 답변 업데이트";
|
2656
|
+
var updated_attendance = "업데이트된 출석";
|
2657
|
+
var added_teacher_to_class = "수업에 교사를 추가했습니다.";
|
2658
|
+
var removed_teacher_from_class = "수업에서 교사를 제거했습니다";
|
2659
|
+
var added_student_to_class = "수업에 학생을 추가했습니다.";
|
2660
|
+
var removed_student_from_class = "수업에서 학생을 제거했습니다.";
|
2661
|
+
var exam_detail = "시험 세부정보";
|
2662
|
+
var study_peak = "스터디 피크";
|
2663
|
+
var enter_pass_code = "비밀번호를 입력하세요";
|
2664
|
+
var join_an_academy = "아카데미에 가입하세요";
|
2665
|
+
var select_an_academy = "아카데미를 선택하세요";
|
2666
|
+
var pass_code = "비밀번호";
|
2667
|
+
var enter_academy_pass_code = "학원비밀번호를 입력하세요";
|
2668
|
+
var authentication_failed = "인증 실패!";
|
2669
|
+
var verifying = "확인 중...";
|
2670
|
+
var login = "로그인";
|
2671
|
+
var please_wait_a_moment = "잠시만 기다려주세요";
|
2672
|
+
var oops_sorry = "이런, 미안해요!";
|
2673
|
+
var invitation_token_not_provided = "초대 토큰이 제공되지 않았습니다";
|
2674
|
+
var academy_invitation = "아카데미 초대";
|
2675
|
+
var join_academy = "아카데미 가입";
|
2676
|
+
var you_need_to_log_out_of_your_current_academy_to_use_the_invite_link = "초대 링크를 사용하려면 현재 아카데미에서 로그아웃해야 합니다";
|
2677
|
+
var you_need_to_log_out_of_your_current_academy_to_use_the_academy_join_link = "아카데미 가입 링크를 이용하려면 현재 아카데미에서 로그아웃해야 합니다";
|
2678
|
+
var enter_academy_passcode = "아카데미 비밀번호를 입력하세요";
|
2679
|
+
var academy_passcode = "아카데미 비밀번호";
|
2680
|
+
var academy_invite = "아카데미 초대";
|
2681
|
+
var academy_invite_new_students = "아카데미 신입생 초대";
|
2682
|
+
var create_passcode = "비밀번호 생성";
|
2683
|
+
var update_passcode = "비밀번호 업데이트";
|
2684
|
+
var is_active = "활성화됨";
|
2685
|
+
var limited_emails = "제한된 이메일";
|
2686
|
+
var limited_used_times = "제한된 사용 시간";
|
2687
|
+
var used_times = "사용시간";
|
2688
|
+
var update_data_successfully = "데이터 업데이트 성공";
|
2689
|
+
var reset_data_successfully = "데이터 재설정 성공";
|
2690
|
+
var limited_used_times_is_required = "제한된 사용 시간이 필요합니다";
|
2691
|
+
var limited_emails_is_required = "제한된 이메일이 필요합니다";
|
2692
|
+
var are_you_sure_you_want_to_delete_the_passcode = "비밀번호({{passcode}})를 삭제하시겠습니까?";
|
2693
|
+
var expired_time = "만료된 시간";
|
2694
|
+
var expired_time_is_required = "만료된 시간은 필수 항목입니다.";
|
2695
|
+
var total_emails = "총 이메일";
|
2696
|
+
var academy_invite_detail = "아카데미 초대 세부정보";
|
2697
|
+
var are_you_sure_to_delete_academy_invite = "이 아카데미 초대를 삭제하시겠습니까?";
|
2698
|
+
var day = "낮";
|
2699
|
+
var days = "날";
|
2700
|
+
var emails = "이메일";
|
2701
|
+
var is_accepted = "승인됨";
|
2702
|
+
var re_send = "다시 보내기";
|
2703
|
+
var revoke = "취소";
|
2704
|
+
var resend_invite_successfully = "초대를 다시 보냈습니다.";
|
2705
|
+
var revoke_invite_successfully = "초대를 취소했습니다.";
|
2706
|
+
var create_invite_successfully = "초대를 성공적으로 만들었습니다";
|
2707
|
+
var must_be_a_number = "숫자여야 합니다.";
|
2708
|
+
var is_revoked = "취소됨";
|
2709
|
+
var is_sent = "전송됨";
|
2710
|
+
var is_send = "전송됨";
|
2711
|
+
var expired_date = "만료일";
|
2712
|
+
var reset_passcode = "사용된 시간 비밀번호 재설정";
|
2713
|
+
var at_academy = "학원에서";
|
2714
|
+
var sent_at = "보낸 시간";
|
2715
|
+
var create_data_successfully = "데이터를 성공적으로 생성했습니다";
|
2522
2716
|
var lang_ko = {
|
2523
2717
|
problem_solving: problem_solving,
|
2524
2718
|
my_story: my_story,
|
@@ -3171,9 +3365,95 @@ var lang_ko = {
|
|
3171
3365
|
total_solve_time: total_solve_time,
|
3172
3366
|
number_of_answer: number_of_answer,
|
3173
3367
|
time_comparison: time_comparison,
|
3368
|
+
import_student_exam_results: import_student_exam_results,
|
3369
|
+
file_required: file_required,
|
3370
|
+
exam_required: exam_required,
|
3371
|
+
teacher_required: teacher_required,
|
3174
3372
|
total_users: total_users,
|
3175
3373
|
added_date: added_date,
|
3176
|
-
|
3374
|
+
sync_exam_results: sync_exam_results,
|
3375
|
+
update_data_fail: update_data_fail,
|
3376
|
+
are_you_sure_to_sync_exam_results_to_academy: are_you_sure_to_sync_exam_results_to_academy,
|
3377
|
+
messages: messages,
|
3378
|
+
submit: submit,
|
3379
|
+
must_select_a_teacher_first: must_select_a_teacher_first,
|
3380
|
+
student_grade_is_invalid: student_grade_is_invalid,
|
3381
|
+
recent_users: recent_users,
|
3382
|
+
recent_students: recent_students,
|
3383
|
+
viewed_user: viewed_user,
|
3384
|
+
viewed_QNA: viewed_QNA,
|
3385
|
+
viewed_exam_result: viewed_exam_result,
|
3386
|
+
printed_exam_result: printed_exam_result,
|
3387
|
+
viewed_attendance: viewed_attendance,
|
3388
|
+
updated_user: updated_user,
|
3389
|
+
created_new_user: created_new_user,
|
3390
|
+
imported_user: imported_user,
|
3391
|
+
imported_remove_user: imported_remove_user,
|
3392
|
+
deleted_user: deleted_user,
|
3393
|
+
completed_QNA: completed_QNA,
|
3394
|
+
answered_QNA: answered_QNA,
|
3395
|
+
remove_message_QNA: remove_message_QNA,
|
3396
|
+
update_message_QNA: update_message_QNA,
|
3397
|
+
updated_attendance: updated_attendance,
|
3398
|
+
added_teacher_to_class: added_teacher_to_class,
|
3399
|
+
removed_teacher_from_class: removed_teacher_from_class,
|
3400
|
+
added_student_to_class: added_student_to_class,
|
3401
|
+
removed_student_from_class: removed_student_from_class,
|
3402
|
+
exam_detail: exam_detail,
|
3403
|
+
study_peak: study_peak,
|
3404
|
+
enter_pass_code: enter_pass_code,
|
3405
|
+
join_an_academy: join_an_academy,
|
3406
|
+
select_an_academy: select_an_academy,
|
3407
|
+
pass_code: pass_code,
|
3408
|
+
enter_academy_pass_code: enter_academy_pass_code,
|
3409
|
+
authentication_failed: authentication_failed,
|
3410
|
+
verifying: verifying,
|
3411
|
+
login: login,
|
3412
|
+
please_wait_a_moment: please_wait_a_moment,
|
3413
|
+
oops_sorry: oops_sorry,
|
3414
|
+
invitation_token_not_provided: invitation_token_not_provided,
|
3415
|
+
academy_invitation: academy_invitation,
|
3416
|
+
join_academy: join_academy,
|
3417
|
+
you_need_to_log_out_of_your_current_academy_to_use_the_invite_link: you_need_to_log_out_of_your_current_academy_to_use_the_invite_link,
|
3418
|
+
you_need_to_log_out_of_your_current_academy_to_use_the_academy_join_link: you_need_to_log_out_of_your_current_academy_to_use_the_academy_join_link,
|
3419
|
+
enter_academy_passcode: enter_academy_passcode,
|
3420
|
+
academy_passcode: academy_passcode,
|
3421
|
+
academy_invite: academy_invite,
|
3422
|
+
academy_invite_new_students: academy_invite_new_students,
|
3423
|
+
create_passcode: create_passcode,
|
3424
|
+
update_passcode: update_passcode,
|
3425
|
+
is_active: is_active,
|
3426
|
+
limited_emails: limited_emails,
|
3427
|
+
limited_used_times: limited_used_times,
|
3428
|
+
used_times: used_times,
|
3429
|
+
update_data_successfully: update_data_successfully,
|
3430
|
+
reset_data_successfully: reset_data_successfully,
|
3431
|
+
limited_used_times_is_required: limited_used_times_is_required,
|
3432
|
+
limited_emails_is_required: limited_emails_is_required,
|
3433
|
+
are_you_sure_you_want_to_delete_the_passcode: are_you_sure_you_want_to_delete_the_passcode,
|
3434
|
+
expired_time: expired_time,
|
3435
|
+
expired_time_is_required: expired_time_is_required,
|
3436
|
+
total_emails: total_emails,
|
3437
|
+
academy_invite_detail: academy_invite_detail,
|
3438
|
+
are_you_sure_to_delete_academy_invite: are_you_sure_to_delete_academy_invite,
|
3439
|
+
day: day,
|
3440
|
+
days: days,
|
3441
|
+
emails: emails,
|
3442
|
+
is_accepted: is_accepted,
|
3443
|
+
re_send: re_send,
|
3444
|
+
revoke: revoke,
|
3445
|
+
resend_invite_successfully: resend_invite_successfully,
|
3446
|
+
revoke_invite_successfully: revoke_invite_successfully,
|
3447
|
+
create_invite_successfully: create_invite_successfully,
|
3448
|
+
must_be_a_number: must_be_a_number,
|
3449
|
+
is_revoked: is_revoked,
|
3450
|
+
is_sent: is_sent,
|
3451
|
+
is_send: is_send,
|
3452
|
+
expired_date: expired_date,
|
3453
|
+
reset_passcode: reset_passcode,
|
3454
|
+
at_academy: at_academy,
|
3455
|
+
sent_at: sent_at,
|
3456
|
+
create_data_successfully: create_data_successfully
|
3177
3457
|
};
|
3178
3458
|
|
3179
3459
|
var problem_solving$1 = "Problem Solving";
|
@@ -3825,16 +4105,103 @@ var choose$1 = "Choose";
|
|
3825
4105
|
var additional_duration$1 = "Additional duration";
|
3826
4106
|
var enter_textbook_name_to_search$1 = "Enter textbook name to search";
|
3827
4107
|
var select_class_placeholder$1 = "Select class...";
|
3828
|
-
var user_name$1 = "
|
4108
|
+
var user_name$1 = "User Name";
|
3829
4109
|
var vulnerable_detail$1 = "Other students had a high percentage of correct answers, but I could not answer these questions correctly.";
|
3830
4110
|
var protracted_problem_detail$1 = "Compare the solution time among the correct answers.";
|
3831
4111
|
var number_of_correct_answers$1 = "Number of correct answers";
|
3832
4112
|
var total_solve_time$1 = "Total solve time";
|
3833
4113
|
var number_of_answer$1 = "{{ number }}";
|
3834
4114
|
var time_comparison$1 = "Time comparison";
|
4115
|
+
var import_student_exam_results$1 = "Import Student Exam Results";
|
4116
|
+
var file_required$1 = "File is required";
|
4117
|
+
var exam_required$1 = "Exam is required";
|
4118
|
+
var teacher_required$1 = "Teacher is required";
|
3835
4119
|
var total_users$1 = "Total users";
|
3836
4120
|
var added_date$1 = "Added date";
|
4121
|
+
var sync_exam_results$1 = "Sync exam results";
|
3837
4122
|
var update_data_fail$1 = "Update data fail";
|
4123
|
+
var are_you_sure_to_sync_exam_results_to_academy$1 = "Are you sure to sync exam results to academy \"{{ academyName }}\" (it will run in the background and take a while)";
|
4124
|
+
var messages$1 = {
|
4125
|
+
exam_sessions_are_being_synchronized: "{{ total }} exam sessions are being synchronized"
|
4126
|
+
};
|
4127
|
+
var submit$1 = "Submit";
|
4128
|
+
var must_select_a_teacher_first$1 = "Must select a teacher first";
|
4129
|
+
var student_grade_is_invalid$1 = "Student grade must be from 1 to 12";
|
4130
|
+
var recent_users$1 = "Recent Users";
|
4131
|
+
var recent_students$1 = "Recent Students";
|
4132
|
+
var viewed_user$1 = "Viewed User";
|
4133
|
+
var viewed_QNA$1 = "Viewed Question&Answer";
|
4134
|
+
var viewed_exam_result$1 = "Viewed Exam Results";
|
4135
|
+
var printed_exam_result$1 = "Printed Exam Result";
|
4136
|
+
var viewed_attendance$1 = "Viewed Attendance";
|
4137
|
+
var updated_user$1 = "Updated User";
|
4138
|
+
var created_new_user$1 = "Created New User";
|
4139
|
+
var imported_user$1 = "Imported User";
|
4140
|
+
var imported_remove_user$1 = "Imported Remove User";
|
4141
|
+
var deleted_user$1 = "Deleted User";
|
4142
|
+
var completed_QNA$1 = "Completed Question&Answer";
|
4143
|
+
var answered_QNA$1 = "Answered Question&Answer";
|
4144
|
+
var remove_message_QNA$1 = "Remove Message Question&Answer";
|
4145
|
+
var update_message_QNA$1 = "Update Message Question&Answer";
|
4146
|
+
var updated_attendance$1 = "Updated Attendance";
|
4147
|
+
var added_teacher_to_class$1 = "Added Teacher To Class";
|
4148
|
+
var removed_teacher_from_class$1 = "Removed Teacher From Class";
|
4149
|
+
var added_student_to_class$1 = "Added Student To Class";
|
4150
|
+
var removed_student_from_class$1 = "Removed Student From Class";
|
4151
|
+
var exam_detail$1 = "Exam detail";
|
4152
|
+
var study_peak$1 = "Study Peak";
|
4153
|
+
var enter_pass_code$1 = "Enter pass code";
|
4154
|
+
var join_an_academy$1 = "Join an academy";
|
4155
|
+
var select_an_academy$1 = "Select an academy";
|
4156
|
+
var pass_code$1 = "Pass Code";
|
4157
|
+
var enter_academy_pass_code$1 = "Enter academy pass code";
|
4158
|
+
var authentication_failed$1 = "Authentication failed!";
|
4159
|
+
var verifying$1 = "Verifying...";
|
4160
|
+
var login$1 = "Login";
|
4161
|
+
var please_wait_a_moment$1 = "Please wait a moment";
|
4162
|
+
var oops_sorry$1 = "Oops, sorry!";
|
4163
|
+
var invitation_token_not_provided$1 = "Invitation token not provided";
|
4164
|
+
var academy_invitation$1 = "Academy invitation";
|
4165
|
+
var join_academy$1 = "Join academy";
|
4166
|
+
var you_need_to_log_out_of_your_current_academy_to_use_the_invite_link$1 = "You need to log out of your current academy to use the invite link";
|
4167
|
+
var you_need_to_log_out_of_your_current_academy_to_use_the_academy_join_link$1 = "You need to log out of your current academy to use the academy join link";
|
4168
|
+
var enter_academy_passcode$1 = "Enter Academy Pass Code";
|
4169
|
+
var academy_passcode$1 = "Academy Pass Code";
|
4170
|
+
var academy_invite$1 = "Academy Invite";
|
4171
|
+
var academy_invite_new_students$1 = "Academy Invite New Students";
|
4172
|
+
var create_passcode$1 = "Create Pass Code";
|
4173
|
+
var update_passcode$1 = "Update Pass Code";
|
4174
|
+
var is_active$1 = "IsActive";
|
4175
|
+
var limited_emails$1 = "Limited Emails";
|
4176
|
+
var limited_used_times$1 = "Limited Used Times";
|
4177
|
+
var used_times$1 = "Used Times";
|
4178
|
+
var update_data_successfully$1 = "Update Data Successfully";
|
4179
|
+
var reset_data_successfully$1 = "Reset Data Successfully";
|
4180
|
+
var limited_used_times_is_required$1 = "Limited Used Times is required";
|
4181
|
+
var limited_emails_is_required$1 = "Limited Emails is Required";
|
4182
|
+
var are_you_sure_you_want_to_delete_the_passcode$1 = "Are you sure you want to delete the passcode: {{passcode}}?";
|
4183
|
+
var expired_time$1 = "Expired Time";
|
4184
|
+
var expired_time_is_required$1 = "Expiry Time is required";
|
4185
|
+
var total_emails$1 = "Total Emails";
|
4186
|
+
var academy_invite_detail$1 = "Academy Invite Detail";
|
4187
|
+
var are_you_sure_to_delete_academy_invite$1 = "Are you sure to delete this academy invite?";
|
4188
|
+
var day$1 = "day";
|
4189
|
+
var days$1 = "days";
|
4190
|
+
var emails$1 = "Emails";
|
4191
|
+
var is_accepted$1 = "Is Accepted";
|
4192
|
+
var re_send$1 = "Resend";
|
4193
|
+
var revoke$1 = "Revoke";
|
4194
|
+
var resend_invite_successfully$1 = "Resend invite successfully";
|
4195
|
+
var revoke_invite_successfully$1 = "Revoke invite successfully";
|
4196
|
+
var create_invite_successfully$1 = "Create invite successfully";
|
4197
|
+
var must_be_a_number$1 = "Must be a number";
|
4198
|
+
var is_revoked$1 = "Is Revoked";
|
4199
|
+
var is_sent$1 = "Is Sent";
|
4200
|
+
var is_send$1 = "Is Send";
|
4201
|
+
var expired_date$1 = "Expired Date";
|
4202
|
+
var reset_passcode$1 = "Reset Used Times Pass Code";
|
4203
|
+
var at_academy$1 = "At academy";
|
4204
|
+
var sent_at$1 = "Sent at";
|
3838
4205
|
var lang_en = {
|
3839
4206
|
problem_solving: problem_solving$1,
|
3840
4207
|
my_story: my_story$1,
|
@@ -4487,9 +4854,94 @@ var lang_en = {
|
|
4487
4854
|
total_solve_time: total_solve_time$1,
|
4488
4855
|
number_of_answer: number_of_answer$1,
|
4489
4856
|
time_comparison: time_comparison$1,
|
4857
|
+
import_student_exam_results: import_student_exam_results$1,
|
4858
|
+
file_required: file_required$1,
|
4859
|
+
exam_required: exam_required$1,
|
4860
|
+
teacher_required: teacher_required$1,
|
4490
4861
|
total_users: total_users$1,
|
4491
4862
|
added_date: added_date$1,
|
4492
|
-
|
4863
|
+
sync_exam_results: sync_exam_results$1,
|
4864
|
+
update_data_fail: update_data_fail$1,
|
4865
|
+
are_you_sure_to_sync_exam_results_to_academy: are_you_sure_to_sync_exam_results_to_academy$1,
|
4866
|
+
messages: messages$1,
|
4867
|
+
submit: submit$1,
|
4868
|
+
must_select_a_teacher_first: must_select_a_teacher_first$1,
|
4869
|
+
student_grade_is_invalid: student_grade_is_invalid$1,
|
4870
|
+
recent_users: recent_users$1,
|
4871
|
+
recent_students: recent_students$1,
|
4872
|
+
viewed_user: viewed_user$1,
|
4873
|
+
viewed_QNA: viewed_QNA$1,
|
4874
|
+
viewed_exam_result: viewed_exam_result$1,
|
4875
|
+
printed_exam_result: printed_exam_result$1,
|
4876
|
+
viewed_attendance: viewed_attendance$1,
|
4877
|
+
updated_user: updated_user$1,
|
4878
|
+
created_new_user: created_new_user$1,
|
4879
|
+
imported_user: imported_user$1,
|
4880
|
+
imported_remove_user: imported_remove_user$1,
|
4881
|
+
deleted_user: deleted_user$1,
|
4882
|
+
completed_QNA: completed_QNA$1,
|
4883
|
+
answered_QNA: answered_QNA$1,
|
4884
|
+
remove_message_QNA: remove_message_QNA$1,
|
4885
|
+
update_message_QNA: update_message_QNA$1,
|
4886
|
+
updated_attendance: updated_attendance$1,
|
4887
|
+
added_teacher_to_class: added_teacher_to_class$1,
|
4888
|
+
removed_teacher_from_class: removed_teacher_from_class$1,
|
4889
|
+
added_student_to_class: added_student_to_class$1,
|
4890
|
+
removed_student_from_class: removed_student_from_class$1,
|
4891
|
+
exam_detail: exam_detail$1,
|
4892
|
+
study_peak: study_peak$1,
|
4893
|
+
enter_pass_code: enter_pass_code$1,
|
4894
|
+
join_an_academy: join_an_academy$1,
|
4895
|
+
select_an_academy: select_an_academy$1,
|
4896
|
+
pass_code: pass_code$1,
|
4897
|
+
enter_academy_pass_code: enter_academy_pass_code$1,
|
4898
|
+
authentication_failed: authentication_failed$1,
|
4899
|
+
verifying: verifying$1,
|
4900
|
+
login: login$1,
|
4901
|
+
please_wait_a_moment: please_wait_a_moment$1,
|
4902
|
+
oops_sorry: oops_sorry$1,
|
4903
|
+
invitation_token_not_provided: invitation_token_not_provided$1,
|
4904
|
+
academy_invitation: academy_invitation$1,
|
4905
|
+
join_academy: join_academy$1,
|
4906
|
+
you_need_to_log_out_of_your_current_academy_to_use_the_invite_link: you_need_to_log_out_of_your_current_academy_to_use_the_invite_link$1,
|
4907
|
+
you_need_to_log_out_of_your_current_academy_to_use_the_academy_join_link: you_need_to_log_out_of_your_current_academy_to_use_the_academy_join_link$1,
|
4908
|
+
enter_academy_passcode: enter_academy_passcode$1,
|
4909
|
+
academy_passcode: academy_passcode$1,
|
4910
|
+
academy_invite: academy_invite$1,
|
4911
|
+
academy_invite_new_students: academy_invite_new_students$1,
|
4912
|
+
create_passcode: create_passcode$1,
|
4913
|
+
update_passcode: update_passcode$1,
|
4914
|
+
is_active: is_active$1,
|
4915
|
+
limited_emails: limited_emails$1,
|
4916
|
+
limited_used_times: limited_used_times$1,
|
4917
|
+
used_times: used_times$1,
|
4918
|
+
update_data_successfully: update_data_successfully$1,
|
4919
|
+
reset_data_successfully: reset_data_successfully$1,
|
4920
|
+
limited_used_times_is_required: limited_used_times_is_required$1,
|
4921
|
+
limited_emails_is_required: limited_emails_is_required$1,
|
4922
|
+
are_you_sure_you_want_to_delete_the_passcode: are_you_sure_you_want_to_delete_the_passcode$1,
|
4923
|
+
expired_time: expired_time$1,
|
4924
|
+
expired_time_is_required: expired_time_is_required$1,
|
4925
|
+
total_emails: total_emails$1,
|
4926
|
+
academy_invite_detail: academy_invite_detail$1,
|
4927
|
+
are_you_sure_to_delete_academy_invite: are_you_sure_to_delete_academy_invite$1,
|
4928
|
+
day: day$1,
|
4929
|
+
days: days$1,
|
4930
|
+
emails: emails$1,
|
4931
|
+
is_accepted: is_accepted$1,
|
4932
|
+
re_send: re_send$1,
|
4933
|
+
revoke: revoke$1,
|
4934
|
+
resend_invite_successfully: resend_invite_successfully$1,
|
4935
|
+
revoke_invite_successfully: revoke_invite_successfully$1,
|
4936
|
+
create_invite_successfully: create_invite_successfully$1,
|
4937
|
+
must_be_a_number: must_be_a_number$1,
|
4938
|
+
is_revoked: is_revoked$1,
|
4939
|
+
is_sent: is_sent$1,
|
4940
|
+
is_send: is_send$1,
|
4941
|
+
expired_date: expired_date$1,
|
4942
|
+
reset_passcode: reset_passcode$1,
|
4943
|
+
at_academy: at_academy$1,
|
4944
|
+
sent_at: sent_at$1
|
4493
4945
|
};
|
4494
4946
|
|
4495
4947
|
i18n.use(initReactI18next).init({
|
@@ -4585,6 +5037,7 @@ var TheLanguageDropdown = function TheLanguageDropdown(_ref) {
|
|
4585
5037
|
};
|
4586
5038
|
|
4587
5039
|
var useSwitchAcademy = function useSwitchAcademy(role, history, homeAcademyUrl, homeUrl, canFetchAcademies) {
|
5040
|
+
var _user$roles;
|
4588
5041
|
if (role === void 0) {
|
4589
5042
|
role = Role.Student;
|
4590
5043
|
}
|
@@ -4660,8 +5113,9 @@ var useSwitchAcademy = function useSwitchAcademy(role, history, homeAcademyUrl,
|
|
4660
5113
|
isLoading && dispatch(setLoading(true));
|
4661
5114
|
var academyId = selectedAcademy ? selectedAcademy.id : 0;
|
4662
5115
|
var academyDomain = selectedAcademy ? selectedAcademy.domain : undefined;
|
5116
|
+
var isSuperAdminUser = user && !user.academyDomain;
|
4663
5117
|
var _temp4 = _catch(function () {
|
4664
|
-
return Promise.resolve(switchAcademy(academyId)).then(function (res) {
|
5118
|
+
return Promise.resolve(isSuperAdminUser ? switchSuperAdminAcademy(academyId, role) : switchAcademy(academyId, role)).then(function (res) {
|
4665
5119
|
var data = res.data;
|
4666
5120
|
var requestBody = {
|
4667
5121
|
accessToken: data.accessToken,
|
@@ -4682,16 +5136,15 @@ var useSwitchAcademy = function useSwitchAcademy(role, history, homeAcademyUrl,
|
|
4682
5136
|
return Promise.reject(e);
|
4683
5137
|
}
|
4684
5138
|
};
|
4685
|
-
var handleLogOutAcademy = function handleLogOutAcademy(
|
5139
|
+
var handleLogOutAcademy = function handleLogOutAcademy(callback) {
|
4686
5140
|
try {
|
4687
5141
|
var _temp7 = function _temp7() {
|
4688
5142
|
dispatch(setLoading(false));
|
4689
5143
|
callback();
|
4690
5144
|
};
|
4691
5145
|
dispatch(setLoading(true));
|
4692
|
-
var academyDomain = selectedAcademy ? selectedAcademy.domain : undefined;
|
4693
5146
|
var _temp6 = _catch(function () {
|
4694
|
-
return Promise.resolve(switchAcademy(0)).then(function (res) {
|
5147
|
+
return Promise.resolve(switchAcademy(0, role)).then(function (res) {
|
4695
5148
|
var data = res.data;
|
4696
5149
|
var requestBody = {
|
4697
5150
|
accessToken: data.accessToken,
|
@@ -4699,12 +5152,11 @@ var useSwitchAcademy = function useSwitchAcademy(role, history, homeAcademyUrl,
|
|
4699
5152
|
academyId: 0,
|
4700
5153
|
role: role
|
4701
5154
|
};
|
4702
|
-
|
4703
|
-
|
4704
|
-
return Promise.resolve(handleLoginAccessToken(requestBody, false, user.academyDomain ? academyDomain : undefined)).then(function () {});
|
5155
|
+
localStorage.removeItem(ACADEMY_DOMAIN);
|
5156
|
+
return Promise.resolve(handleLoginAccessToken(requestBody, false)).then(function () {});
|
4705
5157
|
});
|
4706
5158
|
}, function (error) {
|
4707
|
-
|
5159
|
+
localStorage.removeItem(ACADEMY_DOMAIN);
|
4708
5160
|
toast.error(getErrorMessage(t, error));
|
4709
5161
|
});
|
4710
5162
|
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(_temp7) : _temp7(_temp6));
|
@@ -4714,7 +5166,7 @@ var useSwitchAcademy = function useSwitchAcademy(role, history, homeAcademyUrl,
|
|
4714
5166
|
};
|
4715
5167
|
useEffect(function () {
|
4716
5168
|
canFetchAcademies && getAcademies();
|
4717
|
-
}, [canFetchAcademies, user === null || user === void 0 ? void 0 : user.academyDomain, user === null || user === void 0 ? void 0 : user.email]);
|
5169
|
+
}, [canFetchAcademies, user === null || user === void 0 ? void 0 : user.academyDomain, user === null || user === void 0 ? void 0 : user.email, user === null || user === void 0 ? void 0 : (_user$roles = user.roles) === null || _user$roles === void 0 ? void 0 : _user$roles.join(",")]);
|
4718
5170
|
useEffect(function () {
|
4719
5171
|
canFetchAcademies && isReFetchUserAcademies && getAcademies(false);
|
4720
5172
|
}, [canFetchAcademies, isReFetchUserAcademies]);
|
@@ -4810,7 +5262,7 @@ var TheAcademyDropdown = function TheAcademyDropdown(_ref) {
|
|
4810
5262
|
display: "flex",
|
4811
5263
|
alignItems: "center"
|
4812
5264
|
}
|
4813
|
-
},
|
5265
|
+
}, React__default.createElement(Stack, {
|
4814
5266
|
flexDirection: "column",
|
4815
5267
|
gap: "2px"
|
4816
5268
|
}, React__default.createElement(Typography, {
|
@@ -4831,28 +5283,7 @@ var TheAcademyDropdown = function TheAcademyDropdown(_ref) {
|
|
4831
5283
|
lineHeight: '1.5em',
|
4832
5284
|
color: styles.gray_500
|
4833
5285
|
}
|
4834
|
-
}, selectedAcademy.name))
|
4835
|
-
flexDirection: "column",
|
4836
|
-
gap: "2px"
|
4837
|
-
}, React__default.createElement(Typography, {
|
4838
|
-
textAlign: "start",
|
4839
|
-
className: "" + styles["line-clamp"],
|
4840
|
-
sx: {
|
4841
|
-
fontSize: 14,
|
4842
|
-
fontWeight: 900,
|
4843
|
-
lineHeight: '1.5em',
|
4844
|
-
color: styles.gray_900
|
4845
|
-
}
|
4846
|
-
}), React__default.createElement(Typography, {
|
4847
|
-
textAlign: "start",
|
4848
|
-
className: "" + styles["line-clamp"],
|
4849
|
-
sx: {
|
4850
|
-
fontSize: 14,
|
4851
|
-
fontWeight: 600,
|
4852
|
-
lineHeight: '1.5em',
|
4853
|
-
color: styles.gray_500
|
4854
|
-
}
|
4855
|
-
}, t("no_academy_selected"))))), React__default.createElement(Grid, {
|
5286
|
+
}, selectedAcademy !== null && selectedAcademy !== void 0 && selectedAcademy.name ? selectedAcademy.name : t("no_academy_selected"))))), React__default.createElement(Grid, {
|
4856
5287
|
item: true,
|
4857
5288
|
xs: 6,
|
4858
5289
|
lg: 2,
|
@@ -4952,7 +5383,7 @@ var TheAcademyDropdown = function TheAcademyDropdown(_ref) {
|
|
4952
5383
|
}
|
4953
5384
|
}, option.name))), option.id === (selectedAcademy === null || selectedAcademy === void 0 ? void 0 : selectedAcademy.id) && React__default.createElement("div", {
|
4954
5385
|
onClick: function onClick() {
|
4955
|
-
return handleLogOutAcademy(
|
5386
|
+
return handleLogOutAcademy(handleClose);
|
4956
5387
|
}
|
4957
5388
|
}, React__default.createElement(IoCloseCircle, {
|
4958
5389
|
size: 18,
|
@@ -6458,14 +6889,14 @@ var MessageStatus;
|
|
6458
6889
|
})(MessageStatus || (MessageStatus = {}));
|
6459
6890
|
|
6460
6891
|
var types = {
|
6461
|
-
|
6462
|
-
|
6463
|
-
|
6464
|
-
|
6465
|
-
|
6466
|
-
|
6467
|
-
|
6468
|
-
|
6892
|
+
__proto__: null,
|
6893
|
+
get MessageSortBy () { return MessageSortBy; },
|
6894
|
+
get OrderBy () { return OrderBy; },
|
6895
|
+
get StudentSortBy () { return StudentSortBy; },
|
6896
|
+
get StudentOrderBy () { return StudentOrderBy; },
|
6897
|
+
get MessageAction () { return MessageAction; },
|
6898
|
+
get MessageSourceType () { return MessageSourceType; },
|
6899
|
+
get MessageStatus () { return MessageStatus; }
|
6469
6900
|
};
|
6470
6901
|
|
6471
6902
|
var ExamStatus;
|
@@ -6489,7 +6920,8 @@ var MESSAGE_DEFAULT_FILTER = {
|
|
6489
6920
|
sortColumnName: MessageSortBy.CreatedAt
|
6490
6921
|
};
|
6491
6922
|
|
6492
|
-
var useMessageList = function useMessageList() {
|
6923
|
+
var useMessageList = function useMessageList(_ref) {
|
6924
|
+
var student = _ref.student;
|
6493
6925
|
var _useState = useState([]),
|
6494
6926
|
messages = _useState[0],
|
6495
6927
|
setMessages = _useState[1];
|
@@ -6501,13 +6933,19 @@ var useMessageList = function useMessageList() {
|
|
6501
6933
|
setLoading = _useState3[1];
|
6502
6934
|
var _useTranslation = useTranslation(),
|
6503
6935
|
t = _useTranslation.t;
|
6936
|
+
var roles = useSelector(function (state) {
|
6937
|
+
var _state$common, _state$common$user;
|
6938
|
+
return (state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : _state$common$user.roles) || [];
|
6939
|
+
});
|
6940
|
+
var isTeacher = roles === null || roles === void 0 ? void 0 : roles.includes(Role.Teacher);
|
6941
|
+
var isFirst = true;
|
6504
6942
|
var getMessageList = function getMessageList(conversationId) {
|
6505
6943
|
try {
|
6506
|
-
var
|
6944
|
+
var _temp3 = function _temp3() {
|
6507
6945
|
setLoading(false);
|
6508
6946
|
};
|
6509
6947
|
setLoading(true);
|
6510
|
-
var
|
6948
|
+
var _temp2 = _catch(function () {
|
6511
6949
|
var filter = _extends({}, messageFilter);
|
6512
6950
|
return Promise.resolve(getMessagesByConversation(conversationId, filter)).then(function (res) {
|
6513
6951
|
return Promise.resolve(updateLastTimeReadConversation(conversationId)).then(function () {
|
@@ -6519,19 +6957,32 @@ var useMessageList = function useMessageList() {
|
|
6519
6957
|
totalPages: res.data.totalPages
|
6520
6958
|
});
|
6521
6959
|
});
|
6960
|
+
var _temp = function () {
|
6961
|
+
if (isFirst && isTeacher) {
|
6962
|
+
return Promise.resolve(createRecentUserActionListApi({
|
6963
|
+
userId: (student === null || student === void 0 ? void 0 : student.id) || 0,
|
6964
|
+
action: RecentUserAction$1.ViewedQNA,
|
6965
|
+
data: "" + conversationId,
|
6966
|
+
roles: [Role.Teacher]
|
6967
|
+
})).then(function () {
|
6968
|
+
isFirst = false;
|
6969
|
+
});
|
6970
|
+
}
|
6971
|
+
}();
|
6972
|
+
if (_temp && _temp.then) return _temp.then(function () {});
|
6522
6973
|
});
|
6523
6974
|
});
|
6524
6975
|
}, function (error) {
|
6525
6976
|
toast.error(getErrorMessage(t, error));
|
6526
6977
|
});
|
6527
|
-
return Promise.resolve(
|
6978
|
+
return Promise.resolve(_temp2 && _temp2.then ? _temp2.then(_temp3) : _temp3(_temp2));
|
6528
6979
|
} catch (e) {
|
6529
6980
|
return Promise.reject(e);
|
6530
6981
|
}
|
6531
6982
|
};
|
6532
6983
|
var handleLoadMore = function handleLoadMore(conversationId) {
|
6533
6984
|
try {
|
6534
|
-
var
|
6985
|
+
var _temp5 = function _temp5(_result) {
|
6535
6986
|
if (_exit) return _result;
|
6536
6987
|
setLoading(false);
|
6537
6988
|
return true;
|
@@ -6542,7 +6993,7 @@ var useMessageList = function useMessageList() {
|
|
6542
6993
|
currentPage: ((messageFilter === null || messageFilter === void 0 ? void 0 : messageFilter.currentPage) || 1) + 1
|
6543
6994
|
});
|
6544
6995
|
setLoading(true);
|
6545
|
-
var
|
6996
|
+
var _temp4 = _catch(function () {
|
6546
6997
|
return Promise.resolve(getMessagesByConversation(conversationId, filter)).then(function (res) {
|
6547
6998
|
return Promise.resolve(updateLastTimeReadConversation(conversationId)).then(function () {
|
6548
6999
|
if (res.data.items.length) {
|
@@ -6566,7 +7017,7 @@ var useMessageList = function useMessageList() {
|
|
6566
7017
|
toast.error(getErrorMessage(t, error));
|
6567
7018
|
_exit = true;
|
6568
7019
|
});
|
6569
|
-
return Promise.resolve(
|
7020
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp5) : _temp5(_temp4));
|
6570
7021
|
} catch (e) {
|
6571
7022
|
return Promise.reject(e);
|
6572
7023
|
}
|
@@ -6577,19 +7028,19 @@ var useMessageList = function useMessageList() {
|
|
6577
7028
|
};
|
6578
7029
|
var handleDeleteMessage = function handleDeleteMessage(conversationId, id, callback) {
|
6579
7030
|
try {
|
6580
|
-
var
|
7031
|
+
var _temp7 = function _temp7(_result2) {
|
6581
7032
|
if (_exit2) return _result2;
|
6582
7033
|
callback();
|
6583
7034
|
};
|
6584
7035
|
var _exit2 = false;
|
6585
7036
|
if (isLoading) return Promise.resolve();
|
6586
|
-
var
|
7037
|
+
var _temp6 = _catch(function () {
|
6587
7038
|
return Promise.resolve(deleteMessage(conversationId, id)).then(function () {});
|
6588
7039
|
}, function (error) {
|
6589
7040
|
toast.error(getErrorMessage(t, error));
|
6590
7041
|
_exit2 = true;
|
6591
7042
|
});
|
6592
|
-
return Promise.resolve(
|
7043
|
+
return Promise.resolve(_temp6 && _temp6.then ? _temp6.then(_temp7) : _temp7(_temp6));
|
6593
7044
|
} catch (e) {
|
6594
7045
|
return Promise.reject(e);
|
6595
7046
|
}
|
@@ -6613,19 +7064,19 @@ var useMessageList = function useMessageList() {
|
|
6613
7064
|
};
|
6614
7065
|
var handleUpdateMessage = function handleUpdateMessage(conversationId, id, message, callback) {
|
6615
7066
|
try {
|
6616
|
-
var
|
7067
|
+
var _temp9 = function _temp9(_result3) {
|
6617
7068
|
if (_exit3) return _result3;
|
6618
7069
|
setLoading(false);
|
6619
7070
|
callback();
|
6620
7071
|
};
|
6621
7072
|
var _exit3 = false;
|
6622
|
-
var
|
7073
|
+
var _temp8 = _catch(function () {
|
6623
7074
|
return Promise.resolve(updateMessage(conversationId, id, message)).then(function () {});
|
6624
7075
|
}, function (error) {
|
6625
7076
|
toast.error(getErrorMessage(t, error));
|
6626
7077
|
_exit3 = true;
|
6627
7078
|
});
|
6628
|
-
return Promise.resolve(
|
7079
|
+
return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(_temp9) : _temp9(_temp8));
|
6629
7080
|
} catch (e) {
|
6630
7081
|
return Promise.reject(e);
|
6631
7082
|
}
|
@@ -6680,7 +7131,9 @@ var useChatContainer = function useChatContainer(props) {
|
|
6680
7131
|
var _useState4 = useState(true),
|
6681
7132
|
isScrollToEnd = _useState4[0],
|
6682
7133
|
setScrollToEnd = _useState4[1];
|
6683
|
-
var _useMessageList = useMessageList(
|
7134
|
+
var _useMessageList = useMessageList({
|
7135
|
+
student: student
|
7136
|
+
}),
|
6684
7137
|
isLoadingMessages = _useMessageList.isLoading,
|
6685
7138
|
messages = _useMessageList.messages,
|
6686
7139
|
messageFilter = _useMessageList.messageFilter,
|
@@ -6963,8 +7416,10 @@ var usePusherConversation = function usePusherConversation(onNewMessageConversat
|
|
6963
7416
|
return {};
|
6964
7417
|
};
|
6965
7418
|
|
7419
|
+
var _templateObject;
|
7420
|
+
var BorderedTextField = styled(TextField)(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["\n & .MuiOutlinedInput-root {\n &.Mui-focused fieldset {\n border-width: 1px;\n border-color: ", ";\n }\n }\n & .MuiOutlinedInput-root:hover {\n fieldset {\n border-width: 1px;\n border-color: ", ";\n }\n }\n"])), styles.dark, styles.less_dark);
|
6966
7421
|
var InputText = function InputText(props) {
|
6967
|
-
return React__default.createElement(
|
7422
|
+
return React__default.createElement(BorderedTextField, Object.assign({
|
6968
7423
|
sx: {
|
6969
7424
|
"& input": {
|
6970
7425
|
py: "7.5px",
|
@@ -7756,12 +8211,22 @@ var OrderType;
|
|
7756
8211
|
OrderType["DESC"] = "DESC";
|
7757
8212
|
})(OrderType || (OrderType = {}));
|
7758
8213
|
|
8214
|
+
var RecentUserAction$1;
|
8215
|
+
(function (RecentUserAction) {
|
8216
|
+
RecentUserAction["ViewedUser"] = "ViewedUser";
|
8217
|
+
RecentUserAction["ViewedQNA"] = "ViewedQNA";
|
8218
|
+
RecentUserAction["ViewedExamResult"] = "ViewedExamResult";
|
8219
|
+
RecentUserAction["PrintedExamResult"] = "PrintedExamResult";
|
8220
|
+
RecentUserAction["ViewedAttendance"] = "ViewedAttendance";
|
8221
|
+
})(RecentUserAction$1 || (RecentUserAction$1 = {}));
|
8222
|
+
|
7759
8223
|
|
7760
8224
|
|
7761
8225
|
var index = {
|
7762
|
-
|
7763
|
-
|
7764
|
-
|
8226
|
+
__proto__: null,
|
8227
|
+
get OrderType () { return OrderType; },
|
8228
|
+
get ExamStatus () { return ExamStatus$1; },
|
8229
|
+
get RecentUserAction () { return RecentUserAction$1; }
|
7765
8230
|
};
|
7766
8231
|
|
7767
8232
|
var TextbookSortBy;
|
@@ -8005,6 +8470,8 @@ var useExam = function useExam(props) {
|
|
8005
8470
|
};
|
8006
8471
|
};
|
8007
8472
|
|
8473
|
+
var PAGE_TITLE_DETAIL = "textbook_detail";
|
8474
|
+
var PAGE_TITLE_CREATE = "create_textbook";
|
8008
8475
|
var useTextbookDetail = function useTextbookDetail(props) {
|
8009
8476
|
var role = props.role,
|
8010
8477
|
isReadonlyParam = props.isReadonlyParam,
|
@@ -8706,7 +9173,7 @@ var useTextbookDetail = function useTextbookDetail(props) {
|
|
8706
9173
|
handleChangeExamRequest(exam);
|
8707
9174
|
};
|
8708
9175
|
useEffect(function () {
|
8709
|
-
document.title = t("
|
9176
|
+
document.title = t("study_peak") + " | " + t(id ? PAGE_TITLE_DETAIL : PAGE_TITLE_CREATE);
|
8710
9177
|
}, [id, t]);
|
8711
9178
|
useEffect(function () {
|
8712
9179
|
setReadonly(textbook.isCreatedByAdmin || !!isReadonlyParam);
|
@@ -9764,6 +10231,22 @@ var TextbookViewDetail = function TextbookViewDetail(props) {
|
|
9764
10231
|
}));
|
9765
10232
|
};
|
9766
10233
|
|
10234
|
+
var checkSuperUrl = function checkSuperUrl(superUrls, pathname) {
|
10235
|
+
return superUrls.some(function (i) {
|
10236
|
+
if (i.includes(":")) {
|
10237
|
+
var urls = i.split("/");
|
10238
|
+
var names = pathname.split("/");
|
10239
|
+
if (urls.length != names.length) return false;
|
10240
|
+
var isMatches = true;
|
10241
|
+
urls.forEach(function (u, index) {
|
10242
|
+
if (u != names[index] && !u.startsWith(":")) isMatches = false;
|
10243
|
+
});
|
10244
|
+
return isMatches;
|
10245
|
+
}
|
10246
|
+
return pathname.startsWith(i);
|
10247
|
+
});
|
10248
|
+
};
|
10249
|
+
|
9767
10250
|
var useAutoAcademyDomain = function useAutoAcademyDomain(logout, history, superUrls, homeUrl, homeAcademyUrl, isAuthPage) {
|
9768
10251
|
if (isAuthPage === void 0) {
|
9769
10252
|
isAuthPage = true;
|
@@ -9782,9 +10265,7 @@ var useAutoAcademyDomain = function useAutoAcademyDomain(logout, history, superU
|
|
9782
10265
|
var paramAcademyDomain = searchParams.get("domain");
|
9783
10266
|
var domain = getAcademyDomain();
|
9784
10267
|
if (!!email !== isAuthPage) return;
|
9785
|
-
var isSuperUrl = superUrls
|
9786
|
-
return pathname.startsWith(i);
|
9787
|
-
});
|
10268
|
+
var isSuperUrl = checkSuperUrl(superUrls, pathname);
|
9788
10269
|
if (!academyDomain) {
|
9789
10270
|
if (!isSuperUrl) {
|
9790
10271
|
!paramAcademyDomain && domain && searchParams.set("domain", domain);
|
@@ -9825,7 +10306,7 @@ var useAutoAcademyDomain = function useAutoAcademyDomain(logout, history, superU
|
|
9825
10306
|
};
|
9826
10307
|
useEffect(function () {
|
9827
10308
|
changeAcademySearchParams();
|
9828
|
-
}, [
|
10309
|
+
}, [pathname, window.location.search, isAuthPage, email, academyDomain]);
|
9829
10310
|
};
|
9830
10311
|
|
9831
10312
|
var DEFAULT_PAGING_RESPONSE = {
|
@@ -9943,12 +10424,13 @@ var useList = function useList(fetchData, defaultQuery) {
|
|
9943
10424
|
|
9944
10425
|
|
9945
10426
|
var index$1 = {
|
9946
|
-
|
9947
|
-
|
9948
|
-
|
9949
|
-
|
10427
|
+
__proto__: null,
|
10428
|
+
useLogin: useLogin,
|
10429
|
+
useAutoAcademyDomain: useAutoAcademyDomain,
|
10430
|
+
useList: useList
|
9950
10431
|
};
|
9951
10432
|
|
10433
|
+
var PAGE_TITLE$1 = "textbooks";
|
9952
10434
|
var useTextbookList = function useTextbookList(props) {
|
9953
10435
|
var role = props.role,
|
9954
10436
|
navigate = props.navigate;
|
@@ -10012,6 +10494,9 @@ var useTextbookList = function useTextbookList(props) {
|
|
10012
10494
|
return Promise.reject(e);
|
10013
10495
|
}
|
10014
10496
|
};
|
10497
|
+
useEffect(function () {
|
10498
|
+
document.title = t("study_peak") + " | " + t(PAGE_TITLE$1);
|
10499
|
+
}, [t]);
|
10015
10500
|
return {
|
10016
10501
|
filter: filter,
|
10017
10502
|
textSearchRef: textSearchRef,
|
@@ -10235,9 +10720,9 @@ var TextbookList = function TextbookList(props) {
|
|
10235
10720
|
|
10236
10721
|
|
10237
10722
|
var index$2 = {
|
10238
|
-
|
10239
|
-
|
10240
|
-
|
10723
|
+
__proto__: null,
|
10724
|
+
TextbookList: TextbookList,
|
10725
|
+
TextbookDetail: TextbookViewDetail
|
10241
10726
|
};
|
10242
10727
|
|
10243
10728
|
var _excluded$5 = ["defaultValue", "options", "isDisabled", "scrollBottom", "value", "isMulti"];
|
@@ -10347,9 +10832,6 @@ var getResultsCategoriesTeacher = function getResultsCategoriesTeacher(id, stude
|
|
10347
10832
|
var createConversationApi = function createConversationApi(data) {
|
10348
10833
|
return api.post(BASE_URL + "/api/conversation", data);
|
10349
10834
|
};
|
10350
|
-
var getCheckStatusExam = function getCheckStatusExam(examCode) {
|
10351
|
-
return api.get(EXAM_SESSION_URL + "/" + examCode + "/status");
|
10352
|
-
};
|
10353
10835
|
|
10354
10836
|
var toNumberOrder = function toNumberOrder(value) {
|
10355
10837
|
return "The " + value + (value % 10 === 1 ? 'st' : value % 10 === 2 ? 'nd' : value % 10 === 3 ? 'rd' : 'th');
|
@@ -11148,6 +11630,28 @@ var defaultSeries = function defaultSeries(t) {
|
|
11148
11630
|
}];
|
11149
11631
|
};
|
11150
11632
|
|
11633
|
+
var RECENT_USER_URL = BASE_URL + "/api/recentUsers";
|
11634
|
+
var getRecentUserActionListApi = function getRecentUserActionListApi(query) {
|
11635
|
+
return api.get("" + RECENT_USER_URL, {
|
11636
|
+
params: _extends({}, query)
|
11637
|
+
});
|
11638
|
+
};
|
11639
|
+
var createRecentUserActionListApi = function createRecentUserActionListApi(_ref) {
|
11640
|
+
var userId = _ref.userId,
|
11641
|
+
action = _ref.action,
|
11642
|
+
data = _ref.data,
|
11643
|
+
roles = _ref.roles;
|
11644
|
+
return api.post("" + RECENT_USER_URL, {
|
11645
|
+
userId: userId,
|
11646
|
+
action: action,
|
11647
|
+
data: data
|
11648
|
+
}, {
|
11649
|
+
params: {
|
11650
|
+
roles: roles
|
11651
|
+
}
|
11652
|
+
});
|
11653
|
+
};
|
11654
|
+
|
11151
11655
|
var useExamResult = function useExamResult(searchParam, history, examSessionId, studentId, code, handleChangeTab, selectedTab) {
|
11152
11656
|
var _allSeries$dataChartI;
|
11153
11657
|
if (examSessionId === void 0) {
|
@@ -11172,97 +11676,94 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11172
11676
|
var _state$common2;
|
11173
11677
|
return state === null || state === void 0 ? void 0 : (_state$common2 = state.common) === null || _state$common2 === void 0 ? void 0 : _state$common2.language;
|
11174
11678
|
});
|
11175
|
-
var _useState = useState(),
|
11176
|
-
|
11177
|
-
|
11679
|
+
var _useState = useState(false),
|
11680
|
+
isLoading = _useState[0],
|
11681
|
+
setIsLoading = _useState[1];
|
11178
11682
|
var _useState2 = useState(),
|
11179
|
-
|
11180
|
-
|
11181
|
-
var _useState3 = useState(
|
11182
|
-
|
11183
|
-
|
11683
|
+
resultData = _useState2[0],
|
11684
|
+
setResultData = _useState2[1];
|
11685
|
+
var _useState3 = useState(),
|
11686
|
+
effectSize = _useState3[0],
|
11687
|
+
setEffectSize = _useState3[1];
|
11184
11688
|
var _useState4 = useState([]),
|
11185
|
-
|
11186
|
-
|
11689
|
+
longTimeSpend = _useState4[0],
|
11690
|
+
setLongTimeSpend = _useState4[1];
|
11187
11691
|
var _useState5 = useState([]),
|
11188
|
-
|
11189
|
-
|
11190
|
-
var _useState6 = useState(
|
11191
|
-
|
11192
|
-
|
11193
|
-
var _useState7 = useState(
|
11194
|
-
|
11195
|
-
|
11692
|
+
timelyOrderQuestions = _useState5[0],
|
11693
|
+
setTimelyOrderQuestions = _useState5[1];
|
11694
|
+
var _useState6 = useState([]),
|
11695
|
+
categoryResponses = _useState6[0],
|
11696
|
+
setCategoryResponses = _useState6[1];
|
11697
|
+
var _useState7 = useState(0),
|
11698
|
+
dataChartIndex = _useState7[0],
|
11699
|
+
setDataChartIndex = _useState7[1];
|
11700
|
+
var _useState8 = useState(""),
|
11701
|
+
openProblem = _useState8[0],
|
11702
|
+
setOpenProblem = _useState8[1];
|
11196
11703
|
var _useTranslation = useTranslation(),
|
11197
11704
|
t = _useTranslation.t;
|
11198
11705
|
var getStudentData = function getStudentData(examCode) {
|
11199
11706
|
try {
|
11200
|
-
var
|
11201
|
-
|
11202
|
-
dispatch(setLoading(false));
|
11203
|
-
}
|
11204
|
-
var _temp = _catch(function () {
|
11205
|
-
return Promise.resolve(Promise.all([getResults(examCode), getResultsLongTimeSpend(examCode), getResultsEffectSize(examCode), getResultsTimeOrderQuestion(examCode), getResultsCategories(examCode)])).then(function (result) {
|
11206
|
-
var _result$0$data, _result$1$data, _result$2$data, _result$3$data, _result$4$data;
|
11207
|
-
handleChangeTab(0);
|
11208
|
-
setDataChartIndex(0);
|
11209
|
-
setResultData((_result$0$data = result[0].data) === null || _result$0$data === void 0 ? void 0 : _result$0$data.data);
|
11210
|
-
setLongTimeSpend((_result$1$data = result[1].data) === null || _result$1$data === void 0 ? void 0 : _result$1$data.data);
|
11211
|
-
setEffectSize((_result$2$data = result[2].data) === null || _result$2$data === void 0 ? void 0 : _result$2$data.data);
|
11212
|
-
setTimelyOrderQuestions((_result$3$data = result[3].data) === null || _result$3$data === void 0 ? void 0 : _result$3$data.data);
|
11213
|
-
setCategoryResponses(((_result$4$data = result[4].data) === null || _result$4$data === void 0 ? void 0 : _result$4$data.data) || []);
|
11214
|
-
});
|
11215
|
-
}, function (error) {
|
11216
|
-
toast.error(getErrorMessage(t, error));
|
11217
|
-
});
|
11218
|
-
return _temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp);
|
11707
|
+
var _temp2 = function _temp2() {
|
11708
|
+
setIsLoading(false);
|
11219
11709
|
};
|
11220
11710
|
if (!examCode) return Promise.resolve();
|
11221
|
-
|
11222
|
-
var
|
11223
|
-
return Promise.resolve(
|
11224
|
-
|
11225
|
-
|
11226
|
-
|
11711
|
+
setIsLoading(true);
|
11712
|
+
var _temp = _catch(function () {
|
11713
|
+
return Promise.resolve(Promise.all([getResults(examCode), getResultsLongTimeSpend(examCode), getResultsEffectSize(examCode), getResultsTimeOrderQuestion(examCode), getResultsCategories(examCode)])).then(function (result) {
|
11714
|
+
var _result$0$data, _result$1$data, _result$2$data, _result$3$data, _result$4$data;
|
11715
|
+
handleChangeTab(0);
|
11716
|
+
setDataChartIndex(0);
|
11717
|
+
setResultData((_result$0$data = result[0].data) === null || _result$0$data === void 0 ? void 0 : _result$0$data.data);
|
11718
|
+
setLongTimeSpend((_result$1$data = result[1].data) === null || _result$1$data === void 0 ? void 0 : _result$1$data.data);
|
11719
|
+
setEffectSize((_result$2$data = result[2].data) === null || _result$2$data === void 0 ? void 0 : _result$2$data.data);
|
11720
|
+
setTimelyOrderQuestions((_result$3$data = result[3].data) === null || _result$3$data === void 0 ? void 0 : _result$3$data.data);
|
11721
|
+
setCategoryResponses(((_result$4$data = result[4].data) === null || _result$4$data === void 0 ? void 0 : _result$4$data.data) || []);
|
11227
11722
|
});
|
11723
|
+
}, function (error) {
|
11724
|
+
toast.error(getErrorMessage(t, error));
|
11228
11725
|
});
|
11229
|
-
return Promise.resolve(
|
11726
|
+
return Promise.resolve(_temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp));
|
11230
11727
|
} catch (e) {
|
11231
11728
|
return Promise.reject(e);
|
11232
11729
|
}
|
11233
11730
|
};
|
11234
11731
|
var getStudentDataByTeacher = function getStudentDataByTeacher(examCode, examSessionId, studentId) {
|
11235
11732
|
try {
|
11236
|
-
var
|
11237
|
-
|
11238
|
-
dispatch(setLoading(false));
|
11239
|
-
}
|
11240
|
-
var _temp5 = _catch(function () {
|
11241
|
-
return Promise.resolve(Promise.all([getResultsTeacher(examSessionId, studentId), getResultsLongTimeSpendTeacher(examSessionId, studentId), getResultsEffectSizeTeacher(examSessionId, studentId), getResultsTimeOrderQuestionTeacher(examSessionId, studentId), getResultsCategoriesTeacher(examSessionId, studentId)])).then(function (result) {
|
11242
|
-
var _result$0$data2, _result$1$data2, _result$2$data2, _result$3$data2, _result$4$data2;
|
11243
|
-
handleChangeTab(0);
|
11244
|
-
setDataChartIndex(0);
|
11245
|
-
setResultData((_result$0$data2 = result[0].data) === null || _result$0$data2 === void 0 ? void 0 : _result$0$data2.data);
|
11246
|
-
setLongTimeSpend((_result$1$data2 = result[1].data) === null || _result$1$data2 === void 0 ? void 0 : _result$1$data2.data);
|
11247
|
-
setEffectSize((_result$2$data2 = result[2].data) === null || _result$2$data2 === void 0 ? void 0 : _result$2$data2.data);
|
11248
|
-
setTimelyOrderQuestions((_result$3$data2 = result[3].data) === null || _result$3$data2 === void 0 ? void 0 : _result$3$data2.data);
|
11249
|
-
setCategoryResponses(((_result$4$data2 = result[4].data) === null || _result$4$data2 === void 0 ? void 0 : _result$4$data2.data) || []);
|
11250
|
-
});
|
11251
|
-
}, function (error) {
|
11252
|
-
toast.error(getErrorMessage(t, error));
|
11253
|
-
});
|
11254
|
-
return _temp5 && _temp5.then ? _temp5.then(_temp6) : _temp6(_temp5);
|
11733
|
+
var _temp5 = function _temp5() {
|
11734
|
+
setIsLoading(false);
|
11255
11735
|
};
|
11256
11736
|
if (!examCode || !examSessionId || !studentId) return Promise.resolve();
|
11257
|
-
|
11258
|
-
var
|
11259
|
-
return Promise.resolve(
|
11260
|
-
|
11261
|
-
|
11262
|
-
|
11737
|
+
setIsLoading(true);
|
11738
|
+
var _temp4 = _catch(function () {
|
11739
|
+
return Promise.resolve(Promise.all([getResultsTeacher(examSessionId, studentId), getResultsLongTimeSpendTeacher(examSessionId, studentId), getResultsEffectSizeTeacher(examSessionId, studentId), getResultsTimeOrderQuestionTeacher(examSessionId, studentId), getResultsCategoriesTeacher(examSessionId, studentId)])).then(function (result) {
|
11740
|
+
var _result$0$data2, _result$1$data2, _result$2$data2, _result$3$data2, _result$4$data2;
|
11741
|
+
function _temp3(_createRecentUserActi) {
|
11742
|
+
_createRecentUserActi;
|
11743
|
+
}
|
11744
|
+
handleChangeTab(0);
|
11745
|
+
setDataChartIndex(0);
|
11746
|
+
setResultData((_result$0$data2 = result[0].data) === null || _result$0$data2 === void 0 ? void 0 : _result$0$data2.data);
|
11747
|
+
setLongTimeSpend((_result$1$data2 = result[1].data) === null || _result$1$data2 === void 0 ? void 0 : _result$1$data2.data);
|
11748
|
+
setEffectSize((_result$2$data2 = result[2].data) === null || _result$2$data2 === void 0 ? void 0 : _result$2$data2.data);
|
11749
|
+
setTimelyOrderQuestions((_result$3$data2 = result[3].data) === null || _result$3$data2 === void 0 ? void 0 : _result$3$data2.data);
|
11750
|
+
setCategoryResponses(((_result$4$data2 = result[4].data) === null || _result$4$data2 === void 0 ? void 0 : _result$4$data2.data) || []);
|
11751
|
+
return isStudent ? _temp3(!isStudent && createRecentUserActionListApi({
|
11752
|
+
userId: studentId,
|
11753
|
+
action: RecentUserAction$1.ViewedExamResult,
|
11754
|
+
data: "" + examSessionId,
|
11755
|
+
roles: [Role.Teacher]
|
11756
|
+
})) : Promise.resolve(!isStudent && createRecentUserActionListApi({
|
11757
|
+
userId: studentId,
|
11758
|
+
action: RecentUserAction$1.ViewedExamResult,
|
11759
|
+
data: "" + examSessionId,
|
11760
|
+
roles: [Role.Teacher]
|
11761
|
+
})).then(_temp3);
|
11263
11762
|
});
|
11763
|
+
}, function (error) {
|
11764
|
+
toast.error(getErrorMessage(t, error));
|
11264
11765
|
});
|
11265
|
-
return Promise.resolve(
|
11766
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp5) : _temp5(_temp4));
|
11266
11767
|
} catch (e) {
|
11267
11768
|
return Promise.reject(e);
|
11268
11769
|
}
|
@@ -11438,13 +11939,13 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11438
11939
|
var series = (_allSeries$dataChartI = allSeries[dataChartIndex]) != null ? _allSeries$dataChartI : defaultSeries(t);
|
11439
11940
|
var handleExportPdf = function handleExportPdf() {
|
11440
11941
|
try {
|
11441
|
-
var
|
11942
|
+
var _temp24 = function _temp24(_result) {
|
11442
11943
|
if (_exit) return _result;
|
11443
11944
|
dispatch(setLoading(false));
|
11444
11945
|
};
|
11445
11946
|
var _exit = false;
|
11446
11947
|
dispatch(setLoading(true));
|
11447
|
-
var
|
11948
|
+
var _temp23 = _catch(function () {
|
11448
11949
|
var canvas = document.querySelector("#canvas");
|
11449
11950
|
var headerCanvas = document.querySelector("#header-canvas");
|
11450
11951
|
if (!canvas || !headerCanvas) {
|
@@ -11466,24 +11967,38 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11466
11967
|
var imgWidth = WIDTH_PAPER;
|
11467
11968
|
var chartWidth = WIDTH_PAPER - 20;
|
11468
11969
|
return Promise.resolve(html2canvas(headerCanvas)).then(function (header) {
|
11469
|
-
function
|
11970
|
+
function _temp22() {
|
11971
|
+
function _temp20(_createRecentUserActi2) {
|
11972
|
+
_createRecentUserActi2;
|
11973
|
+
}
|
11470
11974
|
doc.save("download.pdf");
|
11975
|
+
return isStudent ? _temp20(!isStudent && createRecentUserActionListApi({
|
11976
|
+
userId: studentId,
|
11977
|
+
action: RecentUserAction$1.PrintedExamResult,
|
11978
|
+
data: "" + examSessionId,
|
11979
|
+
roles: [Role.Teacher]
|
11980
|
+
})) : Promise.resolve(!isStudent && createRecentUserActionListApi({
|
11981
|
+
userId: studentId,
|
11982
|
+
action: RecentUserAction$1.PrintedExamResult,
|
11983
|
+
data: "" + examSessionId,
|
11984
|
+
roles: [Role.Teacher]
|
11985
|
+
})).then(_temp20);
|
11471
11986
|
}
|
11472
11987
|
var imgHeaderHeight = header.height * imgWidth / header.width;
|
11473
11988
|
var imgHeaderData = header.toDataURL('image/png');
|
11474
11989
|
doc.addImage(imgHeaderData, 'PNG', 0, 0, imgWidth, imgHeaderHeight);
|
11475
11990
|
line += imgHeaderHeight;
|
11476
11991
|
if (line > HEIGHT_PAPER) breakPage();
|
11477
|
-
var
|
11992
|
+
var _temp21 = function () {
|
11478
11993
|
if (canvas && canvas.childElementCount > 0) {
|
11479
11994
|
var _index = 0;
|
11480
|
-
var
|
11995
|
+
var _temp19 = _for(function () {
|
11481
11996
|
return _index < canvas.childElementCount;
|
11482
11997
|
}, function () {
|
11483
11998
|
return _index++;
|
11484
11999
|
}, function () {
|
11485
|
-
function
|
11486
|
-
function
|
12000
|
+
function _temp18() {
|
12001
|
+
function _temp16() {
|
11487
12002
|
line += 20;
|
11488
12003
|
}
|
11489
12004
|
var printChartTitle = function printChartTitle() {
|
@@ -11498,11 +12013,11 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11498
12013
|
return Promise.reject(e);
|
11499
12014
|
}
|
11500
12015
|
};
|
11501
|
-
var
|
12016
|
+
var _temp15 = function () {
|
11502
12017
|
if (printContainerEls.length) {
|
11503
|
-
var
|
11504
|
-
function
|
11505
|
-
function
|
12018
|
+
var _temp14 = _forTo(printContainerEls, function (i) {
|
12019
|
+
function _temp13() {
|
12020
|
+
function _temp11() {
|
11506
12021
|
var printTitle = function printTitle() {
|
11507
12022
|
try {
|
11508
12023
|
if (!printTitleHeight || !printTitleData) return Promise.resolve();
|
@@ -11531,10 +12046,10 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11531
12046
|
var printContents = printContainerEl.querySelectorAll("." + PrintContentClassName);
|
11532
12047
|
if (!printContents.length) return;
|
11533
12048
|
printTitle();
|
11534
|
-
var
|
12049
|
+
var _temp9 = _forTo(printContents, function (j) {
|
11535
12050
|
var rowItem = printContents[j];
|
11536
12051
|
return Promise.resolve(html2canvas(rowItem)).then(function (rowItemCanvas) {
|
11537
|
-
function
|
12052
|
+
function _temp8() {
|
11538
12053
|
doc.addImage(data, 'PNG', 10, line, chartWidth, height);
|
11539
12054
|
line += height;
|
11540
12055
|
}
|
@@ -11542,25 +12057,25 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11542
12057
|
var data = rowItemCanvas.toDataURL('image/png');
|
11543
12058
|
if (i === 0 && j === 0 && line + height + (printHeaderHeight || 0) + ((chartTitleHeight || 0) + 10) + 20 > HEIGHT_PAPER) breakPage();
|
11544
12059
|
i === 0 && j === 0 && printChartTitle();
|
11545
|
-
var
|
12060
|
+
var _temp7 = function () {
|
11546
12061
|
if (line + height + 20 > HEIGHT_PAPER) {
|
11547
12062
|
breakPage();
|
11548
12063
|
return Promise.resolve(printHeader()).then(function () {});
|
11549
12064
|
} else {
|
11550
|
-
var
|
12065
|
+
var _temp25 = function () {
|
11551
12066
|
if (j === 0) {
|
11552
12067
|
return Promise.resolve(printHeader(10)).then(function () {});
|
11553
12068
|
}
|
11554
12069
|
}();
|
11555
|
-
if (
|
12070
|
+
if (_temp25 && _temp25.then) return _temp25.then(function () {});
|
11556
12071
|
}
|
11557
12072
|
}();
|
11558
|
-
return
|
12073
|
+
return _temp7 && _temp7.then ? _temp7.then(_temp8) : _temp8(_temp7);
|
11559
12074
|
});
|
11560
12075
|
});
|
11561
|
-
if (
|
12076
|
+
if (_temp9 && _temp9.then) return _temp9.then(function () {});
|
11562
12077
|
}
|
11563
|
-
var
|
12078
|
+
var _temp10 = function () {
|
11564
12079
|
if (printHeaderEl) {
|
11565
12080
|
return Promise.resolve(html2canvas(printHeaderEl)).then(function (_html2canvas3) {
|
11566
12081
|
printHeaderCanvas = _html2canvas3;
|
@@ -11569,7 +12084,7 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11569
12084
|
});
|
11570
12085
|
}
|
11571
12086
|
}();
|
11572
|
-
return
|
12087
|
+
return _temp10 && _temp10.then ? _temp10.then(_temp11) : _temp11(_temp10);
|
11573
12088
|
}
|
11574
12089
|
var printContainerEl = printContainerEls[i];
|
11575
12090
|
var printTitleEl = printContainerEl.querySelector("." + PrintTitleClassName);
|
@@ -11580,7 +12095,7 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11580
12095
|
var printHeaderCanvas = null;
|
11581
12096
|
var printHeaderHeight = null;
|
11582
12097
|
var printHeaderData = "";
|
11583
|
-
var
|
12098
|
+
var _temp12 = function () {
|
11584
12099
|
if (printTitleEl) {
|
11585
12100
|
return Promise.resolve(html2canvas(printTitleEl)).then(function (_html2canvas2) {
|
11586
12101
|
printTitleCanvas = _html2canvas2;
|
@@ -11589,9 +12104,9 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11589
12104
|
});
|
11590
12105
|
}
|
11591
12106
|
}();
|
11592
|
-
return
|
12107
|
+
return _temp12 && _temp12.then ? _temp12.then(_temp13) : _temp13(_temp12);
|
11593
12108
|
});
|
11594
|
-
if (
|
12109
|
+
if (_temp14 && _temp14.then) return _temp14.then(function () {});
|
11595
12110
|
} else {
|
11596
12111
|
return Promise.resolve(html2canvas(chart)).then(function (chartCanvas) {
|
11597
12112
|
var imgBodyHeight = chartCanvas.height * chartWidth / chartCanvas.width;
|
@@ -11604,7 +12119,7 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11604
12119
|
});
|
11605
12120
|
}
|
11606
12121
|
}();
|
11607
|
-
return
|
12122
|
+
return _temp15 && _temp15.then ? _temp15.then(_temp16) : _temp16(_temp15);
|
11608
12123
|
}
|
11609
12124
|
var chart = canvas.children.item(_index);
|
11610
12125
|
if (chart.getAttribute("id") === "header-canvas") return;
|
@@ -11613,7 +12128,7 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11613
12128
|
var printChartTitleCanvas = null;
|
11614
12129
|
var chartTitleHeight = null;
|
11615
12130
|
var chartTitleData = "";
|
11616
|
-
var
|
12131
|
+
var _temp17 = function () {
|
11617
12132
|
if (chartTitle && printContainerEls.length) {
|
11618
12133
|
return Promise.resolve(html2canvas(chartTitle)).then(function (_html2canvas) {
|
11619
12134
|
printChartTitleCanvas = _html2canvas;
|
@@ -11622,12 +12137,12 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11622
12137
|
});
|
11623
12138
|
}
|
11624
12139
|
}();
|
11625
|
-
return
|
12140
|
+
return _temp17 && _temp17.then ? _temp17.then(_temp18) : _temp18(_temp17);
|
11626
12141
|
});
|
11627
|
-
if (
|
12142
|
+
if (_temp19 && _temp19.then) return _temp19.then(function () {});
|
11628
12143
|
}
|
11629
12144
|
}();
|
11630
|
-
return
|
12145
|
+
return _temp21 && _temp21.then ? _temp21.then(_temp22) : _temp22(_temp21);
|
11631
12146
|
});
|
11632
12147
|
}, function (error) {
|
11633
12148
|
console.log({
|
@@ -11635,7 +12150,7 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11635
12150
|
});
|
11636
12151
|
toast.error(getErrorMessage(t, error));
|
11637
12152
|
});
|
11638
|
-
return Promise.resolve(
|
12153
|
+
return Promise.resolve(_temp23 && _temp23.then ? _temp23.then(_temp24) : _temp24(_temp23));
|
11639
12154
|
} catch (e) {
|
11640
12155
|
return Promise.reject(e);
|
11641
12156
|
}
|
@@ -11647,6 +12162,7 @@ var useExamResult = function useExamResult(searchParam, history, examSessionId,
|
|
11647
12162
|
return utcToLocalTime(resultData === null || resultData === void 0 ? void 0 : resultData.startTime, "HH:mm") + " ~ " + utcToLocalTime(resultData === null || resultData === void 0 ? void 0 : resultData.finishTime, "HH:mm");
|
11648
12163
|
}, [resultData === null || resultData === void 0 ? void 0 : resultData.startTime, resultData === null || resultData === void 0 ? void 0 : resultData.finishTime]);
|
11649
12164
|
return {
|
12165
|
+
isLoading: isLoading,
|
11650
12166
|
examTime: examTime,
|
11651
12167
|
series: series,
|
11652
12168
|
chartOptions: chartOptions,
|
@@ -13286,6 +13802,7 @@ function MyAnswer(_ref) {
|
|
13286
13802
|
justifyContent: "flex-end"
|
13287
13803
|
}
|
13288
13804
|
}, React__default.createElement("span", {
|
13805
|
+
className: "pointer",
|
13289
13806
|
onClick: function onClick(e) {
|
13290
13807
|
return handleOpenChat(e, question === null || question === void 0 ? void 0 : question.id);
|
13291
13808
|
}
|
@@ -14397,6 +14914,7 @@ var ExamResultV2 = function ExamResultV2(_ref) {
|
|
14397
14914
|
selected = _useTab.selected,
|
14398
14915
|
handleChangeTab = _useTab.handleChangeTab;
|
14399
14916
|
var _useExamResult = useExamResult(searchParams, history, examSessionId, studentId, code, handleChangeTab, selected),
|
14917
|
+
isLoading = _useExamResult.isLoading,
|
14400
14918
|
examTime = _useExamResult.examTime,
|
14401
14919
|
series = _useExamResult.series,
|
14402
14920
|
allSeries = _useExamResult.allSeries,
|
@@ -14421,7 +14939,9 @@ var ExamResultV2 = function ExamResultV2(_ref) {
|
|
14421
14939
|
openCreateQuestionDialog = _useCreateQuestionDia.openCreateQuestionDialog,
|
14422
14940
|
toggleCreateQuestion = _useCreateQuestionDia.toggleCreateQuestion;
|
14423
14941
|
var isTabletUp = useMediaQuery('(min-width:900px)');
|
14424
|
-
return React__default.createElement(Fragment$1, null,
|
14942
|
+
return React__default.createElement(Fragment$1, null, React__default.createElement(LoadingComponent, {
|
14943
|
+
isLoading: isLoading
|
14944
|
+
}), timelyOrderQuestions[dataChartIndex] && longTimeSpend && resultData && effectSize ? React__default.createElement("div", {
|
14425
14945
|
style: {
|
14426
14946
|
width: "100%"
|
14427
14947
|
}
|
@@ -14855,10 +15375,22 @@ var ExamResultV2 = function ExamResultV2(_ref) {
|
|
14855
15375
|
})) : React__default.createElement(Fragment$1, null));
|
14856
15376
|
};
|
14857
15377
|
|
15378
|
+
var RecentUserActionSortBy;
|
15379
|
+
(function (RecentUserActionSortBy) {
|
15380
|
+
RecentUserActionSortBy["CreatedAt"] = "CreatedAt";
|
15381
|
+
})(RecentUserActionSortBy || (RecentUserActionSortBy = {}));
|
15382
|
+
var OrderBy$1;
|
15383
|
+
(function (OrderBy) {
|
15384
|
+
OrderBy["ASC"] = "ASC";
|
15385
|
+
OrderBy["DESC"] = "DESC";
|
15386
|
+
})(OrderBy$1 || (OrderBy$1 = {}));
|
15387
|
+
|
14858
15388
|
|
14859
15389
|
|
14860
15390
|
var index$3 = {
|
14861
|
-
|
15391
|
+
__proto__: null,
|
15392
|
+
get OrderBy () { return OrderBy$1; },
|
15393
|
+
get RecentUserActionSortBy () { return RecentUserActionSortBy; }
|
14862
15394
|
};
|
14863
15395
|
|
14864
15396
|
var getLocalDayOfWeek = function getLocalDayOfWeek(utcDateTime, dayOfWeek) {
|
@@ -14894,12 +15426,12 @@ var getRemainTime = function getRemainTime(startTime, duration) {
|
|
14894
15426
|
};
|
14895
15427
|
|
14896
15428
|
var times = {
|
14897
|
-
|
14898
|
-
|
14899
|
-
|
14900
|
-
|
14901
|
-
|
14902
|
-
|
15429
|
+
__proto__: null,
|
15430
|
+
getLocalDayOfWeek: getLocalDayOfWeek,
|
15431
|
+
getUtcDayOfWeek: getUtcDayOfWeek,
|
15432
|
+
timeSpanToLocalMoment: timeSpanToLocalMoment,
|
15433
|
+
convertHHMMSStoSeconds: convertHHMMSStoSeconds,
|
15434
|
+
getRemainTime: getRemainTime
|
14903
15435
|
};
|
14904
15436
|
|
14905
15437
|
var SIGN_IN_SUPER_ADMIN_URL = SUPER_ADMIN_BASE_URL + "/api/auth/login";
|
@@ -14925,6 +15457,7 @@ var signInSuperAdminApi = function signInSuperAdminApi(_ref2) {
|
|
14925
15457
|
});
|
14926
15458
|
};
|
14927
15459
|
|
15460
|
+
var PAGE_TITLE$2 = "sign_in";
|
14928
15461
|
var useLogin$2 = function useLogin(_ref) {
|
14929
15462
|
var history = _ref.history,
|
14930
15463
|
_ref$role = _ref.role,
|
@@ -15015,8 +15548,13 @@ var useLogin$2 = function useLogin(_ref) {
|
|
15015
15548
|
};
|
15016
15549
|
useEffect(function () {
|
15017
15550
|
var token = getAccessToken();
|
15018
|
-
|
15019
|
-
|
15551
|
+
var academyDomain = getAcademyDomain();
|
15552
|
+
if (token && academyDomain) window.location.href = homeAcademyUrl;
|
15553
|
+
if (token && !academyDomain) window.location.href = homeUrl;
|
15554
|
+
}, [homeAcademyUrl, homeUrl]);
|
15555
|
+
useEffect(function () {
|
15556
|
+
document.title = t("study_peak") + " | " + t(PAGE_TITLE$2);
|
15557
|
+
}, [t]);
|
15020
15558
|
return {
|
15021
15559
|
handleSubmit: handleSubmit,
|
15022
15560
|
handleClearAcademyDomain: handleClearAcademyDomain,
|
@@ -15517,15 +16055,14 @@ var Header = function Header(_ref) {
|
|
15517
16055
|
var path = _ref2.path,
|
15518
16056
|
icon = _ref2.icon,
|
15519
16057
|
label = _ref2.label,
|
15520
|
-
isMain = _ref2.isMain,
|
15521
16058
|
activePaths = _ref2.activePaths;
|
15522
16059
|
return React__default.createElement(Link, {
|
15523
16060
|
key: path,
|
15524
16061
|
"aria-current": "page",
|
15525
|
-
to: !academyDomain
|
16062
|
+
to: !academyDomain ? "#" : path,
|
15526
16063
|
className: "text-decoration-none " + ((activePaths !== null && activePaths !== void 0 && activePaths.length ? activePaths.some(function (a) {
|
15527
|
-
return pathname
|
15528
|
-
}) : pathname
|
16064
|
+
return pathname === a;
|
16065
|
+
}) : pathname === path) ? "" + styles["router-link-active"] : "") + " " + styles["tabText"] + " " + (!academyDomain ? styles["disabled-link"] : "")
|
15529
16066
|
}, React__default.createElement(Stack, {
|
15530
16067
|
sx: {
|
15531
16068
|
justifyContent: "center",
|
@@ -15554,7 +16091,7 @@ var Header = function Header(_ref) {
|
|
15554
16091
|
alignItems: "center"
|
15555
16092
|
}, React__default.createElement(Link, {
|
15556
16093
|
"aria-current": "page",
|
15557
|
-
to: homeRoute.path,
|
16094
|
+
to: academyDomain ? homeRoute.path : academyListRoute.path,
|
15558
16095
|
className: "border-none"
|
15559
16096
|
}, React__default.createElement(Stack, {
|
15560
16097
|
justifyContent: "center",
|
@@ -15572,53 +16109,28 @@ var Header = function Header(_ref) {
|
|
15572
16109
|
}))));
|
15573
16110
|
};
|
15574
16111
|
|
15575
|
-
var ACADEMY_URL$1 = BASE_URL + "/api/academy";
|
15576
|
-
var getAcademyList$1 = function getAcademyList() {
|
15577
|
-
return api.get("" + ACADEMY_URL$1);
|
15578
|
-
};
|
15579
|
-
var switchAcademy$1 = function switchAcademy(academyId) {
|
15580
|
-
return api.post(ACADEMY_URL$1 + "/switch-academy?academyId=" + academyId);
|
15581
|
-
};
|
15582
|
-
|
15583
16112
|
var useAcademyList = function useAcademyList(history, role, homeAcademyUrl, homeUrl, registerUrl) {
|
15584
16113
|
var dispatch = useDispatch();
|
15585
16114
|
var _useLogin = useLogin(history, homeAcademyUrl, homeUrl, registerUrl),
|
15586
16115
|
handleLoginAccessToken = _useLogin.handleLoginAccessToken;
|
15587
|
-
var
|
15588
|
-
|
15589
|
-
|
16116
|
+
var academyList = useSelector(function (state) {
|
16117
|
+
var _state$academies;
|
16118
|
+
return (state === null || state === void 0 ? void 0 : (_state$academies = state.academies) === null || _state$academies === void 0 ? void 0 : _state$academies.items) || [];
|
16119
|
+
});
|
15590
16120
|
var email = useSelector(function (state) {
|
15591
16121
|
var _state$common, _state$common$user;
|
15592
16122
|
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : _state$common$user.email;
|
15593
16123
|
});
|
15594
16124
|
var _useTranslation = useTranslation(),
|
15595
16125
|
t = _useTranslation.t;
|
15596
|
-
var
|
16126
|
+
var handleSwitchAcademy = function handleSwitchAcademy(id, domain) {
|
15597
16127
|
try {
|
15598
16128
|
var _temp2 = function _temp2() {
|
15599
16129
|
dispatch(setLoading(false));
|
15600
16130
|
};
|
15601
16131
|
dispatch(setLoading(true));
|
15602
16132
|
var _temp = _catch(function () {
|
15603
|
-
return Promise.resolve(
|
15604
|
-
setAcademyList(res.data.items || []);
|
15605
|
-
});
|
15606
|
-
}, function (error) {
|
15607
|
-
toast.error(getErrorMessage(t, error));
|
15608
|
-
});
|
15609
|
-
return Promise.resolve(_temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp));
|
15610
|
-
} catch (e) {
|
15611
|
-
return Promise.reject(e);
|
15612
|
-
}
|
15613
|
-
};
|
15614
|
-
var handleSwitchAcademy = function handleSwitchAcademy(id, domain) {
|
15615
|
-
try {
|
15616
|
-
var _temp4 = function _temp4() {
|
15617
|
-
dispatch(setLoading(false));
|
15618
|
-
};
|
15619
|
-
dispatch(setLoading(true));
|
15620
|
-
var _temp3 = _catch(function () {
|
15621
|
-
return Promise.resolve(switchAcademy$1(id)).then(function (res) {
|
16133
|
+
return Promise.resolve(switchSuperAdminAcademy(id, role)).then(function (res) {
|
15622
16134
|
var data = res.data;
|
15623
16135
|
var requestBody = {
|
15624
16136
|
accessToken: data.accessToken,
|
@@ -15632,14 +16144,11 @@ var useAcademyList = function useAcademyList(history, role, homeAcademyUrl, home
|
|
15632
16144
|
}, function (error) {
|
15633
16145
|
toast.error(getErrorMessage(t, error));
|
15634
16146
|
});
|
15635
|
-
return Promise.resolve(
|
16147
|
+
return Promise.resolve(_temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp));
|
15636
16148
|
} catch (e) {
|
15637
16149
|
return Promise.reject(e);
|
15638
16150
|
}
|
15639
16151
|
};
|
15640
|
-
useEffect(function () {
|
15641
|
-
getAcademies();
|
15642
|
-
}, []);
|
15643
16152
|
return {
|
15644
16153
|
academyList: academyList,
|
15645
16154
|
handleSwitchAcademy: handleSwitchAcademy
|
@@ -15679,6 +16188,220 @@ var AcademyCard = function AcademyCard(_ref) {
|
|
15679
16188
|
}, t("switch"))));
|
15680
16189
|
};
|
15681
16190
|
|
16191
|
+
var PassCodeDialog = function PassCodeDialog(_ref) {
|
16192
|
+
var open = _ref.open,
|
16193
|
+
onClose = _ref.onClose,
|
16194
|
+
onSubmit = _ref.onSubmit,
|
16195
|
+
academyDomain = _ref.academyDomain;
|
16196
|
+
var _useTranslation = useTranslation(),
|
16197
|
+
t = _useTranslation.t;
|
16198
|
+
var _useState = useState(""),
|
16199
|
+
passCode = _useState[0],
|
16200
|
+
setPassCode = _useState[1];
|
16201
|
+
var handleClose = function handleClose(event, reason) {
|
16202
|
+
onClose(event, reason);
|
16203
|
+
};
|
16204
|
+
var handleSubmit = function handleSubmit() {
|
16205
|
+
try {
|
16206
|
+
var data = {
|
16207
|
+
code: passCode,
|
16208
|
+
academyDomain: academyDomain
|
16209
|
+
};
|
16210
|
+
return Promise.resolve(onSubmit(data, handleClose)).then(function () {});
|
16211
|
+
} catch (e) {
|
16212
|
+
return Promise.reject(e);
|
16213
|
+
}
|
16214
|
+
};
|
16215
|
+
var handleChangePassCode = function handleChangePassCode(e) {
|
16216
|
+
setPassCode(e.target.value);
|
16217
|
+
};
|
16218
|
+
var theme = useTheme();
|
16219
|
+
return React__default.createElement(CommonDialog, {
|
16220
|
+
open: open,
|
16221
|
+
onClose: handleClose,
|
16222
|
+
size: "xs",
|
16223
|
+
title: t("join_an_academy")
|
16224
|
+
}, React__default.createElement(DialogContent, {
|
16225
|
+
sx: {
|
16226
|
+
overflowY: "unset"
|
16227
|
+
}
|
16228
|
+
}, React__default.createElement(Stack, {
|
16229
|
+
direction: "column",
|
16230
|
+
spacing: 2,
|
16231
|
+
zIndex: 1,
|
16232
|
+
position: "relative"
|
16233
|
+
}, React__default.createElement(FormGroup, null, React__default.createElement(FormLabel, {
|
16234
|
+
className: "fw-medium mb-1"
|
16235
|
+
}, t("pass_code"), React__default.createElement("span", {
|
16236
|
+
className: "text-danger"
|
16237
|
+
}, "*")), React__default.createElement(InputText, {
|
16238
|
+
id: "pass-code",
|
16239
|
+
placeholder: t("enter_pass_code"),
|
16240
|
+
value: passCode,
|
16241
|
+
onChange: handleChangePassCode
|
16242
|
+
})))), React__default.createElement(DialogActions, {
|
16243
|
+
className: ""
|
16244
|
+
}, React__default.createElement(Button, {
|
16245
|
+
variant: "contained",
|
16246
|
+
sx: {
|
16247
|
+
bgcolor: theme.palette.grey[700]
|
16248
|
+
},
|
16249
|
+
onClick: handleClose
|
16250
|
+
}, t("cancel")), React__default.createElement(Button, {
|
16251
|
+
variant: "contained",
|
16252
|
+
onClick: handleSubmit,
|
16253
|
+
disabled: !passCode.trim().length
|
16254
|
+
}, t("submit"))));
|
16255
|
+
};
|
16256
|
+
|
16257
|
+
var PASS_CODE_URL = SUPER_ADMIN_BASE_URL + "/api/passCodes";
|
16258
|
+
var checkPassCodeApi = function checkPassCodeApi(code, academyDomain) {
|
16259
|
+
return api.post(PASS_CODE_URL + "/check", {
|
16260
|
+
code: code,
|
16261
|
+
academyDomain: academyDomain
|
16262
|
+
});
|
16263
|
+
};
|
16264
|
+
|
16265
|
+
var usePassCodeCheck = function usePassCodeCheck(props) {
|
16266
|
+
var history = props.history,
|
16267
|
+
role = props.role,
|
16268
|
+
homeAcademyUrl = props.homeAcademyUrl,
|
16269
|
+
homeUrl = props.homeUrl,
|
16270
|
+
registerUrl = props.registerUrl,
|
16271
|
+
domain = props.domain;
|
16272
|
+
var _useTranslation = useTranslation(),
|
16273
|
+
t = _useTranslation.t;
|
16274
|
+
var dispatch = useDispatch();
|
16275
|
+
var email = useSelector(function (state) {
|
16276
|
+
var _state$common, _state$common$user;
|
16277
|
+
return state === null || state === void 0 ? void 0 : (_state$common = state.common) === null || _state$common === void 0 ? void 0 : (_state$common$user = _state$common.user) === null || _state$common$user === void 0 ? void 0 : _state$common$user.email;
|
16278
|
+
});
|
16279
|
+
var academyDomain = useSelector(function (state) {
|
16280
|
+
var _state$common2, _state$common2$user;
|
16281
|
+
return state === null || state === void 0 ? void 0 : (_state$common2 = state.common) === null || _state$common2 === void 0 ? void 0 : (_state$common2$user = _state$common2.user) === null || _state$common2$user === void 0 ? void 0 : _state$common2$user.academyDomain;
|
16282
|
+
});
|
16283
|
+
var _useState = useState(),
|
16284
|
+
academy = _useState[0],
|
16285
|
+
setAcademy = _useState[1];
|
16286
|
+
var _useState2 = useState(),
|
16287
|
+
isLoadingAcademy = _useState2[0],
|
16288
|
+
setLoadingAcademy = _useState2[1];
|
16289
|
+
var _useLogin = useLogin(history, homeAcademyUrl, homeUrl, registerUrl),
|
16290
|
+
handleLoginAccessToken = _useLogin.handleLoginAccessToken;
|
16291
|
+
var handleCheckPassCode = function handleCheckPassCode(form, callback) {
|
16292
|
+
try {
|
16293
|
+
var _temp2 = function _temp2(_result) {
|
16294
|
+
if (_exit) return _result;
|
16295
|
+
dispatch(setLoading(false));
|
16296
|
+
};
|
16297
|
+
var _exit = false;
|
16298
|
+
dispatch(setLoading(true));
|
16299
|
+
var _temp = _catch(function () {
|
16300
|
+
if (role !== Role.Student) {
|
16301
|
+
_exit = true;
|
16302
|
+
return;
|
16303
|
+
}
|
16304
|
+
return Promise.resolve(checkPassCodeApi(form.code, form.academyDomain)).then(function (res) {
|
16305
|
+
var data = res.data;
|
16306
|
+
var requestBody = {
|
16307
|
+
accessToken: data.accessToken,
|
16308
|
+
email: email,
|
16309
|
+
academyId: data.academyId,
|
16310
|
+
role: Role.Student
|
16311
|
+
};
|
16312
|
+
return Promise.resolve(handleLoginAccessToken(requestBody, false)).then(function () {
|
16313
|
+
localStorage.setItem(ACADEMY_DOMAIN, data.academyDomain);
|
16314
|
+
callback === null || callback === void 0 ? void 0 : callback();
|
16315
|
+
});
|
16316
|
+
});
|
16317
|
+
}, function (error) {
|
16318
|
+
toast.error(getErrorMessage(t, error));
|
16319
|
+
});
|
16320
|
+
return Promise.resolve(_temp && _temp.then ? _temp.then(_temp2) : _temp2(_temp));
|
16321
|
+
} catch (e) {
|
16322
|
+
return Promise.reject(e);
|
16323
|
+
}
|
16324
|
+
};
|
16325
|
+
var getAcademyByDomain = function getAcademyByDomain() {
|
16326
|
+
try {
|
16327
|
+
var _temp6 = function _temp6(_result2) {
|
16328
|
+
if (_exit2) return _result2;
|
16329
|
+
setLoadingAcademy(false);
|
16330
|
+
};
|
16331
|
+
var _exit2 = false;
|
16332
|
+
if (!domain) return Promise.resolve();
|
16333
|
+
setLoadingAcademy(true);
|
16334
|
+
var _temp5 = _catch(function () {
|
16335
|
+
return Promise.resolve(getAcademyByDomainApi(domain, Role.Student)).then(function (res) {
|
16336
|
+
var _res$data;
|
16337
|
+
var _exit3 = false;
|
16338
|
+
function _temp4(_result3) {
|
16339
|
+
if (_exit3) return _result3;
|
16340
|
+
setAcademy(academy);
|
16341
|
+
}
|
16342
|
+
var academy = (_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.data;
|
16343
|
+
var _temp3 = function () {
|
16344
|
+
if (academy.isOwned) {
|
16345
|
+
return Promise.resolve(switchSuperAdminAcademy(academy.id, Role.Student)).then(function (switchAcademyRes) {
|
16346
|
+
var switchAcademyData = switchAcademyRes.data;
|
16347
|
+
var requestBody = {
|
16348
|
+
accessToken: switchAcademyData.accessToken,
|
16349
|
+
email: email,
|
16350
|
+
academyId: academy.id,
|
16351
|
+
role: Role.Student
|
16352
|
+
};
|
16353
|
+
localStorage.setItem(ACADEMY_DOMAIN, domain);
|
16354
|
+
return Promise.resolve(handleLoginAccessToken(requestBody, false)).then(function () {
|
16355
|
+
_exit2 = true;
|
16356
|
+
});
|
16357
|
+
});
|
16358
|
+
}
|
16359
|
+
}();
|
16360
|
+
return _temp3 && _temp3.then ? _temp3.then(_temp4) : _temp4(_temp3);
|
16361
|
+
});
|
16362
|
+
}, function (error) {
|
16363
|
+
console.log("error", error);
|
16364
|
+
});
|
16365
|
+
return Promise.resolve(_temp5 && _temp5.then ? _temp5.then(_temp6) : _temp6(_temp5));
|
16366
|
+
} catch (e) {
|
16367
|
+
return Promise.reject(e);
|
16368
|
+
}
|
16369
|
+
};
|
16370
|
+
useEffect(function () {
|
16371
|
+
email && !academyDomain && getAcademyByDomain();
|
16372
|
+
}, [domain, academyDomain, email]);
|
16373
|
+
return {
|
16374
|
+
academy: academy,
|
16375
|
+
isLoadingAcademy: isLoadingAcademy,
|
16376
|
+
academyDomain: academyDomain,
|
16377
|
+
email: email,
|
16378
|
+
handleCheckPassCode: handleCheckPassCode
|
16379
|
+
};
|
16380
|
+
};
|
16381
|
+
|
16382
|
+
var PassCodeCheck = function PassCodeCheck(props) {
|
16383
|
+
var role = props.role,
|
16384
|
+
open = props.open,
|
16385
|
+
domain = props.domain,
|
16386
|
+
onClose = props.onClose;
|
16387
|
+
var _usePassCodeCheck = usePassCodeCheck(props),
|
16388
|
+
academy = _usePassCodeCheck.academy,
|
16389
|
+
isLoadingAcademy = _usePassCodeCheck.isLoadingAcademy,
|
16390
|
+
academyDomain = _usePassCodeCheck.academyDomain,
|
16391
|
+
email = _usePassCodeCheck.email,
|
16392
|
+
handleCheckPassCode = _usePassCodeCheck.handleCheckPassCode;
|
16393
|
+
if (role !== Role.Student || domain && isLoadingAcademy === false && !academy) return React__default.createElement(NotFound, null);
|
16394
|
+
return React__default.createElement(Fragment$1, null, React__default.createElement(LoadingComponent, {
|
16395
|
+
isLoading: !!isLoadingAcademy
|
16396
|
+
}), !!email && !academyDomain && (!domain || !!academy) && React__default.createElement(PassCodeDialog, {
|
16397
|
+
open: open,
|
16398
|
+
academyDomain: domain,
|
16399
|
+
onClose: onClose,
|
16400
|
+
onSubmit: handleCheckPassCode
|
16401
|
+
}));
|
16402
|
+
};
|
16403
|
+
|
16404
|
+
var PAGE_TITLE$3 = "academy_list";
|
15682
16405
|
var AcademyList = function AcademyList(_ref) {
|
15683
16406
|
var theme = _ref.theme,
|
15684
16407
|
history = _ref.history,
|
@@ -15688,10 +16411,19 @@ var AcademyList = function AcademyList(_ref) {
|
|
15688
16411
|
registerUrl = _ref.registerUrl;
|
15689
16412
|
var _useTranslation = useTranslation(),
|
15690
16413
|
t = _useTranslation.t;
|
16414
|
+
var _useState = useState(false),
|
16415
|
+
isOpenPassCode = _useState[0],
|
16416
|
+
setOpenPassCode = _useState[1];
|
16417
|
+
var handleTogglePassCodeDialog = function handleTogglePassCodeDialog() {
|
16418
|
+
setOpenPassCode(!isOpenPassCode);
|
16419
|
+
};
|
15691
16420
|
useAutoAcademyDomain(function () {}, history, [], "", window.location.pathname, true);
|
15692
16421
|
var _useAcademyList = useAcademyList(history, role, homeAcademyUrl, homeUrl, registerUrl),
|
15693
16422
|
academyList = _useAcademyList.academyList,
|
15694
16423
|
handleSwitchAcademy = _useAcademyList.handleSwitchAcademy;
|
16424
|
+
useEffect(function () {
|
16425
|
+
document.title = t("study_peak") + " | " + t(PAGE_TITLE$3);
|
16426
|
+
}, [t]);
|
15695
16427
|
return React__default.createElement("div", {
|
15696
16428
|
className: "py-3 px-4"
|
15697
16429
|
}, React__default.createElement(Grid$1, {
|
@@ -15700,10 +16432,18 @@ var AcademyList = function AcademyList(_ref) {
|
|
15700
16432
|
}, React__default.createElement(Grid$1, {
|
15701
16433
|
item: true,
|
15702
16434
|
xs: 12
|
16435
|
+
}, React__default.createElement(Stack, {
|
16436
|
+
direction: "row",
|
16437
|
+
justifyContent: "space-between",
|
16438
|
+
alignItems: "center",
|
16439
|
+
spacing: 3
|
15703
16440
|
}, React__default.createElement(Typography$1, {
|
15704
16441
|
fontSize: 24,
|
15705
16442
|
fontWeight: 600
|
15706
|
-
}, t("academy_list"))
|
16443
|
+
}, t("academy_list")), role === Role.Student && React__default.createElement(Button, {
|
16444
|
+
variant: "contained",
|
16445
|
+
onClick: handleTogglePassCodeDialog
|
16446
|
+
}, t("enter_academy_pass_code")))), React__default.createElement(Grid$1, {
|
15707
16447
|
item: true,
|
15708
16448
|
xs: 12
|
15709
16449
|
}, React__default.createElement(Grid$1, {
|
@@ -15723,7 +16463,20 @@ var AcademyList = function AcademyList(_ref) {
|
|
15723
16463
|
}), !academyList.length && React__default.createElement(Grid$1, {
|
15724
16464
|
item: true,
|
15725
16465
|
xs: 3
|
15726
|
-
}, React__default.createElement("span", null, t("no_academy_available"), ".")))))
|
16466
|
+
}, React__default.createElement("span", null, t("no_academy_available"), "."))))), React__default.createElement(PassCodeCheck, {
|
16467
|
+
role: role,
|
16468
|
+
open: isOpenPassCode,
|
16469
|
+
onClose: handleTogglePassCodeDialog,
|
16470
|
+
homeAcademyUrl: homeAcademyUrl,
|
16471
|
+
homeUrl: homeUrl,
|
16472
|
+
registerUrl: registerUrl,
|
16473
|
+
history: history
|
16474
|
+
}));
|
16475
|
+
};
|
16476
|
+
|
16477
|
+
var EXAM_SESSION_URL$1 = BASE_URL + "/api/examSession";
|
16478
|
+
var getCheckStatusExam = function getCheckStatusExam(examCode) {
|
16479
|
+
return api.get(EXAM_SESSION_URL$1 + "/" + examCode + "/status");
|
15727
16480
|
};
|
15728
16481
|
|
15729
16482
|
var ONE_SECOND_IN_MILLISECONDS = 1000;
|
@@ -15734,6 +16487,7 @@ var useCountDownTimer = function useCountDownTimer(props) {
|
|
15734
16487
|
duration = props.duration,
|
15735
16488
|
fetchedCount = props.fetchedCount,
|
15736
16489
|
onFinish = props.onFinish;
|
16490
|
+
var dispatch = useDispatch();
|
15737
16491
|
var _useState = useState(),
|
15738
16492
|
remainTime = _useState[0],
|
15739
16493
|
setRemainTime = _useState[1];
|
@@ -15746,9 +16500,11 @@ var useCountDownTimer = function useCountDownTimer(props) {
|
|
15746
16500
|
return Promise.resolve();
|
15747
16501
|
}
|
15748
16502
|
var _temp = _catch(function () {
|
16503
|
+
dispatch(setLoading(true));
|
15749
16504
|
return Promise.resolve(getCheckStatusExam(code)).then(function (res) {
|
15750
16505
|
if (res.data.data.status === ExamStatus$1.Completed) {
|
15751
|
-
|
16506
|
+
clearTimeout(checkStatusRef.current);
|
16507
|
+
dispatch(setLoading(false));
|
15752
16508
|
onFinish();
|
15753
16509
|
} else {
|
15754
16510
|
checkStatusRef.current = setTimeout(checkLiveExamStatus, ONE_SECOND_IN_MILLISECONDS);
|
@@ -15769,7 +16525,6 @@ var useCountDownTimer = function useCountDownTimer(props) {
|
|
15769
16525
|
var animate = function animate() {
|
15770
16526
|
if (!startTime || !duration) return;
|
15771
16527
|
if (typeof remainTime === "number" && remainTime <= 0) {
|
15772
|
-
onFinish();
|
15773
16528
|
return;
|
15774
16529
|
}
|
15775
16530
|
var remain = getRemainTime(startTime, duration);
|
@@ -15779,7 +16534,6 @@ var useCountDownTimer = function useCountDownTimer(props) {
|
|
15779
16534
|
}
|
15780
16535
|
if (remain <= 0) {
|
15781
16536
|
setRemainTime(0);
|
15782
|
-
checkLiveExamStatus();
|
15783
16537
|
return;
|
15784
16538
|
}
|
15785
16539
|
setRemainTime(remain || 0);
|
@@ -15788,61 +16542,15 @@ var useCountDownTimer = function useCountDownTimer(props) {
|
|
15788
16542
|
requestRef.current = requestAnimationFrame(animate);
|
15789
16543
|
return function () {
|
15790
16544
|
!!requestRef.current && cancelAnimationFrame(requestRef.current);
|
15791
|
-
!!checkStatusRef.current && clearTimeout(checkStatusRef.current);
|
15792
16545
|
setRemainTime(undefined);
|
15793
16546
|
};
|
15794
|
-
}, [startTime, duration, fetchedCount
|
16547
|
+
}, [startTime, duration, fetchedCount]);
|
15795
16548
|
useEffect(function () {
|
15796
|
-
if (typeof remainTime === "number" && remainTime <= 0)
|
15797
|
-
}, [remainTime,
|
16549
|
+
if (typeof remainTime === "number" && remainTime <= 0) checkLiveExamStatus();
|
16550
|
+
}, [remainTime, checkLiveExamStatus]);
|
15798
16551
|
return remainTime;
|
15799
16552
|
};
|
15800
16553
|
|
15801
|
-
var EXAM_SESSION_URL$1 = BASE_URL + "/api/examSession";
|
15802
|
-
var getCheckStatusExam$1 = function getCheckStatusExam(examCode) {
|
15803
|
-
return api.get(EXAM_SESSION_URL$1 + "/" + examCode + "/status");
|
15804
|
-
};
|
15805
|
-
|
15806
|
-
var useCheckExam = function useCheckExam(code, status) {
|
15807
|
-
var _useState = useState({}),
|
15808
|
-
isCheckExam = _useState[0],
|
15809
|
-
setCheckExam = _useState[1];
|
15810
|
-
var isCheck = !code ? false : isCheckExam[code];
|
15811
|
-
var checkExam = function checkExam() {
|
15812
|
-
try {
|
15813
|
-
if (!code || isCheck) return Promise.resolve();
|
15814
|
-
if (status === ExamStatus$1.Completed) {
|
15815
|
-
setCheckExam(function (state) {
|
15816
|
-
var _extends2;
|
15817
|
-
return _extends({}, state, (_extends2 = {}, _extends2[code] = true, _extends2));
|
15818
|
-
});
|
15819
|
-
return Promise.resolve();
|
15820
|
-
}
|
15821
|
-
var _temp = _catch(function () {
|
15822
|
-
return Promise.resolve(getCheckStatusExam$1(code)).then(function () {
|
15823
|
-
setCheckExam(function (state) {
|
15824
|
-
var _extends3;
|
15825
|
-
return _extends({}, state, (_extends3 = {}, _extends3[code] = true, _extends3));
|
15826
|
-
});
|
15827
|
-
});
|
15828
|
-
}, function (error) {
|
15829
|
-
console.log({
|
15830
|
-
error: error
|
15831
|
-
});
|
15832
|
-
});
|
15833
|
-
return Promise.resolve(_temp && _temp.then ? _temp.then(function () {}) : void 0);
|
15834
|
-
} catch (e) {
|
15835
|
-
return Promise.reject(e);
|
15836
|
-
}
|
15837
|
-
};
|
15838
|
-
useEffect(function () {
|
15839
|
-
checkExam();
|
15840
|
-
}, [code]);
|
15841
|
-
return {
|
15842
|
-
isCheck: isCheck
|
15843
|
-
};
|
15844
|
-
};
|
15845
|
-
|
15846
16554
|
var useLoadMore = function useLoadMore(props) {
|
15847
16555
|
var onLoadMore = props.onLoadMore,
|
15848
16556
|
loading = props.loading;
|
@@ -15941,5 +16649,5 @@ var useVirtualizeList = function useVirtualizeList(totalItems, rowHeight, offset
|
|
15941
16649
|
};
|
15942
16650
|
};
|
15943
16651
|
|
15944
|
-
export { ACADEMY_DOMAIN, ACCESS_TOKEN, AcademyHeaders, AcademyList, AnswerCountSelector, ArticleCategorySelector, ArticleGroupView, BASE_URL, ChatContainer, ChatItemType, types as ChatTypes, CommonDialog, ConfirmDialog, index$1 as CoreHooks, CustomAsyncSelect, CustomCreatable, CustomPagination, CustomSelect, CustomSelectOption, DATE_MIN_VALUE, DATE_TIME_MIN_VALUE, DEFAULT_PAGING_RESPONSE, DefaultErrorMessage, EXAM_CHANNEL, EXAM_STUDENT_CHANNEL, index as Enums, ExamDetailView, ExamEvent, ExamResultV2, Header, InputText, LANGUAGES, Language, LayoutContext, Loading, Login, SignIn as LoginWithPassword, NotFound, PUSHER_CONFIG, QuestionCountSelector, Role, SUPER_ADMIN_BASE_URL, ScoreSelector, SubjectSelector, index$2 as Textbook, TextbookViewDetail as TextbookDetail, TextbookList, TheAcademyDropdown, TheLanguageDropdown, index$3 as Types, api, apiUpload, canAccess as canAccessRoute, diffFromNow, formatTime, getAcademyDomain, getAccessToken, getErrorMessage, getOrdinalSuffix, i18n, minutesToTimeSpan, setAlert, setLanguage, setLoading, setReFetchUserAcademies, setReadyRegisterPusher, setUser, store, times as timeUtils, toISOString, useAutoAcademyDomain, useCategorySelect, useChatContainer,
|
16652
|
+
export { ACADEMY_DOMAIN, ACCESS_TOKEN, AcademyHeaders, AcademyList, AnswerCountSelector, ArticleCategorySelector, ArticleGroupView, BASE_URL, ChatContainer, ChatItemType, types as ChatTypes, CommonDialog, ConfirmDialog, index$1 as CoreHooks, CustomAsyncSelect, CustomCreatable, CustomPagination, CustomSelect, CustomSelectOption, DATE_MIN_VALUE, DATE_TIME_MIN_VALUE, DEFAULT_PAGING_RESPONSE, DefaultErrorMessage, EXAM_CHANNEL, EXAM_STUDENT_CHANNEL, index as Enums, ExamDetailView, ExamEvent, ExamResultV2, Header, InputText, LANGUAGES, Language, LayoutContext, Loading, LoadingComponent, Login, SignIn as LoginWithPassword, NotFound, PUSHER_CONFIG, PassCodeCheck, QuestionCountSelector, RecentUserAction, Role, SUPER_ADMIN_BASE_URL, ScoreSelector, SubjectSelector, index$2 as Textbook, TextbookViewDetail as TextbookDetail, TextbookList, TheAcademyDropdown, TheLanguageDropdown, index$3 as Types, api, apiUpload, canAccess as canAccessRoute, checkSuperUrl, createRecentUserActionListApi, diffFromNow, formatTime, getAcademyDomain, getAccessToken, getErrorMessage, getOrdinalSuffix, getRecentUserActionListApi, i18n, minutesToTimeSpan, setAlert, setLanguage, setLoading, setReFetchUserAcademies, setReadyRegisterPusher, setUser, store, times as timeUtils, toISOString, useAutoAcademyDomain, useCategorySelect, useChatContainer, useCountDownTimer, useGoogleSignOut, useLanguage, useLoadMore, useLogin, usePusherConversation, useSubjectSelect, useSwitchAcademy, useVirtualizeList, utcToLocalTime };
|
15945
16653
|
//# sourceMappingURL=index.modern.js.map
|