Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic Improved Email Checking V1.1 for Y2.5/2.5.2 (Read 2161 times)
Derek Barnstorm
God Member
*****
Offline



Posts: 1146
Location: Warwickshire
Joined: Mar 23rd, 2008
Gender: Male
Improved Email Checking V1.1 for Y2.5/2.5.2
Dec 10th, 2012 at 10:41pm
Print Post  
Improved Email Check on Registration

Description:
-----------------
What does it do?

- it checks valid syntax on given email address.
- it checks if the domain exists given in the address.
- it checks if the user is known on the given SMTP server.
- it checks if the smtp server(s) are online and valid.
- it checks if the users mailbox is full.

Also it adds a second email field on registration for verification of typing errors.

Known restrictions:
- Not all mailservers reply the same if a user does not exist and you may be amazed how many stupid domains exists, like hotlmail.com and such, so not every typo will be caught on domain check.

Note that this mod needs Net:: DNS to be installed on your server.

Credits:
----------
This Mod was originally coded by the late great Spikecity (Ron Hartendorp) for YaBB 2.1. He gave me permission to update any of his Mods when I updated YaBB Zodiac, Random Quotes and XFire in Profile Mods of his, so I figured it was time that this Mod made a comeback.

Link to original Mod: http://www.boardmod.org/yabb2/YaBB.pl?num=1175352831

Notes:
--------
I've added an enable/disable setting in this version - one reason being that it's sometimes useful for admins to test the registration process with false details. I'll probably add it to more places than just the registration page too at some point.

Screenshots:
------------------
Admin Center - Forum Settings - Members - Registration:


Registration page:


Error message:


Zip Package:
-----------------
improved_email_check_on_registration_11.mod
cgi-bin/yabb2/Modules/Mail/CheckUser.pm

Installation:
----------------
1) Modify YaBB files using BoardMod or manually.
2) Upload modified files to your server in ASCII mode.
3) Upload the 'Mail' folder to the 'yabb2/Modules/' directory in ASCII mode.
4) Go to Admin Center - Forum Settings - Members - Registration to enable the feature.

Files to edit:
-----------------
Admin/ModList.pl
Admin/NewSettings.pl
Admin/Settings_Main.pl
Languages/English/Admin.lng
Languages/English/Error.lng
Languages/English/Register.lng
Sources/Register.pl

Mod History:
----------------
V1.0 First release by Spikecity for YaBB 2.1 - 11th February 2007
V1.1 - Updated for YaBB 2.5/2.5.2 by Derek Barnstorm - 10th December 2012
  
Back to top
 
IP Logged
 
Derek Bullock
Full Member
***
Offline


I love Camp Oven Cooking

Posts: 184
Location: Brisbane
Joined: Nov 9th, 2007
Gender: Male
Re: Improved Email Checking V1.1 for Y2.5/2.5.2
Reply #1 - Dec 13th, 2012 at 3:11pm
Print Post  
Installed and working. Below error message when attempting to register unknown email address

Quote:
The entered e-mail address: dog@dog.com is invalid. The error is: User is unknown on SMTP server.


Cheers
  

Back to top
WWW  
IP Logged
 
Derek Bullock
Full Member
***
Offline


I love Camp Oven Cooking

Posts: 184
Location: Brisbane
Joined: Nov 9th, 2007
Gender: Male
Re: Improved Email Checking V1.1 for Y2.5/2.5.2
Reply #2 - Dec 13th, 2012 at 3:17pm
Print Post  
In error log two minutes after installation. Looking good

Quote:
The entered e-mail address: retirea.sw@gmail.com is invalid. The error is: User is unknown on SMTP server.
  

Back to top
WWW  
IP Logged
 
Derek Barnstorm
God Member
*****
Offline



Posts: 1146
Location: Warwickshire
Joined: Mar 23rd, 2008
Gender: Male
Re: Improved Email Checking V1.1 for Y2.5/2.5.2
Reply #3 - Dec 13th, 2012 at 7:26pm
Print Post  
Thanks for the feedback, Derek. Smiley
  
Back to top
 
IP Logged
 
pyragony
Junior Member
**
Offline


abgeschlafft und ausgebufft

Posts: 85
Location: Eichenau
Joined: Apr 26th, 2008
Gender: Male
Re: Improved Email Checking V1.1 for Y2.5/2.5.2
Reply #4 - Dec 18th, 2012 at 6:32pm
Print Post  
Code
Select All
<edit file>
Languages/German/Admin.lng
</edit file>

<search for>
);

%floodtxt = (
</search for>

<add before>
'imp_email_check' => 'Aktivieren der verbesserten eMail-Prüfung?<br /><span class="small">Prüft, ob die eMail-Domäne vorhanden ist, wenn der Benutzer auf dem angegebenen SMTP-Server bekannt ist, ob die SMTP-Server`s online und gültig sind und wenn die Benutzer Mailbox voll ist. Auch wird ein zweites eMail-Feld zur Prüfung einefügt.<br />Note: Net::DNS muß auf Ihrem Server installiert sein.</span>',
</add before>

<edit file>
Languages/German/Error.lng
</edit file>

<search for>
## Register ##
</search for>

<add after>
'email_mismatch'	 => "Ihre eMail-Adressen stimmen nicht überein.",
</add after>

<edit file>
Languages/German/Register.lng
</edit file>

<search for>
'81' => 'Wählen Sie ein Passwort',
</search for>

<add before>
'70' => 'Wiederhole/Überprüfe eMail',
</add before>

<search for>
);

%pwstrengthmeter_txt = (
</search for>

<add before>
'error_email2' => 'Überprüfen sie Ihre eMail.',
'error_email3' => 'Ihre eMail-Adressen sind nicht identisch.',
</add before>

<search for>
1;
</search for>

<add before>

%mail_check = (
'address' => 'Die eingegeben eMail-Adresse:',
'invalid' => 'ist ungültig.',
'reason' => 'Der Fehler ist:',
'0' => 'Prüfung erfolgreich.',
'1' => 'Falscher Syntax in der eMail-Adresse.',
'2' => 'Maildomain in der eMail-Adresse des genannten ist unbekannt.',
'3' => 'Es gab einen Timeout während der DNS Kontrollen.',
'4' => 'Benutzer ist unbekannt auf dem SMTP-Server.',
'5' => 'Es gab einen Timeout während des SMTP checks.',
'6' => 'Alle SMTP-Server, die für die eMail-Domain gefunden wurden, sind während der SMTP-Prüfung unerreichbar..',
'7' => 'Mailbox ist vorübergehend voll, aber wahrscheinlich ein gültiger Benutzername.',
);

</add before> 




Code
Select All
<edit file>
Languages/German_Du/Admin.lng
</edit file>

<search for>
);

%floodtxt = (
</search for>

<add before>
'imp_email_check' => 'Aktivieren der verbesserten eMail-Prüfung?<br /><span class="small">Prüft, ob die eMail-Domäne vorhanden ist, wenn der Benutzer auf dem angegebenen SMTP-Server bekannt ist, ob die SMTP-Server`s online und gültig sind und wenn die Benutzer Mailbox voll ist. Auch wird ein zweites eMail-Feld zur Prüfung eingefügt.<br />Note: Net::DNS muß auf Deinem Server installiert sein.</span>',
</add before>

<edit file>
Languages/German_Du/Error.lng
</edit file>

<search for>
## Register ##
</search for>

<add after>
'email_mismatch'	 => "Deine eMail-Adressen stimmen nicht überein.",
</add after>

<edit file>
Languages/German_Du/Register.lng
</edit file>

<search for>
'81' => 'Wähle ein Passwort',
</search for>

<add before>
'70' => 'Wiederhole/Überprüfe eMail',
</add before>

<search for>
);

%pwstrengthmeter_txt = (
</search for>

<add before>
'error_email2' => 'Überprüfe Deine eMail.',
'error_email3' => 'Deine eMail-Adressen sind nicht identisch.',
</add before>

<search for>
1;
</search for>

<add before>

%mail_check = (
'address' => 'Die eingegeben eMail-Adresse:',
'invalid' => 'ist ungültig.',
'reason' => 'Der Fehler ist:',
'0' => 'Prüfung erfolgreich.',
'1' => 'Falscher Syntax in der eMail-Adresse.',
'2' => 'Maildomain in der eMail-Adresse des genannten ist unbekannt.',
'3' => 'Es gab einen Timeout während der DNS Kontrollen.',
'4' => 'Benutzer ist unbekannt auf dem SMTP-Server.',
'5' => 'Es gab einen Timeout während des SMTP checks.',
'6' => 'Alle SMTP-Server, die für die eMail-Domain gefunden wurden, sind während der SMTP-Prüfung unerreichbar.',
'7' => 'Mailbox ist vorübergehend voll, aber wahrscheinlich ein gültiger Benutzername.',
);

</add before> 

  

Back to top
WWW  
IP Logged
 
Derek Barnstorm
God Member
*****
Offline



Posts: 1146
Location: Warwickshire
Joined: Mar 23rd, 2008
Gender: Male
Re: Improved Email Checking V1.1 for Y2.5/2.5.2
Reply #5 - Dec 18th, 2012 at 7:42pm
Print Post  
Thanks pyragony! I'll add them to the package next time it's updated.
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint