I think I've found a possible workaround.

I've inserted an ob_start() call in AjaxHelper::divEnd() method:

        function divEnd($id) {
                if (env('HTTP_X_UPDATE') != null) {
                        $divs = explode(' ', env('HTTP_X_UPDATE'));
                        if (in_array($id, $divs)) {
                                $this->__ajaxBuffer[$id] = ob_get_contents();
                                ob_end_clean();
                                ob_start(); //<---- This is missing in the 
original code
                                return '';
                        }
                }
                return $this->output($this->tags['blockend']);
        }

The lack of ob_start() call cause the rendering of each HTML which
follow the last endDiv() call, in fact the ob_end_clean(); in the
AjaxHelper::afterRender returns FALSE, because the buffer is empty.

Please, let me know if I'm completely wrong.

Thanks,

Riccardo

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake 
PHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to