seitime-frappe/frappe/templates/includes/feedback/feedback.html
2021-11-10 20:42:56 +05:30

43 lines
No EOL
1 KiB
HTML

<div class="feedback-item mr-3">
<span class="like-icon"></span>
<span class="like-count"></span>
</div>
<script type="text/javascript">
frappe.ready(() => {
let like = parseInt("{{ user_feedback.like or 0 }}");
let like_count = parseInt("{{ like_count or 0 }}");
let update_like = function() {
like = !like;
like ? like_count++ : like_count--;
toggle_like_icon(like);
$('.like-count').text(like_count);
}
let toggle_like_icon = function(active) {
active ? $('.like-icon').addClass('gray') : $('.like-icon').removeClass('gray');
}
$('.like-icon').append(frappe.utils.icon('heart', 'md'))
toggle_like_icon(like);
$('.like-count').text(like_count);
$('.like-icon').click(() => {
update_like();
update_feedback();
})
let update_feedback = function() {
return frappe.call({
method: "frappe.templates.includes.feedback.feedback.give_feedback",
args: {
reference_doctype: "{{ reference_doctype or doctype }}",
reference_name: "{{ reference_name or name }}",
like
}
});
}
});
</script>