NEMO-CE 7.3.9__tar.gz → 7.3.10__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (604) hide show
  1. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/kiosk.html +1 -1
  2. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/urls.py +8 -0
  3. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/views.py +10 -0
  4. nemo_ce-7.3.10/NEMO/migrations/0142_alter_tool__adjustment_request_reviewers_and_more.py +472 -0
  5. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/models.py +56 -6
  6. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_events/schedule_training_events_list.html +5 -0
  7. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_requests/training_requests.html +5 -1
  8. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_urls.py +3 -0
  9. {nemo_ce-7.3.9 → nemo_ce-7.3.10/NEMO_CE.egg-info}/PKG-INFO +1 -1
  10. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO_CE.egg-info/SOURCES.txt +1 -0
  11. {nemo_ce-7.3.9/NEMO_CE.egg-info → nemo_ce-7.3.10}/PKG-INFO +1 -1
  12. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/pyproject.toml +1 -1
  13. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/LICENSE +0 -0
  14. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/__init__.py +0 -0
  15. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/actions.py +0 -0
  16. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/admin.py +0 -0
  17. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/__init__.py +0 -0
  18. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/__init__.py +0 -0
  19. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/apps.py +0 -0
  20. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/static/area_access/area_access.css +0 -0
  21. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/already_logged_in.html +0 -0
  22. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/badge_not_found.html +0 -0
  23. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/base.html +0 -0
  24. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/choose_area.html +0 -0
  25. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/choose_project.html +0 -0
  26. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/door_is_open.html +0 -0
  27. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/farewell_screen.html +0 -0
  28. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/inactive.html +0 -0
  29. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/login_success.html +0 -0
  30. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/logout_success.html +0 -0
  31. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/logout_warning.html +0 -0
  32. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/no_active_projects.html +0 -0
  33. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/not_logged_in.html +0 -0
  34. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/physical_access_denied.html +0 -0
  35. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/resource_unavailable.html +0 -0
  36. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/templates/area_access/welcome_screen.html +0 -0
  37. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/urls.py +0 -0
  38. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/area_access/views.py +0 -0
  39. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/__init__.py +0 -0
  40. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/apps.py +0 -0
  41. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/static/kiosk/kiosk.css +0 -0
  42. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/acknowledgement.html +0 -0
  43. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/category_choices.html +0 -0
  44. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/choices.html +0 -0
  45. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/consumables.html +0 -0
  46. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/consumables_order.html +0 -0
  47. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/error.html +0 -0
  48. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/individual_reservation.html +0 -0
  49. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/success.html +0 -0
  50. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/tool_categories.html +0 -0
  51. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/tool_information.html +0 -0
  52. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/tool_post_comment.html +0 -0
  53. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/tool_project_selection_snippet.html +0 -0
  54. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/tool_report_problem.html +0 -0
  55. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/tool_reservation.html +0 -0
  56. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/kiosk/templates/kiosk/tool_reservation_extra.html +0 -0
  57. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/__init__.py +0 -0
  58. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/management/__init__.py +0 -0
  59. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/management/commands/__init__.py +0 -0
  60. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/management/commands/makemigrations.py +0 -0
  61. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migration_utils.py +0 -0
  62. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0001_ce_tool_accessories.py +0 -0
  63. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0002_ce_tool_reservation_required.py +0 -0
  64. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0003_ce_training_module.py +0 -0
  65. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0004_ce_qualification_levels.py +0 -0
  66. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0005_ce_add_project_to_training_request.py +0 -0
  67. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0006_ce_qualification_history_in_training.py +0 -0
  68. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0007_ce_recording_training_events.py +0 -0
  69. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0008_ce_qualification_level_in_training_history.py +0 -0
  70. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0009_ce_add_tool_grant_qualification_levels.py +0 -0
  71. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0010_ce_add_invitation_only_training.py +0 -0
  72. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0011_ce_shadowing_verification.py +0 -0
  73. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0012_ce_notification_types_update.py +0 -0
  74. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0013_ce_shadowing_reviewers_in_tool.py +0 -0
  75. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0014_ce_remove_default_value_tool_shadowing.py +0 -0
  76. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0015_ce_precursor_configurations.py +0 -0
  77. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0016_ce_precursor_config_allow_duplicates.py +0 -0
  78. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0017_ce_training_request_message.py +0 -0
  79. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0018_ce_training_qualification.py +0 -0
  80. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0019_tool_training_details_without_area_access.py +0 -0
  81. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0020_training_events_auto_cancel.py +0 -0
  82. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0021_ce_tool_logout_grace_period.py +0 -0
  83. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0022_ce_training_technique_description.py +0 -0
  84. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0023_ce_training_qualification_levels.py +0 -0
  85. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0024_ce_training_location.py +0 -0
  86. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0025_ce_charfield_max_length_constants.py +0 -0
  87. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0026_ce_qualification_level_fulfill_training_option.py +0 -0
  88. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/0027_ce_qualification_level_during_closures.py +0 -0
  89. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/apps/nemo_ce/migrations/__init__.py +0 -0
  90. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/constants.py +0 -0
  91. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/context_processors.py +0 -0
  92. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/decorators.py +0 -0
  93. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/evaluators.py +0 -0
  94. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/exceptions.py +0 -0
  95. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/fields.py +0 -0
  96. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/forms.py +0 -0
  97. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/interlocks.py +0 -0
  98. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/log.py +0 -0
  99. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/__init__.py +0 -0
  100. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/__init__.py +0 -0
  101. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/area_auto_logout_users.py +0 -0
  102. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/auto_cancel_training_sessions.py +0 -0
  103. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/auto_validate_charges.py +0 -0
  104. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/cancel_unused_reservations.py +0 -0
  105. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/check_and_update_wait_list.py +0 -0
  106. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/create_closure_alerts.py +0 -0
  107. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/deactivate_access_expired_users.py +0 -0
  108. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/manage_recurring_charges.py +0 -0
  109. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/manage_tool_qualifications.py +0 -0
  110. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_grant_access.py +0 -0
  111. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_interlock_usage_report.py +0 -0
  112. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_out_of_time_reservation_notification.py +0 -0
  113. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_reservation_ending_reminders.py +0 -0
  114. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_reservation_reminders.py +0 -0
  115. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_scheduled_outage_reminders.py +0 -0
  116. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_usage_reminders.py +0 -0
  117. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_user_access_expiration_reminders.py +0 -0
  118. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/management/commands/send_email_weekend_access_notification.py +0 -0
  119. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/middleware.py +0 -0
  120. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0001_version_1_0_0.py +0 -0
  121. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0002_version_1_0_0_squashed.py +0 -0
  122. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0012_version_2_0_0_squashed.py +0 -0
  123. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0020_version_3_0_0_squashed.py +0 -0
  124. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0038_version_4_0_0_squashed.py +0 -0
  125. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0055_reservationconfigurationoption.py +0 -0
  126. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0056_version_5_2_0.py +0 -0
  127. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0057_version_5_3_0.py +0 -0
  128. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0058_reservation_confirmation_override_prefs.py +0 -0
  129. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0059_tool_pre_usage_questions.py +0 -0
  130. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0060_add_impersonate_permission.py +0 -0
  131. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0061_alter_interlock_unique_together.py +0 -0
  132. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0062_migrate_email_upcoming_reservation.py +0 -0
  133. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0063_knowledge_base.py +0 -0
  134. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0064_consumable_self_checkout_only_users.py +0 -0
  135. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0065_door_adjacent_area.py +0 -0
  136. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0066_tool_ask_to_leave_area_when_done_using.py +0 -0
  137. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0067_project_allow_staff_charges.py +0 -0
  138. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0068_door_multiple_areas.py +0 -0
  139. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0069_version_5_5_0.py +0 -0
  140. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0070_calendar_axis_time_format_rename.py +0 -0
  141. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0071_wait_list.py +0 -0
  142. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0072_documents_display_order.py +0 -0
  143. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0073_knowledge_safety_items_display_order.py +0 -0
  144. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0074_scheduled_outage_reminders.py +0 -0
  145. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0075_adjustmentrequest_applied.py +0 -0
  146. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0076_default_display_order.py +0 -0
  147. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0077_interlock_name.py +0 -0
  148. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0078_version_5_6_0.py +0 -0
  149. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0079_user_active_access_expiration_verbose_names.py +0 -0
  150. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0080_version_6_0_0.py +0 -0
  151. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0081_oracle_django_4_rename.py +0 -0
  152. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0082_alter_userpreferences_tool_task_notifications.py +0 -0
  153. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0083_toolcredentials.py +0 -0
  154. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0084_remove_tool__allow_delayed_logoff_and_more.py +0 -0
  155. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0085_contactinformation_title_and_more.py +0 -0
  156. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0086_adjustmentrequest_new_quantity.py +0 -0
  157. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0087_version_7_0_0.py +0 -0
  158. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0088_alter_configurationoption_options.py +0 -0
  159. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0089_door_farewell_message.py +0 -0
  160. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0090_toolusagecounter_counter_direction_and_more.py +0 -0
  161. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0091_adjustmentrequest_waive_charges.py +0 -0
  162. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0092_alter_accounttype_name_alter_alert_category_and_more.py +0 -0
  163. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0093_trainingsession_usage_event_usageevent_training.py +0 -0
  164. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0094_interlockcard_extra_args.py +0 -0
  165. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0095_reservationquestions_enabled.py +0 -0
  166. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0096_alter_landingpagechoice_notifications_and_more.py +0 -0
  167. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0097_fundtype_project_fund_types.py +0 -0
  168. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0098_tool_area_maximum_future_reservations.py +0 -0
  169. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0099_rename_fundtype_projecttype_and_more.py +0 -0
  170. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0100_staff_assistance_requests.py +0 -0
  171. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0101_alter_emaillog_category.py +0 -0
  172. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0102_version_7_0_1.py +0 -0
  173. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0103_alter_projectdocuments_display_order_and_more.py +0 -0
  174. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0104_version_7_0_2.py +0 -0
  175. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0105_version_7_1_0.py +0 -0
  176. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0106_toolusagecounter_tool_pre_post_usage_question.py +0 -0
  177. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0107_customization_remote_work_on_behalf_update.py +0 -0
  178. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0108_landingpagechoice_view_permission.py +0 -0
  179. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0109_customization_area_logout_already_logged_in_update.py +0 -0
  180. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0110_version_7_1_1.py +0 -0
  181. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0111_version_7_1_3.py +0 -0
  182. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0112_fix_project_name_uniqueness.py +0 -0
  183. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0113_version_7_2_0.py +0 -0
  184. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0114_alter_temporaryphysicalaccess_options_tool__staff.py +0 -0
  185. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0115_tool__properties.py +0 -0
  186. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0116_comment_pinned.py +0 -0
  187. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0117_usageevent_has_ended.py +0 -0
  188. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0118_areaaccessrecord_has_ended.py +0 -0
  189. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0119_taskstatus_notify_tool_staff.py +0 -0
  190. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0120_alter_userpreferences_options_and_more.py +0 -0
  191. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0121_version_7_3_0.py +0 -0
  192. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0122_user_managed_accounts.py +0 -0
  193. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0123_account_note.py +0 -0
  194. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0124_userpreferences_login_redirect_url.py +0 -0
  195. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0125_alter_reservationquestions_name_toolusagequestions.py +0 -0
  196. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0126_area_abuse_weight_tool__abuse_weight.py +0 -0
  197. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0127_usercalendartoollist.py +0 -0
  198. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0128_adjustmentrequest_new_project.py +0 -0
  199. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0129_adjustmentrequest_original_end_and_more.py +0 -0
  200. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0130_reservation_note_alter_tool__staff.py +0 -0
  201. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0131_user_managed_users.py +0 -0
  202. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0132_toolusagequestions_users_and_tools_and_more.py +0 -0
  203. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0133_toolusagequestions_only_for_groups.py +0 -0
  204. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0134_usageevent_note.py +0 -0
  205. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0135_tool__problem_shutdown_enabled.py +0 -0
  206. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0136_tool__requires_area_occupancy_minimum.py +0 -0
  207. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0137_area_nemo_area_tree_id_lft_idx.py +0 -0
  208. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0138_area_late_cancellation_reservation_threshold_and_more.py +0 -0
  209. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0139_unplannedoutage.py +0 -0
  210. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0140_alter_user_options.py +0 -0
  211. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/0141_toolqualificationexpiration.py +0 -0
  212. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations/__init__.py +0 -0
  213. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/migrations_utils.py +0 -0
  214. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/mixins.py +0 -0
  215. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/model_tree.py +0 -0
  216. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/parsers.py +0 -0
  217. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/permissions.py +0 -0
  218. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/plugins/__init__.py +0 -0
  219. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/plugins/utils.py +0 -0
  220. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/policy.py +0 -0
  221. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/properties_schemas.py +0 -0
  222. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/provisioning.py +0 -0
  223. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/rates.py +0 -0
  224. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/rest_filter_backend.py +0 -0
  225. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/rest_pagination.py +0 -0
  226. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/serializers.py +0 -0
  227. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/admin/dynamic_form_preview/dynamic_form_preview.css +0 -0
  228. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/admin/dynamic_form_preview/dynamic_form_preview.js +0 -0
  229. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/admin/json_editor/jsoneditor-django.css +0 -0
  230. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/admin/json_editor/jsoneditor.min.js +0 -0
  231. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/admin/json_editor/jsoneditor_widget.js +0 -0
  232. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/admin/physical_access_level/access_level.js +0 -0
  233. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/admin/time_options_override.js +0 -0
  234. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/admin/tool/tool.js +0 -0
  235. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/badge_reader.js +0 -0
  236. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/css/bootstrap-theme.css +0 -0
  237. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/css/bootstrap-theme.css.map +0 -0
  238. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/css/bootstrap-theme.min.css +0 -0
  239. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/css/bootstrap.css +0 -0
  240. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/css/bootstrap.css.map +0 -0
  241. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/css/bootstrap.min.css +0 -0
  242. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/fonts/glyphicons-halflings-regular.eot +0 -0
  243. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/fonts/glyphicons-halflings-regular.svg +0 -0
  244. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/fonts/glyphicons-halflings-regular.ttf +0 -0
  245. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/fonts/glyphicons-halflings-regular.woff +0 -0
  246. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/fonts/glyphicons-halflings-regular.woff2 +0 -0
  247. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/js/bootstrap.js +0 -0
  248. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/bootstrap/js/bootstrap.min.js +0 -0
  249. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/datetimepicker/bootstrap-datetimepicker.css +0 -0
  250. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/datetimepicker/bootstrap-datetimepicker.js +0 -0
  251. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/favicon.ico +0 -0
  252. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/fullcalendar/fullcalendar.css +0 -0
  253. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/fullcalendar/fullcalendar.js +0 -0
  254. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/fullcalendar/fullcalendar.min.css +0 -0
  255. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/fullcalendar/fullcalendar.min.js +0 -0
  256. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/icons/agreement.png +0 -0
  257. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/icons/caution.png +0 -0
  258. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/icons/preferences.png +0 -0
  259. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/jquery.js +0 -0
  260. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/jquery.min.js +0 -0
  261. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/jumbotron_watermark.bmp +0 -0
  262. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/mobile.js +0 -0
  263. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/moment.js +0 -0
  264. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/moment.min.js +0 -0
  265. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/moment.min.js.map +0 -0
  266. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/nemo.css +0 -0
  267. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/nemo.js +0 -0
  268. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/numpad/custom_numpad.jquery.js +0 -0
  269. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/numpad/numpad.jquery.css +0 -0
  270. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/pickadate/default.css +0 -0
  271. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/pickadate/default.date.css +0 -0
  272. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/pickadate/default.time.css +0 -0
  273. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/pickadate/picker.date.js +0 -0
  274. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/pickadate/picker.js +0 -0
  275. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/pickadate/picker.time.js +0 -0
  276. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/robots.txt +0 -0
  277. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/select2/css/select2-bootstrap.css +0 -0
  278. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/select2/css/select2-bootstrap.min.css +0 -0
  279. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/select2/css/select2.css +0 -0
  280. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/select2/css/select2.min.css +0 -0
  281. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/select2/js/select2.js +0 -0
  282. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/select2/js/select2.min.js +0 -0
  283. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/typeahead.jquery.js +0 -0
  284. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/typeahead.jquery.min.js +0 -0
  285. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/virtualkeyboard/jquery.keyboard.js +0 -0
  286. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/virtualkeyboard/jquery.keyboard.min.js +0 -0
  287. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/virtualkeyboard/keyboard-basic.css +0 -0
  288. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/static/virtualkeyboard/keyboard-basic.min.css +0 -0
  289. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/abuse/abuse.html +0 -0
  290. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/abuse/user_drill_down.html +0 -0
  291. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/account_and_projects.html +0 -0
  292. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/accounts_and_projects.html +0 -0
  293. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/create_account.html +0 -0
  294. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/create_project.html +0 -0
  295. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/documents_for_project.html +0 -0
  296. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/project.html +0 -0
  297. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/projects.html +0 -0
  298. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/transfer_charges.html +0 -0
  299. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/accounts_and_projects/users_for_project.html +0 -0
  300. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/acknowledgement.html +0 -0
  301. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/alerts.html +0 -0
  302. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/area_access/area_access.html +0 -0
  303. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/area_access/calendar_self_login.html +0 -0
  304. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/area_access/change_project.html +0 -0
  305. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/area_access/login_areas.html +0 -0
  306. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/area_access/new_area_access_record.html +0 -0
  307. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/area_access/new_area_access_record_details.html +0 -0
  308. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/area_access/self_login.html +0 -0
  309. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/authorization_failed.html +0 -0
  310. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/base/footer.html +0 -0
  311. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/base/impersonate_header.html +0 -0
  312. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/base/navbar.html +0 -0
  313. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/base/navbar_base.html +0 -0
  314. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/base/popup.html +0 -0
  315. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/base.html +0 -0
  316. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/accessories.html +0 -0
  317. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/accessories_helper.html +0 -0
  318. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/calendar.html +0 -0
  319. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/configuration.html +0 -0
  320. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/configuration_event_feed.html +0 -0
  321. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/new_training_event.html +0 -0
  322. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/policy_dialog.html +0 -0
  323. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/project_choice.html +0 -0
  324. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/proxy_reservation.html +0 -0
  325. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/reservation_event_feed.html +0 -0
  326. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/reservation_questions.html +0 -0
  327. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/reservation_warning.html +0 -0
  328. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/scheduled_outage_information.html +0 -0
  329. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/specific_user_feed.html +0 -0
  330. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/usage_event_feed.html +0 -0
  331. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/calendar/user_tool_lists.html +0 -0
  332. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/configuration/configuration_history.html +0 -0
  333. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/configuration/configuration_line_item.html +0 -0
  334. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/configuration/configuration_reservation_helper.html +0 -0
  335. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/configuration_agenda.html +0 -0
  336. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/consumables/consumables.html +0 -0
  337. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/consumables/consumables_order.html +0 -0
  338. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/consumables/recurring_charge.html +0 -0
  339. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/consumables/recurring_charges.html +0 -0
  340. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/contact/contact_staff.html +0 -0
  341. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations.html +0 -0
  342. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_adjustment_requests.html +0 -0
  343. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_application.html +0 -0
  344. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_calendar.html +0 -0
  345. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_dashboard.html +0 -0
  346. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_emails.html +0 -0
  347. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_interlock.html +0 -0
  348. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_knowledge_base.html +0 -0
  349. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_projects_and_accounts.html +0 -0
  350. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_rates.html +0 -0
  351. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_recurring_charges.html +0 -0
  352. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_remote_work.html +0 -0
  353. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_requests.html +0 -0
  354. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_safety.html +0 -0
  355. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_shadowing_verification.html +0 -0
  356. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_templates.html +0 -0
  357. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_tool.html +0 -0
  358. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_training.html +0 -0
  359. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_upload.html +0 -0
  360. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/customizations/customizations_user.html +0 -0
  361. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/display_success_and_redirect.html +0 -0
  362. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/email/compose_email.html +0 -0
  363. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/email/email_broadcast.html +0 -0
  364. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/email/email_form.html +0 -0
  365. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/event_details/area_access_details.html +0 -0
  366. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/event_details/outage_details.html +0 -0
  367. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/event_details/reservation_details.html +0 -0
  368. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/event_details/training_event_details.html +0 -0
  369. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/event_details/usage_details.html +0 -0
  370. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/facility_rules.html +0 -0
  371. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/feedback.html +0 -0
  372. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/history.html +0 -0
  373. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/impersonate.html +0 -0
  374. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/jumbotron/jumbotron.html +0 -0
  375. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/jumbotron/jumbotron_content.html +0 -0
  376. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/knowledge_base/knowledge_base.html +0 -0
  377. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/knowledge_base/knowledge_base_base.html +0 -0
  378. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/knowledge_base/knowledge_base_items.html +0 -0
  379. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/landing.html +0 -0
  380. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/login.html +0 -0
  381. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/maintenance/closed_task_details.html +0 -0
  382. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/maintenance/maintenance.html +0 -0
  383. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/maintenance/pending_task_details.html +0 -0
  384. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/cancellation_result.html +0 -0
  385. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/choose_item.html +0 -0
  386. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/error.html +0 -0
  387. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/individual_outage.html +0 -0
  388. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/individual_reservation.html +0 -0
  389. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/individual_training_event.html +0 -0
  390. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/new_reservation.html +0 -0
  391. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/no_active_projects.html +0 -0
  392. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/reservation_extra.html +0 -0
  393. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/reservation_success.html +0 -0
  394. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/mobile/view_calendar.html +0 -0
  395. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/news/archived_news.html +0 -0
  396. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/news/new_news_form.html +0 -0
  397. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/news/news_update_form.html +0 -0
  398. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/news/recent_news.html +0 -0
  399. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/occupancy/occupancy.html +0 -0
  400. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/occupancy/occupancy_content.html +0 -0
  401. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/occupancy/occupancy_count.html +0 -0
  402. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/pagination/pagination_base.html +0 -0
  403. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/pagination/pagination_column.html +0 -0
  404. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/pagination/pagination_pages.html +0 -0
  405. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/pagination/pagination_selector.html +0 -0
  406. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/qualifications.html +0 -0
  407. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/refresh_sidebar_icons.html +0 -0
  408. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/remote_work/remote_work.html +0 -0
  409. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/remote_work/remote_work_base.html +0 -0
  410. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/access_requests/access_request.html +0 -0
  411. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/access_requests/access_requests.html +0 -0
  412. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/access_requests/access_requests_table.html +0 -0
  413. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/adjustment_requests/adjustment_charge_summary_table.html +0 -0
  414. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/adjustment_requests/adjustment_request.html +0 -0
  415. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/adjustment_requests/adjustment_requests.html +0 -0
  416. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/buddy_requests/buddy_request.html +0 -0
  417. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/buddy_requests/buddy_requests.html +0 -0
  418. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/staff_assistance_requests/open_staff_assistance_requests.html +0 -0
  419. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/staff_assistance_requests/resolved_staff_assistance_requests.html +0 -0
  420. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/staff_assistance_requests/staff_assistance_requests.html +0 -0
  421. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/requests/user_requests.html +0 -0
  422. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/resources/modify_resource.html +0 -0
  423. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/resources/resource_details.html +0 -0
  424. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/resources/resources.html +0 -0
  425. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/resources/scheduled_outage.html +0 -0
  426. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/rest_framework/api.html +0 -0
  427. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/rest_framework/custom_error.html +0 -0
  428. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/safety/safety.html +0 -0
  429. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/safety/safety_base.html +0 -0
  430. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/safety/safety_data_sheets.html +0 -0
  431. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/safety/safety_issues.html +0 -0
  432. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/safety/safety_issues_create.html +0 -0
  433. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/safety/safety_issues_resolved.html +0 -0
  434. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/safety/safety_issues_update.html +0 -0
  435. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/safety/safety_items.html +0 -0
  436. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/shadowing_verification/shadowing_verification_request.html +0 -0
  437. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/shadowing_verification/shadowing_verification_requests.html +0 -0
  438. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/shadowing_verification/shadowing_verification_requests_table.html +0 -0
  439. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/admin_json_editor.html +0 -0
  440. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/button.html +0 -0
  441. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/confirm_action_modal.html +0 -0
  442. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/contact_person.html +0 -0
  443. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/document_list.html +0 -0
  444. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/embedded_document.html +0 -0
  445. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/item_status_icons.html +0 -0
  446. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/tool_calendar_info.html +0 -0
  447. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/tool_info.html +0 -0
  448. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/snippets/tool_reservation_info.html +0 -0
  449. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/staff_charges/change_status.html +0 -0
  450. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/staff_charges/choose_project.html +0 -0
  451. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/staff_charges/end_area_charge.html +0 -0
  452. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/staff_charges/new_staff_charge.html +0 -0
  453. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/staff_charges/reminder.html +0 -0
  454. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/staff_charges/staff_charges_base.html +0 -0
  455. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/status_dashboard/alerts.html +0 -0
  456. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/status_dashboard/occupancy.html +0 -0
  457. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/status_dashboard/staff.html +0 -0
  458. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/status_dashboard/staff_absence.html +0 -0
  459. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/status_dashboard/status_dashboard.html +0 -0
  460. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/status_dashboard/tools.html +0 -0
  461. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tasks/resolve.html +0 -0
  462. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tasks/update.html +0 -0
  463. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/get_projects.html +0 -0
  464. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/interlock_error.html +0 -0
  465. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/logout_user.html +0 -0
  466. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/past_tasks_and_comments.html +0 -0
  467. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/qualified_users.html +0 -0
  468. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/tool_control.html +0 -0
  469. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/tool_status.html +0 -0
  470. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/usage_data.html +0 -0
  471. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_control/use_tool_for_other.html +0 -0
  472. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/tool_credentials/tool_credentials.html +0 -0
  473. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training/get_projects.html +0 -0
  474. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training/training.html +0 -0
  475. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training/training_entry.html +0 -0
  476. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training/training_recording.html +0 -0
  477. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_base.html +0 -0
  478. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_events/create_event.html +0 -0
  479. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_events/manage_training_events.html +0 -0
  480. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_events/manage_training_events_table.html +0 -0
  481. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_events/schedule_training_events.html +0 -0
  482. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_events/upcoming_training_events.html +0 -0
  483. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_history.html +0 -0
  484. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_requests/create_request.html +0 -0
  485. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/training_new/training_sessions.html +0 -0
  486. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/usage/adjustment_request_button.html +0 -0
  487. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/usage/billing.html +0 -0
  488. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/usage/usage.html +0 -0
  489. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/usage/usage_base.html +0 -0
  490. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/users/create_or_modify_user.html +0 -0
  491. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/users/preferences.html +0 -0
  492. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/users/safe_deactivation.html +0 -0
  493. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/users/users.html +0 -0
  494. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templates/users/view_user.html +0 -0
  495. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templatetags/__init__.py +0 -0
  496. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templatetags/custom_tags_and_filters.py +0 -0
  497. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/templatetags/training_tags.py +0 -0
  498. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/__init__.py +0 -0
  499. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_admin.py +0 -0
  500. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_api/__init__.py +0 -0
  501. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_api/test_billing.py +0 -0
  502. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_api/test_crud.py +0 -0
  503. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_area_access.py +0 -0
  504. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_calendar/__init__.py +0 -0
  505. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_calendar/test_area_reservation.py +0 -0
  506. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_calendar/test_calendar.py +0 -0
  507. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_calendar/test_outage.py +0 -0
  508. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_calendar/test_tool_freed_time.py +0 -0
  509. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_calendar/test_tool_reservation.py +0 -0
  510. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_ce/__init__.py +0 -0
  511. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_ce/test_grant_access_email.py +0 -0
  512. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_ce/test_precursor_schedule.py +0 -0
  513. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_ce/test_trainings_auto_cancel.py +0 -0
  514. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_closures.py +0 -0
  515. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_consumables.py +0 -0
  516. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_deactivate_access_expired_users.py +0 -0
  517. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_dynamic_form.py +0 -0
  518. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_evaluators.py +0 -0
  519. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_formats.py +0 -0
  520. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_interlocks/__init__.py +0 -0
  521. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_interlocks/test_modbus_interlock.py +0 -0
  522. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_interlocks/test_stanford_interlock.py +0 -0
  523. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_interlocks/test_web_relay_interlock.py +0 -0
  524. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_misc.py +0 -0
  525. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_requests/__init__.py +0 -0
  526. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_requests/test_adjustment_requests.py +0 -0
  527. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_send_email.py +0 -0
  528. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_settings.py +0 -0
  529. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_shadowing_verification.py +0 -0
  530. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_staff_charges.py +0 -0
  531. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_staff_on_tool.py +0 -0
  532. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_tools/__init__.py +0 -0
  533. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_tools/test_tool.py +0 -0
  534. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_tools/test_tool_qualification_expiration.py +0 -0
  535. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_tools/test_waitlist.py +0 -0
  536. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_urls_api.py +0 -0
  537. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_users.py +0 -0
  538. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/tests/test_utilities.py +0 -0
  539. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/typing.py +0 -0
  540. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/urls.py +0 -0
  541. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/utilities.py +0 -0
  542. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/validators.py +0 -0
  543. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/__init__.py +0 -0
  544. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/abuse.py +0 -0
  545. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/access_requests.py +0 -0
  546. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/accounts_and_projects.py +0 -0
  547. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/adjustment_requests.py +0 -0
  548. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/admin_autocomplete.py +0 -0
  549. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/alerts.py +0 -0
  550. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/api.py +0 -0
  551. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/api_billing.py +0 -0
  552. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/area_access.py +0 -0
  553. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/authentication.py +0 -0
  554. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/buddy_requests.py +0 -0
  555. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/calendar.py +0 -0
  556. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/charge_validation.py +0 -0
  557. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/configuration_agenda.py +0 -0
  558. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/constants.py +0 -0
  559. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/consumables.py +0 -0
  560. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/contact_staff.py +0 -0
  561. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/customization.py +0 -0
  562. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/documents.py +0 -0
  563. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/email.py +0 -0
  564. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/event_details.py +0 -0
  565. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/feedback.py +0 -0
  566. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/get_projects.py +0 -0
  567. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/history.py +0 -0
  568. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/jumbotron.py +0 -0
  569. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/knowledge_base.py +0 -0
  570. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/landing.py +0 -0
  571. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/maintenance.py +0 -0
  572. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/mobile.py +0 -0
  573. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/news.py +0 -0
  574. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/notifications.py +0 -0
  575. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/pagination.py +0 -0
  576. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/qualifications.py +0 -0
  577. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/remote_work.py +0 -0
  578. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/resources.py +0 -0
  579. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/safety.py +0 -0
  580. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/shadowing_verification.py +0 -0
  581. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/sidebar.py +0 -0
  582. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/staff_assistance_requests.py +0 -0
  583. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/status_dashboard.py +0 -0
  584. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/tasks.py +0 -0
  585. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/timed_services.py +0 -0
  586. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/tool_control.py +0 -0
  587. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/tool_credentials.py +0 -0
  588. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/training.py +0 -0
  589. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/training_new.py +0 -0
  590. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/tutorials.py +0 -0
  591. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/usage.py +0 -0
  592. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/user_requests.py +0 -0
  593. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/views/users.py +0 -0
  594. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/widgets/__init__.py +0 -0
  595. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/widgets/configuration_editor.py +0 -0
  596. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/widgets/dynamic_form.py +0 -0
  597. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/widgets/item_tree.py +0 -0
  598. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO/wsgi.py +0 -0
  599. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO_CE.egg-info/dependency_links.txt +0 -0
  600. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO_CE.egg-info/entry_points.txt +0 -0
  601. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO_CE.egg-info/requires.txt +0 -0
  602. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/NEMO_CE.egg-info/top_level.txt +0 -0
  603. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/README.md +0 -0
  604. {nemo_ce-7.3.9 → nemo_ce-7.3.10}/setup.cfg +0 -0
@@ -226,7 +226,7 @@
226
226
  function load_pre_usage_questions(tool_id, customer_id, project_id)
227
227
  {
228
228
  let failure_dialog = ajax_complete_callback("Unable to load pre usage questions", "There was a problem loading pre usage questions.");
229
- const resolved_url = build_django_url("{% url 'tool_usage_questions' 999 'pre' 888 777 'true' %}", ['999', '888', '777', 'true'], [tool_id, customer_id, project_id, virtual_inputs]);
229
+ const resolved_url = build_django_url("{% url 'kiosk_tool_usage_questions' 999 'pre' 888 777 'true' %}", ['999', '888', '777', 'true'], [tool_id, customer_id, project_id, virtual_inputs]);
230
230
  const note = $("#note");
231
231
  note.prop("disabled", false).parents("#usage_note").show();
232
232
  auto_size_textarea(note[0], 3);
@@ -1,6 +1,7 @@
1
1
  from django.urls import include, path, re_path
2
2
 
3
3
  from NEMO.apps.kiosk import views
4
+ from NEMO.urls import tool_usage_question_types
4
5
  from NEMO.views import area_access, status_dashboard
5
6
 
6
7
  urlpatterns = [
@@ -39,6 +40,13 @@ urlpatterns = [
39
40
  name="kiosk_tool_reservation",
40
41
  ),
41
42
  path("tool_configuration/", views.kiosk_tool_configuration, name="kiosk_tool_configuration"),
43
+ re_path(
44
+ r"^tool_usage_questions/(?P<tool_id>\d+)/"
45
+ + tool_usage_question_types
46
+ + "/(?P<user_id>\d+)/(?P<project_id>\d+)/(?P<virtual_inputs>(true|false))/$",
47
+ views.kiosk_tool_usage_questions,
48
+ name="kiosk_tool_usage_questions",
49
+ ),
42
50
  path("enter_wait_list/", views.enter_wait_list, name="enter_wait_list_from_kiosk"),
43
51
  path("exit_wait_list/", views.exit_wait_list, name="exit_wait_list_from_kiosk"),
44
52
  path("logout_user/<int:tool_id>", views.logout_user, name="kiosk_logout_user"),
@@ -56,6 +56,7 @@ from NEMO.views.tool_control import (
56
56
  interlock_error,
57
57
  save_comment,
58
58
  tool_configuration,
59
+ tool_usage_questions,
59
60
  )
60
61
 
61
62
 
@@ -413,6 +414,15 @@ def kiosk_tool_configuration(request):
413
414
  return tool_configuration(request)
414
415
 
415
416
 
417
+ @login_required
418
+ @permission_required("NEMO.kiosk")
419
+ @require_GET
420
+ def kiosk_tool_usage_questions(
421
+ request, tool_id: int, question_type: str, user_id: int, project_id: int, virtual_inputs: str = None
422
+ ):
423
+ return tool_usage_questions(request, tool_id, question_type, user_id, project_id, virtual_inputs)
424
+
425
+
416
426
  @login_required
417
427
  @permission_required("NEMO.kiosk")
418
428
  @require_POST
@@ -0,0 +1,472 @@
1
+ # Generated by Django 4.2.27 on 2026-02-05 16:02
2
+
3
+ import NEMO.fields
4
+ import NEMO.utilities
5
+ from django.conf import settings
6
+ import django.core.validators
7
+ from django.db import migrations, models
8
+ import django.db.models.deletion
9
+ import mptt.fields
10
+ import re
11
+
12
+
13
+ class Migration(migrations.Migration):
14
+
15
+ dependencies = [
16
+ ("NEMO", "0141_toolqualificationexpiration"),
17
+ ]
18
+
19
+ operations = [
20
+ migrations.AlterField(
21
+ model_name="tool",
22
+ name="_adjustment_request_reviewers",
23
+ field=models.ManyToManyField(
24
+ blank=True,
25
+ db_table="NEMO_tool_adjustment_request_reviewers",
26
+ help_text="Users who can approve/deny adjustment requests for this tool. Defaults to facility managers if left blank.",
27
+ related_name="adjustment_request_reviewer_on_tools",
28
+ to=settings.AUTH_USER_MODEL,
29
+ verbose_name="adjustment_request_reviewers",
30
+ ),
31
+ ),
32
+ migrations.AlterField(
33
+ model_name="tool",
34
+ name="_ask_to_leave_area_when_done_using",
35
+ field=models.BooleanField(
36
+ db_column="ask_to_leave_area_when_done_using",
37
+ default=False,
38
+ help_text="Check this box to ask the user if they want to log out of the area when they are done using the tool.",
39
+ verbose_name="ask_to_leave_area_when_done_using",
40
+ ),
41
+ ),
42
+ migrations.AlterField(
43
+ model_name="tool",
44
+ name="_backup_owners",
45
+ field=models.ManyToManyField(
46
+ blank=True,
47
+ db_table="NEMO_tool_backup_owners",
48
+ help_text="Alternate staff members who are responsible for administration of this tool when the primary owner is unavailable.",
49
+ related_name="backup_for_tools",
50
+ to=settings.AUTH_USER_MODEL,
51
+ verbose_name="backup_owners",
52
+ ),
53
+ ),
54
+ migrations.AlterField(
55
+ model_name="tool",
56
+ name="_category",
57
+ field=models.CharField(
58
+ blank=True,
59
+ db_column="category",
60
+ help_text='Create sub-categories using slashes. For example "Category 1/Sub-category 1".',
61
+ max_length=1024,
62
+ null=True,
63
+ verbose_name="category",
64
+ ),
65
+ ),
66
+ migrations.AlterField(
67
+ model_name="tool",
68
+ name="_description",
69
+ field=models.TextField(
70
+ blank=True,
71
+ db_column="description",
72
+ help_text="HTML syntax could be used",
73
+ null=True,
74
+ verbose_name="description",
75
+ ),
76
+ ),
77
+ migrations.AlterField(
78
+ model_name="tool",
79
+ name="_grant_badge_reader_access_upon_qualification",
80
+ field=models.CharField(
81
+ blank=True,
82
+ db_column="grant_badge_reader_access_upon_qualification",
83
+ help_text="Badge reader access is granted to the user upon qualification for this tool.",
84
+ max_length=100,
85
+ null=True,
86
+ verbose_name="grant_badge_reader_access_upon_qualification",
87
+ ),
88
+ ),
89
+ migrations.AlterField(
90
+ model_name="tool",
91
+ name="_grant_physical_access_level_upon_qualification",
92
+ field=models.ForeignKey(
93
+ blank=True,
94
+ db_column="grant_physical_access_level_upon_qualification_id",
95
+ help_text="The designated physical access level is granted to the user upon qualification for this tool.",
96
+ null=True,
97
+ on_delete=django.db.models.deletion.PROTECT,
98
+ to="NEMO.physicalaccesslevel",
99
+ verbose_name="grant_physical_access_level_upon_qualification",
100
+ ),
101
+ ),
102
+ migrations.AlterField(
103
+ model_name="tool",
104
+ name="_image",
105
+ field=models.ImageField(
106
+ blank=True,
107
+ db_column="image",
108
+ help_text="An image that represent the tool. Maximum width and height are 500px",
109
+ upload_to=NEMO.utilities.get_tool_image_filename,
110
+ verbose_name="image",
111
+ ),
112
+ ),
113
+ migrations.AlterField(
114
+ model_name="tool",
115
+ name="_interlock",
116
+ field=models.OneToOneField(
117
+ blank=True,
118
+ db_column="interlock_id",
119
+ null=True,
120
+ on_delete=django.db.models.deletion.SET_NULL,
121
+ to="NEMO.interlock",
122
+ verbose_name="interlock",
123
+ ),
124
+ ),
125
+ migrations.AlterField(
126
+ model_name="tool",
127
+ name="_late_cancellation_reservation_threshold",
128
+ field=models.PositiveIntegerField(
129
+ blank=True,
130
+ db_column="late_cancellation_reservation_threshold",
131
+ help_text='The amount of time (in minutes) before its start time that a tool reservation may be canceled before it is automatically marked as "missed" and hidden from the calendar.',
132
+ null=True,
133
+ verbose_name="late_cancellation_reservation_threshold",
134
+ ),
135
+ ),
136
+ migrations.AlterField(
137
+ model_name="tool",
138
+ name="_location",
139
+ field=models.CharField(
140
+ blank=True, db_column="location", max_length=100, null=True, verbose_name="location"
141
+ ),
142
+ ),
143
+ migrations.AlterField(
144
+ model_name="tool",
145
+ name="_max_delayed_logoff",
146
+ field=models.PositiveIntegerField(
147
+ blank=True,
148
+ db_column="max_delayed_logoff",
149
+ help_text='[Optional] Maximum delay in minutes that users may enter upon logging off before another user may use the tool. Some tools require "spin-down" or cleaning time after use. Leave blank to disable.',
150
+ null=True,
151
+ verbose_name="max_delayed_logoff",
152
+ ),
153
+ ),
154
+ migrations.AlterField(
155
+ model_name="tool",
156
+ name="_maximum_future_reservation_time",
157
+ field=models.PositiveIntegerField(
158
+ blank=True,
159
+ db_column="maximum_future_reservation_time",
160
+ help_text="The maximum amount of time (in minutes) that a user may reserve from the current time onwards.",
161
+ null=True,
162
+ verbose_name="maximum_future_reservation_time",
163
+ ),
164
+ ),
165
+ migrations.AlterField(
166
+ model_name="tool",
167
+ name="_maximum_future_reservations",
168
+ field=models.PositiveIntegerField(
169
+ blank=True,
170
+ db_column="maximum_future_reservations",
171
+ help_text="The maximum number of reservations a user may make in the future for this tool.",
172
+ null=True,
173
+ verbose_name="maximum_future_reservations",
174
+ ),
175
+ ),
176
+ migrations.AlterField(
177
+ model_name="tool",
178
+ name="_maximum_reservations_per_day",
179
+ field=models.PositiveIntegerField(
180
+ blank=True,
181
+ db_column="maximum_reservations_per_day",
182
+ help_text="The maximum number of reservations a user may make per day for this tool.",
183
+ null=True,
184
+ verbose_name="maximum_reservations_per_day",
185
+ ),
186
+ ),
187
+ migrations.AlterField(
188
+ model_name="tool",
189
+ name="_maximum_usage_block_time",
190
+ field=models.PositiveIntegerField(
191
+ blank=True,
192
+ db_column="maximum_usage_block_time",
193
+ help_text="The maximum amount of time (in minutes) that a user may reserve this tool for a single reservation. Leave this field blank to indicate that no maximum usage block time exists for this tool.",
194
+ null=True,
195
+ verbose_name="maximum_usage_block_time",
196
+ ),
197
+ ),
198
+ migrations.AlterField(
199
+ model_name="tool",
200
+ name="_minimum_time_between_reservations",
201
+ field=models.PositiveIntegerField(
202
+ blank=True,
203
+ db_column="minimum_time_between_reservations",
204
+ help_text="The minimum amount of time (in minutes) that the same user must have between any two reservations for this tool.",
205
+ null=True,
206
+ verbose_name="minimum_time_between_reservations",
207
+ ),
208
+ ),
209
+ migrations.AlterField(
210
+ model_name="tool",
211
+ name="_minimum_usage_block_time",
212
+ field=models.PositiveIntegerField(
213
+ blank=True,
214
+ db_column="minimum_usage_block_time",
215
+ help_text="The minimum amount of time (in minutes) that a user must reserve this tool for a single reservation. Leave this field blank to indicate that no minimum usage block time exists for this tool.",
216
+ null=True,
217
+ verbose_name="minimum_usage_block_time",
218
+ ),
219
+ ),
220
+ migrations.AlterField(
221
+ model_name="tool",
222
+ name="_missed_reservation_threshold",
223
+ field=models.PositiveIntegerField(
224
+ blank=True,
225
+ db_column="missed_reservation_threshold",
226
+ help_text='The amount of time (in minutes) that a tool reservation may go unused before it is automatically marked as "missed" and hidden from the calendar. Usage can be from any user, regardless of who the reservation was originally created for. The cancellation process is triggered by a timed job on the web server.',
227
+ null=True,
228
+ verbose_name="missed_reservation_threshold",
229
+ ),
230
+ ),
231
+ migrations.AlterField(
232
+ model_name="tool",
233
+ name="_notification_email_address",
234
+ field=models.EmailField(
235
+ blank=True,
236
+ db_column="notification_email_address",
237
+ help_text="Messages that relate to this tool (such as comments, problems, and shutdowns) will be forwarded to this email address. This can be a normal email address or a mailing list address.",
238
+ max_length=254,
239
+ null=True,
240
+ verbose_name="notification_email_address",
241
+ ),
242
+ ),
243
+ migrations.AlterField(
244
+ model_name="tool",
245
+ name="_operation_mode",
246
+ field=models.IntegerField(
247
+ choices=[(0, "Regular"), (1, "Wait List"), (2, "Hybrid")],
248
+ default=0,
249
+ help_text="The operation mode of the tool, which determines if reservations and wait list are allowed.",
250
+ verbose_name="operation_mode",
251
+ ),
252
+ ),
253
+ migrations.AlterField(
254
+ model_name="tool",
255
+ name="_operational",
256
+ field=models.BooleanField(
257
+ db_column="operational",
258
+ default=False,
259
+ help_text="Marking the tool non-operational will prevent users from using the tool.",
260
+ verbose_name="operational",
261
+ ),
262
+ ),
263
+ migrations.AlterField(
264
+ model_name="tool",
265
+ name="_phone_number",
266
+ field=models.CharField(
267
+ blank=True, db_column="phone_number", max_length=100, null=True, verbose_name="phone_number"
268
+ ),
269
+ ),
270
+ migrations.AlterField(
271
+ model_name="tool",
272
+ name="_policy_off_between_times",
273
+ field=models.BooleanField(
274
+ db_column="policy_off_between_times",
275
+ default=False,
276
+ help_text="Check this box to disable policy rules every day between the given times",
277
+ verbose_name="policy_off_between_times",
278
+ ),
279
+ ),
280
+ migrations.AlterField(
281
+ model_name="tool",
282
+ name="_policy_off_end_time",
283
+ field=models.TimeField(
284
+ blank=True,
285
+ db_column="policy_off_end_time",
286
+ help_text="The end time when policy rules should NOT be enforced",
287
+ null=True,
288
+ verbose_name="policy_off_end_time",
289
+ ),
290
+ ),
291
+ migrations.AlterField(
292
+ model_name="tool",
293
+ name="_policy_off_start_time",
294
+ field=models.TimeField(
295
+ blank=True,
296
+ db_column="policy_off_start_time",
297
+ help_text="The start time when policy rules should NOT be enforced",
298
+ null=True,
299
+ verbose_name="policy_off_start_time",
300
+ ),
301
+ ),
302
+ migrations.AlterField(
303
+ model_name="tool",
304
+ name="_policy_off_weekend",
305
+ field=models.BooleanField(
306
+ db_column="policy_off_weekend",
307
+ default=False,
308
+ help_text="Whether or not policy rules should be enforced on weekends",
309
+ verbose_name="policy_off_weekend",
310
+ ),
311
+ ),
312
+ migrations.AlterField(
313
+ model_name="tool",
314
+ name="_primary_owner",
315
+ field=models.ForeignKey(
316
+ blank=True,
317
+ db_column="primary_owner_id",
318
+ help_text="The staff member who is responsible for administration of this tool.",
319
+ null=True,
320
+ on_delete=django.db.models.deletion.PROTECT,
321
+ related_name="primary_tool_owner",
322
+ to=settings.AUTH_USER_MODEL,
323
+ verbose_name="primary_owner",
324
+ ),
325
+ ),
326
+ migrations.AlterField(
327
+ model_name="tool",
328
+ name="_problem_shutdown_enabled",
329
+ field=models.BooleanField(
330
+ db_column="problem_shutdown_enabled",
331
+ default=True,
332
+ help_text="Whether or not users can shut down the tool when reporting a problem.",
333
+ verbose_name="problem_shutdown_enabled",
334
+ ),
335
+ ),
336
+ migrations.AlterField(
337
+ model_name="tool",
338
+ name="_properties",
339
+ field=models.JSONField(blank=True, db_column="properties", null=True, verbose_name="properties"),
340
+ ),
341
+ migrations.AlterField(
342
+ model_name="tool",
343
+ name="_qualification_expiration_days",
344
+ field=models.PositiveIntegerField(
345
+ blank=True,
346
+ db_column="qualification_expiration_days",
347
+ help_text="The number of days from the user’s last tool use until the qualification expires.",
348
+ null=True,
349
+ verbose_name="qualification_expiration_days",
350
+ ),
351
+ ),
352
+ migrations.AlterField(
353
+ model_name="tool",
354
+ name="_qualification_expiration_never_used_days",
355
+ field=models.PositiveIntegerField(
356
+ blank=True,
357
+ db_column="qualification_expiration_never_used_days",
358
+ help_text="Number of days from the user's first qualification until the qualification expires (if the user never used the tool).",
359
+ null=True,
360
+ verbose_name="qualification_expiration_never_used_days",
361
+ ),
362
+ ),
363
+ migrations.AlterField(
364
+ model_name="tool",
365
+ name="_qualification_notification_email",
366
+ field=NEMO.fields.MultiEmailField(
367
+ blank=True,
368
+ db_column="qualification_notification_email",
369
+ help_text="The email addresses to cc on tool qualification expiration and on reminders. Separate multiple emails with commas.",
370
+ max_length=2000,
371
+ null=True,
372
+ verbose_name="qualification_notification_email",
373
+ ),
374
+ ),
375
+ migrations.AlterField(
376
+ model_name="tool",
377
+ name="_qualification_reminder_days",
378
+ field=models.CharField(
379
+ blank=True,
380
+ db_column="qualification_reminder_days",
381
+ help_text="The (optional) number of days to send a reminder prior to the user's tool qualification expiration (below). A comma-separated list can be used for multiple reminders. This applies to both expiration cases.",
382
+ max_length=255,
383
+ null=True,
384
+ validators=[
385
+ django.core.validators.RegexValidator(
386
+ re.compile("^\\d+(?:,\\d+)*\\Z"),
387
+ code="invalid",
388
+ message="Enter only digits separated by commas.",
389
+ )
390
+ ],
391
+ verbose_name="qualification_reminder_days",
392
+ ),
393
+ ),
394
+ migrations.AlterField(
395
+ model_name="tool",
396
+ name="_requires_area_access",
397
+ field=mptt.fields.TreeForeignKey(
398
+ blank=True,
399
+ db_column="requires_area_access_id",
400
+ help_text="Indicates that this tool is physically located in a billable area and requires an active area access record in order to be operated.",
401
+ null=True,
402
+ on_delete=django.db.models.deletion.PROTECT,
403
+ to="NEMO.area",
404
+ verbose_name="Requires_area_access_id",
405
+ ),
406
+ ),
407
+ migrations.AlterField(
408
+ model_name="tool",
409
+ name="_requires_area_occupancy_minimum",
410
+ field=models.PositiveIntegerField(
411
+ blank=True,
412
+ db_column="requires_area_occupancy_minimum",
413
+ help_text="Enter the minimum number of total users needed to be present in the required area to enable this tool",
414
+ null=True,
415
+ verbose_name="requires_area_occupancy_minimum",
416
+ ),
417
+ ),
418
+ migrations.AlterField(
419
+ model_name="tool",
420
+ name="_reservation_horizon",
421
+ field=models.PositiveIntegerField(
422
+ blank=True,
423
+ db_column="reservation_horizon",
424
+ default=14,
425
+ help_text="Users may create reservations this many days in advance. Leave this field blank to indicate that no reservation horizon exists for this tool.",
426
+ null=True,
427
+ verbose_name="reservation_horizon",
428
+ ),
429
+ ),
430
+ migrations.AlterField(
431
+ model_name="tool",
432
+ name="_serial",
433
+ field=models.CharField(
434
+ blank=True,
435
+ db_column="serial",
436
+ help_text="Serial Number",
437
+ max_length=100,
438
+ null=True,
439
+ verbose_name="serial",
440
+ ),
441
+ ),
442
+ migrations.AlterField(
443
+ model_name="tool",
444
+ name="_superusers",
445
+ field=models.ManyToManyField(
446
+ blank=True,
447
+ db_table="NEMO_tool_superusers",
448
+ help_text="Superusers who can train users on this tool.",
449
+ related_name="superuser_for_tools",
450
+ to=settings.AUTH_USER_MODEL,
451
+ verbose_name="superusers",
452
+ ),
453
+ ),
454
+ migrations.AlterField(
455
+ model_name="tool",
456
+ name="_tool_calendar_color",
457
+ field=models.CharField(
458
+ db_column="tool_calendar_color",
459
+ default="#33ad33",
460
+ help_text="Color for tool reservations in calendar overviews",
461
+ max_length=9,
462
+ validators=[
463
+ django.core.validators.RegexValidator(
464
+ re.compile("^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$"),
465
+ "Enter a valid hex color, eg. #000000",
466
+ "invalid",
467
+ )
468
+ ],
469
+ verbose_name="tool_calendar_color",
470
+ ),
471
+ ),
472
+ ]