mediagoblin.git
12 years agoAdded pygst.require('0.10') since it's absence breaks stuff
Joar Wandborg [Fri, 30 Mar 2012 15:50:56 +0000 (17:50 +0200)]
Added pygst.require('0.10') since it's absence breaks stuff

12 years agoUpdated Video docs, so that I won't forget
Joar Wandborg [Thu, 29 Mar 2012 22:18:54 +0000 (00:18 +0200)]
Updated Video docs, so that I won't forget

12 years agoCleaned up media_types.video.transcoders
Joar Wandborg [Thu, 29 Mar 2012 21:53:05 +0000 (23:53 +0200)]
Cleaned up media_types.video.transcoders

12 years agoAnd remove some now useless methods.
Elrond [Thu, 29 Mar 2012 21:05:34 +0000 (23:05 +0200)]
And remove some now useless methods.

12 years agoRemove the DictReadProxy thing.
Elrond [Thu, 29 Mar 2012 20:52:39 +0000 (22:52 +0200)]
Remove the DictReadProxy thing.

And some other stuff, that the converter does not need.

12 years agoFix some simple errors.
Elrond [Thu, 29 Mar 2012 20:31:51 +0000 (22:31 +0200)]
Fix some simple errors.

12 years agoChange models to a _v0 suffix.
Elrond [Thu, 29 Mar 2012 20:12:34 +0000 (22:12 +0200)]
Change models to a _v0 suffix.

And add the image and video media_data tables.
And start to rewrite the convert tool.

12 years agoMake a copy of models for v0.
Elrond [Thu, 29 Mar 2012 19:36:07 +0000 (21:36 +0200)]
Make a copy of models for v0.

12 years agoMerge branch 'master' of gitorious.org:mediagoblin/mediagoblin
Joar Wandborg [Thu, 29 Mar 2012 21:01:40 +0000 (23:01 +0200)]
Merge branch 'master' of gitorious.org:mediagoblin/mediagoblin

12 years agoCleanded up video imports, removed PyGTK dependency
Joar Wandborg [Thu, 29 Mar 2012 20:52:39 +0000 (22:52 +0200)]
Cleanded up video imports, removed PyGTK dependency

12 years agoAudio: And add empty migrations.
Elrond [Thu, 29 Mar 2012 19:52:26 +0000 (21:52 +0200)]
Audio: And add empty migrations.

12 years agoAudio: Add models and disable media_data.
Elrond [Thu, 29 Mar 2012 19:45:05 +0000 (21:45 +0200)]
Audio: Add models and disable media_data.

1. Add a super-minimal media_data table for audio.
   It currently contains nothing.
   Like the ascii one.

2. To avoid media_data trouble -- for now -- disable the
   creation of media_data completrly.

12 years agoMerge branch 'master' of gitorious.org:mediagoblin/mediagoblin
Joar Wandborg [Thu, 29 Mar 2012 14:19:11 +0000 (16:19 +0200)]
Merge branch 'master' of gitorious.org:mediagoblin/mediagoblin

12 years agoSeeking works in firefox
Joar Wandborg [Thu, 29 Mar 2012 14:06:36 +0000 (16:06 +0200)]
Seeking works in firefox

- Added support for indicating multiple buffered
  ranges (Firefox)
- Added volume slider (Chromium)
- Replaced stop button with faux pause button
- Added 'ended' event handler

12 years agoThe video media_type needs pygtk/gtk.
Elrond [Thu, 29 Mar 2012 11:15:38 +0000 (13:15 +0200)]
The video media_type needs pygtk/gtk.

Note in the docs, that the video media_type needs the gtk
and pygtk modules and where to get them on debian.

12 years ago411: Add relationship and backrefs to media_data tables.
Elrond [Wed, 28 Mar 2012 11:19:11 +0000 (13:19 +0200)]
411: Add relationship and backrefs to media_data tables.

Adding proper relationship()s and especially backref()s
will delete media_data rows along with the main MediaEntry.
This fixes #411.

12 years agoChanged audio.* Image* imports
Joar Wandborg [Tue, 27 Mar 2012 21:43:15 +0000 (23:43 +0200)]
Changed audio.* Image* imports

so that they no longer import from PIL explicitly.
This is due to explicit PIL.Image* imports failing
on a Ubuntu machine within virtualenv.

PIL is a mystery I have yet to find the energy to unravel.

The 'implicit' approach works both for the affected
machine and my local machine and I've seen it more often
out in the wild, so I'm assuming it is the right way.

12 years agoFixed test_submission -> test_evil_file test
Joar Wandborg [Tue, 27 Mar 2012 14:38:41 +0000 (16:38 +0200)]
Fixed test_submission -> test_evil_file test

12 years agoMerge remote-tracking branch 'joar/audio+sniffing'
Joar Wandborg [Tue, 27 Mar 2012 10:05:09 +0000 (12:05 +0200)]
Merge remote-tracking branch 'joar/audio+sniffing'

Conflicts:
mediagoblin/media_types/image/processing.py
mediagoblin/media_types/video/__init__.py
mediagoblin/media_types/video/processing.py
mediagoblin/tests/test_submission.py

12 years agoRemoving superfluous whitespace
Christopher Allan Webber [Mon, 26 Mar 2012 20:11:05 +0000 (15:11 -0500)]
Removing superfluous whitespace

12 years agoMerge remote-tracking branch 'remotes/slikdigit/bassam'
Christopher Allan Webber [Mon, 26 Mar 2012 20:09:35 +0000 (15:09 -0500)]
Merge remote-tracking branch 'remotes/slikdigit/bassam'

Conflicts:
mediagoblin/media_types/image/processing.py

12 years agoMerge remote-tracking branch 'remotes/bretts/bug261-resized-filenames'
Christopher Allan Webber [Mon, 26 Mar 2012 19:33:12 +0000 (14:33 -0500)]
Merge remote-tracking branch 'remotes/bretts/bug261-resized-filenames'

12 years agoAdd comment in JavaScript file about duplicating the password field
Jef van Schendel [Mon, 26 Mar 2012 18:23:49 +0000 (20:23 +0200)]
Add comment in JavaScript file about duplicating the password field

12 years agoMerge remote branch 'origin/master' into bug261-resized-filenames
Brett Smith [Mon, 26 Mar 2012 18:10:22 +0000 (14:10 -0400)]
Merge remote branch 'origin/master' into bug261-resized-filenames

This merge involved moving the new FilenameBuilder class to
processing/__init__.py, and putting the comment deletion tests back into
test_submission.py using the refactored functions.

12 years agoRename to FilenameBuilder, with a main method named fill.
Brett Smith [Mon, 26 Mar 2012 17:40:35 +0000 (13:40 -0400)]
Rename to FilenameBuilder, with a main method named fill.

I think these names better convey what's actually going on.  I updated the
documentation a bit while I was at it.

12 years agoMedia type refractors, pep8, lint
Joar Wandborg [Mon, 26 Mar 2012 15:44:08 +0000 (17:44 +0200)]
Media type refractors, pep8, lint

- Removed THUMB_SIZE, MEDIUM_SIZE constants, depend on
  configuration values instead.
- pep8 refractoring

12 years agoMerge branch 'master' of gitorious.org:mediagoblin/mediagoblin
Jef van Schendel [Sun, 25 Mar 2012 19:34:00 +0000 (21:34 +0200)]
Merge branch 'master' of gitorious.org:mediagoblin/mediagoblin

12 years agoMerge remote-tracking branch 'gandaro/forgot-password-autofillin'
Elrond [Sun, 25 Mar 2012 19:34:05 +0000 (21:34 +0200)]
Merge remote-tracking branch 'gandaro/forgot-password-autofillin'

* gandaro/forgot-password-autofillin:
  set username default server-side
  Fill username automatically in (Forget Password)

12 years agoset username default server-side
Jakob Kramer [Sun, 25 Mar 2012 19:51:09 +0000 (21:51 +0200)]
set username default server-side

12 years agoHeader style change
Jef van Schendel [Sun, 25 Mar 2012 19:33:52 +0000 (21:33 +0200)]
Header style change

12 years agoRefactor video processing to use FilenameMunger.
Brett Smith [Sun, 25 Mar 2012 17:32:25 +0000 (13:32 -0400)]
Refactor video processing to use FilenameMunger.

12 years agoUse FilenameMunger.
Brett Smith [Sun, 25 Mar 2012 17:26:57 +0000 (13:26 -0400)]
Use FilenameMunger.

12 years agoAdd documentation to the FilenameMunger class.
Brett Smith [Sun, 25 Mar 2012 16:16:19 +0000 (12:16 -0400)]
Add documentation to the FilenameMunger class.

12 years agoAdd FilenameMunger class to processing, with tests.
Brett Smith [Sun, 25 Mar 2012 16:11:13 +0000 (12:11 -0400)]
Add FilenameMunger class to processing, with tests.

Munging filenames is something all media type processors want to be able to
do, so I'm refactoring it out into a nice bite-sized class.

12 years agoDrop debug from migration.
Elrond [Sun, 25 Mar 2012 12:56:24 +0000 (14:56 +0200)]
Drop debug from migration.

12 years agoCleanup mongo->sql converter.
Elrond [Sat, 24 Mar 2012 09:55:34 +0000 (10:55 +0100)]
Cleanup mongo->sql converter.

1. No need to drop media_data['exif'], we only have and
   want media_data['exif_all'].

2. Use media['_id'] instead of media._id (better not use
   dot-notation on mongo objects in such a low level tool).

12 years agoDo not fill media_data['exif'] any more.
Elrond [Fri, 23 Mar 2012 18:42:02 +0000 (19:42 +0100)]
Do not fill media_data['exif'] any more.

12 years agoMigration fixup: Drop empty exif_all.
Elrond [Sat, 24 Mar 2012 10:43:12 +0000 (11:43 +0100)]
Migration fixup: Drop empty exif_all.

If the exif info is totally empty, do not add it at all to
the media_data dict in mongo.

12 years agoCreate migration to move exif data around in media_data.
Elrond [Thu, 22 Mar 2012 19:59:28 +0000 (20:59 +0100)]
Create migration to move exif data around in media_data.

Move media_data['exif']['clean'] to media_data['exif_all']
drop media_data['exif']['useful']
drop media_data['exif']

12 years agoUse exif_display_iter in the template.
Elrond [Fri, 23 Mar 2012 17:35:43 +0000 (18:35 +0100)]
Use exif_display_iter in the template.

As the newly created entries have media_data.exif_all use
the exif_display_iter method to calculate the exif entries
for displaying on the fly.

After the mongo migration all the old entries will also
have exif_all and will work again.

12 years agoStart to fill media_data.exif_all in addition.
Elrond [Sun, 25 Mar 2012 12:12:53 +0000 (14:12 +0200)]
Start to fill media_data.exif_all in addition.

In addition to filling the normal slot media_data['exif'],
now also fill media_data.exif_all. This is the new slot
used by SQL.
For a few moments this will create duplicated entries in
the mongo db. But this shouldn't hurt.

12 years agoFill username automatically in (Forget Password)
Jakob Kramer [Sat, 24 Mar 2012 16:36:12 +0000 (17:36 +0100)]
Fill username automatically in (Forget Password)

Fill the username automatically in the "Forget Password" form
if the user already entered his username on the login page

12 years agoMerge remote-tracking branch 'remotes/gandaro/wipealldata-from-db_name'
Christopher Allan Webber [Sat, 24 Mar 2012 14:58:26 +0000 (09:58 -0500)]
Merge remote-tracking branch 'remotes/gandaro/wipealldata-from-db_name'

12 years agoWipe the configured database, not the default one
Jakob Kramer [Sat, 24 Mar 2012 14:33:36 +0000 (15:33 +0100)]
Wipe the configured database, not the default one

12 years agoAllow arrow keys in input fields and textareas
Jakob Kramer [Sat, 24 Mar 2012 13:49:43 +0000 (14:49 +0100)]
Allow arrow keys in input fields and textareas

If you pressed an arrow key in a textarea before, the next/previous media
was opened.

12 years agoremove unused `mg.submit.security' module
Jakob Kramer [Fri, 23 Mar 2012 21:13:48 +0000 (22:13 +0100)]
remove unused `mg.submit.security' module

12 years agoFix cyclic import issue.
Elrond [Fri, 23 Mar 2012 19:20:02 +0000 (20:20 +0100)]
Fix cyclic import issue.

Oh well:

tools.exif -> processing -> db.util -> db.models -> db.mixin -> tools.exif

So import tools.exif locally in exif_display_iter()

12 years agoCreate MediaEntry.exif_display_iter()
Elrond [Fri, 23 Mar 2012 19:16:42 +0000 (20:16 +0100)]
Create MediaEntry.exif_display_iter()

MediaEntry.media_data.exif_all will contain all the
"clean" EXIF data.

MediaEntry.exif_display_iter() is an iterator that fetches
the most interesting entries for display from that data.

12 years agoimage_mediadata: Add exif_all column
Elrond [Thu, 22 Mar 2012 12:16:00 +0000 (13:16 +0100)]
image_mediadata: Add exif_all column

12 years agoAdd copyright header to image/models.py
Elrond [Thu, 22 Mar 2012 12:15:27 +0000 (13:15 +0100)]
Add copyright header to image/models.py

12 years agocorrect wrong version number
Jakob Kramer [Fri, 23 Mar 2012 17:14:55 +0000 (18:14 +0100)]
correct wrong version number

(`-dev' instead of `.dev')

12 years agoNew media_data row needs to know its MediaEntry's id.
Elrond [Thu, 22 Mar 2012 20:19:47 +0000 (21:19 +0100)]
New media_data row needs to know its MediaEntry's id.

When creating a new media_data row, the new row needs to
know the MediaEntry it is associated with. I have no idea,
why this worked before at all. Maybe some implicit tricks
by sqlalchemy?

12 years agoFaster sniffing
Joar Wandborg [Thu, 22 Mar 2012 00:27:19 +0000 (01:27 +0100)]
Faster sniffing

- Sniffing now goes through the old extension-based filter before
  doing it the bitsniffing way.
- Refractored get_media_type_and_manager(filename).
- Removed ogg extension from video accepted extensions, audio
  will take care of that.
- Added custom audio player, still WIP,but working.
- Added test for sniffing. This only tests for the
  mediagoblin.media_types.image type, as that is the only
  one enabled from start.

12 years agoAdd index=True for some columns.
Elrond [Wed, 21 Mar 2012 21:46:38 +0000 (22:46 +0100)]
Add index=True for some columns.

These are the columns that seem to make the most sense to
have an index on them.

12 years agoFinally load all models.
Elrond [Wed, 21 Mar 2012 20:46:07 +0000 (21:46 +0100)]
Finally load all models.

Load all models for the media_types. This was stopped by a
celery problem. But that is now fixed.

12 years agoPanel: Find "unprocessed" not "processing" entries.
Elrond [Wed, 21 Mar 2012 11:08:53 +0000 (12:08 +0100)]
Panel: Find "unprocessed" not "processing" entries.

Our entries in the queue are marked as "unprocessed" and
not as "processing" as the panel code wanted it to be. So
search for the correct string.

12 years agoAnd fix the in-celeryd import.
Elrond [Wed, 21 Mar 2012 10:55:42 +0000 (11:55 +0100)]
And fix the in-celeryd import.

So that celeryd also loads the task.

12 years agoMove celery task into own task.py
Elrond [Wed, 21 Mar 2012 10:39:52 +0000 (11:39 +0100)]
Move celery task into own task.py

Move the actual celery task from processing/__init__.py
into its own .../task.py. That way it can be imported as
needed.

12 years agoTurn processing.py into a submodule.
Elrond [Wed, 21 Mar 2012 10:24:16 +0000 (11:24 +0100)]
Turn processing.py into a submodule.

processing.py -> processing/__init__.py

This is in preparation for splitting processing a bit.
The main reason for the split is celery setup: celery needs
to be setup before even importing and importing and
subclassing some of its parts. So it's better to move the
critical parts into their own submodule and import it as
late as needed.

12 years agoMerge remote-tracking branch 'refs/remotes/brett/bug270-lazycelery-script'
Christopher Allan Webber [Wed, 21 Mar 2012 04:24:43 +0000 (23:24 -0500)]
Merge remote-tracking branch 'refs/remotes/brett/bug270-lazycelery-script'

12 years agoAdd tests for image processing. Check filenames and image sizes.
Brett Smith [Wed, 21 Mar 2012 03:59:28 +0000 (23:59 -0400)]
Add tests for image processing.  Check filenames and image sizes.

This test helps verify that bug #261 is actually fixed.

In order to test that all the processed images are smaller, I needed to add
an image that's bigger than processing.MEDIUM_SIZE, hence bigblue.png.

12 years agoMake a function to generate test image filenames.
Brett Smith [Wed, 21 Mar 2012 03:03:11 +0000 (23:03 -0400)]
Make a function to generate test image filenames.

12 years agoPrefer nose assert_* methods to the assert built-in.
Brett Smith [Wed, 21 Mar 2012 02:40:32 +0000 (22:40 -0400)]
Prefer nose assert_* methods to the assert built-in.

12 years agoRefactor false image tests.
Brett Smith [Wed, 21 Mar 2012 02:36:56 +0000 (22:36 -0400)]
Refactor false image tests.

12 years agoRefactor normal upload tests.
Brett Smith [Wed, 21 Mar 2012 02:30:57 +0000 (22:30 -0400)]
Refactor normal upload tests.

This is nice because it means we do *all* the normal sanity tests for *all*
the normal uploads.  check_url() can be used in other tests too.

12 years agoRefactor MediaEntry fetches/checks into check_media().
Brett Smith [Wed, 21 Mar 2012 02:16:28 +0000 (22:16 -0400)]
Refactor MediaEntry fetches/checks into check_media().

12 years agoRefactor data posts into one do_post function.
Brett Smith [Wed, 21 Mar 2012 02:07:32 +0000 (22:07 -0400)]
Refactor data posts into one do_post function.

All the data posts in these tests had a lot of common code.  Putting all
that into a function makes it easier to write more tests (which I'll be
doing in a bit) and see what's really being tested.

12 years agoMore standard media_data model for ascii.
Elrond [Tue, 20 Mar 2012 22:55:28 +0000 (23:55 +0100)]
More standard media_data model for ascii.

ascii doesn't use media_data at all. So it needs the most
basic media_data model. Fix it to take the current form.

12 years agoCreate load_models().
Elrond [Tue, 20 Mar 2012 11:39:15 +0000 (12:39 +0100)]
Create load_models().

So all models are ready when connecting to the db and so
our "db" object has all models listed on it, create a
function to load all models from the media_types, etc. Call
it in setup_database()

Problem: This gives celery warnings, because celery is
imported before being setup properly. No idea how to fix
this now. So media-type loading is excluded from
load_models for now.

12 years agoImport "Base" from base instead of models.
Elrond [Tue, 20 Mar 2012 11:32:11 +0000 (12:32 +0100)]
Import "Base" from base instead of models.

Import the "Base" class for models from db.sql.base instead
of db.sql.models.

12 years agoDisable query logging for now, so we get nicer logs
Elrond [Tue, 20 Mar 2012 11:43:09 +0000 (12:43 +0100)]
Disable query logging for now, so we get nicer logs

As the queries are quite verbose, disable them for now.
Reenabling them should be done in the central logging
config, which is another story for celery and bin/gmg.

12 years ago500 error because of subscripting instead of using attributes
Jakob Kramer [Sun, 18 Mar 2012 21:28:22 +0000 (22:28 +0100)]
500 error because of subscripting instead of using attributes

12 years agoCommitting extracted and compiled translations
Christopher Allan Webber [Sun, 18 Mar 2012 20:16:37 +0000 (15:16 -0500)]
Committing extracted and compiled translations

12 years agoCommitting present MediaGoblin translations before pushing extracted messages
Christopher Allan Webber [Sun, 18 Mar 2012 20:16:03 +0000 (15:16 -0500)]
Committing present MediaGoblin translations before pushing extracted messages

12 years agoFixing manual tyop: MediaGoblin, not MediaGobiin (thanks gandaro!)
Christopher Allan Webber [Sun, 18 Mar 2012 19:39:35 +0000 (14:39 -0500)]
Fixing manual tyop: MediaGoblin, not MediaGobiin (thanks gandaro!)

12 years agoRemoving print statements from convert_gps_media_data migration
Christopher Allan Webber [Sun, 18 Mar 2012 17:07:13 +0000 (12:07 -0500)]
Removing print statements from convert_gps_media_data migration

Kind of useful to see but... I don't think they're needed, and I'm not
super comfortable with print statements being in migrations.  Seems
semi bloated!

12 years agosmall readability improvements in resize_image
Brett Smith [Sun, 18 Mar 2012 13:35:14 +0000 (09:35 -0400)]
small readability improvements in resize_image

12 years agoRefactor image resize code, with better filenames (#261)
Brett Smith [Sun, 18 Mar 2012 03:43:46 +0000 (23:43 -0400)]
Refactor image resize code, with better filenames (#261)

The code to make thumbnail- and medium-sized images in processing.py is
pretty similar, so I rolled that out into a separate function that we call
with different arguments as appropriate.

The new function should work identically to the old code, except it saves
images with filenames based on the original filename, like
`foobar.medium.jpg` instead of just `medium.jpg`.  This fixes bug #261.

12 years agoRefactor lazyserver.sh to lazystarter.sh and provide lazycelery.sh (#270)
Brett Smith [Sun, 18 Mar 2012 02:33:08 +0000 (22:33 -0400)]
Refactor lazyserver.sh to lazystarter.sh and provide lazycelery.sh (#270)

Bug #270 asks for a lazycelery.sh script much like lazyserver.sh.  Rather
than duplicate the code, I consolidated them into a single script,
lazystarter.sh.  The script reconfigures itself a bit, and runs a
particular server, based on the name that's used to call it, but no matter
what it uses the same code to offer help and find configuration files and
server launchers.  Hopefully this will make it easy to add other
features/fix bugs as needed in the future, and have them stay in sync.

12 years agoLet convert_mongo_to_sql add Migration Records
Elrond [Sat, 17 Mar 2012 21:30:48 +0000 (22:30 +0100)]
Let convert_mongo_to_sql add Migration Records

The mongosql tool is really dumping directly into the sql
database and is trying not to use too much logic that might
change later.

So this means, it needs to create the migration records on
its own!
So add a bunch of records with version=0.

12 years agoMerge remote-tracking branch 'brett/bug264-delete-comments-with-media'
Christopher Allan Webber [Sat, 17 Mar 2012 22:18:15 +0000 (17:18 -0500)]
Merge remote-tracking branch 'brett/bug264-delete-comments-with-media'

12 years agoMerge branch 'master' of gitorious.org:mediagoblin/mediagoblin
Christopher Allan Webber [Sat, 17 Mar 2012 22:09:26 +0000 (17:09 -0500)]
Merge branch 'master' of gitorious.org:mediagoblin/mediagoblin

12 years agomongo->sql conversion script now runs mongo migrations first, just in case
Christopher Allan Webber [Sat, 17 Mar 2012 22:08:46 +0000 (17:08 -0500)]
mongo->sql conversion script now runs mongo migrations first, just in case

12 years agoRemove sidedata class from html pages
Jef van Schendel [Sat, 17 Mar 2012 21:58:33 +0000 (22:58 +0100)]
Remove sidedata class from html pages

12 years agoAlso ignore the /share/ directory
Christopher Allan Webber [Sat, 17 Mar 2012 21:57:18 +0000 (16:57 -0500)]
Also ignore the /share/ directory

12 years agoSmall styling change for sidebar data
Jef van Schendel [Sat, 17 Mar 2012 21:56:25 +0000 (22:56 +0100)]
Small styling change for sidebar data

12 years agoMake mediagoblin SQL models all use a consistent table naming scheme
Christopher Allan Webber [Sat, 17 Mar 2012 21:48:28 +0000 (16:48 -0500)]
Make mediagoblin SQL models all use a consistent table naming scheme

12 years agoWhen media is deleted, delete associated comments too.
Brett Smith [Sat, 17 Mar 2012 21:53:00 +0000 (17:53 -0400)]
When media is deleted, delete associated comments too.

The actual code is just a simple for loop; there might be a better
implementation but this is a fine start.  I also extended test_delete to
check this too.

12 years agoMongosql imports made celery get set up before we wanted it via ./bin/gmg commands
Christopher Allan Webber [Sat, 17 Mar 2012 17:31:11 +0000 (12:31 -0500)]
Mongosql imports made celery get set up before we wanted it via ./bin/gmg commands

Just moved the import into the actual function.  That resolved the issue!

12 years agoMore/better translation.
Elrond [Sat, 17 Mar 2012 12:18:43 +0000 (13:18 +0100)]
More/better translation.

- Try to preserve some translations (somehow).
- Mark "Tagged with" again for translation.
- Do not translate the empty string

12 years agoSmall formatting changes to footer text.
Jef van Schendel [Fri, 16 Mar 2012 22:05:30 +0000 (23:05 +0100)]
Small formatting changes to footer text.

12 years agoCreate function to search media by slug.
Elrond [Fri, 16 Mar 2012 17:13:46 +0000 (18:13 +0100)]
Create function to search media by slug.

Searching media by slug is easy on mongo. But doing the
joins in sqlalchemy is not as nice. So created a function
for doing it.

Well, and create the same function for mongo, so that it
also works.

12 years agoFix for mongo.
Elrond [Fri, 16 Mar 2012 19:59:44 +0000 (20:59 +0100)]
Fix for mongo.

pymongo does not rewind a cursor after leaving a for loop.
So let us do it by hand. Well.

12 years agoMore efficient first element fetching and Dot-Notation.
Elrond [Fri, 16 Mar 2012 16:57:27 +0000 (17:57 +0100)]
More efficient first element fetching and Dot-Notation.

_get_tag_name_from_entries:
1) Replace:
     if q.count():
       elem = q[0]
   by:
     for element in q:
       ...
       break

   this doesn't do two db queries but only one.

2) And another dose of Dot-Notation as usual.

12 years agoFix _get_tag_name_from_entries().
Elrond [Fri, 16 Mar 2012 20:18:04 +0000 (21:18 +0100)]
Fix _get_tag_name_from_entries().

Replace == by =.

12 years agofix for ticket #404
Bassam [Thu, 15 Mar 2012 16:13:44 +0000 (12:13 -0400)]
fix for ticket #404

12 years agoFix uploading of images (sql: media_data, exif).
Elrond [Thu, 15 Mar 2012 11:38:09 +0000 (12:38 +0100)]
Fix uploading of images (sql: media_data, exif).

When uploading a new image the processing code wants to set
the media_data['exif'] part. As exif is not yet in sql,
there is no way to make this work now. So the workaround is
to check for "no row exists yet" and just ignore exif.

12 years agoFix media display for no media_data row in sql.
Elrond [Thu, 15 Mar 2012 11:35:58 +0000 (12:35 +0100)]
Fix media display for no media_data row in sql.

If there is no media_data row for the current media (for
whatever reason, there might be good ones), let
MediaEntry.media_data not raise an exception but just
return None.

The exif display part now handles this by checking whether
.media_data.exif is defined (None has no attribute exif, so
it's undefined, all fine).

12 years agoImplemented the MediaEntry .media_data type fields for SQL
Christopher Allan Webber [Wed, 14 Mar 2012 23:28:06 +0000 (18:28 -0500)]
Implemented the MediaEntry .media_data type fields for SQL

12 years agoRemoving an unnecessary line of whitespace AND crediting Hugo Boyer for the ipython...
Christopher Allan Webber [Wed, 14 Mar 2012 21:03:09 +0000 (16:03 -0500)]
Removing an unnecessary line of whitespace AND crediting Hugo Boyer for the ipython code!

Thanks Hugo Boyer!  I forgot to credit you in my last commit.