Improve error & success messages

This commit is contained in:
Narek Zakarian 2023-09-07 16:22:03 +04:00
parent abd26dc016
commit 8104779900
No known key found for this signature in database
GPG key ID: 07AFD7E7A9C164A7
4 changed files with 7 additions and 11 deletions

View file

@ -1,8 +1,4 @@
#ppcp_order-tracking { #ppcp_order-tracking {
.tracking-info-message {
padding-left: 20px;
}
.error { .error {
color: red; color: red;
font-weight: bold; font-weight: bold;

View file

@ -99,14 +99,14 @@ document.addEventListener(
toggleLoaderVisibility() toggleLoaderVisibility()
if (!data.success || ! data.data.shipment) { if (!data.success || ! data.data.shipment) {
jQuery( "<span class='error tracking-info-message'>" + data.data.message + "</span>" ).insertAfter(submitButton); jQuery( "<p class='error tracking-info-message'>" + data.data.message + "</p>" ).insertAfter(submitButton);
setTimeout(()=> jQuery('.tracking-info-message').remove(),3000); setTimeout(()=> jQuery('.tracking-info-message').remove(),3000);
submitButton.removeAttribute('disabled'); submitButton.removeAttribute('disabled');
console.error(data); console.error(data);
throw Error(data.data.message); throw Error(data.data.message);
} }
jQuery( "<span class='success tracking-info-message'>" + data.data.message + "</span>" ).insertAfter(submitButton); jQuery( "<p class='success tracking-info-message'>" + data.data.message + "</p>" ).insertAfter(submitButton);
setTimeout(()=> jQuery('.tracking-info-message').remove(),3000); setTimeout(()=> jQuery('.tracking-info-message').remove(),3000);
jQuery(data.data.shipment).appendTo(shipmentsWrapper); jQuery(data.data.shipment).appendTo(shipmentsWrapper);
}); });
@ -145,13 +145,13 @@ document.addEventListener(
toggleLoaderVisibility() toggleLoaderVisibility()
if (!data.success) { if (!data.success) {
jQuery( "<span class='error tracking-info-message'>" + data.data.message + "</span>" ).insertAfter(updateShipment); jQuery( "<p class='error tracking-info-message'>" + data.data.message + "</p>" ).insertAfter(updateShipment);
setTimeout(()=> jQuery('.tracking-info-message').remove(),3000); setTimeout(()=> jQuery('.tracking-info-message').remove(),3000);
console.error(data); console.error(data);
throw Error(data.data.message); throw Error(data.data.message);
} }
jQuery( "<span class='success tracking-info-message'>" + data.data.message + "</span>" ).insertAfter(updateShipment); jQuery( "<p class='success tracking-info-message'>" + data.data.message + "</p>" ).insertAfter(updateShipment);
setTimeout(()=> jQuery('.tracking-info-message').remove(),3000); setTimeout(()=> jQuery('.tracking-info-message').remove(),3000);
}); });
}) })

View file

@ -406,7 +406,7 @@ class OrderTrackingEndpoint {
* @throws RuntimeException If validation failed. * @throws RuntimeException If validation failed.
*/ */
protected function validate_tracking_info( array $tracking_info ): void { protected function validate_tracking_info( array $tracking_info ): void {
$error_message = __( 'Missing required information:', 'woocommerce-paypal-payments' ); $error_message = __( 'Missing required information: ', 'woocommerce-paypal-payments' );
$empty_keys = array(); $empty_keys = array();
foreach ( $tracking_info as $key => $value ) { foreach ( $tracking_info as $key => $value ) {
@ -414,7 +414,7 @@ class OrderTrackingEndpoint {
continue; continue;
} }
$empty_keys[] = $key; $empty_keys[] = ucwords(str_replace('_', ' ', $key));;
} }
if ( empty( $empty_keys ) ) { if ( empty( $empty_keys ) ) {

View file

@ -121,7 +121,7 @@ class MetaBoxRenderer {
<?php endif; ?> <?php endif; ?>
<p> <p>
<label for="ppcp-tracking-tracking_number"><?php echo esc_html__( 'Tracking Number*', 'woocommerce-paypal-payments' ); ?></label> <label for="ppcp-tracking-tracking_number"><?php echo esc_html__( 'Tracking Number*', 'woocommerce-paypal-payments' ); ?></label>
<input type="text" class="ppcp-tracking-tracking_number" id="ppcp-tracking-tracking_number" name="ppcp-tracking[tracking_number]" /> <input type="text" class="ppcp-tracking-tracking_number" id="ppcp-tracking-tracking_number" name="ppcp-tracking[tracking_number]" maxlength="64" />
</p> </p>
<p> <p>
<label for="ppcp-tracking-status"><?php echo esc_html__( 'Status', 'woocommerce-paypal-payments' ); ?></label> <label for="ppcp-tracking-status"><?php echo esc_html__( 'Status', 'woocommerce-paypal-payments' ); ?></label>