Issue Number | 65 |
---|---|
Summary | [General] Custom default settings for users |
Created | 2013-09-17 14:10:44 |
Issue Type | Improvement |
Submitted By | Shields, Victoria (NIH/NCI) [E] |
Assigned To | alan |
Status | Closed |
Resolved | 2014-11-20 12:15:31 |
Resolution | Fixed |
Path | /home/bkline/backups/jira/oceebms/issue.113378 |
TIR #2493 entered 2013-04-02 by Victoria Shields (Future Release status)
While creating the EBMS, we talked about allowing users to have their own default settings (e.g., display options) on some pages. We'd like to discuss this and see if it will be possible in a future release.
This is certainly possible, but we'll need specific requirements.
We would like to have user-specific default settings for the following items, if possible:
1. Queue pages - Board pre-selected (this is already done); Display
options - sort by, format, and items per page
2. Import citations page - Board pre-selected
3. Search database page - Board pre-selected
4. Not List Maintenance page - Board pre-selected
5. Create packet page - Board pre-selected; sort of articles either by
journal or by author's last name
6. All reports - Board pre-selected
7. Full citation page - User's Board section expanded
One more:
8. Post document page - Board pre-selected
Only display options for the queue page and sorting of the articles on the packet creation page are candidates for control by a user preferences profile. The rest will be handled by logic which is driven by which boards the user is connected with. For those users associated with a single board, that board will be used as the default. Robin will come up with logic for the other users. We discussed but rejected the idea of having a user interface for toggling between the options for sorting the articles on the packet creation page.
Could you please provide me with a list of the users who are associated with more than one Board? Then I can give you the specific logic for each one. Thanks.
Robin Baldwin (CAM & Supportive and Palliative Care)
Bonnie Ferguson (All)
Margaret Beckwith (All)
Tana Smith (CAM & Screening and Prevention)
Test Board Member (Adult Treatment & Genetics)
Test Admin Assistant (All)
Thank you! Here's the logic for each one:
Robin Baldwin (CAM & Supportive and Palliative Care) - default to
SPC
Bonnie Ferguson (All) - default to Adult
Margaret Beckwith (All) - default to Adult
Tana Smith (CAM & Screening and Prevention) - default to
S&P
Test Board Member (Adult Treatment & Genetics) - default to Adult
(although I don't think any of the options above will pertain to a Board
member)
Test Admin Assistant (All) - default to Adult
If I'm reading the previous comments correctly, especially Bob's
comment
that only the display and sorting options for two pages are user
controlled profile items, there may be a pretty simple and yet
very
functional way to implement a user interface for setting defaults.
For the queue related options there is a subform entitled "DISPLAY
OPTIONS"
that allows a user to select a sort order, a format, and the number
of
items per page.
I think all that we have to do to create a profile interface for this
is to
add a single checkbox that offers to "Save as defaults".
The advantages of this are:
There's no requirement for a new menu entry or a separate place
to go to
view or set defaults.
The user would have to open this form anyway if she wished to
change the
way results are displayed.
There's no training required. It's simple and obvious what to do
and
where to find it.
It's tied to the values that are already on the page. There can't
be
any divergence between what's in the display options form and what's
in
the profile editing form. Changes in the software can't break the
correspondence.
Looking at the Create Packets page, I didn't see any control widget
to
allow user selectable sorting options for the articles, but if we
allow
this to be profile controlled, I'd propose doing it the same way as
I
proposed for for the queue display options, namely:
Create a pair of radio buttons offering to sort by author or
by
journal title.
Add a checkbox for "Save as default".
Robin's last comment showing the logic for selecting a default
board
seems to me to be consistent with a simple rule set for
prioritizing
board selection.
Adult Treatment is always chosen first if it's one of the
available
boards.
CAM is always chosen last if it's one of the available boards.
We could elaborate this rule set by assigning intermediate priorities
to the
others too. We may or may not want to bother with that at this time.
Is such a rule a good idea? Or do we need to store info with each
user
who is associated with more than one board?
I like the proposal to add a "save as defaults" option to the DISPLAY OPTIONS menu on the queue page, and to add radio buttons with a "save as default" selection on the packet page.
I think we may need to keep the Board preference tied to a personal user, although this logic makes sense most of the time. One exception is Sharon Quint-Kasner who reviews citations for the Adult Tx Board and the Peds Board but her "preferred" Board should be Peds.
Okay.
In between bouts of battling the forest fire I'll implement the "save as defaults" solutions and try to come up with a useful approach for the user/board defaults.
As the eight requirements are listed in the second and third
comment, these are my assumptions about interpreting them.
a. There is only one default board for each user.
The specifications in the March 12 comments seem a little
ambiguous to me, but the comment for 18 Jun 2014 09:18 AM
seems to imply that each user has one default board.
I want to be sure that is what is wanted.
b. Board defaults don't need to be set by the user herself.
My reading of the comment on 28 May 2014 06:26 PM is that the
board defaults are set by the site manager and don't need to
be, and perhaps shouldn't be, changed by users.
I'd probably make this an admin function.
c. Default display options are settable for searching.
Default display options are specified for the citation review
queue page and the create packet page, but not for the search
database page.
I don't see a problem with that, but wanted to be sure that
the display options weren't left out of the defaults by
accident. I suspect that this was an accident.
Please let me know whether searching should have user
settable default display options.
I just spoke to Victoria in order to have a decision to work on tonight.
We agreed that all three of the above assumptions are correct. I will proceed on that basis.
Item 7 in the requirements specs (12 Mar 2014 05:11 PM) says:
"7. Full citation page - User's Board section expanded"
I presume that means that, if the user checks the expand by default box, I should expand ALL four of the board specific items, i.e., Review Cycle, Import Process, Medical Librarian Initial Review, and Publishing.
I'm going to assume that's right. If it's wrong and only one section should be expanded, or if we need separate checkboxes for each section, please let me know.
I'll defer implementation of this until I get other things working.
Victoria stopped by and said that she thought, subject to validation from Robin and other Board Managers, that it was just the review cycle that needs a check box to set a default default for expanding the editorial boards, and only the user's default board should be expanded.
I'll assume that's right unless and until I hear otherwise.
At the EBMS meeting this morning, we agreed that we just want the editorial board section for the user's default editorial board expanded. The Import Process, Medical Librarian, and Publishing sections should remain closed (or at least, not expanded).
I've completed most of the work on this task, including providing "save as default" display options for the review queue, and setting default editorial boards for all of the specified functions and all reports except for the two exotic "webform" ones - hotel requests and reimbursement requests.
I have not yet expanded the full citation user's board, set a "save as default" for search display options, or set the default editorial boards for the specific users who have more than one to deal with and the one they want doesn't come up with ordinary defaults.
But the end is in sight. Only the two webform reports still look baffling to me.
I'm reasonably confident that I can finish everything but the webform reports on Thursday. They might turn out to be easy but I haven't figured them out yet.
I'm marking this resolved as fixed. All of the changes are on both Dev and QA. Default values for preferred editorial board have been set for as specified for the users mentioned in the comments.
On the Create Packet page (see #5 of original request), the articles are sorting by author, but I thought there was going to be a button (or something) on that page to allow us to sort by journal as well. Is that setting saved somewhere else, or am I missing something?
> I thought there was going to be a button (or something) on
that
> page to allow us to sort by journal as well.
An oversight on my part. I'll look at it.
I've got a version of this running on my own machine, but I'd like to fiddle with the behavior a bit before I install it on Dev or QA.
While testing the Search Database page with the Board pre-selected (#3 above), we've realized that this is not ideal because we're not able to unselect the Board. It's now essentially a required field, which limits the searches too much. Can we reverse the pre-selection for this page?
I believe the standard UI for unselecting from a multi-list works the way you want it to on all browsers. Hold down the Control key (Command on a Mac) and click the selected board, which will remove the selection.
OK, I've learned something new (and useful) today. However, I think we'd still rather not have anything selected for this particular page. I think more often than not, we'd end up having to unselect the Board because we'd usually just be looking for any trace of a citation and not want the search to be limited to our Board.
I have installed the software and data changes to support the sort of articles part of requirement 5 on Dev and QA.
I'll take out the board pre-selection for searching next.
I have removed the default setting for editorial board from the search form as per Victoria's request.
I believe that everything is done for this issue and is installed on Dev and QA with all code in version control.
For the Create Packet page, the additional sort (after author) is supposed to be by journal. It's currently sorting by article title. Sorry. :-(
Sorry. Your instruction was pretty clear but sometimes I see what I expect to see instead of what is actually there.
Fixed on Dev and QA.
If you tested this function and saved "Article Title" as the default sort order, sorting won't work right for you until you set a new default - either "Author" or "Journal Title". If you don't do that the code will read the old default value and test for sorting by each of the expected sort orders. Not finding either of those, it will do no sorting.
The sort by journal title is working perfectly! Thanks!
I'm getting an AJAX error (see attached screenshot) on the queue page (as a Board manager) when I attempt to apply saved defaults under the display options menu.
Here is full text of the error message (the screenshot cuts it off I think).
An AJAX HTTP error occurred.
HTTP Result Code: 500
Debugging information follows.
Path: /system/ajax
StatusText: Service unavailable (with message)
ResponseText: PDOException: SQLSTATE[HY000]: General error: 1366
Incorrect integer value: 'all' for column
'dft_cite_review_items_per_page_value' at row 1: INSERT INTO
{field_data_dft_cite_review_items_per_page} (entity_type, entity_id,
revision_id, bundle, delta, language,
dft_cite_review_items_per_page_value) VALUES (:db_insert_placeholder_0,
:db_insert_placeholder_1, :db_insert_placeholder_2,
:db_insert_placeholder_3, :db_insert_placeholder_4,
:db_insert_placeholder_5, :db_insert_placeholder_6); Array
(
[:db_insert_placeholder_0] => user
[:db_insert_placeholder_1] => 294
[:db_insert_placeholder_2] => 294
[:db_insert_placeholder_3] => user
[:db_insert_placeholder_4] => 0
[:db_insert_placeholder_5] => und
[:db_insert_placeholder_6] => all
)
in field_sql_storage_field_storage_write() (line 451 of
/local/content/web/appdev/modules/field/modules/field_sql_storage/field_sql_storage.module).
It looks like this is a problem in more than one place. The data type of the field is wrong, expecting a number instead of the string "all".
I'll fix it.
I've installed the fixes on Dev and QA and in subversion.
The Dev database has been unreachable all evening so I did my testing on QA and on my own virtual machine. Hopefully, it's working on Dev too.
Verified on QA. Thanks!
Verified on prod, however, I'm making a few notes for a future release.
1. Two reports do not preselect the logged-in user's Board name. Add a new issue to preselect the appropriate Board on the Reimbursement and Hotel Request reports.
2. "View all" default setting causes problems on the queue page. See related issue OCEEBMS-255.
Unfortunately, we just learned that Rick's queue is not defaulting to Adult Treatment anymore (it used to before this release). This is probably related to the custom default settings we established, so I'm reopening this ticket.
That was probably a side effect of our switching to the new system of having a site manager set the default board for users that have more than one. We never set his default.
I edited his record on the Production server to set his default to board number 1 - the Adult Treatment Board. No software changes were required.
If he's logged in to the system now he may need to log out and back in again to see the change. Please let me know if it doesn't work.
Great! We'll check with him. Thanks.
Rick's queue is now defaulting to Adult, so that did the trick. Thanks, Alan! I'm closing this issue.
File Name | Posted | User |
---|---|---|
screenshot-1.jpg | 2014-09-18 15:21:13 |
Elapsed: 0:00:00.000766