start_controls_section(
'aefe_filter_section',
[
'label' => __('Email Filtering', 'advanced-email-filter-for-elementor-forms'),
'tab' => Controls_Manager::TAB_CONTENT,
]
);
// Whitelist Control
$widget->add_control(
'aefe_whitelist',
[
'label' => __('Whitelist Patterns', 'advanced-email-filter-for-elementor-forms'),
'type' => Controls_Manager::TEXTAREA,
'description' => __(
'Whitelisted emails will override all blacklist rules. ,
Format:
- Full email: user@domain.com
- Domain wildcard: *@domain.com
- TLD block: *.org
- Partial match: admin@
Separate multiple patterns with commas. Example: *@company.com, ceo@, *.trusted-domain.org',
'advanced-email-filter-for-elementor-forms'
),
'placeholder' => __('Example: *@trusted.com, admin@, *.org', 'advanced-email-filter-for-elementor-forms'),
]
);
$widget->add_control(
'aefe_blacklist',
[
'label' => __('Blocked Patterns', 'advanced-email-filter-for-elementor-forms'),
'type' => Controls_Manager::TEXTAREA,
'description' => __(
'Blacklist takes effect unless whitelisted.
Format:
- Full email: spam@domain.com
- Domain block: @spamdomain.com
- TLD block: *.ru
- Partial match: temp-
Separate multiple patterns with commas. Example: @spam.com, *.xyz, fake@',
'advanced-email-filter-for-elementor-forms'
),
'placeholder' => __('Example: @spamdomain.com, *.ru, baduser@', 'advanced-email-filter-for-elementor-forms'),
'separator' => 'before',
]
);
$widget->add_control(
'aefe_business_email',
[
'label' => __('Business Email Only', 'advanced-email-filter-for-elementor-forms'),
'type' => Controls_Manager::SWITCHER,
'description' => __('Only allow business/company email addresses (blocks free email providers like gmail.com, yahoo.com, etc.) Note: Our database is updated every 7 days, but some domains might still pass through as new business email services appear daily.', 'advanced-email-filter-for-elementor-forms'),
'default' => '',
'separator' => 'before',
]
);
$widget->add_control(//aefe_block_disposable
'aefe_block_disposable',
[
'label' => __('Block Disposable Emails', 'advanced-email-filter-for-elementor-forms'),
'type' => Controls_Manager::SWITCHER,
'description' => __('Block temporary/disposable email addresses. Note: Our database is updated every 7 days, but some domains might still pass through as new disposable email services appear daily.', 'advanced-email-filter-for-elementor-forms'),
'default' => '',
'separator' => 'before',
]
);
$widget->end_controls_section();
}
}