- modify controller.Users.current() to return the user's groups
- update test_current() unit tests to expect empty groups list in results
- modify Main_page, Notebook_rss, Front_page, Tour_page, and Upgrade_page to accept a new groups parameter
- Main_page should add it as a hidden HTML variable
- update Wiki.js to read the hidden groups variable and display the groups in account settings
- change model.Notebook.sql_search_notes() to be a static method
- take a first_notebook_id argument and a user_id argument
- join user_notebook on notebook_id and matches on user_notebook.user_id instead of notebook_id
- order by notebook_id = first_notebook desc, rank instead of just rank
- include search result for notebooks readable by anonymous user, but only if such a notebook is given as first_notebook_id
- update code that calls model.Notebook.sql_search_notes()
- update model.Note.to_dict() to include notebook_id
- modify Wiki.display_search_results()
- separate search results for the current notebook and results for all other notebooks
- indicate which notebook each result is from
- if there are results in other notebooks but no results in the current notebook, indicate that clearly
- when you click on a result note link in the current notebook, it should simply open a new note
- when you click on a result note link in another notebook, it should open in a new window
- test in IE
- update unit tests for:
- controller.Notebooks.search()
- model.Notebook.sql_search_notes()
- model.Note.to_dict()
* Using the browser's tweaked version of the initial HTML, instead of the HTML that we tell the browser to use.
* Improved normalize_html() function to handle more cases.
* Added start_dirty flag to Editor() constructor and made use of it for completely new notes.
There is still at least one case (IE only) where this detection fails and a
note unaltered by the user gets resaved to the server. This is because IE
alters relative links within design mode documents.
The bug arose because Firefox shows br tags as "<br>" even when they are
initially "<br />". This meant that the initial and current html didn't match
up, so dirty() returned true even though nothing had changed.
In IE, there's a similar problem because IE likes to uppercase all tags. That
will be fixed in a subsequent commit.
prevent some session deadlock errors.
* Fixed some bugs with the new auto-resizing toolbar:
* In IE 6/7, when you click on a formatting button such as italics, it
doesn't visibly depress, because update_toolbar() is causing it to
unpress until you start typing the italic text. Fixed by only calling
update_toolbar() in focused_editor() if focused_editor is null.
* When downing or upping a toolbar button, now calling
resize_toolbar_button() unconditionally.
recent updates. fixed by making it so that when an error is received by invoker, the error message is displayed but the callback is
not invoked
- bug: if you get an error when saving a note, the note should not disappear. it should still be present so you can try to save it again - make invoker not call a callback if there's an error
- in Wiki.hide_editor(), only close an editor after save_editor() has invoked a provided callback function
- make sure this doesn't break the note conflict notification error (saved editor should still shutdown)
- test this in IE
character) titles from saving correctly.
Changed the literal quotation character in the starting wiki note to the
""" character entity so it doesn't show up as a change in the diff.
* Added new optional previous_revision params to default(), contents() and load_note() in controller.Notebooks.
These use Html_differ() to generate and return diffs.
* Updated Wiki.js:
* provide previous_revision when a revision is opened in a new window/tab
* call load_note() when two revisions when a revision is clicked in Changes_pulldown
* update compare_versions() to display a diff instead of opening the two revisions separately
* update load_editor():
* update all invocations of load_editor(), including in Editor.js, to accept a new previous_revision argument
* modify load_editor() to use the previous_revision argument (when supplied) to load a diff
* Implemented new controller.Notebooks.load_recent_updates() method.
* Added new Wiki.js total_notes_count_updated signal
* Added "more" and "less" links to "recent updates" table.
* Updated Wiki.js Recent_notes to support new "more" and "less" links.
* Commented out unfinished discussion forums unit test.
* Put all expanders into <div>s, which are then wrapped in <td>s. This makes for better vertical centering, especially in IE.
* Modified Wiki.js to account for expanders now having yet another parent.
* Put note tree instructions in a <tr><td> instead of in a <div>, as <div>s alone don't belong in tables.
fixes the following bug: When you set a note as a startup note and add its
link to the note tree in IE6, the link isn't added with a visible expander
even if it has child links.
in IE6. Apparently Internet Explorer doesn't support appending rows directly
to tables. Fixed by adding a <tbody> to the table and appending to that
instead of the table itself.
Add a brief paragraph with instructions on how to add a note to the note tree, shown only when there are no notes there.
Added a heading for "recent notes", which should be filled out with links in a subsequent commit.
that note's entries in the note tree. When a note with no children is updated
so that it has at least one child, add an expander to that note's entries in
the note tree.