fix: discussions template
This commit is contained in:
@@ -29,3 +29,7 @@ def save_message(reply, topic):
|
|||||||
"reply": reply,
|
"reply": reply,
|
||||||
"topic": topic
|
"topic": topic
|
||||||
}).save(ignore_permissions=True)
|
}).save(ignore_permissions=True)
|
||||||
|
|
||||||
|
@frappe.whitelist()
|
||||||
|
def get_docname(route):
|
||||||
|
return frappe.db.get_value("Web Page", {"route": route}, ["name"])
|
||||||
|
|||||||
@@ -1 +1,2 @@
|
|||||||
{{ widgets.DiscussionMessage }}
|
{% set docname = frappe.db.get_value("Web Page", {"route": ""}, ["name"])%}
|
||||||
|
{{ widgets.DiscussionMessage(doctype="Web Page", docname=docname) }}
|
||||||
|
|||||||
@@ -23,12 +23,16 @@
|
|||||||
{% endfor %}
|
{% endfor %}
|
||||||
</div>
|
</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
|
{% if not topics %}
|
||||||
|
<p id="no-discussions" class="text-center"> No discussions yet. </p>
|
||||||
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
frappe.ready(() => {
|
frappe.ready(() => {
|
||||||
setup_socket_io();
|
setup_socket_io();
|
||||||
|
|
||||||
|
set_docname_if_missing();
|
||||||
|
|
||||||
$(document).on("click", ".reply", (e) => {
|
$(document).on("click", ".reply", (e) => {
|
||||||
show_new_topic_modal(e);
|
show_new_topic_modal(e);
|
||||||
})
|
})
|
||||||
@@ -65,14 +69,14 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
var publish_message = (data) => {
|
var publish_message = (data) => {
|
||||||
$(".comment-field").val("");
|
|
||||||
$("#discussion-modal").modal("hide");
|
|
||||||
|
|
||||||
if ($(`.topic-parent[data-topic=${data.topic_info.name}]`).length) {
|
if ($(`.topic-parent[data-topic=${data.topic_info.name}]`).length) {
|
||||||
|
post_message_cleanup();
|
||||||
$(`.topic-parent[data-topic=${data.topic_info.name}]`).append(data.template);
|
$(`.topic-parent[data-topic=${data.topic_info.name}]`).append(data.template);
|
||||||
}
|
}
|
||||||
|
|
||||||
else if ((decodeURIComponent($(".discussions-section").attr("data-doctype")) == data.topic_info.reference_doctype
|
else if ((decodeURIComponent($(".discussions-section").attr("data-doctype")) == data.topic_info.reference_doctype
|
||||||
&& decodeURIComponent($(".discussions-section").attr("data-docname")) == data.topic_info.reference_docname)) {
|
&& decodeURIComponent($(".discussions-section").attr("data-docname")) == data.topic_info.reference_docname)) {
|
||||||
|
post_message_cleanup();
|
||||||
var html = `<div class="topic-parent" data-topic="${data.topic_info.name}">
|
var html = `<div class="topic-parent" data-topic="${data.topic_info.name}">
|
||||||
<div class="font-weight-bold mb-5">${data.topic_info.title}</div>
|
<div class="font-weight-bold mb-5">${data.topic_info.title}</div>
|
||||||
${data.template}
|
${data.template}
|
||||||
@@ -80,4 +84,24 @@
|
|||||||
$(".discussions-section").prepend(html);
|
$(".discussions-section").prepend(html);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var post_message_cleanup = () => {
|
||||||
|
$(".comment-field").val("");
|
||||||
|
$("#discussion-modal").modal("hide");
|
||||||
|
$("#no-discussions").addClass("hide");
|
||||||
|
}
|
||||||
|
|
||||||
|
var set_docname_if_missing = () => {
|
||||||
|
if ($("[data-docname='None']").length) {
|
||||||
|
frappe.call({
|
||||||
|
method: "community.community.doctype.discussion_topic.discussion_topic.get_docname",
|
||||||
|
args: {
|
||||||
|
"route": window.location.href.split("/").slice(-1)[0]
|
||||||
|
},
|
||||||
|
callback: (data) => {
|
||||||
|
$("[data-docname='None']").attr("data-docname", data.message);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
Reference in New Issue
Block a user