mario-core 2.9.245-multi → 2.9.246-multi
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/containers/Login/views/block/BlockLogin.d.ts +7 -0
- package/dist/index.css +5 -4
- package/dist/index.js +1134 -1109
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +1136 -1111
- package/dist/index.modern.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -10,14 +10,14 @@ var reactRouterDom = require('react-router-dom');
|
|
|
10
10
|
var reactRedux = require('react-redux');
|
|
11
11
|
var formik = require('formik');
|
|
12
12
|
var yup = require('yup');
|
|
13
|
-
var
|
|
13
|
+
var reactGoogleRecaptchaV3 = require('react-google-recaptcha-v3');
|
|
14
|
+
var GoogleLogin = _interopDefault(require('react-google-login'));
|
|
15
|
+
var Select = _interopDefault(require('react-select'));
|
|
14
16
|
var toolkit = require('@reduxjs/toolkit');
|
|
15
17
|
var axios = _interopDefault(require('axios'));
|
|
16
18
|
var amplitude = _interopDefault(require('amplitude-js'));
|
|
17
19
|
var moment = _interopDefault(require('moment'));
|
|
18
|
-
var
|
|
19
|
-
var GoogleLogin = _interopDefault(require('react-google-login'));
|
|
20
|
-
var Select = _interopDefault(require('react-select'));
|
|
20
|
+
var msalBrowser = require('@azure/msal-browser');
|
|
21
21
|
var gi = require('react-icons/gi');
|
|
22
22
|
var react = require('@coreui/react');
|
|
23
23
|
var cg = require('react-icons/cg');
|
|
@@ -43,8 +43,8 @@ require('symbol-observable');
|
|
|
43
43
|
var dashboard = "Dashboard";
|
|
44
44
|
var user = "User";
|
|
45
45
|
var question_bank = "Question bank";
|
|
46
|
-
var email_template = "Email
|
|
47
|
-
var custom_alert = "Custom
|
|
46
|
+
var email_template = "Email Template";
|
|
47
|
+
var custom_alert = "Custom Alert";
|
|
48
48
|
var set_up = "Set up";
|
|
49
49
|
var media_gallery = "Media Gallery";
|
|
50
50
|
var district_school_list = "District school list";
|
|
@@ -3980,8 +3980,8 @@ var lang_us = {
|
|
|
3980
3980
|
var dashboard$1 = "Dashboard";
|
|
3981
3981
|
var user$1 = "User";
|
|
3982
3982
|
var question_bank$1 = "Question bank";
|
|
3983
|
-
var email_template$1 = "Email
|
|
3984
|
-
var custom_alert$1 = "Custom
|
|
3983
|
+
var email_template$1 = "Email Template";
|
|
3984
|
+
var custom_alert$1 = "Custom Alert";
|
|
3985
3985
|
var set_up$1 = "Set up";
|
|
3986
3986
|
var media_gallery$1 = "Media Gallery";
|
|
3987
3987
|
var district_school_list$1 = "District school list";
|
|
@@ -37167,14 +37167,23 @@ function _createForOfIteratorHelperLoose(o, allowArrayLike) {
|
|
|
37167
37167
|
return it.next.bind(it);
|
|
37168
37168
|
}
|
|
37169
37169
|
|
|
37170
|
-
var
|
|
37171
|
-
|
|
37172
|
-
|
|
37173
|
-
|
|
37174
|
-
|
|
37175
|
-
|
|
37176
|
-
|
|
37177
|
-
|
|
37170
|
+
var CustomSelector = function CustomSelector(_ref) {
|
|
37171
|
+
var defaultValue = _ref.defaultValue,
|
|
37172
|
+
options = _ref.options,
|
|
37173
|
+
isDisabled = _ref.isDisabled,
|
|
37174
|
+
scrollBottom = _ref.scrollBottom,
|
|
37175
|
+
rest = _objectWithoutPropertiesLoose(_ref, ["defaultValue", "options", "isDisabled", "scrollBottom"]);
|
|
37176
|
+
|
|
37177
|
+
var initValue = defaultValue !== null && typeof defaultValue !== "undefined" ? options.find(function (option) {
|
|
37178
|
+
return option.value === defaultValue;
|
|
37179
|
+
}) || null : null;
|
|
37180
|
+
return React__default.createElement(Select, Object.assign({
|
|
37181
|
+
isDisabled: isDisabled,
|
|
37182
|
+
options: options,
|
|
37183
|
+
value: initValue,
|
|
37184
|
+
menuPlacement: scrollBottom ? "top" : "auto"
|
|
37185
|
+
}, rest));
|
|
37186
|
+
};
|
|
37178
37187
|
|
|
37179
37188
|
var setLoading = toolkit.createAction("common/setLoading");
|
|
37180
37189
|
var setModal = toolkit.createAction("common/setModal");
|
|
@@ -37211,6 +37220,15 @@ var encodeParams = (function (params) {
|
|
|
37211
37220
|
}).join('&');
|
|
37212
37221
|
});
|
|
37213
37222
|
|
|
37223
|
+
var getAccessToken = (function () {
|
|
37224
|
+
try {
|
|
37225
|
+
var isSessionUserBrowser = sessionStorage.getItem(IS_USER_SESSION_BROWSER);
|
|
37226
|
+
return !isSessionUserBrowser ? localStorage.getItem(ACCESS_TOKEN) : sessionStorage.getItem(ACCESS_TOKEN);
|
|
37227
|
+
} catch (err) {
|
|
37228
|
+
return null;
|
|
37229
|
+
}
|
|
37230
|
+
});
|
|
37231
|
+
|
|
37214
37232
|
var api = axios.create({
|
|
37215
37233
|
baseURL: BASE_URL,
|
|
37216
37234
|
timeout: 0,
|
|
@@ -37344,14 +37362,131 @@ var createPassword = function createPassword(data) {
|
|
|
37344
37362
|
return api.post(ACCOUNT_URL + "/createPassword", data);
|
|
37345
37363
|
};
|
|
37346
37364
|
|
|
37347
|
-
var
|
|
37348
|
-
var
|
|
37349
|
-
|
|
37350
|
-
|
|
37351
|
-
|
|
37352
|
-
|
|
37365
|
+
var BlockSelectTeacher = function BlockSelectTeacher(_ref) {
|
|
37366
|
+
var defaultValue = _ref.defaultValue,
|
|
37367
|
+
isDisabled = _ref.isDisabled,
|
|
37368
|
+
openModal = _ref.openModal,
|
|
37369
|
+
onSubmit = _ref.onSubmit,
|
|
37370
|
+
token = _ref.token,
|
|
37371
|
+
email = _ref.email;
|
|
37372
|
+
|
|
37373
|
+
var _useState = React.useState(false),
|
|
37374
|
+
modal = _useState[0],
|
|
37375
|
+
setModal = _useState[1];
|
|
37376
|
+
|
|
37377
|
+
React.useEffect(function () {
|
|
37378
|
+
setModal(openModal);
|
|
37379
|
+
}, [openModal]);
|
|
37380
|
+
var dispatch = reactRedux.useDispatch();
|
|
37381
|
+
|
|
37382
|
+
var _useState2 = React.useState([]),
|
|
37383
|
+
teachers = _useState2[0],
|
|
37384
|
+
setTeachers = _useState2[1];
|
|
37385
|
+
|
|
37386
|
+
var _useState3 = React.useState(""),
|
|
37387
|
+
searchString = _useState3[0],
|
|
37388
|
+
setSearchString = _useState3[1];
|
|
37389
|
+
|
|
37390
|
+
var _useState4 = React.useState(""),
|
|
37391
|
+
teacherEmail = _useState4[0],
|
|
37392
|
+
setTeacherEmail = _useState4[1];
|
|
37393
|
+
|
|
37394
|
+
var _useState5 = React.useState(false),
|
|
37395
|
+
isLoading = _useState5[0],
|
|
37396
|
+
setLoading = _useState5[1];
|
|
37397
|
+
|
|
37398
|
+
var timeout = React.useRef();
|
|
37399
|
+
|
|
37400
|
+
var toggle = function toggle() {
|
|
37401
|
+
setModal(!modal);
|
|
37402
|
+
dispatch(setIsLoginGoogle(!modal));
|
|
37403
|
+
};
|
|
37404
|
+
|
|
37405
|
+
var loadData = React.useCallback(function () {
|
|
37406
|
+
try {
|
|
37407
|
+
var _temp3 = function _temp3() {
|
|
37408
|
+
setLoading(false);
|
|
37409
|
+
};
|
|
37410
|
+
|
|
37411
|
+
setLoading(true);
|
|
37412
|
+
|
|
37413
|
+
var _temp4 = _catch(function () {
|
|
37414
|
+
var data = {
|
|
37415
|
+
token: token,
|
|
37416
|
+
email: email
|
|
37417
|
+
};
|
|
37418
|
+
return Promise.resolve(getAllLoginTeacher(data)).then(function (res) {
|
|
37419
|
+
setTeachers(res.data);
|
|
37420
|
+
});
|
|
37421
|
+
}, function (err) {
|
|
37422
|
+
var _err$response, _err$response$data;
|
|
37423
|
+
|
|
37424
|
+
dispatch(setAlert({
|
|
37425
|
+
type: "danger",
|
|
37426
|
+
message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
|
|
37427
|
+
}));
|
|
37428
|
+
});
|
|
37429
|
+
|
|
37430
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
37431
|
+
} catch (e) {
|
|
37432
|
+
return Promise.reject(e);
|
|
37433
|
+
}
|
|
37434
|
+
}, [searchString]);
|
|
37435
|
+
React.useEffect(function () {
|
|
37436
|
+
timeout && timeout.current && clearTimeout(timeout.current);
|
|
37437
|
+
|
|
37438
|
+
if (!searchString || searchString.trim().length < 2) {
|
|
37439
|
+
setTeachers([]);
|
|
37440
|
+
} else {
|
|
37441
|
+
timeout.current = setTimeout(loadData, 300);
|
|
37442
|
+
}
|
|
37443
|
+
}, [searchString]);
|
|
37444
|
+
var options = teachers.map(function (teacher) {
|
|
37445
|
+
return {
|
|
37446
|
+
label: teacher.fullName + " (" + teacher.email + ")",
|
|
37447
|
+
value: teacher.teacherId
|
|
37448
|
+
};
|
|
37449
|
+
});
|
|
37450
|
+
|
|
37451
|
+
var onChangeTeacher = function onChangeTeacher(e) {
|
|
37452
|
+
setTeacherEmail(e.value);
|
|
37453
|
+
};
|
|
37454
|
+
|
|
37455
|
+
var customSelector = {
|
|
37456
|
+
control: function control(styles) {
|
|
37457
|
+
return _extends({}, styles, {
|
|
37458
|
+
borderRadius: "10px"
|
|
37459
|
+
});
|
|
37460
|
+
}
|
|
37461
|
+
};
|
|
37462
|
+
return React__default.createElement(reactstrap.Modal, {
|
|
37463
|
+
isOpen: modal
|
|
37464
|
+
}, React__default.createElement(reactstrap.ModalHeader, null, " Sign in "), React__default.createElement(reactstrap.ModalBody, null, React__default.createElement("h6", null, "You are logging in as a student, please select teacher"), React__default.createElement(CustomSelector, {
|
|
37465
|
+
styles: customSelector,
|
|
37466
|
+
options: options,
|
|
37467
|
+
inputValue: searchString,
|
|
37468
|
+
onInputChange: function onInputChange(inputValue) {
|
|
37469
|
+
return setSearchString(inputValue);
|
|
37470
|
+
},
|
|
37471
|
+
isLoading: isLoading,
|
|
37472
|
+
placeholder: "Type 2 characters to search",
|
|
37473
|
+
value: defaultValue,
|
|
37474
|
+
onChange: onChangeTeacher,
|
|
37475
|
+
isDisabled: isDisabled
|
|
37476
|
+
})), React__default.createElement(reactstrap.ModalFooter, null, React__default.createElement(reactstrap.Button, {
|
|
37477
|
+
color: "primary",
|
|
37478
|
+
onClick: function onClick() {
|
|
37479
|
+
onSubmit(teacherEmail);
|
|
37480
|
+
toggle();
|
|
37481
|
+
}
|
|
37482
|
+
}, "Finish"), ' ', React__default.createElement(reactstrap.Button, {
|
|
37483
|
+
color: "secondary",
|
|
37484
|
+
onClick: toggle
|
|
37485
|
+
}, "Cancel")));
|
|
37353
37486
|
};
|
|
37354
37487
|
|
|
37488
|
+
var BlockSelectTeacher$1 = React.forwardRef(BlockSelectTeacher);
|
|
37489
|
+
|
|
37355
37490
|
var TypeLogin;
|
|
37356
37491
|
|
|
37357
37492
|
(function (TypeLogin) {
|
|
@@ -37368,65 +37503,217 @@ var LoginType;
|
|
|
37368
37503
|
LoginType[LoginType["Impersonate"] = 2] = "Impersonate";
|
|
37369
37504
|
})(LoginType || (LoginType = {}));
|
|
37370
37505
|
|
|
37371
|
-
var
|
|
37372
|
-
|
|
37373
|
-
|
|
37374
|
-
|
|
37375
|
-
|
|
37376
|
-
},
|
|
37377
|
-
cache: {
|
|
37378
|
-
cacheLocation: "sessionStorage",
|
|
37379
|
-
storeAuthStateInCookie: false
|
|
37380
|
-
},
|
|
37381
|
-
system: {
|
|
37382
|
-
loggerOptions: {
|
|
37383
|
-
loggerCallback: function loggerCallback(level, message, containsPii) {
|
|
37384
|
-
if (containsPii) {
|
|
37385
|
-
return;
|
|
37386
|
-
}
|
|
37506
|
+
var schema = yup.object({
|
|
37507
|
+
email: yup.string().email("Email is invalid").required("Email is required"),
|
|
37508
|
+
password: yup.string().required("Password is required"),
|
|
37509
|
+
rememberMe: yup.boolean()
|
|
37510
|
+
});
|
|
37387
37511
|
|
|
37388
|
-
|
|
37389
|
-
|
|
37390
|
-
|
|
37391
|
-
|
|
37512
|
+
var BlockLogin = function BlockLogin(_ref) {
|
|
37513
|
+
var defaultInfo = _ref.defaultInfo,
|
|
37514
|
+
userLogin = _ref.userLogin,
|
|
37515
|
+
school = _ref.school,
|
|
37516
|
+
isShowPassword = _ref.isShowPassword,
|
|
37517
|
+
setIsShowPassword = _ref.setIsShowPassword,
|
|
37518
|
+
fnIsCheckLogin = _ref.fnIsCheckLogin,
|
|
37519
|
+
isLoginGoogle = _ref.isLoginGoogle,
|
|
37520
|
+
submitLogin = _ref.submitLogin,
|
|
37521
|
+
infoUser = _ref.infoUser,
|
|
37522
|
+
googleClientId = _ref.googleClientId;
|
|
37392
37523
|
|
|
37393
|
-
|
|
37394
|
-
|
|
37395
|
-
|
|
37524
|
+
var togglePasswordVisible = function togglePasswordVisible() {
|
|
37525
|
+
return setIsShowPassword(!isShowPassword);
|
|
37526
|
+
};
|
|
37396
37527
|
|
|
37397
|
-
|
|
37398
|
-
console.debug(message);
|
|
37399
|
-
return;
|
|
37528
|
+
var dispatch = reactRedux.useDispatch();
|
|
37400
37529
|
|
|
37401
|
-
|
|
37402
|
-
|
|
37403
|
-
return;
|
|
37530
|
+
var _useGoogleReCaptcha = reactGoogleRecaptchaV3.useGoogleReCaptcha(),
|
|
37531
|
+
executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
|
|
37404
37532
|
|
|
37405
|
-
|
|
37406
|
-
|
|
37407
|
-
|
|
37533
|
+
var clickHandler = React.useCallback(function () {
|
|
37534
|
+
try {
|
|
37535
|
+
if (!executeRecaptcha) {
|
|
37536
|
+
console.log("execute recaptcha undefined");
|
|
37537
|
+
return Promise.resolve();
|
|
37408
37538
|
}
|
|
37539
|
+
|
|
37540
|
+
return Promise.resolve(executeRecaptcha("login"));
|
|
37541
|
+
} catch (e) {
|
|
37542
|
+
return Promise.reject(e);
|
|
37409
37543
|
}
|
|
37410
|
-
}
|
|
37544
|
+
}, [executeRecaptcha]);
|
|
37545
|
+
var handleVerify = React.useCallback(function () {}, []);
|
|
37546
|
+
|
|
37547
|
+
var onSuccessGoogle = function onSuccessGoogle(res) {
|
|
37548
|
+
if (!!(res !== null && res !== void 0 && res.accessToken)) {
|
|
37549
|
+
var _res$profileObj = res.profileObj,
|
|
37550
|
+
email = _res$profileObj.email,
|
|
37551
|
+
familyName = _res$profileObj.familyName,
|
|
37552
|
+
givenName = _res$profileObj.givenName,
|
|
37553
|
+
imageUrl = _res$profileObj.imageUrl,
|
|
37554
|
+
name = _res$profileObj.name;
|
|
37555
|
+
var accessToken = res.accessToken;
|
|
37556
|
+
var googleId = res.googleId;
|
|
37557
|
+
|
|
37558
|
+
if (email.includes("@gmail")) {
|
|
37559
|
+
alert("The email address you used does not match the login information in the database. Please check that you are using your school assigned email address to log into MARIO for Me. If you have further trouble please notify your school site administrator");
|
|
37560
|
+
return;
|
|
37561
|
+
}
|
|
37562
|
+
|
|
37563
|
+
var infoLogin = {
|
|
37564
|
+
firstName: givenName,
|
|
37565
|
+
lastName: familyName,
|
|
37566
|
+
imageUrl: imageUrl,
|
|
37567
|
+
fullName: name,
|
|
37568
|
+
email: email,
|
|
37569
|
+
accessToken: accessToken,
|
|
37570
|
+
googleId: googleId
|
|
37571
|
+
};
|
|
37572
|
+
dispatch(setInforUserGoogle(infoLogin));
|
|
37573
|
+
fnIsCheckLogin(TypeLogin.Google, infoLogin, accessToken, clickHandler);
|
|
37574
|
+
}
|
|
37575
|
+
};
|
|
37576
|
+
|
|
37577
|
+
return React__default.createElement(React__default.Fragment, null, React__default.createElement(formik.Formik, {
|
|
37578
|
+
initialValues: defaultInfo,
|
|
37579
|
+
validationSchema: schema,
|
|
37580
|
+
onSubmit: function (values) {
|
|
37581
|
+
try {
|
|
37582
|
+
return Promise.resolve(_catch(function () {
|
|
37583
|
+
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
37584
|
+
if (!clickHandlerRes) return;
|
|
37585
|
+
values.captcha = clickHandlerRes;
|
|
37586
|
+
values.loginType = LoginType.Default;
|
|
37587
|
+
userLogin(values);
|
|
37588
|
+
});
|
|
37589
|
+
}, function (err) {
|
|
37590
|
+
console.error(err);
|
|
37591
|
+
}));
|
|
37592
|
+
} catch (e) {
|
|
37593
|
+
return Promise.reject(e);
|
|
37594
|
+
}
|
|
37595
|
+
}
|
|
37596
|
+
}, function (formikProps) {
|
|
37597
|
+
var handleChange = formikProps.handleChange,
|
|
37598
|
+
handleBlur = formikProps.handleBlur,
|
|
37599
|
+
handleSubmit = formikProps.handleSubmit,
|
|
37600
|
+
values = formikProps.values,
|
|
37601
|
+
touched = formikProps.touched,
|
|
37602
|
+
errors = formikProps.errors,
|
|
37603
|
+
setFieldValue = formikProps.setFieldValue;
|
|
37604
|
+
var emailError = touched.email && errors.email;
|
|
37605
|
+
var passwordError = touched.password && errors.password;
|
|
37606
|
+
return React__default.createElement("div", {
|
|
37607
|
+
className: styles["box-login"] + " w-100"
|
|
37608
|
+
}, React__default.createElement(reactstrap.Form, {
|
|
37609
|
+
className: "" + styles["block-login"],
|
|
37610
|
+
onSubmit: handleSubmit
|
|
37611
|
+
}, React__default.createElement("div", {
|
|
37612
|
+
className: "" + styles["block-form"]
|
|
37613
|
+
}, React__default.createElement("div", {
|
|
37614
|
+
className: "d-flex align-items-center mb-4"
|
|
37615
|
+
}, React__default.createElement("img", {
|
|
37616
|
+
hidden: !(school !== null && school !== void 0 && school.schoolLogo),
|
|
37617
|
+
src: school === null || school === void 0 ? void 0 : school.schoolLogo,
|
|
37618
|
+
className: styles["school-icon"] + " mr-3"
|
|
37619
|
+
}), React__default.createElement("p", {
|
|
37620
|
+
className: styles["school-name"] + " mb-0"
|
|
37621
|
+
}, school.schoolName)), React__default.createElement("p", {
|
|
37622
|
+
className: "" + styles["title-login"]
|
|
37623
|
+
}, "Welcome Back!"), React__default.createElement("p", {
|
|
37624
|
+
className: styles["login-description"] + " mb-5"
|
|
37625
|
+
}, "Please enter your MARIO Education account details"), React__default.createElement(reactstrap.FormGroup, {
|
|
37626
|
+
className: "" + styles["form-user-name"]
|
|
37627
|
+
}, React__default.createElement(reactstrap.Input, {
|
|
37628
|
+
type: "text",
|
|
37629
|
+
name: "email",
|
|
37630
|
+
placeholder: "Email",
|
|
37631
|
+
value: values.email,
|
|
37632
|
+
onChange: handleChange,
|
|
37633
|
+
autocomplete: "email",
|
|
37634
|
+
onBlur: handleBlur("email"),
|
|
37635
|
+
required: true
|
|
37636
|
+
}), emailError && React__default.createElement(ErrorHandler, {
|
|
37637
|
+
text: errors.email
|
|
37638
|
+
})), React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(PasswordInput, {
|
|
37639
|
+
isShowPassword: isShowPassword,
|
|
37640
|
+
togglePasswordVisible: togglePasswordVisible,
|
|
37641
|
+
onChange: function onChange(e) {
|
|
37642
|
+
return setFieldValue("password", e.target.value);
|
|
37643
|
+
}
|
|
37644
|
+
}), passwordError && React__default.createElement(ErrorHandler, {
|
|
37645
|
+
text: errors.password
|
|
37646
|
+
})), React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(reactGoogleRecaptchaV3.GoogleReCaptcha, {
|
|
37647
|
+
action: "login",
|
|
37648
|
+
onVerify: handleVerify
|
|
37649
|
+
})), React__default.createElement("div", {
|
|
37650
|
+
className: "d-flex justify-content-between"
|
|
37651
|
+
}, React__default.createElement("div", {
|
|
37652
|
+
className: "d-flex align-items-center"
|
|
37653
|
+
}, React__default.createElement("input", {
|
|
37654
|
+
type: "checkbox",
|
|
37655
|
+
checked: !values.isSessionUserBrowser,
|
|
37656
|
+
className: "" + styles["checkbox-keep-login"],
|
|
37657
|
+
onChange: function onChange() {
|
|
37658
|
+
return setFieldValue("isSessionUserBrowser", !values.isSessionUserBrowser);
|
|
37659
|
+
}
|
|
37660
|
+
}), React__default.createElement("p", {
|
|
37661
|
+
className: styles["label-keep-login"] + " mb-0 ml-2"
|
|
37662
|
+
}, "Keep me logged in")), React__default.createElement(reactRouterDom.Link, {
|
|
37663
|
+
to: "/forgot-password",
|
|
37664
|
+
className: "" + styles["link-to-login"]
|
|
37665
|
+
}, "Forgot password?")), React__default.createElement("button", {
|
|
37666
|
+
className: styles["btn-login"] + " mt-5",
|
|
37667
|
+
type: "submit"
|
|
37668
|
+
}, "LOG IN"), React__default.createElement("p", {
|
|
37669
|
+
className: styles["option-text"] + " my-3 text-center"
|
|
37670
|
+
}, "OR"), React__default.createElement(reactstrap.Row, {
|
|
37671
|
+
className: "mb-4"
|
|
37672
|
+
}, React__default.createElement(reactstrap.Col, {
|
|
37673
|
+
lg: 12,
|
|
37674
|
+
md: 12,
|
|
37675
|
+
xs: 12,
|
|
37676
|
+
className: "pr-md-3"
|
|
37677
|
+
}, !!googleClientId && React__default.createElement(GoogleLogin, {
|
|
37678
|
+
clientId: googleClientId,
|
|
37679
|
+
buttonText: "GOOGLE",
|
|
37680
|
+
onSuccess: onSuccessGoogle,
|
|
37681
|
+
cookiePolicy: "single_host_origin",
|
|
37682
|
+
className: styles["btn-login-google"] + " p-0 mb-4 mb-md-0"
|
|
37683
|
+
}))), React__default.createElement("div", {
|
|
37684
|
+
className: "" + styles["btn-login-sso"]
|
|
37685
|
+
}, React__default.createElement("div", {
|
|
37686
|
+
className: styles["btn-login-with-sso"],
|
|
37687
|
+
onClick: function onClick() {
|
|
37688
|
+
return window.open("https://launchpad.classlink.com/login");
|
|
37689
|
+
}
|
|
37690
|
+
}, React__default.createElement("img", {
|
|
37691
|
+
src: "images/class-link-icon.png"
|
|
37692
|
+
}), React__default.createElement("p", null, "SIGN IN WITH CLASSLINK"))))));
|
|
37693
|
+
}), isLoginGoogle && React__default.createElement(BlockSelectTeacher$1, {
|
|
37694
|
+
onSubmit: function onSubmit(e) {
|
|
37695
|
+
return submitLogin(e, clickHandler);
|
|
37696
|
+
},
|
|
37697
|
+
openModal: isLoginGoogle,
|
|
37698
|
+
token: infoUser.accessToken,
|
|
37699
|
+
email: infoUser.email
|
|
37700
|
+
}));
|
|
37411
37701
|
};
|
|
37412
37702
|
|
|
37413
|
-
var _sessionStorage$getIt;
|
|
37414
37703
|
var defaultInfo = {
|
|
37415
37704
|
email: "",
|
|
37416
|
-
|
|
37417
|
-
captcha: "",
|
|
37418
|
-
rememberMe: false,
|
|
37419
|
-
isSessionUserBrowser: (_sessionStorage$getIt = !!sessionStorage.getItem(IS_USER_SESSION_BROWSER)) != null ? _sessionStorage$getIt : false
|
|
37705
|
+
captcha: ""
|
|
37420
37706
|
};
|
|
37421
|
-
var
|
|
37422
|
-
var
|
|
37423
|
-
var HOMEPAGE_ADMIN = "/admin/home";
|
|
37424
|
-
var HOMEPAGE_PARENT = "/parent";
|
|
37425
|
-
var HOMEPAGE_DISTRICT = "/admin/schools";
|
|
37426
|
-
var HOMEPAGE_EDU_TEACHER = "/list-student";
|
|
37707
|
+
var DASHBOARD = "/";
|
|
37708
|
+
var LOGIN = "/login";
|
|
37427
37709
|
var TITLE = "Log in";
|
|
37428
37710
|
|
|
37429
|
-
var
|
|
37711
|
+
var useForgotPassword = function useForgotPassword() {
|
|
37712
|
+
var _query$get;
|
|
37713
|
+
|
|
37714
|
+
var query = new URLSearchParams(reactRouterDom.useLocation().search);
|
|
37715
|
+
var token = query.get("token");
|
|
37716
|
+
var key = (_query$get = query.get("key")) != null ? _query$get : "";
|
|
37430
37717
|
var dispatch = reactRedux.useDispatch();
|
|
37431
37718
|
var history = reactRouterDom.useHistory();
|
|
37432
37719
|
|
|
@@ -37434,67 +37721,41 @@ var useLogin = function useLogin() {
|
|
|
37434
37721
|
openLogin = _useState[0],
|
|
37435
37722
|
setOpenLogin = _useState[1];
|
|
37436
37723
|
|
|
37437
|
-
var
|
|
37438
|
-
|
|
37439
|
-
});
|
|
37440
|
-
|
|
37441
|
-
var _useState2 = React.useState(""),
|
|
37442
|
-
googleClientId = _useState2[0],
|
|
37443
|
-
setGoogleClientId = _useState2[1];
|
|
37444
|
-
|
|
37445
|
-
var _useState3 = React.useState(""),
|
|
37446
|
-
googleRecaptchaId = _useState3[0],
|
|
37447
|
-
setGoogleRecaptchaId = _useState3[1];
|
|
37724
|
+
var toggle = React.useCallback(function () {
|
|
37725
|
+
setOpenLogin(!openLogin);
|
|
37726
|
+
}, [openLogin]);
|
|
37448
37727
|
|
|
37449
|
-
var
|
|
37450
|
-
|
|
37451
|
-
|
|
37452
|
-
var params = new URLSearchParams(location.search);
|
|
37453
|
-
var loginClassLink = params.get("type") === "classlink";
|
|
37454
|
-
var tokenClassLink = params.get("token");
|
|
37728
|
+
var _useState2 = React.useState(false),
|
|
37729
|
+
isShowNewPassword = _useState2[0],
|
|
37730
|
+
setIsShowNewPassword = _useState2[1];
|
|
37455
37731
|
|
|
37456
|
-
var
|
|
37457
|
-
|
|
37732
|
+
var _useState3 = React.useState(false),
|
|
37733
|
+
isShowReTypePassword = _useState3[0],
|
|
37734
|
+
setIsShowReTypePassword = _useState3[1];
|
|
37458
37735
|
|
|
37459
|
-
var
|
|
37460
|
-
|
|
37461
|
-
|
|
37736
|
+
var _useState4 = React.useState({
|
|
37737
|
+
token: "",
|
|
37738
|
+
password: "",
|
|
37739
|
+
reEnterPassword: "",
|
|
37740
|
+
email: "",
|
|
37741
|
+
userId: ""
|
|
37462
37742
|
}),
|
|
37463
|
-
|
|
37464
|
-
|
|
37465
|
-
|
|
37466
|
-
var _useState6 = React.useState(),
|
|
37467
|
-
msalInstance = _useState6[0],
|
|
37468
|
-
setMsalInstance = _useState6[1];
|
|
37743
|
+
initialValues = _useState4[0],
|
|
37744
|
+
setInitialValues = _useState4[1];
|
|
37469
37745
|
|
|
37470
|
-
var
|
|
37471
|
-
|
|
37472
|
-
|
|
37746
|
+
var _useState5 = React.useState(true),
|
|
37747
|
+
validLink = _useState5[0],
|
|
37748
|
+
setValidLink = _useState5[1];
|
|
37473
37749
|
|
|
37474
|
-
var
|
|
37475
|
-
|
|
37476
|
-
setIsShowPassword = _useState7[1];
|
|
37750
|
+
var _useGoogleReCaptcha = reactGoogleRecaptchaV3.useGoogleReCaptcha(),
|
|
37751
|
+
executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
|
|
37477
37752
|
|
|
37478
37753
|
React.useEffect(function () {
|
|
37479
37754
|
document.title = TITLE;
|
|
37480
37755
|
var token = getAccessToken();
|
|
37481
|
-
if (!!token) history.push(
|
|
37482
|
-
getInfoGoogle();
|
|
37483
|
-
}, []);
|
|
37484
|
-
|
|
37485
|
-
var handleCancelModelAssign = function handleCancelModelAssign() {
|
|
37486
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
37487
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
37488
|
-
localStorage.removeItem("USER_EMAIL");
|
|
37489
|
-
};
|
|
37490
|
-
|
|
37491
|
-
React.useEffect(function () {
|
|
37492
|
-
if (loginClassLink && tokenClassLink != "") {
|
|
37493
|
-
loginAccountClassLink();
|
|
37494
|
-
}
|
|
37756
|
+
if (!!token) history.push(DASHBOARD);
|
|
37495
37757
|
}, []);
|
|
37496
|
-
|
|
37497
|
-
var loginAccountClassLink = function loginAccountClassLink() {
|
|
37758
|
+
var forgotPasswordRequest = React.useCallback(function (data) {
|
|
37498
37759
|
try {
|
|
37499
37760
|
var _temp3 = function _temp3() {
|
|
37500
37761
|
dispatch(setLoading(false));
|
|
@@ -37503,38 +37764,30 @@ var useLogin = function useLogin() {
|
|
|
37503
37764
|
dispatch(setLoading(true));
|
|
37504
37765
|
|
|
37505
37766
|
var _temp4 = _catch(function () {
|
|
37506
|
-
|
|
37507
|
-
|
|
37508
|
-
|
|
37509
|
-
|
|
37510
|
-
|
|
37511
|
-
|
|
37512
|
-
token = _res$data.token;
|
|
37513
|
-
var dataUser = {
|
|
37514
|
-
email: email,
|
|
37515
|
-
rememberMe: false,
|
|
37516
|
-
password: "default",
|
|
37517
|
-
accessToken: token
|
|
37518
|
-
};
|
|
37519
|
-
return Promise.resolve(userLogin(dataUser)).then(function () {});
|
|
37767
|
+
return Promise.resolve(forgotPassword(data)).then(function () {
|
|
37768
|
+
history.push(LOGIN);
|
|
37769
|
+
dispatch(setAlert({
|
|
37770
|
+
type: "success",
|
|
37771
|
+
message: "A mail to reset password was sent"
|
|
37772
|
+
}));
|
|
37520
37773
|
});
|
|
37521
37774
|
}, function (err) {
|
|
37522
37775
|
var _err$response, _err$response$data;
|
|
37523
37776
|
|
|
37524
37777
|
dispatch(setAlert({
|
|
37525
37778
|
type: "danger",
|
|
37526
|
-
message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
|
|
37779
|
+
message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message || "Error occured"
|
|
37527
37780
|
}));
|
|
37781
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
37782
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
37528
37783
|
});
|
|
37529
37784
|
|
|
37530
37785
|
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
37531
37786
|
} catch (e) {
|
|
37532
37787
|
return Promise.reject(e);
|
|
37533
37788
|
}
|
|
37534
|
-
};
|
|
37535
|
-
|
|
37536
|
-
var isDistrict = window.location.host.includes("-district");
|
|
37537
|
-
var getSchoolInfo = React.useCallback(function () {
|
|
37789
|
+
}, []);
|
|
37790
|
+
var checkResetTokenRequest = React.useCallback(function (token, key) {
|
|
37538
37791
|
try {
|
|
37539
37792
|
var _temp7 = function _temp7() {
|
|
37540
37793
|
dispatch(setLoading(false));
|
|
@@ -37543,12 +37796,487 @@ var useLogin = function useLogin() {
|
|
|
37543
37796
|
dispatch(setLoading(true));
|
|
37544
37797
|
|
|
37545
37798
|
var _temp8 = _catch(function () {
|
|
37546
|
-
return Promise.resolve(
|
|
37547
|
-
if (
|
|
37548
|
-
|
|
37799
|
+
return Promise.resolve(checkResetToken(token, key)).then(function (res) {
|
|
37800
|
+
if (res.data) {
|
|
37801
|
+
setInitialValues(_extends({}, initialValues, {
|
|
37802
|
+
token: token,
|
|
37803
|
+
email: res.data
|
|
37804
|
+
}));
|
|
37805
|
+
} else {
|
|
37806
|
+
setValidLink(false);
|
|
37549
37807
|
}
|
|
37550
37808
|
});
|
|
37551
|
-
}, function (
|
|
37809
|
+
}, function () {
|
|
37810
|
+
setValidLink(false);
|
|
37811
|
+
});
|
|
37812
|
+
|
|
37813
|
+
return Promise.resolve(_temp8 && _temp8.then ? _temp8.then(_temp7) : _temp7(_temp8));
|
|
37814
|
+
} catch (e) {
|
|
37815
|
+
return Promise.reject(e);
|
|
37816
|
+
}
|
|
37817
|
+
}, []);
|
|
37818
|
+
var resetPasswordRequest = React.useCallback(function (data) {
|
|
37819
|
+
try {
|
|
37820
|
+
var _temp11 = function _temp11() {
|
|
37821
|
+
dispatch(setLoading(false));
|
|
37822
|
+
};
|
|
37823
|
+
|
|
37824
|
+
dispatch(setLoading(true));
|
|
37825
|
+
|
|
37826
|
+
var _temp12 = _catch(function () {
|
|
37827
|
+
return Promise.resolve(resetPassword(_extends({}, data, {
|
|
37828
|
+
key: key
|
|
37829
|
+
}))).then(function () {
|
|
37830
|
+
history.push(LOGIN);
|
|
37831
|
+
dispatch(setAlert({
|
|
37832
|
+
type: "success",
|
|
37833
|
+
message: "Reset password sucessfully"
|
|
37834
|
+
}));
|
|
37835
|
+
});
|
|
37836
|
+
}, function (err) {
|
|
37837
|
+
var _err$response2, _err$response2$data;
|
|
37838
|
+
|
|
37839
|
+
dispatch(setAlert({
|
|
37840
|
+
type: "danger",
|
|
37841
|
+
message: ((_err$response2 = err.response) === null || _err$response2 === void 0 ? void 0 : (_err$response2$data = _err$response2.data) === null || _err$response2$data === void 0 ? void 0 : _err$response2$data.title) || err.message || "Error occured"
|
|
37842
|
+
}));
|
|
37843
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
37844
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
37845
|
+
});
|
|
37846
|
+
|
|
37847
|
+
return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
|
|
37848
|
+
} catch (e) {
|
|
37849
|
+
return Promise.reject(e);
|
|
37850
|
+
}
|
|
37851
|
+
}, []);
|
|
37852
|
+
var clickHandler = React.useCallback(function () {
|
|
37853
|
+
try {
|
|
37854
|
+
if (!executeRecaptcha) {
|
|
37855
|
+
console.log("execute recaptcha undefined");
|
|
37856
|
+
return Promise.resolve();
|
|
37857
|
+
}
|
|
37858
|
+
|
|
37859
|
+
return Promise.resolve(executeRecaptcha("forgetPass"));
|
|
37860
|
+
} catch (e) {
|
|
37861
|
+
return Promise.reject(e);
|
|
37862
|
+
}
|
|
37863
|
+
}, [executeRecaptcha]);
|
|
37864
|
+
var handleVerify = React.useCallback(function () {}, []);
|
|
37865
|
+
React.useEffect(function () {
|
|
37866
|
+
checkResetTokenRequest(token, key);
|
|
37867
|
+
}, []);
|
|
37868
|
+
return {
|
|
37869
|
+
defaultInfo: defaultInfo,
|
|
37870
|
+
forgotPasswordRequest: forgotPasswordRequest,
|
|
37871
|
+
checkResetTokenRequest: checkResetTokenRequest,
|
|
37872
|
+
validLink: validLink,
|
|
37873
|
+
resetPasswordRequest: resetPasswordRequest,
|
|
37874
|
+
openLogin: openLogin,
|
|
37875
|
+
toggle: toggle,
|
|
37876
|
+
isShowNewPassword: isShowNewPassword,
|
|
37877
|
+
setIsShowNewPassword: setIsShowNewPassword,
|
|
37878
|
+
isShowReTypePassword: isShowReTypePassword,
|
|
37879
|
+
setIsShowReTypePassword: setIsShowReTypePassword,
|
|
37880
|
+
clickHandler: clickHandler,
|
|
37881
|
+
handleVerify: handleVerify,
|
|
37882
|
+
initialValues: initialValues
|
|
37883
|
+
};
|
|
37884
|
+
};
|
|
37885
|
+
|
|
37886
|
+
var initialValues = {
|
|
37887
|
+
email: "",
|
|
37888
|
+
captcha: ""
|
|
37889
|
+
};
|
|
37890
|
+
var forgotPasswordSchema = yup.object({
|
|
37891
|
+
email: yup.string().email("Email is invalid").required("Email is required")
|
|
37892
|
+
});
|
|
37893
|
+
|
|
37894
|
+
var BlockForgetPassword = function BlockForgetPassword(_ref) {
|
|
37895
|
+
var school = _ref.school;
|
|
37896
|
+
|
|
37897
|
+
var _useForgotPassword = useForgotPassword(),
|
|
37898
|
+
forgotPasswordRequest = _useForgotPassword.forgotPasswordRequest,
|
|
37899
|
+
clickHandler = _useForgotPassword.clickHandler,
|
|
37900
|
+
handleVerify = _useForgotPassword.handleVerify;
|
|
37901
|
+
|
|
37902
|
+
return React__default.createElement(formik.Formik, {
|
|
37903
|
+
initialValues: initialValues,
|
|
37904
|
+
enableReinitialize: true,
|
|
37905
|
+
validationSchema: forgotPasswordSchema,
|
|
37906
|
+
onSubmit: function (values) {
|
|
37907
|
+
try {
|
|
37908
|
+
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
37909
|
+
if (!clickHandlerRes) return;
|
|
37910
|
+
values.captcha = clickHandlerRes;
|
|
37911
|
+
forgotPasswordRequest(values);
|
|
37912
|
+
});
|
|
37913
|
+
} catch (e) {
|
|
37914
|
+
return Promise.reject(e);
|
|
37915
|
+
}
|
|
37916
|
+
}
|
|
37917
|
+
}, function (formikProps) {
|
|
37918
|
+
var handleChange = formikProps.handleChange,
|
|
37919
|
+
handleSubmit = formikProps.handleSubmit,
|
|
37920
|
+
values = formikProps.values,
|
|
37921
|
+
touched = formikProps.touched,
|
|
37922
|
+
errors = formikProps.errors;
|
|
37923
|
+
return React__default.createElement("div", {
|
|
37924
|
+
className: "" + styles["box-login"]
|
|
37925
|
+
}, React__default.createElement("div", {
|
|
37926
|
+
className: "" + styles["block-login"]
|
|
37927
|
+
}, React__default.createElement("div", {
|
|
37928
|
+
className: "" + styles["block-form"]
|
|
37929
|
+
}, React__default.createElement("div", {
|
|
37930
|
+
className: "d-flex align-items-center mb-4"
|
|
37931
|
+
}, React__default.createElement("img", {
|
|
37932
|
+
src: school.schoolLogo,
|
|
37933
|
+
className: styles["school-icon"] + " mr-3"
|
|
37934
|
+
}), React__default.createElement("p", {
|
|
37935
|
+
className: styles["school-name"] + " mb-0"
|
|
37936
|
+
}, school.schoolName)), React__default.createElement("p", {
|
|
37937
|
+
className: styles["title-login"] + " "
|
|
37938
|
+
}, "Forgot password"), React__default.createElement("p", {
|
|
37939
|
+
className: styles["recover-account"] + " mb-5"
|
|
37940
|
+
}, "Enter email to recover your account"), React__default.createElement("div", {
|
|
37941
|
+
className: "w-100"
|
|
37942
|
+
}, React__default.createElement(reactstrap.Input, {
|
|
37943
|
+
type: "text",
|
|
37944
|
+
name: "email",
|
|
37945
|
+
id: "email",
|
|
37946
|
+
placeholder: "Input email",
|
|
37947
|
+
onChange: handleChange,
|
|
37948
|
+
value: values.email
|
|
37949
|
+
}), touched.email && errors.email && React__default.createElement(ErrorHandler, {
|
|
37950
|
+
text: errors.email
|
|
37951
|
+
})), React__default.createElement(reactRouterDom.Link, {
|
|
37952
|
+
to: "/login",
|
|
37953
|
+
className: styles["link-to-login"] + " mt-2"
|
|
37954
|
+
}, "Return to login"), React__default.createElement(reactGoogleRecaptchaV3.GoogleReCaptcha, {
|
|
37955
|
+
action: "forgetPass",
|
|
37956
|
+
onVerify: handleVerify
|
|
37957
|
+
}), React__default.createElement(reactstrap.Col, {
|
|
37958
|
+
className: "p-0"
|
|
37959
|
+
}, React__default.createElement("button", {
|
|
37960
|
+
className: styles["btn-login"] + " mt-5",
|
|
37961
|
+
onClick: function onClick() {
|
|
37962
|
+
return handleSubmit();
|
|
37963
|
+
}
|
|
37964
|
+
}, "Continue")))));
|
|
37965
|
+
});
|
|
37966
|
+
};
|
|
37967
|
+
|
|
37968
|
+
var getStaticFileUrl = function getStaticFileUrl(url) {
|
|
37969
|
+
var STAGE_DOMAIN = "https://stage2.marioforme.com";
|
|
37970
|
+
var isStage = STAGE_DOMAIN === location.origin;
|
|
37971
|
+
if (!url) return "";
|
|
37972
|
+
if (isLocalhost && !isStage || url.startsWith("http")) return url;
|
|
37973
|
+
if (url.startsWith("/")) return "" + (isStage ? STAGE_DOMAIN : MARIO_SUCCESS_BASE_URL) + url;else return (isStage ? STAGE_DOMAIN : MARIO_SUCCESS_BASE_URL) + "/" + url;
|
|
37974
|
+
};
|
|
37975
|
+
|
|
37976
|
+
var resetPasswordSchema = yup.object({
|
|
37977
|
+
password: yup.string().required("New password is required"),
|
|
37978
|
+
reEnterPassword: yup.string().required("Please re-enter new password").test("matching", "Passwords do not match", function () {
|
|
37979
|
+
return this.parent.password === this.parent.reEnterPassword;
|
|
37980
|
+
})
|
|
37981
|
+
});
|
|
37982
|
+
|
|
37983
|
+
var BlockResetPassword = function BlockResetPassword() {
|
|
37984
|
+
var _useForgotPassword = useForgotPassword(),
|
|
37985
|
+
validLink = _useForgotPassword.validLink,
|
|
37986
|
+
resetPasswordRequest = _useForgotPassword.resetPasswordRequest,
|
|
37987
|
+
isShowNewPassword = _useForgotPassword.isShowNewPassword,
|
|
37988
|
+
setIsShowNewPassword = _useForgotPassword.setIsShowNewPassword,
|
|
37989
|
+
isShowReTypePassword = _useForgotPassword.isShowReTypePassword,
|
|
37990
|
+
setIsShowReTypePassword = _useForgotPassword.setIsShowReTypePassword,
|
|
37991
|
+
initialValues = _useForgotPassword.initialValues;
|
|
37992
|
+
|
|
37993
|
+
return React__default.createElement(formik.Formik, {
|
|
37994
|
+
initialValues: initialValues,
|
|
37995
|
+
enableReinitialize: true,
|
|
37996
|
+
validationSchema: resetPasswordSchema,
|
|
37997
|
+
onSubmit: function onSubmit(values) {
|
|
37998
|
+
resetPasswordRequest(values);
|
|
37999
|
+
}
|
|
38000
|
+
}, function (formikProps) {
|
|
38001
|
+
var setFieldValue = formikProps.setFieldValue,
|
|
38002
|
+
handleSubmit = formikProps.handleSubmit,
|
|
38003
|
+
touched = formikProps.touched,
|
|
38004
|
+
errors = formikProps.errors,
|
|
38005
|
+
values = formikProps.values;
|
|
38006
|
+
return React__default.createElement(reactstrap.Row, {
|
|
38007
|
+
className: "" + styles["box-login"]
|
|
38008
|
+
}, React__default.createElement(reactstrap.Col, {
|
|
38009
|
+
className: "p-0"
|
|
38010
|
+
}, React__default.createElement("div", {
|
|
38011
|
+
className: "" + styles["block-login"]
|
|
38012
|
+
}, React__default.createElement("div", {
|
|
38013
|
+
className: "" + styles["block-form"]
|
|
38014
|
+
}, React__default.createElement("img", {
|
|
38015
|
+
src: "" + getStaticFileUrl("/images/horizontal-logo-blue.svg"),
|
|
38016
|
+
className: "" + styles["img-login-rectangle"]
|
|
38017
|
+
}), React__default.createElement("p", {
|
|
38018
|
+
className: "" + styles["title-login"]
|
|
38019
|
+
}, "Reset Password"), React__default.createElement("div", {
|
|
38020
|
+
className: "w-100"
|
|
38021
|
+
}, validLink ? React__default.createElement(React__default.Fragment, null, React__default.createElement(reactstrap.FormGroup, {
|
|
38022
|
+
className: "" + styles["form-user-name"]
|
|
38023
|
+
}, React__default.createElement(reactstrap.Input, {
|
|
38024
|
+
disabled: true,
|
|
38025
|
+
type: "text",
|
|
38026
|
+
name: "email",
|
|
38027
|
+
placeholder: "Email",
|
|
38028
|
+
value: values.email,
|
|
38029
|
+
autocomplete: "email",
|
|
38030
|
+
required: true,
|
|
38031
|
+
className: "" + styles["input"]
|
|
38032
|
+
})), React__default.createElement("div", {
|
|
38033
|
+
className: "" + styles["form-user-name"]
|
|
38034
|
+
}, React__default.createElement(PasswordInput, {
|
|
38035
|
+
isShowPassword: isShowNewPassword,
|
|
38036
|
+
togglePasswordVisible: function togglePasswordVisible() {
|
|
38037
|
+
return setIsShowNewPassword(!isShowNewPassword);
|
|
38038
|
+
},
|
|
38039
|
+
onChange: function onChange(e) {
|
|
38040
|
+
return setFieldValue("password", e.target.value);
|
|
38041
|
+
}
|
|
38042
|
+
}), touched.password && errors.password && React__default.createElement(ErrorHandler, {
|
|
38043
|
+
text: errors.password
|
|
38044
|
+
})), React__default.createElement("div", {
|
|
38045
|
+
className: "" + styles["form-user-name"]
|
|
38046
|
+
}, React__default.createElement(PasswordInput, {
|
|
38047
|
+
placeholder: "Confirm Password",
|
|
38048
|
+
isShowPassword: isShowReTypePassword,
|
|
38049
|
+
togglePasswordVisible: function togglePasswordVisible() {
|
|
38050
|
+
return setIsShowReTypePassword(!isShowReTypePassword);
|
|
38051
|
+
},
|
|
38052
|
+
onChange: function onChange(e) {
|
|
38053
|
+
return setFieldValue("reEnterPassword", e.target.value);
|
|
38054
|
+
}
|
|
38055
|
+
}), touched.reEnterPassword && errors.reEnterPassword && React__default.createElement(ErrorHandler, {
|
|
38056
|
+
text: errors.reEnterPassword
|
|
38057
|
+
}))) : React__default.createElement(React__default.Fragment, null, React__default.createElement("p", {
|
|
38058
|
+
className: styles["recover-account"] + " mb-5"
|
|
38059
|
+
}, "Invalid reset password link"), React__default.createElement("p", {
|
|
38060
|
+
className: "w-100"
|
|
38061
|
+
}, "It may have been accessed before or expired or you have just tried to reset another account's password"))), validLink && React__default.createElement(reactstrap.Col, {
|
|
38062
|
+
className: "p-0"
|
|
38063
|
+
}, React__default.createElement("button", {
|
|
38064
|
+
className: styles["btn-login"] + " " + styles["btn-rounder"] + " mt-4",
|
|
38065
|
+
onClick: function onClick() {
|
|
38066
|
+
return handleSubmit();
|
|
38067
|
+
}
|
|
38068
|
+
}, "SET A NEW PASSWORD"))))), React__default.createElement(reactstrap.Col, {
|
|
38069
|
+
lg: 4,
|
|
38070
|
+
md: 4,
|
|
38071
|
+
className: "" + styles["img-box"]
|
|
38072
|
+
}, React__default.createElement("img", {
|
|
38073
|
+
src: getStaticFileUrl("/images/img-login.png"),
|
|
38074
|
+
className: "" + styles["img-login"]
|
|
38075
|
+
})));
|
|
38076
|
+
});
|
|
38077
|
+
};
|
|
38078
|
+
|
|
38079
|
+
var SCHOOL_URL = BASE_URL + "/api/school";
|
|
38080
|
+
var getSchoolSettings = function getSchoolSettings() {
|
|
38081
|
+
return api.get(SCHOOL_URL + "/settings");
|
|
38082
|
+
};
|
|
38083
|
+
var getInfo$1 = function getInfo() {
|
|
38084
|
+
return api.get(SCHOOL_URL + "/info");
|
|
38085
|
+
};
|
|
38086
|
+
|
|
38087
|
+
var msalConfig = {
|
|
38088
|
+
auth: {
|
|
38089
|
+
clientId: "90c6897c-f17b-475e-a7a8-9a19651e0060",
|
|
38090
|
+
authority: "https://login.microsoftonline.com/common",
|
|
38091
|
+
redirectUri: window.location.origin + "/login"
|
|
38092
|
+
},
|
|
38093
|
+
cache: {
|
|
38094
|
+
cacheLocation: "sessionStorage",
|
|
38095
|
+
storeAuthStateInCookie: false
|
|
38096
|
+
},
|
|
38097
|
+
system: {
|
|
38098
|
+
loggerOptions: {
|
|
38099
|
+
loggerCallback: function loggerCallback(level, message, containsPii) {
|
|
38100
|
+
if (containsPii) {
|
|
38101
|
+
return;
|
|
38102
|
+
}
|
|
38103
|
+
|
|
38104
|
+
switch (level) {
|
|
38105
|
+
case msalBrowser.LogLevel.Error:
|
|
38106
|
+
console.error(message);
|
|
38107
|
+
return;
|
|
38108
|
+
|
|
38109
|
+
case msalBrowser.LogLevel.Info:
|
|
38110
|
+
console.info(message);
|
|
38111
|
+
return;
|
|
38112
|
+
|
|
38113
|
+
case msalBrowser.LogLevel.Verbose:
|
|
38114
|
+
console.debug(message);
|
|
38115
|
+
return;
|
|
38116
|
+
|
|
38117
|
+
case msalBrowser.LogLevel.Warning:
|
|
38118
|
+
console.warn(message);
|
|
38119
|
+
return;
|
|
38120
|
+
|
|
38121
|
+
default:
|
|
38122
|
+
return;
|
|
38123
|
+
}
|
|
38124
|
+
}
|
|
38125
|
+
}
|
|
38126
|
+
}
|
|
38127
|
+
};
|
|
38128
|
+
|
|
38129
|
+
var getFileUrl = function getFileUrl(fileName) {
|
|
38130
|
+
if (!fileName || !fileName.trim()) return "";
|
|
38131
|
+
return BASE_URL + "/api/file/viewer?key=" + fileName;
|
|
38132
|
+
};
|
|
38133
|
+
|
|
38134
|
+
var _sessionStorage$getIt;
|
|
38135
|
+
var defaultInfo$1 = {
|
|
38136
|
+
email: "",
|
|
38137
|
+
password: "",
|
|
38138
|
+
captcha: "",
|
|
38139
|
+
rememberMe: false,
|
|
38140
|
+
isSessionUserBrowser: (_sessionStorage$getIt = !!sessionStorage.getItem(IS_USER_SESSION_BROWSER)) != null ? _sessionStorage$getIt : false
|
|
38141
|
+
};
|
|
38142
|
+
var HOMEPAGE_TEACHER = "/home";
|
|
38143
|
+
var HOMEPAGE_STUDENT = "/home";
|
|
38144
|
+
var HOMEPAGE_ADMIN = "/admin/home";
|
|
38145
|
+
var HOMEPAGE_PARENT = "/parent";
|
|
38146
|
+
var HOMEPAGE_DISTRICT = "/admin/schools";
|
|
38147
|
+
var HOMEPAGE_EDU_TEACHER = "/list-student";
|
|
38148
|
+
var TITLE$1 = "Log in";
|
|
38149
|
+
|
|
38150
|
+
var useLogin = function useLogin() {
|
|
38151
|
+
var dispatch = reactRedux.useDispatch();
|
|
38152
|
+
var history = reactRouterDom.useHistory();
|
|
38153
|
+
|
|
38154
|
+
var _useState = React.useState(false),
|
|
38155
|
+
openLogin = _useState[0],
|
|
38156
|
+
setOpenLogin = _useState[1];
|
|
38157
|
+
|
|
38158
|
+
var isLoginGoogle = reactRedux.useSelector(function (state) {
|
|
38159
|
+
return state.common.isLoginGoogle;
|
|
38160
|
+
});
|
|
38161
|
+
|
|
38162
|
+
var _useState2 = React.useState(""),
|
|
38163
|
+
googleClientId = _useState2[0],
|
|
38164
|
+
setGoogleClientId = _useState2[1];
|
|
38165
|
+
|
|
38166
|
+
var _useState3 = React.useState(""),
|
|
38167
|
+
googleRecaptchaId = _useState3[0],
|
|
38168
|
+
setGoogleRecaptchaId = _useState3[1];
|
|
38169
|
+
|
|
38170
|
+
var infoUser = reactRedux.useSelector(function (state) {
|
|
38171
|
+
return state.common.inforUserGoogle;
|
|
38172
|
+
});
|
|
38173
|
+
var params = new URLSearchParams(location.search);
|
|
38174
|
+
var loginClassLink = params.get("type") === "classlink";
|
|
38175
|
+
var tokenClassLink = params.get("token");
|
|
38176
|
+
|
|
38177
|
+
var _useState4 = React.useState(false),
|
|
38178
|
+
openModelAssign = _useState4[0];
|
|
38179
|
+
|
|
38180
|
+
var _useState5 = React.useState({
|
|
38181
|
+
schoolName: "",
|
|
38182
|
+
schoolLogo: ""
|
|
38183
|
+
}),
|
|
38184
|
+
school = _useState5[0],
|
|
38185
|
+
setSchool = _useState5[1];
|
|
38186
|
+
|
|
38187
|
+
var _useState6 = React.useState(),
|
|
38188
|
+
msalInstance = _useState6[0],
|
|
38189
|
+
setMsalInstance = _useState6[1];
|
|
38190
|
+
|
|
38191
|
+
var toggle = React.useCallback(function () {
|
|
38192
|
+
setOpenLogin(!openLogin);
|
|
38193
|
+
}, [openLogin]);
|
|
38194
|
+
|
|
38195
|
+
var _useState7 = React.useState(false),
|
|
38196
|
+
isShowPassword = _useState7[0],
|
|
38197
|
+
setIsShowPassword = _useState7[1];
|
|
38198
|
+
|
|
38199
|
+
React.useEffect(function () {
|
|
38200
|
+
document.title = TITLE$1;
|
|
38201
|
+
var token = getAccessToken();
|
|
38202
|
+
if (!!token) history.push("/");
|
|
38203
|
+
getInfoGoogle();
|
|
38204
|
+
}, []);
|
|
38205
|
+
|
|
38206
|
+
var handleCancelModelAssign = function handleCancelModelAssign() {
|
|
38207
|
+
localStorage.removeItem(ACCESS_TOKEN);
|
|
38208
|
+
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
38209
|
+
localStorage.removeItem("USER_EMAIL");
|
|
38210
|
+
};
|
|
38211
|
+
|
|
38212
|
+
React.useEffect(function () {
|
|
38213
|
+
if (loginClassLink && tokenClassLink != "") {
|
|
38214
|
+
loginAccountClassLink();
|
|
38215
|
+
}
|
|
38216
|
+
}, []);
|
|
38217
|
+
|
|
38218
|
+
var loginAccountClassLink = function loginAccountClassLink() {
|
|
38219
|
+
try {
|
|
38220
|
+
var _temp3 = function _temp3() {
|
|
38221
|
+
dispatch(setLoading(false));
|
|
38222
|
+
};
|
|
38223
|
+
|
|
38224
|
+
dispatch(setLoading(true));
|
|
38225
|
+
|
|
38226
|
+
var _temp4 = _catch(function () {
|
|
38227
|
+
var data = {
|
|
38228
|
+
tokenClassLink: tokenClassLink
|
|
38229
|
+
};
|
|
38230
|
+
return Promise.resolve(apiInforUserClassLink(data)).then(function (res) {
|
|
38231
|
+
var _res$data = res.data,
|
|
38232
|
+
email = _res$data.email,
|
|
38233
|
+
token = _res$data.token;
|
|
38234
|
+
var dataUser = {
|
|
38235
|
+
email: email,
|
|
38236
|
+
rememberMe: false,
|
|
38237
|
+
password: "default",
|
|
38238
|
+
accessToken: token
|
|
38239
|
+
};
|
|
38240
|
+
return Promise.resolve(userLogin(dataUser)).then(function () {});
|
|
38241
|
+
});
|
|
38242
|
+
}, function (err) {
|
|
38243
|
+
var _err$response, _err$response$data;
|
|
38244
|
+
|
|
38245
|
+
dispatch(setAlert({
|
|
38246
|
+
type: "danger",
|
|
38247
|
+
message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
|
|
38248
|
+
}));
|
|
38249
|
+
});
|
|
38250
|
+
|
|
38251
|
+
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
38252
|
+
} catch (e) {
|
|
38253
|
+
return Promise.reject(e);
|
|
38254
|
+
}
|
|
38255
|
+
};
|
|
38256
|
+
|
|
38257
|
+
var isDistrict = window.location.host.includes("-district");
|
|
38258
|
+
var getSchoolInfo = React.useCallback(function () {
|
|
38259
|
+
try {
|
|
38260
|
+
var _temp7 = function _temp7() {
|
|
38261
|
+
dispatch(setLoading(false));
|
|
38262
|
+
};
|
|
38263
|
+
|
|
38264
|
+
dispatch(setLoading(true));
|
|
38265
|
+
|
|
38266
|
+
var _temp8 = _catch(function () {
|
|
38267
|
+
return Promise.resolve(getInfo$1()).then(function (res) {
|
|
38268
|
+
var _res$data$schoolLogo;
|
|
38269
|
+
|
|
38270
|
+
var schoolLogo = (_res$data$schoolLogo = res.data.schoolLogo) != null ? _res$data$schoolLogo : "";
|
|
38271
|
+
|
|
38272
|
+
if (!!res.data) {
|
|
38273
|
+
setSchool({
|
|
38274
|
+
schoolName: res.data.schoolName,
|
|
38275
|
+
schoolLogo: !schoolLogo ? getStaticFileUrl("/images/logo_header_blue.png") : getFileUrl(schoolLogo)
|
|
38276
|
+
});
|
|
38277
|
+
}
|
|
38278
|
+
});
|
|
38279
|
+
}, function (err) {
|
|
37552
38280
|
var _err$response2, _err$response2$data;
|
|
37553
38281
|
|
|
37554
38282
|
dispatch(setAlert({
|
|
@@ -37621,1032 +38349,310 @@ var useLogin = function useLogin() {
|
|
|
37621
38349
|
});
|
|
37622
38350
|
var hostName = window.location.hostname;
|
|
37623
38351
|
amplitude.getInstance().setUserProperties({
|
|
37624
|
-
'domain': hostName
|
|
37625
|
-
});
|
|
37626
|
-
amplitude.getInstance().logEvent("general: session start", {
|
|
37627
|
-
user_id: data.email,
|
|
37628
|
-
domain: hostName,
|
|
37629
|
-
roles: data === null || data === void 0 ? void 0 : (_data$roles = data.roles) === null || _data$roles === void 0 ? void 0 : _data$roles.toString()
|
|
37630
|
-
});
|
|
37631
|
-
localStorage.setItem("USER_EMAIL", data.email);
|
|
37632
|
-
|
|
37633
|
-
if (isLoginFirst) {
|
|
37634
|
-
var _data$roles2;
|
|
37635
|
-
|
|
37636
|
-
amplitude.getInstance().logEvent("general: first login", {
|
|
37637
|
-
user_id: data.email,
|
|
37638
|
-
domain: hostName,
|
|
37639
|
-
roles: data === null || data === void 0 ? void 0 : (_data$roles2 = data.roles) === null || _data$roles2 === void 0 ? void 0 : _data$roles2.toString()
|
|
37640
|
-
});
|
|
37641
|
-
}
|
|
37642
|
-
}
|
|
37643
|
-
|
|
37644
|
-
if (isDistrict) {
|
|
37645
|
-
history.push(HOMEPAGE_DISTRICT);
|
|
37646
|
-
} else if (roles.includes("Admin")) {
|
|
37647
|
-
history.push(HOMEPAGE_ADMIN);
|
|
37648
|
-
} else if (roles.includes("Teacher") || roles.includes("Assistant") || roles.includes("Counselor") || roles.includes("SecondaryTeacher")) {
|
|
37649
|
-
history.push(HOMEPAGE_TEACHER);
|
|
37650
|
-
} else if (roles.includes("Student")) {
|
|
37651
|
-
history.push(HOMEPAGE_STUDENT);
|
|
37652
|
-
} else if (roles.includes("Parent")) {
|
|
37653
|
-
history.push(HOMEPAGE_PARENT);
|
|
37654
|
-
} else if (roles.includes("EduTeacher")) {
|
|
37655
|
-
history.push(HOMEPAGE_EDU_TEACHER);
|
|
37656
|
-
}
|
|
37657
|
-
});
|
|
37658
|
-
}, function (err) {
|
|
37659
|
-
var _err$response3, _err$response3$data;
|
|
37660
|
-
|
|
37661
|
-
dispatch(setAlert({
|
|
37662
|
-
type: "danger",
|
|
37663
|
-
message: ((_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : (_err$response3$data = _err$response3.data) === null || _err$response3$data === void 0 ? void 0 : _err$response3$data.title) || err.message || "Login failed"
|
|
37664
|
-
}));
|
|
37665
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
37666
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
37667
|
-
});
|
|
37668
|
-
|
|
37669
|
-
return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
|
|
37670
|
-
} catch (e) {
|
|
37671
|
-
return Promise.reject(e);
|
|
37672
|
-
}
|
|
37673
|
-
}, []);
|
|
37674
|
-
|
|
37675
|
-
var getInfoGoogle = function getInfoGoogle() {
|
|
37676
|
-
try {
|
|
37677
|
-
var _temp14 = _catch(function () {
|
|
37678
|
-
return Promise.resolve(getGoogleClientId()).then(function (res) {
|
|
37679
|
-
setGoogleClientId(res.data.googleClientId);
|
|
37680
|
-
setGoogleRecaptchaId(res.data.googleCaptchaId);
|
|
37681
|
-
});
|
|
37682
|
-
}, function (err) {
|
|
37683
|
-
var _err$response4, _err$response4$data;
|
|
37684
|
-
|
|
37685
|
-
dispatch(setAlert({
|
|
37686
|
-
type: "danger",
|
|
37687
|
-
message: ((_err$response4 = err.response) === null || _err$response4 === void 0 ? void 0 : (_err$response4$data = _err$response4.data) === null || _err$response4$data === void 0 ? void 0 : _err$response4$data.title) || err.message || "Login failed"
|
|
37688
|
-
}));
|
|
37689
|
-
});
|
|
37690
|
-
|
|
37691
|
-
return Promise.resolve(_temp14 && _temp14.then ? _temp14.then(function () {}) : void 0);
|
|
37692
|
-
} catch (e) {
|
|
37693
|
-
return Promise.reject(e);
|
|
37694
|
-
}
|
|
37695
|
-
};
|
|
37696
|
-
|
|
37697
|
-
var fnIsCheckLogin = React.useCallback(function (type, data, token, clickHandler) {
|
|
37698
|
-
try {
|
|
37699
|
-
var _temp20 = function _temp20() {
|
|
37700
|
-
dispatch(setLoading(false));
|
|
37701
|
-
};
|
|
37702
|
-
|
|
37703
|
-
dispatch(setLoading(true));
|
|
37704
|
-
|
|
37705
|
-
var _temp21 = _catch(function () {
|
|
37706
|
-
return Promise.resolve(checkUserGoogle(type, data)).then(function (res) {
|
|
37707
|
-
var checkUser = res.data;
|
|
37708
|
-
|
|
37709
|
-
var _temp17 = function () {
|
|
37710
|
-
if (checkUser) {
|
|
37711
|
-
var _temp22 = function _temp22() {
|
|
37712
|
-
return Promise.resolve(userLogin(_dataUser)).then(function () {
|
|
37713
|
-
dispatch(setIsLoginGoogle(false));
|
|
37714
|
-
});
|
|
37715
|
-
};
|
|
37716
|
-
|
|
37717
|
-
var _dataUser = {
|
|
37718
|
-
email: data.email,
|
|
37719
|
-
isLoginGoogle: true,
|
|
37720
|
-
rememberMe: false,
|
|
37721
|
-
password: "default",
|
|
37722
|
-
accessToken: token,
|
|
37723
|
-
captcha: "",
|
|
37724
|
-
loginType: LoginType.Google
|
|
37725
|
-
};
|
|
37726
|
-
|
|
37727
|
-
var _temp23 = function () {
|
|
37728
|
-
if (clickHandler != null) {
|
|
37729
|
-
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
37730
|
-
_dataUser.captcha = clickHandlerRes;
|
|
37731
|
-
});
|
|
37732
|
-
}
|
|
37733
|
-
}();
|
|
37734
|
-
|
|
37735
|
-
return _temp23 && _temp23.then ? _temp23.then(_temp22) : _temp22(_temp23);
|
|
37736
|
-
} else {
|
|
37737
|
-
dispatch(setIsLoginGoogle(true));
|
|
37738
|
-
}
|
|
37739
|
-
}();
|
|
37740
|
-
|
|
37741
|
-
if (_temp17 && _temp17.then) return _temp17.then(function () {});
|
|
37742
|
-
});
|
|
37743
|
-
}, function (err) {
|
|
37744
|
-
var _err$response5, _err$response5$data;
|
|
37745
|
-
|
|
37746
|
-
dispatch(setAlert({
|
|
37747
|
-
type: "danger",
|
|
37748
|
-
message: ((_err$response5 = err.response) === null || _err$response5 === void 0 ? void 0 : (_err$response5$data = _err$response5.data) === null || _err$response5$data === void 0 ? void 0 : _err$response5$data.title) || err.message || "Login failed"
|
|
37749
|
-
}));
|
|
37750
|
-
});
|
|
37751
|
-
|
|
37752
|
-
return Promise.resolve(_temp21 && _temp21.then ? _temp21.then(_temp20) : _temp20(_temp21));
|
|
37753
|
-
} catch (e) {
|
|
37754
|
-
return Promise.reject(e);
|
|
37755
|
-
}
|
|
37756
|
-
}, []);
|
|
37757
|
-
|
|
37758
|
-
var submitLogin = function submitLogin(teacherId, clickHandler) {
|
|
37759
|
-
try {
|
|
37760
|
-
var _temp27 = function _temp27() {
|
|
37761
|
-
dispatch(setIsLoginGoogle(false));
|
|
37762
|
-
dispatch(setLoading(false));
|
|
37763
|
-
};
|
|
37764
|
-
|
|
37765
|
-
dispatch(setLoading(true));
|
|
37766
|
-
|
|
37767
|
-
var _temp28 = _catch(function () {
|
|
37768
|
-
var data = {
|
|
37769
|
-
firstName: infoUser.firstName,
|
|
37770
|
-
lastName: infoUser.lastName,
|
|
37771
|
-
imageUrl: infoUser.imageUrl,
|
|
37772
|
-
fullName: infoUser.fullName,
|
|
37773
|
-
email: infoUser.email,
|
|
37774
|
-
accessToken: infoUser.accessToken,
|
|
37775
|
-
teacherId: teacherId
|
|
37776
|
-
};
|
|
37777
|
-
return Promise.resolve(registerUserStudent(data)).then(function (res) {
|
|
37778
|
-
var _temp24 = function () {
|
|
37779
|
-
if (res.data) {
|
|
37780
|
-
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
37781
|
-
var dataLogin = {
|
|
37782
|
-
email: infoUser.email,
|
|
37783
|
-
captcha: clickHandlerRes,
|
|
37784
|
-
isLoginGoogle: true,
|
|
37785
|
-
rememberMe: false,
|
|
37786
|
-
password: "default",
|
|
37787
|
-
accessToken: infoUser.accessToken,
|
|
37788
|
-
loginType: LoginType.Google
|
|
37789
|
-
};
|
|
37790
|
-
dispatch(setIsLoginGoogle(false));
|
|
37791
|
-
return Promise.resolve(userLogin(dataLogin)).then(function () {
|
|
37792
|
-
history.push(HOMEPAGE_STUDENT);
|
|
37793
|
-
});
|
|
37794
|
-
});
|
|
37795
|
-
}
|
|
37796
|
-
}();
|
|
37797
|
-
|
|
37798
|
-
if (_temp24 && _temp24.then) return _temp24.then(function () {});
|
|
37799
|
-
});
|
|
37800
|
-
}, function (err) {
|
|
37801
|
-
var _err$response6, _err$response6$data;
|
|
37802
|
-
|
|
37803
|
-
dispatch(setAlert({
|
|
37804
|
-
type: "danger",
|
|
37805
|
-
message: ((_err$response6 = err.response) === null || _err$response6 === void 0 ? void 0 : (_err$response6$data = _err$response6.data) === null || _err$response6$data === void 0 ? void 0 : _err$response6$data.title) || err.message || "Login failed"
|
|
37806
|
-
}));
|
|
37807
|
-
});
|
|
37808
|
-
|
|
37809
|
-
return Promise.resolve(_temp28 && _temp28.then ? _temp28.then(_temp27) : _temp27(_temp28));
|
|
37810
|
-
} catch (e) {
|
|
37811
|
-
return Promise.reject(e);
|
|
37812
|
-
}
|
|
37813
|
-
};
|
|
37814
|
-
|
|
37815
|
-
var getInformationSetting = function getInformationSetting() {
|
|
37816
|
-
try {
|
|
37817
|
-
var _temp30 = _catch(function () {
|
|
37818
|
-
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
37819
|
-
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
37820
|
-
setSchool(res.data);
|
|
37821
|
-
});
|
|
37822
|
-
}, function (err) {
|
|
37823
|
-
console.error(err);
|
|
37824
|
-
});
|
|
37825
|
-
|
|
37826
|
-
return Promise.resolve(_temp30 && _temp30.then ? _temp30.then(function () {}) : void 0);
|
|
37827
|
-
} catch (e) {
|
|
37828
|
-
return Promise.reject(e);
|
|
37829
|
-
}
|
|
37830
|
-
};
|
|
37831
|
-
|
|
37832
|
-
var fnLoginSSO = function fnLoginSSO(clickHandler) {
|
|
37833
|
-
try {
|
|
37834
|
-
msalInstance.handleRedirectPromise().then(function (tokenResponse) {
|
|
37835
|
-
try {
|
|
37836
|
-
var _temp33 = function () {
|
|
37837
|
-
if (!tokenResponse) {
|
|
37838
|
-
var accounts = msalInstance.getAllAccounts();
|
|
37839
|
-
|
|
37840
|
-
var _temp34 = function () {
|
|
37841
|
-
if (accounts.length === 0) {
|
|
37842
|
-
msalInstance.loginRedirect();
|
|
37843
|
-
} else {
|
|
37844
|
-
var currentAccount = accounts[0];
|
|
37845
|
-
return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
|
|
37846
|
-
}
|
|
37847
|
-
}();
|
|
37848
|
-
|
|
37849
|
-
if (_temp34 && _temp34.then) return _temp34.then(function () {});
|
|
37850
|
-
} else {
|
|
37851
|
-
var currentAccount = tokenResponse.account;
|
|
37852
|
-
return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
|
|
37853
|
-
}
|
|
37854
|
-
}();
|
|
37855
|
-
|
|
37856
|
-
return Promise.resolve(_temp33 && _temp33.then ? _temp33.then(function () {}) : void 0);
|
|
37857
|
-
} catch (e) {
|
|
37858
|
-
return Promise.reject(e);
|
|
37859
|
-
}
|
|
37860
|
-
})["catch"](function (err) {
|
|
37861
|
-
console.error(err);
|
|
37862
|
-
});
|
|
37863
|
-
return Promise.resolve();
|
|
37864
|
-
} catch (e) {
|
|
37865
|
-
return Promise.reject(e);
|
|
37866
|
-
}
|
|
37867
|
-
};
|
|
37868
|
-
|
|
37869
|
-
var getCurrentAccount = function getCurrentAccount(account, clickHandler) {
|
|
37870
|
-
try {
|
|
37871
|
-
var fullName = account.name;
|
|
37872
|
-
var infoLogin = {
|
|
37873
|
-
firstName: fullName.split(' ').slice(0, -1).join(' '),
|
|
37874
|
-
lastName: fullName.split(' ').slice(-1).join(' '),
|
|
37875
|
-
fullName: fullName,
|
|
37876
|
-
imageUrl: "",
|
|
37877
|
-
email: account.username,
|
|
37878
|
-
accessToken: account.idTokenClaims.aio,
|
|
37879
|
-
googleId: account.tenantId
|
|
37880
|
-
};
|
|
37881
|
-
dispatch(setInforUserGoogle(infoLogin));
|
|
37882
|
-
return Promise.resolve(fnIsCheckLogin(TypeLogin.MicrosoftSSO, infoLogin, account.idTokenClaims.aio, clickHandler)).then(function () {});
|
|
37883
|
-
} catch (e) {
|
|
37884
|
-
return Promise.reject(e);
|
|
37885
|
-
}
|
|
37886
|
-
};
|
|
37887
|
-
|
|
37888
|
-
var initInformationSSO = function initInformationSSO() {
|
|
37889
|
-
try {
|
|
37890
|
-
var _msalInstance = new msalBrowser.PublicClientApplication(msalConfig);
|
|
37891
|
-
|
|
37892
|
-
setMsalInstance(_msalInstance);
|
|
37893
|
-
return Promise.resolve();
|
|
37894
|
-
} catch (e) {
|
|
37895
|
-
return Promise.reject(e);
|
|
37896
|
-
}
|
|
37897
|
-
};
|
|
37898
|
-
|
|
37899
|
-
React.useEffect(function () {
|
|
37900
|
-
var redirectUrl = window.location.href;
|
|
37901
|
-
|
|
37902
|
-
if (!!msalInstance && redirectUrl.includes("code") && redirectUrl.includes("client_info")) {
|
|
37903
|
-
fnLoginSSO();
|
|
37904
|
-
}
|
|
37905
|
-
}, [JSON.stringify(msalInstance)]);
|
|
37906
|
-
React.useEffect(function () {
|
|
37907
|
-
getInformationSetting();
|
|
37908
|
-
initInformationSSO();
|
|
37909
|
-
getSchoolInfo();
|
|
37910
|
-
}, []);
|
|
37911
|
-
return {
|
|
37912
|
-
defaultInfo: defaultInfo,
|
|
37913
|
-
userLogin: userLogin,
|
|
37914
|
-
openLogin: openLogin,
|
|
37915
|
-
toggle: toggle,
|
|
37916
|
-
isShowPassword: isShowPassword,
|
|
37917
|
-
setIsShowPassword: setIsShowPassword,
|
|
37918
|
-
fnIsCheckLogin: fnIsCheckLogin,
|
|
37919
|
-
isLoginGoogle: isLoginGoogle,
|
|
37920
|
-
infoUser: infoUser,
|
|
37921
|
-
submitLogin: submitLogin,
|
|
37922
|
-
googleClientId: googleClientId,
|
|
37923
|
-
googleRecaptchaId: googleRecaptchaId,
|
|
37924
|
-
handleCancelModelAssign: handleCancelModelAssign,
|
|
37925
|
-
openModelAssign: openModelAssign,
|
|
37926
|
-
fnLoginSSO: fnLoginSSO,
|
|
37927
|
-
school: school
|
|
37928
|
-
};
|
|
37929
|
-
};
|
|
37930
|
-
|
|
37931
|
-
var CustomSelector = function CustomSelector(_ref) {
|
|
37932
|
-
var defaultValue = _ref.defaultValue,
|
|
37933
|
-
options = _ref.options,
|
|
37934
|
-
isDisabled = _ref.isDisabled,
|
|
37935
|
-
scrollBottom = _ref.scrollBottom,
|
|
37936
|
-
rest = _objectWithoutPropertiesLoose(_ref, ["defaultValue", "options", "isDisabled", "scrollBottom"]);
|
|
37937
|
-
|
|
37938
|
-
var initValue = defaultValue !== null && typeof defaultValue !== "undefined" ? options.find(function (option) {
|
|
37939
|
-
return option.value === defaultValue;
|
|
37940
|
-
}) || null : null;
|
|
37941
|
-
return React__default.createElement(Select, Object.assign({
|
|
37942
|
-
isDisabled: isDisabled,
|
|
37943
|
-
options: options,
|
|
37944
|
-
value: initValue,
|
|
37945
|
-
menuPlacement: scrollBottom ? "top" : "auto"
|
|
37946
|
-
}, rest));
|
|
37947
|
-
};
|
|
37948
|
-
|
|
37949
|
-
var BlockSelectTeacher = function BlockSelectTeacher(_ref) {
|
|
37950
|
-
var defaultValue = _ref.defaultValue,
|
|
37951
|
-
isDisabled = _ref.isDisabled,
|
|
37952
|
-
openModal = _ref.openModal,
|
|
37953
|
-
onSubmit = _ref.onSubmit,
|
|
37954
|
-
token = _ref.token,
|
|
37955
|
-
email = _ref.email;
|
|
37956
|
-
|
|
37957
|
-
var _useState = React.useState(false),
|
|
37958
|
-
modal = _useState[0],
|
|
37959
|
-
setModal = _useState[1];
|
|
37960
|
-
|
|
37961
|
-
React.useEffect(function () {
|
|
37962
|
-
setModal(openModal);
|
|
37963
|
-
}, [openModal]);
|
|
37964
|
-
var dispatch = reactRedux.useDispatch();
|
|
37965
|
-
|
|
37966
|
-
var _useState2 = React.useState([]),
|
|
37967
|
-
teachers = _useState2[0],
|
|
37968
|
-
setTeachers = _useState2[1];
|
|
37969
|
-
|
|
37970
|
-
var _useState3 = React.useState(""),
|
|
37971
|
-
searchString = _useState3[0],
|
|
37972
|
-
setSearchString = _useState3[1];
|
|
37973
|
-
|
|
37974
|
-
var _useState4 = React.useState(""),
|
|
37975
|
-
teacherEmail = _useState4[0],
|
|
37976
|
-
setTeacherEmail = _useState4[1];
|
|
37977
|
-
|
|
37978
|
-
var _useState5 = React.useState(false),
|
|
37979
|
-
isLoading = _useState5[0],
|
|
37980
|
-
setLoading = _useState5[1];
|
|
37981
|
-
|
|
37982
|
-
var timeout = React.useRef();
|
|
37983
|
-
|
|
37984
|
-
var toggle = function toggle() {
|
|
37985
|
-
setModal(!modal);
|
|
37986
|
-
dispatch(setIsLoginGoogle(!modal));
|
|
37987
|
-
};
|
|
37988
|
-
|
|
37989
|
-
var loadData = React.useCallback(function () {
|
|
37990
|
-
try {
|
|
37991
|
-
var _temp3 = function _temp3() {
|
|
37992
|
-
setLoading(false);
|
|
37993
|
-
};
|
|
37994
|
-
|
|
37995
|
-
setLoading(true);
|
|
37996
|
-
|
|
37997
|
-
var _temp4 = _catch(function () {
|
|
37998
|
-
var data = {
|
|
37999
|
-
token: token,
|
|
38000
|
-
email: email
|
|
38001
|
-
};
|
|
38002
|
-
return Promise.resolve(getAllLoginTeacher(data)).then(function (res) {
|
|
38003
|
-
setTeachers(res.data);
|
|
38004
|
-
});
|
|
38005
|
-
}, function (err) {
|
|
38006
|
-
var _err$response, _err$response$data;
|
|
38007
|
-
|
|
38008
|
-
dispatch(setAlert({
|
|
38009
|
-
type: "danger",
|
|
38010
|
-
message: ((_err$response = err.response) === null || _err$response === void 0 ? void 0 : (_err$response$data = _err$response.data) === null || _err$response$data === void 0 ? void 0 : _err$response$data.title) || err.message
|
|
38011
|
-
}));
|
|
38012
|
-
});
|
|
38013
|
-
|
|
38014
|
-
return Promise.resolve(_temp4 && _temp4.then ? _temp4.then(_temp3) : _temp3(_temp4));
|
|
38015
|
-
} catch (e) {
|
|
38016
|
-
return Promise.reject(e);
|
|
38017
|
-
}
|
|
38018
|
-
}, [searchString]);
|
|
38019
|
-
React.useEffect(function () {
|
|
38020
|
-
timeout && timeout.current && clearTimeout(timeout.current);
|
|
38021
|
-
|
|
38022
|
-
if (!searchString || searchString.trim().length < 2) {
|
|
38023
|
-
setTeachers([]);
|
|
38024
|
-
} else {
|
|
38025
|
-
timeout.current = setTimeout(loadData, 300);
|
|
38026
|
-
}
|
|
38027
|
-
}, [searchString]);
|
|
38028
|
-
var options = teachers.map(function (teacher) {
|
|
38029
|
-
return {
|
|
38030
|
-
label: teacher.fullName + " (" + teacher.email + ")",
|
|
38031
|
-
value: teacher.teacherId
|
|
38032
|
-
};
|
|
38033
|
-
});
|
|
38034
|
-
|
|
38035
|
-
var onChangeTeacher = function onChangeTeacher(e) {
|
|
38036
|
-
setTeacherEmail(e.value);
|
|
38037
|
-
};
|
|
38038
|
-
|
|
38039
|
-
var customSelector = {
|
|
38040
|
-
control: function control(styles) {
|
|
38041
|
-
return _extends({}, styles, {
|
|
38042
|
-
borderRadius: "10px"
|
|
38043
|
-
});
|
|
38044
|
-
}
|
|
38045
|
-
};
|
|
38046
|
-
return React__default.createElement(reactstrap.Modal, {
|
|
38047
|
-
isOpen: modal
|
|
38048
|
-
}, React__default.createElement(reactstrap.ModalHeader, null, " Sign in "), React__default.createElement(reactstrap.ModalBody, null, React__default.createElement("h6", null, "You are logging in as a student, please select teacher"), React__default.createElement(CustomSelector, {
|
|
38049
|
-
styles: customSelector,
|
|
38050
|
-
options: options,
|
|
38051
|
-
inputValue: searchString,
|
|
38052
|
-
onInputChange: function onInputChange(inputValue) {
|
|
38053
|
-
return setSearchString(inputValue);
|
|
38054
|
-
},
|
|
38055
|
-
isLoading: isLoading,
|
|
38056
|
-
placeholder: "Type 2 characters to search",
|
|
38057
|
-
value: defaultValue,
|
|
38058
|
-
onChange: onChangeTeacher,
|
|
38059
|
-
isDisabled: isDisabled
|
|
38060
|
-
})), React__default.createElement(reactstrap.ModalFooter, null, React__default.createElement(reactstrap.Button, {
|
|
38061
|
-
color: "primary",
|
|
38062
|
-
onClick: function onClick() {
|
|
38063
|
-
onSubmit(teacherEmail);
|
|
38064
|
-
toggle();
|
|
38065
|
-
}
|
|
38066
|
-
}, "Finish"), ' ', React__default.createElement(reactstrap.Button, {
|
|
38067
|
-
color: "secondary",
|
|
38068
|
-
onClick: toggle
|
|
38069
|
-
}, "Cancel")));
|
|
38070
|
-
};
|
|
38071
|
-
|
|
38072
|
-
var BlockSelectTeacher$1 = React.forwardRef(BlockSelectTeacher);
|
|
38073
|
-
|
|
38074
|
-
var getStaticFileUrl = function getStaticFileUrl(url) {
|
|
38075
|
-
var STAGE_DOMAIN = "https://stage2.marioforme.com";
|
|
38076
|
-
var isStage = STAGE_DOMAIN === location.origin;
|
|
38077
|
-
if (!url) return "";
|
|
38078
|
-
if (isLocalhost && !isStage || url.startsWith("http")) return url;
|
|
38079
|
-
if (url.startsWith("/")) return "" + (isStage ? STAGE_DOMAIN : MARIO_SUCCESS_BASE_URL) + url;else return (isStage ? STAGE_DOMAIN : MARIO_SUCCESS_BASE_URL) + "/" + url;
|
|
38080
|
-
};
|
|
38081
|
-
|
|
38082
|
-
var getFileUrl = function getFileUrl(fileName) {
|
|
38083
|
-
if (!fileName || !fileName.trim()) return "";
|
|
38084
|
-
return BASE_URL + "/api/file/viewer?key=" + fileName;
|
|
38085
|
-
};
|
|
38086
|
-
|
|
38087
|
-
var schema = yup.object({
|
|
38088
|
-
email: yup.string().email("Email is invalid").required("Email is required"),
|
|
38089
|
-
password: yup.string().required("Password is required"),
|
|
38090
|
-
rememberMe: yup.boolean()
|
|
38091
|
-
});
|
|
38092
|
-
|
|
38093
|
-
var BlockLogin = function BlockLogin(_ref) {
|
|
38094
|
-
var defaultInfo = _ref.defaultInfo,
|
|
38095
|
-
userLogin = _ref.userLogin,
|
|
38096
|
-
school = _ref.school;
|
|
38097
|
-
|
|
38098
|
-
var _useLogin = useLogin(),
|
|
38099
|
-
isShowPassword = _useLogin.isShowPassword,
|
|
38100
|
-
setIsShowPassword = _useLogin.setIsShowPassword,
|
|
38101
|
-
fnIsCheckLogin = _useLogin.fnIsCheckLogin,
|
|
38102
|
-
isLoginGoogle = _useLogin.isLoginGoogle,
|
|
38103
|
-
submitLogin = _useLogin.submitLogin,
|
|
38104
|
-
infoUser = _useLogin.infoUser,
|
|
38105
|
-
googleClientId = _useLogin.googleClientId;
|
|
38106
|
-
|
|
38107
|
-
var togglePasswordVisible = function togglePasswordVisible() {
|
|
38108
|
-
return setIsShowPassword(!isShowPassword);
|
|
38109
|
-
};
|
|
38110
|
-
|
|
38111
|
-
var dispatch = reactRedux.useDispatch();
|
|
38112
|
-
|
|
38113
|
-
var _useGoogleReCaptcha = reactGoogleRecaptchaV3.useGoogleReCaptcha(),
|
|
38114
|
-
executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
|
|
38115
|
-
|
|
38116
|
-
var clickHandler = React.useCallback(function () {
|
|
38117
|
-
try {
|
|
38118
|
-
if (!executeRecaptcha) {
|
|
38119
|
-
console.log("execute recaptcha undefined");
|
|
38120
|
-
return Promise.resolve();
|
|
38121
|
-
}
|
|
38122
|
-
|
|
38123
|
-
return Promise.resolve(executeRecaptcha("login"));
|
|
38124
|
-
} catch (e) {
|
|
38125
|
-
return Promise.reject(e);
|
|
38126
|
-
}
|
|
38127
|
-
}, [executeRecaptcha]);
|
|
38128
|
-
var handleVerify = React.useCallback(function () {}, []);
|
|
38129
|
-
|
|
38130
|
-
var onSuccessGoogle = function onSuccessGoogle(res) {
|
|
38131
|
-
if (!!(res !== null && res !== void 0 && res.accessToken)) {
|
|
38132
|
-
var _res$profileObj = res.profileObj,
|
|
38133
|
-
email = _res$profileObj.email,
|
|
38134
|
-
familyName = _res$profileObj.familyName,
|
|
38135
|
-
givenName = _res$profileObj.givenName,
|
|
38136
|
-
imageUrl = _res$profileObj.imageUrl,
|
|
38137
|
-
name = _res$profileObj.name;
|
|
38138
|
-
var accessToken = res.accessToken;
|
|
38139
|
-
var googleId = res.googleId;
|
|
38140
|
-
|
|
38141
|
-
if (email.includes("@gmail")) {
|
|
38142
|
-
alert("The email address you used does not match the login information in the database. Please check that you are using your school assigned email address to log into MARIO for Me. If you have further trouble please notify your school site administrator");
|
|
38143
|
-
return;
|
|
38144
|
-
}
|
|
38145
|
-
|
|
38146
|
-
var infoLogin = {
|
|
38147
|
-
firstName: givenName,
|
|
38148
|
-
lastName: familyName,
|
|
38149
|
-
imageUrl: imageUrl,
|
|
38150
|
-
fullName: name,
|
|
38151
|
-
email: email,
|
|
38152
|
-
accessToken: accessToken,
|
|
38153
|
-
googleId: googleId
|
|
38154
|
-
};
|
|
38155
|
-
dispatch(setInforUserGoogle(infoLogin));
|
|
38156
|
-
fnIsCheckLogin(TypeLogin.Google, infoLogin, accessToken, clickHandler);
|
|
38157
|
-
}
|
|
38158
|
-
};
|
|
38159
|
-
|
|
38160
|
-
return React__default.createElement(React__default.Fragment, null, React__default.createElement(formik.Formik, {
|
|
38161
|
-
initialValues: defaultInfo,
|
|
38162
|
-
validationSchema: schema,
|
|
38163
|
-
onSubmit: function (values) {
|
|
38164
|
-
try {
|
|
38165
|
-
return Promise.resolve(_catch(function () {
|
|
38166
|
-
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
38167
|
-
if (!clickHandlerRes) return;
|
|
38168
|
-
values.captcha = clickHandlerRes;
|
|
38169
|
-
values.loginType = LoginType.Default;
|
|
38170
|
-
userLogin(values);
|
|
38171
|
-
});
|
|
38172
|
-
}, function (err) {
|
|
38173
|
-
console.error(err);
|
|
38174
|
-
}));
|
|
38175
|
-
} catch (e) {
|
|
38176
|
-
return Promise.reject(e);
|
|
38177
|
-
}
|
|
38178
|
-
}
|
|
38179
|
-
}, function (formikProps) {
|
|
38180
|
-
var handleChange = formikProps.handleChange,
|
|
38181
|
-
handleBlur = formikProps.handleBlur,
|
|
38182
|
-
handleSubmit = formikProps.handleSubmit,
|
|
38183
|
-
values = formikProps.values,
|
|
38184
|
-
touched = formikProps.touched,
|
|
38185
|
-
errors = formikProps.errors,
|
|
38186
|
-
setFieldValue = formikProps.setFieldValue;
|
|
38187
|
-
var emailError = touched.email && errors.email;
|
|
38188
|
-
var passwordError = touched.password && errors.password;
|
|
38189
|
-
return React__default.createElement("div", {
|
|
38190
|
-
className: styles["box-login"] + " w-100"
|
|
38191
|
-
}, React__default.createElement(reactstrap.Form, {
|
|
38192
|
-
className: "" + styles["block-login"],
|
|
38193
|
-
onSubmit: handleSubmit
|
|
38194
|
-
}, React__default.createElement("div", {
|
|
38195
|
-
className: "" + styles["block-form"]
|
|
38196
|
-
}, React__default.createElement("div", {
|
|
38197
|
-
className: "d-flex align-items-center mb-4"
|
|
38198
|
-
}, React__default.createElement("img", {
|
|
38199
|
-
src: "" + (school !== null && school !== void 0 && school.schoolLogo ? getFileUrl("" + (school === null || school === void 0 ? void 0 : school.schoolLogo)) : getStaticFileUrl("/images/logoR.png")),
|
|
38200
|
-
className: styles["school-icon"] + " mr-3"
|
|
38201
|
-
}), React__default.createElement("p", {
|
|
38202
|
-
className: styles["school-name"] + " mb-0"
|
|
38203
|
-
}, school.schoolName)), React__default.createElement("p", {
|
|
38204
|
-
className: "" + styles["title-login"]
|
|
38205
|
-
}, "Welcome Back!"), React__default.createElement("p", {
|
|
38206
|
-
className: styles["login-description"] + " mb-5"
|
|
38207
|
-
}, "Please enter your MARIO Education account details"), React__default.createElement(reactstrap.FormGroup, {
|
|
38208
|
-
className: "" + styles["form-user-name"]
|
|
38209
|
-
}, React__default.createElement(reactstrap.Input, {
|
|
38210
|
-
type: "text",
|
|
38211
|
-
name: "email",
|
|
38212
|
-
placeholder: "Email",
|
|
38213
|
-
value: values.email,
|
|
38214
|
-
onChange: handleChange,
|
|
38215
|
-
autocomplete: "email",
|
|
38216
|
-
onBlur: handleBlur("email"),
|
|
38217
|
-
required: true
|
|
38218
|
-
}), emailError && React__default.createElement(ErrorHandler, {
|
|
38219
|
-
text: errors.email
|
|
38220
|
-
})), React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(PasswordInput, {
|
|
38221
|
-
isShowPassword: isShowPassword,
|
|
38222
|
-
togglePasswordVisible: togglePasswordVisible,
|
|
38223
|
-
onChange: function onChange(e) {
|
|
38224
|
-
return setFieldValue("password", e.target.value);
|
|
38225
|
-
}
|
|
38226
|
-
}), passwordError && React__default.createElement(ErrorHandler, {
|
|
38227
|
-
text: errors.password
|
|
38228
|
-
})), React__default.createElement(reactstrap.FormGroup, null, React__default.createElement(reactGoogleRecaptchaV3.GoogleReCaptcha, {
|
|
38229
|
-
action: "login",
|
|
38230
|
-
onVerify: handleVerify
|
|
38231
|
-
})), React__default.createElement("div", {
|
|
38232
|
-
className: "d-flex justify-content-between"
|
|
38233
|
-
}, React__default.createElement("div", {
|
|
38234
|
-
className: "d-flex align-items-center"
|
|
38235
|
-
}, React__default.createElement("input", {
|
|
38236
|
-
type: "checkbox",
|
|
38237
|
-
checked: !values.isSessionUserBrowser,
|
|
38238
|
-
className: "" + styles["checkbox-keep-login"],
|
|
38239
|
-
onChange: function onChange() {
|
|
38240
|
-
return setFieldValue("isSessionUserBrowser", !values.isSessionUserBrowser);
|
|
38241
|
-
}
|
|
38242
|
-
}), React__default.createElement("p", {
|
|
38243
|
-
className: styles["label-keep-login"] + " mb-0 ml-2"
|
|
38244
|
-
}, "Keep me logged in")), React__default.createElement(reactRouterDom.Link, {
|
|
38245
|
-
to: "/forgot-password",
|
|
38246
|
-
className: "" + styles["link-to-login"]
|
|
38247
|
-
}, "Forgot password?")), React__default.createElement("button", {
|
|
38248
|
-
className: styles["btn-login"] + " mt-5",
|
|
38249
|
-
type: "submit"
|
|
38250
|
-
}, "LOG IN"), React__default.createElement("p", {
|
|
38251
|
-
className: styles["option-text"] + " my-3 text-center"
|
|
38252
|
-
}, "OR"), React__default.createElement(reactstrap.Row, {
|
|
38253
|
-
className: "mb-4"
|
|
38254
|
-
}, React__default.createElement(reactstrap.Col, {
|
|
38255
|
-
lg: 12,
|
|
38256
|
-
md: 12,
|
|
38257
|
-
xs: 12,
|
|
38258
|
-
className: "pr-md-2"
|
|
38259
|
-
}, !!googleClientId && React__default.createElement(GoogleLogin, {
|
|
38260
|
-
clientId: googleClientId,
|
|
38261
|
-
buttonText: "GOOGLE",
|
|
38262
|
-
onSuccess: onSuccessGoogle,
|
|
38263
|
-
cookiePolicy: "single_host_origin",
|
|
38264
|
-
className: styles["btn-login-google"] + " p-0 mb-4 mb-md-0"
|
|
38265
|
-
}))), React__default.createElement("div", {
|
|
38266
|
-
className: "w-100 d-flex align-items-center justify-content-center mt-3"
|
|
38267
|
-
}, React__default.createElement("a", {
|
|
38268
|
-
href: "https://launchpad.classlink.com/login"
|
|
38269
|
-
}, React__default.createElement("img", {
|
|
38270
|
-
className: styles["class-link-sso-image"],
|
|
38271
|
-
src: getStaticFileUrl("images/classlink-sso.png"),
|
|
38272
|
-
alt: ""
|
|
38273
|
-
}))))));
|
|
38274
|
-
}), isLoginGoogle && React__default.createElement(BlockSelectTeacher$1, {
|
|
38275
|
-
onSubmit: function onSubmit(e) {
|
|
38276
|
-
return submitLogin(e, clickHandler);
|
|
38277
|
-
},
|
|
38278
|
-
openModal: isLoginGoogle,
|
|
38279
|
-
token: infoUser.accessToken,
|
|
38280
|
-
email: infoUser.email
|
|
38281
|
-
}));
|
|
38282
|
-
};
|
|
38283
|
-
|
|
38284
|
-
var defaultInfo$1 = {
|
|
38285
|
-
email: "",
|
|
38286
|
-
captcha: ""
|
|
38287
|
-
};
|
|
38288
|
-
var DASHBOARD = "/";
|
|
38289
|
-
var LOGIN = "/login";
|
|
38290
|
-
var TITLE$1 = "Log in";
|
|
38291
|
-
|
|
38292
|
-
var useForgotPassword = function useForgotPassword() {
|
|
38293
|
-
var _query$get;
|
|
38294
|
-
|
|
38295
|
-
var query = new URLSearchParams(reactRouterDom.useLocation().search);
|
|
38296
|
-
var token = query.get("token");
|
|
38297
|
-
var key = (_query$get = query.get("key")) != null ? _query$get : "";
|
|
38298
|
-
var dispatch = reactRedux.useDispatch();
|
|
38299
|
-
var history = reactRouterDom.useHistory();
|
|
38300
|
-
|
|
38301
|
-
var _useState = React.useState(false),
|
|
38302
|
-
openLogin = _useState[0],
|
|
38303
|
-
setOpenLogin = _useState[1];
|
|
38304
|
-
|
|
38305
|
-
var toggle = React.useCallback(function () {
|
|
38306
|
-
setOpenLogin(!openLogin);
|
|
38307
|
-
}, [openLogin]);
|
|
38308
|
-
|
|
38309
|
-
var _useState2 = React.useState(false),
|
|
38310
|
-
isShowNewPassword = _useState2[0],
|
|
38311
|
-
setIsShowNewPassword = _useState2[1];
|
|
38312
|
-
|
|
38313
|
-
var _useState3 = React.useState(false),
|
|
38314
|
-
isShowReTypePassword = _useState3[0],
|
|
38315
|
-
setIsShowReTypePassword = _useState3[1];
|
|
38316
|
-
|
|
38317
|
-
var _useState4 = React.useState({
|
|
38318
|
-
token: "",
|
|
38319
|
-
password: "",
|
|
38320
|
-
reEnterPassword: "",
|
|
38321
|
-
email: "",
|
|
38322
|
-
userId: ""
|
|
38323
|
-
}),
|
|
38324
|
-
initialValues = _useState4[0],
|
|
38325
|
-
setInitialValues = _useState4[1];
|
|
38326
|
-
|
|
38327
|
-
var _useState5 = React.useState(true),
|
|
38328
|
-
validLink = _useState5[0],
|
|
38329
|
-
setValidLink = _useState5[1];
|
|
38330
|
-
|
|
38331
|
-
var _useGoogleReCaptcha = reactGoogleRecaptchaV3.useGoogleReCaptcha(),
|
|
38332
|
-
executeRecaptcha = _useGoogleReCaptcha.executeRecaptcha;
|
|
38352
|
+
'domain': hostName
|
|
38353
|
+
});
|
|
38354
|
+
amplitude.getInstance().logEvent("general: session start", {
|
|
38355
|
+
user_id: data.email,
|
|
38356
|
+
domain: hostName,
|
|
38357
|
+
roles: data === null || data === void 0 ? void 0 : (_data$roles = data.roles) === null || _data$roles === void 0 ? void 0 : _data$roles.toString()
|
|
38358
|
+
});
|
|
38359
|
+
localStorage.setItem("USER_EMAIL", data.email);
|
|
38333
38360
|
|
|
38334
|
-
|
|
38335
|
-
|
|
38336
|
-
var token = getAccessToken();
|
|
38337
|
-
if (!!token) history.push(DASHBOARD);
|
|
38338
|
-
}, []);
|
|
38339
|
-
var forgotPasswordRequest = React.useCallback(function (data) {
|
|
38340
|
-
try {
|
|
38341
|
-
var _temp3 = function _temp3() {
|
|
38342
|
-
dispatch(setLoading(false));
|
|
38343
|
-
};
|
|
38361
|
+
if (isLoginFirst) {
|
|
38362
|
+
var _data$roles2;
|
|
38344
38363
|
|
|
38345
|
-
|
|
38364
|
+
amplitude.getInstance().logEvent("general: first login", {
|
|
38365
|
+
user_id: data.email,
|
|
38366
|
+
domain: hostName,
|
|
38367
|
+
roles: data === null || data === void 0 ? void 0 : (_data$roles2 = data.roles) === null || _data$roles2 === void 0 ? void 0 : _data$roles2.toString()
|
|
38368
|
+
});
|
|
38369
|
+
}
|
|
38370
|
+
}
|
|
38346
38371
|
|
|
38347
|
-
|
|
38348
|
-
|
|
38349
|
-
|
|
38350
|
-
|
|
38351
|
-
|
|
38352
|
-
|
|
38353
|
-
}))
|
|
38372
|
+
if (isDistrict) {
|
|
38373
|
+
history.push(HOMEPAGE_DISTRICT);
|
|
38374
|
+
} else if (roles.includes("Admin")) {
|
|
38375
|
+
history.push(HOMEPAGE_ADMIN);
|
|
38376
|
+
} else if (roles.includes("Teacher") || roles.includes("Assistant") || roles.includes("Counselor") || roles.includes("SecondaryTeacher")) {
|
|
38377
|
+
history.push(HOMEPAGE_TEACHER);
|
|
38378
|
+
} else if (roles.includes("Student")) {
|
|
38379
|
+
history.push(HOMEPAGE_STUDENT);
|
|
38380
|
+
} else if (roles.includes("Parent")) {
|
|
38381
|
+
history.push(HOMEPAGE_PARENT);
|
|
38382
|
+
} else if (roles.includes("EduTeacher")) {
|
|
38383
|
+
history.push(HOMEPAGE_EDU_TEACHER);
|
|
38384
|
+
}
|
|
38354
38385
|
});
|
|
38355
38386
|
}, function (err) {
|
|
38356
|
-
var _err$
|
|
38387
|
+
var _err$response3, _err$response3$data;
|
|
38357
38388
|
|
|
38358
38389
|
dispatch(setAlert({
|
|
38359
38390
|
type: "danger",
|
|
38360
|
-
message: ((_err$
|
|
38391
|
+
message: ((_err$response3 = err.response) === null || _err$response3 === void 0 ? void 0 : (_err$response3$data = _err$response3.data) === null || _err$response3$data === void 0 ? void 0 : _err$response3$data.title) || err.message || "Login failed"
|
|
38361
38392
|
}));
|
|
38362
38393
|
localStorage.removeItem(ACCESS_TOKEN);
|
|
38363
38394
|
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
38364
38395
|
});
|
|
38365
38396
|
|
|
38366
|
-
return Promise.resolve(
|
|
38397
|
+
return Promise.resolve(_temp12 && _temp12.then ? _temp12.then(_temp11) : _temp11(_temp12));
|
|
38367
38398
|
} catch (e) {
|
|
38368
38399
|
return Promise.reject(e);
|
|
38369
38400
|
}
|
|
38370
38401
|
}, []);
|
|
38371
|
-
|
|
38402
|
+
|
|
38403
|
+
var getInfoGoogle = function getInfoGoogle() {
|
|
38372
38404
|
try {
|
|
38373
|
-
var
|
|
38405
|
+
var _temp14 = _catch(function () {
|
|
38406
|
+
return Promise.resolve(getGoogleClientId()).then(function (res) {
|
|
38407
|
+
setGoogleClientId(res.data.googleClientId);
|
|
38408
|
+
setGoogleRecaptchaId(res.data.googleCaptchaId);
|
|
38409
|
+
});
|
|
38410
|
+
}, function (err) {
|
|
38411
|
+
var _err$response4, _err$response4$data;
|
|
38412
|
+
|
|
38413
|
+
dispatch(setAlert({
|
|
38414
|
+
type: "danger",
|
|
38415
|
+
message: ((_err$response4 = err.response) === null || _err$response4 === void 0 ? void 0 : (_err$response4$data = _err$response4.data) === null || _err$response4$data === void 0 ? void 0 : _err$response4$data.title) || err.message || "Login failed"
|
|
38416
|
+
}));
|
|
38417
|
+
});
|
|
38418
|
+
|
|
38419
|
+
return Promise.resolve(_temp14 && _temp14.then ? _temp14.then(function () {}) : void 0);
|
|
38420
|
+
} catch (e) {
|
|
38421
|
+
return Promise.reject(e);
|
|
38422
|
+
}
|
|
38423
|
+
};
|
|
38424
|
+
|
|
38425
|
+
var fnIsCheckLogin = React.useCallback(function (type, data, token, clickHandler) {
|
|
38426
|
+
try {
|
|
38427
|
+
var _temp20 = function _temp20() {
|
|
38374
38428
|
dispatch(setLoading(false));
|
|
38375
38429
|
};
|
|
38376
38430
|
|
|
38377
38431
|
dispatch(setLoading(true));
|
|
38378
38432
|
|
|
38379
|
-
var
|
|
38380
|
-
return Promise.resolve(
|
|
38381
|
-
|
|
38382
|
-
|
|
38383
|
-
|
|
38384
|
-
|
|
38385
|
-
|
|
38386
|
-
|
|
38387
|
-
|
|
38388
|
-
|
|
38433
|
+
var _temp21 = _catch(function () {
|
|
38434
|
+
return Promise.resolve(checkUserGoogle(type, data)).then(function (res) {
|
|
38435
|
+
var checkUser = res.data;
|
|
38436
|
+
|
|
38437
|
+
var _temp17 = function () {
|
|
38438
|
+
if (checkUser) {
|
|
38439
|
+
var _temp22 = function _temp22() {
|
|
38440
|
+
return Promise.resolve(userLogin(_dataUser)).then(function () {
|
|
38441
|
+
dispatch(setIsLoginGoogle(false));
|
|
38442
|
+
});
|
|
38443
|
+
};
|
|
38444
|
+
|
|
38445
|
+
var _dataUser = {
|
|
38446
|
+
email: data.email,
|
|
38447
|
+
isLoginGoogle: true,
|
|
38448
|
+
rememberMe: false,
|
|
38449
|
+
password: "default",
|
|
38450
|
+
accessToken: token,
|
|
38451
|
+
captcha: "",
|
|
38452
|
+
loginType: LoginType.Google
|
|
38453
|
+
};
|
|
38454
|
+
|
|
38455
|
+
var _temp23 = function () {
|
|
38456
|
+
if (clickHandler != null) {
|
|
38457
|
+
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
38458
|
+
_dataUser.captcha = clickHandlerRes;
|
|
38459
|
+
});
|
|
38460
|
+
}
|
|
38461
|
+
}();
|
|
38462
|
+
|
|
38463
|
+
return _temp23 && _temp23.then ? _temp23.then(_temp22) : _temp22(_temp23);
|
|
38464
|
+
} else {
|
|
38465
|
+
dispatch(setIsLoginGoogle(true));
|
|
38466
|
+
}
|
|
38467
|
+
}();
|
|
38468
|
+
|
|
38469
|
+
if (_temp17 && _temp17.then) return _temp17.then(function () {});
|
|
38389
38470
|
});
|
|
38390
|
-
}, function () {
|
|
38391
|
-
|
|
38471
|
+
}, function (err) {
|
|
38472
|
+
var _err$response5, _err$response5$data;
|
|
38473
|
+
|
|
38474
|
+
dispatch(setAlert({
|
|
38475
|
+
type: "danger",
|
|
38476
|
+
message: ((_err$response5 = err.response) === null || _err$response5 === void 0 ? void 0 : (_err$response5$data = _err$response5.data) === null || _err$response5$data === void 0 ? void 0 : _err$response5$data.title) || err.message || "Login failed"
|
|
38477
|
+
}));
|
|
38392
38478
|
});
|
|
38393
38479
|
|
|
38394
|
-
return Promise.resolve(
|
|
38480
|
+
return Promise.resolve(_temp21 && _temp21.then ? _temp21.then(_temp20) : _temp20(_temp21));
|
|
38395
38481
|
} catch (e) {
|
|
38396
38482
|
return Promise.reject(e);
|
|
38397
38483
|
}
|
|
38398
38484
|
}, []);
|
|
38399
|
-
|
|
38485
|
+
|
|
38486
|
+
var submitLogin = function submitLogin(teacherId, clickHandler) {
|
|
38400
38487
|
try {
|
|
38401
|
-
var
|
|
38488
|
+
var _temp27 = function _temp27() {
|
|
38489
|
+
dispatch(setIsLoginGoogle(false));
|
|
38402
38490
|
dispatch(setLoading(false));
|
|
38403
38491
|
};
|
|
38404
38492
|
|
|
38405
38493
|
dispatch(setLoading(true));
|
|
38406
38494
|
|
|
38407
|
-
var
|
|
38408
|
-
|
|
38409
|
-
|
|
38410
|
-
|
|
38411
|
-
|
|
38412
|
-
|
|
38413
|
-
|
|
38414
|
-
|
|
38415
|
-
|
|
38495
|
+
var _temp28 = _catch(function () {
|
|
38496
|
+
var data = {
|
|
38497
|
+
firstName: infoUser.firstName,
|
|
38498
|
+
lastName: infoUser.lastName,
|
|
38499
|
+
imageUrl: infoUser.imageUrl,
|
|
38500
|
+
fullName: infoUser.fullName,
|
|
38501
|
+
email: infoUser.email,
|
|
38502
|
+
accessToken: infoUser.accessToken,
|
|
38503
|
+
teacherId: teacherId
|
|
38504
|
+
};
|
|
38505
|
+
return Promise.resolve(registerUserStudent(data)).then(function (res) {
|
|
38506
|
+
var _temp24 = function () {
|
|
38507
|
+
if (res.data) {
|
|
38508
|
+
return Promise.resolve(clickHandler()).then(function (clickHandlerRes) {
|
|
38509
|
+
var dataLogin = {
|
|
38510
|
+
email: infoUser.email,
|
|
38511
|
+
captcha: clickHandlerRes,
|
|
38512
|
+
isLoginGoogle: true,
|
|
38513
|
+
rememberMe: false,
|
|
38514
|
+
password: "default",
|
|
38515
|
+
accessToken: infoUser.accessToken,
|
|
38516
|
+
loginType: LoginType.Google
|
|
38517
|
+
};
|
|
38518
|
+
dispatch(setIsLoginGoogle(false));
|
|
38519
|
+
return Promise.resolve(userLogin(dataLogin)).then(function () {
|
|
38520
|
+
history.push(HOMEPAGE_STUDENT);
|
|
38521
|
+
});
|
|
38522
|
+
});
|
|
38523
|
+
}
|
|
38524
|
+
}();
|
|
38525
|
+
|
|
38526
|
+
if (_temp24 && _temp24.then) return _temp24.then(function () {});
|
|
38416
38527
|
});
|
|
38417
38528
|
}, function (err) {
|
|
38418
|
-
var _err$
|
|
38529
|
+
var _err$response6, _err$response6$data;
|
|
38419
38530
|
|
|
38420
38531
|
dispatch(setAlert({
|
|
38421
38532
|
type: "danger",
|
|
38422
|
-
message: ((_err$
|
|
38533
|
+
message: ((_err$response6 = err.response) === null || _err$response6 === void 0 ? void 0 : (_err$response6$data = _err$response6.data) === null || _err$response6$data === void 0 ? void 0 : _err$response6$data.title) || err.message || "Login failed"
|
|
38423
38534
|
}));
|
|
38424
|
-
localStorage.removeItem(ACCESS_TOKEN);
|
|
38425
|
-
sessionStorage.removeItem(ACCESS_TOKEN);
|
|
38426
38535
|
});
|
|
38427
38536
|
|
|
38428
|
-
return Promise.resolve(
|
|
38537
|
+
return Promise.resolve(_temp28 && _temp28.then ? _temp28.then(_temp27) : _temp27(_temp28));
|
|
38429
38538
|
} catch (e) {
|
|
38430
38539
|
return Promise.reject(e);
|
|
38431
38540
|
}
|
|
38432
|
-
}
|
|
38433
|
-
|
|
38541
|
+
};
|
|
38542
|
+
|
|
38543
|
+
var getInformationSetting = function getInformationSetting() {
|
|
38434
38544
|
try {
|
|
38435
|
-
|
|
38436
|
-
|
|
38437
|
-
|
|
38438
|
-
|
|
38545
|
+
var _temp30 = _catch(function () {
|
|
38546
|
+
return Promise.resolve(getSchoolSettings()).then(function (res) {
|
|
38547
|
+
dispatch(setSandboxMode(res.data.isSandboxMode));
|
|
38548
|
+
});
|
|
38549
|
+
}, function (err) {
|
|
38550
|
+
console.error(err);
|
|
38551
|
+
});
|
|
38439
38552
|
|
|
38440
|
-
return Promise.resolve(
|
|
38553
|
+
return Promise.resolve(_temp30 && _temp30.then ? _temp30.then(function () {}) : void 0);
|
|
38441
38554
|
} catch (e) {
|
|
38442
38555
|
return Promise.reject(e);
|
|
38443
38556
|
}
|
|
38444
|
-
}, [executeRecaptcha]);
|
|
38445
|
-
var handleVerify = React.useCallback(function () {}, []);
|
|
38446
|
-
React.useEffect(function () {
|
|
38447
|
-
checkResetTokenRequest(token, key);
|
|
38448
|
-
}, []);
|
|
38449
|
-
return {
|
|
38450
|
-
defaultInfo: defaultInfo$1,
|
|
38451
|
-
forgotPasswordRequest: forgotPasswordRequest,
|
|
38452
|
-
checkResetTokenRequest: checkResetTokenRequest,
|
|
38453
|
-
validLink: validLink,
|
|
38454
|
-
resetPasswordRequest: resetPasswordRequest,
|
|
38455
|
-
openLogin: openLogin,
|
|
38456
|
-
toggle: toggle,
|
|
38457
|
-
isShowNewPassword: isShowNewPassword,
|
|
38458
|
-
setIsShowNewPassword: setIsShowNewPassword,
|
|
38459
|
-
isShowReTypePassword: isShowReTypePassword,
|
|
38460
|
-
setIsShowReTypePassword: setIsShowReTypePassword,
|
|
38461
|
-
clickHandler: clickHandler,
|
|
38462
|
-
handleVerify: handleVerify,
|
|
38463
|
-
initialValues: initialValues
|
|
38464
38557
|
};
|
|
38465
|
-
};
|
|
38466
38558
|
|
|
38467
|
-
var
|
|
38468
|
-
|
|
38469
|
-
|
|
38470
|
-
|
|
38471
|
-
var
|
|
38472
|
-
|
|
38473
|
-
|
|
38559
|
+
var fnLoginSSO = function fnLoginSSO(clickHandler) {
|
|
38560
|
+
try {
|
|
38561
|
+
msalInstance.handleRedirectPromise().then(function (tokenResponse) {
|
|
38562
|
+
try {
|
|
38563
|
+
var _temp33 = function () {
|
|
38564
|
+
if (!tokenResponse) {
|
|
38565
|
+
var accounts = msalInstance.getAllAccounts();
|
|
38474
38566
|
|
|
38475
|
-
var
|
|
38476
|
-
|
|
38567
|
+
var _temp34 = function () {
|
|
38568
|
+
if (accounts.length === 0) {
|
|
38569
|
+
msalInstance.loginRedirect();
|
|
38570
|
+
} else {
|
|
38571
|
+
var currentAccount = accounts[0];
|
|
38572
|
+
return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
|
|
38573
|
+
}
|
|
38574
|
+
}();
|
|
38477
38575
|
|
|
38478
|
-
|
|
38479
|
-
|
|
38480
|
-
|
|
38481
|
-
|
|
38576
|
+
if (_temp34 && _temp34.then) return _temp34.then(function () {});
|
|
38577
|
+
} else {
|
|
38578
|
+
var currentAccount = tokenResponse.account;
|
|
38579
|
+
return Promise.resolve(getCurrentAccount(currentAccount, clickHandler)).then(function () {});
|
|
38580
|
+
}
|
|
38581
|
+
}();
|
|
38482
38582
|
|
|
38483
|
-
|
|
38484
|
-
|
|
38485
|
-
|
|
38486
|
-
|
|
38487
|
-
|
|
38488
|
-
|
|
38489
|
-
|
|
38490
|
-
|
|
38491
|
-
|
|
38492
|
-
|
|
38493
|
-
});
|
|
38494
|
-
} catch (e) {
|
|
38495
|
-
return Promise.reject(e);
|
|
38496
|
-
}
|
|
38583
|
+
return Promise.resolve(_temp33 && _temp33.then ? _temp33.then(function () {}) : void 0);
|
|
38584
|
+
} catch (e) {
|
|
38585
|
+
return Promise.reject(e);
|
|
38586
|
+
}
|
|
38587
|
+
})["catch"](function (err) {
|
|
38588
|
+
console.error(err);
|
|
38589
|
+
});
|
|
38590
|
+
return Promise.resolve();
|
|
38591
|
+
} catch (e) {
|
|
38592
|
+
return Promise.reject(e);
|
|
38497
38593
|
}
|
|
38498
|
-
}
|
|
38499
|
-
var handleChange = formikProps.handleChange,
|
|
38500
|
-
handleSubmit = formikProps.handleSubmit,
|
|
38501
|
-
values = formikProps.values,
|
|
38502
|
-
touched = formikProps.touched,
|
|
38503
|
-
errors = formikProps.errors;
|
|
38504
|
-
return React__default.createElement("div", {
|
|
38505
|
-
className: "" + styles["box-login"]
|
|
38506
|
-
}, React__default.createElement("div", {
|
|
38507
|
-
className: "" + styles["block-login"]
|
|
38508
|
-
}, React__default.createElement("div", {
|
|
38509
|
-
className: "" + styles["block-form"]
|
|
38510
|
-
}, React__default.createElement("div", {
|
|
38511
|
-
className: "d-flex align-items-center mb-4"
|
|
38512
|
-
}, React__default.createElement("img", {
|
|
38513
|
-
src: "" + getStaticFileUrl("/images/isb-icon.png"),
|
|
38514
|
-
className: styles["school-icon"] + " mr-3"
|
|
38515
|
-
}), React__default.createElement("p", {
|
|
38516
|
-
className: styles["school-name"] + " mb-0"
|
|
38517
|
-
}, school.schoolName)), React__default.createElement("p", {
|
|
38518
|
-
className: styles["title-login"] + " "
|
|
38519
|
-
}, "Forgot password"), React__default.createElement("p", {
|
|
38520
|
-
className: styles["recover-account"] + " mb-5"
|
|
38521
|
-
}, "Enter email to recover your account"), React__default.createElement("div", {
|
|
38522
|
-
className: "w-100"
|
|
38523
|
-
}, React__default.createElement(reactstrap.Input, {
|
|
38524
|
-
type: "text",
|
|
38525
|
-
name: "email",
|
|
38526
|
-
id: "email",
|
|
38527
|
-
placeholder: "Input email",
|
|
38528
|
-
onChange: handleChange,
|
|
38529
|
-
value: values.email
|
|
38530
|
-
}), touched.email && errors.email && React__default.createElement(ErrorHandler, {
|
|
38531
|
-
text: errors.email
|
|
38532
|
-
})), React__default.createElement(reactRouterDom.Link, {
|
|
38533
|
-
to: "/login",
|
|
38534
|
-
className: styles["link-to-login"] + " mt-2"
|
|
38535
|
-
}, "Return to login"), React__default.createElement(reactGoogleRecaptchaV3.GoogleReCaptcha, {
|
|
38536
|
-
action: "forgetPass",
|
|
38537
|
-
onVerify: handleVerify
|
|
38538
|
-
}), React__default.createElement(reactstrap.Col, {
|
|
38539
|
-
className: "p-0"
|
|
38540
|
-
}, React__default.createElement("button", {
|
|
38541
|
-
className: styles["btn-login"] + " mt-5",
|
|
38542
|
-
onClick: function onClick() {
|
|
38543
|
-
return handleSubmit();
|
|
38544
|
-
}
|
|
38545
|
-
}, "Continue")))));
|
|
38546
|
-
});
|
|
38547
|
-
};
|
|
38594
|
+
};
|
|
38548
38595
|
|
|
38549
|
-
var
|
|
38550
|
-
|
|
38551
|
-
|
|
38552
|
-
|
|
38553
|
-
|
|
38554
|
-
|
|
38596
|
+
var getCurrentAccount = function getCurrentAccount(account, clickHandler) {
|
|
38597
|
+
try {
|
|
38598
|
+
var fullName = account.name;
|
|
38599
|
+
var infoLogin = {
|
|
38600
|
+
firstName: fullName.split(' ').slice(0, -1).join(' '),
|
|
38601
|
+
lastName: fullName.split(' ').slice(-1).join(' '),
|
|
38602
|
+
fullName: fullName,
|
|
38603
|
+
imageUrl: "",
|
|
38604
|
+
email: account.username,
|
|
38605
|
+
accessToken: account.idTokenClaims.aio,
|
|
38606
|
+
googleId: account.tenantId
|
|
38607
|
+
};
|
|
38608
|
+
dispatch(setInforUserGoogle(infoLogin));
|
|
38609
|
+
return Promise.resolve(fnIsCheckLogin(TypeLogin.MicrosoftSSO, infoLogin, account.idTokenClaims.aio, clickHandler)).then(function () {});
|
|
38610
|
+
} catch (e) {
|
|
38611
|
+
return Promise.reject(e);
|
|
38612
|
+
}
|
|
38613
|
+
};
|
|
38555
38614
|
|
|
38556
|
-
var
|
|
38557
|
-
|
|
38558
|
-
|
|
38559
|
-
resetPasswordRequest = _useForgotPassword.resetPasswordRequest,
|
|
38560
|
-
isShowNewPassword = _useForgotPassword.isShowNewPassword,
|
|
38561
|
-
setIsShowNewPassword = _useForgotPassword.setIsShowNewPassword,
|
|
38562
|
-
isShowReTypePassword = _useForgotPassword.isShowReTypePassword,
|
|
38563
|
-
setIsShowReTypePassword = _useForgotPassword.setIsShowReTypePassword,
|
|
38564
|
-
initialValues = _useForgotPassword.initialValues;
|
|
38615
|
+
var initInformationSSO = function initInformationSSO() {
|
|
38616
|
+
try {
|
|
38617
|
+
var _msalInstance = new msalBrowser.PublicClientApplication(msalConfig);
|
|
38565
38618
|
|
|
38566
|
-
|
|
38567
|
-
|
|
38568
|
-
|
|
38569
|
-
|
|
38570
|
-
onSubmit: function onSubmit(values) {
|
|
38571
|
-
resetPasswordRequest(values);
|
|
38619
|
+
setMsalInstance(_msalInstance);
|
|
38620
|
+
return Promise.resolve();
|
|
38621
|
+
} catch (e) {
|
|
38622
|
+
return Promise.reject(e);
|
|
38572
38623
|
}
|
|
38573
|
-
}
|
|
38574
|
-
|
|
38575
|
-
|
|
38576
|
-
|
|
38577
|
-
|
|
38578
|
-
|
|
38579
|
-
|
|
38580
|
-
|
|
38581
|
-
|
|
38582
|
-
|
|
38583
|
-
|
|
38584
|
-
|
|
38585
|
-
|
|
38586
|
-
|
|
38587
|
-
|
|
38588
|
-
|
|
38589
|
-
|
|
38590
|
-
|
|
38591
|
-
|
|
38592
|
-
|
|
38593
|
-
|
|
38594
|
-
|
|
38595
|
-
|
|
38596
|
-
|
|
38597
|
-
|
|
38598
|
-
|
|
38599
|
-
|
|
38600
|
-
|
|
38601
|
-
|
|
38602
|
-
|
|
38603
|
-
|
|
38604
|
-
|
|
38605
|
-
})), React__default.createElement("div", {
|
|
38606
|
-
className: "" + styles["form-user-name"]
|
|
38607
|
-
}, React__default.createElement(PasswordInput, {
|
|
38608
|
-
isShowPassword: isShowNewPassword,
|
|
38609
|
-
togglePasswordVisible: function togglePasswordVisible() {
|
|
38610
|
-
return setIsShowNewPassword(!isShowNewPassword);
|
|
38611
|
-
},
|
|
38612
|
-
onChange: function onChange(e) {
|
|
38613
|
-
return setFieldValue("password", e.target.value);
|
|
38614
|
-
}
|
|
38615
|
-
}), touched.password && errors.password && React__default.createElement(ErrorHandler, {
|
|
38616
|
-
text: errors.password
|
|
38617
|
-
})), React__default.createElement("div", {
|
|
38618
|
-
className: "" + styles["form-user-name"]
|
|
38619
|
-
}, React__default.createElement(PasswordInput, {
|
|
38620
|
-
placeholder: "Confirm Password",
|
|
38621
|
-
isShowPassword: isShowReTypePassword,
|
|
38622
|
-
togglePasswordVisible: function togglePasswordVisible() {
|
|
38623
|
-
return setIsShowReTypePassword(!isShowReTypePassword);
|
|
38624
|
-
},
|
|
38625
|
-
onChange: function onChange(e) {
|
|
38626
|
-
return setFieldValue("reEnterPassword", e.target.value);
|
|
38627
|
-
}
|
|
38628
|
-
}), touched.reEnterPassword && errors.reEnterPassword && React__default.createElement(ErrorHandler, {
|
|
38629
|
-
text: errors.reEnterPassword
|
|
38630
|
-
}))) : React__default.createElement(React__default.Fragment, null, React__default.createElement("p", {
|
|
38631
|
-
className: styles["recover-account"] + " mb-5"
|
|
38632
|
-
}, "Invalid reset password link"), React__default.createElement("p", {
|
|
38633
|
-
className: "w-100"
|
|
38634
|
-
}, "It may have been accessed before or expired or you have just tried to reset another account's password"))), validLink && React__default.createElement(reactstrap.Col, {
|
|
38635
|
-
className: "p-0"
|
|
38636
|
-
}, React__default.createElement("button", {
|
|
38637
|
-
className: styles["btn-login"] + " " + styles["btn-rounder"] + " mt-4",
|
|
38638
|
-
onClick: function onClick() {
|
|
38639
|
-
return handleSubmit();
|
|
38640
|
-
}
|
|
38641
|
-
}, "SET A NEW PASSWORD"))))), React__default.createElement(reactstrap.Col, {
|
|
38642
|
-
lg: 4,
|
|
38643
|
-
md: 4,
|
|
38644
|
-
className: "" + styles["img-box"]
|
|
38645
|
-
}, React__default.createElement("img", {
|
|
38646
|
-
src: getStaticFileUrl("/images/img-login.png"),
|
|
38647
|
-
className: "" + styles["img-login"]
|
|
38648
|
-
})));
|
|
38649
|
-
});
|
|
38624
|
+
};
|
|
38625
|
+
|
|
38626
|
+
React.useEffect(function () {
|
|
38627
|
+
var redirectUrl = window.location.href;
|
|
38628
|
+
|
|
38629
|
+
if (!!msalInstance && redirectUrl.includes("code") && redirectUrl.includes("client_info")) {
|
|
38630
|
+
fnLoginSSO();
|
|
38631
|
+
}
|
|
38632
|
+
}, [JSON.stringify(msalInstance)]);
|
|
38633
|
+
React.useEffect(function () {
|
|
38634
|
+
getInformationSetting();
|
|
38635
|
+
initInformationSSO();
|
|
38636
|
+
getSchoolInfo();
|
|
38637
|
+
}, []);
|
|
38638
|
+
return {
|
|
38639
|
+
defaultInfo: defaultInfo$1,
|
|
38640
|
+
userLogin: userLogin,
|
|
38641
|
+
openLogin: openLogin,
|
|
38642
|
+
toggle: toggle,
|
|
38643
|
+
isShowPassword: isShowPassword,
|
|
38644
|
+
setIsShowPassword: setIsShowPassword,
|
|
38645
|
+
fnIsCheckLogin: fnIsCheckLogin,
|
|
38646
|
+
isLoginGoogle: isLoginGoogle,
|
|
38647
|
+
infoUser: infoUser,
|
|
38648
|
+
submitLogin: submitLogin,
|
|
38649
|
+
googleClientId: googleClientId,
|
|
38650
|
+
googleRecaptchaId: googleRecaptchaId,
|
|
38651
|
+
handleCancelModelAssign: handleCancelModelAssign,
|
|
38652
|
+
openModelAssign: openModelAssign,
|
|
38653
|
+
fnLoginSSO: fnLoginSSO,
|
|
38654
|
+
school: school
|
|
38655
|
+
};
|
|
38650
38656
|
};
|
|
38651
38657
|
|
|
38652
38658
|
var DASHBOARD$1 = "/";
|
|
@@ -38898,7 +38904,14 @@ var Login = function Login(props) {
|
|
|
38898
38904
|
googleRecaptchaId = _useLogin.googleRecaptchaId,
|
|
38899
38905
|
handleCancelModelAssign = _useLogin.handleCancelModelAssign,
|
|
38900
38906
|
school = _useLogin.school,
|
|
38901
|
-
openModelAssign = _useLogin.openModelAssign
|
|
38907
|
+
openModelAssign = _useLogin.openModelAssign,
|
|
38908
|
+
setIsShowPassword = _useLogin.setIsShowPassword,
|
|
38909
|
+
fnIsCheckLogin = _useLogin.fnIsCheckLogin,
|
|
38910
|
+
isLoginGoogle = _useLogin.isLoginGoogle,
|
|
38911
|
+
submitLogin = _useLogin.submitLogin,
|
|
38912
|
+
infoUser = _useLogin.infoUser,
|
|
38913
|
+
googleClientId = _useLogin.googleClientId,
|
|
38914
|
+
isShowPassword = _useLogin.isShowPassword;
|
|
38902
38915
|
|
|
38903
38916
|
React.useEffect(function () {
|
|
38904
38917
|
isLogin && (document.title = LOGIN_TITLE);
|
|
@@ -38927,7 +38940,14 @@ var Login = function Login(props) {
|
|
|
38927
38940
|
defaultInfo: defaultInfo,
|
|
38928
38941
|
onCancelModelAssign: handleCancelModelAssign,
|
|
38929
38942
|
openModelAssign: openModelAssign,
|
|
38930
|
-
school: school
|
|
38943
|
+
school: school,
|
|
38944
|
+
fnIsCheckLogin: fnIsCheckLogin,
|
|
38945
|
+
googleClientId: googleClientId,
|
|
38946
|
+
infoUser: infoUser,
|
|
38947
|
+
isLoginGoogle: isLoginGoogle,
|
|
38948
|
+
isShowPassword: isShowPassword,
|
|
38949
|
+
setIsShowPassword: setIsShowPassword,
|
|
38950
|
+
submitLogin: submitLogin
|
|
38931
38951
|
}), isForgotPassword && React__default.createElement(BlockForgetPassword, {
|
|
38932
38952
|
school: school
|
|
38933
38953
|
})), isResetPassword && React__default.createElement(BlockResetPassword, null), isCreatePassword && React__default.createElement(BlockCreatePassword, null), React__default.createElement("a", {
|
|
@@ -45667,12 +45687,17 @@ var UserDetail = function UserDetail() {
|
|
|
45667
45687
|
return handleToggleModel();
|
|
45668
45688
|
}
|
|
45669
45689
|
}, React__default.createElement(reactstrap.ModalHeader, null, "Assign Teacher"), React__default.createElement(reactstrap.ModalBody, null, React__default.createElement(TeacherSelector, {
|
|
45670
|
-
|
|
45671
|
-
|
|
45690
|
+
isMulti: true,
|
|
45691
|
+
value: teacherOptions.filter(function (r) {
|
|
45692
|
+
var _values$teacherUserId;
|
|
45693
|
+
|
|
45694
|
+
return (_values$teacherUserId = values.teacherUserId) === null || _values$teacherUserId === void 0 ? void 0 : _values$teacherUserId.includes(r.value);
|
|
45672
45695
|
}) || null,
|
|
45673
45696
|
options: teacherOptions,
|
|
45674
45697
|
onChange: function onChange(e) {
|
|
45675
|
-
return setFieldValue("teacherUserId", e.
|
|
45698
|
+
return setFieldValue("teacherUserId", e.map(function (i) {
|
|
45699
|
+
return i.value;
|
|
45700
|
+
}));
|
|
45676
45701
|
},
|
|
45677
45702
|
placeholder: t("select_teacher"),
|
|
45678
45703
|
className: "flex-grow-1 mb-3"
|