fix to kb, delete question, ans
diff --git a/knowledge_base/page/kb_common/kb_common.js b/knowledge_base/page/kb_common/kb_common.js
index 1826f05..3e17b6f 100644
--- a/knowledge_base/page/kb_common/kb_common.js
+++ b/knowledge_base/page/kb_common/kb_common.js
@@ -19,12 +19,25 @@
this.line1.innerHTML = repl('By %(name)s | %(when)s', {
name: wn.utils.full_name(this.det.first_name, this.det.last_name),
when: wn.datetime.comment_when(this.det.modified)
- })
+ });
+
+ // allow system manager to delete questions / answers
+ if(has_common(user_roles, ['Administrator', 'System Manager'])) {
+ this.line1.innerHTML += ' | '
+ $ln(this.line1, 'delete', me.del);
+ }
}
this.make_vote = function() {
new KBPoints(this.line2, this.det.points, this.det._users_voted, this.doctype, this.det.name, this.det.owner);
-
+ }
+
+ this.del = function() {
+ this.innerHTML = 'deleting...'; this.disabled = 1;
+ $c_page('knowledge_base', 'questions', 'delete', {dt:me.doctype, dn:me.det.name}, function(r,rt) {
+ // reload the list
+ kb.list.run()
+ });
}
this.make_tags = function() {
diff --git a/knowledge_base/page/question_view/question_view.js b/knowledge_base/page/question_view/question_view.js
index ed11efc..422fb30 100644
--- a/knowledge_base/page/question_view/question_view.js
+++ b/knowledge_base/page/question_view/question_view.js
@@ -128,7 +128,7 @@
as_dict: 1,
no_results_message: 'No answers yet, be the first one to answer!',
render_row: function(body, data) {
- new KBAnswer(body, data)
+ new KBAnswer(body, data, me)
},
get_query: function() {
return repl("SELECT t1.name, t1.owner, t1.answer, t1.points, t1._users_voted, t2.first_name, "
@@ -150,7 +150,7 @@
// answer
// by xxx | on xxx
// points yyy
-KBAnswer = function(body, data) {
+KBAnswer = function(body, data, ans_list) {
body.className = 'qv-answer';
new EditableText({
parent: body,
@@ -169,7 +169,7 @@
det: data,
with_tags: 0,
doctype: 'Answer'
- }, null)
+ }, ans_list)
}
diff --git a/knowledge_base/page/questions/questions.py b/knowledge_base/page/questions/questions.py
index cbb6a25..5f8b209 100644
--- a/knowledge_base/page/questions/questions.py
+++ b/knowledge_base/page/questions/questions.py
@@ -35,3 +35,11 @@
(p, cstr(res[1]) + ',' + webnotes.user.name, args['dn']))
return p
+
+def delete(arg):
+ """
+ delete a question or answer (called from kb toolbar)
+ """
+ args = load_json(arg)
+ from webnotes.model import delete_doc
+ delete_doc(args['dt'], args['dn'])
\ No newline at end of file