MOBILE-4362 login: Add do not show again to qr code information
parent
610534ef31
commit
b2a179a70a
|
@ -53,6 +53,7 @@ export const GET_STARTED_URL = 'https://moodle.com';
|
||||||
export class CoreLoginHelperProvider {
|
export class CoreLoginHelperProvider {
|
||||||
|
|
||||||
static readonly ONBOARDING_DONE = 'onboarding_done';
|
static readonly ONBOARDING_DONE = 'onboarding_done';
|
||||||
|
static readonly FAQ_QRCODE_INFO_DONE = 'qrcode_info_done';
|
||||||
static readonly FAQ_URL_IMAGE_HTML = '<img src="assets/img/login/faq_url.png" role="presentation" alt="">';
|
static readonly FAQ_URL_IMAGE_HTML = '<img src="assets/img/login/faq_url.png" role="presentation" alt="">';
|
||||||
static readonly FAQ_QRCODE_IMAGE_HTML = '<img src="assets/img/login/faq_qrcode.png" role="presentation" alt="">';
|
static readonly FAQ_QRCODE_IMAGE_HTML = '<img src="assets/img/login/faq_qrcode.png" role="presentation" alt="">';
|
||||||
|
|
||||||
|
@ -1221,26 +1222,33 @@ export class CoreLoginHelperProvider {
|
||||||
* @returns Promise resolved if the user accepts to scan QR.
|
* @returns Promise resolved if the user accepts to scan QR.
|
||||||
*/
|
*/
|
||||||
async showScanQRInstructions(): Promise<void> {
|
async showScanQRInstructions(): Promise<void> {
|
||||||
await new Promise<void>((resolve, reject) => {
|
const dontShowWarning = await CoreConfig.get(CoreLoginHelperProvider.FAQ_QRCODE_INFO_DONE, 0);
|
||||||
CoreDomUtils.showAlertWithOptions({
|
if (dontShowWarning) {
|
||||||
header: Translate.instant('core.login.faqwhereisqrcode'),
|
return;
|
||||||
message: Translate.instant(
|
}
|
||||||
'core.login.faqwhereisqrcodeanswer',
|
|
||||||
{ $image: CoreLoginHelperProvider.FAQ_QRCODE_IMAGE_HTML },
|
const message = Translate.instant(
|
||||||
),
|
'core.login.faqwhereisqrcodeanswer',
|
||||||
buttons: [
|
{ $image: '<div class="text-center">'+ CoreLoginHelperProvider.FAQ_QRCODE_IMAGE_HTML + '</div>' },
|
||||||
{
|
);
|
||||||
text: Translate.instant('core.cancel'),
|
const header = Translate.instant('core.login.faqwhereisqrcode');
|
||||||
role: 'cancel',
|
|
||||||
handler: () => reject(new CoreCanceledError()),
|
try {
|
||||||
},
|
const dontShowAgain = await CoreDomUtils.showPrompt(
|
||||||
{
|
message,
|
||||||
text: Translate.instant('core.next'),
|
header,
|
||||||
handler: () => resolve(),
|
Translate.instant('core.dontshowagain'),
|
||||||
},
|
'checkbox',
|
||||||
],
|
{ okText: Translate.instant('core.next'), cancelText: Translate.instant('core.cancel') },
|
||||||
});
|
);
|
||||||
});
|
|
||||||
|
if (dontShowAgain) {
|
||||||
|
CoreConfig.set(CoreLoginHelperProvider.FAQ_QRCODE_INFO_DONE, 1);
|
||||||
|
}
|
||||||
|
} catch {
|
||||||
|
// User canceled.
|
||||||
|
throw new CoreCanceledError('');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -165,6 +165,7 @@ export class CoreSettingsDevPage implements OnInit {
|
||||||
await CoreUserTours.resetTours();
|
await CoreUserTours.resetTours();
|
||||||
|
|
||||||
await CoreConfig.delete(CoreLoginHelperProvider.ONBOARDING_DONE);
|
await CoreConfig.delete(CoreLoginHelperProvider.ONBOARDING_DONE);
|
||||||
|
await CoreConfig.delete(CoreLoginHelperProvider.FAQ_QRCODE_INFO_DONE);
|
||||||
|
|
||||||
CoreDomUtils.showToast('User tours have been reseted');
|
CoreDomUtils.showToast('User tours have been reseted');
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue