YaBB Community and Support Forum
YaBB Home About YaBB Download YaBB YaBB Support Customize Your Forum Development Contribute to the Project
  Welcome, Guest. Please Login or Register


 
Pages: 1 2 3 4
Topic Tools
 
[Serious] Check usernames when registering (Read 17,695 times)
 Mar 5th, 2009 at 1:12am
There are no actions to perform.  

Jennie123 
Full Member
***
Offline
Posts: 307
My Location


None
[Serious] Check usernames when registering
I have 20,000 registered members.  My new users are complaining about how hard it is to register now because all the common, popular, and even some unusual usernames are already in use.  They almost give up looking for a username, and I'm certain many more do.

The registration page resets itself while trying to find a user name or if you get anything wrong it does the same thing. You have to fill out ALL the information again and again and again  while trying to find a user name.

You may want to offer a  line to see if a user name is available they checks it without resetting the form.
« Last Edit: Mar 25th, 2010 at 2:19am by N/A »  
 
IP Logged  
 Reply #1 - Mar 5th, 2009 at 1:25pm
There are no actions to perform.  

Corey Chapman 
YaBB Administrator
*****
Offline
Posts: 10,015
Rock Hill, South Carolina


YaBB 2.5
Re: Check usernames when registering
Unilat!

What about using Ajax for the registration form?  It will check the email address for proper syntax, verify the captcha code (if enabled), and check the username.  Each section of the form will refresh with the proper errors (or new captcha and error).  You never leave the form, unless everything is a success.  For those without Ajax supported systems, it takes the values and brings them back onto the refreshed page (except maybe the username which was wrong, the captcha, and the password).
« Last Edit: Mar 5th, 2009 at 1:25pm by Corey Chapman »  
...
722568493  
IP Logged  
 Reply #2 - Mar 5th, 2009 at 8:15pm
There are no actions to perform.  

deti 
Legacy Dev Team
Development Team
****
Offline
Posts: 2,650
Prien am Chiemsee, Germany


None
Re: Check usernames when registering
Good point!

Unilat can you write this? I suggest to check the

Choose user ID:
Choose displayed name:
Email:

input fields if the focus on each is gone after you went in one of them before, then send a request to the server. If all is OK, nothing happens. If the name or email is taken a red, bold text appears beneath the input field telling this.
« Last Edit: Mar 5th, 2009 at 8:17pm by deti »  
Was immer Du tun kannst
oder erträumst tun zu können,
beginne es.
Kühnheit besitzt Genie,
Macht und magische Kraft.
Beginne es jetzt.
Whatever you can do
or dream you can,
begin it.
Boldness has genius,
power and magic in it.
Begin it now.
J. W. Goethe
WWW  
IP Logged  
 Reply #3 - Mar 7th, 2009 at 2:17am
There are no actions to perform.  

Unilat 
Development Team
Theme Team
****
Offline
Posts: 1,047
Columbus Ohio, USA


None
Re: Check usernames when registering
I might get a chance to look at it tomorrow  Wink
 
 
IP Logged  
 Reply #4 - Jul 9th, 2009 at 1:54am
There are no actions to perform.  

Unilat 
Development Team
Theme Team
****
Offline
Posts: 1,047
Columbus Ohio, USA


None
Username and Email availability (AJAX)
This was asked a while ago and I finally had time to whip up the code. Test it out at:

http://nbvrl.servebeer.com/~shoutbox/cgi-bin/yabb2/YaBB.pl

This was written on 2.4 non database code. So it may or may not work on the base Y3 code. But I figured I'd better not write it on the new code as it is going to go through major changes and this could possibly be added to 2.x series instead of waiting until 3.0

Anyways, when you lose focus on the user id and email boxes a notification will appear beneath telling whether the user id/email is "Taken" or "Not Taken" and are color coded red and green.

Tell me whether its 2.x or 3.x and I'll provide the changes granted there are no errors you find first  Wink

Oh, and some same id's and emails that are taken so you can test:

ids: admin, Adderyiff
emails: bob@bob.com, calvar@columbus.rr.com

Beneath are possible replacement images rather than text which I created myself  Wink
« Last Edit: Jul 9th, 2009 at 2:58am by Unilat »  
Check.png (2 KB | 258 )
Check.png
Cross.png (2 KB | 281 )
Cross.png
 
IP Logged  
 Reply #5 - Jul 9th, 2009 at 3:36am
There are no actions to perform.  

Matt Siegman 
YaBB Legends (Inactive)
*
Offline
Posts: 3,380
Wichita, KS


None
Re: Username and Email availability (AJAX)
This is pretty neat.

All new features will go into Y3, so that's what you should target Wink

We're just starting the really big changes, so your code will probably still work with the current Y3 codebase.
 
-- Matt Siegman 8) Wish List
 
IP Logged  
 Reply #6 - Jul 9th, 2009 at 4:00am
There are no actions to perform.  

cepheid 
Senior Member
****
Offline
Posts: 516


None
Re: Username and Email availability (AJAX)
Great feature, this would certainly help on larger boards.  I'd recommend using text instead of images because the "X" doesn't tell people why the entry was rejected... having text would make it clear that "this username is already taken."

If you haven't done so already, this should also extend to the Displayed Name.

You might also want to update the "Taken" and "Not Taken" text to be a bit longer, e.g. "This username is already registered; please choose another" and/or "This username is available!"
« Last Edit: Jul 9th, 2009 at 4:02am by cepheid »  
WWW  
IP Logged  
 Reply #7 - Jul 9th, 2009 at 2:40pm
There are no actions to perform.  

Unilat 
Development Team
Theme Team
****
Offline
Posts: 1,047
Columbus Ohio, USA


None
Re: Username and Email availability (AJAX)
Try again. Included images and text as well as display name checking.

Taken display name: Unilat
« Last Edit: Jul 9th, 2009 at 2:42pm by Unilat »  
 
IP Logged  
 Reply #8 - Jul 9th, 2009 at 4:26pm
There are no actions to perform.  

deti 
Legacy Dev Team
Development Team
****
Offline
Posts: 2,650
Prien am Chiemsee, Germany


None
Re: Check usernames when registering
Unilat wrote on Mar 7th, 2009 at 2:17am:
I might get a chance to look at it tomorrow

Grin Tomorrow? 4 month have past. Grin

Wink

Good job Unilat!! Can you attach a zip with the changed files so I can overtake it into Y3?
« Last Edit: Jul 9th, 2009 at 4:31pm by deti »  
Was immer Du tun kannst
oder erträumst tun zu können,
beginne es.
Kühnheit besitzt Genie,
Macht und magische Kraft.
Beginne es jetzt.
Whatever you can do
or dream you can,
begin it.
Boldness has genius,
power and magic in it.
Begin it now.
J. W. Goethe
WWW  
IP Logged  
 Reply #9 - Jul 9th, 2009 at 5:17pm
There are no actions to perform.  

Unilat 
Development Team
Theme Team
****
Offline
Posts: 1,047
Columbus Ohio, USA


None
Re: Check usernames when registering
I have much more time now to provide fixes and new features since school is out. Work is pretty slow and I have time here (where I am now) to do things in between.

So anything you need just ask, especially AJAX features lol. But of course I'll modify other things as well. Sometimes AJAX can be tiring.  Tongue

Here are the changed files. All that needs to be done is find the appropriate place to put the strings from Register.pl. They are hardcoded into the printed javascript variables and should be moved to register.lng.
 
 
IP Logged  
 Reply #10 - Jul 9th, 2009 at 7:29pm
There are no actions to perform.  

cepheid 
Senior Member
****
Offline
Posts: 516


None
Re: Check usernames when registering
Unilat wrote on Jul 9th, 2009 at 2:40pm:
Try again. Included images and text as well as display name checking.

Looks great.  One thing: you might want to make the searches case-insensitive, especially for the email address and displayed name, since YaBB isn't case-sensitive on those.

(I'm not sure if YaBB is case-sensitive on usernames or not.)

Or, I can do it, plus add the appropriate Register.lng text, once it's integrated into SVN. Smiley
« Last Edit: Jul 9th, 2009 at 7:31pm by cepheid »  
WWW  
IP Logged  
 Reply #11 - Jul 9th, 2009 at 7:46pm
There are no actions to perform.  

Unilat 
Development Team
Theme Team
****
Offline
Posts: 1,047
Columbus Ohio, USA


None
Re: Check usernames when registering
I dont think YaBB is case sensitive when it comes to user ids. It would make sense not to be so two people werent named the same thing with only a variation in capital letters. If it is not, then go ahead and make the changes once the files are in SVN. deti probably will make the language changes before he submits them but if not then go ahead and do those too  Wink
 
 
IP Logged  
 Reply #12 - Jul 9th, 2009 at 7:57pm
There are no actions to perform.  

deti 
Legacy Dev Team
Development Team
****
Offline
Posts: 2,650
Prien am Chiemsee, Germany


None
Re: Check usernames when registering
Hmmm, Register.pl does it this way as I modified you sub Unilat:
Code Select All
sub checkUserAvail {
	my $taken = "false$INFO{'type'}";

	if ($INFO{'type'} eq "email") {
		$INFO{'email'} =~ s~\A\s+|\s+\z~~g;
		if (lc $INFO{'email'} eq lc &MemberIndex("check_exist", $INFO{'email'})) { $taken = "trueemail" };
	} elsif ($INFO{'type'} eq "display") {
		$INFO{'display'} =~ s~\A\s+|\s+\z~~g;
		if (lc $INFO{'display'} eq lc &MemberIndex("check_exist", $INFO{'display'})) { $taken = "truedisplay" };
	} elsif ($INFO{'type'} eq "user") {
		$INFO{'user'} =~ s~\A\s+|\s+\z~~g;
		$INFO{'user'} =~ s/\s/_/g;
		if (lc $INFO{'user'} eq lc &MemberIndex("check_exist", $INFO{'user'})) { $taken = "trueuser" };
	}

	print "Content-type: text/plain\n\n$taken";

	CORE::exit; # This is here only to avoid server error log entries!
} 

 
Was immer Du tun kannst
oder erträumst tun zu können,
beginne es.
Kühnheit besitzt Genie,
Macht und magische Kraft.
Beginne es jetzt.
Whatever you can do
or dream you can,
begin it.
Boldness has genius,
power and magic in it.
Begin it now.
J. W. Goethe
WWW  
IP Logged  
 Reply #13 - Jul 9th, 2009 at 9:26pm
There are no actions to perform.  

Jet Li 
Legacy Dev Team
Development Team
****
Offline
Posts: 6,588
Hong Kong


None
Re: Check usernames when registering
New
cgi-bin/yabb2/Languages/English/Register.lng
cgi-bin/yabb2/Sources/Register.pl
cgi-bin/yabb2/Sources/SubList.pl
cgi-bin/yabb2/Sources/UserSelect.pl
cgi-bin/yabb2/YaBB.pl
public_html/yabbfiles/ajax.js
public_html/yabbfiles/Templates/Forum/default/Check.png
public_html/yabbfiles/Templates/Forum/default/Cross.png
public_html/yabbfiles/Templates/Forum/yabb21/Check.png
public_html/yabbfiles/Templates/Forum/yabb21/Cross.png

in SVN.

Changelog:
=============
- Added user ID, Displayed Name and Email Ajax Check
 
...
PM me for YaBB Installation Service
WWW Jet Li 100000788351637  
IP Logged  
 Reply #14 - Jul 9th, 2009 at 11:03pm
There are no actions to perform.  

Unilat 
Development Team
Theme Team
****
Offline
Posts: 1,047
Columbus Ohio, USA


None
Re: Check usernames when registering
Is MemberIndex new? I had no clue it was there if its old!  Cheesy

Those changes are fine, although either way didnt make too much of a difference.
 
 
IP Logged  
Pages: 1 2 3 4
Topic Tools
 

Get Yet another Bulletin Board at SourceForge.net. Fast, secure and Free Open Source software downloads Support This Project BoardMod - YaBB features and templates YaBB Codex - support on installation and usage YaBB Toolbar for your browser

YaBB Facebook Group Page

Vulnerability Scanner

Valid RSS Valid XHTML Valid CSS Powered by Perl
YaBB Chat and Support Community » Powered by YaBB 3.0 Beta!
YaBB Forum Software © 2000-2011. All Rights Reserved.