Commit graph

67 commits

Author SHA1 Message Date
lukemelia
06d94b1f1c Fixed test that broke in late hours of the evening. Also, fixed syntax to suppress warning from open_id_consumer plugin.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@626 a4c988fc-2ded-0310-b66e-134b36920a42
2007-11-04 04:55:21 +00:00
lukemelia
839feddb63 Tweaks to the new stats page to implement a workaround for a bug in the Flash add-in for Firefox/Mac. The workaround involves removing the opacity from the header navigation area for the stats page.
Also introduced FlashObject.js to handle Flash embedding, and removed some duplication in the views.

This changeset should also resolve problems with the stats page for people who don't run tracks from the root of their website.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@589 a4c988fc-2ded-0310-b66e-134b36920a42
2007-09-14 05:44:01 +00:00
lukemelia
4f3762a64c Make the selenium tests more elegant.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@586 a4c988fc-2ded-0310-b66e-134b36920a42
2007-09-12 07:21:40 +00:00
lukemelia
5cb42946c1 Introduced user-extensions.js file for selenium to clean up a few selenium tests. This is a powerful concept and could be used to really help the clarity and maintainability of the selenium tests in the future.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@585 a4c988fc-2ded-0310-b66e-134b36920a42
2007-09-10 05:34:21 +00:00
lukemelia
c6b3e1c0b8 Introduced asset_packager plugin to reduce the number of external javascript and css files loaded by Tracks. It is effective in test and production (not development) environments.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@584 a4c988fc-2ded-0310-b66e-134b36920a42
2007-09-10 05:13:15 +00:00
lukemelia
1fe9d808d0 Removed rails_rcov plugin to avoidforcing a dependency on the rcov gem for users of rake db:migrate. For developers, I recommend you install the plugin but don't commit it.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@547 a4c988fc-2ded-0310-b66e-134b36920a42
2007-05-29 03:59:50 +00:00
lukemelia
1cce7f076c This changeset is larger than I prefer, and may be unstable with databases besides mysql.
Also, for developers: two new gems are required for running tests: zentest and flexmock.

I applied James Kebinger's patch to add starred actions. These are implemented behind the scenes as a tag, so you can see all starred actions the way you would look at actions for any tag. Closes #387. Thanks, James!  
Tests now rely the ZenTest gem. Thanks Ryan Davis & Eric Hodel.
I improved test coverage of a few models and created a test for the new helper methods to support the stars. (Helper method tests are made possible by ZenTest. The helper tests use mock objects to isolate them, courtesy of flexmock. Thanks, Jim Weirich!)
Modified a few selenium tests to work properly with mysql.
Upgraded the has_many_polymorphs plugin.
Add rails_rcov plugin to get test coverage numbers more easily.
Convert toggle_check action to correspond to a PUT instead of a POST (follows CRUD<->HTTP mapping better).

I'm having some issues running tests with sqlite3 that I haven't been able to figure out. I'll work on it, but wanted to check in so I can check out and work from the beach this weekend.

Happy holiday weekend to those of you in the U.S.!




git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@544 a4c988fc-2ded-0310-b66e-134b36920a42
2007-05-25 19:01:08 +00:00
lukemelia
ba0b52ff1a Merged mobile_controller into the todos_controller. The lightweight mobile HTML is
arguably just another representation of the same resources, so it seems to fit
the RESTful Rails paradigm to use an extension (.m) to switch on in the
respond_to stanza.

I needed some hackery to make this work. See my note in todos_controller for
a full explanation.
 
I also added a route to get to the mobile view by using 'domain.com/m'

Created some selenium tests for the mobile view, too. 

In optimizing the data access for the mobile view, I ran into "a bug in rails
pagination":http://dev.rubyonrails.org/ticket/7885" and integrated a nice
pagination plugin from the Err the Blog guys
("will_paginate":http://errtheblog.com/post/929) to work around the issue.

NOTE that this changeset includes a new line in environment.rb.tmpl (at
the bottom). Be sure to copy this into your environment.rb file. 

These changes fix #489 (cannot edit action using mobile interface).
Thanks for the bug report, lrbalt!

In the name of consistency, I made the argument to the block for all
respond_to calls 'format' (instead of the formerly cool 'wants').

Lastly, I added a link to the project's new contribute page to the footer of
the main web UI. Help us join the Mac on Intel world. :-)



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@517 a4c988fc-2ded-0310-b66e-134b36920a42
2007-04-02 04:18:19 +00:00
lukemelia
f3f881e47e copy memory_test_fix plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@516 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:44:58 +00:00
lukemelia
ba58baa3b8 repair botched copy of memory_test_fix
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@515 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:44:46 +00:00
lukemelia
f98d034631 copy unobtrusive_javascript plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@514 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:35:10 +00:00
lukemelia
db65cf8927 copy simply_helpful plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@513 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:35:06 +00:00
lukemelia
de8975cc17 copy simple_ldap_authenticator plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@512 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:35:00 +00:00
lukemelia
0a745f2eab copy selenium-on-rails plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@511 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:34:56 +00:00
lukemelia
f89cae635f copy resource_feeder plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@510 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:34:53 +00:00
lukemelia
0d8a3fcf6d copy memory_test_fix plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@509 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:34:49 +00:00
lukemelia
eba1f3346e copy has_many_polymorphs plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@508 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:34:46 +00:00
lukemelia
feb46f687b copy extra_validations plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@507 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:34:42 +00:00
lukemelia
85d8940e1b copy arts plugin from branch
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@506 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:34:38 +00:00
lukemelia
fa8c589f69 Copy over the first of many missing plugins.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@505 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 12:30:34 +00:00
lukemelia
e0787cd627 Upgrade openid_consumer_plugin to latest. Thanks to Matt Pelletier for the rewrite.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@503 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 05:00:25 +00:00
lukemelia
226655da8a prepare to upgrade openid_consumer_plugin
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@502 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 04:57:13 +00:00
lukemelia
06f14dd3b9 And here's the copy step.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@501 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 04:36:52 +00:00
lukemelia
c34d9faa38 Arg. Branching never seems to "just work". Going to delete and recopy. Here's the delete step.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@500 a4c988fc-2ded-0310-b66e-134b36920a42
2007-03-30 04:36:14 +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
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
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
bsag
d0666038f2 Removed acts_as_taggable because it is deprecated and replaced with has_many_polymorphs:
<http://blog.evanweaver.com/articles/2006/06/02/has_many_polymorphs>

Also removed chronic because it is not currently used.

  * Tags are entered separated by commas, so tags with spaces are allowed
  * When you edit an action, whatever is submitted in the tags text field replaces existing tags: if you submit an empty field, tags are removed from the action
  * Clicking on a tag shows a page listing all the actions with that tag (/todo/tag/tag+name)

Todo:
  
  * Tests
  * RESTful routes for Tags (if it makes sense for tags - I haven't decided)
  * If you remove tags for an action, it removes the entries from the Taggings table, but it can leave an orphan Tag if there are no more Taggings for that Tag. One problem is that another user might have an identically-named Tag, so we don't want to remove their Tag, just because we have finished with it. I'm not sure how to arrange this yet.
  
Don't forget to rake db:migrate. There is also a change in config/environment.rb.tmpl, so remember to copy the changes to your copy.
 


git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@425 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-04 15:33:24 +00:00
lukemelia
f828d4b3ff updated to r66 of acts_as_state_machine plugin. This eliminates some rails deprecation warnings
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@420 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-02 06:01:23 +00:00
lukemelia
77c620d7c4 prepare to update acts_as_state_machine
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@419 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-02 05:58:52 +00:00
lukemelia
59f5cea7b8 upgrade to memory_test_fix r171
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@417 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-02 05:01:12 +00:00
lukemelia
0da21e3b96 prepare to update memory_test_fix plugin
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@416 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-02 04:58:05 +00:00
lukemelia
d9d5ff4d06 The projects controller gets more RESTy. It now supports XML, RSS, ATOM, HTML and plain text views of the projects list.
Changes include:

 * Add assert_xml_select method for testing RSS and ATOM results (Thanks, Jamis! http://weblog.jamisbuck.org/2007/1/4/assert_xml_select)
 * Add resource_feeder plugin for generating RSS and ATOM feeds
 * Update the URL on the Feeds page to use /projects.rss or /projects.txt instead of FeedController link
 * Add created_at and updated_at timestamps to project table to support ATOM feeds
 * Added new filter to login_system "login_or_feed_token_required" to allow RSS, ATOM or text requests with token-based authentication 
 
Notes:
 * This will break previous project listing feed subscriptions.
 * RSS, ATOM & text feeds are available via session or HTTP_BASIC authentication, or by passing the user's token on the url; HTML and XML results are only available via session or HTTP_BASIC authentication
 


git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@415 a4c988fc-2ded-0310-b66e-134b36920a42
2007-02-01 05:32:05 +00:00
lukemelia
fda7788237 updated simply_helpful to latest version
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@414 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-31 06:19:16 +00:00
lukemelia
a1df3eb6a1 preparing to update simply_helpful to latest version
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@413 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-31 06:17:52 +00:00
lukemelia
b2ce323f3a Upgrade to rails 1.2.1
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@405 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-25 04:19:22 +00:00
lukemelia
498b5700be prepare to upgrade to Rails 1.2.1
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@404 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-25 03:56:17 +00:00
bsag
36fcfe5c59 Support for tagging of actions!
Made a start on tagging support. You can add tags via the action forms (just single word tags, separated by a space so far), update tags via the edit form (same limitations), and also search for all actions with a particular tag:

/todo/tag/[tag_name]

Tests for tagging are a bit rudimentary at the moment, and you can't as yet use tags consisting of multiple words, or search for conjunctions of tags (e.g. foo+bar), but I'm hoping to add these. Also no validation, so don't try anything funny!

I'm also planning on letting the user create custom links to /todo/tag pages, so that you can use a tag for inbox, someday/maybe, today, a meta-project, priority, or whatever you like.

git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@400 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-14 19:29:01 +00:00
lukemelia
f73401a850 Fix #422 by validating that project names do not contain commas. Thanks for the bug report, Stephen!
Added this validation to Contexts as well.
Introduced a new plugin to hold extra validations. The first one is validates_does_not_contain, which
DRYs up and cleans up the validations used to prohibit slashes and commas in Project and Context names.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@394 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-10 04:55:39 +00:00
lukemelia
9a444be3fe Update to Edge Rails tag rel_1-2-0_RC2
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@391 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-06 06:30:26 +00:00
lukemelia
cdde8d9ca7 Prepare to update to Rails 1.2 RC2
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@390 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-06 06:26:52 +00:00
lukemelia
bde8a0bde0 Introduce selenium tests to help get the ajax interactions correct and maintainable.
Start to improve the ajax interactions around the new deferred actions section on the project detail page
Add a README for developers describing how to run the selenium tests.


git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@387 a4c988fc-2ded-0310-b66e-134b36920a42
2007-01-02 00:19:57 +00:00
lukemelia
6e5b574406 First step in adding deferred section to the project detail page. Ajax needs a lot of work on this page.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@385 a4c988fc-2ded-0310-b66e-134b36920a42
2006-12-30 09:52:39 +00:00
lukemelia
c099160411 The last changeset had a dependency on the simply_helpful plugin, but I forgot to add it. Here it is.
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@369 a4c988fc-2ded-0310-b66e-134b36920a42
2006-12-09 07:38:43 +00:00
lukemelia
d7bb7555a0 Upgraded to Rails version to 1-2-pre-release branch revision 5704. Lots of stuff is deprecated in Rails 1.2, so this changeset
also removes deprecated methods. All tests pass (at least on my machine!) and raise no deprecation warnings.



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@365 a4c988fc-2ded-0310-b66e-134b36920a42
2006-12-08 07:41:20 +00:00
lukemelia
baf649e143 Remove rails dir in to prepare for upgrading to 1-2-pre-release
git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@364 a4c988fc-2ded-0310-b66e-134b36920a42
2006-12-08 07:25:43 +00:00
lukemelia
c51587e422 * Converted Todo to acts_as_state_machine. It's states are active, deferred, completed, and project_hidden. This replaces the old single inheritance model of Immediate and Deferred. Also renamed todo.completed to todo.completed_at for clarity
* Consolidated toggle_check handling to todo_controller and rjs  
* Introduced user preference to show/hide hidden projects section in sidebar
* Fixed a bug in parse_date_per_user_prefs that was causing due dates to be set in the todo model as Times and not Dates
* Upgraded ARTS plugin
* This changeset includes migrations, so remember to db:migrate.
* Lots of code changes here, so bug reports will be gratefully accepted!



git-svn-id: http://www.rousette.org.uk/svn/tracks-repos/trunk@343 a4c988fc-2ded-0310-b66e-134b36920a42
2006-11-15 09:05:07 +00:00