witten
/
luminotes
Archived
1
0
Fork 0
Commit Graph

859 Commits

Author SHA1 Message Date
Dan Helfman 779769ae79 Fixed inexplicable IE test failure. Maybe focus is a reserved keyword? 2007-09-06 20:18:08 +00:00
Dan Helfman 61c6ab3fb0 Beginning stubs for client-side javascript "unit" tests. (Probably more like
functional tests, unless a whole lot of mock objects are introduced, which
isn't entirely out of the question). Uses JsUnit, which is included in this
commit.
2007-09-06 10:25:06 +00:00
Dan Helfman e747e9c2ff Reverting r333 and making alternate fix for duplicate notes when repeatedly
clicking links, because r333 broke link pulldown title grabbing. Must..
write.. unit.. tests!
2007-09-06 08:27:41 +00:00
Dan Helfman ae342ac5d6 Preventing opening of dup notes from note links. 2007-09-05 23:49:25 +00:00
Dan Helfman f7b97fb41d Don't create duplicate "all notes" when opened from a note link. 2007-09-05 23:44:34 +00:00
Dan Helfman 5aaf0d6276 Reverting to earlier behavior: Options pulldown doesn't close if you click a checkbox. 2007-09-05 23:11:19 +00:00
Dan Helfman 439fd49880 Prevent one note from "shadowing" another note with the same name. Previously,
if you clicked a link with a note id and a note with the link's title was
already open, it just highlighted that note, regardless of the id. Now, that
will only happen if the link has no id.
2007-09-05 19:54:04 +00:00
Dan Helfman 8a2c872e0a Fixing IE extra comma bug. 2007-09-05 19:06:33 +00:00
Dan Helfman b6204179c9 No hide button while in the trash. 2007-09-05 18:57:50 +00:00
Dan Helfman ad7c6aca7f Removing unused insert_after_iframe_id parameter. 2007-09-05 18:53:42 +00:00
Dan Helfman f21610eaf7 * In the trash, now showing "the trash is empty" when you delete/hide/undelete enough notes to make it empty.
* Wiki.create_editor() returns the editors it just created.
 * Wiki.open_editors initialized with startup notes.
2007-09-05 18:49:28 +00:00
Dan Helfman 7bf6d8685f Changing "This notebook is empty." from error to message. 2007-09-05 07:37:04 +00:00
Dan Helfman ce4c49d87e There's now a link to the trash in the "This note has been moved to the trash." message. 2007-09-05 07:34:59 +00:00
Dan Helfman 259002efe0 Clicking the background now closes any open pulldowns. 2007-09-05 02:30:15 +00:00
Dan Helfman fb511f61ac Reverting previous try/catch "fix" in favor of a simpler solution. 2007-09-04 22:31:32 +00:00
Dan Helfman 47c24a9c1b Not sure why this is necessary, but if querying for formatblock fails, just assume heading is ""; 2007-09-04 22:12:44 +00:00
Dan Helfman 197d65877f * Changed client "recent notes" link to "all notes".
* When you try to load a note called "all notes", load a magic (dynamically-generated) note that
   lists all notes in reverse revision time order.
 * Changed controller.Notebooks.recent_notes() to all_notes().
 * Prevent "all notes" link from showing up when you're in the trash.
 * Prevent link pulldown from showing up for links within read-only notes.
 * Wrote a crappy deletenote tool.
2007-09-04 21:37:48 +00:00
Dan Helfman c3e4f69525 Fixing bug that prevent viewing older revisions of notes in the trash. 2007-09-02 03:51:31 +00:00
Dan Helfman 658e42aeba Made some changes intended to speed up page loading slightly.
* Blank iframe contents now come from static HTML rather than dynamic CherryPy.
 * Reindented @strongly_expire decorator.
 * Removed one stage of Editor's multi-stage construction.
2007-09-01 23:46:15 +00:00
Dan Helfman 0b920ca8a5 Changing unused "recent notes" href to different unused URL. (It's unused because a Javascript onclick handler overrides it.) 2007-09-01 21:24:55 +00:00
Dan Helfman 2608350762 Remove "FIXME" for something that turned out not to be a bug. 2007-09-01 21:21:59 +00:00
Dan Helfman 70b3e415f1 * Added new controller.Notebooks.delete_all_notes() method.
* Put UI link in trash to delete all notes.
2007-09-01 21:06:37 +00:00
Dan Helfman bcade394e9 Moved login link to the top of the page; now present dependent on whether you're already logged in. 2007-08-30 23:57:56 +00:00
Dan Helfman 0f401829e7 Some limitations on trash notebooks:
* Can no longer create new notes in the trash.
 * If you click on a link within a note in the trash, you just get a message telling you to undelete it.
2007-08-30 20:39:41 +00:00
Dan Helfman 2732e262f0 IE now properly shows link pulldown when you end a link. Also, in all
browsers, now silently refusing to close a pulldown upon request when it's
been open less than a quarter second.
2007-08-30 20:17:10 +00:00
Dan Helfman a1fb86f306 Reverting [304] because it prevents you from seeing the main Luminotes wiki when you're logged in. 2007-08-30 19:08:37 +00:00
Dan Helfman f53ea0dcbd When you start a link, the link pulldown doesn't show up right away anymore
because many people found this confusing. Instead, now the link pulldown shows
up when you end the link.
2007-08-29 23:54:14 +00:00
Dan Helfman 4e932255a4 UI code no longer responsible for surpressing display of "Luminotes" notebook link. That's now done on the server. 2007-08-29 18:36:41 +00:00
Dan Helfman eebbabb664 Not showing "Luminotes" notebook in list of notebooks, as it's kind of confusing. 2007-08-29 01:18:06 +00:00
Dan Helfman d90f21b17a New optional parent_id argument to controller.Notebooks.default() to support "return to notebook" in the trash. 2007-08-29 00:50:46 +00:00
Dan Helfman c1b99b3a71 No longer opening a new black note when clicking on the background, and that
can get really annoying if you miss a button.
2007-08-28 23:51:53 +00:00
Dan Helfman 9f73b9378a Hover color for links within notes. 2007-08-28 23:00:54 +00:00
Dan Helfman 91d053e0c9 Fix for dotted circle list bullets. (Making them solid.) 2007-08-28 22:34:12 +00:00
Dan Helfman cebc6458cb When viewing the trash, header/border/etc have their own trash color. 2007-08-28 20:57:08 +00:00
Dan Helfman 41372a2df8 At Kevin's suggestion, added a partial border around the notebook, added a
notebook title to the top of the page, and highlighted the notebook title on
the right as well.
2007-08-28 20:36:33 +00:00
Dan Helfman fd175aa85d No longer sending quite as much data in response to /users/current requests.
Now the client has to explicitly request the inclusion of startup notes.

Also no longer including startup notes or revision lists with every single
serialized Notebook.
2007-08-27 22:37:22 +00:00
Dan Helfman bbc3f11914 Changing unordered list key combo from ctrl-u to ctrl-period since it collided with underline's key. 2007-08-27 21:09:39 +00:00
Dan Helfman e2d85b79a5 Added underline button to toolbar. Useful for things like book titles. 2007-08-27 21:01:42 +00:00
Dan Helfman 62b222f2d9 Fleshed out the password reset note a bit more. 2007-08-27 20:46:26 +00:00
Dan Helfman 3601ee302a Changed uses of "we" to "I", and added a "meet the team" note. 2007-08-27 20:39:16 +00:00
Dan Helfman 45bb546f0f Fixed bug where CSS text centering in downloaded wiki HTML caused Thunderbird
to display the entire message as centered if the HTML was sent as an email
attachment.
2007-08-24 21:21:02 +00:00
Dan Helfman 86a2daf09d Removed unused from_iframe_id argument from several functions. 2007-08-24 20:50:07 +00:00
Dan Helfman 20313728d2 Several changes to handle the case where a note is changed out from under you, due to being saved
from a different window:
 * Made controller.notebooks responsible for preventing unmodified notes from being saved, instead
   of model.Notebook handling this task.
 * Created a revision validator for passing revisions as arguments to exposed methods.
 * controller.Notebooks.save_note() now requires a previous_revision parameter, used to determine
   whether the note has been modified in the particular window it's being saved from.
 * save_note() returns a new previous_revision value, so the client can determine whether a save
   has occurred from another window.
 * controller.Notebooks.undelete_note() fixed to quietly bail if the note to undelete isn't
   actually deleted, which can happen if it was undeleted in another window.
 * Editor() now responsible for making revisions list if it doesn't exist
 * No longer giving an "undo" message when the user deletes an empty note.
 * On the client side, detecting whether the previous_revision as reported by save_note() looks
   correct, and if not, alerting the user about the conflict. Also displaying a "compare versions"
   button that opens both the current version and the previous version.
2007-08-23 23:56:42 +00:00
Dan Helfman 2dcd3e1483 Fixed broken revisions list under "changes" button.
I really need client-side Javascript unit tests to catch exactly these sorts of regressions.
2007-08-23 07:00:18 +00:00
Dan Helfman 094323ee58 Fixed broken deletion undo. 2007-08-23 06:45:42 +00:00
Dan Helfman d1b8a2201b Hack to prevent Firefox from erasing spaces before links that happen to be at the end of list items.
I hate the web.
2007-08-22 21:09:15 +00:00
Dan Helfman f9b355277c When there's an error, remove all empty editors. This prevents a bug where
empty editor frames stay displayed but never load if there's a network
connectivity problem.
2007-08-21 21:25:59 +00:00
Dan Helfman e6b5054e50 Yet another rewrite of the Firefox link creation code, because the previous
version wouldn't work immediately after a title element. Ugh.

One caveat: When you start a link, the cursor disappears until you start
typing the link's title.
2007-08-21 19:28:07 +00:00
Dan Helfman f6418a1d50 Greatly simplified Firefox link creation code, thereby fixing an intermittent
bug where hitting ctrl-L to start a link after a space would occasionally not
work.
2007-08-20 23:14:16 +00:00
Dan Helfman 082697fe5a More title tags for various links. 2007-08-20 20:10:19 +00:00
Dan Helfman 22767f1cc9 Added some explanitory title tags to various pulldown options. 2007-08-20 20:02:42 +00:00
Dan Helfman e0e144a200 Fix for broken inheritance, which incidentally cause a link's pulldown not to
show up more than once because the pulldown's derived shutdown() method wasn't
being invoked the first time.
2007-08-20 19:51:02 +00:00
Dan Helfman f4428c65ba Selecting all text in link pulldown's title field only on focus not, not every click. 2007-08-20 18:43:45 +00:00
Dan Helfman 7973d87a7d * Turned "search:" label into a search button that, when clicked, displays a
pulldown with "titles only" and "everything" radio buttons, defaulting to
   "titles only".
 * Wiki javascript code for submitting a search now sends a new titles_only
   parameter according to what the user has selected in the search pulldown.
 * controller.Notebooks.search() now takes a new titles_only boolean argument,
   which does exactly what you would expect.
2007-08-17 22:26:02 +00:00
Dan Helfman 5a4ec1911b Display "there are no notes here" when showing an empty trash. 2007-08-16 23:27:29 +00:00
Dan Helfman faaa4b6fdd Got external links working!
* Altered Html_cleaner to allow link targets.
 * Modified Wiki.load_editor(), Wiki.resolve_link(), and Link_pulldown() to
   support external links with "_new" targets.
 * Modified Editor.mouse_clicked() to explicitly open a new window for external links clicked in
   read-write editors, because the browser won't open clicked link by itself unless they're in
   read-only iframes.
 * Removed a duplicate Editor.contents() function.
 * Increased Link_pulldown title field size to 30 characters.
2007-08-16 22:27:58 +00:00
Dan Helfman a6182dffeb Autoselect title field text in link pulldowns when clicked. 2007-08-16 20:17:14 +00:00
Dan Helfman 8f8f0a2262 In Link_pulldown's constructor, if the note has no destination note id set,
try loading the note from the server by title.
2007-08-16 20:11:01 +00:00
Dan Helfman a849935b1d Bugfix that prevented undo from working. 2007-08-16 19:55:11 +00:00
Dan Helfman 3424e6ad12 Some refactoring of the new link resolving and launching code, because, well,
it was just plain broken:

 * Setting link hrefs is no longer done in quite so many places to prevent
   conflicts. Still could be more centralized though.
 * Editor is no longer responsible for tracking note titles. It now issues
   signals for title changes, and Wiki takes care of tracking titles for all
   open editors.
 * A few places in Editor weren't making use of the new link_title()
   convenience function. Now they are.
 * They way Wiki was associating link pulldowns with their links was
   completely broken, because Javascript Arrays can't use DOM objects as keys.
   At least not if you want them to work. Now just setting a "pulldown" member
   on each link node directly.
 * Moved some of the "if you click a link and the target editor is already
   open, just highlight it" logic out of Editor and into Wiki. (Both
   load_note() and resolve_link(), unfortunately.)
 * Made Link_pulldown.title_field_changed just rely on resolve_link() instead
   of doing all the link resolving itself.
2007-08-16 01:29:18 +00:00
Dan Helfman e87eee87c8 Protection for a lack of an href. 2007-08-15 20:46:37 +00:00
Dan Helfman 8e819b7c01 Work-around for bug in IE where positions of iframe contents are not only
relative to the iframe itself, but also relative to how far the user has
scrolled.
2007-08-15 20:35:02 +00:00
Dan Helfman 52fd0d154a * Implemented a link_title() convenience function to get the link title from a link, either from
it's query string "title=" arg or from the actual contained title.
 * Made use of this new function in various places where title-grabbing was being done manually.
 * Made Editor.mouse_clicked() highlight and bail if there's already an open editor with a matching
   title. (Previously, it only did this matching by id.)
 * Wiki.load_editor() now looks to an open Link_pulldown's title field for the note's title, if
   available.
 * Link_pulldown formats "title=" query string args with MochiKit's queryString() to escape spaces
   and such.
 * Updated NOTE_LINK_PATTERN in wiki download view (untested currently).
2007-08-15 00:18:30 +00:00
Dan Helfman 429dc44370 Fixed a bug where Link_pulldown.display_preview() didn't correctly support either a DOM node or a string for its contents argument.
Also no strip()ing the scraped contents text so removing the note title works better.
2007-08-14 20:56:13 +00:00
Dan Helfman cae5d2272d When loading and parsing a note for display in an editor, there's now an optional link argument so
that the link clicked to launch the editor can be updated with the new editor's assigned id.

Also, the link pulldown init code now also examines already open notes when displaying a link title
and contents before asking the server for that information.
2007-08-14 20:34:31 +00:00
Dan Helfman 69caeaf655 Code mostly related to manipulating wiki links, plus a new link pulldown:
* Implemented a new controller.Notebooks.lookup_note_id() method to get only a note's id given its title.
 * Added some new link resolution code to Editor and Wiki, to fill in a link's id according to its destination note.
 * Factored out some of the link finding code into a common Editor.find_link_at_cursor() method.
 * Factored out query parsing into a common parse_query() function, which operates on a link node.
 * Added new Link_pulldown class-thingy to represent the little pulldown you see when the cursor's on a link.
 * Refactored Pulldown's positioning code to support offset positioning (needed for elements within an iframe).
2007-08-14 04:13:49 +00:00
Dan Helfman ec9cd1066c No longer moving any iframes when displaying search results that are already
open, as that causes the iframe contents to revert to as they were when the
iframe was loaded.
2007-08-11 21:49:33 +00:00
Dan Helfman d5345304cc Forgot to actually set the notebook_id within Editor. 2007-08-11 21:34:56 +00:00
Dan Helfman dbbc93a830 Tweaks to CSS for downloaded HTML version of wiki. 2007-08-10 20:17:40 +00:00
Dan Helfman 7a26017a28 Update the toolbar state everytime the mouse is clicked in case the cursor has moved. 2007-08-10 19:32:12 +00:00
Dan Helfman ea64cc97a2 If you undelete a note via undo, now it's indicated in the options pulldown that it's a startup note. 2007-08-10 19:19:47 +00:00
Dan Helfman 3de7d59d64 No longer hiding any editors when you click a link in a note in the middle of the page. 2007-08-10 19:07:00 +00:00
Dan Helfman 3002bea65c Increasing padding within note frames a bit. 2007-08-10 19:06:01 +00:00
Dan Helfman 3dd4af0534 Making the source code link an actual external link. 2007-08-08 20:18:55 +00:00
Dan Helfman 4a89afebbf New "contact us" and "faq" pages. Modified navigation accordingly. 2007-08-07 23:31:20 +00:00
Dan Helfman 2871c18721 Changed /about/contact links to mailto links, and improved CSS of 404 / uh oh pages. 2007-08-07 20:29:37 +00:00
Dan Helfman f2eac9cb1f Implemented a basic trash, including undo upon note deletion and undeletion from the trash:
* model.Note has a deleted_from member to indicate the notebook id it was deleted from (if any)
 * controller.Notebooks sets the deleted_from member and makes all deleted notes startup notes in the trash
 * new controller.Notebooks.undelete_note() method
 * split up the idea of UI messages into errors and informational messages, with separate CSS
 * updated Editor and Wiki UI code to deal with new deleted_from variable
 * added "undelete" button when viewing a deleted note, and "delete" changes to "delete forever"
 * added a "trash" link to the notebook links
 * reorganized responsibilities for displaying notebook/user links among Wiki.populate() and Wiki.display_user()
 * when deleting messages in a notebook with a trash, displaying "The note has been moved to the trash"...
   with a working undo button!
 * tweaked focusing logic in display_search_results(), which has been renamed to display_loaded_notes()
2007-08-07 01:48:43 +00:00
Dan Helfman c02d27e841 CSS tweaks involving:
* line height (increasing)
 * font size (switching to % instead of em)
 * note width (in IE)

These changes were made to improve readability.
2007-08-06 00:51:04 +00:00
Dan Helfman 5ceed4bf32 CSS tweaks to better handle smaller browser window widths in both Firefox and IE. 2007-08-02 22:47:20 +00:00
Dan Helfman c5dddb76db Adding a lame initial favicon.ico. 2007-08-02 19:54:47 +00:00
Dan Helfman 0ac518e395 * controller.Users.current() now returns an http_url if one is configured in config/Common.py
* changed controller.Users and controller.Root constructor arguments to support this.
 * Updated INSTALL document accordingly.
 * Client now will prepend this new http_url variable to the logout link.
2007-08-02 18:52:20 +00:00
Dan Helfman b58f5cb1a1 * tools/updatedb.py now takes an optional navigation note id parameter, so the titleless navigation note can be updated.
* both tools/initdb.py and tools/updatedb.py set link ids appropriately, rather than just leaving them all as "new"
 * both tools/initdb.py and tools/updatedb.py set certain links to use https if configured as such in config/Common.py
 * tools/initdb.py no longer creates a default "witten" user
 * Added target="_top" to links that should replace the top-level window, and updated client code to ignore links with targets.
 * Removed form_base_url from Editor.js, as https URL is now tacked on by initdb.py/updatedb.py instead.
2007-08-02 04:01:11 +00:00
Dan Helfman a5694d3661 Wording changes to about/features. 2007-08-01 22:18:37 +00:00
Dan Helfman 251fcf1996 Added support for a form base URL, in case you want forms to be submitted to, for instance, an SSL server. 2007-08-01 21:13:24 +00:00
Dan Helfman 0a457585d9 Expanded the page displayed when Javascript is disabled so search engines actually get something useful.
Made the page <title> contain "personal wiki notebook".
2007-08-01 20:46:26 +00:00
Dan Helfman 78b2404cf3 Tyepo fix. 2007-08-01 20:09:27 +00:00
Dan Helfman f23fcdde21 * Can now click on revision timestamps to open up the contents of previous note revisions with a small timestamp at the top.
* 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.
2007-07-31 22:53:57 +00:00
Dan Helfman 2c20d60f9e * Rewrote all wiki note links to be of the form: /notebooks/notebookid?note_id=noteid
* 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.
2007-07-28 04:22:44 +00:00
Dan Helfman 069532b58c Reverting to previous revision. Didn't mean to checkin these changes yet, as they're not complete. 2007-07-27 00:33:32 +00:00
Dan Helfman 35459270be Now ignoring link clicks that are with the right or middle mouse buttons. 2007-07-27 00:32:42 +00:00
Dan Helfman ccc1cc2f2d Fix for bug introduced by revisions list that preventing opening of new editors by clicking links. 2007-07-26 23:02:24 +00:00
Dan Helfman 0cbbc68282 Simulating max-height for pulldowns in brain-dead IE6. 2007-07-26 19:38:49 +00:00
Dan Helfman f05d3db661 * Added a "changes" tab with a list of revision timestamps for each note. Note yet clickable.
* Made controller.Notebooks.save_note() return the newly minted revision timestamp upon a successful save.
 * Whenever we get back a revision timestamp from save_note(), we store in in the client's list of revisions for that note.
 * Now raising Access_error in controller.Notebooks in various places where the notebook requested is unknown.
 * Tweaked pulldown CSS a bit. Now will sport a handy-dandy scrollbar if the pulldown gets too tall, at least in real browsers.
 * Fixed bug where clicking "show on startup" checkbox directly didn't visually toggle the checkbox.
2007-07-26 01:18:41 +00:00
Dan Helfman c05e143269 When scrolling the window, scroll to the top of the note controls instead of just the top of the iframe. 2007-07-23 23:49:57 +00:00
Dan Helfman 120c29954c More changes to search results displaying:
* Now, already open editors that happen to be in the search results are forcibly moved to be with the result of the search results.
2007-07-23 23:42:53 +00:00
Dan Helfman 94f75f23a7 Search results display changes:
* Search results are now appended to the open notes, instead of replacing them.
 * Already-open notes that also happen to be in the search results are closed so that they're not shown twice.
2007-07-23 23:19:15 +00:00
Dan Helfman bcd1dcbcd9 Increasingly brittle, but this fixes the following bug:
* hit bold, type some text, hit space, start a link. this will not actually start a link and will just insert a space
2007-07-23 22:57:48 +00:00
Dan Helfman a6fff8da31 Yet more selection shenanigans for starting a link in Firefox. Hopefully less buggy now. 2007-07-21 20:14:48 +00:00
Dan Helfman 8e6b152483 Factored out options pulldown into a separate "sub-class" of Pulldown. 2007-07-20 22:41:20 +00:00
Dan Helfman ed594fd798 Added info about saving notes. 2007-07-19 22:36:23 +00:00
Dan Helfman 0e968d0b60 Fix for negative indexing. 2007-07-19 02:50:58 +00:00
Dan Helfman 302dd0c869 Clarifying link creation. 2007-07-18 22:32:47 +00:00
Dan Helfman 8df8036255 Ending a link in IE no longer moves the cursor to the end of the line. 2007-07-18 21:51:59 +00:00
Dan Helfman dcc42cf808 Simplified the "welcome to your wiki" note. 2007-07-18 21:47:43 +00:00
Dan Helfman de9e3a55e3 Fixing Firefox link creation when in the middle of a line. 2007-07-18 21:29:47 +00:00
Dan Helfman 5dca7e972e Changing note link key to ctrl-L and unordered list to ctrl-U. 2007-07-18 20:28:42 +00:00
Dan Helfman 0976fdf8c6 Renaming all entries to notes to fit better with the name "Luminotes". 2007-07-17 01:21:31 +00:00
Dan Helfman 64bf5e34a1 Renamed placeholder title "Limited Medium" to "Luminotes". 2007-07-16 21:03:39 +00:00
Dan Helfman 02cfca5322 Renaming repository to new name: luminotes 2007-07-16 20:22:38 +00:00