147 | | <Leave open for a list of existing implementation of this solution in Sahana Eden:> |
148 | | <*a brief description of the implementation (date/time, name, design options chosen)> |
149 | | <*a link to the code> |
150 | | <*list of deployments of the implementation> |
151 | | <*links to case studies> |
152 | | <*short analysis of achievements/problems> |
| 147 | === How to enable guided tours === |
| 148 | 1. Set the config: settings.base.guided_tour= True |
| 149 | 1. Create the new tables (migrate = true is your friend) |
| 150 | 1. Import the data, so a simple prepop will do this for you, otherwise you will need to import two files, both of which are in the default template: guided_tour.csv and guided_tour_details.csv both of which are set up in the demo prepop task.cfg file. |
| 151 | === How to run a guided tour === |
| 152 | 1. Once a guided tour has been set up you can run it from the Help menu. The prepop data will create two demo guided tours. Both are called "Welcome Tour" and one is available for unauthenticated users and the other for authenticated users. The authenticated version will span two pages. |
| 153 | === How to create a guided tour === |
| 154 | 1. Each tip of a tour can be positioned in the centre of the screen or associated with an html element by using either the id or class of the element. |
| 155 | 1. Each tip is associated with a particular page given by the controller, function and args in the prepop data. So if the user is currently on that page then those tips will also be loaded (if the tour is running) |
| 156 | 1. The tour can move to another page by using the Redirect. It is a comma separated list of controller, function and args, one example is given in the prepop data: org,organisation,dt_id |
| 157 | 1. Currently the tour can extract data from a dataTable by mentioning the dataTable id, the row from which it wants to extract the data and then referring to the column by using the column name prefixed with dt_, so dt_id or dt_name. These dataTable variables can be used in the text that appears (title, detail and button) as well as the redirect URL (typically dt_id to open up the details of a specific resource) |
| 158 | 1. If you are generating a new guided tour then you will also need to add a line to the guided_tour.csv and of course tours and be template specific. |
155 | | <List of goals for your implementations which you (include your name/github repo/IRC handle) are currently working on> |
| 161 | === Outstanding issues === |
| 162 | **Translation**. This data is imported onto a database and so they will need to caught by the translation module. |
| 163 | |
| 164 | **Autostart**. No autostart feature has been implemented yet, the idea is that it can be controlled by a database flag and if the authenticated user has not completed the tour then it will autostart. Is this required? |
| 165 | |
| 166 | **rHeader**. This would be another great place to scrape data from similar to the dataTable |
| 167 | |
| 168 | **Generation UI**. The creation of tours using the csv is possible but not particularly easy. The current idea is to integrate the creation of tours by using Selenium IDE and Eden to parse the html Selenium IDE generates and import it onto the database. |