You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

159 lines
4.9 KiB

  1. from __future__ import unicode_literals
  2. app_name = "frappe"
  3. app_title = "Frappe Framework"
  4. app_publisher = "Frappe Technologies Pvt. Ltd."
  5. app_description = "Full stack web framework with Python, Javascript, MariaDB, Redis, Node"
  6. app_icon = "octicon octicon-circuit-board"
  7. app_version = "6.15.1"
  8. app_color = "orange"
  9. source_link = "https://github.com/frappe/frappe"
  10. app_license = "MIT"
  11. app_email = "info@frappe.io"
  12. before_install = "frappe.utils.install.before_install"
  13. after_install = "frappe.utils.install.after_install"
  14. # website
  15. app_include_js = [
  16. "assets/js/desk.min.js",
  17. "assets/js/editor.min.js",
  18. "assets/js/list.min.js",
  19. "assets/js/form.min.js",
  20. "assets/js/report.min.js",
  21. "assets/js/module.min.js"
  22. ]
  23. app_include_css = [
  24. "assets/css/desk.min.css",
  25. "assets/css/list.min.css",
  26. "assets/css/form.min.css",
  27. "assets/css/report.min.css",
  28. "assets/css/module.min.css"
  29. ]
  30. web_include_js = [
  31. "website_script.js"
  32. ]
  33. bootstrap = "assets/frappe/css/bootstrap.css"
  34. web_include_css = [
  35. "assets/css/frappe-web.css"
  36. ]
  37. website_route_rules = [
  38. {"from_route": "/blog", "to_route": "Blog Post"},
  39. {"from_route": "/blog/<category>", "to_route": "Blog Post"}
  40. ]
  41. website_context = {
  42. "hero": {
  43. "blog": "templates/includes/blog/hero.html"
  44. }
  45. }
  46. write_file_keys = ["file_url", "file_name"]
  47. notification_config = "frappe.core.notifications.get_notification_config"
  48. before_tests = "frappe.utils.install.before_tests"
  49. website_generators = ["Web Page", "Blog Post", "Blog Category", "Web Form"]
  50. email_append_to = ["Event", "ToDo", "Communication"]
  51. calendars = ["Event"]
  52. # login
  53. on_session_creation = [
  54. "frappe.desk.doctype.feed.feed.login_feed",
  55. "frappe.core.doctype.user.user.notifify_admin_access_to_system_manager"
  56. ]
  57. # permissions
  58. permission_query_conditions = {
  59. "Event": "frappe.desk.doctype.event.event.get_permission_query_conditions",
  60. "ToDo": "frappe.desk.doctype.todo.todo.get_permission_query_conditions",
  61. "User": "frappe.core.doctype.user.user.get_permission_query_conditions",
  62. "Feed": "frappe.desk.doctype.feed.feed.get_permission_query_conditions",
  63. "Note": "frappe.desk.doctype.note.note.get_permission_query_conditions"
  64. }
  65. has_permission = {
  66. "Event": "frappe.desk.doctype.event.event.has_permission",
  67. "ToDo": "frappe.desk.doctype.todo.todo.has_permission",
  68. "User": "frappe.core.doctype.user.user.has_permission",
  69. "Feed": "frappe.desk.doctype.feed.feed.has_permission",
  70. "Note": "frappe.desk.doctype.note.note.has_permission"
  71. }
  72. standard_queries = {
  73. "User": "frappe.core.doctype.user.user.user_query"
  74. }
  75. doc_events = {
  76. "*": {
  77. "after_insert": "frappe.email.doctype.email_alert.email_alert.trigger_email_alerts",
  78. "validate": "frappe.email.doctype.email_alert.email_alert.trigger_email_alerts",
  79. "on_update": [
  80. "frappe.desk.notifications.clear_doctype_notifications",
  81. "frappe.email.doctype.email_alert.email_alert.trigger_email_alerts",
  82. "frappe.desk.doctype.feed.feed.update_feed"
  83. ],
  84. "after_rename": "frappe.desk.notifications.clear_doctype_notifications",
  85. "on_submit": [
  86. "frappe.email.doctype.email_alert.email_alert.trigger_email_alerts",
  87. "frappe.desk.doctype.feed.feed.update_feed"
  88. ],
  89. "on_cancel": [
  90. "frappe.desk.notifications.clear_doctype_notifications",
  91. "frappe.email.doctype.email_alert.email_alert.trigger_email_alerts"
  92. ],
  93. "on_trash": "frappe.desk.notifications.clear_doctype_notifications"
  94. }
  95. }
  96. scheduler_events = {
  97. "all": [
  98. "frappe.email.bulk.flush",
  99. "frappe.email.doctype.email_account.email_account.pull",
  100. "frappe.email.doctype.email_account.email_account.notify_unreplied",
  101. "frappe.utils.error.collect_error_snapshots",
  102. ],
  103. "daily": [
  104. "frappe.email.bulk.clear_outbox",
  105. "frappe.desk.notifications.clear_notifications",
  106. "frappe.core.doctype.scheduler_log.scheduler_log.set_old_logs_as_seen",
  107. "frappe.desk.doctype.event.event.send_event_digest",
  108. "frappe.sessions.clear_expired_sessions",
  109. "frappe.email.doctype.email_alert.email_alert.trigger_daily_alerts",
  110. "frappe.async.remove_old_task_logs",
  111. ],
  112. "daily_long": [
  113. "frappe.integrations.doctype.dropbox_backup.dropbox_backup.take_backups_daily"
  114. ],
  115. "weekly_long": [
  116. "frappe.integrations.doctype.dropbox_backup.dropbox_backup.take_backups_weekly"
  117. ]
  118. }
  119. default_background = "/assets/frappe/images/ui/into-the-dawn.jpg"
  120. get_translated_dict = {
  121. ("doctype", "System Settings"): "frappe.geo.country_info.get_translated_dict",
  122. ("page", "setup-wizard"): "frappe.geo.country_info.get_translated_dict"
  123. }
  124. sounds = [
  125. {"name": "email", "src": "/assets/frappe/sounds/email.mp3"},
  126. {"name": "submit", "src": "/assets/frappe/sounds/submit.mp3"},
  127. {"name": "cancel", "src": "/assets/frappe/sounds/cancel.mp3"},
  128. {"name": "delete", "src": "/assets/frappe/sounds/delete.mp3"},
  129. {"name": "click", "src": "/assets/frappe/sounds/click.mp3"},
  130. {"name": "error", "src": "/assets/frappe/sounds/error.mp3"},
  131. # {"name": "alert", "src": "/assets/frappe/sounds/alert.mp3"},
  132. # {"name": "chime", "src": "/assets/frappe/sounds/chime.mp3"},
  133. ]