Staff role needs to be able to select a specific user and use the front-end with the same filters as that user. In this mode, the Staff role can review and confirm what a user will see inside list view. A staff role user will be able to do all of the following, either as a bulk-operation in a list-view, or from the detail view.
take a look at Figure 6- list view (staff or user view mode switching)
Staff role should be able to perform a bulk operation over them (ex. Select all, select some and mark them as hidden for example). This will be done by adding checkbox in front of every entry. List view default sorting order should be by state, followed by name/number of bills. Admin should be able to sort the entries by other columns by clicking on them. The view will display
Staff role will have availability to switch between “full staff role mode” and “user-based mode”. This means that while working in staff role mode he/she will be able to see all bills (all categories, states and keywords).
Take a look of Figure 5 - map view (staff or user view mode switching)
The user-based mode will allow the staff role to switch and work with system as particular user. For this purpose, the staff role will be able to choose a user from a select (drop-down). After choosing the user name the system will display all views and data inside those views filtered according to that particular user settings (categories, keywords and states) If admin wants to switch back to “full staff role mode” he will just have to click on button and the system will once again show entire data. The views will be queried using userID. Staff role as well have his user ID so for his admin user ID the system will show all bills ( all categories, states and keywords). Once the admin wants to switch to “user based mode”, we are going to re-query the views using ID of that particular user (the one that Admin will choose). For this purpose, a new plugin will be developed that will be used for masking (switching admin to user-based view). Temporary account clone will be created in background to allow switch back inside php session.
Off-the-shelf solution available.