summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEvgeny Fadeev <evgeny.fadeev@gmail.com>2011-06-17 22:28:30 -0400
committerEvgeny Fadeev <evgeny.fadeev@gmail.com>2011-06-17 22:28:30 -0400
commit845f5960a312ae21319b7eda2e584304bb48045f (patch)
tree9681b3d4cd2b3e9a9269b7019bc94faeba3cd7cb
parent19f18a8f599eae03bf73e404ab2ed7687ac9ff24 (diff)
downloadaskbot-845f5960a312ae21319b7eda2e584304bb48045f.tar.gz
askbot-845f5960a312ae21319b7eda2e584304bb48045f.tar.bz2
askbot-845f5960a312ae21319b7eda2e584304bb48045f.zip
show swap question with answer link only to admins and moderators
-rw-r--r--askbot/doc/source/import-data.rst10
-rw-r--r--askbot/models/__init__.py4
-rw-r--r--askbot/skins/default/templates/question.html2
3 files changed, 14 insertions, 2 deletions
diff --git a/askbot/doc/source/import-data.rst b/askbot/doc/source/import-data.rst
index e0158d81..44b902b5 100644
--- a/askbot/doc/source/import-data.rst
+++ b/askbot/doc/source/import-data.rst
@@ -13,6 +13,7 @@ StackExchange
=============
Add `askbot.importers.stackexchange` to the list of `INSTALLED_APPS` list in your `settings.py`, then run::
+
python manage.py syncdb
Then there will be two ways to import your StackExchange dump:
@@ -22,7 +23,6 @@ Then there will be two ways to import your StackExchange dump:
python manage.py load_stackexchange /path/to/your-se-data.zip
-In the case your database is not empty at the beginning of the process - **please do back it up**.
Zendesk
=======
@@ -38,3 +38,11 @@ Prepare your zendesk files: put all your .xml files into one directory and tar-z
Then run the import script::
python manage.py import_zendesk zendesk.tgz #file name is the parameter
+
+.. note::
+ It is possible that import script will make some mistakes in determining
+ which post in the group is the question, due to some specifics of zendesk
+ data format. If so, please enable feature
+ "Forum data rules"->"allow switching question with answer"
+ in :ref:`live settings <live-settings>` and use it in an admin or a moderator
+ account.
diff --git a/askbot/models/__init__.py b/askbot/models/__init__.py
index 74211c23..8fa01fd2 100644
--- a/askbot/models/__init__.py
+++ b/askbot/models/__init__.py
@@ -1373,6 +1373,9 @@ def user_add_missing_askbot_subscriptions(self):
def user_is_moderator(self):
return (self.status == 'm' and self.is_administrator() == False)
+def user_is_administrator_or_moderator(self):
+ return (self.is_administrator() or self.is_moderator())
+
def user_is_suspended(self):
return (self.status == 's')
@@ -1950,6 +1953,7 @@ User.add_to_class('mark_tags', user_mark_tags)
User.add_to_class('update_response_counts', user_update_response_counts)
User.add_to_class('can_have_strong_url', user_can_have_strong_url)
User.add_to_class('is_administrator', user_is_administrator)
+User.add_to_class('is_administrator_or_moderator', user_is_administrator_or_moderator)
User.add_to_class('set_admin_status', user_set_admin_status)
User.add_to_class('remove_admin_status', user_remove_admin_status)
User.add_to_class('is_moderator', user_is_moderator)
diff --git a/askbot/skins/default/templates/question.html b/askbot/skins/default/templates/question.html
index 4114865b..d0eadaef 100644
--- a/askbot/skins/default/templates/question.html
+++ b/askbot/skins/default/templates/question.html
@@ -264,7 +264,7 @@
</span>
{% endspaceless %}
{% endif %}
- {% if settings.ALLOW_SWAPPING_QUESTION_WITH_ANSWER %}{{ pipe() }}
+ {% if settings.ALLOW_SWAPPING_QUESTION_WITH_ANSWER and request.user.is_authenticated() and request.user.is_administrator_or_moderator() %}{{ pipe() }}
<span class="action-link">
<a id="swap-question-with-answer-{{answer.id}}">{% trans %}swap with question{% endtrans %}</a>
</span>