aa-structures 2.16.0__tar.gz → 2.17.0__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 (231) hide show
  1. {aa_structures-2.16.0 → aa_structures-2.17.0}/PKG-INFO +2 -2
  2. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/__init__.py +1 -1
  3. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/corporate_embeds.py +58 -0
  4. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/main.py +8 -2
  5. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_types.py +86 -76
  6. aa_structures-2.17.0/structures/migrations/0009_add_project_goal_notifications.py +152 -0
  7. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/models/owners.py +1 -1
  8. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/entities.json +30 -0
  9. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/generate_notifications.py +1 -1
  10. {aa_structures-2.16.0 → aa_structures-2.17.0}/LICENSE +0 -0
  11. {aa_structures-2.16.0 → aa_structures-2.17.0}/README.md +0 -0
  12. {aa_structures-2.16.0 → aa_structures-2.17.0}/pyproject.toml +0 -0
  13. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/admin.py +0 -0
  14. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/app_settings.py +0 -0
  15. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/apps.py +0 -0
  16. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/auth_hooks.py +0 -0
  17. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/constants.py +0 -0
  18. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/__init__.py +0 -0
  19. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/__init__.py +0 -0
  20. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/billing_embeds.py +0 -0
  21. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/helpers.py +0 -0
  22. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/moonmining_embeds.py +0 -0
  23. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/orbital_embeds.py +0 -0
  24. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/skyhook_embeds.py +0 -0
  25. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/sov_embeds.py +0 -0
  26. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/structures_embeds.py +0 -0
  27. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/tower_embeds.py +0 -0
  28. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_embeds/war_embeds.py +0 -0
  29. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/notification_timers.py +0 -0
  30. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/serializers.py +0 -0
  31. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/sovereignty.py +0 -0
  32. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/core/starbases.py +0 -0
  33. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/forms.py +0 -0
  34. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/helpers.py +0 -0
  35. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/de/LC_MESSAGES/django.mo +0 -0
  36. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/de/LC_MESSAGES/django.po +0 -0
  37. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/django.pot +0 -0
  38. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/en/LC_MESSAGES/django.mo +0 -0
  39. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/en/LC_MESSAGES/django.po +0 -0
  40. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/es/LC_MESSAGES/django.mo +0 -0
  41. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/es/LC_MESSAGES/django.po +0 -0
  42. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/fr_FR/LC_MESSAGES/django.mo +0 -0
  43. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/fr_FR/LC_MESSAGES/django.po +0 -0
  44. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/it_IT/LC_MESSAGES/django.mo +0 -0
  45. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/it_IT/LC_MESSAGES/django.po +0 -0
  46. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/ja/LC_MESSAGES/django.mo +0 -0
  47. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/ja/LC_MESSAGES/django.po +0 -0
  48. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/ko_KR/LC_MESSAGES/django.mo +0 -0
  49. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/ko_KR/LC_MESSAGES/django.po +0 -0
  50. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/ru/LC_MESSAGES/django.mo +0 -0
  51. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/ru/LC_MESSAGES/django.po +0 -0
  52. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/uk/LC_MESSAGES/django.mo +0 -0
  53. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/uk/LC_MESSAGES/django.po +0 -0
  54. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/zh_Hans/LC_MESSAGES/django.mo +0 -0
  55. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/locale/zh_Hans/LC_MESSAGES/django.po +0 -0
  56. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/management/commands/__init__.py +0 -0
  57. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/management/commands/structures_load_eve.py +0 -0
  58. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/management/commands/structures_preload_eveuniverse.py +0 -0
  59. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/management/commands/structures_update_poco_planets.py +0 -0
  60. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/managers.py +0 -0
  61. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/0001_initial_new.py +0 -0
  62. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/0002_remove_eveuniverse_relation_names.py +0 -0
  63. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/0003_add_localization_and_unique_key.py +0 -0
  64. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/0004_improve_localization.py +0 -0
  65. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/0005_add_notification_types.py +0 -0
  66. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/0006_add_ownercharacter_disabled.py +0 -0
  67. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/0007_add_notificationtypes_skyhook_metenox.py +0 -0
  68. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/0008_add_notificationtypes_skyhook_metenox.py +0 -0
  69. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/migrations/__init__.py +0 -0
  70. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/models/__init__.py +0 -0
  71. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/models/eveuniverse.py +0 -0
  72. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/models/notifications.py +0 -0
  73. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/models/structures_1.py +0 -0
  74. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/models/structures_2.py +0 -0
  75. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/providers.py +0 -0
  76. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/css/global.css +0 -0
  77. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/css/main.css +0 -0
  78. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/css/public.css +0 -0
  79. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/css/statistics.css +0 -0
  80. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/css/structures.css +0 -0
  81. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/bars-rotate-fade-black-36.svg +0 -0
  82. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/bars-rotate-fade-white-36.svg +0 -0
  83. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/eve_symbol_128.png +0 -0
  84. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/0h.png +0 -0
  85. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/0l.png +0 -0
  86. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/0m.png +0 -0
  87. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/0r.png +0 -0
  88. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/0s.png +0 -0
  89. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/1h.png +0 -0
  90. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/1l.png +0 -0
  91. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/1m.png +0 -0
  92. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/1r.png +0 -0
  93. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/2h.png +0 -0
  94. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/2l.png +0 -0
  95. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/2m.png +0 -0
  96. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/2r.png +0 -0
  97. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/3h.png +0 -0
  98. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/3l.png +0 -0
  99. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/3m.png +0 -0
  100. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/3r.png +0 -0
  101. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/4h.png +0 -0
  102. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/4l.png +0 -0
  103. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/4m.png +0 -0
  104. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/4s.png +0 -0
  105. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/5h.png +0 -0
  106. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/5l.png +0 -0
  107. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/5m.png +0 -0
  108. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/5s.png +0 -0
  109. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/6h.png +0 -0
  110. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/6l.png +0 -0
  111. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/6m.png +0 -0
  112. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/7h.png +0 -0
  113. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/7l.png +0 -0
  114. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/7m.png +0 -0
  115. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/8h.png +0 -0
  116. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/8l.png +0 -0
  117. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/8m.png +0 -0
  118. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/blank.png +0 -0
  119. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/circle.png +0 -0
  120. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/dustwheel.png +0 -0
  121. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/h.png +0 -0
  122. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/l.png +0 -0
  123. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/m.png +0 -0
  124. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/noship.png +0 -0
  125. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/r.png +0 -0
  126. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/tyrannis.png +0 -0
  127. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/tyrannis_blue.png +0 -0
  128. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/tyrannis_darkred.png +0 -0
  129. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/tyrannis_default.png +0 -0
  130. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/panel/tyrannis_revelations.png +0 -0
  131. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/img/structures_logo.png +0 -0
  132. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/js/global.js +0 -0
  133. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/js/public.js +0 -0
  134. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/js/statistics.js +0 -0
  135. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/js/structures.js +0 -0
  136. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/vendor/datatables/plugins/dataTables.rowGroup.min.js +0 -0
  137. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/vendor/datatables/plugins/datetime.js +0 -0
  138. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/vendor/datatables/plugins/filterDropDown.min.js +0 -0
  139. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/vendor/datatables/plugins/rowGroup.bootstrap.min.css +0 -0
  140. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/static/structures/vendor/datatables/plugins/rowGroup.dataTables.min.css +0 -0
  141. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tasks.py +0 -0
  142. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/base.html +0 -0
  143. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/modals/fitting_assets.html +0 -0
  144. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/modals/fitting_gfx.html +0 -0
  145. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/modals/poco_details.html +0 -0
  146. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/modals/starbase_detail.html +0 -0
  147. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/modals/structure_details.html +0 -0
  148. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/modals/tab_general_detail.html +0 -0
  149. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/modals/tab_services_detail.html +0 -0
  150. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/partials/menu.html +0 -0
  151. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/partials/public/poco_list.html +0 -0
  152. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/partials/statistics/structure_summary.html +0 -0
  153. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/partials/structures/active_tags.html +0 -0
  154. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/partials/structures/jump_gate_list.html +0 -0
  155. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/partials/structures/orbital_list.html +0 -0
  156. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/partials/structures/starbase_list.html +0 -0
  157. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/partials/structures/structure_list.html +0 -0
  158. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/public.html +0 -0
  159. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/statistics.html +0 -0
  160. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/structures.html +0 -0
  161. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/templatetags/detail_title.html +0 -0
  162. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/templatetags/list_asset.html +0 -0
  163. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/templatetags/list_item.html +0 -0
  164. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/templatetags/list_tax_item.html +0 -0
  165. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templates/structures/templatetags/list_title.html +0 -0
  166. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templatetags/__init__.py +0 -0
  167. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/templatetags/structures.py +0 -0
  168. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/__init__.py +0 -0
  169. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/__init__.py +0 -0
  170. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/notification_embeds/__init__.py +0 -0
  171. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/notification_embeds/test_helpers.py +0 -0
  172. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/notification_embeds/test_main.py +0 -0
  173. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/test_notification_structuretimers.py +0 -0
  174. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/test_notification_types.py +0 -0
  175. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/test_notifications_timers.py +0 -0
  176. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/test_serializers.py +0 -0
  177. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/test_sovereignty.py +0 -0
  178. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/core/test_starbases.py +0 -0
  179. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/integration/__init__.py +0 -0
  180. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/integration/test_tasks.py +0 -0
  181. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/integration/test_views.py +0 -0
  182. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/__init__.py +0 -0
  183. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_eveuniverse.py +0 -0
  184. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_notifications_1.py +0 -0
  185. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_notifications_2.py +0 -0
  186. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_notifications_3.py +0 -0
  187. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_notifications_discord.py +0 -0
  188. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_owners_1.py +0 -0
  189. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_owners_2.py +0 -0
  190. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_owners_3.py +0 -0
  191. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_owners_4.py +0 -0
  192. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_owners_5.py +0 -0
  193. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_owners_6.py +0 -0
  194. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/models/test_structures.py +0 -0
  195. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/test_admin.py +0 -0
  196. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/test_helpers.py +0 -0
  197. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/test_managers_1.py +0 -0
  198. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/test_managers_2.py +0 -0
  199. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/test_tasks.py +0 -0
  200. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/__init__.py +0 -0
  201. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/constants.py +0 -0
  202. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/create_eveuniverse.py +0 -0
  203. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/esi_data.json +0 -0
  204. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/eveuniverse.json +0 -0
  205. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/factories.py +0 -0
  206. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/generate_notifications_2.py +0 -0
  207. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/generate_structures.py +0 -0
  208. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/helpers.py +0 -0
  209. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/load_eveuniverse.py +0 -0
  210. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/tasks_loadtest.py +0 -0
  211. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/testdata/test_generate_structures.py +0 -0
  212. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/views/__init__.py +0 -0
  213. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/views/test_public.py +0 -0
  214. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/views/test_service_status.py +0 -0
  215. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/views/test_statistics.py +0 -0
  216. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/views/test_structures.py +0 -0
  217. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/tests/views/utils.py +0 -0
  218. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/urls.py +0 -0
  219. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/views/__init__.py +0 -0
  220. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/views/common.py +0 -0
  221. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/views/public.py +0 -0
  222. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/views/statistics.py +0 -0
  223. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/views/status.py +0 -0
  224. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/views/structures.py +0 -0
  225. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/webhooks/__init__.py +0 -0
  226. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/webhooks/core.py +0 -0
  227. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/webhooks/managers.py +0 -0
  228. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/webhooks/models.py +0 -0
  229. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/webhooks/tests/__init__.py +0 -0
  230. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/webhooks/tests/test_core.py +0 -0
  231. {aa_structures-2.16.0 → aa_structures-2.17.0}/structures/webhooks/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.3
2
2
  Name: aa-structures
3
- Version: 2.16.0
3
+ Version: 2.17.0
4
4
  Summary: App for managing Eve Online structures with Alliance Auth.
5
5
  Author-email: Erik Kalkoken <kalkoken87@gmail.com>
6
6
  Requires-Python: >=3.8
@@ -3,5 +3,5 @@
3
3
  # pylint: disable = invalid-name
4
4
  default_app_config = "structures.apps.StructuresConfig"
5
5
 
6
- __version__ = "2.16.0"
6
+ __version__ = "2.17.0"
7
7
  __title__ = "Structures"
@@ -157,3 +157,61 @@ class NotificationCharLeftCorpMsg(NotificationCorpCharEmbed):
157
157
  "corporation_name": self._corporation_link,
158
158
  }
159
159
  self._color = Webhook.Color.INFO
160
+
161
+
162
+ class NotificationCorpGoalEmbed(NotificationBaseEmbed):
163
+ def __init__(self, notification: Notification) -> None:
164
+ super().__init__(notification)
165
+ self._creator = get_or_create_eve_entity(id=self._data["creator_id"])
166
+ self._creator_link = gen_eve_entity_link(self._creator)
167
+ self._corporation = get_or_create_eve_entity(id=self._data["corporation_id"])
168
+ self._goal_name = self._data["goal_name"]
169
+ self._thumbnail = dhooks_lite.Thumbnail(
170
+ self._corporation.icon_url(size=self.ICON_DEFAULT_SIZE)
171
+ )
172
+
173
+
174
+ class NotificationCorpGoalClosed(NotificationCorpGoalEmbed):
175
+ def __init__(self, notification: Notification) -> None:
176
+ super().__init__(notification)
177
+ self._title = _("Project canceled")
178
+ closer = get_or_create_eve_entity(id=self._data["closer_id"])
179
+ self._description = _(
180
+ "Project **%(goal_name)s** has ben closed by %(closer)s "
181
+ "and will not accept further contributions."
182
+ % {
183
+ "goal_name": self._goal_name,
184
+ "closer": gen_eve_entity_link(closer),
185
+ }
186
+ )
187
+ self._color = Webhook.Color.INFO
188
+
189
+
190
+ class NotificationCorpGoalCompleted(NotificationCorpGoalEmbed):
191
+ def __init__(self, notification: Notification) -> None:
192
+ super().__init__(notification)
193
+ self._title = _("Project completed")
194
+ self._description = _(
195
+ "Project **%(goal_name)s** created by %(creator)s "
196
+ "has been successfully completed after reaching it's target."
197
+ % {
198
+ "goal_name": self._goal_name,
199
+ "creator": self._creator_link,
200
+ }
201
+ )
202
+ self._color = Webhook.Color.SUCCESS
203
+
204
+
205
+ class NotificationCorpGoalCreated(NotificationCorpGoalEmbed):
206
+ def __init__(self, notification: Notification) -> None:
207
+ super().__init__(notification)
208
+ self._title = _("New Project Available")
209
+ self._description = _(
210
+ "Project **%(goal_name)s** has been created by %(creator)s "
211
+ "and is open for contributions."
212
+ % {
213
+ "goal_name": self._goal_name,
214
+ "creator": self._creator_link,
215
+ }
216
+ )
217
+ self._color = Webhook.Color.INFO
@@ -1,4 +1,4 @@
1
- """Billing embeds."""
1
+ """Dispatcher for all embeds."""
2
2
 
3
3
  # pylint: disable=missing-class-docstring
4
4
 
@@ -198,6 +198,9 @@ class NotificationBaseEmbed:
198
198
  NotificationCorpAppInvitedMsg,
199
199
  NotificationCorpAppNewMsg,
200
200
  NotificationCorpAppRejectCustomMsg,
201
+ NotificationCorpGoalClosed,
202
+ NotificationCorpGoalCompleted,
203
+ NotificationCorpGoalCreated,
201
204
  )
202
205
  from .moonmining_embeds import (
203
206
  NotificationMoonminningAutomaticFracture,
@@ -283,7 +286,7 @@ class NotificationBaseEmbed:
283
286
  NT.BILLING_CORP_ALL_BILL_MSG: NotificationCorpAllBillMsg,
284
287
  NT.BILLING_I_HUB_BILL_ABOUT_TO_EXPIRE: NotificationBillingIHubBillAboutToExpire,
285
288
  NT.BILLING_I_HUB_DESTROYED_BY_BILL_FAILURE: NotificationBillingIHubDestroyedByBillFailure,
286
- # character
289
+ # Corporate
287
290
  NT.CHAR_APP_ACCEPT_MSG: NotificationCharAppAcceptMsg,
288
291
  NT.CHAR_APP_WITHDRAW_MSG: NotificationCharAppWithdrawMsg,
289
292
  NT.CHAR_LEFT_CORP_MSG: NotificationCharLeftCorpMsg,
@@ -291,6 +294,9 @@ class NotificationBaseEmbed:
291
294
  NT.CORP_APP_NEW_MSG: NotificationCorpAppNewMsg,
292
295
  NT.CORP_APP_REJECT_CUSTOM_MSG: NotificationCorpAppRejectCustomMsg,
293
296
  NT.CORP_APP_REJECT_MSG: NotificationCharAppRejectMsg,
297
+ NT.CORPORATION_GOAL_CLOSED: NotificationCorpGoalClosed,
298
+ NT.CORPORATION_GOAL_COMPLETED: NotificationCorpGoalCompleted,
299
+ NT.CORPORATION_GOAL_CREATED: NotificationCorpGoalCreated,
294
300
  # moonmining
295
301
  NT.MOONMINING_AUTOMATIC_FRACTURE: NotificationMoonminningAutomaticFracture,
296
302
  NT.MOONMINING_EXTRACTION_CANCELLED: NotificationMoonminningExtractionCanceled,
@@ -11,61 +11,42 @@ from structures.app_settings import STRUCTURES_FEATURE_REFUELED_NOTIFICATIONS
11
11
  class NotificationType(models.TextChoices):
12
12
  """Definition of all supported notification types."""
13
13
 
14
- # upwell structures
15
- OWNERSHIP_TRANSFERRED = "OwnershipTransferred", _(
16
- "Upwell structure ownership transferred"
17
- )
18
- STRUCTURE_ANCHORING = "StructureAnchoring", _("Upwell structure anchoring")
19
- STRUCTURE_DESTROYED = "StructureDestroyed", _("Upwell structure destroyed")
20
- STRUCTURE_FUEL_ALERT = "StructureFuelAlert", _("Upwell structure fuel alert")
21
- STRUCTURE_JUMP_FUEL_ALERT = "StructureJumpFuelAlert", _(
22
- "Upwell structure jump fuel alert"
23
- )
24
- STRUCTURE_LOST_ARMOR = "StructureLostArmor", _("Upwell structure lost armor")
25
- STRUCTURE_LOST_SHIELD = "StructureLostShields", _("Upwell structure lost shields")
26
- STRUCTURE_LOW_REAGENTS_ALERT = "StructureLowReagentsAlert", _(
27
- "Structure low reagents alert"
28
- )
29
- STRUCTURE_NO_REAGENTS_ALERT = "StructureNoReagentsAlert", _(
30
- "Structure no reagents alert"
31
- )
32
- STRUCTURE_ONLINE = "StructureOnline", _("Upwell structure went online")
33
- STRUCTURE_REFUELED_EXTRA = "StructureRefueledExtra", _("Upwell structure refueled")
34
- STRUCTURE_REINFORCEMENT_CHANGED = "StructuresReinforcementChanged", _(
35
- "Upwell structure reinforcement time changed"
36
- )
37
- STRUCTURE_SERVICES_OFFLINE = "StructureServicesOffline", _(
38
- "Upwell structure services went offline"
14
+ # billing
15
+ BILLING_BILL_OUT_OF_MONEY_MSG = "BillOutOfMoneyMsg", _("Bill out of money")
16
+ BILLING_CORP_ALL_BILL_MSG = "CorpAllBillMsg", _("Corp alliance billing message")
17
+ BILLING_I_HUB_BILL_ABOUT_TO_EXPIRE = (
18
+ "InfrastructureHubBillAboutToExpire",
19
+ _("I-HUB bill about to expire"),
39
20
  )
40
- STRUCTURE_UNANCHORING = "StructureUnanchoring", _("Upwell structure unanchoring")
41
- STRUCTURE_UNDER_ATTACK = "StructureUnderAttack", _(
42
- "Upwell structure is under attack"
21
+ BILLING_I_HUB_DESTROYED_BY_BILL_FAILURE = (
22
+ "IHubDestroyedByBillFailure",
23
+ _("I_HUB destroyed by bill failure"),
43
24
  )
44
- STRUCTURE_WENT_HIGH_POWER = "StructureWentHighPower", _(
45
- "Upwell structure went high power"
25
+
26
+ # Corporation Membership
27
+ CHAR_APP_ACCEPT_MSG = "CharAppAcceptMsg", _("Character joins corporation")
28
+ CORP_APP_INVITED_MSG = "CorpAppInvitedMsg", _(
29
+ "Character invited to join corporation"
46
30
  )
47
- STRUCTURE_WENT_LOW_POWER = "StructureWentLowPower", _(
48
- "Upwell structure went low power"
31
+ CORP_APP_NEW_MSG = "CorpAppNewMsg", _("Character submitted application")
32
+ CORP_APP_REJECT_MSG = "CharAppRejectMsg", _("Corp application rejected message")
33
+ CORP_APP_REJECT_CUSTOM_MSG = "CorpAppRejectCustomMsg", _(
34
+ "Corp application rejected custom message"
49
35
  )
36
+ CHAR_APP_WITHDRAW_MSG = "CharAppWithdrawMsg", _("Character withdrew application")
37
+ CHAR_LEFT_CORP_MSG = "CharLeftCorpMsg", _("Character leaves corporation")
50
38
 
51
- # Skyhook structures
52
- SKYHOOK_DEPLOYED = "SkyhookDeployed", _("Skyhook deployed")
53
- SKYHOOK_DESTROYED = "SkyhookDestroyed", _("Skyhook destroyed")
54
- SKYHOOK_LOST_SHIELDS = "SkyhookLostShields", _("Skyhook lost shields")
55
- SKYHOOK_ONLINE = "SkyhookOnline", _("Skyhook online")
56
- SKYHOOK_UNDER_ATTACK = "SkyhookUnderAttack", _("Skyhook under attack")
57
-
58
- # customs offices
59
- ORBITAL_ATTACKED = "OrbitalAttacked", _("Customs office attacked")
60
- ORBITAL_REINFORCED = "OrbitalReinforced", _("Customs office reinforced")
39
+ # Corporation Goals
40
+ CORPORATION_GOAL_CLOSED = "CorporationGoalClosed", _("Corporation goal closed")
41
+ CORPORATION_GOAL_COMPLETED = "CorporationGoalCompleted", _(
42
+ "Corporation goal completed"
43
+ )
44
+ CORPORATION_GOAL_CREATED = "CorporationGoalCreated", _("Corporation goal created")
45
+ # CORPORATION_GOAL_NAME_CHANGE = "CorporationGoalNameChange", _(
46
+ # "Corporation goal name change"
47
+ # )
61
48
 
62
- # starbases
63
- TOWER_ALERT_MSG = "TowerAlertMsg", _("Starbase attacked")
64
- TOWER_REFUELED_EXTRA = "TowerRefueledExtra", _("Starbase refueled (BETA)")
65
- TOWER_REINFORCED_EXTRA = "TowerReinforcedExtra", _("Starbase reinforced (BETA)")
66
- TOWER_RESOURCE_ALERT_MSG = "TowerResourceAlertMsg", _("Starbase fuel alert")
67
-
68
- # moon mining
49
+ # Moon Mining
69
50
  MOONMINING_AUTOMATIC_FRACTURE = "MoonminingAutomaticFracture", _(
70
51
  "Moon mining automatic fracture triggered"
71
52
  )
@@ -80,7 +61,18 @@ class NotificationType(models.TextChoices):
80
61
  )
81
62
  MOONMINING_LASER_FIRED = "MoonminingLaserFired", _("Moonmining laser fired")
82
63
 
83
- # sov
64
+ # Skyhook structures
65
+ SKYHOOK_DEPLOYED = "SkyhookDeployed", _("Skyhook deployed")
66
+ SKYHOOK_DESTROYED = "SkyhookDestroyed", _("Skyhook destroyed")
67
+ SKYHOOK_LOST_SHIELDS = "SkyhookLostShields", _("Skyhook lost shields")
68
+ SKYHOOK_ONLINE = "SkyhookOnline", _("Skyhook online")
69
+ SKYHOOK_UNDER_ATTACK = "SkyhookUnderAttack", _("Skyhook under attack")
70
+
71
+ # Orbitals
72
+ ORBITAL_ATTACKED = "OrbitalAttacked", _("Customs office attacked")
73
+ ORBITAL_REINFORCED = "OrbitalReinforced", _("Customs office reinforced")
74
+
75
+ # Sov
84
76
  SOV_ALL_CLAIM_ACQUIRED_MSG = "SovAllClaimAquiredMsg", _(
85
77
  "Sovereignty claim acknowledgment" # SovAllClaimAquiredMsg [sic!]
86
78
  )
@@ -101,7 +93,50 @@ class NotificationType(models.TextChoices):
101
93
  "Sovereignty command node event started"
102
94
  )
103
95
 
104
- # wars
96
+ # Starbases
97
+ TOWER_ALERT_MSG = "TowerAlertMsg", _("Starbase attacked")
98
+ TOWER_REFUELED_EXTRA = "TowerRefueledExtra", _("Starbase refueled (BETA)")
99
+ TOWER_REINFORCED_EXTRA = "TowerReinforcedExtra", _("Starbase reinforced (BETA)")
100
+ TOWER_RESOURCE_ALERT_MSG = "TowerResourceAlertMsg", _("Starbase fuel alert")
101
+
102
+ # Upwell Structures
103
+ OWNERSHIP_TRANSFERRED = "OwnershipTransferred", _(
104
+ "Upwell structure ownership transferred"
105
+ )
106
+ STRUCTURE_ANCHORING = "StructureAnchoring", _("Upwell structure anchoring")
107
+ STRUCTURE_DESTROYED = "StructureDestroyed", _("Upwell structure destroyed")
108
+ STRUCTURE_FUEL_ALERT = "StructureFuelAlert", _("Upwell structure fuel alert")
109
+ STRUCTURE_JUMP_FUEL_ALERT = "StructureJumpFuelAlert", _(
110
+ "Upwell structure jump fuel alert"
111
+ )
112
+ STRUCTURE_LOST_ARMOR = "StructureLostArmor", _("Upwell structure lost armor")
113
+ STRUCTURE_LOST_SHIELD = "StructureLostShields", _("Upwell structure lost shields")
114
+ STRUCTURE_LOW_REAGENTS_ALERT = "StructureLowReagentsAlert", _(
115
+ "Structure low reagents alert"
116
+ )
117
+ STRUCTURE_NO_REAGENTS_ALERT = "StructureNoReagentsAlert", _(
118
+ "Structure no reagents alert"
119
+ )
120
+ STRUCTURE_ONLINE = "StructureOnline", _("Upwell structure went online")
121
+ STRUCTURE_REFUELED_EXTRA = "StructureRefueledExtra", _("Upwell structure refueled")
122
+ STRUCTURE_REINFORCEMENT_CHANGED = "StructuresReinforcementChanged", _(
123
+ "Upwell structure reinforcement time changed"
124
+ )
125
+ STRUCTURE_SERVICES_OFFLINE = "StructureServicesOffline", _(
126
+ "Upwell structure services went offline"
127
+ )
128
+ STRUCTURE_UNANCHORING = "StructureUnanchoring", _("Upwell structure unanchoring")
129
+ STRUCTURE_UNDER_ATTACK = "StructureUnderAttack", _(
130
+ "Upwell structure is under attack"
131
+ )
132
+ STRUCTURE_WENT_HIGH_POWER = "StructureWentHighPower", _(
133
+ "Upwell structure went high power"
134
+ )
135
+ STRUCTURE_WENT_LOW_POWER = "StructureWentLowPower", _(
136
+ "Upwell structure went low power"
137
+ )
138
+
139
+ # Wars
105
140
  WAR_ACCEPTED_ALLY = "AcceptedAlly", _("War accepted ally")
106
141
  WAR_ALL_WAR_CORP_JOINED_ALLIANCE_MSG = "AllWarCorpJoinedAllianceMsg", _(
107
142
  "Alliance war corporation joined alliance message"
@@ -142,31 +177,6 @@ class NotificationType(models.TextChoices):
142
177
  )
143
178
  WAR_WAR_SURRENDER_OFFER_MSG = "WarSurrenderOfferMsg", _("War surrender offered")
144
179
 
145
- # corporation membership
146
- CHAR_APP_ACCEPT_MSG = "CharAppAcceptMsg", _("Character joins corporation")
147
- CORP_APP_INVITED_MSG = "CorpAppInvitedMsg", _(
148
- "Character invited to join corporation"
149
- )
150
- CORP_APP_NEW_MSG = "CorpAppNewMsg", _("Character submitted application")
151
- CORP_APP_REJECT_MSG = "CharAppRejectMsg", _("Corp application rejected message")
152
- CORP_APP_REJECT_CUSTOM_MSG = "CorpAppRejectCustomMsg", _(
153
- "Corp application rejected custom message"
154
- )
155
- CHAR_APP_WITHDRAW_MSG = "CharAppWithdrawMsg", _("Character withdrew application")
156
- CHAR_LEFT_CORP_MSG = "CharLeftCorpMsg", _("Character leaves corporation")
157
-
158
- # billing
159
- BILLING_BILL_OUT_OF_MONEY_MSG = "BillOutOfMoneyMsg", _("Bill out of money")
160
- BILLING_CORP_ALL_BILL_MSG = "CorpAllBillMsg", _("Corp alliance billing message")
161
- BILLING_I_HUB_BILL_ABOUT_TO_EXPIRE = (
162
- "InfrastructureHubBillAboutToExpire",
163
- _("I-HUB bill about to expire"),
164
- )
165
- BILLING_I_HUB_DESTROYED_BY_BILL_FAILURE = (
166
- "IHubDestroyedByBillFailure",
167
- _("I_HUB destroyed by bill failure"),
168
- )
169
-
170
180
  @classmethod
171
181
  def esi_notifications(cls) -> Set["NotificationType"]:
172
182
  """Return all ESI notification types."""
@@ -0,0 +1,152 @@
1
+ # Generated by Django 4.2.16 on 2024-11-05 14:05
2
+
3
+ import multiselectfield.db.fields
4
+
5
+ from django.db import migrations
6
+
7
+
8
+ class Migration(migrations.Migration):
9
+
10
+ dependencies = [
11
+ ("structures", "0008_add_notificationtypes_skyhook_metenox"),
12
+ ]
13
+
14
+ operations = [
15
+ migrations.AlterField(
16
+ model_name="webhook",
17
+ name="notification_types",
18
+ field=multiselectfield.db.fields.MultiSelectField(
19
+ choices=[
20
+ ("BillOutOfMoneyMsg", "Bill out of money"),
21
+ ("CorpAllBillMsg", "Corp alliance billing message"),
22
+ (
23
+ "InfrastructureHubBillAboutToExpire",
24
+ "I-HUB bill about to expire",
25
+ ),
26
+ ("IHubDestroyedByBillFailure", "I_HUB destroyed by bill failure"),
27
+ ("CharAppAcceptMsg", "Character joins corporation"),
28
+ ("CorpAppInvitedMsg", "Character invited to join corporation"),
29
+ ("CorpAppNewMsg", "Character submitted application"),
30
+ ("CharAppRejectMsg", "Corp application rejected message"),
31
+ (
32
+ "CorpAppRejectCustomMsg",
33
+ "Corp application rejected custom message",
34
+ ),
35
+ ("CharAppWithdrawMsg", "Character withdrew application"),
36
+ ("CharLeftCorpMsg", "Character leaves corporation"),
37
+ ("CorporationGoalClosed", "Corporation goal closed"),
38
+ ("CorporationGoalCompleted", "Corporation goal completed"),
39
+ ("CorporationGoalCreated", "Corporation goal created"),
40
+ (
41
+ "MoonminingAutomaticFracture",
42
+ "Moon mining automatic fracture triggered",
43
+ ),
44
+ (
45
+ "MoonminingExtractionCancelled",
46
+ "Moon mining extraction cancelled",
47
+ ),
48
+ ("MoonminingExtractionFinished", "Moon mining extraction finished"),
49
+ ("MoonminingExtractionStarted", "Moon mining extraction started"),
50
+ ("MoonminingLaserFired", "Moonmining laser fired"),
51
+ ("SkyhookDeployed", "Skyhook deployed"),
52
+ ("SkyhookDestroyed", "Skyhook destroyed"),
53
+ ("SkyhookLostShields", "Skyhook lost shields"),
54
+ ("SkyhookOnline", "Skyhook online"),
55
+ ("SkyhookUnderAttack", "Skyhook under attack"),
56
+ ("OrbitalAttacked", "Customs office attacked"),
57
+ ("OrbitalReinforced", "Customs office reinforced"),
58
+ ("SovAllClaimAquiredMsg", "Sovereignty claim acknowledgment"),
59
+ ("SovAllClaimLostMsg", "Sovereignty lost"),
60
+ ("AllAnchoringMsg", "Structure anchoring in alliance space"),
61
+ ("EntosisCaptureStarted", "Sovereignty entosis capture started"),
62
+ ("SovStructureDestroyed", "Sovereignty structure destroyed"),
63
+ ("SovStructureReinforced", "Sovereignty structure reinforced"),
64
+ (
65
+ "SovCommandNodeEventStarted",
66
+ "Sovereignty command node event started",
67
+ ),
68
+ ("TowerAlertMsg", "Starbase attacked"),
69
+ ("TowerRefueledExtra", "Starbase refueled (BETA)"),
70
+ ("TowerReinforcedExtra", "Starbase reinforced (BETA)"),
71
+ ("TowerResourceAlertMsg", "Starbase fuel alert"),
72
+ ("OwnershipTransferred", "Upwell structure ownership transferred"),
73
+ ("StructureAnchoring", "Upwell structure anchoring"),
74
+ ("StructureDestroyed", "Upwell structure destroyed"),
75
+ ("StructureFuelAlert", "Upwell structure fuel alert"),
76
+ ("StructureJumpFuelAlert", "Upwell structure jump fuel alert"),
77
+ ("StructureLostArmor", "Upwell structure lost armor"),
78
+ ("StructureLostShields", "Upwell structure lost shields"),
79
+ ("StructureLowReagentsAlert", "Structure low reagents alert"),
80
+ ("StructureNoReagentsAlert", "Structure no reagents alert"),
81
+ ("StructureOnline", "Upwell structure went online"),
82
+ ("StructureRefueledExtra", "Upwell structure refueled"),
83
+ (
84
+ "StructuresReinforcementChanged",
85
+ "Upwell structure reinforcement time changed",
86
+ ),
87
+ (
88
+ "StructureServicesOffline",
89
+ "Upwell structure services went offline",
90
+ ),
91
+ ("StructureUnanchoring", "Upwell structure unanchoring"),
92
+ ("StructureUnderAttack", "Upwell structure is under attack"),
93
+ ("StructureWentHighPower", "Upwell structure went high power"),
94
+ ("StructureWentLowPower", "Upwell structure went low power"),
95
+ ("AcceptedAlly", "War accepted ally"),
96
+ (
97
+ "AllWarCorpJoinedAllianceMsg",
98
+ "Alliance war corporation joined alliance message",
99
+ ),
100
+ ("AllWarSurrenderMsg", "Alliance war surrender message"),
101
+ ("AllyJoinedWarAggressorMsg", "War ally joined aggressor"),
102
+ ("AllyJoinedWarAllyMsg", "War ally joined ally"),
103
+ ("AllyJoinedWarDefenderMsg", "War ally joined defender"),
104
+ ("CorpWarSurrenderMsg", "War party surrendered"),
105
+ ("CorpBecameWarEligible", "War corporation became eligible"),
106
+ ("CorpNoLongerWarEligible", "War corporation no longer eligible"),
107
+ ("DeclareWar", "War declared"),
108
+ ("WarHQRemovedFromSpace", "War HQ removed from space"),
109
+ ("WarInvalid", "War invalid"),
110
+ (
111
+ "MercOfferedNegotiationMsg",
112
+ "War mercenary offered negotiation message",
113
+ ),
114
+ ("MercOfferRetractedMsg", "War mercenary offer retracted message"),
115
+ ("OfferedSurrender", "War offered surrender"),
116
+ ("OfferedToAlly", "War offered to become ally"),
117
+ ("WarAdopted", "War adopted"),
118
+ ("WarDeclared", "War declared"),
119
+ ("WarInherited", "War inherited"),
120
+ ("WarRetractedByConcord", "War retracted by Concord"),
121
+ ("WarSurrenderOfferMsg", "War surrender offered"),
122
+ ],
123
+ default=[
124
+ "OrbitalAttacked",
125
+ "OrbitalReinforced",
126
+ "SkyhookDestroyed",
127
+ "SkyhookLostShields",
128
+ "SkyhookOnline",
129
+ "SkyhookUnderAttack",
130
+ "SovStructureDestroyed",
131
+ "SovStructureReinforced",
132
+ "StructureAnchoring",
133
+ "StructureDestroyed",
134
+ "StructureFuelAlert",
135
+ "StructureLostArmor",
136
+ "StructureLostShields",
137
+ "StructureLowReagentsAlert",
138
+ "StructureNoReagentsAlert",
139
+ "StructureOnline",
140
+ "StructureServicesOffline",
141
+ "StructureUnderAttack",
142
+ "StructureWentHighPower",
143
+ "StructureWentLowPower",
144
+ "TowerAlertMsg",
145
+ "TowerResourceAlertMsg",
146
+ ],
147
+ help_text="Select which type of notifications should be forwarded to this webhook",
148
+ max_length=1544,
149
+ verbose_name="notification types",
150
+ ),
151
+ ),
152
+ ]
@@ -703,7 +703,7 @@ class Owner(models.Model):
703
703
 
704
704
  s.eve_moon = celestial.eve_object
705
705
  s.save()
706
- logger.info("%s: Resolved moon for Metenox: %d", self, s.name)
706
+ logger.info("%s: Resolved moon for Metenox: %s", self, s.name)
707
707
 
708
708
  def _fetch_custom_offices(self, token: Token) -> bool:
709
709
  """Fetch custom offices from ESI for this owner.
@@ -806,6 +806,36 @@
806
806
  "is_read": false,
807
807
  "is_sent": false
808
808
  },
809
+ {
810
+ "notification_id": 1000001401,
811
+ "type": "CorporationGoalClosed",
812
+ "sender_id": 2901,
813
+ "sender_type": "corporation",
814
+ "timestamp": "2019-11-18 20:00:00",
815
+ "text": "closer_id: 1011\ncorporation_id: 2001\ncreator_id: 1001\ngoal_id: 287804106856621566338600488094573709306\ngoal_name: Strawberry Jam",
816
+ "is_read": false,
817
+ "is_sent": false
818
+ },
819
+ {
820
+ "notification_id": 1000001402,
821
+ "type": "CorporationGoalCompleted",
822
+ "sender_id": 2901,
823
+ "sender_type": "corporation",
824
+ "timestamp": "2019-11-18 20:00:00",
825
+ "text": "corporation_id: 2001\ncreator_id: 1001\ngoal_id: 287804106856621566338600488094573709306\ngoal_name: Strawberry Jam",
826
+ "is_read": false,
827
+ "is_sent": false
828
+ },
829
+ {
830
+ "notification_id": 1000001403,
831
+ "type": "CorporationGoalCreated",
832
+ "sender_id": 2901,
833
+ "sender_type": "corporation",
834
+ "timestamp": "2019-11-18 20:00:00",
835
+ "text": "corporation_id: 2001\ncreator_id: 1001\ngoal_id: 287804106856621566338600488094573709306\ngoal_name: Strawberry Jam",
836
+ "is_read": false,
837
+ "is_sent": false
838
+ },
809
839
  {
810
840
  "notification_id": 1999999999,
811
841
  "type": "UnknownNotificationType",
@@ -80,7 +80,7 @@ def main():
80
80
  }
81
81
  structure, _ = Structure.objects.update_or_create_from_dict(structure, owner)
82
82
 
83
- p = Path(__file__).parent / "/entities.json"
83
+ p = Path(__file__).parent / "entities.json"
84
84
  with p.open(mode="r", encoding="utf-8") as fp:
85
85
  data = json.load(fp)
86
86
 
File without changes
File without changes