feat: update onboarding slide for new desk

This commit is contained in:
Shivam Mishra 2020-04-16 13:21:10 +05:30
parent 6c328e92cb
commit d2102c8f85
2 changed files with 6 additions and 33 deletions

View file

@ -1,4 +1,5 @@
{
"actions": [],
"autoname": "field:slide_title",
"creation": "2019-11-13 14:39:56.834658",
"doctype": "DocType",
@ -7,7 +8,6 @@
"field_order": [
"slide_title",
"app",
"slide_order",
"column_break_4",
"image_src",
"slide_module",
@ -24,8 +24,7 @@
"section_break_10",
"domains",
"column_break_12",
"help_links",
"is_completed"
"help_links"
],
"fields": [
{
@ -130,13 +129,6 @@
"label": "Reference Document Type",
"options": "DocType"
},
{
"default": "0",
"description": "Determines the order of the slide in the wizard. If the slide is not to be displayed, priority should be set to 0.",
"fieldname": "slide_order",
"fieldtype": "Int",
"label": "Slide Order"
},
{
"depends_on": "eval:doc.slide_type=='Information' || doc.slide_type=='Continue'",
"fieldname": "slide_module",
@ -149,17 +141,10 @@
"fieldname": "section_break_18",
"fieldtype": "Section Break",
"label": "Fields"
},
{
"default": "0",
"fieldname": "is_completed",
"fieldtype": "Check",
"hidden": 1,
"label": "Is Completed",
"print_hide": 1
}
],
"modified": "2019-12-04 10:50:43.528901",
"links": [],
"modified": "2020-04-14 17:50:54.458942",
"modified_by": "Administrator",
"module": "Desk",
"name": "Onboarding Slide",

View file

@ -10,15 +10,6 @@ from frappe.model.document import Document
from frappe.modules.export_file import export_to_files
class OnboardingSlide(Document):
def validate(self):
if self.slide_type == 'Continue' and frappe.db.exists('Onboarding Slide', {'slide_type': 'Continue', 'name': ('!=', self.name)}):
frappe.throw(_('An Onboarding Slide of Slide Type Continue already exists.'))
if self.slide_order:
same_order_slide = frappe.db.exists('Onboarding Slide', {'slide_order': self.slide_order, 'name': ('!=', self.name)})
if same_order_slide:
frappe.throw(_('An Onboarding Slide <b>{0}</b> with the same slide order already exists').format(same_order_slide))
def on_update(self):
if self.ref_doctype:
module = frappe.db.get_value('DocType', self.ref_doctype, 'module')
@ -30,8 +21,7 @@ def get_onboarding_slides_as_list():
slides = []
slide_docs = frappe.db.get_all('Onboarding Slide',
filters={'is_completed': 0},
or_filters={'slide_order': ('!=', 0), 'slide_type': 'Continue'},
order_by='slide_order')
or_filters={'slide_type': 'Continue'})
# to check if continue slide is required
first_slide = get_first_slide()
@ -93,7 +83,6 @@ def is_continue_slide_required(first_slide):
# check if there is any active slide which is not completed
return frappe.db.exists('Onboarding Slide', {
'is_completed': 0,
'slide_order': ('!=', 0),
'slide_type': ('!=', 'Continue')
})
@ -132,8 +121,7 @@ def mark_slide_as_completed(slide_title):
def get_first_slide():
slides = frappe.db.get_all('Onboarding Slide',
filters={'slide_order': ('!=', 0), 'slide_type': ('!=', 'Continue')},
order_by='slide_order',
filters={'slide_type': ('!=', 'Continue')},
fields=['name', 'is_completed']
)
return slides[0]