mediagoblin.git
11 years agouse dict.iteritems() instead of dict.items()
András Veres-Szentkirályi [Thu, 21 Feb 2013 10:31:25 +0000 (11:31 +0100)]
use dict.iteritems() instead of dict.items()

11 years agouse list expression instead of 3-deep for
András Veres-Szentkirályi [Thu, 21 Feb 2013 10:31:08 +0000 (11:31 +0100)]
use list expression instead of 3-deep for

11 years agosimplified clean_exif
András Veres-Szentkirályi [Thu, 21 Feb 2013 10:30:23 +0000 (11:30 +0100)]
simplified clean_exif

11 years agoclose file properly and remove unneeded variable
András Veres-Szentkirályi [Thu, 21 Feb 2013 10:29:24 +0000 (11:29 +0100)]
close file properly and remove unneeded variable

11 years agotypofix in comment
András Veres-Szentkirályi [Thu, 21 Feb 2013 10:28:55 +0000 (11:28 +0100)]
typofix in comment

11 years agouse key in dict instead of key in dict.keys()
András Veres-Szentkirályi [Thu, 21 Feb 2013 10:15:14 +0000 (11:15 +0100)]
use key in dict instead of key in dict.keys()

11 years agoremoved unused import cgi.FieldStorage
András Veres-Szentkirályi [Thu, 21 Feb 2013 09:58:30 +0000 (10:58 +0100)]
removed unused import cgi.FieldStorage

11 years agoremoved unused import re
András Veres-Szentkirályi [Thu, 21 Feb 2013 09:51:13 +0000 (10:51 +0100)]
removed unused import re

11 years agoremoved unnecessary collection lookup
András Veres-Szentkirályi [Thu, 21 Feb 2013 09:48:52 +0000 (10:48 +0100)]
removed unnecessary collection lookup

11 years agoremoved unused import NotFound
András Veres-Szentkirályi [Thu, 21 Feb 2013 09:48:18 +0000 (10:48 +0100)]
removed unused import NotFound

11 years agoChanging name for atom feed view to be more generic than tags.
Christopher Allan Webber [Fri, 22 Feb 2013 21:04:06 +0000 (15:04 -0600)]
Changing name for atom feed view to be more generic than tags.

This commit sponsored by Ben Hutchings.  Thanks, Ben!

11 years agoIntegrate all atom feed in template
Sebastian Spaeth [Tue, 13 Nov 2012 10:35:28 +0000 (11:35 +0100)]
Integrate all atom feed in template

Embed the atom feed link in the root template (most recent media
page) for easier discovery. Delete the (listings/all.html) template
as contributed in commit 195e79098b5 as it was unused and the feed
is essentially showing the most recent media anyway.

11 years agoAdding an Atom RSS feed for all media on the server
Sebastian Spaeth [Tue, 27 Mar 2012 20:58:58 +0000 (15:58 -0500)]
Adding an Atom RSS feed for all media on the server

Go to /atom/ in your browser to see it.

11 years agoCreate wtforms_util.render_label(_p) and use it around.
Elrond [Fri, 22 Feb 2013 13:19:19 +0000 (14:19 +0100)]
Create wtforms_util.render_label(_p) and use it around.

- This makes many places more readable.
- Gives us translation in two places.
- Allows easier changing of labels in a central place.

11 years agoUse wtforms_util.render_field_div more in media_collect.html
Elrond [Mon, 4 Feb 2013 20:25:01 +0000 (21:25 +0100)]
Use wtforms_util.render_field_div more in media_collect.html

If we have to render fields individually, we still can use
wtforms_util.render_field_div for each field. Makes things
much smaller and readable.

11 years agoMerge remote-tracking branch 'aleksej/632_config_spec_comment_typo'
Christopher Allan Webber [Thu, 21 Feb 2013 23:58:27 +0000 (17:58 -0600)]
Merge remote-tracking branch 'aleksej/632_config_spec_comment_typo'

11 years agoRemove "translation legos" and linkify the tag to more generic tag listing
Christopher Allan Webber [Thu, 21 Feb 2013 22:29:16 +0000 (16:29 -0600)]
Remove "translation legos" and linkify the tag to more generic tag listing

By "translation legos" I mean having multiple strings to be translated
appended together.  This isn't a good idea because you can't assume
that syntax will work together in the same way in another language, so
you may be making things hard or impossible for translators.

Between this and the last commit, this means that tags now link to
user tagged media specifically, and if people want a more general tag
listing, they can click on the tag link to get to a more general
listing.  I feel this is a good and intuitive route to handling this.

This sponsored commit brought to you by Debarshi Ray!  Thank you!

11 years agoMaking the tags on media pages point to the user's tag listing specifically.
Christopher Allan Webber [Thu, 21 Feb 2013 22:19:43 +0000 (16:19 -0600)]
Making the tags on media pages point to the user's tag listing specifically.

This commit sponsored by Torsten Meissner.  Thanks, Torsten!

11 years agoFixing user gallery tags filter to be on slug rather than name.
Christopher Allan Webber [Thu, 21 Feb 2013 22:13:56 +0000 (16:13 -0600)]
Fixing user gallery tags filter to be on slug rather than name.

This commit sponsored by Kat Walsh.  Thanks, Kat!

11 years agoMerge remote-tracking branch 'refs/remotes/spaetz/WIP/user_tag_gallery'
Christopher Allan Webber [Thu, 21 Feb 2013 21:55:26 +0000 (15:55 -0600)]
Merge remote-tracking branch 'refs/remotes/spaetz/WIP/user_tag_gallery'

11 years agoplugins/api: fix for cross origin requests
Runar Petursson [Fri, 15 Feb 2013 02:17:24 +0000 (10:17 +0800)]
plugins/api: fix for cross origin requests

The response headers were never getting set because of a bug in the 7c552c0
commit.  This expands the loop into a more readable form and results in the
headers getting set.

11 years agoFix some small bits in base.html.
Elrond [Tue, 19 Feb 2013 16:14:13 +0000 (17:14 +0100)]
Fix some small bits in base.html.

1. Add a trailing slash to the mediagoblin.org URL.
   (The string changed anyway, so translations are not
   affected more than already.)
2. Order was wrong for those two at the end (old version):
     {% endblock mediagoblin_body %}
     </div>
3. Fix some little indenting issues.
4. Remove some useless space from the output.

11 years agoMerge remote-tracking branch 'pythonsnake/537_version'
Elrond [Tue, 19 Feb 2013 12:34:13 +0000 (13:34 +0100)]
Merge remote-tracking branch 'pythonsnake/537_version'

* pythonsnake/537_version:
  Added "version" before the version
  Fix bug 537

11 years agoFix deleting media with attachments.
Elrond [Mon, 18 Feb 2013 13:46:28 +0000 (14:46 +0100)]
Fix deleting media with attachments.

If one deletes a media with attachments, there have been
various problems:
1) If the file in the storage did not exist any more (maybe
   because due to a previous deletion attempt?), the error
   propagation failed, because the wrong thing was
   gathered.
2) The attachment database entries were not deleted.
   Using cascade for this, for now.

Also add a simple unit test, that tests both by having a
broken attachment on a media.

11 years agoFix errors in collection views
Joar Wandborg [Mon, 18 Feb 2013 13:41:34 +0000 (14:41 +0100)]
Fix errors in collection views

When a collection does not exist, render the 404 page.

11 years agoChange from email format in tag URI to domain format
Joar Wandborg [Wed, 13 Feb 2013 22:12:55 +0000 (23:12 +0100)]
Change from email format in tag URI to domain format

Also fixed a bug (thanks pyflakes)

11 years agoAddress concerns in Issue #543
Joar Wandborg [Sat, 2 Feb 2013 22:25:04 +0000 (23:25 +0100)]
Address concerns in Issue #543

- Fixed PEP-008 issues.
- Removed .user-{user} from the tag URI and put it before the domain,
  such as {user}@{host} instead.
- Use year from collection.created instead of current year.

11 years agoAdd markdown notice to collection description.
Elrond [Tue, 12 Feb 2013 23:02:56 +0000 (00:02 +0100)]
Add markdown notice to collection description.

Use wtforms_util.render_field_div on the collection
description, so that the markdown notice in the wtform is
actually rendered to html.

11 years agoAdded "version" before the version
pythonsnake [Mon, 11 Feb 2013 15:57:33 +0000 (16:57 +0100)]
Added "version" before the version

11 years agoFixing MANIFEST.in: graft expects one directory per line
Christopher Allan Webber [Sun, 10 Feb 2013 19:49:35 +0000 (13:49 -0600)]
Fixing MANIFEST.in: graft expects one directory per line

11 years agoUpdating MANIFEST.in for more files... trying to make this work on pypi :)
Christopher Allan Webber [Sun, 10 Feb 2013 19:47:44 +0000 (13:47 -0600)]
Updating MANIFEST.in for more files... trying to make this work on pypi :)

11 years agoTuned logging and added comments to 511 fix
Joar Wandborg [Sun, 10 Feb 2013 19:19:13 +0000 (20:19 +0100)]
Tuned logging and added comments to 511 fix

11 years agoFixed issue #511.
pythonsnake [Sun, 10 Feb 2013 10:43:18 +0000 (11:43 +0100)]
Fixed issue #511.

11 years agoFix bug 537
pythonsnake [Sun, 10 Feb 2013 11:01:24 +0000 (12:01 +0100)]
Fix bug 537

11 years agocorrect typo in a comment in config_spec.ini
Aleksej [Sun, 10 Feb 2013 10:13:46 +0000 (14:13 +0400)]
correct typo in a comment in config_spec.ini

11 years agoMerge remote-tracking branch 'refs/remotes/elrond/sql/media_data'
Christopher Allan Webber [Sat, 9 Feb 2013 21:33:06 +0000 (15:33 -0600)]
Merge remote-tracking branch 'refs/remotes/elrond/sql/media_data'

11 years agoAdd type="text/javascript" for <script>.
Elrond [Sat, 9 Feb 2013 10:34:57 +0000 (11:34 +0100)]
Add type="text/javascript" for <script>.

Our jquery <script> tag did not have a proper type
attribute.

11 years agoAdd translation tags; remove unnecessary title attribute from link
Jef van Schendel [Fri, 8 Feb 2013 22:30:32 +0000 (23:30 +0100)]
Add translation tags; remove unnecessary title attribute from link

11 years agoRemove unused translation variable
Jef van Schendel [Fri, 8 Feb 2013 22:28:13 +0000 (23:28 +0100)]
Remove unused translation variable

11 years agoFix "Add to collection" button: remove icon, add text, add to collections.html
Jef van Schendel [Fri, 8 Feb 2013 21:54:16 +0000 (22:54 +0100)]
Fix "Add to collection" button: remove icon, add text, add to collections.html

11 years agoRemove the collection counter because it's not needed
Jef van Schendel [Fri, 8 Feb 2013 21:08:17 +0000 (22:08 +0100)]
Remove the collection counter because it's not needed

11 years agoKill monkeypatching of ProcessingState.
Elrond [Sat, 26 Jan 2013 14:28:24 +0000 (15:28 +0100)]
Kill monkeypatching of ProcessingState.

And change the process_foo() API to accept a
processingstate now.

image and video are tested, the others are UNTESTED.

11 years agoAlso refactor "copy original into public storage".
Elrond [Sat, 26 Jan 2013 14:08:12 +0000 (15:08 +0100)]
Also refactor "copy original into public storage".

This makes the processing code easier to read/write and
alos will help the reprocessing once we get to it.

Thanks to Joar Wandborg for testing!

11 years agoUse ProcessingState for video.
Elrond [Sat, 26 Jan 2013 13:54:17 +0000 (14:54 +0100)]
Use ProcessingState for video.

Rewrite video to use the new ProcessingState.

Thanks to Joar Wandborg for testing!

11 years agoProcessingState: Document monkey patching.
Elrond [Thu, 24 Jan 2013 09:23:38 +0000 (10:23 +0100)]
ProcessingState: Document monkey patching.

11 years agoImplement ProcessingState class and use for images
Elrond [Wed, 23 Jan 2013 18:44:28 +0000 (19:44 +0100)]
Implement ProcessingState class and use for images

The idea is to have a class that has the knowledge of the
currently being processed media and also has tools for
that.

The long term idea is to make reprocessing easier by for
example hiding the way the original comes into the
processing code.

11 years agoUse logging.config.fileConfig()
Joar Wandborg [Thu, 7 Feb 2013 21:35:42 +0000 (22:35 +0100)]
Use logging.config.fileConfig()

Instead of the monster I had built before.

11 years agoUse system wide EXIF package, if available.
Elrond [Wed, 6 Feb 2013 23:31:37 +0000 (00:31 +0100)]
Use system wide EXIF package, if available.

Created and tested by Simon Fondrie-Teitler.

Thanks!

11 years agoCommitting extracted and compiled translations
Christopher Allan Webber [Tue, 5 Feb 2013 21:13:44 +0000 (15:13 -0600)]
Committing extracted and compiled translations

11 years agoCommitting present MediaGoblin translations before pushing extracted messages
Christopher Allan Webber [Tue, 5 Feb 2013 21:12:27 +0000 (15:12 -0600)]
Committing present MediaGoblin translations before pushing extracted messages

11 years agoRename {{title}} to {{media_title}}.
Elrond [Tue, 5 Feb 2013 15:50:35 +0000 (16:50 +0100)]
Rename {{title}} to {{media_title}}.

Rename a variable in a translated string to make it easier
for translators to know what they're dealing with.

And add a <title/> block.

11 years agoMark "Collection" for translation in media_collect.
Elrond [Tue, 5 Feb 2013 15:25:19 +0000 (16:25 +0100)]
Mark "Collection" for translation in media_collect.

11 years agoMerge remote-tracking branch 'aleksej/quotes_and_a_for_addcoll'
Elrond [Mon, 4 Feb 2013 20:26:09 +0000 (21:26 +0100)]
Merge remote-tracking branch 'aleksej/quotes_and_a_for_addcoll'

* aleksej/quotes_and_a_for_addcoll:
  Small changes to "Add <media> to collection" string

11 years agoSmall changes to "Add <media> to collection" string
Aleksej [Mon, 4 Feb 2013 20:07:47 +0000 (00:07 +0400)]
Small changes to "Add <media> to collection" string

Add quotation marks and "a" ("a" was proposed by Elrond).

11 years agoIssue 621: Extract strings from hooked templates.
Elrond [Mon, 4 Feb 2013 16:11:01 +0000 (17:11 +0100)]
Issue 621: Extract strings from hooked templates.

templates using the new hook system were not extracted
properly. One needs to add the new extension to the
extraction process as well.

11 years agoSearch for translation in all templates.
Elrond [Mon, 4 Feb 2013 13:17:00 +0000 (14:17 +0100)]
Search for translation in all templates.

We missed to search for translatable strings in our plugins
and other things that might have templates.

The search is now for **/templates/**.html. That should
catch a lot more.

11 years agoissue 615: config geolocation_map_visible gone.
Elrond [Sat, 2 Feb 2013 19:40:19 +0000 (20:40 +0100)]
issue 615: config geolocation_map_visible gone.

The template in the geolocation plugin still used the old
config option. Just remove that. To enable it, you enable
the plugin. No need for extra config.

Tested by manwesulimo2004 (via IRC).

11 years agoDrop backward compatibility for media_data backref.
Elrond [Fri, 1 Feb 2013 15:33:53 +0000 (16:33 +0100)]
Drop backward compatibility for media_data backref.

Now we only support media_type backrefs with uselist=False.

11 years agoDrop media_data_table property.
Elrond [Fri, 1 Feb 2013 15:33:53 +0000 (16:33 +0100)]
Drop media_data_table property.

Only when creating a new media_data row, we need the table.
So load that locally in media_data_init().

11 years agoTurn media.{backref_nam} from a list to a scalar.
Elrond [Fri, 1 Feb 2013 14:52:17 +0000 (15:52 +0100)]
Turn media.{backref_nam} from a list to a scalar.

For all our media_types, let the backref on the media_entry
be a scalar (there is only one media_data per media_entry)
instead of a list with zero or one entry.

The media_data toolchain on MediaEntry currently handles
both transparently.

11 years agoRewrite media_data handling to use relationships
Elrond [Fri, 1 Feb 2013 14:42:44 +0000 (15:42 +0100)]
Rewrite media_data handling to use relationships

Instead of doing query by hand, use the relationships on
the models to find the media_data. Is is made possible by
the BACKREF_NAME in each models.py, which lets us know the
local attr to ask for.

Also initialize the relationship attribute on new
media_data instead of the media_id. Also do not add it to
the session. This gives us:
- This automatically initializes the other side of the
  relationship, which will allow later acces via that way.
- If the media_data is too early in the session, when the
  (new) media_entry is not yet in there, this could get
  conflicts. Avoid those by not adding to session.
- Uses cascading to commit media_data together with the
  media_entry.

11 years agoSome tests for media_data, yeah!
Elrond [Fri, 1 Feb 2013 18:57:39 +0000 (19:57 +0100)]
Some tests for media_data, yeah!

One in the submissions, that posts a jpg with gps data.
One in the modelmethods to test some behaviours.

The later test fails.
Fixes coming up.

11 years agoImprove formatting for hook template docs.
Elrond [Thu, 31 Jan 2013 19:57:03 +0000 (20:57 +0100)]
Improve formatting for hook template docs.

11 years agoSwitching set syntax to python2.6 compatible
Christopher Allan Webber [Thu, 31 Jan 2013 18:33:50 +0000 (12:33 -0600)]
Switching set syntax to python2.6 compatible

11 years agoAdded register_template_hooks and get_hook_templates to the plugin api
Christopher Allan Webber [Wed, 30 Jan 2013 19:27:40 +0000 (13:27 -0600)]
Added register_template_hooks and get_hook_templates to the plugin api
auto module documentation.

11 years agoEven better documentation for get_hook_templates!
Christopher Allan Webber [Wed, 30 Jan 2013 19:27:05 +0000 (13:27 -0600)]
Even better documentation for get_hook_templates!

Tells how you *can* use it in templates if you really like.

11 years agoImproved documentation for get_hook_templates, noting the template tag
Christopher Allan Webber [Wed, 30 Jan 2013 19:25:08 +0000 (13:25 -0600)]
Improved documentation for get_hook_templates, noting the template tag

11 years agoMoved the docstring for the plugin template stuff from the class to module method
Christopher Allan Webber [Wed, 30 Jan 2013 19:22:06 +0000 (13:22 -0600)]
Moved the docstring for the plugin template stuff from the class to module method

11 years agoNo need for an __init__ at all in the TemplateHookExtension, really.
Christopher Allan Webber [Mon, 28 Jan 2013 20:41:01 +0000 (14:41 -0600)]
No need for an __init__ at all in the TemplateHookExtension, really.

11 years agoMove template hook over to a template_hook tag. Seems to work! :)
Christopher Allan Webber [Mon, 28 Jan 2013 20:08:16 +0000 (14:08 -0600)]
Move template hook over to a template_hook tag.  Seems to work! :)

11 years agoRemoving unused geolocation_map_visible variable and turning geolocation on in defaul...
Christopher Allan Webber [Mon, 28 Jan 2013 18:07:30 +0000 (12:07 -0600)]
Removing unused geolocation_map_visible variable and turning geolocation on in default config

11 years agoGeolocation stuff, including including templates seems to be working-ish
Christopher Allan Webber [Mon, 28 Jan 2013 17:58:38 +0000 (11:58 -0600)]
Geolocation stuff, including including templates seems to be working-ish

 - I'm having trouble seeing if the geolocation stuff actually works,
   but plugins are included
 - including a list of template hooks works, however the macro to
   include them does not, so it's kinda verbose

11 years agoVery start of plugin hooks and openstreetmap pluginification
Christopher Allan Webber [Fri, 25 Jan 2013 16:39:20 +0000 (10:39 -0600)]
Very start of plugin hooks and openstreetmap pluginification

 - Added start of template hook code to pluginapi.py
 - Started to break openstreetmap into plugin; moved templates
 - Added plugin hooks in media and image media templates

... almost certainly, none of this works yet. :)

11 years agoBetter Py3 compat: d.has_key(k) -> k in d
Elrond [Wed, 30 Jan 2013 14:03:04 +0000 (15:03 +0100)]
Better Py3 compat: d.has_key(k) -> k in d

py3 does not have dict.has_key any more. You have to use
"key in dict" instead. As that works in python2 as well,
let's use that.

Also some small bits of pep8.

11 years agoImprove runtime of one test.
Elrond [Tue, 29 Jan 2013 20:45:16 +0000 (21:45 +0100)]
Improve runtime of one test.

Do not commit so often. flushing is enough.

11 years agoFix issue 611: Proper (back)relationship on MediaComment.
Elrond [Tue, 29 Jan 2013 20:23:21 +0000 (21:23 +0100)]
Fix issue 611: Proper (back)relationship on MediaComment.

well, fix the relationship on the comments.

11 years agoFailing testcase for issue 611.
Elrond [Tue, 29 Jan 2013 20:13:49 +0000 (21:13 +0100)]
Failing testcase for issue 611.

This currently fails (with foreign key constrain error):
1. Have user A and B.
2. User B creates media M.
3. User A post a comment on M.
4. User A deletes his own account.

The test is a little bit wider.

11 years ago*docs* intersphinx, exception monitoring
Joar Wandborg [Sun, 27 Jan 2013 21:10:47 +0000 (22:10 +0100)]
*docs* intersphinx, exception monitoring

11 years agoDocs: Add a database guide to the plugin docs.
Elrond [Sat, 26 Jan 2013 18:21:40 +0000 (19:21 +0100)]
Docs: Add a database guide to the plugin docs.

Plugin writers will often need to create new tables. So
give them some hints, what they need to do and where they
might find more info.

11 years agoDocs: Create new area for developers.
Elrond [Sat, 26 Jan 2013 18:20:18 +0000 (19:20 +0100)]
Docs: Create new area for developers.

We need some "Part" for developers. Currently, it's named
"Part 4: Developer's Zone".  But we should come up with a
better name soon.

Moved the codebase docs in there for starters.

11 years agoAdd Trim whitespace plugin docs.
Elrond [Sat, 26 Jan 2013 12:03:54 +0000 (13:03 +0100)]
Add Trim whitespace plugin docs.

Added the documentation (which was already present in
plugindocs/) to the TOC, so it's getting build and linked.

11 years agoAllow doc string extraction and use for pluginapi.
Elrond [Fri, 25 Jan 2013 23:12:18 +0000 (00:12 +0100)]
Allow doc string extraction and use for pluginapi.

Allow us to extract docstrings from our sources using the
sphinx.ext.autodoc module.

First use: Extract some of the docs for the pluginapi and
provide it in a new "Plugin API" section.

11 years agoUpdated video apt-get to not use glob
Joar Wandborg [Fri, 25 Jan 2013 20:43:49 +0000 (21:43 +0100)]
Updated video apt-get to not use glob

Also changed some literal blocks to code-blocks

11 years agoFix reference of get_test_app->get_app in test_modelmethods
Christopher Allan Webber [Fri, 25 Jan 2013 18:10:27 +0000 (12:10 -0600)]
Fix reference of get_test_app->get_app in test_modelmethods

(This changed in master while this test was being written; correcting
post-merge.)

11 years agoMerge branch '216_cwebber_style_unique_slugs'
Christopher Allan Webber [Fri, 25 Jan 2013 18:03:40 +0000 (12:03 -0600)]
Merge branch '216_cwebber_style_unique_slugs'

11 years agoNew mediaentry slug tests now pass!
Christopher Allan Webber [Wed, 23 Jan 2013 22:49:54 +0000 (16:49 -0600)]
New mediaentry slug tests now pass!

 - fixed some issues with "whacking uuid junk on the slug"
 - uuid4() -> uuid.uuid4() so that mock will work right
 - added all the tests!

11 years agorequire mock for the new uuid-mocking tests
Christopher Allan Webber [Wed, 23 Jan 2013 22:47:30 +0000 (16:47 -0600)]
require mock for the new uuid-mocking tests

11 years agoWe don't want any empty string slugs, so make "" -> None
Christopher Allan Webber [Wed, 23 Jan 2013 22:40:39 +0000 (16:40 -0600)]
We don't want any empty string slugs, so make "" -> None

11 years agoSwitching uuid4()[1:4] -> uuid4().hex[:4]
Christopher Allan Webber [Wed, 23 Jan 2013 21:15:22 +0000 (15:15 -0600)]
Switching uuid4()[1:4] -> uuid4().hex[:4]

.hex is what we need to access to get at the ascii (hex) version
anyway.  Also, not sure why the previous version grabbed starting at
the index of 1... just grab the first characters instead.

11 years agoUse better relationships to delete collections.
Elrond [Tue, 22 Jan 2013 21:00:41 +0000 (22:00 +0100)]
Use better relationships to delete collections.

When deleting a User, his/her collections can be deleted by
sqlalchemy: Collections do not need any special code to be
executed on deletion.

11 years agoMade pil_filters a PIL_FILTERS (global)
Joar Wandborg [Tue, 22 Jan 2013 22:02:06 +0000 (23:02 +0100)]
Made pil_filters a PIL_FILTERS (global)

11 years agoChanged sampling filter default to AA
Joar Wandborg [Tue, 22 Jan 2013 21:54:10 +0000 (22:54 +0100)]
Changed sampling filter default to AA

11 years agoMade the image sampling filter configurable
Joar Wandborg [Tue, 22 Jan 2013 16:55:55 +0000 (17:55 +0100)]
Made the image sampling filter configurable

- Changed the default to BICUBIC instead of previous ANTIALIAS

11 years agoUse inspect_table; default user license==None.
Elrond [Tue, 22 Jan 2013 21:28:19 +0000 (22:28 +0100)]
Use inspect_table; default user license==None.

Use inspect_table in the new migration. Makes code more
readable, really.

And make the default for the preferred license be None.
This is a userspace thing, so we can even change the
migration here. Changing the migration means, that people
running the migration before this commit get a "" in
User.license_preference, while people running the migration
now get a None. Both values are okay.

None has been designated as "Use the site's default". We're
not actually having a site default right now. Which means
no license is selected in the dropdown.

While "" means "All rights reserved" being chosen by the
user.

Side note: Having no license being selected in the submit
dropdown is as "worse" as before and does not really hurt
much. MediaEntry.license==None means "All rights reserved"
as does "" also do.

11 years agouser.get('moo') -> user.moo
Sebastian Spaeth [Tue, 22 Jan 2013 21:18:08 +0000 (22:18 +0100)]
user.get('moo') -> user.moo

User fields are always existent, so there is no need to .get() them,
just use them directly.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
11 years agoMerge remote-tracking branch 'refs/remotes/spaetz/521_license_preference' into mergetest
Christopher Allan Webber [Tue, 22 Jan 2013 19:43:02 +0000 (13:43 -0600)]
Merge remote-tracking branch 'refs/remotes/spaetz/521_license_preference' into mergetest

11 years agoMoved MediaComment form descriptions to apt. place
Joar Wandborg [Tue, 22 Jan 2013 13:38:53 +0000 (14:38 +0100)]
Moved MediaComment form descriptions to apt. place

11 years agoImplement user's tag filtered gallery page
Sebastian Spaeth [Tue, 4 Dec 2012 15:38:46 +0000 (16:38 +0100)]
Implement user's tag filtered gallery page

tags used to be global, you could only browse media by tag for all users.
This patch implements a view that allows us to browse only a user's tagged
media.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
11 years agoAlso set login_failed in case of form errors
Sebastian Spaeth [Mon, 21 Jan 2013 15:27:19 +0000 (16:27 +0100)]
Also set login_failed in case of form errors

If we send a POST request to the login page which contained form errors
(e.g. a too short password), the variable "login_failed" was not set to
true. This condition was tested by the test suite however, so we should
make sure that login_failed is set even if the form failed to validate.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
11 years agoRestructure ForgotPassword view
Sebastian Spaeth [Mon, 7 Jan 2013 09:17:52 +0000 (10:17 +0100)]
Restructure ForgotPassword view

1) Remove mongo limitations (no 'or' when querying for either username
or email).

2) Lost password function revealed if an user name or email address
   is registered, which can be considered a data leak.
   Leaking user names is OK, they are public anyway, but don't reveal
   lookup success in case the lookup happened by email address.
   Simply respond: "If you have an account here, we have send you
                    your email"?

3) username and email search was case sensitive. Made username search
   case insensitive (they are always stored lowercase in the db).
   Keep email-address search case sensitive for now. This might need
   further discussion

4) Remove a whole bunch of indention in the style of:
   if no error:
        ...
        if no error:
            ...
            if no error:
                actually do something in the regular case

   by restructuring the function.

5) Outsource the sanity checking for username and email fields into the
   validator function. This way, we get automatic case sanity checking
   and sanitizing for all required fields.

6) Require 5-char password and fix tests

   Originally, the Change password form required a password between 6-30
   chars while the registration and login form did not require anything
   special. This commit introduces a common minimum limit for all forms
   which breaks the test suite which uses a 5 char password by
   default. :-).  As 5 chars seem sensible enough to enforce (people
   should be picking much longer ones anyway), just reduce the limit to
   5 chars, thereby making all tests pass.

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