|
From: Scott M. <sco...@gm...> - 2011-04-15 20:04:11
|
In the previous versions of TSNG, I'd attempted to better keep track of what
"context" the user was in. I'd accomplished this by making use of a
variable I'd called $post, and used that whenever forms were submitted.
This was much better than it was previously, but it was not flawless by any
stretch of the imagination.
So, to help make sure everyone understands what I'm talking about, allow me
to expound on what the word "context" means herein. Context is sort of the
"state of mind" the user is in when trying to accomplish something. As a
normal user, if I go back in time to look at something lets say in the
weekly form, and then decide I want to look at that with a different form,
say the monthly form, in previous versions, by switching forms, the
application totally forgot the user had gone back in time, and presented the
current month again. By keeping track of context, the user is now presented
with the month the user had gone back to look at. This is one very basic
and important item of context that I think we need to keep track of, what
date is the user currently interested in?
Another example is if I'm now an administrator, and a user has some problem
with their previously entered time, I can "become" the user by changing the
"context user" and from there, I can act as if I was the user and I can even
modify the user's time entries if I need to do so. (Note: this option is
only available to the "administrator" accounts, and to guard against
unscrupulous managers, who might be tempted to fraudulently modify an
underling's times, never make a manager an administrator. It is quite
amazing in a tiny office how often we as administrators had to legitimately
help fix someone's time entries).
So far we have
- Context
- user id
- date user is interested in
We can add other items; if we're looking at a report and we are interested
in a range of dates for a report, we need to keep track of the beginning and
ending date of interest. With new options just created, another item might
be if we want page areas shown or hidden.
So, with all this, my main question to the group is how do we effectively
keep track of all this potential context? With Mark as the OO guy, I'm
hoping you have some good ideas for helping us keep track of it all, and I'm
hoping that option is better than the hugely long set of post variables
currently passed back and forth. This is particularly important when we
move to using the java pop up calendar for navigation...
-Scott
|