from . import __version__ as app_version app_name = "frappe_lms" app_title = "Frappe LMS" app_publisher = "Frappe" app_description = "Frappe LMS App" app_icon_url = "/assets/lms/images/lms-logo.png" app_icon_title = "Learning" app_icon_route = "/lms" app_color = "grey" app_email = "jannat@frappe.io" app_license = "AGPL" # Includes in
# ------------------ # include js, css files in header of desk.html # app_include_css = "/assets/lms/css/lms.css" # app_include_js = "/assets/lms/js/lms.js" # include js, css files in header of web template web_include_css = "lms.bundle.css" # web_include_css = "/assets/lms/css/lms.css" web_include_js = ["website.bundle.js"] # include custom scss in every website theme (without file extension ".scss") # website_theme_scss = "lms/public/scss/website" # include js, css files in header of web form # webform_include_js = {"doctype": "public/js/doctype.js"} # webform_include_css = {"doctype": "public/css/doctype.css"} # include js in page # page_js = {"page" : "public/js/file.js"} # include js in doctype views # doctype_js = {"doctype" : "public/js/doctype.js"} # doctype_list_js = {"doctype" : "public/js/doctype_list.js"} # doctype_tree_js = {"doctype" : "public/js/doctype_tree.js"} # doctype_calendar_js = {"doctype" : "public/js/doctype_calendar.js"} # Home Pages # ---------- # application home page (will override Website Settings) # home_page = "login" # website user home page (by Role) # role_home_page = { # "Role": "home_page" # } # Generators # ---------- # automatically create page for each record of this doctype # website_generators = ["Web Page"] # Installation # ------------ # before_install = "lms.install.before_install" after_install = "lms.install.after_install" after_sync = "lms.install.after_sync" before_uninstall = "lms.install.before_uninstall" setup_wizard_requires = "assets/lms/js/setup_wizard.js" # Desk Notifications # ------------------ # See frappe.core.notifications.get_notification_config # notification_config = "lms.notifications.get_notification_config" # Permissions # ----------- # Permissions evaluated in scripted ways # permission_query_conditions = { # "Event": "frappe.desk.doctype.event.event.get_permission_query_conditions", # } # # has_permission = { # "Event": "frappe.desk.doctype.event.event.has_permission", # } # DocType Class # --------------- # Override standard doctype classes override_doctype_class = { "User": "lms.overrides.user.CustomUser", "Web Template": "lms.overrides.web_template.CustomWebTemplate", } # Document Events # --------------- # Hook on document methods and events doc_events = { "*": { "on_change": [ "lms.lms.doctype.lms_badge.lms_badge.process_badges", ] }, "Discussion Reply": {"after_insert": "lms.lms.utils.handle_notifications"}, "Notification Log": {"on_change": "lms.lms.utils.publish_notifications"}, } # Scheduled Tasks # --------------- scheduler_events = { "hourly": [ "lms.lms.doctype.lms_certificate_request.lms_certificate_request.schedule_evals", "lms.lms.api.update_course_statistics", ], "daily": ["lms.job.doctype.job_opportunity.job_opportunity.update_job_openings"], } fixtures = ["Custom Field", "Function", "Industry", "LMS Category"] # Testing # ------- # before_tests = "lms.install.before_tests" # Overriding Methods # ------------------------------ # override_whitelisted_methods = { # "frappe.desk.search.get_names_for_mentions": "lms.lms.utils.get_names_for_mentions", } # # each overriding function accepts a `data` argument; # generated from the base implementation of the doctype dashboard, # along with any modifications made in other Frappe apps # override_doctype_dashboards = { # "Task": "lms.task.get_dashboard_data" # } # exempt linked doctypes from being automatically cancelled # # auto_cancel_exempted_doctypes = ["Auto Repeat"] # Add all simple route rules here website_route_rules = [ {"from_route": "/lms/