From 8e2957aa78ddfa10b941c313e55771fcf4b36d6f Mon Sep 17 00:00:00 2001 From: Evgeny Fadeev Date: Sat, 4 May 2013 00:09:42 -0400 Subject: fixed the dummy tag issue --- askbot/migrations/0127_save_category_tree_as_json.py | 6 ++++++ askbot/templates/main_page/questions_loop.html | 2 +- askbot/views/commands.py | 20 ++++++++++++++------ 3 files changed, 21 insertions(+), 7 deletions(-) diff --git a/askbot/migrations/0127_save_category_tree_as_json.py b/askbot/migrations/0127_save_category_tree_as_json.py index b13cd2fe..34aba9c4 100644 --- a/askbot/migrations/0127_save_category_tree_as_json.py +++ b/askbot/migrations/0127_save_category_tree_as_json.py @@ -71,6 +71,12 @@ class Migration(DataMigration): """reads category tree saved as string, translates it to json and saves back""" old_data = askbot_settings.CATEGORY_TREE + + #this special value is our new default, + #we don't want to create a tag with this name + if old_data.replace(' ', '') == '[["dummy",[]]]': + old_data = '' + json_data = parse_tree(old_data) json_string = simplejson.dumps(json_data) askbot_settings.update('CATEGORY_TREE', json_string) diff --git a/askbot/templates/main_page/questions_loop.html b/askbot/templates/main_page/questions_loop.html index ad7bf683..10a7fce1 100644 --- a/askbot/templates/main_page/questions_loop.html +++ b/askbot/templates/main_page/questions_loop.html @@ -7,7 +7,7 @@ {% endfor %}
{% trans %}Did not find what you were looking for?{% endtrans %} - {% trans %}Please, post your question!{% endtrans %} + {% trans %}Ask your question!{% endtrans %}
{% endif %} diff --git a/askbot/views/commands.py b/askbot/views/commands.py index 19a956ef..207a0615 100644 --- a/askbot/views/commands.py +++ b/askbot/views/commands.py @@ -612,12 +612,20 @@ def delete_tag(request): if request.user.is_anonymous() \ or not request.user.is_administrator_or_moderator(): raise exceptions.PermissionDenied() - post_data = simplejson.loads(request.raw_post_data) - tag_name = forms.clean_tag(post_data['tag_name']) - path = post_data['path'] - tree = category_tree.get_data() - category_tree.delete_category(tree, tag_name, path) - category_tree.save_data(tree) + + try: + post_data = simplejson.loads(request.raw_post_data) + tag_name = post_data['tag_name'] + path = post_data['path'] + tree = category_tree.get_data() + category_tree.delete_category(tree, tag_name, path) + category_tree.save_data(tree) + except Exception: + if 'tag_name' in locals(): + logging.critical('could not delete tag %s' % tag_name) + else: + logging.critical('failed to parse post data %s' % request.raw_post_data) + raise exceptions.PermissionDenied(_('Sorry, could not delete tag')) return {'tree_data': tree} @csrf.csrf_exempt -- cgit v1.2.3-1-g7c22