LP#1750894 Server-stored workstaion prefs admin view
[working/Evergreen.git] / docs / RELEASE_NOTES_NEXT / Client / workstation-server-settings.adoc
1 Browser Client Settings & Preferences Stored on the Server
2 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
3 Browser cilent settings and preferences that should persist over time are
4 now stored as settings on the server.  This allows settings to follow
5 users and workstations and reduces problems associated with losing settings 
6 as a result of clearing browser data.
7
8 The browser client honors setting values stored as user settings, workstation
9 settings, and org unit settings, depending on which setting types are
10 locally configured.
11
12 Setting Types
13 +++++++++++++
14
15 * No setting can be both a user and workstation setting.  They are mutually
16   exclusive.
17 * Any setting can be an org unit setting in addition to being a user or
18   workstaion setting.
19
20 Read-Only Settings
21 ++++++++++++++++++
22
23 Read-only settings are useful for defining values that staff can use but
24 not modify.  For example, admins may wish to prevent users from locally
25 modifying the grid configuration for a given interface so it remains
26 consistent for all users.
27
28 A setting is read-only when an org unit setting type exists (regardless of 
29 whether a value is applied) and no user or workstation setting type exists.
30
31 Server-Stored Workstation Settings Workstation Admin View
32 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
33
34 There's a new "Server Workstation Prefs" tab to the stored preferences
35 workstation admin interface.  From here, users can view which
36 preferences are stored as server-stored workstation preferences and
37 delete select values.
38
39 Upgrade Notes
40 +++++++++++++
41
42 A new permission APPLY_WORKSTATION_SETTING has been added to control who
43 may apply values to workstation settings.  Use something like the following
44 to apply the permission to all staff accounts (mileage may vary):
45
46 [source,sh]
47 --------------------------------------------------------------------------
48 INSERT INTO permission.grp_perm_map (grp, perm, depth) 
49 VALUES (
50     (SELECT id FROM permission.grp_tree WHERE name = 'Staff'), -- name may vary
51     (SELECT id FROM permission.perm_list WHERE code = 'APPLY_WORKSTATION_SETTING'),
52     0 -- or 1, 2, etc.
53 );
54 --------------------------------------------------------------------------
55
56 Workstation setting types matching values previously stored in the browser
57 (via localStorage or Hatch) are created as part of this feature.  During
58 upgrade, admins should consider whether any of these new setting types 
59 should be transferred to user and/or org unit settings instead.  Setting
60 type changes can be made at any time, but when a setting type is deleted
61 all of its data is deleted, so a change in type means re-applying the 
62 settings in the browser client.
63
64 Values stored in the browser will automatically migrate to server settings
65 as each setting is accessed in the browser client.  Once migrated, the
66 in-browser copies are deleted.  
67
68 If a setting type does not exist where the browser expects one, the 
69 value is stored in-browser instead and a warning is issued in the console.
70
71