makeadmin and changepasswd had swapped help text
Try ipython-based shell first, falling back to plain shell

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Only log output and write progress to db if it has changed

De-noisify the transcoding log and db updates. Previously we would log
and save the progress percentage every second, even if it had not changed
at all. Save progress:oercentage in the Transcoder and only log/update
when the percentage has actually changed.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Added documentation on how to add STL support, and notes on running ./bin/gmg dbupdate
Docs fix: Adding proper blank line after the "Run::"
Committing extracted and compiled translations
Updating AUTHORS with new contributors.  Nice job new contributors! :)
0.3.2 release notes
Committing present MediaGoblin translations before pushing extracted messages
Committing extracted and compiled translations
NOW RELEASING: MediaGoblin 0.3.2! :D
Fixing tyop'ed "dbupdate"
Fix up tests

empty find() queries would not work anymore with the simplified .find
compatability code, so remove these and use proper sqlalchemy in the
tests.

The storage test failed because my virtualenv environment ran
mediagoblin/local/mediagoblin/tests/test_storage.py and somehow decided
the 2 classes are different objects. Just test against the full class name.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Move DBModel._id -> DBModel.id

We were refering to model._id in most of the code base as this is
what Mongo uses. However, each use of _id required a) fixup of queries:
e.g. what we did in our find() and find_one() functions moving all
'_id' to 'id'. It also required using AliasFields to make the ._id
attribute available. This all means lots of superfluous fixing and
transitioning in a SQL world.

It will also not work in the long run. Much newer code already refers
to the objects by model.id (e.g. in the oauth plugin), which will break
with Mongo. So let's be honest, rip out the _id mongoism and live with
.id as the one canonical way to address objects.

This commit modifies all users and providers of model._id to use
model.id instead. This patch works with or without Mongo removed first,
but will break Mongo usage (even more than before)

I have not bothered to fixup db.mongo.* and db.sql.convert
(which converts from Mongo to SQL)

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Remove SimpleFieldAlias

It was only used for the model._id -> model.id conversion and is not
needed anymore.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Extend redirect helper to take optional location keyword

In order to move away from webob with its redirect(location=...) we
need to provide a redirect function that allows to directly specify
the URL rather than the urlgen parameters that we now use.

Extend our MG.tools:redirect helper so we can pass in the direct URL
via the optional "location" keyword.

This commit does not switch over any redirect consumers yet.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Remove webob from render_to_response

We were still using webob's Response objects for template rendering.
Transition to werkzeug's Response object. One caveat was that it
seemed to have used the default mimetype "text/plain" for all pages,
so we override the default Response class, setting the default mime
type to "text/html".

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
purge webob from docs and replace with werkzeug
Remove webobisms from decorators.py

Use our own redirect function rather than webobs HttpFound
Also replace HttpForbidden() with webob's Forbidden()
Transition webob.HttpForbidden to webob's exceptions Forbidden

Also the BadRequest exception.