if user added himself/herself in the attendee list, then he/she can successfully create new meeting.
anyway, I changed the code as following, then user as owner is always has the permission to create/display the meeting.
def get_permission_query_conditions(user):
if not user: user = frappe.session.user
return """(attendee=%(user)s or tabMeeting.owner=%(user)s)""" % {
"user": frappe.db.escape(user),
}
def has_permission(doc, user):
if doc.is_new():
return True
if doc.owner==user or user in [d.attendee for d in doc.attendees]:
return True
return False
I tried to overwrite get_permission_query_conditions in custom app hooks, seems it does not work. so only way is to apply PR to merge into core.
I will try, but per my experience in the past, it is not so easy to be accepted into core.