Forum OpenACS Development: Response to ad_form and ad_page_contract integration

Collapse
Posted by defunct defunct on
Just a quick mention regarding frames.

although I'm sure we all share a reasonably common dislike for
them, is it worth considering making the form stuff a little more
frame friendly?

Ok, bascially if you have a site where you use <iframe> quite a
bit (funnily enough I'm doing one just now) then its pretty
common to want to set the <base target="_top" directive in the
header. i.e. all ways push to the top level whenever a target isn't
directly specified.

However the net effect of this is that if you hit 'submit' on a forms
api based page, that then fails validation, it will then jump
outside of its original containing frame, which is almost never
the situation you'd like.

I'd suggest it makes more sense to have the forms stuff assume
_self as the default target, as the api itself is intended to throw
back the entry-error page in exactly the same format as the
original.

Possibly there's something already in the api to cater for this,
and I'm not aware of it, but if not does this seem a sensible
suggestion? Its not going to have any negative affect when not
using frames (I don't think) but when you are it will exhibit what
I'd argue if the exepected behaviour.

Make sense?

Just while I'm on the topic, the whole acs is a little frame-
unfriendly. or example I'm having to put  the /pvt/home page in an
inline frame for this current project. Of course by doing so
means that by implication I'd like all the related pages (pvt/
home-user, /register/* /user/* pages in acs-subsite) to remain
within the same frame. At least I would argue this is the best
default behaviour. Its a real nuisance to have to through all these
pages and change the links to ensure proper frame functioning,
where (if I'm right) assuming the _self target for these pages
would get around the problem?

Thought appreciated. If you're happy with this I don't mind doing
the work (as I've raised it) but I wanted to check I'm not forgetting
something about frames, or possible nasty side effects.