Track hours for this issue at: http://dev.nysenate.gov/issues/5533
The requirement is to persist the last used values for the two activity type filters on the contact Activities tab => "Filter by Activity Type" form (activity_type_filter_id and activity_type_exclude_filter_id) for the logged in user.
The filter values would need to be saved onChange since there is no search form POST, and loaded from the DB when that tab is accessed.
Values should be saved to civicrm_setting table (as we do for each contact's navigation menu). Let's rename the existing 'Navigation Menu' setting.group_name to 'Personal Preferences' since we can collect user (contact) specific settings in that group. Then add the new setting to that group with name='activity_tab_filter'. Also change the settings constant name from NAVIGATION_NAME to PERSONAL_PREFERENCES_NAME for consistency.
The following usability changes are also needed so that the user sees that the activities listing has been 'pre-filtered' when they access the Activities Tab:
1. Modify the 'Filter by Activity' pane so that it is EXANDED rather than COLLAPSED by default.
2. Add labels to the "Include" and "Exclude" dropdown (previously, the empty select option clarified what each dropdown did - but now those will generally not e seen as a saved option value is loaded by default).