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
* 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.
associated expanders.
* Waged an epic battle against the dark forces of CSS. Did you know that the
max-height property applies to nearly all HTML elements *except* tables? No?
Well neither did I until I looked it up, seriously wondered what the W3C
could have been smoking, and then proceeded to spend the next DAY AND A
FRICKING HALF making my table have a max-height without breaking any of my
other intricately arranged CSS. Victory is mine.
* Added a fixed list of startup links.
* When link in list is clicked, open corresponding note editor.
* When a startup note is added/deleted, update the list.
Still much more work to do on this before it's complete.
made the header that's on the product pages present at the top of the wiki
page as well. Still need to make links bold when viewing certain pages
(help, contact, etc).
* Added a bunch of thumbnail-related methods to controller.Files.
* Modified Files.download() method to redirect to image preview if
requested.
* Implemented image preview to popup full image in a separate window.
* Added empty stubs for relevant unit tests. Still to-do.
* Added new dependency on python-imaging package (PIL).
* Updated file info popup to include clickable thumbnail.
"/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.
title when uploading a file, as this plays more nicely with IE. With
replaceChildNodes(), IE swallows the text cursor and won't give it back.
Also explicitly passing link parameter to Upload_pulldown() constructor, as
editor.find_link_at_cursor() wasn't always working in IE.
1. In progress(), around the time when the file starts uploading. This causes
an upload that's too large to bail before the whole file uploads, but the
quota calculation is only an estimate and relies on the client actually
calling progress().
2. In upload(), when the file finishes uploading. This quota calculation is
exact, but only happens after the entire upload completes.
* controller.Files.upload() now updates user quota storage.
* When a file is uploaded, the new storage bytes count is returned to the client and displayed.
* new toolbar button for attaching a file
* button opens new Upload_pulldown() for uploading a file
* began controller.Notebooks.upload_file() to process the upload
repro:
1. delete a note
2. go to the trash
3. click undelete, and then *very quickly*, click the name of the notebook
4. when the notebook loads, it won't have the undeleted note
5. go back to the trash. the deleted note will be there, with non-trash note buttons
this seems to be a race between undelete_editor_via_trash() and save_editor(), which is invoked upon page close. solution: don't
allow save_editor() to call save_note() if editor.closed is set
* change controller.Notebooks.load_note_revisions() to select and return User_revision objects
* change controller.Notebooks.save_note() to use User_revision objects for new_revision and previous_revision as well
* update client to deal with new load_note_revisions() return values (make sure all uses of revisions_list are updated)
* update client to deal with new new_revision/previous_revision
* update changes pulldown to show username along with each timestamp
* update model.Invite to load redeemed_username along with redeemed_user_id
* display the redeemed username next to each email address in the "share this notebook" note
* 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.
* Fixed Invite.sql_update() to have SQL params in proper order.
* Fixed bug where email addresses containing "-" were considered invalid.
* Made UI for inviting other people to your notebook.
* Tweaked the rate plans and added a new one.