Added Rubyzip gem.
WIP: user can upload a zip file obtained from google reader to import his subscription data into Feedbunch.

Currently only the popup with the upload form is half-done.

Added spanish translations for the start page.
Finished popup form for uploading a subscriptions data file.
WIP: submit the "import subscriptions" form via Ajax.
WIP: user can import his subscribed feeds from Google Reader.

The "import subscriptions" form will be submitted with a normal form submit, after which the user will be redirected back to the start page. This is the best option because there are ways to POST a file input with Ajax, but they are contrived and browser support is shaky.
Added new DataImport model. Each instance of this model represents an occurrence of a user importing his subscribed feeds from Google Reader.

This model will be user to show the user the state of the import process.
Updated font-awesome-rails gem from 3.1.1.3 to 3.2.0.0
WIP: user can upload an OPML file or a zip containing an OPML file to import subscriptions into Feedbunch.
WIP: User can upload an OPML file (zipped or not) to import feed subscriptions from another service.
WIP: import subscriptions in OPML format.

Currently the uploaded OPML file is saved in the filesystem. Next thing to implement: enqueue a job to process the file and the feeds in it.
"uploads" folder must be present in git, so that tests involving file uploads run successfully.

Changed the way the uploads folder is cleaned between tests. Instead of deleting specific files, all files matching *.opml are deleted to ensure nothing remains there.

Of course if in the future files with different extensions are uploaded there, they will have to be removed too.
Capistrano creates the "uploads" folder in the shared deployment folder, and links it into the release folder.

This way the upload folder (where uploaded OPML files are saved) is guaranteed to exist, to be accessible from the current release as Rails.root/uploads, and it won't be emptied between redeployments.
WIP: user can upload an OPML file to import his subscriptions data from another service.

A background job is enqueued to process the uploaded file, if no errors happen.

Ensure that if an error happens when uploading the file (e.g. the file is a zip with no xml or opml files inside) the user is redirected to the feeds view anyway.
Changed the templates for the import process views, so that colors and icons are different depending on the status of the import process for the logged user (not started, running, success or error).
WIP: while the import process is running, a javascript timed function is periodically fetching the state of the import process and updating the view accordingly.
The view is periodically updated while an import process is running.

A notice appears when the import finishes (whether with a success or an error) even if the user is not at the start page (as long as he's somewhere in the feeds index view).
Minor change in an icon.
Show alerts and errors at the top of the page, instead of at the bottom.
Renamed the folder that keeps the coffeescript files from "feeds" to "modules".

Those files are not all related to feeds, so the old name did not make sense.
Better organization of alerts code.