Commit graph

424 commits

Author SHA1 Message Date
lukemelia
5a878b3e84 A few minor changes and bug fixes:
* On first user signup, the user no longer needs to login and after signing up. They are automatically logged in.
 * The Projects page was showing the name of the last project listed in the new project form. It is now appropriately blank.
 * When trying to create a new action, an error was occurring trying to update tags if the action failed to save. We now only try to update tags if the action saved. I wonder if we should be using some sort of ActiveRecord transaction here. If anyone knows about this, please contact me.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@481 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-22 04:37:20 +00:00
lukemelia
38b2e336a8 Implemented a feature that give a project and optional default context. When set,
this context will be pre-populated when creating an action from the project's page.
When creating an action from the home page, the context will be auto-selected when
the project is selected if the context field has not yet been entered.

This implementation is a combination of the great patch submitted by James Kebinger
(thanks James!) and some of my modifications and additions.

Don't forget to rake db:migrate.

Fixes #162, originally suggested by Rolf one year ago!

Also in this commit:

 * Tweaked selenium tags test
 * Tweaked formatting of next/previous project HTML
 * Implemented Null Object pattern for context to support
   a Project having no default context
 * Removed tickler.rhtml, no longer in use
 * applying z-index values to project sortable list items (otherwise context
   autocomplete was appearing below next list item)
 * Swapped order of project and context in new action form (setting default context
   makes more sense this way)
 * Removed CSS width of for form elements, so form could be used in content area
   without being too narrow
   


git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@480 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-21 07:12:14 +00:00
lukemelia
11ed78abe2 Updated tests to pass even in the case of the weird schema (integer fields instead of booleans) that still pops up.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@479 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-20 05:06:37 +00:00
bsag
1bf617f8f1 Actions on the /todos/tag page are now displayed by context, as on the home page. If you don't have any incomplete actions with the specified tag, you'll get a message, but at the moment I can't seem to handle the error that occurs when the tag itself does not exist, so you get kicked back to the index page with a generic server error.
Fixes #447.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@478 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-19 09:14:55 +00:00
lukemelia
4c061508ce Removed test's reference to deleted FeedController class.
One thing I forgot to mention in the last commit is that the changes break feed links. If people think it's important to maintain them, we can use routes to accomplish that...

git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@477 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-18 05:28:53 +00:00
lukemelia
106d5ee448 Made TodosController more RESTful and use it to fulfill all feeds, eliminating the need for the FeedController and it's helper and views. Also added an ATOM feed (not linked in the UI anywhere, just substitute .atom for .rss).
I also ran rcov on unit tests and added tests to improve test coverage, uncovering a couple of bugs along the way.

git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@476 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-18 00:38:05 +00:00
lukemelia
84357b67d5 Apply Trevor Lovett's patch (#364)
"I kick off a lot of small projects, and I often want to add actions right when I create the project. This is a simple tweak that provides a check box that allows you to immediately go to the project page after creating a new project."

Thanks, Trevor. Sorry it took so long!



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@474 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-10 04:10:53 +00:00
lukemelia
18bb7ff16a Reenable keyboard shortcuts for the date fields.
* Adds keyboard shortcuts to the passed in date field:
 *
 *   't'         input today's date
 *   '+' or '='  increment the date in the field by one day
 *   '-'         decrement the date in the field by one day
 *
 * If the calendar is visible, the shortcuts play nicely with it. If not,
 * they still work properly. Pressing '+' when no date is entered in the
 * field will set the date to tomorrow, and likewise '-' with no date
 * entered will set the date to yesterday.




git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@473 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-10 03:32:47 +00:00
lukemelia
3e177ad67b Apply James Kebinger's patch to improve the initial state of the projects page when a user does not yet have any projectes.
Thanks, James!



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@472 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-10 03:23:59 +00:00
lukemelia
85885f9b9b Add next-previous links to project detail pages. Closes #379
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@470 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-06 13:18:31 +00:00
lukemelia
49296539ee Fixed a typo. Thanks to Colin Canfield for the catch.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@469 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-01 11:12:44 +00:00
lukemelia
178e1c70cd rollback to previous has_many_polymorphs version. upgrading had issues.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@468 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-28 07:00:53 +00:00
lukemelia
38eae1eb08 rollback to previous rails version. upgrading had issues.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@467 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-28 06:59:29 +00:00
lukemelia
93169a9082 Prepare to update has_many_polymorphs plugin
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@466 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-28 06:06:15 +00:00
lukemelia
c113455b1d Prepare to update to Rails 1.2.2
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@465 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-28 05:59:10 +00:00
lukemelia
1bada8f5a3 Introduced separation of projects by state (Active, Hidden, Completed) on the main Projects page. There are still some Ajax corner cases to work out, but it's perfectly usable. Closes #460.
I also refactored change password code.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@464 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-28 05:36:10 +00:00
lukemelia
9fc4d4ed61 The project autocompletion now only draws from active projects.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@463 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-27 05:27:34 +00:00
lukemelia
569767b8c1 Added empty ActiveRecord classes to early migrations that were missing them.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@462 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-27 05:05:54 +00:00
lukemelia
0a01b138a0 The default values for Context#created_at and Project#created_at introduced in [440] were breaking rails' timestamp mixin and leaving created_at fields null. This changeset includes a migration to ensure that those columns contain no null values and backs out those changes. This fixes #454 but does risk reintroducing #438.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@461 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-27 04:07:22 +00:00
lukemelia
146c6a62f9 Added a preference for the date format of the big date at the top of each page. Fixes #348.
Remember to rake db:migrate.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@460 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-27 02:42:37 +00:00
bsag
f4f1a3c1b7 Changed print.css as suggested by lrbalt to remove the restriction to 3x5" index cards. If you want to print on index cards now, it's best to change the paper size to 3x5 in the print dialog. I think this makes it a bit more flexible, but I've just commented the lines out in case the Hipster PDA guys rise up in protest!
Fixes #453

git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@459 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-24 16:38:14 +00:00
bsag
9c0a572c56 Clicking the 'Done' button in the nav bar no longer results in a 500 error.
Fixes #456

git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@458 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-24 10:50:21 +00:00
lukemelia
4f9cd61619 Some tweaks to the Open ID authentication support (which I've been using very happily, BTW). It now respects the "Keep me logged in" checkbox on the login page. It also cookies your openid url for less typing on future visits to the login page.
Also, we try to avoid calling store_location on expiry if the triggering url was an ajax request (like one of the periodically executing javascripts). Storing the location doesn't make sense in that case.


git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@457 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-24 08:04:23 +00:00
lukemelia
dae9a4b1b4 Fix problem that caused an empty project text feed. Fixes #444.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@456 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-24 02:23:59 +00:00
lukemelia
42f560957f DRY up the feed_controller with a filter.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@455 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-23 13:54:38 +00:00
lukemelia
139051f55f Tweak the context_listing/edit_then_delete test to run more reliably
More adjustments to the time zone calculations. Fixes #450
Add context and project finders as Association Extensions on the User model to simplify controllers and address the feed bug identified by Ryan. Fixes #446 and #444
Replaced usages of "uncompleted" with "incomplete"



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@454 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-23 13:38:36 +00:00
lukemelia
0a28edb2d8 Remove transactions from migrations to support sqlite-3. Fixes #451.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@453 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-23 04:31:49 +00:00
lukemelia
53e8576182 Added the counts to the various projects and contexts groupings in the sidebar. Closes #171.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@452 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-22 05:28:45 +00:00
lukemelia
9e3f686f84 Added feed for active projects with no next actions. Closes #423.
Refactored ProjectsController#index and ContextsController#index to simplify them.
Tweak the taggings fixtures to fix broken tests.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@451 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-22 05:15:52 +00:00
lukemelia
cf4adff2e6 Remove improper adjustment of due dates by user time zone. This is the corollary fix to the one contained in [444]. Fixes #450.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@450 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-22 03:47:58 +00:00
lukemelia
10417aca20 Improve and clean up the Ajax interactions involved in deleting projects and contexts from their listing pages.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@449 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-21 14:12:54 +00:00
lukemelia
4c7d27004d Test and fix issue preventing editing the same context twice on the context listing page. Fixes #442
Remove unused edit_context partial.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@448 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-21 05:31:43 +00:00
bsag
341e1fa603 Altered /todo/tag so that it only finds active actions, not completed ones.
Fixes #448

git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@447 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-20 20:05:34 +00:00
lukemelia
96a6da0090 Updated documentation mentions from "rake migrate" to "rake db:migrate"
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@446 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-18 14:58:28 +00:00
lukemelia
439f955d32 Introduced a user preference for redirecting to an action's project page when you mark it complete. Defaults to false (no change from the current behavior of Tracks.) The idea of this feature is to go to the project detail page so you can see or create the next action. I'm interested in feedback from people who try this out.
Remember to rake migrate after you update.

Fixes #38.

Also, I added a display of the user's formatted date and current local time to the preferences page.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@445 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-18 06:54:49 +00:00
lukemelia
48e9bcc33f Removed timezone adjustments from date parsing. It doesn't make sense to adjust a date, only a time. Thanks to the commenters on ticket #427.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@444 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-17 07:03:56 +00:00
lukemelia
b7dc28842f Fixes #441 - Updating a project on the project listing page does not hide edit form
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@443 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-17 06:50:12 +00:00
lukemelia
1f09c41f95 Fixes #442, Ajax problem updating context on context listing page.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@442 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-17 06:46:41 +00:00
lukemelia
3af574f76e Strip non-breaking space HTML entities from the text feeds. Fixes #443.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@441 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-17 06:01:54 +00:00
lukemelia
6aae34156e Broken project and context feeds were caused by NULL created_at/updated_at fields in the projects and contexts tables. This changeset makes the models user Time.now if those fields are nil. It would be best to set these fields to non-null values, but I'm not quite sure how to write that migration yet. Fixes #438.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@440 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-17 05:46:24 +00:00
lukemelia
3dbc39113e Fixes #439 (Can't toggle contexts on todo index page). Not sure I quite understand why this was broken, but we should be able to migrate a lot of code out of todo-items.js over time.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@439 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-13 06:48:45 +00:00
lukemelia
21cd0f04cf Fix pluralization of due dates. (No more "Due in 1 days")
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@438 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-13 05:48:47 +00:00
lukemelia
468ad81122 Improve OpenId authentication in cases of delegated OpenID (see http://simonwillison.net/2006/Dec/19/openid/ for background on this).
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@437 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-13 05:28:51 +00:00
bsag
da7408387d Added to todo controller tests to test adding and removing tags from a todo, and also finding todos tagged with a tag.
Also added a Selenium test for finding todos tagged with a tag.

git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@436 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-10 19:11:22 +00:00
lukemelia
08290efdf5 Fixed #436 (Show from not working). While debugging this issue, I renamed a lot of usages of "item" to "todo" to make the code easier to understand.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@435 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-08 05:47:14 +00:00
lukemelia
d012a3ab71 Fixes bug #435 introduced in the last changeset that prevented actions from being marked complete in Safari (how unproductive!).
On a related note, a fair amount of javascript has changed, so please do try it out on your favorite browser and add any other cross-browser issues to the Trac.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@434 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-06 13:43:16 +00:00
lukemelia
3070d280ea * Apply unobtrusive javascript principles to _item partial, and reduce the amount of inline javascript throughout the app by a lot.
* Cleaned up the _item partial, moving logic into todo_helper methods.
* Patched the unobtrusive_javascript plugin to avoid overflow of the session storage. I've submitted this patch by email to Luke Redpath, and hopefully, the plugin will incorporate this or similar functionality in the future.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@433 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-06 05:42:40 +00:00
lukemelia
87e08a10e8 Reduced the amount of inline javascript for each todo item rendered by half.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@432 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-05 07:23:49 +00:00
lukemelia
3374679bac Optimize the number of SQL queries fired off on the home page load by eager loading tags.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@431 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-05 05:17:38 +00:00
lukemelia
6814c29626 Created shared partial for footer to share between layouts.
Introduce unobtrusive_javascript plugin to start to beautify our html and reduce the size of our html pages. See http://www.ujs4rails.com/ for more info.
Implement unobtrusive_javascript for contexts listing page and project detail page.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@430 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-05 04:25:10 +00:00