EmailVerification by kixe

E-Mail Verification and Domain Validation via API. Checks an email address against blacklist and availability of mailhost. Blacklisted domains and email addresses are simply stored in a text file. Easy to edit.

EMAIL VERIFICATION

Functional API for E-Mail and Domain Verification.

  • Email address verification against domain black- and whitelist (automated updates via online service trashmail-blacklist.org)
  • Determination of availability of a mailhost. (MX and A Resource Record)
  • Validation of Top Level Domains. (list of TLDs (punycode encoded) pulled from IANA stored in local textfile, automated monthly update)
  • Syntax validation of domainnames
  • Syntax validation of hostnames (punycode encoded)

Domains are listed in easy to edit text files blacklist.txt and whitelist.txt which are stored in the repository of this module.

API Usage


// get module  
$mailcheck = $modules->get('EmailVerification');

// return bool/ string - automatted update of blacklist file
$mailcheck->blacklisted(email|domain)

// return bool - validate a top level domain, checks against IANA list
$mailcheck->validTLD(tld)

// return array of punycoded TLDs - cyclic updated, data pulled from IANA
$mailcheck->getTLDs(cycle=2592000)

// return string - domain part of an email address
$mailcheck->getDomain($str)

// return bool - checks syntax converts to punycode
$mailcheck->validDomainName(domain);

// return bool - checks punycode encoded syntax
$mailcheck->validHostName(host);

// return bool - checks syntax and accessibility
$mailcheck->validHost(email|domain)

// add a single value to blacklist, remove from whitelist
// return false or string (domain)
$mailcheck->blacklist(email|domain)

// add a single value to whitelist, remove from blacklist
// return false or string (domain)
$mailcheck->whitelist(email|domain)

License


GNU-GPLv3

Author


kixe (Christoph Thelen)

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Latest news

  • ProcessWire Weekly #550
    In the 550th issue of ProcessWire Weekly we're going to check out the latest core updates, introduce a new third party module called PagefileMetadata, and more. Read on!
    Weekly.pw / 23 November 2024
  • Custom Fields Module
    This week we look at a new ProFields module named Custom Fields. This module provides a way to rapidly build out ProcessWire fields that contain any number of subfields/properties within them.
    Blog / 30 August 2024
  • Subscribe to weekly ProcessWire news

“ProcessWire is like a breath of fresh air. So powerful yet simple to build with and customise, and web editors love it too.” —Margaret Chatwin, Web developer