43 lines
1.0 KiB
Python
43 lines
1.0 KiB
Python
import frappe
|
|
|
|
|
|
def execute():
|
|
roles = ["LMS Student", "Moderator", "Course Creator", "Class Evaluator"]
|
|
for role in roles:
|
|
add_perm_for_discussion_topic(role)
|
|
add_perm_for_discussion_reply(role)
|
|
|
|
|
|
def add_perm_for_discussion_topic(role):
|
|
topic_roles = frappe.permissions.get_doctype_roles("Discussion Topic")
|
|
if role in topic_roles:
|
|
return
|
|
|
|
topic_perm = frappe.new_doc("Custom DocPerm")
|
|
topic_perm.parent = "Discussion Topic"
|
|
topic_perm.role = role
|
|
topic_perm.if_owner = 1
|
|
topic_perm.read = 1
|
|
topic_perm.write = 1
|
|
topic_perm.create = 1
|
|
topic_perm.delete = 1
|
|
topic_perm.insert()
|
|
frappe.db.commit()
|
|
|
|
|
|
def add_perm_for_discussion_reply(role):
|
|
reply_roles = frappe.permissions.get_doctype_roles("Discussion Reply")
|
|
if role in reply_roles:
|
|
return
|
|
|
|
reply_perm = frappe.new_doc("Custom DocPerm")
|
|
reply_perm.parent = "Discussion Reply"
|
|
reply_perm.role = role
|
|
reply_perm.if_owner = 1
|
|
reply_perm.read = 1
|
|
reply_perm.write = 1
|
|
reply_perm.create = 1
|
|
reply_perm.delete = 1
|
|
reply_perm.insert()
|
|
frappe.db.commit()
|