2860 Commits

Author SHA1 Message Date
Christopher Allan Webber
3606316e9d ppoppler -> poppler tyop fix 2013-04-17 07:41:15 -05:00
Elrond
f84425c0c1 Turning image's media manager into a new style class.
images are the first media type to use the new style class
based media manager.
2013-04-17 12:09:30 +02:00
Elrond
95dab599da Add sniff_handler method to mediamanagers.
The MediaManagerBase gets a fallback "return False" one.
The Compat-Manager checks in the dict and calls that one or
returns False.
2013-04-17 12:09:30 +02:00
Elrond
6d37733a3f Add MediaManagerBase class.
This is the base class for all new style class based media
managers.
2013-04-17 12:08:53 +02:00
Elrond
e8676fa383 MediaManager: Use .foo instead of ['foo'].
To make .media_fetch_order work, create a property.
2013-04-17 12:08:53 +02:00
Elrond
2077d6ed93 First step towards a MediaManager class: Compat one.
To get us moving towards a MediaManager class, the first
idea is to create a class that wraps our current dict based
manager and makes all users happy.
2013-04-17 12:08:52 +02:00
Alon Levy
827f91e603 update documentation for s/nose/py.test/
Signed-off-by: Alon Levy <alon@pobox.com>
2013-04-17 12:55:57 +03:00
Alon Levy
d0e9f843e2 PIL: Support systems with Pillow and without
Fixes for systems with Pillow, but leaves a "try: except ImportError" to
support anything that doesn't have a PIL top level import.

Signed-off-by: Alon Levy <alon@pobox.com>
2013-04-17 12:54:54 +03:00
Alon Levy
519bcfb0e6 pdf/processing.py: don't use check_output, only in python>=2.7
Signed-off-by: Alon Levy <alon@pobox.com>
2013-04-17 12:47:28 +03:00
Elrond
b698c94d03 Refactor test resources into new resources.py 2013-04-17 01:15:46 +02:00
Elrond
54b3113abc PDF: Use pytest.mark.skipif for skipping tests
Instead of leaving test early if they can not run, use the
pytest.mark.skipif marked to tell the test system not to
even run the test.

This also adds to the stats, because skipped tests are
counted differently. Thus making it obvious, that some
tests did not run, because of any reason.
2013-04-16 23:39:01 +02:00
Christopher Allan Webber
24b1683b0d Switch to an apparently newer version of pdf.js per irc.mozilla.org #pdfjs recommendations 2013-04-16 16:09:57 -05:00
Elrond
d38e9779dd test_timesince() doesn't need a complete test_app. 2013-04-16 19:40:57 +02:00
Christopher Allan Webber
455f2d6506 Removing unused imports 2013-04-15 15:55:24 -05:00
Christopher Allan Webber
1d1276be79 Removing unused imports and an unused media_files dict reference 2013-04-15 15:31:22 -05:00
Alon Levy
bbd7112a5e pdf: use pdf.js in an iframe 2013-04-15 15:01:59 -05:00
Alon Levy
a80ebf3b64 add pdf media type
The new media type supports pdf and a subset of media recognized by libreoffice via
unoconv.

Every document added goes through:
* conversion to pdf with unoconv if not already a pdf
* creation of thumbnail and medium sized image, and pdfinfo generates
 some information (even for unoconv produces docs - should fix this)

Poppler (pdftocairo, pdfinfo) is used.  http://poppler.freedesktop.org/

A working but uglified pdf.js integration exists, which is enabled by
setting pdf.pdf_js=true mediagoblin_local.ini (disabled in mediagoblin.ini)

Adds one test to the test_submission test suite, and another separate test_pdf suite.
The tests are only run if media_types.pdf.processing.check_prerequisites passes, so
the test suite will not require any extra package.

TODO: make test suite say 'skipped' in that case instead of just 'ok'

Signed-off-by: Alon Levy <alon@pobox.com>
2013-04-15 09:51:21 +03:00
Alon Levy
3cadb4a6cd document submodule usage
Signed-off-by: Alon Levy <alon@pobox.com>
2013-04-14 22:46:44 +03:00
Christopher Allan Webber
0f6ab7da86 Merge branch 'master' of gitorious.org:mediagoblin/mediagoblin 2013-04-13 20:21:14 -05:00
Christopher Allan Webber
f4f9d7ca95 Merge remote-tracking branch 'refs/remotes/tsyesika/599-allow-email-login' 2013-04-13 20:11:11 -05:00
Nathan Yergler
64598a79a9 Merge remote-tracking branch 'joar-github/oauth/refresh_tokens'
This merges the patch for Issue #548.
2013-04-13 15:54:58 -07:00
Christopher Allan Webber
50bf38b26e Text-align the headers on the media panel to the left to avoid confusion
Thanks to Tsyesika for pointing this out!
2013-04-13 14:12:25 -05:00
Christopher Allan Webber
9cbbc2a401 Adding Jessica Tallon to AUTHORS! 2013-04-13 12:10:23 -05:00
Christopher Allan Webber
64308aca3f Comment when/author link styling changes 2013-04-13 12:06:19 -05:00
Christopher Allan Webber
05ad187b86 Why not also display the times on when these media were created 2013-04-13 11:58:50 -05:00
Christopher Allan Webber
eac52ac1ce Changing translations to say "amount of time ago", basically
Previously they were just "amount of time"... I think this fits a bit better.
2013-04-13 11:57:16 -05:00
Christopher Allan Webber
6432755db3 Merge remote-tracking branch 'refs/remotes/tsyesika/394-fuzzy-timestamp' 2013-04-13 11:42:34 -05:00
Jessica T
b2c8dbcf85 Allows you to use your username or email to login 2013-04-12 22:07:44 +01:00
Jessica T
88dd6fc2e2 Adds the fuzzy timestamp to the admin panel too 2013-04-12 02:38:24 +01:00
Jessica T
79e2d4eee4 Adds the unit tests and removes useless function we don't use 2013-04-12 01:40:15 +01:00
Christopher Allan Webber
36748921c2 adding callable_runone and callable_runall to the docs 2013-04-11 16:57:11 -05:00
Jessica T
f1c3807db7 Adds the timesince ability which fixes #394 2013-04-11 22:37:48 +01:00
Christopher Allan Webber
761e26bb29 Merge branch '637_friendlier_hooks' 2013-04-10 17:53:05 -05:00
Christopher Allan Webber
04f295e20d Switch several functions over to using the new callable_run* tools! 2013-04-10 17:52:49 -05:00
Christopher Allan Webber
0a5c6ec901 Remove unhandled_okay from kwargs if it's there before passing to functions. 2013-04-10 17:42:29 -05:00
Christopher Allan Webber
cdc821eb74 callable hook convenience functions.. now work, and with tests!
- Added three "callables" test plugins.
 - updated callable_runone to check for unhandled_okay in the kwargs
   dict.

All passing!
2013-04-10 17:36:21 -05:00
Christopher Allan Webber
0d656f44a1 Open Source -> Free Software from the borrowed extlib repositories
We're a GNU project, gotta get with the GNU world order ;)
2013-04-10 16:08:08 -05:00
Christopher Allan Webber
71ef20078c Adding some help about what to do if flup flakes out on you 2013-04-10 10:52:39 -05:00
Christopher Allan Webber
33cbccb09d Fix sessions so they work across the site. 2013-04-10 10:08:09 -05:00
Elrond
b0ee3aae91 Make session cookies more secure.
1. Our session cookies only need to be available to http, so
   mark them appropiately.

2. Send the cookie to the subpath for mediagoblin.

And instantiate a session manager on the app, once.
2013-04-09 22:49:11 +02:00
Elrond
82a40cc4e1 Remove the last traces of beaker.
There were still some traces of beaker around:
- docs: replaced by reference to itsdangerous.
- paste configs: Wiped away.
- config_spec.ini: wiped.
- test_mgoblin_app.ini: also wiped.
2013-04-09 22:39:04 +02:00
Elrond
11780855da Fix left over from variable renaming. 2013-04-09 22:37:10 +02:00
Elrond
8021cc5605 Merge remote-tracking branch 'brett/itsdangerous'
* brett/itsdangerous:
  Call is_updated instead of testing it boolean.
  Harden It's Dangerous key management.
  First tests for the Session class.
  Set a starting value for session.send_new_cookie.
  Remove beaker stuff from the code.
  Delete the session cookie on an empty session.
  Back sessions with It's Dangerous.
  Improve fs security for itsdangerous secret.
  Docs for get_timed_signer_url.
  Basic itsdangerous infrastructure.

Conflicts:
	mediagoblin/tests/test_cache.py
2013-04-09 19:40:54 +02:00
Christopher Allan Webber
70c061955c tests for new pluginapi methods that can't possibly pass yet :) 2013-04-09 11:21:31 -05:00
Elrond
b98882e16e Use cascade for comment deletion.
Also use the relationship for getting the comments on a
MediaEntry.
2013-04-08 17:03:26 +02:00
Elrond
25067d8110 Testing: Remove some left over files/dirs.
When using tempfile.* in testing, those files get created
in the system tempdir. The docs say, we should try to
remove them.
Yes, the next reboot will clean them up also.

And in the workbench case, check after each test, that the
global workbench dir is empty (so the sub-workbcnhes have
been destroyed).
2013-04-08 17:03:26 +02:00
Elrond
8ec87dc3fd Implement queue dir delete for proc_state.delete_queue_file
Implement queue dir deleting in the
proc_state.delete_queue_file helper function.
2013-04-08 16:12:32 +02:00
Elrond
2dd0af3635 Merge remote-tracking branch 'cwebber/254_delete_queue_directories'
* cwebber/254_delete_queue_directories:
  Removing docstring bit about delete_file possibly deleting directories in the future
  Convert media processing backends to delete the queue directory (#254)
  Implement delete_dir in the FileStorage

Conflicts:
	mediagoblin/media_types/image/processing.py
	mediagoblin/media_types/video/processing.py

Conflicts, because those media_types already use the newer
proc_state.delete_queue_file() method (which needs
updating.
2013-04-08 15:57:06 +02:00
Christopher Allan Webber
e495e28ee0 Convenience functions for callable hooks 2013-04-07 17:46:11 -05:00
Elrond
0c0f31c4ef Teach runtests.sh the -n arg.
If you give "-n 8" to runtests, it thinks, it got
"-n" -- a nice option, ignored.
"8"  -- Oh! a single test named "8" to run, so no need to
        run all the GMG tests.

Well, that's not what we want. So runtests now knows about
-n taking an arg.
2013-04-06 22:56:40 +02:00