I would do this with chained onSuccess handlers. Each one would  
trigger a new request to a different endpoint, carrying some token to  
identify the visitor.

$('button').observe('click',function(evt){
        //do your lookup
        new Ajax.Request('lookup.php',{
                parameters:{id:'<?=$id?>'},
                onCreate:function(){
                        $('message').update('searching...');;
                },
                onSuccess:function(transport){
                        //make your pdf
                        $('message').update('making PDF...');;
                        new Ajax.Request('pdf.php',{
                                parameters:{id:'<?=$id?>'},
                                onCreate:..., //you get the idea
                                onSuccess:...
                        });
                }
        }};
});

Walter

On Dec 9, 2009, at 11:11 AM, joe t. wrote:

> i think i've seen examples of this, but can't recall where, and could
> use some guidance.
>
> Obviously it's easy to handle a 1:1 Request/Response
>
> How can i do a true 1:many process? For instance:
> Client takes a single action which requires the server to perform 3
> tasks:
> * Query database
> * Generate PDF
> * Generate email, attach PDF, and send
>
> How can i respond to the client as EACH task is accomplished without
> ending the request chain?
> "Looking up your data . . ." (time-based dots as delay indicator)
> "Creating PDF . . ."
> "Email sent" (or failed, as the case may be)
>
> Is this done with HTTP 2xx headers? Recursive callbacks? If anyone can
> point me in the right direction (which include samples), i'd be
> grateful.
>
> Thanks.
> -joe t.
>
> --
>
> You received this message because you are subscribed to the Google  
> Groups "Prototype & script.aculo.us" group.
> To post to this group, send email to prototype-scriptaculous@googlegroups.com 
> .
> To unsubscribe from this group, send email to 
> prototype-scriptaculous+unsubscr...@googlegroups.com 
> .
> For more options, visit this group at 
> http://groups.google.com/group/prototype-scriptaculous?hl=en 
> .
>
>

--

You received this message because you are subscribed to the Google Groups 
"Prototype & script.aculo.us" group.
To post to this group, send email to prototype-scriptacul...@googlegroups.com.
To unsubscribe from this group, send email to 
prototype-scriptaculous+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/prototype-scriptaculous?hl=en.


Reply via email to