"/users/logout" URL will log you out and redirect you the front page.
Made front page prettier and better at explaining Luminotes (hopefully). The
front page is no longer a wiki, but is instead a mostly static page.
* Modified Wiki.js to include invite_id parameter when necessary.
* Increased storage quota (and price) for premium rate plan.
* Added a note displayed when redeeming an invite, with links to signup and login.
immediately after the editor you're working on instead of at the bottom of the
page. Also, if you undo a note's deletion, it'll show up right back where it
was amonst the notes.
browser-specific CSS hack and looked crappy. Those elements that are still
rounded are now implemented with nice smooth images instead.
Also changed downloaded HTML generation to specify sans-serif for the font.
the client. Previously, the main page would load as mostly blank, then the
client would immediately issue two async json calls to load the user and
notebook data, including startup notes. Now, the main page loads with the note
data actually as part of the page. If JavaScript is off, then you see all the
notes displayed, including startup notes and any designated note. If
JavaScript is on, then those "static" notes are instantly hidden and their
contents are loaded into iframes for editing/display.
The real upshot is that Luminotes in read-only mode is now more useful when
JavaScript is off, and actually displays notes and their contents. This is
very useful for search engine indexing.
Updated all Python unit tests. Still have to get to JavaScript unit tests,
what few their are.
* Revisions can be opened either in the current page or in a new window/tab.
* Added ability for a read-write notebook to contain read-only notes. This supports showing read-only revisions.
* Fixed updatedb.py to properly load the anonymous user.
* Updated initdb.py and updatedb.py to deadl with new-style /notebooks/notebookid?note_id=noteid wiki links.
* Made Persistent copy the revisions_list on each revision update so different revisions don't share lists.
* Prevented Note from updating its revision twice upon construction. Now it's only updated once.
* Work-around for nasty urlparse() caching bug related to unicode strings that cherrypy barfs on.
* Added optional revision flag to various controller.Notebooks methods to allow opening of a notebook with a particular note revision displayed.
* Refactored some of validator decorator to use clearer variable names internally.
* Validator decorator now supports treating arguments with default values as optional.
* controller.Notebooks.default() takes an optional note_id argument.
* controller.Notebooks.contents() takes an optional note_id argument.
* Wiki.js now makes use of these new controller APIs.
* Editor.js now takes a notebook_id argument to its constructor so it can properly make links.