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.

Twitter updates

  • New TinyMCE 6.2.0 Inputfield released for ProcessWire— More
    28 October 2022
  • This week we take a look at a new rich text editor for ProcessWire, why we chose it, some highlights, screenshots, and why we think you’ll like it— More
    21 October 2022
  • This week we have ProcessWire 3.0.206 on the dev branch and a new version of the ProDevTools UserActivity module, which we'll take a closer look at in this post— More
    7 October 2022

Latest news

  • ProcessWire Weekly #446
    In the 446th issue of ProcessWire Weekly we're going to check out the latest weekly updates, introduce a new third party module called AlpineJS, and more. Read on!
    Weekly.pw / 26 November 2022
  • New rich text editor for ProcessWire
    This week we take a look at a new rich text editor for ProcessWire, why we chose it, some highlights, screenshots, and why we think you’ll like it.
    Blog / 21 October 2022
  • Subscribe to weekly ProcessWire news

“Yesterday I sent the client a short documentation for their ProcessWire-powered website. Today all features already used with no questions. #cmsdoneright—Marc Hinse, Web designer/developer