Esempio n. 1
0
    def validate(self):
        if self.reference_doctype and self.reference_name:
            if not self.reference_owner:
                self.reference_owner = frappe.db.get_value(
                    self.reference_doctype, self.reference_name, "owner")

            # prevent communication against a child table
            if frappe.get_meta(self.reference_doctype).istable:
                frappe.throw(
                    _("Cannot create a {0} against a child document: {1}"
                      ).format(_(self.communication_type),
                               _(self.reference_doctype)))

        if not self.user:
            self.user = frappe.session.user

        if not self.subject:
            self.subject = strip_html((self.content or "")[:141])

        if not self.sent_or_received:
            self.sent_or_received = "Sent"

        self.set_status()
        self.set_sender_full_name()
        validate_email(self)
        self.set_timeline_doc()
Esempio n. 2
0
    def validate(self):
        if self.reference_doctype and self.reference_name:
            if not self.reference_owner:
                self.reference_owner = frappe.db.get_value(self.reference_doctype, self.reference_name, "owner")

                # prevent communication against a child table
            if frappe.get_meta(self.reference_doctype).istable:
                frappe.throw(
                    _("Cannot create a {0} against a child document: {1}").format(
                        _(self.communication_type), _(self.reference_doctype)
                    )
                )

        if not self.user:
            self.user = frappe.session.user

        if not self.subject:
            self.subject = strip_html((self.content or "")[:141])

        if not self.sent_or_received:
            self.sent_or_received = "Sent"

        self.set_status()
        self.set_sender_full_name()
        validate_email(self)
        validate_comment(self)
        self.set_timeline_doc()
Esempio n. 3
0
	def validate(self):
		self.validate_reference()

		if not self.user:
			self.user = frappe.session.user

		if not self.subject:
			self.subject = strip_html((self.content or "")[:141])

		if not self.sent_or_received:
			self.seen = 1
			self.sent_or_received = "Sent"

		self.set_status()
		self.set_sender_full_name()

		validate_email(self)
		set_timeline_doc(self)
Esempio n. 4
0
	def validate(self):
		self.validate_reference()

		if not self.user:
			self.user = frappe.session.user

		if not self.subject:
			self.subject = strip_html((self.content or "")[:141])

		if not self.sent_or_received:
			self.seen = 1
			self.sent_or_received = "Sent"

		self.set_status()
		self.set_sender_full_name()

		validate_email(self)
		set_timeline_doc(self)
Esempio n. 5
0
    def validate(self):
        if self.reference_doctype and self.reference_name:
            if not self.reference_owner:
                self.reference_owner = frappe.db.get_value(
                    self.reference_doctype, self.reference_name, "owner")

            # prevent communication against a child table
            if frappe.get_meta(self.reference_doctype).istable:
                frappe.throw(
                    _("Cannot create a {0} against a child document: {1}"
                      ).format(_(self.communication_type),
                               _(self.reference_doctype)))

            # Prevent circular linking of Communication DocTypes
            if self.reference_doctype == "Communication":
                circular_linking = False
                doc = get_parent_doc(self)
                while doc.reference_doctype == "Communication":
                    if get_parent_doc(doc).name == self.name:
                        circular_linking = True
                        break
                    doc = get_parent_doc(doc)
                if circular_linking:
                    frappe.throw(
                        _("Please make sure the Reference Communication Docs are not circularly linked."
                          ), frappe.CircularLinkingError)

        if not self.user:
            self.user = frappe.session.user

        if not self.subject:
            self.subject = strip_html((self.content or "")[:141])

        if not self.sent_or_received:
            self.seen = 1
            self.sent_or_received = "Sent"

        self.set_status()
        self.set_sender_full_name()
        validate_email(self)
        set_timeline_doc(self)
Esempio n. 6
0
    def validate(self):
        self.validate_reference()

        if not self.user:
            self.user = frappe.session.user

        if not self.subject:
            self.subject = strip_html((self.content or "")[:141])

        if not self.sent_or_received:
            self.seen = 1
            self.sent_or_received = "Sent"

        self.set_status()
        self.set_sender_full_name()

        validate_email(self)

        if self.communication_medium == "Email":
            self.set_timeline_links()
            self.deduplicate_timeline_links()
Esempio n. 7
0
	def validate(self):
		if self.reference_doctype and self.reference_name:
			if not self.reference_owner:
				self.reference_owner = frappe.db.get_value(self.reference_doctype, self.reference_name, "owner")

			# prevent communication against a child table
			if frappe.get_meta(self.reference_doctype).istable:
				frappe.throw(_("Cannot create a {0} against a child document: {1}")
					.format(_(self.communication_type), _(self.reference_doctype)))

			# Prevent circular linking of Communication DocTypes
			if self.reference_doctype == "Communication":
				circular_linking = False
				doc = get_parent_doc(self)
				while doc.reference_doctype == "Communication":
					if get_parent_doc(doc).name==self.name:
						circular_linking = True
						break
					doc = get_parent_doc(doc)
				if circular_linking:
					frappe.throw(_("Please make sure the Reference Communication Docs are not circularly linked."), frappe.CircularLinkingError)

		if not self.user:
			self.user = frappe.session.user

		if not self.subject:
			self.subject = strip_html((self.content or "")[:141])

		if not self.sent_or_received:
			self.seen = 1
			self.sent_or_received = "Sent"

		self.set_status()
		self.set_sender_full_name()
		validate_email(self)
		set_timeline_doc(self)