Tags:
create new tag
view all tags

Bug: User Registration is broken in DEVELOP

After filling in TWikiRegistration (pub version, with passwords), I get an error message:

invalid action () in register at /home/aclemens/visiblearea.com/devtwiki/lib/TWiki/UI/Register.pm line 101
   TWiki::UI::Register::register_cgi('TWiki=HASH(0x80f57ac)') called at /home/aclemens/visiblearea.com/devtwiki/lib/TWiki/UI.pm line 140
   TWiki::UI::run('TWiki::UI::Register', 'register_cgi') called at register line 32

Test case

Go to http://visiblearea.com/devtwiki/bin/view/TWiki/TWikiRegistration and try to add a user.

Environment

TWiki version: DEVELOP 3778
TWiki plugins: DefaultPlugin, EmptyPlugin, InterwikiPlugin
Server OS: Linux
Web server: Apache/1.3.31
Perl version: 5.6.1
Client OS:  
Web Browser:  

-- ArthurClemens - 09 Mar 2005

Impact and Available Solutions

Follow up

Possibly related: when using the non-pub version, I get a (OK) confirmation screen that I should wait for an confirmation e-mail. I get it, click on the link, and go to a new confirmation screen that tells me I can edit my personal page. But the link has a question mark: it does not exist. Also the page does not exist on the TWikiUsers page, plus that the user entry is added at the bottom, not in the user list (still with question mark).

-- ArthurClemens - 09 Mar 2005

You have an out of date registration form.

The up to date registration form has a hidden field called "action". The code in lib/TWiki/UI/Register.pm has a case statement that dispatches on this.

How do I know? I had a highly customized TWikiRegistration screen on one of my sites. I got bitten by this too!

Go to http://svn.twiki.org/svn/twiki/branches/DEVELOP/data/TWiki/TWikiRegistration.txt and scroll down to the last few lines of the form. There you will see

</tr><tr>
  <td valign="top" align="right"> &nbsp; 
      <input type="hidden" name="topic" value="%TOPIC%" />
      <input type="hidden" name="action" value="register" />
  </td>
  <td> 
     <input type="submit" value=" Submit " /> &nbsp;&nbsp; (Fields marked =<Font color="red">**</font>= are required) 
   </td>
</tr>
</table>
</form>

It is the
      <input type="hidden" name="action" value="register" />
which is the important thing.

-- AntonAylward - 09 Mar 2005

I've updated the registration form page (pub version). Still more errors:

  1. Using the top form (without password) (Why are there 2 forms on this page ???), I get the error as above
  2. Using the bottom form (with password), I get the feedback page, the confirmation email, the feedback page. All OK, except that the user is added at the bottom of the TWikiUsers page, and I can't login! The entry in .htpasswd is created (except with a login name and not a wikiname, which I don't understand), but I just cannot login. Trying both ArthurClemens and aclemens, I get these errors in the log:
[Thu Mar 10 15:47:48 2005] [error] [client 194.109.230.189] user ArthurClemens not found: /devtwiki/bin/edit/Main/ArthurClemens
[Thu Mar 10 15:48:13 2005] [error] [client 194.109.230.189] user aclemens: authentication failure for "/devtwiki/bin/edit/Main/ArthurClemens": password mismatch

-- ArthurClemens - 10 Mar 2005

I'm looking at http://svn.twiki.org/svn/twiki/branches/DEVELOP/data/TWiki/TWikiRegistration.txt and I only see one form.

I look at the Pub version and yes I see two forms. It looks to me like a copy-edit duplication. There in the middle is a

   %META:TOPICINFO{author="martincleaver" date="1099601309" format="1.0" version="1.10"}%

That shouldn't be there! Or rather the stuff above it shouldn't.

Arthur, check as well, go in at the command line, is there a file "Main/ArthurClemens" ? I may be an old command line UNIX hacker at heart, but tis an easy way to check for a lot of things. Its one reason I like TWiki, it doens't hide stuff in some SQL database!

I don't fully understand the interplay of WikiName and LoginName that Martin has come up with.

Sorry I can't help more.

-- AntonAylward - 11 Mar 2005

Hi Arthur, thanks for the error report. I Committed revision 3779 which eliminates the first form.

The LoginName/WikiName separation is a feature of RegisterCgiScriptRewrite: it means that the name you log in with can be an arbitrary string instead of a WikiName. e.g. mrjcleaver or an email address. A side effect is that you can rename a WikiName without needing to change the password file in the events that users register with an inappropriate WikiName.

That all said, it should allow you to log in and should insert the record into the correct place into the TWikiUsers file.

I'll investigate the registration errors you list in (2); please bare with me, I have a full load at the moment.

-- MartinCleaver - 11 Mar 2005

At revision 3814, I get this error:

[Tue Mar 15 14:44:16 2005] [error] [client 194.109.230.189] user arthurclemens: authentication failure for "/devtwiki/bin/edit/Main/ArthurClemens": password mismatch
egrep: Invalid content of \{\}

-- ArthurClemens - 15 Mar 2005

Fix record

Discussion

Edit | Attach | Watch | Print version | History: r8 < r7 < r6 < r5 < r4 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r8 - 2006-10-08 - SvenDowideit
 
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2026 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.