What my friend is saying is that the user should be taken along a siungle path through each major functional area of the site - that they should not be allowed the flexibility of registering at, say a tour level, but they need to provide more data into their user profile before they can use the full functionality (my scheme!) Thats one issue out of the way.
My reason for grouping actions together is this: Each of my current run modes uses a single template (well, really a page template for the overall look, a navigation template that gives the relevant navigation for the current action and a form template that actually contains the form). I am using CGI::FormBuilder to render the forms - becuase it gives me an easy way of loading defaults, requiring a field and validating field values. The same form is used for 'new entry', 'display record' and 'update record' functions purely by changing the buttons below the form (part of what FormBuilder does very easily). So by the PodMaster rule of ONE TEMPLATE ONE RUN-MODE I am still on the correct path.
I have been thinking about this for a coupole of hours over dinner now. One of the things I like about some websites is they give me the option of being able to browse without logging in. Just like PM does! So I want to be able to pop up my login form, the user can log in, and then they can go on from where they left off.
Session management is important as has been stated in another reply, I am using CGI::Session and storing the users entire state in the session. So I start a session before there is even a log-in attempt. My reasoning for this is that I can have a 'BACK' button that works within the application. I can read the session, find out where 'BACK' would take them, and then even query the database if necessary to fill out a form with valid values rather than using the browser back button and the difficulties attendant upon that. It also means I can be much more logical, if a 'BACK' move would take an already registered client to the form where he built his registration profile - well, he doesn't want to register again does he! We could take him to an 'edit profile' version of the same form.
In reply to Re: Re: CGI::Application, have I made a big mistake.
by jdtoronto
in thread CGI::Application, have I made a big mistake.
by jdtoronto
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |