* Removed comment_type 'updated' * New doctype activity log * Moved feed.py to activity_log * Updated feed gets stored in activity_log * Activity page fetches feed from activity_log * feed match condition change * modified * modified hooks.py * modified sessions.py * patch added * naming in patch * moved login, logout feed to activity_log * changes in auth.py, hooks.py * deleted doctype authentication_log and added test cases * added utils.py in core * moved some methods from communication.py to utils.py
34 lines
No EOL
919 B
Python
34 lines
No EOL
919 B
Python
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
|
|
# MIT License. See license.txt
|
|
|
|
import frappe
|
|
from frappe import _
|
|
|
|
def get_parent_doc(doc):
|
|
"""Returns document of `reference_doctype`, `reference_doctype`"""
|
|
if not hasattr(doc, "parent_doc"):
|
|
if doc.reference_doctype and doc.reference_name:
|
|
doc.parent_doc = frappe.get_doc(doc.reference_doctype, doc.reference_name)
|
|
else:
|
|
doc.parent_doc = None
|
|
return doc.parent_doc
|
|
|
|
def set_timeline_doc(doc):
|
|
"""Set timeline_doctype and timeline_name"""
|
|
parent_doc = get_parent_doc(doc)
|
|
if (doc.timeline_doctype and doc.timeline_name) or not parent_doc:
|
|
return
|
|
|
|
timeline_field = parent_doc.meta.timeline_field
|
|
if not timeline_field:
|
|
return
|
|
|
|
doctype = parent_doc.meta.get_link_doctype(timeline_field)
|
|
name = parent_doc.get(timeline_field)
|
|
|
|
if doctype and name:
|
|
doc.timeline_doctype = doctype
|
|
doc.timeline_name = name
|
|
|
|
else:
|
|
return |