Merge pull request #1661 from MITx/fix/cdodge/dont-clobber-on-delete-draft
hot fix for delete_item. The 'delete_all_versions' is useful in that it ...
This commit is contained in:
@@ -112,7 +112,7 @@ class ContentStoreToyCourseTest(ModuleStoreTestCase):
|
||||
self.assertTrue(sequential.location.url() in chapter.definition['children'])
|
||||
|
||||
self.client.post(reverse('delete_item'),
|
||||
json.dumps({'id': sequential.location.url(), 'delete_children':'true'}),
|
||||
json.dumps({'id': sequential.location.url(), 'delete_children':'true', 'delete_all_versions':'true'}),
|
||||
"application/json")
|
||||
|
||||
found = False
|
||||
|
||||
@@ -643,15 +643,15 @@ def delete_item(request):
|
||||
modulestore('direct').delete_item(item.location)
|
||||
|
||||
# cdodge: we need to remove our parent's pointer to us so that it is no longer dangling
|
||||
if delete_all_versions:
|
||||
parent_locs = modulestore('direct').get_parent_locations(item_loc, None)
|
||||
|
||||
parent_locs = modulestore('direct').get_parent_locations(item_loc, None)
|
||||
|
||||
for parent_loc in parent_locs:
|
||||
parent = modulestore('direct').get_item(parent_loc)
|
||||
item_url = item_loc.url()
|
||||
if item_url in parent.definition["children"]:
|
||||
parent.definition["children"].remove(item_url)
|
||||
modulestore('direct').update_children(parent.location, parent.definition["children"])
|
||||
for parent_loc in parent_locs:
|
||||
parent = modulestore('direct').get_item(parent_loc)
|
||||
item_url = item_loc.url()
|
||||
if item_url in parent.definition["children"]:
|
||||
parent.definition["children"].remove(item_url)
|
||||
modulestore('direct').update_children(parent.location, parent.definition["children"])
|
||||
|
||||
return HttpResponse()
|
||||
|
||||
|
||||
@@ -32,10 +32,11 @@ if [ ! -d /mnt/virtualenvs/"$JOB_NAME" ]; then
|
||||
virtualenv /mnt/virtualenvs/"$JOB_NAME"
|
||||
fi
|
||||
|
||||
export PIP_DOWNLOAD_CACHE=/mnt/pip-cache
|
||||
|
||||
source /mnt/virtualenvs/"$JOB_NAME"/bin/activate
|
||||
pip install -q -r pre-requirements.txt
|
||||
pip install -q -r test-requirements.txt
|
||||
yes w | pip install -q -r requirements.txt
|
||||
yes w | pip install -q -r test-requirements.txt -r requirements.txt
|
||||
|
||||
rake clobber
|
||||
rake pep8
|
||||
|
||||
@@ -1,61 +1,61 @@
|
||||
django==1.4.3
|
||||
pip
|
||||
numpy==1.6.2
|
||||
scipy==0.11.0
|
||||
Markdown==2.2.1
|
||||
pygments==1.5
|
||||
lxml==3.0.1
|
||||
boto==2.6.0
|
||||
mako==0.7.3
|
||||
python-memcached==1.48
|
||||
python-openid==2.2.5
|
||||
path.py
|
||||
django_debug_toolbar
|
||||
fs==0.4.0
|
||||
beautifulsoup==3.2.1
|
||||
-r repo-requirements.txt
|
||||
beautifulsoup4==4.1.3
|
||||
feedparser==5.1.3
|
||||
requests==0.14.2
|
||||
http://sympy.googlecode.com/files/sympy-0.7.1.tar.gz
|
||||
newrelic==1.8.0.13
|
||||
glob2==0.3
|
||||
pymongo==2.4.1
|
||||
django_nose==1.1
|
||||
nosexcover==1.0.7
|
||||
rednose==0.3.3
|
||||
GitPython==0.3.2.RC1
|
||||
mock==0.8.0
|
||||
PyYAML==3.10
|
||||
South==0.7.6
|
||||
pytz==2012h
|
||||
beautifulsoup==3.2.1
|
||||
boto==2.6.0
|
||||
django-celery==3.0.11
|
||||
django-countries==1.5
|
||||
django-kombu==0.9.4
|
||||
django-debug-toolbar-mongo
|
||||
django-followit==0.0.3
|
||||
django-jasmine==0.3.2
|
||||
django-keyedcache==1.4-6
|
||||
django-kombu==0.9.4
|
||||
django-mako==0.1.5pre
|
||||
django-masquerade==0.1.6
|
||||
django-mptt==0.5.5
|
||||
django-openid-auth==0.4
|
||||
django-robots==0.9.1
|
||||
django-sekizai==0.6.1
|
||||
django-ses==0.4.1
|
||||
django-storages==1.1.5
|
||||
django-threaded-multihost==1.4-1
|
||||
django-sekizai==0.6.1
|
||||
django-mptt==0.5.5
|
||||
sorl-thumbnail==11.12
|
||||
networkx==1.7
|
||||
pygraphviz==1.1
|
||||
-r repo-requirements.txt
|
||||
nltk==2.0.4
|
||||
django-debug-toolbar-mongo
|
||||
dogstatsd-python==0.2.1
|
||||
MySQL-python==1.2.4c1
|
||||
sphinx==1.1.3
|
||||
factory_boy
|
||||
Shapely==1.2.16
|
||||
ipython==0.13.1
|
||||
xmltodict==0.4.1
|
||||
paramiko==1.9.0
|
||||
Pillow==1.7.8
|
||||
django==1.4.3
|
||||
django_debug_toolbar
|
||||
django_nose==1.1
|
||||
dogapi==1.2.1
|
||||
dogstatsd-python==0.2.1
|
||||
factory_boy
|
||||
feedparser==5.1.3
|
||||
fs==0.4.0
|
||||
GitPython==0.3.2.RC1
|
||||
glob2==0.3
|
||||
http://sympy.googlecode.com/files/sympy-0.7.1.tar.gz
|
||||
ipython==0.13.1
|
||||
lxml==3.0.1
|
||||
mako==0.7.3
|
||||
Markdown==2.2.1
|
||||
mock==0.8.0
|
||||
MySQL-python==1.2.4c1
|
||||
networkx==1.7
|
||||
newrelic==1.8.0.13
|
||||
nltk==2.0.4
|
||||
nosexcover==1.0.7
|
||||
numpy==1.6.2
|
||||
paramiko==1.9.0
|
||||
path.py
|
||||
Pillow==1.7.8
|
||||
pip
|
||||
pygments==1.5
|
||||
pygraphviz==1.1
|
||||
pymongo==2.4.1
|
||||
python-memcached==1.48
|
||||
python-openid==2.2.5
|
||||
pytz==2012h
|
||||
PyYAML==3.10
|
||||
rednose==0.3.3
|
||||
requests==0.14.2
|
||||
scipy==0.11.0
|
||||
Shapely==1.2.16
|
||||
sorl-thumbnail==11.12
|
||||
South==0.7.6
|
||||
sphinx==1.1.3
|
||||
xmltodict==0.4.1
|
||||
|
||||
@@ -1,10 +1,7 @@
|
||||
django-nose
|
||||
coverage
|
||||
nosexcover
|
||||
pylint
|
||||
pep8
|
||||
lettuce
|
||||
selenium
|
||||
factory_boy
|
||||
splinter
|
||||
|
||||
|
||||
Reference in New Issue
Block a user