Tags:
create new tag
view all tags

Question

Me again. smile

I got the plugin to work, but the page isn't getting the "successful!" feedback. In looking at the code, the $query parameter gets set fine (for everything) in the _finishSendEmail function.

However, in the _handleSendEmailTag function, when this line is called: my $query = TWiki::Func::getCgiQuery();

$query only looks like this if I dump the data:

( { '.charset' => 'ISO-8859-1', '.parameters' => [], '.path_info' => '/TWiki/SendEmailPlugin', '.fieldnames' => {} }, 'CGI' );

so it's missing pretty much everything that should be set.

Environment

TWiki version: unspecified
TWiki plugins: DefaultPlugin, EmptyPlugin, InterwikiPlugin
Server OS:  
Web server:  
Perl version:  
Client OS:  
Web Browser:  
Categories: Plugins

-- MichelleHedstrom - 08 Feb 2008

Answer

ALERT! If you answer a question - or someone answered one of your questions - please remember to edit the page and set the status to answered. The status selector is below the edit box.

Strange. I don't see anything wrong on my test machine. I did have to setup WebMasterEmail in configure first though. What happens if you don't enter anything in the form and press send?

-- ArthurClemens - 08 Feb 2008

The same thing happens. We have the webmaster email stuff set already.

-- MichelleHedstrom - 09 Feb 2008

Specifically we're losing the errorStatus value somewhere between _finishSendEmail() and _handleSendEmailTag. It goes in... it gets lost. So handleSendEmailTag terminates early, not knowing what status to present. From looking at the debugging messages, it looks like we have different IDs for the CGI hash:

| 06 Mar 2008 - 13:03 | sendEmail start
| 06 Mar 2008 - 13:03 | sendEmail query=CGI=HASH(0x1263180)
...
| 06 Mar 2008 - 13:03 | _finishSendEmail query=CGI=HASH(0x1263180)
...
| 06 Mar 2008 - 13:03 | _handleSendEmailTag query CGI=HASH(0x126327c)
The hash the errorStatus goes into is not the one we're trying to read from?

-- VickiBrown - 06 Mar 2008

Sorry, closing this question after more than 30 days of inactivity. Feel free to re-open if needed.

-- PeterThoeny - 01 May 2008

I'm having this same problem. I think the reason the CGI hash is different is that what's actually happening is an HTTP redirect from the sendemail script (which is the one calling _finishSendEmail()) to the view script (which is the one calling _handleSendEmailTag()). Normally you wouldn't expect to be able to carry a query parameter across an HTTP redirect, but apparently TWiki has some "passthru" feature (the third argument to Func::redirectCgiQuery) which claims to be able to do that, by saving the parameters somehow locally. However, in this case it seems to be failing for us.

-- Michael Shulman - 2013-01-29

Ah, I found the problem. See TWikibug:Item7132 for a description and a patch.

-- Michael Shulman - 2013-01-29

Change status to:
Edit | Attach | Watch | Print version | History: r7 < r6 < r5 < r4 < r3 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r7 - 2013-01-29 - MichaelShulman
 
  • 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.