gxa/gxa — pull request #169 by olgamelnichuk (2011-10-27 17:07:23+00:00)
Title: Tracking page state changes done by javascript

Implemented page state saving strategy:

- there is a global atlas.pageState objects, which is handles all changes on the page done by components;
- the global state is an object tree: state of a child component is saved in the state of its parent;
- the global page state is serialised in the name/value pairs and added as hash tag to the page url
- all components could register itself in the pageState object, so it can track their changes
- only root components should handle external hash change event (e.g. clicking on back/forward buttons)
- it is easy to turn off this feature by removing atlas.PageState.init() from a page, so all components can work with- or without global page state;

Minor change on gene page:

- 'Show all studies' link doesn't belong to pagination component any more;

This change automatically fixes: http://bar.ebi.ac.uk:8080/trac/ticket/3002
and makes step forward to fix: http://bar.ebi.ac.uk:8080/trac/ticket/2617