aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin
diff options
context:
space:
mode:
Diffstat (limited to 'mediagoblin')
-rw-r--r--mediagoblin/__init__.py2
-rw-r--r--mediagoblin/_version.py4
-rw-r--r--mediagoblin/app.py2
-rw-r--r--mediagoblin/auth/__init__.py2
-rw-r--r--mediagoblin/auth/forms.py2
-rw-r--r--mediagoblin/auth/lib.py2
-rw-r--r--mediagoblin/auth/routing.py2
-rw-r--r--mediagoblin/auth/views.py6
-rw-r--r--mediagoblin/db/__init__.py2
-rw-r--r--mediagoblin/db/mixin.py25
-rw-r--r--mediagoblin/db/mongo/__init__.py2
-rw-r--r--mediagoblin/db/mongo/indexes.py2
-rw-r--r--mediagoblin/db/mongo/migrations.py26
-rw-r--r--mediagoblin/db/mongo/models.py16
-rw-r--r--mediagoblin/db/mongo/open.py2
-rw-r--r--mediagoblin/db/mongo/util.py2
-rw-r--r--mediagoblin/db/open.py2
-rw-r--r--mediagoblin/db/sql/__init__.py2
-rw-r--r--mediagoblin/db/sql/base.py2
-rw-r--r--mediagoblin/db/sql/convert.py8
-rw-r--r--mediagoblin/db/sql/extratypes.py8
-rw-r--r--mediagoblin/db/sql/fake.py2
-rw-r--r--mediagoblin/db/sql/models.py47
-rw-r--r--mediagoblin/db/sql/open.py2
-rw-r--r--mediagoblin/db/util.py2
-rw-r--r--mediagoblin/decorators.py2
-rw-r--r--mediagoblin/edit/__init__.py2
-rw-r--r--mediagoblin/edit/forms.py2
-rw-r--r--mediagoblin/edit/lib.py2
-rw-r--r--mediagoblin/edit/routing.py2
-rw-r--r--mediagoblin/edit/views.py9
-rw-r--r--mediagoblin/errormiddleware.py2
-rw-r--r--mediagoblin/gmg_commands/__init__.py2
-rw-r--r--mediagoblin/gmg_commands/import_export.py2
-rw-r--r--mediagoblin/gmg_commands/migrate.py2
-rw-r--r--mediagoblin/gmg_commands/shell.py2
-rw-r--r--mediagoblin/gmg_commands/users.py2
-rw-r--r--mediagoblin/gmg_commands/util.py2
-rw-r--r--mediagoblin/gmg_commands/wipealldata.py2
-rw-r--r--mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.mobin13630 -> 14018 bytes
-rw-r--r--mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.po73
-rw-r--r--mediagoblin/i18n/en/LC_MESSAGES/mediagoblin.po4
-rw-r--r--mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.mobin13752 -> 13840 bytes
-rw-r--r--mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.po41
-rw-r--r--mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.mobin13516 -> 13526 bytes
-rw-r--r--mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.po19
-rw-r--r--mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.mobin17134 -> 18051 bytes
-rw-r--r--mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.po52
-rw-r--r--mediagoblin/init/__init__.py2
-rw-r--r--mediagoblin/init/celery/__init__.py2
-rw-r--r--mediagoblin/init/celery/from_celery.py2
-rw-r--r--mediagoblin/init/celery/from_tests.py2
-rw-r--r--mediagoblin/init/config.py2
-rw-r--r--mediagoblin/listings/__init__.py2
-rw-r--r--mediagoblin/listings/routing.py2
-rw-r--r--mediagoblin/listings/views.py4
-rw-r--r--mediagoblin/meddleware/__init__.py2
-rw-r--r--mediagoblin/meddleware/csrf.py2
-rw-r--r--mediagoblin/meddleware/noop.py2
-rw-r--r--mediagoblin/media_types/__init__.py2
-rw-r--r--mediagoblin/media_types/ascii/__init__.py4
-rw-r--r--mediagoblin/media_types/ascii/asciitoimage.py39
-rw-r--r--mediagoblin/media_types/ascii/processing.py27
-rw-r--r--mediagoblin/media_types/image/__init__.py2
-rw-r--r--mediagoblin/media_types/image/processing.py2
-rw-r--r--mediagoblin/media_types/video/__init__.py2
-rw-r--r--mediagoblin/media_types/video/processing.py2
-rw-r--r--mediagoblin/media_types/video/transcoders.py2
-rw-r--r--mediagoblin/messages.py2
-rw-r--r--mediagoblin/mg_globals.py2
-rw-r--r--mediagoblin/processing.py14
-rw-r--r--mediagoblin/routing.py2
-rw-r--r--mediagoblin/static/css/base.css16
-rw-r--r--mediagoblin/static/js/comment_show.js2
-rw-r--r--mediagoblin/static/js/geolocation-map.js2
-rw-r--r--mediagoblin/static/js/show_password.js2
-rw-r--r--mediagoblin/staticdirect.py2
-rw-r--r--mediagoblin/storage/__init__.py2
-rw-r--r--mediagoblin/storage/cloudfiles.py2
-rw-r--r--mediagoblin/storage/filestorage.py2
-rw-r--r--mediagoblin/storage/mountstorage.py2
-rw-r--r--mediagoblin/submit/__init__.py2
-rw-r--r--mediagoblin/submit/forms.py2
-rw-r--r--mediagoblin/submit/routing.py2
-rw-r--r--mediagoblin/submit/security.py2
-rw-r--r--mediagoblin/submit/views.py6
-rw-r--r--mediagoblin/templates/mediagoblin/404.html2
-rw-r--r--mediagoblin/templates/mediagoblin/auth/login.html2
-rw-r--r--mediagoblin/templates/mediagoblin/auth/register.html2
-rw-r--r--mediagoblin/templates/mediagoblin/auth/verification_email.txt2
-rw-r--r--mediagoblin/templates/mediagoblin/base.html2
-rw-r--r--mediagoblin/templates/mediagoblin/edit/attachments.html2
-rw-r--r--mediagoblin/templates/mediagoblin/edit/edit.html2
-rw-r--r--mediagoblin/templates/mediagoblin/edit/edit_account.html2
-rw-r--r--mediagoblin/templates/mediagoblin/edit/edit_profile.html2
-rw-r--r--mediagoblin/templates/mediagoblin/listings/tag.html2
-rw-r--r--mediagoblin/templates/mediagoblin/media_displays/ascii.html2
-rw-r--r--mediagoblin/templates/mediagoblin/media_displays/image.html2
-rw-r--r--mediagoblin/templates/mediagoblin/media_displays/video.html2
-rw-r--r--mediagoblin/templates/mediagoblin/root.html2
-rw-r--r--mediagoblin/templates/mediagoblin/submit/start.html2
-rw-r--r--mediagoblin/templates/mediagoblin/test_submit.html2
-rw-r--r--mediagoblin/templates/mediagoblin/user_pages/gallery.html2
-rw-r--r--mediagoblin/templates/mediagoblin/user_pages/media.html2
-rw-r--r--mediagoblin/templates/mediagoblin/user_pages/media_confirm_delete.html2
-rw-r--r--mediagoblin/templates/mediagoblin/user_pages/processing_panel.html2
-rw-r--r--mediagoblin/templates/mediagoblin/user_pages/user.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/exif.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/feed_link.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/geolocation_map.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/license.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/messages.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/object_gallery.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/pagination.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/prev_next.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/profile.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/tags.html2
-rw-r--r--mediagoblin/templates/mediagoblin/utils/wtforms.html2
-rw-r--r--mediagoblin/templates/mediagoblin/webfinger/host-meta.xml2
-rw-r--r--mediagoblin/templates/mediagoblin/webfinger/xrd.xml2
-rw-r--r--mediagoblin/tests/__init__.py2
-rw-r--r--mediagoblin/tests/fake_celery_module.py2
-rw-r--r--mediagoblin/tests/test_auth.py2
-rw-r--r--mediagoblin/tests/test_cache.py2
-rw-r--r--mediagoblin/tests/test_celery_setup.py2
-rw-r--r--mediagoblin/tests/test_config.py2
-rw-r--r--mediagoblin/tests/test_csrf_middleware.py2
-rw-r--r--mediagoblin/tests/test_edit.py2
-rw-r--r--mediagoblin/tests/test_exif.py17
-rw-r--r--mediagoblin/tests/test_globals.py2
-rw-r--r--mediagoblin/tests/test_messages.py2
-rw-r--r--mediagoblin/tests/test_migrations.py2
-rw-r--r--mediagoblin/tests/test_misc.py2
-rw-r--r--mediagoblin/tests/test_storage.py2
-rw-r--r--mediagoblin/tests/test_submission.py3
-rw-r--r--mediagoblin/tests/test_tags.py2
-rw-r--r--mediagoblin/tests/test_tests.py2
-rw-r--r--mediagoblin/tests/test_util.py2
-rw-r--r--mediagoblin/tests/test_workbench.py2
-rw-r--r--mediagoblin/tests/tools.py2
-rw-r--r--mediagoblin/tools/common.py2
-rw-r--r--mediagoblin/tools/exif.py2
-rw-r--r--mediagoblin/tools/files.py2
-rw-r--r--mediagoblin/tools/licenses.py2
-rw-r--r--mediagoblin/tools/mail.py2
-rw-r--r--mediagoblin/tools/pagination.py2
-rw-r--r--mediagoblin/tools/request.py2
-rw-r--r--mediagoblin/tools/response.py2
-rw-r--r--mediagoblin/tools/template.py2
-rw-r--r--mediagoblin/tools/testing.py2
-rw-r--r--mediagoblin/tools/text.py2
-rw-r--r--mediagoblin/tools/translate.py2
-rw-r--r--mediagoblin/tools/url.py2
-rw-r--r--mediagoblin/user_pages/__init__.py2
-rw-r--r--mediagoblin/user_pages/forms.py2
-rw-r--r--mediagoblin/user_pages/routing.py2
-rw-r--r--mediagoblin/user_pages/views.py8
-rw-r--r--mediagoblin/views.py2
-rw-r--r--mediagoblin/webfinger/__init__.py2
-rw-r--r--mediagoblin/webfinger/routing.py2
-rw-r--r--mediagoblin/webfinger/views.py2
-rw-r--r--mediagoblin/workbench.py2
162 files changed, 443 insertions, 301 deletions
diff --git a/mediagoblin/__init__.py b/mediagoblin/__init__.py
index f9c7ccfb..88dedd28 100644
--- a/mediagoblin/__init__.py
+++ b/mediagoblin/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/_version.py b/mediagoblin/_version.py
index 5e69f21a..381d1270 100644
--- a/mediagoblin/_version.py
+++ b/mediagoblin/_version.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -23,4 +23,4 @@
# see http://www.python.org/dev/peps/pep-0386/
-__version__ = "0.3.0.dev"
+__version__ = "0.3.0-dev"
diff --git a/mediagoblin/app.py b/mediagoblin/app.py
index 96b2c8ab..06627675 100644
--- a/mediagoblin/app.py
+++ b/mediagoblin/app.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/auth/__init__.py b/mediagoblin/auth/__init__.py
index ba347c69..621845ba 100644
--- a/mediagoblin/auth/__init__.py
+++ b/mediagoblin/auth/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/auth/forms.py b/mediagoblin/auth/forms.py
index 5a707c7b..1b3e214c 100644
--- a/mediagoblin/auth/forms.py
+++ b/mediagoblin/auth/forms.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/auth/lib.py b/mediagoblin/auth/lib.py
index c0af3b5b..1136a252 100644
--- a/mediagoblin/auth/lib.py
+++ b/mediagoblin/auth/lib.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/auth/routing.py b/mediagoblin/auth/routing.py
index ea9388c5..15d8fc3c 100644
--- a/mediagoblin/auth/routing.py
+++ b/mediagoblin/auth/routing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/auth/views.py b/mediagoblin/auth/views.py
index c04a49a7..e18469b9 100644
--- a/mediagoblin/auth/views.py
+++ b/mediagoblin/auth/views.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -60,7 +60,9 @@ def register(request):
if request.method == 'POST' and register_form.validate():
# TODO: Make sure the user doesn't exist already
username = unicode(request.POST['username'].lower())
- email = unicode(request.POST['email'].lower())
+ em_user, em_dom = unicode(request.POST['email']).split("@", 1)
+ em_dom = em_dom.lower()
+ email = em_user + "@" + em_dom
users_with_username = request.db.User.find(
{'username': username}).count()
users_with_email = request.db.User.find(
diff --git a/mediagoblin/db/__init__.py b/mediagoblin/db/__init__.py
index 27e8a90f..d149f62a 100644
--- a/mediagoblin/db/__init__.py
+++ b/mediagoblin/db/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/mixin.py b/mediagoblin/db/mixin.py
index 254dbcff..758f7e72 100644
--- a/mediagoblin/db/mixin.py
+++ b/mediagoblin/db/mixin.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011,2012 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -29,6 +29,7 @@ real objects.
from mediagoblin.auth import lib as auth_lib
from mediagoblin.tools import common, licenses
+from mediagoblin.tools.text import cleaned_markdown_conversion
class UserMixin(object):
@@ -39,8 +40,20 @@ class UserMixin(object):
return auth_lib.bcrypt_check_password(
password, self.pw_hash)
+ @property
+ def bio_html(self):
+ return cleaned_markdown_conversion(self.bio)
+
class MediaEntryMixin(object):
+ @property
+ def description_html(self):
+ """
+ Rendered version of the description, run through
+ Markdown and cleaned with our cleaning tool.
+ """
+ return cleaned_markdown_conversion(self.description)
+
def get_display_media(self, media_map,
fetch_order=common.DISPLAY_IMAGE_FETCHING_ORDER):
"""
@@ -91,3 +104,13 @@ class MediaEntryMixin(object):
def get_license_data(self):
"""Return license dict for requested license"""
return licenses.SUPPORTED_LICENSES[self.license or ""]
+
+
+class MediaCommentMixin(object):
+ @property
+ def content_html(self):
+ """
+ the actual html-rendered version of the comment displayed.
+ Run through Markdown and the HTML cleaner.
+ """
+ return cleaned_markdown_conversion(self.content)
diff --git a/mediagoblin/db/mongo/__init__.py b/mediagoblin/db/mongo/__init__.py
index ba347c69..621845ba 100644
--- a/mediagoblin/db/mongo/__init__.py
+++ b/mediagoblin/db/mongo/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/mongo/indexes.py b/mediagoblin/db/mongo/indexes.py
index 1dd73f2b..a63c24ae 100644
--- a/mediagoblin/db/mongo/indexes.py
+++ b/mediagoblin/db/mongo/indexes.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/mongo/migrations.py b/mediagoblin/db/mongo/migrations.py
index 168fa530..59035f3b 100644
--- a/mediagoblin/db/mongo/migrations.py
+++ b/mediagoblin/db/mongo/migrations.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -29,6 +29,16 @@ def add_table_field(db, table_name, field_name, default_value):
multi=True)
+def drop_table_field(db, table_name, field_name):
+ """
+ Drop an old field from a table/collection
+ """
+ db[table_name].update(
+ {field_name: {'$exists': True}},
+ {'$unset': {field_name: 1}},
+ multi=True)
+
+
# Please see mediagoblin/tests/test_migrations.py for some examples of
# basic migrations.
@@ -115,3 +125,17 @@ def mediaentry_add_license(database):
Add the 'license' field for entries that don't have it.
"""
add_table_field(database, 'media_entries', 'license', None)
+
+
+@RegisterMigration(9)
+def remove_calculated_html(database):
+ """
+ Drop pre-rendered html again and calculate things
+ on the fly (and cache):
+ - User.bio_html
+ - MediaEntry.description_html
+ - MediaComment.content_html
+ """
+ drop_table_field(database, 'users', 'bio_html')
+ drop_table_field(database, 'media_entries', 'description_html')
+ drop_table_field(database, 'media_comments', 'content_html')
diff --git a/mediagoblin/db/mongo/models.py b/mediagoblin/db/mongo/models.py
index 56ed7dcf..57af137d 100644
--- a/mediagoblin/db/mongo/models.py
+++ b/mediagoblin/db/mongo/models.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -23,7 +23,7 @@ from mediagoblin.db.mongo import migrations
from mediagoblin.db.mongo.util import ASCENDING, DESCENDING, ObjectId
from mediagoblin.tools.pagination import Pagination
from mediagoblin.tools import url
-from mediagoblin.db.mixin import UserMixin, MediaEntryMixin
+from mediagoblin.db.mixin import UserMixin, MediaEntryMixin, MediaCommentMixin
###################
# Custom validators
@@ -59,7 +59,6 @@ class User(Document, UserMixin):
- is_admin: Whether or not this user is an administrator or not.
- url: this user's personal webpage/website, if appropriate.
- bio: biography of this user (plaintext, in markdown)
- - bio_html: biography of the user converted to proper HTML.
"""
__collection__ = 'users'
use_dot_notation = True
@@ -76,7 +75,6 @@ class User(Document, UserMixin):
'is_admin': bool,
'url': unicode,
'bio': unicode, # May contain markdown
- 'bio_html': unicode, # May contain plaintext, or HTML
'fp_verification_key': unicode, # forgotten password verification key
'fp_token_expire': datetime.datetime,
}
@@ -112,9 +110,6 @@ class MediaEntry(Document, MediaEntryMixin):
up with MarkDown for slight fanciness (links, boldness, italics,
paragraphs...)
- - description_html: Rendered version of the description, run through
- Markdown and cleaned with our cleaning tool.
-
- media_type: What type of media is this? Currently we only support
'image' ;)
@@ -179,7 +174,6 @@ class MediaEntry(Document, MediaEntryMixin):
'slug': unicode,
'created': datetime.datetime,
'description': unicode, # May contain markdown/up
- 'description_html': unicode, # May contain plaintext, or HTML
'media_type': unicode,
'media_data': dict, # extra data relevant to this media_type
'plugin_data': dict, # plugins can dump stuff here.
@@ -257,7 +251,7 @@ class MediaEntry(Document, MediaEntryMixin):
return self.db.User.find_one({'_id': self.uploader})
-class MediaComment(Document):
+class MediaComment(Document, MediaCommentMixin):
"""
A comment on a MediaEntry.
@@ -266,8 +260,6 @@ class MediaComment(Document):
- author: user who posted this comment
- created: when the comment was created
- content: plaintext (but markdown'able) version of the comment's content.
- - content_html: the actual html-rendered version of the comment displayed.
- Run through Markdown and the HTML cleaner.
"""
__collection__ = 'media_comments'
@@ -278,7 +270,7 @@ class MediaComment(Document):
'author': ObjectId,
'created': datetime.datetime,
'content': unicode,
- 'content_html': unicode}
+ }
required_fields = [
'media_entry', 'author', 'created', 'content']
diff --git a/mediagoblin/db/mongo/open.py b/mediagoblin/db/mongo/open.py
index 48c909d9..bedc497b 100644
--- a/mediagoblin/db/mongo/open.py
+++ b/mediagoblin/db/mongo/open.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/mongo/util.py b/mediagoblin/db/mongo/util.py
index e2065693..4daf616a 100644
--- a/mediagoblin/db/mongo/util.py
+++ b/mediagoblin/db/mongo/util.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/open.py b/mediagoblin/db/open.py
index 6cd17869..0163469f 100644
--- a/mediagoblin/db/open.py
+++ b/mediagoblin/db/open.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/sql/__init__.py b/mediagoblin/db/sql/__init__.py
index ba347c69..621845ba 100644
--- a/mediagoblin/db/sql/__init__.py
+++ b/mediagoblin/db/sql/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/sql/base.py b/mediagoblin/db/sql/base.py
index f1affc83..6ed24a03 100644
--- a/mediagoblin/db/sql/base.py
+++ b/mediagoblin/db/sql/base.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011,2012 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/sql/convert.py b/mediagoblin/db/sql/convert.py
index 260328c6..a46d62ea 100644
--- a/mediagoblin/db/sql/convert.py
+++ b/mediagoblin/db/sql/convert.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011,2012 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -56,7 +56,7 @@ def convert_users(mk_db):
copy_attrs(entry, new_entry,
('username', 'email', 'created', 'pw_hash', 'email_verified',
'status', 'verification_key', 'is_admin', 'url',
- 'bio', 'bio_html',
+ 'bio',
'fp_verification_key', 'fp_token_expire',))
# new_entry.fp_verification_expire = entry.fp_token_expire
@@ -77,7 +77,7 @@ def convert_media_entries(mk_db):
new_entry = MediaEntry()
copy_attrs(entry, new_entry,
('title', 'slug', 'created',
- 'description', 'description_html',
+ 'description',
'media_type', 'state', 'license',
'fail_error',
'queued_task_id',))
@@ -133,7 +133,7 @@ def convert_media_comments(mk_db):
new_entry = MediaComment()
copy_attrs(entry, new_entry,
('created',
- 'content', 'content_html',))
+ 'content',))
copy_reference_attr(entry, new_entry, "media_entry")
copy_reference_attr(entry, new_entry, "author")
diff --git a/mediagoblin/db/sql/extratypes.py b/mediagoblin/db/sql/extratypes.py
index 33c9edee..3a594728 100644
--- a/mediagoblin/db/sql/extratypes.py
+++ b/mediagoblin/db/sql/extratypes.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011,2012 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -25,8 +25,10 @@ class PathTupleWithSlashes(TypeDecorator):
def process_bind_param(self, value, dialect):
if value is not None:
- assert len(value), "Does not support empty lists"
- value = '/'.join(value)
+ if len(value) == 0:
+ value = None
+ else:
+ value = '/'.join(value)
return value
def process_result_value(self, value, dialect):
diff --git a/mediagoblin/db/sql/fake.py b/mediagoblin/db/sql/fake.py
index 482b85da..0fd0cc41 100644
--- a/mediagoblin/db/sql/fake.py
+++ b/mediagoblin/db/sql/fake.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011,2012 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/sql/models.py b/mediagoblin/db/sql/models.py
index 41b8b490..b6377172 100644
--- a/mediagoblin/db/sql/models.py
+++ b/mediagoblin/db/sql/models.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011,2012 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -14,6 +14,10 @@
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+"""
+TODO: indexes on foreignkeys, where useful.
+"""
+
import datetime
@@ -27,7 +31,7 @@ from sqlalchemy.ext.associationproxy import association_proxy
from mediagoblin.db.sql.extratypes import PathTupleWithSlashes
from mediagoblin.db.sql.base import Base, DictReadAttrProxy
-from mediagoblin.db.mixin import UserMixin, MediaEntryMixin
+from mediagoblin.db.mixin import UserMixin, MediaEntryMixin, MediaCommentMixin
# It's actually kind of annoying how sqlalchemy-migrate does this, if
# I understand it right, but whatever. Anyway, don't remove this :P
@@ -50,6 +54,10 @@ class SimpleFieldAlias(object):
class User(Base, UserMixin):
+ """
+ TODO: We should consider moving some rarely used fields
+ into some sort of "shadow" table.
+ """
__tablename__ = "users"
id = Column(Integer, primary_key=True)
@@ -57,13 +65,12 @@ class User(Base, UserMixin):
email = Column(Unicode, nullable=False)
created = Column(DateTime, nullable=False, default=datetime.datetime.now)
pw_hash = Column(Unicode, nullable=False)
- email_verified = Column(Boolean)
+ email_verified = Column(Boolean, default=False)
status = Column(Unicode, default=u"needs_email_verification", nullable=False)
verification_key = Column(Unicode)
is_admin = Column(Boolean, default=False, nullable=False)
url = Column(Unicode)
bio = Column(UnicodeText) # ??
- bio_html = Column(UnicodeText) # ??
fp_verification_key = Column(Unicode)
fp_token_expire = Column(DateTime)
@@ -74,6 +81,9 @@ class User(Base, UserMixin):
class MediaEntry(Base, MediaEntryMixin):
+ """
+ TODO: Consider fetching the media_files using join
+ """
__tablename__ = "media_entries"
id = Column(Integer, primary_key=True)
@@ -82,9 +92,9 @@ class MediaEntry(Base, MediaEntryMixin):
slug = Column(Unicode)
created = Column(DateTime, nullable=False, default=datetime.datetime.now)
description = Column(UnicodeText) # ??
- description_html = Column(UnicodeText) # ??
media_type = Column(Unicode, nullable=False)
- state = Column(Unicode, nullable=False) # or use sqlalchemy.types.Enum?
+ state = Column(Unicode, default=u'unprocessed', nullable=False)
+ # or use sqlalchemy.types.Enum?
license = Column(Unicode)
fail_error = Column(Unicode)
@@ -120,6 +130,8 @@ class MediaEntry(Base, MediaEntryMixin):
# attachment_files
# fail_error
+ _id = SimpleFieldAlias("id")
+
def get_comments(self, ascending=False):
order_col = MediaComment.created
if not ascending:
@@ -149,6 +161,10 @@ class MediaEntry(Base, MediaEntryMixin):
class MediaFile(Base):
+ """
+ TODO: Highly consider moving "name" into a new table.
+ TODO: Consider preloading said table in software
+ """
__tablename__ = "mediafiles"
media_entry = Column(
@@ -209,7 +225,7 @@ class MediaTag(Base):
return DictReadAttrProxy(self)
-class MediaComment(Base):
+class MediaComment(Base, MediaCommentMixin):
__tablename__ = "media_comments"
id = Column(Integer, primary_key=True)
@@ -218,10 +234,11 @@ class MediaComment(Base):
author = Column(Integer, ForeignKey('users.id'), nullable=False)
created = Column(DateTime, nullable=False, default=datetime.datetime.now)
content = Column(UnicodeText, nullable=False)
- content_html = Column(UnicodeText)
get_author = relationship(User)
+ _id = SimpleFieldAlias("id")
+
MODELS = [
User, MediaEntry, Tag, MediaTag, MediaComment]
@@ -243,12 +260,20 @@ class MigrationData(Base):
######################################################
-def show_table_init():
+def show_table_init(engine_uri):
+ if engine_uri is None:
+ engine_uri = 'sqlite:///:memory:'
from sqlalchemy import create_engine
- engine = create_engine('sqlite:///:memory:', echo=True)
+ engine = create_engine(engine_uri, echo=True)
Base.metadata.create_all(engine)
if __name__ == '__main__':
- show_table_init()
+ from sys import argv
+ print repr(argv)
+ if len(argv) == 2:
+ uri = argv[1]
+ else:
+ uri = None
+ show_table_init(uri)
diff --git a/mediagoblin/db/sql/open.py b/mediagoblin/db/sql/open.py
index 3c06c676..1bfc5538 100644
--- a/mediagoblin/db/sql/open.py
+++ b/mediagoblin/db/sql/open.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011,2012 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/db/util.py b/mediagoblin/db/util.py
index fff71d06..1fc949a6 100644
--- a/mediagoblin/db/util.py
+++ b/mediagoblin/db/util.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/decorators.py b/mediagoblin/decorators.py
index 4cf14a70..83602c70 100644
--- a/mediagoblin/decorators.py
+++ b/mediagoblin/decorators.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/edit/__init__.py b/mediagoblin/edit/__init__.py
index ba347c69..621845ba 100644
--- a/mediagoblin/edit/__init__.py
+++ b/mediagoblin/edit/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/edit/forms.py b/mediagoblin/edit/forms.py
index 3e3612fe..46ee02e2 100644
--- a/mediagoblin/edit/forms.py
+++ b/mediagoblin/edit/forms.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/edit/lib.py b/mediagoblin/edit/lib.py
index a199cbf7..b4715134 100644
--- a/mediagoblin/edit/lib.py
+++ b/mediagoblin/edit/lib.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/edit/routing.py b/mediagoblin/edit/routing.py
index 5216f7ca..5bcafeac 100644
--- a/mediagoblin/edit/routing.py
+++ b/mediagoblin/edit/routing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/edit/views.py b/mediagoblin/edit/views.py
index a637d699..3df36e8e 100644
--- a/mediagoblin/edit/views.py
+++ b/mediagoblin/edit/views.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -34,7 +34,7 @@ from mediagoblin.tools.response import render_to_response, redirect
from mediagoblin.tools.translate import pass_to_ugettext as _
from mediagoblin.tools.text import (
clean_html, convert_to_tag_list_of_dicts,
- media_tags_as_string, cleaned_markdown_conversion)
+ media_tags_as_string)
from mediagoblin.tools.licenses import SUPPORTED_LICENSES
@@ -72,9 +72,6 @@ def edit_media(request, media):
media.tags = convert_to_tag_list_of_dicts(
request.POST.get('tags'))
- media.description_html = cleaned_markdown_conversion(
- media.description)
-
media.license = unicode(request.POST.get('license', '')) or None
media.slug = unicode(request.POST['slug'])
@@ -171,8 +168,6 @@ def edit_profile(request):
user.url = unicode(request.POST['url'])
user.bio = unicode(request.POST['bio'])
- user.bio_html = cleaned_markdown_conversion(user.bio)
-
user.save()
messages.add_message(request,
diff --git a/mediagoblin/errormiddleware.py b/mediagoblin/errormiddleware.py
index ccfe4d03..c6789f32 100644
--- a/mediagoblin/errormiddleware.py
+++ b/mediagoblin/errormiddleware.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/gmg_commands/__init__.py b/mediagoblin/gmg_commands/__init__.py
index 04187ff2..db944b3c 100644
--- a/mediagoblin/gmg_commands/__init__.py
+++ b/mediagoblin/gmg_commands/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/gmg_commands/import_export.py b/mediagoblin/gmg_commands/import_export.py
index 7f699429..20cc8fe4 100644
--- a/mediagoblin/gmg_commands/import_export.py
+++ b/mediagoblin/gmg_commands/import_export.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/gmg_commands/migrate.py b/mediagoblin/gmg_commands/migrate.py
index 0a8ee7dc..cacf5d19 100644
--- a/mediagoblin/gmg_commands/migrate.py
+++ b/mediagoblin/gmg_commands/migrate.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/gmg_commands/shell.py b/mediagoblin/gmg_commands/shell.py
index 910560a0..fe15e9f7 100644
--- a/mediagoblin/gmg_commands/shell.py
+++ b/mediagoblin/gmg_commands/shell.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/gmg_commands/users.py b/mediagoblin/gmg_commands/users.py
index 4bfe30a5..70e591c9 100644
--- a/mediagoblin/gmg_commands/users.py
+++ b/mediagoblin/gmg_commands/users.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/gmg_commands/util.py b/mediagoblin/gmg_commands/util.py
index 3e26c53f..6a6853d5 100644
--- a/mediagoblin/gmg_commands/util.py
+++ b/mediagoblin/gmg_commands/util.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/gmg_commands/wipealldata.py b/mediagoblin/gmg_commands/wipealldata.py
index cddbab38..3081bbc0 100644
--- a/mediagoblin/gmg_commands/wipealldata.py
+++ b/mediagoblin/gmg_commands/wipealldata.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.mo b/mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.mo
index a63886d8..e3ba1606 100644
--- a/mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.mo
+++ b/mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.mo
Binary files differ
diff --git a/mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.po b/mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.po
index 381005a8..e435971a 100644
--- a/mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.po
+++ b/mediagoblin/i18n/de/LC_MESSAGES/mediagoblin.po
@@ -8,7 +8,7 @@
# Elrond <elrond+mediagoblin.org@samba-tng.org>, 2011, 2012.
# <jakob.kramer@gmx.de>, 2011, 2012.
# Jan-Christoph Borchardt <JanCBorchardt@fsfe.org>, 2011.
-# Jan-Christoph Borchardt <jan@unhosted.org>, 2011.
+# Jan-Christoph Borchardt <jan@unhosted.org>, 2011, 2012.
# <kyoo@kyoo.ch>, 2011.
# <mediagoblin.org@samba-tng.org>, 2011.
# Rafael Maguiña <rafael.maguina@gmail.com>, 2011.
@@ -16,10 +16,10 @@
msgid ""
msgstr ""
"Project-Id-Version: GNU MediaGoblin\n"
-"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
-"POT-Creation-Date: 2012-01-29 13:31-0600\n"
-"PO-Revision-Date: 2012-01-29 19:44+0000\n"
-"Last-Translator: Elrond <elrond+mediagoblin.org@samba-tng.org>\n"
+"Report-Msgid-Bugs-To: http://issues.mediagoblin.org/\n"
+"POT-Creation-Date: 2012-01-29 13:47-0600\n"
+"PO-Revision-Date: 2012-02-05 20:23+0000\n"
+"Last-Translator: Jan-Christoph Borchardt <jan@unhosted.org>\n"
"Language-Team: German (http://www.transifex.net/projects/p/mediagoblin/team/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -84,6 +84,8 @@ msgstr "Bestätigungs-E-Mail wurde erneut versandt."
msgid ""
"An email has been sent with instructions on how to change your password."
msgstr ""
+"Es wurde eine Email mit Anweisungen für die Änderung des Passwortes an dich "
+"gesendet."
#: mediagoblin/auth/views.py:270
msgid ""
@@ -96,11 +98,11 @@ msgstr ""
#: mediagoblin/auth/views.py:282
msgid "Couldn't find someone with that username or email."
-msgstr ""
+msgstr "Es konnte niemand mit diesem Nutzernamen oder Email gefunden werden."
#: mediagoblin/auth/views.py:330
msgid "You can now log in using your new password."
-msgstr ""
+msgstr "Du kannst dich jetzt mit deinem neuen Passwort anmelden."
#: mediagoblin/edit/forms.py:25 mediagoblin/submit/forms.py:28
msgid "Title"
@@ -117,10 +119,13 @@ msgid ""
" <a href=\"http://daringfireball.net/projects/markdown/basics\">\n"
" Markdown</a> for formatting."
msgstr ""
+"Für Formatierung kannst du\n"
+" <a href=\"http://daringfireball.net/projects/markdown/basics\">\n"
+" Markdown</a> benutzen."
#: mediagoblin/edit/forms.py:33 mediagoblin/submit/forms.py:36
msgid "Tags"
-msgstr "Markierungen"
+msgstr "Schlagworte"
#: mediagoblin/edit/forms.py:35 mediagoblin/submit/forms.py:38
msgid "Separate tags by commas."
@@ -161,6 +166,7 @@ msgstr "Altes Passwort"
#: mediagoblin/edit/forms.py:65
msgid "Enter your old password to prove you own this account."
msgstr ""
+"Gib dein altes Passwort ein, um zu bestätigen dass du dieses Konto besitzt."
#: mediagoblin/edit/forms.py:68
msgid "New password"
@@ -188,15 +194,15 @@ msgstr "Falsches Passwort"
#: mediagoblin/edit/views.py:222
msgid "Account settings saved"
-msgstr ""
+msgstr "Kontoeinstellungen gespeichert"
#: mediagoblin/media_types/__init__.py:77
msgid "Could not extract any file extension from \"{filename}\""
-msgstr ""
+msgstr "Es konnten keine Dateierweiterungen von »{filename}« gelesen werden."
#: mediagoblin/media_types/__init__.py:88
msgid "Sorry, I don't support that file type :("
-msgstr ""
+msgstr "Entschuldigung, dieser Dateityp wird nicht unterstützt."
#: mediagoblin/submit/forms.py:26
msgid "File"
@@ -306,11 +312,11 @@ msgstr "Neuste Medien"
#: mediagoblin/templates/mediagoblin/auth/change_fp.html:32
msgid "Set your new password"
-msgstr ""
+msgstr "Dein neues Passwort"
#: mediagoblin/templates/mediagoblin/auth/change_fp.html:35
msgid "Set password"
-msgstr ""
+msgstr "Passwort setzen"
#: mediagoblin/templates/mediagoblin/auth/forgot_password.html:27
msgid "Recover password"
@@ -400,7 +406,7 @@ msgstr "Änderungen speichern"
#: mediagoblin/templates/mediagoblin/edit/edit_account.html:34
#, python-format
msgid "Changing %(username)s's account settings"
-msgstr ""
+msgstr "%(username)s's Kontoeinstellungen werden geändert"
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:29
#, python-format
@@ -411,7 +417,7 @@ msgstr "%(username)ss Profil bearbeiten"
#: mediagoblin/templates/mediagoblin/listings/tag.html:35
#, python-format
msgid "Media tagged with: %(tag_name)s"
-msgstr "Medien markiert mit: %(tag_name)s"
+msgstr "Medien mit Schlagwort: %(tag_name)s"
#: mediagoblin/templates/mediagoblin/media_displays/ascii.html:34
#: mediagoblin/templates/mediagoblin/media_displays/video.html:46
@@ -424,6 +430,9 @@ msgid ""
"\t your web browser does not support HTML5 \n"
"\t video."
msgstr ""
+"Entschuldige, dieses Video wird nicht funktionieren weil \n"
+"<span class=\"whitespace other\" title=\"Tab\">»</span> dein Webbrowser kein HTML5 \n"
+"<span class=\"whitespace other\" title=\"Tab\">»</span> Video unterstützt."
#: mediagoblin/templates/mediagoblin/media_displays/video.html:36
msgid ""
@@ -431,14 +440,17 @@ msgid ""
"\t can play this video at <a href=\"http://getfirefox.com\">\n"
"\t http://getfirefox.com</a>!"
msgstr ""
+"Hol dir einen modernen Webbrowser, der \n"
+"<span class=\"whitespace other\" title=\"Tab\">»</span> dieses Video abspielen kann, <a href=\"http://getfirefox.com\">\n"
+"<span class=\"whitespace other\" title=\"Tab\">»</span> Firefox</a>!"
#: mediagoblin/templates/mediagoblin/submit/start.html:26
msgid "Add your media"
-msgstr ""
+msgstr "Deine Medien"
#: mediagoblin/templates/mediagoblin/submit/start.html:30
msgid "Add"
-msgstr ""
+msgstr "Hinzufügen"
#: mediagoblin/templates/mediagoblin/user_pages/gallery.html:30
#, python-format
@@ -453,7 +465,7 @@ msgstr "<a href=\"%(user_url)s\">%(username)s</a>s Medien"
#: mediagoblin/templates/mediagoblin/user_pages/media.html:72
#, python-format
msgid "Added on %(date)s."
-msgstr ""
+msgstr "Hinzugefügt am %(date)s."
#: mediagoblin/templates/mediagoblin/user_pages/media.html:81
msgid "Edit"
@@ -475,11 +487,11 @@ msgstr "%(comment_count)s Kommentare"
#: mediagoblin/templates/mediagoblin/user_pages/media.html:95
msgid "No comments yet."
-msgstr ""
+msgstr "Bisher keine Kommentare."
#: mediagoblin/templates/mediagoblin/user_pages/media.html:103
msgid "Add one"
-msgstr ""
+msgstr "Kommentiere etwas"
#: mediagoblin/templates/mediagoblin/user_pages/media.html:112
msgid ""
@@ -487,10 +499,13 @@ msgid ""
"href=\"http://daringfireball.net/projects/markdown/basics\">Markdown</a> for"
" formatting."
msgstr ""
+"Für Formatierung kannst du <a "
+"href=\"http://daringfireball.net/projects/markdown/basics\">Markdown</a> "
+"benutzen."
#: mediagoblin/templates/mediagoblin/user_pages/media.html:116
msgid "Add this comment"
-msgstr ""
+msgstr "Kommentar absenden"
#: mediagoblin/templates/mediagoblin/user_pages/media.html:138
msgid "at"
@@ -499,7 +514,7 @@ msgstr "bei"
#: mediagoblin/templates/mediagoblin/user_pages/media.html:153
#, python-format
msgid "<p>â– Browsing media by <a href=\"%(user_url)s\">%(username)s</a></p>"
-msgstr ""
+msgstr "<p>â– Medien von <a href=\"%(user_url)s\">%(username)s</a></p>"
#: mediagoblin/templates/mediagoblin/user_pages/media_confirm_delete.html:30
#, python-format
@@ -600,7 +615,7 @@ msgstr "Dieser Benutzer hat (noch) keine Daten in seinem Profil."
#: mediagoblin/templates/mediagoblin/user_pages/user.html:125
msgid "Change account settings"
-msgstr ""
+msgstr "Kontoeinstellungen ändern"
#: mediagoblin/templates/mediagoblin/user_pages/user.html:138
#, python-format
@@ -628,11 +643,11 @@ msgstr "Atom-Feed"
#: mediagoblin/templates/mediagoblin/utils/license.html:21
msgid "License:"
-msgstr ""
+msgstr "Lizenz:"
#: mediagoblin/templates/mediagoblin/utils/license.html:25
msgid "All rights reserved"
-msgstr ""
+msgstr "Alle Rechte vorbehalten"
#: mediagoblin/templates/mediagoblin/utils/pagination.html:39
msgid "↠Newer"
@@ -649,16 +664,16 @@ msgstr "Zu Seite:"
#: mediagoblin/templates/mediagoblin/utils/prev_next.html:27
#: mediagoblin/templates/mediagoblin/utils/prev_next.html:32
msgid "newer"
-msgstr ""
+msgstr "neuer"
#: mediagoblin/templates/mediagoblin/utils/prev_next.html:38
#: mediagoblin/templates/mediagoblin/utils/prev_next.html:43
msgid "older"
-msgstr ""
+msgstr "älter"
#: mediagoblin/templates/mediagoblin/utils/tags.html:20
msgid "View more media tagged with"
-msgstr ""
+msgstr "Mehr Medien anschauen mit dem Schlagwort"
#: mediagoblin/templates/mediagoblin/utils/tags.html:25
msgid "or"
@@ -666,7 +681,7 @@ msgstr "oder"
#: mediagoblin/tools/exif.py:68
msgid "Could not read the image file."
-msgstr ""
+msgstr "Die Bilddatei konnte nicht gelesen werden."
#: mediagoblin/user_pages/forms.py:30
msgid "I am sure I want to delete this"
diff --git a/mediagoblin/i18n/en/LC_MESSAGES/mediagoblin.po b/mediagoblin/i18n/en/LC_MESSAGES/mediagoblin.po
index eca38526..b5832fe4 100644
--- a/mediagoblin/i18n/en/LC_MESSAGES/mediagoblin.po
+++ b/mediagoblin/i18n/en/LC_MESSAGES/mediagoblin.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PROJECT VERSION\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2012-01-29 13:47-0600\n"
+"POT-Creation-Date: 2012-02-09 09:30-0600\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 0.9.6\n"
-#: mediagoblin/processing.py:143
+#: mediagoblin/processing.py:153
msgid "Invalid file given for media type."
msgstr ""
diff --git a/mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.mo b/mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.mo
index 63cf7739..25ab5836 100644
--- a/mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.mo
+++ b/mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.mo
Binary files differ
diff --git a/mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.po b/mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.po
index a98409ac..49626556 100644
--- a/mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.po
+++ b/mediagoblin/i18n/eo/LC_MESSAGES/mediagoblin.po
@@ -9,10 +9,10 @@
msgid ""
msgstr ""
"Project-Id-Version: GNU MediaGoblin\n"
-"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
-"POT-Creation-Date: 2012-01-29 13:31-0600\n"
-"PO-Revision-Date: 2012-01-29 19:29+0000\n"
-"Last-Translator: cwebber <cwebber@dustycloud.org>\n"
+"Report-Msgid-Bugs-To: http://issues.mediagoblin.org/\n"
+"POT-Creation-Date: 2012-01-29 13:47-0600\n"
+"PO-Revision-Date: 2012-02-05 21:07+0000\n"
+"Last-Translator: aleksejrs <deletesoftware@yandex.ru>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -109,6 +109,9 @@ msgid ""
" <a href=\"http://daringfireball.net/projects/markdown/basics\">\n"
" Markdown</a> for formatting."
msgstr ""
+"Vi povas uzi por markado la lingvon\n"
+" «<a href=\"http://daringfireball.net/projects/markdown/basics\">\n"
+" Markdown</a>»."
#: mediagoblin/edit/forms.py:33 mediagoblin/submit/forms.py:36
msgid "Tags"
@@ -136,7 +139,7 @@ msgstr ""
#: mediagoblin/edit/forms.py:44 mediagoblin/submit/forms.py:41
msgid "License"
-msgstr ""
+msgstr "Permesilo"
#: mediagoblin/edit/forms.py:50
msgid "Bio"
@@ -184,7 +187,7 @@ msgstr "Kontagordoj estis konservitaj"
#: mediagoblin/media_types/__init__.py:77
msgid "Could not extract any file extension from \"{filename}\""
-msgstr ""
+msgstr "Ne eblis eltrovi finaĵon de la dosiernomo «{filename}»"
#: mediagoblin/media_types/__init__.py:88
msgid "Sorry, I don't support that file type :("
@@ -289,6 +292,9 @@ msgid ""
" or\n"
" <a class=\"button_action\" href=\"http://wiki.mediagoblin.org/HackingHowto\">Set up MediaGoblin on your own server</a>"
msgstr ""
+"<a class=\"button_action_highlight\" href=\"%(register_url)s\">Kreu konton en ĉi tiu retejo</a>\n"
+" aÅ­\n"
+" <a class=\"button_action\" href=\"http://wiki.mediagoblin.org/HackingHowto\">ekfunkciigu MediaGoblin’on en via propra servilo</a>"
#: mediagoblin/templates/mediagoblin/root.html:40
msgid "Most recent media"
@@ -296,11 +302,11 @@ msgstr "Laste aldonitaj dosieroj"
#: mediagoblin/templates/mediagoblin/auth/change_fp.html:32
msgid "Set your new password"
-msgstr ""
+msgstr "Enigu vian novan pasvorton"
#: mediagoblin/templates/mediagoblin/auth/change_fp.html:35
msgid "Set password"
-msgstr ""
+msgstr "Difini pasvorton"
#: mediagoblin/templates/mediagoblin/auth/forgot_password.html:27
msgid "Recover password"
@@ -475,7 +481,7 @@ msgstr "Estas neniom da komentoj."
#: mediagoblin/templates/mediagoblin/user_pages/media.html:103
msgid "Add one"
-msgstr "Aldoni sian."
+msgstr "Komenti"
#: mediagoblin/templates/mediagoblin/user_pages/media.html:112
msgid ""
@@ -483,6 +489,8 @@ msgid ""
"href=\"http://daringfireball.net/projects/markdown/basics\">Markdown</a> for"
" formatting."
msgstr ""
+"Vi povas uzi por markado la lingvon «&lt;a "
+"href=\"http://daringfireball.net/projects/markdown/basics\"&gt;Markdown&lt;/a&gt;»."
#: mediagoblin/templates/mediagoblin/user_pages/media.html:116
msgid "Add this comment"
@@ -496,6 +504,7 @@ msgstr "je"
#, python-format
msgid "<p>â– Browsing media by <a href=\"%(user_url)s\">%(username)s</a></p>"
msgstr ""
+"<p>â– Foliumado de dosieraro de <a href=\"%(user_url)s\">%(username)s</a></p>"
#: mediagoblin/templates/mediagoblin/user_pages/media_confirm_delete.html:30
#, python-format
@@ -623,19 +632,19 @@ msgstr "Atom-a informfluo"
#: mediagoblin/templates/mediagoblin/utils/license.html:21
msgid "License:"
-msgstr ""
+msgstr "Permesilo:"
#: mediagoblin/templates/mediagoblin/utils/license.html:25
msgid "All rights reserved"
-msgstr ""
+msgstr "Ĉiuj rajtoj estas rezervitaj"
#: mediagoblin/templates/mediagoblin/utils/pagination.html:39
msgid "↠Newer"
-msgstr ""
+msgstr "↠Pli novaj"
#: mediagoblin/templates/mediagoblin/utils/pagination.html:45
msgid "Older →"
-msgstr ""
+msgstr "Malpli novaj →"
#: mediagoblin/templates/mediagoblin/utils/pagination.html:48
msgid "Go to page:"
@@ -644,12 +653,12 @@ msgstr "Iri al paÄo:"
#: mediagoblin/templates/mediagoblin/utils/prev_next.html:27
#: mediagoblin/templates/mediagoblin/utils/prev_next.html:32
msgid "newer"
-msgstr ""
+msgstr "pli nova"
#: mediagoblin/templates/mediagoblin/utils/prev_next.html:38
#: mediagoblin/templates/mediagoblin/utils/prev_next.html:43
msgid "older"
-msgstr ""
+msgstr "malpli nova"
#: mediagoblin/templates/mediagoblin/utils/tags.html:20
msgid "View more media tagged with"
@@ -661,7 +670,7 @@ msgstr "aÅ­"
#: mediagoblin/tools/exif.py:68
msgid "Could not read the image file."
-msgstr ""
+msgstr "Malsukcesis lego de la bildodosiero"
#: mediagoblin/user_pages/forms.py:30
msgid "I am sure I want to delete this"
diff --git a/mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.mo b/mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.mo
index 455849b2..0baae15d 100644
--- a/mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.mo
+++ b/mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.mo
Binary files differ
diff --git a/mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.po b/mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.po
index c70bb19e..c40671e6 100644
--- a/mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.po
+++ b/mediagoblin/i18n/nl/LC_MESSAGES/mediagoblin.po
@@ -7,10 +7,10 @@
msgid ""
msgstr ""
"Project-Id-Version: GNU MediaGoblin\n"
-"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
-"POT-Creation-Date: 2012-01-29 13:31-0600\n"
-"PO-Revision-Date: 2012-01-29 19:29+0000\n"
-"Last-Translator: cwebber <cwebber@dustycloud.org>\n"
+"Report-Msgid-Bugs-To: http://issues.mediagoblin.org/\n"
+"POT-Creation-Date: 2012-01-29 13:47-0600\n"
+"PO-Revision-Date: 2012-02-05 20:14+0000\n"
+"Last-Translator: schendje <mail@jefvanschendel.nl>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -140,7 +140,7 @@ msgstr ""
#: mediagoblin/edit/forms.py:44 mediagoblin/submit/forms.py:41
msgid "License"
-msgstr ""
+msgstr "Licentie"
#: mediagoblin/edit/forms.py:50
msgid "Bio"
@@ -488,6 +488,9 @@ msgid ""
"href=\"http://daringfireball.net/projects/markdown/basics\">Markdown</a> for"
" formatting."
msgstr ""
+"Voor opmaak kun je &lt;a "
+"href=\"http://daringfireball.net/projects/markdown/basics\"&gt;Markdown&lt;/a&gt;"
+" gebruiken."
#: mediagoblin/templates/mediagoblin/user_pages/media.html:116
msgid "Add this comment"
@@ -630,11 +633,11 @@ msgstr "Atom feed"
#: mediagoblin/templates/mediagoblin/utils/license.html:21
msgid "License:"
-msgstr ""
+msgstr "Licentie:"
#: mediagoblin/templates/mediagoblin/utils/license.html:25
msgid "All rights reserved"
-msgstr ""
+msgstr "Alle rechten voorbehouden"
#: mediagoblin/templates/mediagoblin/utils/pagination.html:39
msgid "↠Newer"
@@ -668,7 +671,7 @@ msgstr "of"
#: mediagoblin/tools/exif.py:68
msgid "Could not read the image file."
-msgstr ""
+msgstr "Kon het afbeeldingsbestand niet lezen."
#: mediagoblin/user_pages/forms.py:30
msgid "I am sure I want to delete this"
diff --git a/mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.mo b/mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.mo
index 9c1f739c..dd7735fd 100644
--- a/mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.mo
+++ b/mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.mo
Binary files differ
diff --git a/mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.po b/mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.po
index 91329920..d895f3bf 100644
--- a/mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.po
+++ b/mediagoblin/i18n/ru/LC_MESSAGES/mediagoblin.po
@@ -7,10 +7,10 @@
msgid ""
msgstr ""
"Project-Id-Version: GNU MediaGoblin\n"
-"Report-Msgid-Bugs-To: http://bugs.foocorp.net/projects/mediagoblin/issues\n"
-"POT-Creation-Date: 2012-01-29 13:31-0600\n"
-"PO-Revision-Date: 2012-01-29 19:29+0000\n"
-"Last-Translator: cwebber <cwebber@dustycloud.org>\n"
+"Report-Msgid-Bugs-To: http://issues.mediagoblin.org/\n"
+"POT-Creation-Date: 2012-01-29 13:47-0600\n"
+"PO-Revision-Date: 2012-02-05 21:04+0000\n"
+"Last-Translator: aleksejrs <deletesoftware@yandex.ru>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -76,7 +76,7 @@ msgstr "ПереÑлать Ñообщение Ñ Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸ÐµÐ¼ а
#: mediagoblin/auth/views.py:260
msgid ""
"An email has been sent with instructions on how to change your password."
-msgstr ""
+msgstr "Вам отправлено Ñлектронное пиÑьмо Ñ Ð¸Ð½ÑтрукциÑми по Ñмене паролÑ."
#: mediagoblin/auth/views.py:270
msgid ""
@@ -90,10 +90,11 @@ msgstr ""
#: mediagoblin/auth/views.py:282
msgid "Couldn't find someone with that username or email."
msgstr ""
+"Ðе найдено никого Ñ Ñ‚Ð°ÐºÐ¸Ð¼ именем Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð»Ð¸ адреÑом Ñлектронной почты."
#: mediagoblin/auth/views.py:330
msgid "You can now log in using your new password."
-msgstr ""
+msgstr "Теперь вы можете войти, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ð²Ð°Ñˆ новый пароль."
#: mediagoblin/edit/forms.py:25 mediagoblin/submit/forms.py:28
msgid "Title"
@@ -110,6 +111,9 @@ msgid ""
" <a href=\"http://daringfireball.net/projects/markdown/basics\">\n"
" Markdown</a> for formatting."
msgstr ""
+"Ð”Ð»Ñ Ñ€Ð°Ð·Ð¼ÐµÑ‚ÐºÐ¸ можете иÑпользовать Ñзык\n"
+" <a href=\"http://daringfireball.net/projects/markdown/basics\">\n"
+" Markdown</a>."
#: mediagoblin/edit/forms.py:33 mediagoblin/submit/forms.py:36
msgid "Tags"
@@ -137,7 +141,7 @@ msgstr ""
#: mediagoblin/edit/forms.py:44 mediagoblin/submit/forms.py:41
msgid "License"
-msgstr ""
+msgstr "ЛицензиÑ"
#: mediagoblin/edit/forms.py:50
msgid "Bio"
@@ -154,6 +158,8 @@ msgstr "Старый пароль"
#: mediagoblin/edit/forms.py:65
msgid "Enter your old password to prove you own this account."
msgstr ""
+"Введите Ñвой Ñтарый пароль в качеÑтве доказательÑтва, что Ñто ваша ÑƒÑ‡Ñ‘Ñ‚Ð½Ð°Ñ "
+"запиÑÑŒ."
#: mediagoblin/edit/forms.py:68
msgid "New password"
@@ -174,7 +180,7 @@ msgstr "Ð’Ñ‹ редактируете профиль пользователÑ. Ð
#: mediagoblin/edit/views.py:180
msgid "Profile changes saved"
-msgstr ""
+msgstr "Ð˜Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ Ñохранены"
#: mediagoblin/edit/views.py:206
msgid "Wrong password"
@@ -182,15 +188,15 @@ msgstr "Ðеправильный пароль"
#: mediagoblin/edit/views.py:222
msgid "Account settings saved"
-msgstr ""
+msgstr "ÐаÑтройки учётной запиÑи запиÑаны"
#: mediagoblin/media_types/__init__.py:77
msgid "Could not extract any file extension from \"{filename}\""
-msgstr ""
+msgstr "Ðе удалоÑÑŒ найти раÑширение в имени файла «{filename}»"
#: mediagoblin/media_types/__init__.py:88
msgid "Sorry, I don't support that file type :("
-msgstr ""
+msgstr "Увы, Ñ Ð½Ðµ поддерживаю Ñтот тип файлов :("
#: mediagoblin/submit/forms.py:26
msgid "File"
@@ -289,6 +295,9 @@ msgid ""
" or\n"
" <a class=\"button_action\" href=\"http://wiki.mediagoblin.org/HackingHowto\">Set up MediaGoblin on your own server</a>"
msgstr ""
+"&lt;a class=\"button_action_highlight\" href=\"%(register_url)s\"&gt;Создайте учётную запиÑÑŒ на Ñтом Ñайте&lt;/a&gt;\n"
+" или\n"
+" &lt;a class=\"button_action\" href=\"http://wiki.mediagoblin.org/HackingHowto\"&gt;уÑтановите MediaGoblin на ÑобÑтвенный Ñервер&lt;/a&gt;"
#: mediagoblin/templates/mediagoblin/root.html:40
msgid "Most recent media"
@@ -296,11 +305,11 @@ msgstr "Самые новые файлы"
#: mediagoblin/templates/mediagoblin/auth/change_fp.html:32
msgid "Set your new password"
-msgstr ""
+msgstr "Введите Ñвой новый пароль"
#: mediagoblin/templates/mediagoblin/auth/change_fp.html:35
msgid "Set password"
-msgstr ""
+msgstr "УÑтановить пароль"
#: mediagoblin/templates/mediagoblin/auth/forgot_password.html:27
msgid "Recover password"
@@ -392,7 +401,7 @@ msgstr "Сохранить изменениÑ"
#: mediagoblin/templates/mediagoblin/edit/edit_account.html:34
#, python-format
msgid "Changing %(username)s's account settings"
-msgstr ""
+msgstr "ÐаÑтройка учётной запиÑи %(username)s"
#: mediagoblin/templates/mediagoblin/edit/edit_profile.html:29
#, python-format
@@ -416,6 +425,9 @@ msgid ""
"\t your web browser does not support HTML5 \n"
"\t video."
msgstr ""
+"Сожалеем, Ñтот ролик не проиграетÑÑ, âŽ\n"
+"» потому что ваш браузер не поддерживает âŽ\n"
+"» видео в ÑоответÑтвии Ñо Ñтандартом HTML5."
#: mediagoblin/templates/mediagoblin/media_displays/video.html:36
msgid ""
@@ -474,7 +486,7 @@ msgstr "Комментариев пока нет."
#: mediagoblin/templates/mediagoblin/user_pages/media.html:103
msgid "Add one"
-msgstr "Добавить Ñвой"
+msgstr "Комментировать"
#: mediagoblin/templates/mediagoblin/user_pages/media.html:112
msgid ""
@@ -482,6 +494,8 @@ msgid ""
"href=\"http://daringfireball.net/projects/markdown/basics\">Markdown</a> for"
" formatting."
msgstr ""
+"Ð”Ð»Ñ Ñ€Ð°Ð·Ð¼ÐµÑ‚ÐºÐ¸ можете иÑпользовать Ñзык <a "
+"href=\"http://daringfireball.net/projects/markdown/basics\">Markdown</a>."
#: mediagoblin/templates/mediagoblin/user_pages/media.html:116
msgid "Add this comment"
@@ -495,6 +509,8 @@ msgstr "в"
#, python-format
msgid "<p>â– Browsing media by <a href=\"%(user_url)s\">%(username)s</a></p>"
msgstr ""
+"<p>■ПроÑмотр файлов Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ <a "
+"href=\"%(user_url)s\">%(username)s</a></p>"
#: mediagoblin/templates/mediagoblin/user_pages/media_confirm_delete.html:30
#, python-format
@@ -620,11 +636,11 @@ msgstr "лента в формате Atom"
#: mediagoblin/templates/mediagoblin/utils/license.html:21
msgid "License:"
-msgstr ""
+msgstr "ЛицензиÑ:"
#: mediagoblin/templates/mediagoblin/utils/license.html:25
msgid "All rights reserved"
-msgstr ""
+msgstr "Ð’Ñе права Ñохранены"
#: mediagoblin/templates/mediagoblin/utils/pagination.html:39
msgid "↠Newer"
@@ -658,7 +674,7 @@ msgstr "или"
#: mediagoblin/tools/exif.py:68
msgid "Could not read the image file."
-msgstr ""
+msgstr "Ðе удалоÑÑŒ прочитать файл Ñ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸ÐµÐ¼."
#: mediagoblin/user_pages/forms.py:30
msgid "I am sure I want to delete this"
diff --git a/mediagoblin/init/__init__.py b/mediagoblin/init/__init__.py
index 23c1c26d..7ac59db1 100644
--- a/mediagoblin/init/__init__.py
+++ b/mediagoblin/init/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/init/celery/__init__.py b/mediagoblin/init/celery/__init__.py
index 1eb21d7a..fb958909 100644
--- a/mediagoblin/init/celery/__init__.py
+++ b/mediagoblin/init/celery/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/init/celery/from_celery.py b/mediagoblin/init/celery/from_celery.py
index 05669b67..5a44efe3 100644
--- a/mediagoblin/init/celery/from_celery.py
+++ b/mediagoblin/init/celery/from_celery.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/init/celery/from_tests.py b/mediagoblin/init/celery/from_tests.py
index 059d829f..3149e1ba 100644
--- a/mediagoblin/init/celery/from_tests.py
+++ b/mediagoblin/init/celery/from_tests.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/init/config.py b/mediagoblin/init/config.py
index ae232e91..ac4ab9bf 100644
--- a/mediagoblin/init/config.py
+++ b/mediagoblin/init/config.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/listings/__init__.py b/mediagoblin/listings/__init__.py
index 0c53acf5..3f873e0c 100644
--- a/mediagoblin/listings/__init__.py
+++ b/mediagoblin/listings/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/listings/routing.py b/mediagoblin/listings/routing.py
index 234f2595..d228a727 100644
--- a/mediagoblin/listings/routing.py
+++ b/mediagoblin/listings/routing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/listings/views.py b/mediagoblin/listings/views.py
index ca8e8229..ba23fc46 100644
--- a/mediagoblin/listings/views.py
+++ b/mediagoblin/listings/views.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -91,7 +91,7 @@ def tag_atom_feed(request):
'type': 'text/html'}])
for entry in cursor:
feed.add(entry.get('title'),
- entry.get('description_html'),
+ entry.description_html,
id=entry.url_for_self(request.urlgen,qualified=True),
content_type='html',
author={'name': entry.get_uploader.username,
diff --git a/mediagoblin/meddleware/__init__.py b/mediagoblin/meddleware/__init__.py
index 7ba70d87..a9c712d7 100644
--- a/mediagoblin/meddleware/__init__.py
+++ b/mediagoblin/meddleware/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/meddleware/csrf.py b/mediagoblin/meddleware/csrf.py
index a4e4e5c6..ea8372bf 100644
--- a/mediagoblin/meddleware/csrf.py
+++ b/mediagoblin/meddleware/csrf.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/meddleware/noop.py b/mediagoblin/meddleware/noop.py
index f5376494..98477706 100644
--- a/mediagoblin/meddleware/noop.py
+++ b/mediagoblin/meddleware/noop.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/media_types/__init__.py b/mediagoblin/media_types/__init__.py
index e7eb1dde..5128826b 100644
--- a/mediagoblin/media_types/__init__.py
+++ b/mediagoblin/media_types/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/media_types/ascii/__init__.py b/mediagoblin/media_types/ascii/__init__.py
index 21b31d0e..1c8ca562 100644
--- a/mediagoblin/media_types/ascii/__init__.py
+++ b/mediagoblin/media_types/ascii/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -24,4 +24,4 @@ MEDIA_MANAGER = {
"display_template": "mediagoblin/media_displays/ascii.html",
"default_thumb": "images/media_thumbs/ascii.jpg",
"accepted_extensions": [
- "txt"]}
+ "txt", "asc", "nfo"]}
diff --git a/mediagoblin/media_types/ascii/asciitoimage.py b/mediagoblin/media_types/ascii/asciitoimage.py
index 39c75a19..e1c4fb44 100644
--- a/mediagoblin/media_types/ascii/asciitoimage.py
+++ b/mediagoblin/media_types/ascii/asciitoimage.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -59,13 +59,14 @@ class AsciiToImage(object):
if kw.get('font_size'):
self._font_size = kw.get('font_size')
- _log.info('Setting font to {0}, size {1}'.format(
- self._font,
- self._font_size))
-
self._if = ImageFont.truetype(
self._font,
- self._font_size)
+ self._font_size,
+ encoding='unic')
+
+ _log.info('Font set to {0}, size {1}'.format(
+ self._font,
+ self._font_size))
# ,-,-^-'-^'^-^'^-'^-.
# ( I am a wall socket )Oo, ___
@@ -91,6 +92,10 @@ class AsciiToImage(object):
- Character set detection and decoding,
http://pypi.python.org/pypi/chardet
'''
+ _log.debug('Drawing image')
+ # Convert the input from str to unicode
+ text = text.decode('utf-8')
+
# TODO: Account for alternative line endings
lines = text.split('\n')
@@ -123,8 +128,8 @@ class AsciiToImage(object):
px_pos = self._px_pos(char_pos)
- _log.debug('Writing character "{0}" at {1} (px pos {2}'.format(
- char,
+ _log.debug('Writing character "{0}" at {1} (px pos {2})'.format(
+ char.encode('ascii', 'replace'),
char_pos,
px_pos))
@@ -152,21 +157,3 @@ class AsciiToImage(object):
px_pos[index] = char_pos[index] * self._if_dims[index]
return px_pos
-
-
-if __name__ == "__main__":
- import urllib
- txt = urllib.urlopen('file:///home/joar/Dropbox/ascii/install-all-the-dependencies.txt')
-
- _log.setLevel(logging.DEBUG)
- logging.basicConfig()
-
- converter = AsciiToImage()
-
- converter.convert(txt.read(), '/tmp/test.png')
-
- '''
- im, x, y, duration = renderImage(h, 10)
- print "Rendered image in %.5f seconds" % duration
- im.save('tldr.png', "PNG")
- '''
diff --git a/mediagoblin/media_types/ascii/processing.py b/mediagoblin/media_types/ascii/processing.py
index a74690c1..7ece866e 100644
--- a/mediagoblin/media_types/ascii/processing.py
+++ b/mediagoblin/media_types/ascii/processing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -13,14 +13,16 @@
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-import asciitoimage
import chardet
import os
import Image
+import logging
from mediagoblin import mg_globals as mgg
from mediagoblin.processing import create_pub_filepath, THUMB_SIZE
+from mediagoblin.media_types.ascii import asciitoimage
+_log = logging.getLogger(__name__)
def process_ascii(entry):
'''
@@ -42,6 +44,17 @@ def process_ascii(entry):
with queued_file:
queued_file_charset = chardet.detect(queued_file.read())
+ # Only select a non-utf-8 charset if chardet is *really* sure
+ # Tested with "Feli\x0109an superjaron", which was detecte
+ if queued_file_charset['confidence'] < 0.9:
+ interpreted_charset = 'utf-8'
+ else:
+ interpreted_charset = queued_file_charset['encoding']
+
+ _log.info('Charset detected: {0}\nWill interpret as: {1}'.format(
+ queued_file_charset,
+ interpreted_charset))
+
queued_file.seek(0) # Rewind the queued file
thumb_filepath = create_pub_filepath(
@@ -59,6 +72,7 @@ def process_ascii(entry):
thumb.thumbnail(THUMB_SIZE, Image.ANTIALIAS)
thumb.save(thumb_file)
+ _log.debug('Copying local file to public storage')
mgg.public_store.copy_local_to_storage(
tmp_thumb_filename, thumb_filepath)
@@ -73,13 +87,16 @@ def process_ascii(entry):
queued_file.seek(0) # Rewind *again*
- unicode_filepath = create_pub_filepath(entry, 'unicode.txt')
+ unicode_filepath = create_pub_filepath(entry, 'ascii-portable.txt')
with mgg.public_store.get_file(unicode_filepath, 'wb') \
as unicode_file:
+ # Decode the original file from its detected charset (or UTF8)
+ # Encode the unicode instance to ASCII and replace any non-ASCII
+ # with an HTML entity (&#
unicode_file.write(
- unicode(queued_file.read().decode(
- queued_file_charset['encoding'])).encode(
+ unicode(queued_file.read().decode(
+ interpreted_charset)).encode(
'ascii',
'xmlcharrefreplace'))
diff --git a/mediagoblin/media_types/image/__init__.py b/mediagoblin/media_types/image/__init__.py
index 3b63d8eb..98e0c32a 100644
--- a/mediagoblin/media_types/image/__init__.py
+++ b/mediagoblin/media_types/image/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/media_types/image/processing.py b/mediagoblin/media_types/image/processing.py
index 78f64be0..769de89b 100644
--- a/mediagoblin/media_types/image/processing.py
+++ b/mediagoblin/media_types/image/processing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/media_types/video/__init__.py b/mediagoblin/media_types/video/__init__.py
index a970ab01..ed542f16 100644
--- a/mediagoblin/media_types/video/__init__.py
+++ b/mediagoblin/media_types/video/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/media_types/video/processing.py b/mediagoblin/media_types/video/processing.py
index 49a50647..9dc23c55 100644
--- a/mediagoblin/media_types/video/processing.py
+++ b/mediagoblin/media_types/video/processing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/media_types/video/transcoders.py b/mediagoblin/media_types/video/transcoders.py
index 7071b887..6137c3bf 100644
--- a/mediagoblin/media_types/video/transcoders.py
+++ b/mediagoblin/media_types/video/transcoders.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/messages.py b/mediagoblin/messages.py
index 054d46c0..80d8ece7 100644
--- a/mediagoblin/messages.py
+++ b/mediagoblin/messages.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/mg_globals.py b/mediagoblin/mg_globals.py
index 2d304111..3bd2070d 100644
--- a/mediagoblin/mg_globals.py
+++ b/mediagoblin/mg_globals.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/processing.py b/mediagoblin/processing.py
index cbac8030..9e57380d 100644
--- a/mediagoblin/processing.py
+++ b/mediagoblin/processing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -14,6 +14,8 @@
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+import logging
+
from celery.task import Task
from mediagoblin.db.util import ObjectId
@@ -23,6 +25,7 @@ from mediagoblin.tools.translate import lazy_pass_to_ugettext as _
from mediagoblin.media_types import get_media_manager
+_log = logging.getLogger(__name__)
THUMB_SIZE = 180, 180
MEDIUM_SIZE = 640, 640
@@ -57,12 +60,19 @@ class ProcessMedia(Task):
try:
#__import__(entry.media_type)
manager = get_media_manager(entry.media_type)
+ _log.debug('Processing {0}'.format(entry))
manager['processor'](entry)
except BaseProcessingFail, exc:
mark_entry_failed(entry._id, exc)
return
except ImportError, exc:
- mark_entry_failed(entry[u'_id'], exc)
+ _log.error(
+ 'Entry {0} failed to process due to an import error: {1}'\
+ .format(
+ entry.title,
+ exc))
+
+ mark_entry_failed(entry._id, exc)
entry.state = u'processed'
entry.save()
diff --git a/mediagoblin/routing.py b/mediagoblin/routing.py
index bd727db5..2ca18cc7 100644
--- a/mediagoblin/routing.py
+++ b/mediagoblin/routing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/static/css/base.css b/mediagoblin/static/css/base.css
index efd7b561..73b07384 100644
--- a/mediagoblin/static/css/base.css
+++ b/mediagoblin/static/css/base.css
@@ -79,6 +79,22 @@ a.highlight {
color: #fff;
}
+em {
+ font-style: italic;
+}
+
+strong {
+ font-weight: bold;
+}
+
+ul {
+ list-style: disc inside;
+}
+
+ol {
+ list-style: decimal inside;
+}
+
label {
font-weight: normal;
}
diff --git a/mediagoblin/static/js/comment_show.js b/mediagoblin/static/js/comment_show.js
index 71466a8d..c5ccee66 100644
--- a/mediagoblin/static/js/comment_show.js
+++ b/mediagoblin/static/js/comment_show.js
@@ -1,6 +1,6 @@
/**
* GNU MediaGoblin -- federated, autonomous media hosting
- * Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+ * Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/static/js/geolocation-map.js b/mediagoblin/static/js/geolocation-map.js
index 35083d4f..a2c62045 100644
--- a/mediagoblin/static/js/geolocation-map.js
+++ b/mediagoblin/static/js/geolocation-map.js
@@ -1,6 +1,6 @@
/**
* GNU MediaGoblin -- federated, autonomous media hosting
- * Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+ * Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/static/js/show_password.js b/mediagoblin/static/js/show_password.js
index 513fe327..e42d44ea 100644
--- a/mediagoblin/static/js/show_password.js
+++ b/mediagoblin/static/js/show_password.js
@@ -1,6 +1,6 @@
/**
* GNU MediaGoblin -- federated, autonomous media hosting
- * Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+ * Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/staticdirect.py b/mediagoblin/staticdirect.py
index 2bddb160..7477de68 100644
--- a/mediagoblin/staticdirect.py
+++ b/mediagoblin/staticdirect.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/storage/__init__.py b/mediagoblin/storage/__init__.py
index 0840614b..e7ea1aa5 100644
--- a/mediagoblin/storage/__init__.py
+++ b/mediagoblin/storage/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/storage/cloudfiles.py b/mediagoblin/storage/cloudfiles.py
index 51b73579..46843274 100644
--- a/mediagoblin/storage/cloudfiles.py
+++ b/mediagoblin/storage/cloudfiles.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/storage/filestorage.py b/mediagoblin/storage/filestorage.py
index a904865f..00d6335e 100644
--- a/mediagoblin/storage/filestorage.py
+++ b/mediagoblin/storage/filestorage.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/storage/mountstorage.py b/mediagoblin/storage/mountstorage.py
index 7239931f..3fdf4ef0 100644
--- a/mediagoblin/storage/mountstorage.py
+++ b/mediagoblin/storage/mountstorage.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/submit/__init__.py b/mediagoblin/submit/__init__.py
index ba347c69..621845ba 100644
--- a/mediagoblin/submit/__init__.py
+++ b/mediagoblin/submit/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/submit/forms.py b/mediagoblin/submit/forms.py
index 1ff59c18..7d9e8fcf 100644
--- a/mediagoblin/submit/forms.py
+++ b/mediagoblin/submit/forms.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/submit/routing.py b/mediagoblin/submit/routing.py
index 03e01f45..8ce23cd9 100644
--- a/mediagoblin/submit/routing.py
+++ b/mediagoblin/submit/routing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/submit/security.py b/mediagoblin/submit/security.py
index 6708baf7..5dbc0db4 100644
--- a/mediagoblin/submit/security.py
+++ b/mediagoblin/submit/security.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/submit/views.py b/mediagoblin/submit/views.py
index 0efee803..845400ca 100644
--- a/mediagoblin/submit/views.py
+++ b/mediagoblin/submit/views.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -28,7 +28,7 @@ _log = logging.getLogger(__name__)
from werkzeug.utils import secure_filename
from mediagoblin.db.util import ObjectId
-from mediagoblin.tools.text import cleaned_markdown_conversion, convert_to_tag_list_of_dicts
+from mediagoblin.tools.text import convert_to_tag_list_of_dicts
from mediagoblin.tools.translate import pass_to_ugettext as _
from mediagoblin.tools.response import render_to_response, redirect
from mediagoblin.decorators import require_active_login
@@ -66,8 +66,6 @@ def submit_start(request):
or unicode(splitext(filename)[0]))
entry.description = unicode(request.POST.get('description'))
- entry.description_html = cleaned_markdown_conversion(
- entry.description)
entry.license = unicode(request.POST.get('license', "")) or None
diff --git a/mediagoblin/templates/mediagoblin/404.html b/mediagoblin/templates/mediagoblin/404.html
index 392c14f5..5e58d191 100644
--- a/mediagoblin/templates/mediagoblin/404.html
+++ b/mediagoblin/templates/mediagoblin/404.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/auth/login.html b/mediagoblin/templates/mediagoblin/auth/login.html
index 993790eb..39f07d33 100644
--- a/mediagoblin/templates/mediagoblin/auth/login.html
+++ b/mediagoblin/templates/mediagoblin/auth/login.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/auth/register.html b/mediagoblin/templates/mediagoblin/auth/register.html
index afcfcda9..39c9efff 100644
--- a/mediagoblin/templates/mediagoblin/auth/register.html
+++ b/mediagoblin/templates/mediagoblin/auth/register.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/auth/verification_email.txt b/mediagoblin/templates/mediagoblin/auth/verification_email.txt
index c54ca353..969ef96a 100644
--- a/mediagoblin/templates/mediagoblin/auth/verification_email.txt
+++ b/mediagoblin/templates/mediagoblin/auth/verification_email.txt
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/base.html b/mediagoblin/templates/mediagoblin/base.html
index 5335ebe3..f3ebc3fa 100644
--- a/mediagoblin/templates/mediagoblin/base.html
+++ b/mediagoblin/templates/mediagoblin/base.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/edit/attachments.html b/mediagoblin/templates/mediagoblin/edit/attachments.html
index bd972b2a..580127fb 100644
--- a/mediagoblin/templates/mediagoblin/edit/attachments.html
+++ b/mediagoblin/templates/mediagoblin/edit/attachments.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/edit/edit.html b/mediagoblin/templates/mediagoblin/edit/edit.html
index fc6b1605..0c4d5bb1 100644
--- a/mediagoblin/templates/mediagoblin/edit/edit.html
+++ b/mediagoblin/templates/mediagoblin/edit/edit.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/edit/edit_account.html b/mediagoblin/templates/mediagoblin/edit/edit_account.html
index e8a968e6..1d80debc 100644
--- a/mediagoblin/templates/mediagoblin/edit/edit_account.html
+++ b/mediagoblin/templates/mediagoblin/edit/edit_account.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/edit/edit_profile.html b/mediagoblin/templates/mediagoblin/edit/edit_profile.html
index 97c03e37..90862a4f 100644
--- a/mediagoblin/templates/mediagoblin/edit/edit_profile.html
+++ b/mediagoblin/templates/mediagoblin/edit/edit_profile.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/listings/tag.html b/mediagoblin/templates/mediagoblin/listings/tag.html
index a7cbe241..4d502201 100644
--- a/mediagoblin/templates/mediagoblin/listings/tag.html
+++ b/mediagoblin/templates/mediagoblin/listings/tag.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/media_displays/ascii.html b/mediagoblin/templates/mediagoblin/media_displays/ascii.html
index 6b40bf08..6330595b 100644
--- a/mediagoblin/templates/mediagoblin/media_displays/ascii.html
+++ b/mediagoblin/templates/mediagoblin/media_displays/ascii.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/media_displays/image.html b/mediagoblin/templates/mediagoblin/media_displays/image.html
index 94420e89..7dfecb11 100644
--- a/mediagoblin/templates/mediagoblin/media_displays/image.html
+++ b/mediagoblin/templates/mediagoblin/media_displays/image.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/media_displays/video.html b/mediagoblin/templates/mediagoblin/media_displays/video.html
index 6b5e7a0e..ec4338fa 100644
--- a/mediagoblin/templates/mediagoblin/media_displays/video.html
+++ b/mediagoblin/templates/mediagoblin/media_displays/video.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/root.html b/mediagoblin/templates/mediagoblin/root.html
index 3f834572..bb12fe4f 100644
--- a/mediagoblin/templates/mediagoblin/root.html
+++ b/mediagoblin/templates/mediagoblin/root.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/submit/start.html b/mediagoblin/templates/mediagoblin/submit/start.html
index afae2f1f..31163384 100644
--- a/mediagoblin/templates/mediagoblin/submit/start.html
+++ b/mediagoblin/templates/mediagoblin/submit/start.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/test_submit.html b/mediagoblin/templates/mediagoblin/test_submit.html
index 38be8efc..0771a0c7 100644
--- a/mediagoblin/templates/mediagoblin/test_submit.html
+++ b/mediagoblin/templates/mediagoblin/test_submit.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/user_pages/gallery.html b/mediagoblin/templates/mediagoblin/user_pages/gallery.html
index b0bfacf8..e234914f 100644
--- a/mediagoblin/templates/mediagoblin/user_pages/gallery.html
+++ b/mediagoblin/templates/mediagoblin/user_pages/gallery.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/user_pages/media.html b/mediagoblin/templates/mediagoblin/user_pages/media.html
index dec443cd..d2503a4e 100644
--- a/mediagoblin/templates/mediagoblin/user_pages/media.html
+++ b/mediagoblin/templates/mediagoblin/user_pages/media.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/user_pages/media_confirm_delete.html b/mediagoblin/templates/mediagoblin/user_pages/media_confirm_delete.html
index dcb148e0..e64845e7 100644
--- a/mediagoblin/templates/mediagoblin/user_pages/media_confirm_delete.html
+++ b/mediagoblin/templates/mediagoblin/user_pages/media_confirm_delete.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/user_pages/processing_panel.html b/mediagoblin/templates/mediagoblin/user_pages/processing_panel.html
index a14b0123..65549860 100644
--- a/mediagoblin/templates/mediagoblin/user_pages/processing_panel.html
+++ b/mediagoblin/templates/mediagoblin/user_pages/processing_panel.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/user_pages/user.html b/mediagoblin/templates/mediagoblin/user_pages/user.html
index d3b4021d..c74535d7 100644
--- a/mediagoblin/templates/mediagoblin/user_pages/user.html
+++ b/mediagoblin/templates/mediagoblin/user_pages/user.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/exif.html b/mediagoblin/templates/mediagoblin/utils/exif.html
index 9962dd65..0dd187f2 100644
--- a/mediagoblin/templates/mediagoblin/utils/exif.html
+++ b/mediagoblin/templates/mediagoblin/utils/exif.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/feed_link.html b/mediagoblin/templates/mediagoblin/utils/feed_link.html
index 3afcc844..6a41cef5 100644
--- a/mediagoblin/templates/mediagoblin/utils/feed_link.html
+++ b/mediagoblin/templates/mediagoblin/utils/feed_link.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/geolocation_map.html b/mediagoblin/templates/mediagoblin/utils/geolocation_map.html
index ce1edc39..c1909ae5 100644
--- a/mediagoblin/templates/mediagoblin/utils/geolocation_map.html
+++ b/mediagoblin/templates/mediagoblin/utils/geolocation_map.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/license.html b/mediagoblin/templates/mediagoblin/utils/license.html
index 5a268e39..2438ed4e 100644
--- a/mediagoblin/templates/mediagoblin/utils/license.html
+++ b/mediagoblin/templates/mediagoblin/utils/license.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/messages.html b/mediagoblin/templates/mediagoblin/utils/messages.html
index 9d4dc58a..cb45f59a 100644
--- a/mediagoblin/templates/mediagoblin/utils/messages.html
+++ b/mediagoblin/templates/mediagoblin/utils/messages.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/object_gallery.html b/mediagoblin/templates/mediagoblin/utils/object_gallery.html
index 5f628dc7..81506a84 100644
--- a/mediagoblin/templates/mediagoblin/utils/object_gallery.html
+++ b/mediagoblin/templates/mediagoblin/utils/object_gallery.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/pagination.html b/mediagoblin/templates/mediagoblin/utils/pagination.html
index caa79fcc..2ac990ae 100644
--- a/mediagoblin/templates/mediagoblin/utils/pagination.html
+++ b/mediagoblin/templates/mediagoblin/utils/pagination.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/prev_next.html b/mediagoblin/templates/mediagoblin/utils/prev_next.html
index 66766555..d0cf3f8c 100644
--- a/mediagoblin/templates/mediagoblin/utils/prev_next.html
+++ b/mediagoblin/templates/mediagoblin/utils/prev_next.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/profile.html b/mediagoblin/templates/mediagoblin/utils/profile.html
index 9a134e5f..945bd0bb 100644
--- a/mediagoblin/templates/mediagoblin/utils/profile.html
+++ b/mediagoblin/templates/mediagoblin/utils/profile.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/tags.html b/mediagoblin/templates/mediagoblin/utils/tags.html
index 1f587411..6408102d 100644
--- a/mediagoblin/templates/mediagoblin/utils/tags.html
+++ b/mediagoblin/templates/mediagoblin/utils/tags.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/utils/wtforms.html b/mediagoblin/templates/mediagoblin/utils/wtforms.html
index 44b27bb8..a85a3d96 100644
--- a/mediagoblin/templates/mediagoblin/utils/wtforms.html
+++ b/mediagoblin/templates/mediagoblin/utils/wtforms.html
@@ -1,6 +1,6 @@
{#
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/webfinger/host-meta.xml b/mediagoblin/templates/mediagoblin/webfinger/host-meta.xml
index 95a1a176..0f5fa7a3 100644
--- a/mediagoblin/templates/mediagoblin/webfinger/host-meta.xml
+++ b/mediagoblin/templates/mediagoblin/webfinger/host-meta.xml
@@ -1,5 +1,5 @@
{# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/templates/mediagoblin/webfinger/xrd.xml b/mediagoblin/templates/mediagoblin/webfinger/xrd.xml
index 1fe34577..bb2c5905 100644
--- a/mediagoblin/templates/mediagoblin/webfinger/xrd.xml
+++ b/mediagoblin/templates/mediagoblin/webfinger/xrd.xml
@@ -1,5 +1,5 @@
{# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/__init__.py b/mediagoblin/tests/__init__.py
index eac3dff4..15a5add0 100644
--- a/mediagoblin/tests/__init__.py
+++ b/mediagoblin/tests/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/fake_celery_module.py b/mediagoblin/tests/fake_celery_module.py
index ba347c69..621845ba 100644
--- a/mediagoblin/tests/fake_celery_module.py
+++ b/mediagoblin/tests/fake_celery_module.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_auth.py b/mediagoblin/tests/test_auth.py
index 411b4539..3a33c66c 100644
--- a/mediagoblin/tests/test_auth.py
+++ b/mediagoblin/tests/test_auth.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_cache.py b/mediagoblin/tests/test_cache.py
index cbffeb84..48fa1386 100644
--- a/mediagoblin/tests/test_cache.py
+++ b/mediagoblin/tests/test_cache.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 Free Software Foundation, Inc
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_celery_setup.py b/mediagoblin/tests/test_celery_setup.py
index 19a9b899..c9c77821 100644
--- a/mediagoblin/tests/test_celery_setup.py
+++ b/mediagoblin/tests/test_celery_setup.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_config.py b/mediagoblin/tests/test_config.py
index 0764e12d..c596f6a6 100644
--- a/mediagoblin/tests/test_config.py
+++ b/mediagoblin/tests/test_config.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_csrf_middleware.py b/mediagoblin/tests/test_csrf_middleware.py
index c8fca23a..f49dc94e 100644
--- a/mediagoblin/tests/test_csrf_middleware.py
+++ b/mediagoblin/tests/test_csrf_middleware.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_edit.py b/mediagoblin/tests/test_edit.py
index 55f34b42..398a5d25 100644
--- a/mediagoblin/tests/test_edit.py
+++ b/mediagoblin/tests/test_edit.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_exif.py b/mediagoblin/tests/test_exif.py
index 9f2219c0..ed95045c 100644
--- a/mediagoblin/tests/test_exif.py
+++ b/mediagoblin/tests/test_exif.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -21,6 +21,11 @@ import Image
from mediagoblin.tools.exif import exif_fix_image_orientation, \
extract_exif, clean_exif, get_gps_data, get_useful
+
+def assert_in(a, b):
+ assert a in b, "%r not in %r" % (a, b)
+
+
GOOD_JPG = pkg_resources.resource_filename(
'mediagoblin.tests',
os.path.join(
@@ -42,6 +47,7 @@ GPS_JPG = pkg_resources.resource_filename(
'test_exif',
'has-gps.jpg'))
+
def test_exif_extraction():
'''
Test EXIF extraction from a good image
@@ -130,6 +136,7 @@ def test_exif_extraction():
32, 32, 32],
'field_length': 44}}
+
def test_exif_image_orientation():
'''
Test image reorientation based on EXIF data
@@ -144,7 +151,10 @@ def test_exif_image_orientation():
assert image.size == (428, 640)
# If this pixel looks right, the rest of the image probably will too.
- assert image.getdata()[10000] == (41, 28, 11)
+ assert_in(image.getdata()[10000],
+ ((41, 28, 11), (43, 27, 11))
+ )
+
def test_exif_no_exif():
'''
@@ -160,6 +170,7 @@ def test_exif_no_exif():
assert gps == {}
assert useful == {}
+
def test_exif_bad_image():
'''
Test EXIF extraction from a faithful, but bad image
@@ -174,6 +185,7 @@ def test_exif_bad_image():
assert gps == {}
assert useful == {}
+
def test_exif_gps_data():
'''
Test extractiion of GPS data
@@ -186,4 +198,3 @@ def test_exif_gps_data():
'direction': 25.674046740467404,
'altitude': 37.64365671641791,
'longitude': 18.016166666666667}
-
diff --git a/mediagoblin/tests/test_globals.py b/mediagoblin/tests/test_globals.py
index 84f1c74a..98f6a436 100644
--- a/mediagoblin/tests/test_globals.py
+++ b/mediagoblin/tests/test_globals.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_messages.py b/mediagoblin/tests/test_messages.py
index 2635f4d7..d3b84828 100644
--- a/mediagoblin/tests/test_messages.py
+++ b/mediagoblin/tests/test_messages.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_migrations.py b/mediagoblin/tests/test_migrations.py
index 8e573f5a..f6e6c1a8 100644
--- a/mediagoblin/tests/test_migrations.py
+++ b/mediagoblin/tests/test_migrations.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_misc.py b/mediagoblin/tests/test_misc.py
index 09623355..94ae5a51 100644
--- a/mediagoblin/tests/test_misc.py
+++ b/mediagoblin/tests/test_misc.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_storage.py b/mediagoblin/tests/test_storage.py
index eab4d032..6fc2e57c 100644
--- a/mediagoblin/tests/test_storage.py
+++ b/mediagoblin/tests/test_storage.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_submission.py b/mediagoblin/tests/test_submission.py
index b3c11249..217926a4 100644
--- a/mediagoblin/tests/test_submission.py
+++ b/mediagoblin/tests/test_submission.py
@@ -1,6 +1,5 @@
-
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_tags.py b/mediagoblin/tests/test_tags.py
index 583c1a55..79f925aa 100644
--- a/mediagoblin/tests/test_tags.py
+++ b/mediagoblin/tests/test_tags.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_tests.py b/mediagoblin/tests/test_tests.py
index 25bb52b3..20832ac7 100644
--- a/mediagoblin/tests/test_tests.py
+++ b/mediagoblin/tests/test_tests.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_util.py b/mediagoblin/tests/test_util.py
index 48fa8669..452090e1 100644
--- a/mediagoblin/tests/test_util.py
+++ b/mediagoblin/tests/test_util.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/test_workbench.py b/mediagoblin/tests/test_workbench.py
index 977d64b9..b5243a9b 100644
--- a/mediagoblin/tests/test_workbench.py
+++ b/mediagoblin/tests/test_workbench.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tests/tools.py b/mediagoblin/tests/tools.py
index 49a3d33e..7cf355b0 100644
--- a/mediagoblin/tests/tools.py
+++ b/mediagoblin/tests/tools.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/common.py b/mediagoblin/tools/common.py
index 12d8309e..0b29087c 100644
--- a/mediagoblin/tools/common.py
+++ b/mediagoblin/tools/common.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 Free Software Foundation, Inc
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/exif.py b/mediagoblin/tools/exif.py
index 3c1aebe5..de6dd128 100644
--- a/mediagoblin/tools/exif.py
+++ b/mediagoblin/tools/exif.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/files.py b/mediagoblin/tools/files.py
index 10f1d994..b2f316b2 100644
--- a/mediagoblin/tools/files.py
+++ b/mediagoblin/tools/files.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/licenses.py b/mediagoblin/tools/licenses.py
index 0ff6453b..48cb442b 100644
--- a/mediagoblin/tools/licenses.py
+++ b/mediagoblin/tools/licenses.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/mail.py b/mediagoblin/tools/mail.py
index 9e00be7d..655d5b99 100644
--- a/mediagoblin/tools/mail.py
+++ b/mediagoblin/tools/mail.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/pagination.py b/mediagoblin/tools/pagination.py
index 5ebc3c5a..ff7d4cad 100644
--- a/mediagoblin/tools/pagination.py
+++ b/mediagoblin/tools/pagination.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/request.py b/mediagoblin/tools/request.py
index 7e193125..a45f716a 100644
--- a/mediagoblin/tools/request.py
+++ b/mediagoblin/tools/request.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/response.py b/mediagoblin/tools/response.py
index c905097c..a54c32fb 100644
--- a/mediagoblin/tools/response.py
+++ b/mediagoblin/tools/response.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/template.py b/mediagoblin/tools/template.py
index 54a40de6..72c87a99 100644
--- a/mediagoblin/tools/template.py
+++ b/mediagoblin/tools/template.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/testing.py b/mediagoblin/tools/testing.py
index 39435ca5..7f2bcbfb 100644
--- a/mediagoblin/tools/testing.py
+++ b/mediagoblin/tools/testing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/text.py b/mediagoblin/tools/text.py
index d576224d..82de8a48 100644
--- a/mediagoblin/tools/text.py
+++ b/mediagoblin/tools/text.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/translate.py b/mediagoblin/tools/translate.py
index b99c4aa4..33ee889a 100644
--- a/mediagoblin/tools/translate.py
+++ b/mediagoblin/tools/translate.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/tools/url.py b/mediagoblin/tools/url.py
index 78b5dd63..7477173a 100644
--- a/mediagoblin/tools/url.py
+++ b/mediagoblin/tools/url.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 Free Software Foundation, Inc
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/user_pages/__init__.py b/mediagoblin/user_pages/__init__.py
index ba347c69..621845ba 100644
--- a/mediagoblin/user_pages/__init__.py
+++ b/mediagoblin/user_pages/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/user_pages/forms.py b/mediagoblin/user_pages/forms.py
index e04fd559..acfbadab 100644
--- a/mediagoblin/user_pages/forms.py
+++ b/mediagoblin/user_pages/forms.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/user_pages/routing.py b/mediagoblin/user_pages/routing.py
index 3586d9cd..f9780edc 100644
--- a/mediagoblin/user_pages/routing.py
+++ b/mediagoblin/user_pages/routing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/user_pages/views.py b/mediagoblin/user_pages/views.py
index 29360e23..05d07b1b 100644
--- a/mediagoblin/user_pages/views.py
+++ b/mediagoblin/user_pages/views.py
@@ -1,5 +1,5 @@
-# MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# GNU MediaGoblin -- federated, autonomous media hosting
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
@@ -18,7 +18,6 @@ from webob import exc
from mediagoblin import messages, mg_globals
from mediagoblin.db.util import DESCENDING, ObjectId
-from mediagoblin.tools.text import cleaned_markdown_conversion
from mediagoblin.tools.response import render_to_response, render_404, redirect
from mediagoblin.tools.translate import pass_to_ugettext as _
from mediagoblin.tools.pagination import Pagination
@@ -146,7 +145,6 @@ def media_post_comment(request, media):
comment['media_entry'] = media._id
comment['author'] = request.user._id
comment['content'] = unicode(request.POST['comment_content'])
- comment['content_html'] = cleaned_markdown_conversion(comment['content'])
if not comment['content'].strip():
messages.add_message(
@@ -250,7 +248,7 @@ def atom_feed(request):
for entry in cursor:
feed.add(entry.get('title'),
- entry.get('description_html'),
+ entry.description_html,
id=entry.url_for_self(request.urlgen,qualified=True),
content_type='html',
author={
diff --git a/mediagoblin/views.py b/mediagoblin/views.py
index 1e1db6c3..9d34750b 100644
--- a/mediagoblin/views.py
+++ b/mediagoblin/views.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/webfinger/__init__.py b/mediagoblin/webfinger/__init__.py
index ec7ec884..126e6ea2 100644
--- a/mediagoblin/webfinger/__init__.py
+++ b/mediagoblin/webfinger/__init__.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/webfinger/routing.py b/mediagoblin/webfinger/routing.py
index effb2bf2..7e84a00a 100644
--- a/mediagoblin/webfinger/routing.py
+++ b/mediagoblin/webfinger/routing.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/webfinger/views.py b/mediagoblin/webfinger/views.py
index 22086396..97fc3ef7 100644
--- a/mediagoblin/webfinger/views.py
+++ b/mediagoblin/webfinger/views.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
diff --git a/mediagoblin/workbench.py b/mediagoblin/workbench.py
index 9578494c..2331b551 100644
--- a/mediagoblin/workbench.py
+++ b/mediagoblin/workbench.py
@@ -1,5 +1,5 @@
# GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 MediaGoblin contributors. See AUTHORS.
+# Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by