feat: project likes

This commit is contained in:
pateljannat
2021-02-24 10:52:25 +05:30
parent 97db066922
commit 063c7b67c5
3 changed files with 33 additions and 5 deletions

View File

@@ -65,4 +65,28 @@ def join_request(id, action):
frappe.throw('A project cannot have more than 4 members')
frappe.db.set_value('Community Project Member', id, 'status', 'Accepted')
else:
frappe.db.set_value('Community Project Member', id, 'status', 'Rejected')
frappe.db.set_value('Community Project Member', id, 'status', 'Rejected')
def has_already_liked(project):
try:
likes = frappe.get_doc("Community Project Like", {"project": project, "owner": frappe.session.user})
return likes
except frappe.DoesNotExistError:
return None
@frappe.whitelist()
def like(project):
liked_project = has_already_liked(project)
if liked_project:
action= "Unliked"
liked_project.delete()
else:
action= "Liked"
frappe.get_doc({"doctype": "Community Project Like","project": project}).save()
likes = frappe.db.get_all("Community Project Like", {"project": project})
frappe.db.set_value("Community Project", project, "likes", len(likes))
return {
"action": action,
"likes": len(likes)
}