Update the delete item to use the _id after all... it's the safest way.
See http://bugs.foocorp.net/issues/695
This commit is contained in:
parent
38f102515a
commit
bcc9ee3205
@ -58,7 +58,7 @@ def user_may_delete_media(controller):
|
|||||||
"""
|
"""
|
||||||
def wrapper(request, *args, **kwargs):
|
def wrapper(request, *args, **kwargs):
|
||||||
uploader = request.db.MediaEntry.find_one(
|
uploader = request.db.MediaEntry.find_one(
|
||||||
{'slug': request.matchdict['media']}).get_uploader()
|
{'_id': ObjectId(request.matchdict['media'])}).get_uploader()
|
||||||
if not (request.user['is_admin'] or
|
if not (request.user['is_admin'] or
|
||||||
request.user._id == uploader._id):
|
request.user._id == uploader._id):
|
||||||
return exc.HTTPForbidden()
|
return exc.HTTPForbidden()
|
||||||
|
@ -126,7 +126,7 @@
|
|||||||
<p>
|
<p>
|
||||||
{% set delete_url = request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
{% set delete_url = request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
||||||
user= media.get_uploader().username,
|
user= media.get_uploader().username,
|
||||||
media= media.slug) %}
|
media= media._id) %}
|
||||||
<a href="{{ delete_url }}">{% trans %}Delete{% endtrans %}</a>
|
<a href="{{ delete_url }}">{% trans %}Delete{% endtrans %}</a>
|
||||||
</p>
|
</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
|
|
||||||
<form action="{{ request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
<form action="{{ request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
||||||
user=media.get_uploader().username,
|
user=media.get_uploader().username,
|
||||||
media=media.slug) }}"
|
media=media._id) }}"
|
||||||
method="POST" enctype="multipart/form-data">
|
method="POST" enctype="multipart/form-data">
|
||||||
<div class="grid_8 prefix_1 suffix_1 edit_box form_box">
|
<div class="grid_8 prefix_1 suffix_1 edit_box form_box">
|
||||||
<h1>
|
<h1>
|
||||||
|
@ -171,7 +171,7 @@ class TestSubmission:
|
|||||||
request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
||||||
# No work: user=media.uploader().username,
|
# No work: user=media.uploader().username,
|
||||||
user=self.test_user['username'],
|
user=self.test_user['username'],
|
||||||
media=media.slug),
|
media=media._id),
|
||||||
# no value means no confirm
|
# no value means no confirm
|
||||||
{})
|
{})
|
||||||
|
|
||||||
@ -191,7 +191,7 @@ class TestSubmission:
|
|||||||
request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
request.urlgen('mediagoblin.user_pages.media_confirm_delete',
|
||||||
# No work: user=media.uploader().username,
|
# No work: user=media.uploader().username,
|
||||||
user=self.test_user['username'],
|
user=self.test_user['username'],
|
||||||
media=media.slug),
|
media=media._id),
|
||||||
{'confirm': 'y'})
|
{'confirm': 'y'})
|
||||||
|
|
||||||
response.follow()
|
response.follow()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user