-
Notifications
You must be signed in to change notification settings - Fork 2
SL-346: add accessibility improvements for EAA compliance #320
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: SL-358/payment-field
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -21,17 +21,44 @@ | |
| */ | ||
|
|
||
| $(document).ready(function () { | ||
| function closeModal($modal) { | ||
| $modal.removeClass('open'); | ||
| var triggerButton = $modal.data('triggerButton'); | ||
| if (triggerButton) { | ||
| triggerButton.focus(); | ||
| } | ||
| } | ||
|
|
||
| $('.log-modal-overlay').on('click', function (event) { | ||
| $('.modal.open').removeClass('open'); | ||
| closeModal($(this).closest('.modal')); | ||
| event.preventDefault(); | ||
| }); | ||
|
|
||
| $('.js-log-modal-close').on('click', function (event) { | ||
| closeModal($(this).closest('.modal')); | ||
| event.preventDefault(); | ||
| }); | ||
|
|
||
| $(document).on('keydown', function (event) { | ||
| if (event.key === 'Escape') { | ||
| var $openModal = $('.modal.open'); | ||
| if ($openModal.length) { | ||
| closeModal($openModal); | ||
| event.preventDefault(); | ||
| } | ||
| } | ||
|
Comment on lines
+42
to
+49
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| }); | ||
|
|
||
| $('.js-log-button').on('click', function (event) { | ||
| var logId = $(this).data('log-id'); | ||
| var informationType = $(this).data('information-type'); | ||
| var $modal = $('#' + $(this).data('target')); | ||
|
|
||
| $modal.data('triggerButton', $(this)); | ||
|
|
||
| // NOTE: opening modal | ||
| $('#' + $(this).data('target')).addClass('open'); | ||
| $modal.addClass('open'); | ||
| $modal.find('.js-log-modal-close').focus(); | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
|
|
||
| // NOTE: if information has been set already we don't need to call ajax again. | ||
| if (!$('#log-modal-' + logId + '-' + informationType + ' .log-modal-content-data').hasClass('hidden')) { | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -168,7 +168,7 @@ export function ApiCredentials() { | |
| <button | ||
| type="button" | ||
| onClick={() => setShowApiPassword(!showApiPassword)} | ||
| className="sp-absolute sp-right-3 sp-top-1/2 sp--translate-y-1/2 sp-text-muted-foreground hover:sp-text-foreground sp-transition-colors" | ||
| className="sp-absolute sp-right-3 sp-top-1/2 sp--translate-y-1/2 sp-text-muted-foreground hover:sp-text-foreground sp-transition-colors sp-p-1 sp-min-w-[24px] sp-min-h-[24px] sp-flex sp-items-center sp-justify-center" | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| aria-label={showApiPassword ? t('hidePassword') : t('showPassword')} | ||
| > | ||
| {showApiPassword ? <EyeOff className="sp-h-4 sp-w-4" /> : <Eye className="sp-h-4 sp-w-4" />} | ||
|
|
@@ -330,7 +330,7 @@ export function ApiCredentials() { | |
| </Card>} | ||
|
|
||
| <div className="sp-flex sp-justify-end"> | ||
| <Button className="sp-min-w-[120px]" onClick={saveCredentials} disabled={saving}> | ||
| <Button className="sp-min-w-[120px]" onClick={saveCredentials} disabled={saving} aria-label={saving ? t('saving') : undefined}> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {saving ? <Loader2 className="sp-h-4 sp-w-4 sp-animate-spin" /> : t('saveChanges')} | ||
| </Button> | ||
| </div> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -90,7 +90,7 @@ export function EmailNotifications() { | |
| </Card> | ||
|
|
||
| <div className="sp-flex sp-justify-end"> | ||
| <Button className="sp-min-w-[120px]" onClick={saveEmailSettings} disabled={saving}> | ||
| <Button className="sp-min-w-[120px]" onClick={saveEmailSettings} disabled={saving} aria-label={saving ? t('saving') : undefined}> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {saving ? <Loader2 className="sp-h-4 sp-w-4 sp-animate-spin" /> : t('saveChanges')} | ||
| </Button> | ||
| </div> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -221,7 +221,7 @@ export function GeneralSettings() { | |
| </Card> | ||
|
|
||
| <div className="sp-flex sp-justify-end"> | ||
| <Button className="sp-min-w-[120px]" onClick={saveGeneralSettings} disabled={saving}> | ||
| <Button className="sp-min-w-[120px]" onClick={saveGeneralSettings} disabled={saving} aria-label={saving ? t('saving') : undefined}> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {saving ? <Loader2 className="sp-h-4 sp-w-4 sp-animate-spin" /> : t('saveChanges')} | ||
| </Button> | ||
| </div> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -48,7 +48,7 @@ function MultiSelect({ | |
| <button | ||
| type="button" | ||
| className="sp-flex sp-min-h-[36px] sp-w-full sp-items-center sp-justify-between sp-rounded-md sp-border sp-border-border sp-bg-card sp-px-3 sp-py-1.5 sp-text-left sp-text-sm sp-transition-colors hover:sp-bg-secondary/50 focus-visible:sp-outline-none focus-visible:sp-ring-2 focus-visible:sp-ring-ring" | ||
| aria-label={label} | ||
| aria-label={selected.length === 0 ? `${label}: ${placeholder}` : `${label}: ${selected.length} ${t('selected')}`} | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| > | ||
| {selected.length === 0 ? ( | ||
| <span className="sp-text-muted-foreground">{placeholder}</span> | ||
|
|
@@ -293,7 +293,7 @@ export function PaymentMethods() { | |
|
|
||
| {paymentMethods.length > 0 && ( | ||
| <div className="sp-flex sp-justify-end"> | ||
| <Button className="sp-min-w-[120px]" onClick={savePaymentMethods} disabled={saving}> | ||
| <Button className="sp-min-w-[120px]" onClick={savePaymentMethods} disabled={saving} aria-label={saving ? t('saving') : undefined}> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {saving ? <Loader2 className="sp-h-4 sp-w-4 sp-animate-spin" /> : t('saveChanges')} | ||
| </Button> | ||
| </div> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -305,7 +305,7 @@ export function PaymentProcessing() { | |
| </Card> | ||
|
|
||
| <div className="sp-flex sp-justify-end"> | ||
| <Button className="sp-min-w-[120px]" onClick={savePaymentProcessing} disabled={saving}> | ||
| <Button className="sp-min-w-[120px]" onClick={savePaymentProcessing} disabled={saving} aria-label={saving ? t('saving') : undefined}> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {saving ? <Loader2 className="sp-h-4 sp-w-4 sp-animate-spin" /> : t('saveChanges')} | ||
| </Button> | ||
| </div> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -19,22 +19,23 @@ | |
| *@copyright SIX Payment Services | ||
| *@license SIX Payment Services | ||
| *} | ||
| <div | ||
| <button | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| type="button" | ||
| class="btn btn-default button js-log-button" | ||
| data-toggle="modal" | ||
| data-log-id="{$log_id|escape:'htmlall':'UTF-8'}" | ||
| data-information-type="{$log_information_type|escape:'htmlall':'UTF-8'}" | ||
| data-target="log-modal-{$log_id|escape:'htmlall':'UTF-8'}-{$log_information_type|escape:'htmlall':'UTF-8'}" | ||
| > | ||
| {l s='View' mod='saferpayofficial'} | ||
| </div> | ||
| </button> | ||
|
|
||
| <div id="log-modal-{$log_id|escape:'htmlall':'UTF-8'}-{$log_information_type|escape:'htmlall':'UTF-8'}" class="modal"> | ||
| <div id="log-modal-{$log_id|escape:'htmlall':'UTF-8'}-{$log_information_type|escape:'htmlall':'UTF-8'}" class="modal" role="dialog" aria-modal="true" aria-labelledby="log-modal-title-{$log_id|escape:'htmlall':'UTF-8'}-{$log_information_type|escape:'htmlall':'UTF-8'}"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| <div class="log-modal-overlay"></div> | ||
|
|
||
| <div class="log-modal-window"> | ||
| <div class="log-modal-title"> | ||
| <h4> | ||
| <h4 id="log-modal-title-{$log_id|escape:'htmlall':'UTF-8'}-{$log_information_type|escape:'htmlall':'UTF-8'}"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {if $log_information_type === 'request'} | ||
| {$log_id|escape:'htmlall':'UTF-8'}: {l s='Request data' mod='saferpayofficial'} | ||
| {elseif $log_information_type === 'response'} | ||
|
|
@@ -43,10 +44,11 @@ | |
| {$log_id|escape:'htmlall':'UTF-8'}: {l s='Context data' mod='saferpayofficial'} | ||
| {/if} | ||
| </h4> | ||
| <button type="button" class="log-modal-close js-log-modal-close" aria-label="{l s='Close' mod='saferpayofficial'}">×</button> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
|
|
||
| <div class="log-modal-content"> | ||
| <div class="log-modal-content-spinner hidden"></div> | ||
| <div class="log-modal-content-spinner hidden" role="status" aria-label="{l s='Loading' mod='saferpayofficial'}"></div> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| <pre class="log-modal-content-data hidden"></pre> | ||
| </div> | ||
| </div> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -22,7 +22,7 @@ | |
|
|
||
| <tr> | ||
| <td> | ||
| <img src="{$card_img|escape:'htmlall':'UTF-8'}"> | ||
| <img src="{$card_img|escape:'htmlall':'UTF-8'}" alt="{$payment_method|escape:'htmlall':'UTF-8'}"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </td> | ||
| <td> | ||
| {$payment_method|escape:'htmlall':'UTF-8'} | ||
|
|
@@ -38,7 +38,8 @@ | |
| </td> | ||
| <td> | ||
| <a class="button lnk_view btn btn-default" | ||
| href="{$link->getModuleLink('saferpayofficial', {$controller|escape:'htmlall':'UTF-8'}, ['saved_card_id' => $saved_card_id|escape:'htmlall':'UTF-8'])|escape:'htmlall':'UTF-8' }"> | ||
| href="{$link->getModuleLink('saferpayofficial', {$controller|escape:'htmlall':'UTF-8'}, ['saved_card_id' => $saved_card_id|escape:'htmlall':'UTF-8'])|escape:'htmlall':'UTF-8' }" | ||
| aria-label="{l s='Remove card' mod='saferpayofficial'} {$card_number|escape:'htmlall':'UTF-8'}"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| <span> | ||
| {l s='Remove' mod='saferpayofficial'} | ||
| </span> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -29,9 +29,11 @@ | |
| {block name='page_content'} | ||
| <div class="card"> | ||
| <table class="table"> | ||
| <caption class="sr-only">{l s='Saved credit cards' mod='saferpayofficial'}</caption> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| <thead> | ||
| <tr> | ||
| <th> | ||
| <span class="sr-only">{l s='Card type' mod='saferpayofficial'}</span> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </th> | ||
| <th> | ||
| {l s='Credit card' mod='saferpayofficial'} | ||
|
|
@@ -43,16 +45,18 @@ | |
| {l s='Valid till' mod='saferpayofficial'} | ||
| </th> | ||
| <th> | ||
| {l s='Card' mod='saferpayofficial'} | ||
| {l s='Card number' mod='saferpayofficial'} | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </th> | ||
| <th> | ||
| {l s='Action' mod='saferpayofficial'} | ||
| </th> | ||
| </tr> | ||
| </thead> | ||
| <tbody> | ||
| {foreach $rows as $row} | ||
| {$row|cleanHtml nofilter} | ||
| {/foreach} | ||
| </tbody> | ||
|
Comment on lines
+55
to
+59
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </table> | ||
| </div> | ||
| {/block} | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -19,18 +19,18 @@ | |
| *@copyright SIX Payment Services | ||
| *@license SIX Payment Services | ||
| *} | ||
| <div style="display:none" class="alert alert-danger initialize-error" role="alert"> | ||
| <div style="display:none" class="alert alert-danger initialize-error" role="alert" aria-live="assertive"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {include file="module:saferpayofficial/views/templates/front/hosted-templates/partials/initialize_error.tpl"} | ||
| </div> | ||
|
|
||
| <div style="display: none" class="alert alert-danger submission-error" role="alert"> | ||
| <div style="display: none" class="alert alert-danger submission-error" role="alert" aria-live="assertive"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {include file="module:saferpayofficial/views/templates/front/hosted-templates/partials/submission_error.tpl"} | ||
| </div> | ||
|
|
||
| <div style="display:none" class="alert alert-danger internal-error" role="alert"> | ||
| <div style="display:none" class="alert alert-danger internal-error" role="alert" aria-live="assertive"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {include file="module:saferpayofficial/views/templates/front/hosted-templates/partials/internal_error.tpl"} | ||
| </div> | ||
|
|
||
| <div style="display: none" class="alert alert-danger validation-error" role="alert"> | ||
| <div style="display: none" class="alert alert-danger validation-error" role="alert" aria-live="assertive"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {include file="module:saferpayofficial/views/templates/front/hosted-templates/partials/validation_error.tpl"} | ||
| </div> | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -19,18 +19,18 @@ | |
| *@copyright SIX Payment Services | ||
| *@license SIX Payment Services | ||
| *} | ||
| <div style="display:none" class="alert alert-danger initialize-error" role="alert"> | ||
| <div style="display:none" class="alert alert-danger initialize-error" role="alert" aria-live="assertive"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {include file="./initialize_error.tpl"} | ||
| </div> | ||
|
|
||
| <div style="display: none" class="alert alert-danger submission-error" role="alert"> | ||
| <div style="display: none" class="alert alert-danger submission-error" role="alert" aria-live="assertive"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {include file="./submission_error.tpl"} | ||
| </div> | ||
|
|
||
| <div style="display:none" class="alert alert-danger internal-error" role="alert"> | ||
| <div style="display:none" class="alert alert-danger internal-error" role="alert" aria-live="assertive"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {include file="./internal_error.tpl"} | ||
| </div> | ||
|
|
||
| <div style="display: none" class="alert alert-danger validation-error" role="alert"> | ||
| <div style="display: none" class="alert alert-danger validation-error" role="alert" aria-live="assertive"> | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| {include file="./validation_error.tpl"} | ||
| </div> | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -34,21 +34,25 @@ | |
|
|
||
| <div class="container" id="main"> | ||
| <div class="form-group"> | ||
| <input class="form-control" id="fields-holder-name" readonly placeholder="{l s='Holder name' mod='saferpayofficial'}"> | ||
| <label for="fields-holder-name" class="sr-only">{l s='Holder name' mod='saferpayofficial'}</label> | ||
| <input class="form-control" id="fields-holder-name" readonly placeholder="{l s='Holder name' mod='saferpayofficial'}" aria-label="{l s='Holder name' mod='saferpayofficial'}"> | ||
|
Comment on lines
+37
to
+38
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
|
|
||
| <div class="form-group row"> | ||
| <div class="col-sm-12"> | ||
| <input class="form-control" id="fields-card-number" readonly placeholder="{l s='0000 0000 0000 0000' mod='saferpayofficial'}"> | ||
| <label for="fields-card-number" class="sr-only">{l s='Card number' mod='saferpayofficial'}</label> | ||
| <input class="form-control" id="fields-card-number" readonly placeholder="{l s='0000 0000 0000 0000' mod='saferpayofficial'}" aria-label="{l s='Card number' mod='saferpayofficial'}"> | ||
|
Comment on lines
+43
to
+44
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
| </div> | ||
|
|
||
| <div class="row"> | ||
| <div class="col-sm-6 col-xs-12 form-group"> | ||
| <input class="form-control" id="fields-expiration" readonly placeholder="{l s='MM/YYYY' mod='saferpayofficial'}"> | ||
| <label for="fields-expiration" class="sr-only">{l s='Expiration date' mod='saferpayofficial'}</label> | ||
| <input class="form-control" id="fields-expiration" readonly placeholder="{l s='MM/YYYY' mod='saferpayofficial'}" aria-label="{l s='Expiration date' mod='saferpayofficial'}"> | ||
|
Comment on lines
+50
to
+51
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
| <div class="col-sm-6 col-xs-12 form-group"> | ||
| <input class="form-control" id="fields-cvc" readonly placeholder="{l s='000' mod='saferpayofficial'}"> | ||
| <label for="fields-cvc" class="sr-only">{l s='CVC code' mod='saferpayofficial'}</label> | ||
| <input class="form-control" id="fields-cvc" readonly placeholder="{l s='000' mod='saferpayofficial'}" aria-label="{l s='CVC code' mod='saferpayofficial'}"> | ||
|
Comment on lines
+54
to
+55
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
| </div> | ||
|
|
||
|
|
@@ -67,21 +71,25 @@ | |
|
|
||
| <div class="container" id="main"> | ||
| <div class="form-group"> | ||
| <input class="form-control" id="fields-holder-name" readonly placeholder="{l s='Holder name' mod='saferpayofficial'}"> | ||
| <label for="fields-holder-name" class="sr-only">{l s='Holder name' mod='saferpayofficial'}</label> | ||
| <input class="form-control" id="fields-holder-name" readonly placeholder="{l s='Holder name' mod='saferpayofficial'}" aria-label="{l s='Holder name' mod='saferpayofficial'}"> | ||
|
Comment on lines
+74
to
+75
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
|
|
||
| <div class="form-group row"> | ||
| <div class="col-sm-12"> | ||
| <input class="form-control" id="fields-card-number" readonly placeholder="{l s='0000 0000 0000 0000' mod='saferpayofficial'}"> | ||
| <label for="fields-card-number" class="sr-only">{l s='Card number' mod='saferpayofficial'}</label> | ||
| <input class="form-control" id="fields-card-number" readonly placeholder="{l s='0000 0000 0000 0000' mod='saferpayofficial'}" aria-label="{l s='Card number' mod='saferpayofficial'}"> | ||
|
Comment on lines
+80
to
+81
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
| </div> | ||
|
|
||
| <div class="row"> | ||
| <div class="col-sm-6 col-xs-12 form-group"> | ||
| <input class="form-control" id="fields-expiration" readonly placeholder="{l s='MM/YYYY' mod='saferpayofficial'}"> | ||
| <label for="fields-expiration" class="sr-only">{l s='Expiration date' mod='saferpayofficial'}</label> | ||
| <input class="form-control" id="fields-expiration" readonly placeholder="{l s='MM/YYYY' mod='saferpayofficial'}" aria-label="{l s='Expiration date' mod='saferpayofficial'}"> | ||
|
Comment on lines
+87
to
+88
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
| <div class="col-sm-6 col-xs-12 form-group"> | ||
| <input class="form-control" id="fields-cvc" readonly placeholder="{l s='000' mod='saferpayofficial'}"> | ||
| <label for="fields-cvc" class="sr-only">{l s='CVC code' mod='saferpayofficial'}</label> | ||
| <input class="form-control" id="fields-cvc" readonly placeholder="{l s='000' mod='saferpayofficial'}" aria-label="{l s='CVC code' mod='saferpayofficial'}"> | ||
|
Comment on lines
+91
to
+92
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| </div> | ||
| </div> | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The
closeModalfunction correctly handles closing the modal and returning focus to the trigger button. This is a crucial accessibility pattern for modal dialogs, ensuring keyboard users can easily navigate back to their previous context.