witten
/
luminotes
Archived
1
0
Fork 0
Commit Graph

40 Commits

Author SHA1 Message Date
Dan Helfman 58d0450ff5 Including email address with user object so that it shows up properly in the settings panel. 2009-01-26 15:06:09 -08:00
Dan Helfman ca8ae5cd82 Rolling back the part of revision 1285 that made quota calculation just use note_current instead of note table.
It was intended to make quota storage calculation faster, which it did
do. However, it wasn't enough of an improvement (27 seconds down to 8
seconds for the query), so a different solution will be necessary.
2008-11-21 16:17:54 -08:00
Dan Helfman 3c11526480 Fixed a bug that prevented the autosaver from working on non-forum notebooks. 2008-11-20 17:39:20 -08:00
Dan Helfman 4855ac0c7e New note_count member on model.Notebook. 2008-11-17 23:42:29 -08:00
Dan Helfman 1889bf8a23 model.User.sql_update_access() now able to take either bool read_write value or Notebook.READ_* value. 2008-11-04 12:22:44 -08:00
Dan Helfman 6708675fec Factored out page navigation (pagination) code and made use of it on forum thread list page. 2008-10-31 15:17:59 -07:00
Dan Helfman 3e51057d2d Order forum threads in reverse chronological order by creation date. 2008-10-28 14:38:01 -07:00
Dan Helfman 388f2fcb02 Foundational work for both tags and discussion forums. Should have checked this in in smaller pieces. 2008-10-24 11:51:19 -07:00
Dan Helfman 410f6f8cbf Added basic note searching for SQLite. Should really be using SQLite's full-text search instead.
In sql_load_notes, no longer adding offset clause if start = 0 since SQLite doesn't like offset without limit.
Switched from using "ilike" to "like" with lower(), since "ilike" is a PostgreSQL-specific extension.
Moved BACKEND flags from Database to Persistent to prevent need from circular imports (model files importing controller.Database).
2008-08-19 17:48:33 -07:00
Dan Helfman d0d0946788 Added backend parameter to sql_calculate_storage() for SQLite support. Also fixed bug in which salt could contain "\" character. 2008-08-19 14:21:59 -07:00
Dan Helfman a8a6070da0 Implemented controller.users.signup_group_member().
Modified UI code to call this method correctly and display results.
Split generic user signup functionality out into a separate private method.
2008-06-06 14:46:29 -07:00
Dan Helfman 0faa06ea10 Called controller.Users.calculate_group_storage() from various places. Fixed model.User.sql_calculate_group_storage(). 2008-06-05 15:59:01 -07:00
Dan Helfman f8efc2f178 Added a new group_storage_bytes member to model.User and some SQL to calculate it. 2008-06-04 19:46:08 -07:00
Dan Helfman 79e2c45533 New controller.Groups class and a new controller.Users.check_group() method.
Also a new model.Group.sql_load_users() method.
Lots of unit tests.
2008-05-29 16:36:14 -07:00
Dan Helfman df3d170362 View groups that you're a member of, with an indicatation if you're an admin of that group.
- 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
2008-05-28 16:05:38 -07:00
Dan Helfman bcedc11e9a Added user_group-related SQL methods to model.User. 2008-05-28 13:33:33 -07:00
Dan Helfman 18982dc129 Implemented basic user account settings. Now you can change your email
address.
2008-05-08 03:05:35 +00:00
Dan Helfman 0967965847 Implemented transition script to set the ranks for all users' notebooks. 2008-03-17 21:51:26 +00:00
Dan Helfman 94a51889f9 Added ability to reorder notebooks on the right side of the page.
Need to complete unit tests for controller.Notebooks.move_up() and move_down().
2008-03-15 03:04:59 +00:00
Dan Helfman 3d5baa1e24 * Quota storage calculation now takes uploaded files into account.
* 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.
2008-02-20 00:57:10 +00:00
Dan Helfman ffd2d15175 Now, if you delete a notebook and the only remaining notebook is read-only,
then a new read-write notebook is created for you automatically. This fixes a
bug where you could delete a notebook and have only a read-only notebook
remaining, thereby having no way to add a new notebook.
2008-01-24 22:02:02 +00:00
Dan Helfman 7bdc228d09 A user can now revoke their own access. Protecting users from the own
stupidity proved too complex and fragile. So now they have the full power to
shoot themselves in the foot.

A user can no longer, however, redeem an invite that they send to themself.
2008-01-06 21:59:22 +00:00
Dan Helfman 28473599e0 Updating storage quota calculation to only include notebooks that the user owns. 2008-01-04 22:54:01 +00:00
Dan Helfman e086114478 Unicode passwords containing special characters would break sha.new(). Now they're encoded as utf8 first. 2008-01-03 22:04:34 +00:00
Dan Helfman d0d87731d2 * Preventing a user from revoking their own access.
* More unit tests for revoking access.
2007-12-30 01:20:38 +00:00
Dan Helfman 8372b03373 Began work on invite redeeming. 2007-12-18 00:05:13 +00:00
Dan Helfman 1cb12f6ae4 Making various notebook/user functions support the new "owner" access flag. 2007-12-04 21:28:03 +00:00
Dan Helfman 82bf5bca29 Schema and model changes to support invitations and multiple user collaboration:
* added new database table of invited email addresses
 * altered user_notebook table to have a new owner boolean column, indicating whether the user has owner access to the notebook
 * altered notebook and note tables/views to have an additional user_id field to indicate the user that created that revision
 * updated model.Notebook and model.Note to support new user_id field
2007-12-01 01:08:16 +00:00
Dan Helfman eec5ef6411 Implemented delete forever for notebooks. And unit tests! 2007-11-17 23:29:22 +00:00
Dan Helfman 7bd83199a1 Almost done with notebook deletion/undeletion. Just need to implement delete forever. 2007-11-17 22:55:13 +00:00
Dan Helfman 34f7d223d1 Changed things so the client is responsible for filtering out deleted notebooks from the display instead of the server. 2007-11-17 04:55:53 +00:00
Dan Helfman cdd971780e Began work on notebook deletion and subsequent undo/undeletion.
Changed schema slightly to support this.
Added a schema delta file and wrote an UPGRADE doc with info on how to upgrade schemas.
2007-11-17 04:21:48 +00:00
Dan Helfman 5a49506eee Simpler, faster, and more correct storage usage calculation. 2007-10-22 08:11:50 +00:00
Dan Helfman bbebad528e Renaming new_model to model, now that the old bsddb model is out of the way. 2007-10-11 19:49:00 +00:00
Dan Helfman 17ad869635 Old model no longer needed now that all databases are convered to PostgreSQL. 2007-10-11 19:45:46 +00:00
Dan Helfman 0052858fdc Set email util. 2007-09-27 02:33:24 +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 ebf1538313 model.User now has a storage_bytes member, and controller.Users has a method for calculating and updating this field. 2007-09-13 00:53:49 +00:00
Dan Helfman 4e28620348 * Added a trash Notebook to model.Notebook.
* Made sure the trash is not exposed by the read-only notebook view.
 * Modified model.User.check_access() to consider read-write access to a
   notebook to be sufficient for access to that notebook's trash.
 * Modified controller.Users so new users are created with a notebook that
   has a trash.
 * Changed controller.Notebooks so deleted notes go to the trash (if any).
2007-08-03 21:12:17 +00:00
Dan Helfman 02cfca5322 Renaming repository to new name: luminotes 2007-07-16 20:22:38 +00:00