'Test weekly summary email was sent to the Lead destination inbox.', 'test_queued' => 'The test weekly summary could not send immediately, so it was saved in the fallback mail queue for retry.', 'test_failed' => 'The test weekly summary email could not be sent. Check the site mail setup and try again.', 'missing_recipient' => 'Add a Lead destination inbox before sending a test weekly summary.', 'unknown_action' => 'Weekly summary action was not recognised. No email was sent.', ]; $setup_weekly_summary_notice_message = $setup_weekly_summary_notice_messages[$setup_weekly_summary_notice_key] ?? ''; $setup_weekly_summary_notice_type = in_array($setup_weekly_summary_notice_key, ['test_sent'], true) ? 'success' : 'warning'; $matewa_fallback_mail_notice_key = isset($_GET['matewa_fallback_mail_notice']) ? sanitize_key(wp_unslash($_GET['matewa_fallback_mail_notice'])) : ''; $matewa_fallback_mail_notice_messages = [ 'retry_sent' => 'Queued email retry completed. At least one saved email was sent.', 'retry_none' => 'No queued emails were waiting to retry.', 'retry_failed' => 'Retry attempted, but at least one queued email still could not be sent.', 'unknown_action'=> 'Fallback mail action was not recognised.', ]; $matewa_fallback_mail_notice_message = $matewa_fallback_mail_notice_messages[$matewa_fallback_mail_notice_key] ?? ''; $matewa_fallback_mail_notice_type = in_array($matewa_fallback_mail_notice_key, ['retry_sent', 'retry_none'], true) ? 'success' : 'warning'; $matewa_fallback_mail_queue_count = function_exists('matewa_fallback_mail_queue_count') ? matewa_fallback_mail_queue_count() : 0; $matewa_fallback_mail_status_label = function_exists('matewa_fallback_mail_status_label') ? matewa_fallback_mail_status_label() : 'Mail route ready.'; $matewa_fallback_mail_last_error = function_exists('matewa_fallback_mail_last_error_label') ? matewa_fallback_mail_last_error_label() : ''; $matewa_setup_key_notice_key = isset($_GET['matewa_setup_key_notice']) ? sanitize_key(wp_unslash($_GET['matewa_setup_key_notice'])) : ''; $matewa_setup_key_panel_should_open = '' !== $matewa_setup_key_notice_key; // AGENCYSETUPKEYDROPDOWNRENDERFIX1: // The client-site setup key panel is a collapsed support/agency utility on Setup. // Keep a defensive include here so the panel still renders if load order changes. if (!function_exists('matewa_agency_client_setup_key_render_panel') && defined('MATEWA_PLUGIN_DIR')) { $matewa_setup_key_module = MATEWA_PLUGIN_DIR . 'includes/agency-client-setup-key.php'; if (is_readable($matewa_setup_key_module)) { require_once $matewa_setup_key_module; } } $matewa_show_setup_remote_key_panel = function_exists('matewa_agency_client_setup_key_render_panel'); $matewa_support_step_number = $matewa_show_setup_remote_key_panel ? '6' : '5'; $matewa_display_pages_step_number = $matewa_show_setup_remote_key_panel ? '7' : '6'; $matewa_language_controls_allowed = function_exists('matewa_is_pro') ? matewa_is_pro() : false; $matewa_i18n_languages = []; $matewa_i18n_languages_file = defined('MATEWA_PLUGIN_DIR') ? MATEWA_PLUGIN_DIR . 'public/i18n/languages.json' : ''; if ($matewa_i18n_languages_file && is_readable($matewa_i18n_languages_file)) { $matewa_i18n_raw = json_decode((string) file_get_contents($matewa_i18n_languages_file), true); if (is_array($matewa_i18n_raw)) { foreach ($matewa_i18n_raw as $matewa_lang_code => $matewa_lang_meta) { if (!is_array($matewa_lang_meta)) { continue; } $matewa_code = strtolower(str_replace('_', '-', sanitize_text_field((string) ($matewa_lang_meta['code'] ?? $matewa_lang_code)))); if ('en' === $matewa_code) { continue; } if ('' === $matewa_code) { continue; } $matewa_i18n_languages[$matewa_code] = [ 'code' => $matewa_code, 'englishName' => sanitize_text_field((string) ($matewa_lang_meta['englishName'] ?? $matewa_code)), 'nativeName' => sanitize_text_field((string) ($matewa_lang_meta['nativeName'] ?? ($matewa_lang_meta['englishName'] ?? $matewa_code))), 'flagEmoji' => sanitize_text_field((string) ($matewa_lang_meta['flagEmoji'] ?? '')), 'flagFile' => sanitize_file_name((string) ($matewa_lang_meta['flag'] ?? '')), 'flagExists' => '' !== sanitize_file_name((string) ($matewa_lang_meta['flag'] ?? '')) && file_exists(dirname($matewa_i18n_languages_file) . '/flags/' . sanitize_file_name((string) ($matewa_lang_meta['flag'] ?? ''))), ]; } } } $matewa_selected_default_language = isset($widget_default_language) ? strtolower(str_replace('_', '-', (string) $widget_default_language)) : 'auto'; if ('en' === $matewa_selected_default_language) { $matewa_selected_default_language = 'en-gb'; } $matewa_selected_visible_languages = []; foreach (explode(',', isset($widget_visible_languages) ? (string) $widget_visible_languages : '') as $matewa_visible_language_code) { $matewa_visible_language_code = strtolower(str_replace('_', '-', trim($matewa_visible_language_code))); if ('en' === $matewa_visible_language_code) { $matewa_visible_language_code = 'en-gb'; } if ('' !== $matewa_visible_language_code) { $matewa_selected_visible_languages[$matewa_visible_language_code] = true; } } ?>
Set the business details, WhatsApp number, inbox and key details your widget needs.
Use full international format, for example 447900123456.
Used for account, product and trial messages. It is not the lead inbox.
Shown inside the widget experience.
Helps future setup suggestions match your trade.
Free hands enquiries to WhatsApp. Email lead delivery and reporting unlock with Pro.
Choose where new enquiries go.
Your Free widget continues to hand visitors directly to WhatsApp.
New website leads are emailed here. Use your sales or enquiries inbox.
Raw lead details are kept for , then cleared. Dashboard totals stay.
Add your Pro licence key, or upgrade directly.
For security, saved keys are hidden after saving and are not printed back into the page. Leave this field blank to keep the saved key, or enter a new key to replace it.
After entering a paid licence or private access key, use this to save the hidden key and recheck access immediately.
Turn the website widget on and choose whether visitors can select a country code.
Auto follows the website language first.
Only needed if an agency is pushing a saved setup pack into this client site.
Only open this if support asks.
This shows safe plan status only. Endpoint URLs, registry payloads, hashes, install IDs and raw validation data stay hidden.
Free displays the widget on every page. Upgrade to Pro to choose individual pages.
Choose whether the widget appears everywhere or only on selected pages.
Page-by-page targeting unlocks with Pro.
Tick the pages where the widget should appear.