witten
/
luminotes
Archived
1
0
Fork 0
Commit Graph

859 Commits

Author SHA1 Message Date
Dan Helfman 5b65474151 JavaScript unit tests now pass again. 2007-10-16 23:02:37 +00:00
Dan Helfman 613ee8a217 Completely revamped the way the main page and the notes on it are loaded by
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.
2007-10-16 21:37:12 +00:00
Dan Helfman 6786f9801a No longer asking the server for revisions for a note that hasn't been saved yet. 2007-10-11 11:29:42 +00:00
Dan Helfman 1875f1ed00 Fix for case where revisions list doesn't yet exist. 2007-10-11 10:07:27 +00:00
Dan Helfman 43c6f54e9f Merged revisions 401-446 via svnmerge from
svn+ssh://torsion.org/home/luminotes/repos/luminotes/branches/postgres

................
  r402 | witten | 2007-10-04 00:48:49 -0700 (Thu, 04 Oct 2007) | 3 lines

  Initialized merge tracking via "svnmerge" with revisions "1-401" from
  svn+ssh://torsion.org/home/luminotes/repos/luminotes/trunk
................
  r404 | witten | 2007-10-04 01:17:07 -0700 (Thu, 04 Oct 2007) | 2 lines

  Beginning a conversion from bsddb to postgres.
................
  r405 | witten | 2007-10-04 01:18:58 -0700 (Thu, 04 Oct 2007) | 9 lines

  Merged revisions 402-404 via svnmerge from
  svn+ssh://torsion.org/home/luminotes/repos/luminotes/trunk

  ........
    r403 | witten | 2007-10-04 01:14:45 -0700 (Thu, 04 Oct 2007) | 2 lines

    Yay, no more stupid deprecation warnings from simplejson about the sre module.
  ........
................
  r406 | witten | 2007-10-04 15:34:39 -0700 (Thu, 04 Oct 2007) | 4 lines

   * Switched back to Python 2.4 because many Python modules in Debian are not packaged to work with Python 2.5
   * Began removal of all references to Scheduler, @async, yield, and so on.
   * Converted Database.py to support PostgreSQL and updated its unit tests accordingly.
................
  r407 | witten | 2007-10-04 16:34:01 -0700 (Thu, 04 Oct 2007) | 2 lines

  All unit tests for the new model classes now pass.
................
  r409 | witten | 2007-10-05 00:53:56 -0700 (Fri, 05 Oct 2007) | 2 lines

  Reordering some columns and adding some indices.
................
  r410 | witten | 2007-10-05 16:08:37 -0700 (Fri, 05 Oct 2007) | 4 lines

  Now adding trash notebooks to user_notebook table. Also switching db
  conversion/verification tools back to require Python 2.5, since they still use
  the old Scheduler, which requires 2.5 generator features.
................
  r411 | witten | 2007-10-06 16:26:56 -0700 (Sat, 06 Oct 2007) | 2 lines

  Lots more unit tests passing. Most of the recent work was on controller.Users and related stuff.
................
  r412 | witten | 2007-10-07 01:52:12 -0700 (Sun, 07 Oct 2007) | 2 lines

  controller.Users unit tests now finally pass!
................
  r413 | witten | 2007-10-07 02:14:10 -0700 (Sun, 07 Oct 2007) | 3 lines

  Got controller.Root unit tests passing.
  Moved fake sql_* function shenanigans from Test_users.py to Test_controller.py, for use by other controller unit tests.
................
  r414 | witten | 2007-10-08 23:11:11 -0700 (Mon, 08 Oct 2007) | 2 lines

  All unit tests pass! Fuck yeah!
................
  r415 | witten | 2007-10-08 23:13:07 -0700 (Mon, 08 Oct 2007) | 2 lines

  Removing all references to Scheduler from luminotes.py
................
  r416 | witten | 2007-10-08 23:54:51 -0700 (Mon, 08 Oct 2007) | 3 lines

  Converted deleted_from to deleted_from_id in a few more places.
  Fixed bug in Users.contents().
................
  r417 | witten | 2007-10-09 00:11:59 -0700 (Tue, 09 Oct 2007) | 3 lines

  Typo fix in Note sql method.
  Adding autocommit flag to Database.next_id() method.
................
  r418 | witten | 2007-10-09 00:13:19 -0700 (Tue, 09 Oct 2007) | 2 lines

  Updating unit test for new auto commit flag.
................
  r419 | witten | 2007-10-09 00:14:09 -0700 (Tue, 09 Oct 2007) | 2 lines

  Removing debugging print.
................
  r420 | witten | 2007-10-09 00:20:55 -0700 (Tue, 09 Oct 2007) | 2 lines

  More sql fixes. I really need some funtional tests that hit the database and exercise the SQL.
................
  r421 | witten | 2007-10-09 00:51:34 -0700 (Tue, 09 Oct 2007) | 3 lines

  Fixed controller.Database handling of tuple as an Object_type.
  Made SQL for user storage calculation better at handling null values and also more succinct.
................
  r422 | witten | 2007-10-09 13:32:16 -0700 (Tue, 09 Oct 2007) | 2 lines

  Converting Wiki.js to trash_id notebook member instead of trash object.
................
  r423 | witten | 2007-10-09 13:42:10 -0700 (Tue, 09 Oct 2007) | 2 lines

  No longer displaying "download as html" on the front page, as people see "download" and think they're downloading the software.
................
  r424 | witten | 2007-10-09 14:24:40 -0700 (Tue, 09 Oct 2007) | 2 lines

  Notebooks.contents() now returns notebooks with correct read-write status.
................
  r425 | witten | 2007-10-09 14:32:25 -0700 (Tue, 09 Oct 2007) | 2 lines

  Fixed reporting of validation errors to the user. Now says "The blah is missing." instead of just "is missing"
................
  r426 | witten | 2007-10-09 17:05:22 -0700 (Tue, 09 Oct 2007) | 2 lines

  No longer redirecting to trash notebook upon login.
................
  r427 | witten | 2007-10-09 17:20:33 -0700 (Tue, 09 Oct 2007) | 2 lines

  Made controller.Database use a connection pool.
................
  r429 | witten | 2007-10-09 20:13:30 -0700 (Tue, 09 Oct 2007) | 2 lines

  Converted initdb.py and updatedb.py to Postgres from bsddb.
................
  r430 | witten | 2007-10-09 20:37:14 -0700 (Tue, 09 Oct 2007) | 2 lines

  Changing error message to remove underscores from variable names.
................
  r431 | witten | 2007-10-10 13:23:30 -0700 (Wed, 10 Oct 2007) | 2 lines

  Removing unused note_title parameter from Wiki.create_editor().
................
  r432 | witten | 2007-10-10 13:25:16 -0700 (Wed, 10 Oct 2007) | 2 lines

  Revision regular expression now supports timezone notation.
................
  r433 | witten | 2007-10-10 14:43:47 -0700 (Wed, 10 Oct 2007) | 2 lines

  Finished implementing ranked ordering for startup notes. (However, there's no way to change the rank from the client yet.)
................
  r434 | witten | 2007-10-10 16:25:19 -0700 (Wed, 10 Oct 2007) | 4 lines

  More strict access checking. Fixed oversight in Postgres DB conversion where,
  in certain controller.Notebook methods, access was only checked at the
  notebook level, not at the note level as well.
................
  r435 | witten | 2007-10-10 17:45:18 -0700 (Wed, 10 Oct 2007) | 3 lines

  Now loading revisions on demand from client when the "changes" button is clicked. Also caching
  loading revisions so subsequent clicks don't have to reload.
................
  r436 | witten | 2007-10-10 21:31:20 -0700 (Wed, 10 Oct 2007) | 2 lines

  Tweaking some of the error handling in Expose and Root so that unhandled errors give a generic error message to the client.
................
  r437 | witten | 2007-10-10 21:33:49 -0700 (Wed, 10 Oct 2007) | 2 lines

  The release script no longer runs initdb.py, because the default database is no longer a single file included in the tarball.
................
  r438 | witten | 2007-10-10 21:40:11 -0700 (Wed, 10 Oct 2007) | 2 lines

  Updated install instructuctions to include use of initdb.py.
................
  r439 | witten | 2007-10-10 21:56:42 -0700 (Wed, 10 Oct 2007) | 3 lines

  Made initdb.py only nuke (drop tables/views) when given a command-line flag.
  Also made install directions more correct.
................
  r440 | witten | 2007-10-10 21:58:48 -0700 (Wed, 10 Oct 2007) | 2 lines

  IE 6 doesn't like commas.
................
  r441 | witten | 2007-10-10 22:08:50 -0700 (Wed, 10 Oct 2007) | 4 lines

  load your notebook. without clicking on "changes", edit a note that has previous revisions. click on "changes". it'll only show
  the most recent revision. fixed by not appending to changes as a result of a save unless the client-side revisions list cache has
  something in it
................
  r442 | witten | 2007-10-10 23:30:41 -0700 (Wed, 10 Oct 2007) | 2 lines

  Forgot to actually save off the new revision as editor.revision.
................
  r443 | witten | 2007-10-11 01:35:54 -0700 (Thu, 11 Oct 2007) | 13 lines

  More intelligent datetime handling:
    * convertdb.py assumes old bsddb database timestamps are Pacific, and then
      converts them to UTC before inserting them into the new PostgreSQL
      database.
    * No longer using naked timezoneless datetime objects in model/controller
      code, except in unit tests that need compatability with pysqlite. Now
      using UTC everwhere.
    * Asking PostgreSQL to give us all timestamps back in UTC.
    * New dependency on python-tz (pytz) package, noted in INSTALL doc.
    * Client now responsible for converting UTC timestamps to local time for
      display.
................
  r444 | witten | 2007-10-11 01:46:09 -0700 (Thu, 11 Oct 2007) | 2 lines

  Tweak to prevent potential race in IE.
................
  r445 | witten | 2007-10-11 01:49:58 -0700 (Thu, 11 Oct 2007) | 2 lines

  Got JavaScript "unit" tests passing again.
................
  r446 | witten | 2007-10-11 01:53:58 -0700 (Thu, 11 Oct 2007) | 2 lines

  Noting that js tests require the Luminotes server on localhost.
................
2007-10-11 09:03:43 +00:00
Dan Helfman 03bffe4676 Missing target attribute. 2007-10-10 03:09:07 +00:00
Dan Helfman 76e036eab6 Made a demo that you can get to without signing up or entering any information. 2007-09-28 23:54:19 +00:00
Dan Helfman 31750d0040 Removed the word "used" from quota report in the client. 2007-09-28 20:42:27 +00:00
Dan Helfman 5d860300f1 Removed search options button because:
1. It's confusing. People think you click it to perform the search, then are surprised when it doesn't do that.
  2. Now that the search results are displayed more clearly, there's really no need for a titles-only search option.
2007-09-28 20:31:20 +00:00
Dan Helfman 0bc354b692 Slight update to welcome text. 2007-09-28 19:45:54 +00:00
Dan Helfman 776765031d "New note" toolbar button now correctly presses and depresses. 2007-09-28 19:40:00 +00:00
Dan Helfman 092614911b Pressing a button now no longer makes the toolbar shift by a few pixels to the side. 2007-09-28 19:19:57 +00:00
Dan Helfman 781683cc6f Toolbar buttons are now more clearer, e.g. list buttons look like little lists. 2007-09-28 05:07:14 +00:00
Dan Helfman 9673d84c3f "Please check your inbox" message is now an orange message box instead of a red error box. 2007-09-27 22:40:18 +00:00
Dan Helfman c343db12e2 Yet more fucking lame-o CSS changes. 2007-09-27 22:11:16 +00:00
Dan Helfman 6404e95183 Sigh. I hate the web. 2007-09-27 06:44:29 +00:00
Dan Helfman 091e7a34dd Change to IE 7 CSS to make "loading" status indicator go in the upper left. 2007-09-27 06:19:25 +00:00
Dan Helfman 5cf7dd3b14 Splitting off IE 6 and 7 CSS into separate, conditionally included files. 2007-09-27 06:16:53 +00:00
Dan Helfman 1ded442791 In IE, now resizing on iframe init with onresize instead of a somewhat arbitrary setTimeout() delay.
This prevents the resize from breaking and only showing part of the iframe contents.
2007-09-27 05:45:43 +00:00
Dan Helfman c23b4b324c support@ instead of questions@luminotes.com 2007-09-27 00:28:19 +00:00
Dan Helfman cb66bc6da3 Fewer small fonts, and sans-serif instead of times. 2007-09-27 00:26:51 +00:00
Dan Helfman 9e6ad24351 Removing fancy "take a tour" / "try it out" image buttons in favor of text links, because the images clashed with the rest of the page. 2007-09-27 00:09:25 +00:00
Dan Helfman f6da052e88 Self-service password reset functionality, plus full unit tests.
GOD DAMN that was annoying to implement.
2007-09-26 23:49:27 +00:00
Dan Helfman 4a39a798cd Rewrote the "about" note, because I didn't like the previous one. 2007-09-24 21:32:11 +00:00
Dan Helfman 90aa4d1903 Preloading hover images for great responsiveness. 2007-09-24 21:05:41 +00:00
Dan Helfman 3be8f891b4 Fancy new image buttons for "take a tour" and "try it out".
Also updated initdb.py to handle links containing more than just text.
2007-09-24 20:50:01 +00:00
Dan Helfman 13c63fd400 Made CSS layout much better for scaling to small and large resolutions.
Toolbar and link area now both stay somewhat near the center area.
IE max-width hack rewritten to work better.
2007-09-23 20:42:44 +00:00
Dan Helfman f495f44a96 Made a tour images and linked to it from various places.
Also removed references to "take a tour" note, since it no longer exists.
2007-09-21 23:10:08 +00:00
Dan Helfman c5a2b3900f Sigh. IE commas. 2007-09-20 23:34:34 +00:00
Dan Helfman 212f516aeb uh, whoops 2007-09-20 23:30:09 +00:00
Dan Helfman 68d07a6fc8 Adding "ok" button to all messages/errors.
Making quota warning messages not disappear as soon as it's displayed.
2007-09-20 23:25:59 +00:00
Dan Helfman f1caee29a4 Removed trash link in quota warning, because we don't have access to this.notebook there. 2007-09-20 23:07:24 +00:00
Dan Helfman c5c4498d19 Warning displayed when you're nearing your storage quota. 2007-09-20 22:59:00 +00:00
Dan Helfman c9bd2ae576 Now updating storage utilization on client in "realtime" as a result of user actions. 2007-09-20 22:26:43 +00:00
Dan Helfman 4d736d4821 Lots of work on user storage quotas:
* Each model.User now has a current storage bytes and a rate plan.
 * model.User.to_dict() updated accordingly.
 * Minor Scheduler.add() change to bail of the given thread is None.
 * controller.Users.current() returns current user's rate plan details.
 * controller.Users.update_storage() now takes an optional callback.
 * Various methods in controller.Notebooks responsible for calling controller.Users.update_storage().
 * Added rate plan details to config/Common.py.
 * Added quota utilization colors to style.css.
 * Implemented quota utilization calculation and display in Wiki.js.

Still to-do: Return updated storage bytes where appropriate in controller.Notebook and update the
client accordingly.
2007-09-20 20:36:19 +00:00
Dan Helfman 52409fc1a1 Got rid of annoying blue lines/spacing around notebook border. 2007-09-11 21:11:59 +00:00
Dan Helfman d4d41c9d48 Now replacing/refreshing "all notes" when it's already open and you click the "all notes" link again. 2007-09-11 19:19:03 +00:00
Dan Helfman 49a692f378 Intentionally *not* showing a link pulldown when you start a link and begin
typing. Only showing the pulldown when you end the link (or when you navigate
away and then come back).
2007-09-11 00:10:44 +00:00
Dan Helfman 060b0b6845 Overhauled display of search results. Now displaying a "magic" search results
note containing a list of search results along with previews of the display
notes.
2007-09-10 20:04:46 +00:00
Dan Helfman 67c43cbef0 Learned to spell JavaScript. 2007-09-10 19:43:51 +00:00
Dan Helfman 7634393431 Reverting previous change since it has the unwanted side-effect of making link pulldowns stay open too long. 2007-09-08 00:21:33 +00:00
Dan Helfman 57c456d839 If you started a link and began typing, the link pulldown appeared when you type a space, even if the link isn't done. 2007-09-08 00:12:42 +00:00
Dan Helfman 78d5845140 Fixing broken "all notes" link. Sigh. 2007-09-07 23:58:03 +00:00
Dan Helfman 773ea3bf2b If a link had title "all notes" but a different link id for the destination,
and you clicked on the link without opening the link pulldown first, then the
link would open up "all notes" instead of the correct link destination.
2007-09-07 23:46:01 +00:00
Dan Helfman ecf44bdf6e Made code dealing with "all notes" in link pulldown work better (or at all). 2007-09-07 23:03:12 +00:00
Dan Helfman 7e67181be9 Test for editor.empty(). 2007-09-07 22:17:08 +00:00
Dan Helfman 0e8f557ae4 Forgot to checkin Stub_editor.js previously.
Also, factoring out Editor test setup into Editor_setup.js for reuse.
Added test for Editor.contents().
2007-09-07 22:07:43 +00:00
Dan Helfman 707c3dbc02 Test_editor() function that actually runs. 2007-09-07 21:39:01 +00:00
Dan Helfman 3955bcb8b9 Wrote a very basic stub editor for testing the Wiki class.
Made test for Editor() constructor slightly more useful.
2007-09-07 21:05:39 +00:00
Dan Helfman ae347d0e3b Wrote stub invoker for testing purposes and made use of it in Test_wiki.html. 2007-09-06 21:36:39 +00:00
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