aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/plugins
Commit message (Collapse)AuthorAgeFilesLines
* piwigo: Fix validator usage.Elrond2013-05-121-1/+1
| | | | | wtforms.validators.Optional doesn't take an argument. I don't know, why I gave it one.
* piwigo: Better logging for login.Elrond2013-05-091-1/+4
|
* piwigo: Let getStatus return the current user.Elrond2013-05-091-1/+5
| | | | If there is a user logged in, show his name.
* Create new session system for piwigo plugin.Elrond2013-05-093-7/+55
| | | | | | | Using the brand new itsdangerous sessions to power the sessions for piwigo. The real point is: Clients want to have the session in a "pwg_id" cookie and don't accept any other cookie name.
* piwigo: Add .images.add including form handling.Elrond2013-05-093-3/+41
| | | | | To make things a bit easier, switch to WTForms for validating the received data.
* piwigo: Remove possibly_add_cookie.Elrond2013-05-091-15/+0
| | | | | This one was a fake thing to make clients happy. Real sessions coming sonn.
* Fixing API setup with new plugin "config spec" worldChristopher Allan Webber2013-05-081-2/+2
| | | | | It shouldn't reference the config until in the setup_plugin() method, else there's a race condition.
* Removed unused imports in httpapiauthJoar Wandborg2013-05-051-2/+1
|
* Fix-bug-667-Use-lazy_pass_to_ugettext-for-forms.Aditi Mittal2013-04-241-1/+1
|
* piwigo: Send NotImplemented for unknown methods.Elrond2013-04-181-3/+2
| | | | That's somewhat, what piwigo does.
* Use check_file_field in pwg_images_addSimple.Elrond2013-04-181-0/+4
|
* Start to use six for basestring.Elrond2013-04-181-2/+3
| | | | | | six allows us to smoothly get more forward compatible with py3. The idea is to change things over to use six, when/if we feel a need for it.
* OAuth: Support refresh tokens, etcJoar Wandborg2013-04-065-94/+252
| | | | | | | | | | | | | | Initially I was going to write a failing test for refresh tokens. Thus this fix includes an orphaned 'expect_failure' method in test utils. I ended up writing support for OAuth refresh tokens, as well as a lot of cleanup (hopefully) in the OAuth plugin code. **Rebase**: While waiting for this stuff to be merged, the testing framework changed, it comes with batteries included regarding fails. Removed legacy nosetest helper. Also added a lot of backref=backref([...], cascade='all, delete-orphan')
* Merge remote-tracking branch 'JDShu/649_use_form_data_field'Elrond2013-03-301-4/+4
|\ | | | | | | | | | | | | | | | | | | * JDShu/649_use_form_data_field: Use WTForms data field in user_pages/views.py Use WTForms data field in auth/views.py auth: whitespace cleanup in views.py Use WTForms data field in plugins/oauth/views.py Use WTForms data field in submit/views.py Use WTForms data field in edit/views.py
| * Use WTForms data field in plugins/oauth/views.pyHans Lo2013-03-281-4/+4
| |
* | Merge branch 'master' of gitorious.org:mediagoblin/mediagoblinChristopher Allan Webber2013-03-293-6/+47
|\ \
| * | Refactor file field checking.Elrond2013-03-291-5/+3
| |/ | | | | | | | | When uploading, the file field needs some checks, it seems. So refactor them into check_file_field and use around.
| * piwigo: Fix pwg_getversionElrond2013-03-261-1/+1
| | | | | | | | | | This one needs to return just "2.5.0 (Mediagoblin)" instead of "Piwigo 2...".
| * piwigo: Start at pwg.images.addSimple.Elrond2013-03-262-0/+43
| | | | | | | | | | | | | | | | Without a session and a logged in user, this can't go much further. Misses check for the file upload field. Need refactored test tool for this.
* | Warning that raven plugin is somewhat experimental!Christopher Allan Webber2013-03-291-0/+2
|/
* piwigo start at pwg.images.addChunk.Elrond2013-03-211-1/+43
| | | | | | | | This function receives part of an upload. Does most parameter validation, but does not safe the data anywhere for now. Also fake pwg.images.exist
* piwigo: Add session.getStatus, improve categories.getListElrond2013-03-212-5/+10
| | | | | | | | | | | - pwg.session.getStatus returns the current user as "fake_user". When we have a session, we'll return something better. - pwg.categories.getList add a name and the parent id for its one and only "collection". - Improve logging a bit.
* piwigo: Sent a fake cookie.Elrond2013-03-211-1/+18
| | | | | | | shotwell needs a pwg_id cookie to continue. And really, it's the only cookie it supports, so in the long run, we need to send a proper session cookie as pwg_id.
* Add warning README.rst and fix pep8.Elrond2013-03-192-1/+24
|
* piwigo: Move tool functions into tools.pyElrond2013-03-192-83/+108
|
* Start at pwg.categories.getList and improve xml output.Elrond2013-03-191-13/+51
| | | | | | - The xml formatting is now in the main function. - Add PwgNamedArray to have named lists in xml output. - Remove gmg.test method
* piwigo: start xml response encoding, more (fake) methods.Elrond2013-03-191-2/+55
|
* Starting a piwigo api plugin.Elrond2013-03-192-0/+116
| | | | | | | This one just puts up the basic endpoint, some infrastructure and a fake login method. Lots more needed.
* Providing warning to users about instability of OAuth/APIChristopher Allan Webber2013-03-081-0/+4
|
* Updated raven pluginJoar Wandborg2013-03-032-15/+51
| | | | | | | - Added wrap_wsgi, celery_setup, celery_logging_setup hooks - Updated raven plugin docs - Updated production considerations docs - Added raven logging setup
* plugin/raven: Fix paster's celery config issueJoar Wandborg2013-03-031-2/+6
| | | | | | Check for CELERY_CONFIG_MODULE before we import raven.contrib.celery. It seems that the import otherwise sets up the celery client before we get to pass it our mediagoblin-specific settings.
* Removed stray )Joar Wandborg2013-03-031-1/+1
|
* Removed PLUGIN_DIR from ravenJoar Wandborg2013-03-031-2/+0
|
* Don't look for the oauth config in raven pluginJoar Wandborg2013-03-031-1/+1
|
* Refactored raven pluginJoar Wandborg2013-03-031-3/+4
|
* Added raven pluginJoar Wandborg2013-03-032-0/+68
|
* Fixed hidden fields in oauth client authorizationJoar Wandborg2013-03-022-5/+4
| | | | | | Removed the translation marking and passed in empty strings to avoid WTForms automagically creating the labels from the field names (i.e. client_id => 'Client Id').
* Renaming "extrahead" template hooks to "head".Christopher Allan Webber2013-02-241-1/+1
| | | | | | As Elrond points out, the "extra" is implied by it being a hook! This commit sponsored by Andrew Fustini. Thanks, Drew!
* plugins/api: fix for cross origin requestsRunar Petursson2013-02-201-1/+2
| | | | | | 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.
* issue 615: config geolocation_map_visible gone.Elrond2013-02-021-2/+1
| | | | | | | | 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).
* Geolocation stuff, including including templates seems to be working-ishChristopher Allan Webber2013-01-302-0/+60
| | | | | | | - 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
* Very start of plugin hooks and openstreetmap pluginificationChristopher Allan Webber2013-01-301-0/+60
| | | | | | | | - 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. :)
* Don't pass request into run_process_mediaSebastian Spaeth2013-01-151-1/+4
| | | | | | | | | People(tm) want to start run_process_media from the CLI and might not have a request object handy. So pass in the feed_url into run_process_media rather than the request object and allow the feed url to be empty (resulting in no PuSH notification at all then). Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
* Make PuSHing the Pubhubsubbub server an async task (#436, #585)Sebastian Spaeth2013-01-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Notifying the PuSH servers had 3 problems.  1) it was done immediately after sending of the processing task to celery. So if celery was run in a separate process we would notify the PuSH servers before the new media was processed/ visible. (#436) 2) Notification code was called in submit/views.py, so submitting via the API never resulted in notifications. (#585) 3) If Notifying the PuSH server failed, we would never retry. The solution was to make the PuSH notification an asynchronous subtask. This way: 1) it will only be called once async processing has finished, 2) it is in the main processing code path, so even API calls will result in notifications, and 3) We retry 3 times in case of failure before giving up. If the server is in a separate process, we will wait 3x 2 minutes before retrying the notification. The only downside is that the celery server needs to have access to the internet to ping the PuSH server. If that is a problem, we need to make the task belong to a special group of celery servers that has access to the internet. As a side effect, I believe I removed the limitation that prevented us from upgrading celery. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
* Move db.sql.migration_tools to db.migration_tools.Elrond2013-01-081-1/+1
| | | | Follow the new trend.
* Move all the migration tools into new migration_tools.pyElrond2013-01-081-1/+1
| | | | | | | | | Factor all the migration related stuff out into a new .db.sql.migration_tools. First we don't have to load this module for our normal server. Second it makes all the import dependencies a little more cleaner.
* Mv db.sql.base to db.baseSebastian Spaeth2013-01-071-1/+1
| | | | | | | | This concludes the db.sql.* -> db.* move. Our db abstraction layer is sqlalchemy, so there is no need to a separate db.sql.* hierarchy. All tests have been run for each of the commit series to make sure everything works at every step.
* Move db.sql.models* to db.models*Sebastian Spaeth2013-01-072-2/+2
|
* Move db.sql.util to db.utilSebastian Spaeth2013-01-071-1/+1
| | | | | | | | Now that sqlalchemy is providing the database abstractions, there is no need to hide everything in db.sql. sub-modules. It complicates the code and provides a futher layer of indirection. Move the db.sql.util.py to db.util.py and adapt the importers.
* Made api_test use @require_active_loginJoar Wandborg2013-01-021-3/+1
|