From 8a40da2583aa86cc192e44e3d1bedfecb853f45b Mon Sep 17 00:00:00 2001 From: nataly Date: Fri, 19 Apr 2024 15:35:33 +0300 Subject: [PATCH] New changes. --- .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 189 bytes .../__pycache__/admin.cpython-312.pyc | Bin 0 -> 693 bytes .../__pycache__/apps.cpython-312.pyc | Bin 0 -> 505 bytes .../__pycache__/models.cpython-312.pyc | Bin 0 -> 2897 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 0 -> 898 bytes .../0002_country_addressbook.cpython-312.pyc | Bin 0 -> 1847 bytes .../__pycache__/0003_contact.cpython-312.pyc | Bin 0 -> 1410 bytes .../0004_socialmedia.cpython-312.pyc | Bin 0 -> 1231 bytes ...05_socialmedia_addressbook.cpython-312.pyc | Bin 0 -> 1000 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 200 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 185 bytes .../billing/__pycache__/admin.cpython-312.pyc | Bin 0 -> 939 bytes .../billing/__pycache__/apps.cpython-312.pyc | Bin 0 -> 493 bytes .../__pycache__/models.cpython-312.pyc | Bin 0 -> 9358 bytes .../billing/__pycache__/urls.cpython-312.pyc | Bin 0 -> 987 bytes .../billing/__pycache__/views.cpython-312.pyc | Bin 0 -> 3649 bytes .../add/__pycache__/urls.cpython-312.pyc | Bin 0 -> 572 bytes .../add/__pycache__/views.cpython-312.pyc | Bin 0 -> 4838 bytes osinaweb/billing/add/urls.py | 4 +- osinaweb/billing/add/views.py | 68 +--------- .../__pycache__/0001_initial.cpython-312.pyc | Bin 0 -> 2244 bytes ...vice_cancelled_at_and_more.cpython-312.pyc | Bin 0 -> 1214 bytes ...003_payment_servicepayment.cpython-312.pyc | Bin 0 -> 1847 bytes ...rename_payment_paymenttype.cpython-312.pyc | Bin 0 -> 688 bytes ...05_service_recurring_cycle.cpython-312.pyc | Bin 0 -> 1015 bytes ...ervice_created_at_and_more.cpython-312.pyc | Bin 0 -> 1092 bytes ...er_service_recurring_cycle.cpython-312.pyc | Bin 0 -> 1076 bytes .../0008_alter_service_type.cpython-312.pyc | Bin 0 -> 1067 bytes ...cepayment_service_and_more.cpython-312.pyc | Bin 0 -> 1823 bytes .../0010_charge_amount.cpython-312.pyc | Bin 0 -> 853 bytes .../__pycache__/0011_invoice.cpython-312.pyc | Bin 0 -> 1291 bytes ...nt_charge_receipt_and_more.cpython-312.pyc | Bin 0 -> 1456 bytes ...alter_invoice_date_created.cpython-312.pyc | Bin 0 -> 796 bytes ...014_servicepayment_comment.cpython-312.pyc | Bin 0 -> 798 bytes .../__pycache__/0015_order.cpython-312.pyc | Bin 0 -> 1528 bytes .../0016_alter_order_status.cpython-312.pyc | Bin 0 -> 882 bytes .../0017_service_order.cpython-312.pyc | Bin 0 -> 989 bytes .../0018_alter_order_status.cpython-312.pyc | Bin 0 -> 890 bytes ..._service_customer_and_more.cpython-312.pyc | Bin 0 -> 4689 bytes .../0020_orderitem.cpython-312.pyc | Bin 0 -> 1344 bytes ...m_recurring_cycle_and_more.cpython-312.pyc | Bin 0 -> 1124 bytes ...e_item_created_at_and_more.cpython-312.pyc | Bin 0 -> 1150 bytes ...em_project_alter_item_type.cpython-312.pyc | Bin 0 -> 1370 bytes .../0024_remove_item_active.cpython-312.pyc | Bin 0 -> 682 bytes ...item_project_item_customer.cpython-312.pyc | Bin 0 -> 1176 bytes ...tem_type_remove_order_paid.cpython-312.pyc | Bin 0 -> 836 bytes .../0027_item_type.cpython-312.pyc | Bin 0 -> 859 bytes ...0028_remove_order_due_date.cpython-312.pyc | Bin 0 -> 663 bytes .../0029_invoice_pdf.cpython-312.pyc | Bin 0 -> 788 bytes .../0030_alter_invoice_order.cpython-312.pyc | Bin 0 -> 982 bytes ...ter_invoice_invoice_number.cpython-312.pyc | Bin 0 -> 809 bytes .../0032_order_business.cpython-312.pyc | Bin 0 -> 1066 bytes .../0033_alter_order_status.cpython-312.pyc | Bin 0 -> 907 bytes .../0034_alter_invoice_pdf.cpython-312.pyc | Bin 0 -> 810 bytes .../0035_alter_invoice_pdf.cpython-312.pyc | Bin 0 -> 792 bytes ...ter_invoice_invoice_number.cpython-312.pyc | Bin 0 -> 818 bytes .../0037_recurringcycle_item.cpython-312.pyc | Bin 0 -> 998 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 196 bytes .../templates/listing_pages/orders.html | 2 +- .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 190 bytes .../__pycache__/admin.cpython-312.pyc | Bin 0 -> 234 bytes .../__pycache__/apps.cpython-312.pyc | Bin 0 -> 508 bytes .../__pycache__/decorators.cpython-312.pyc | Bin 0 -> 1012 bytes .../__pycache__/models.cpython-312.pyc | Bin 0 -> 231 bytes .../__pycache__/urls.cpython-312.pyc | Bin 0 -> 1452 bytes .../__pycache__/views.cpython-312.pyc | Bin 0 -> 8208 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 201 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 187 bytes .../__pycache__/admin.cpython-312.pyc | Bin 0 -> 3276 bytes .../__pycache__/apps.cpython-312.pyc | Bin 0 -> 499 bytes .../custom_context.cpython-312.pyc | Bin 0 -> 6468 bytes .../__pycache__/decorators.cpython-312.pyc | Bin 0 -> 995 bytes .../__pycache__/forms.cpython-312.pyc | Bin 0 -> 1270 bytes .../__pycache__/models.cpython-312.pyc | Bin 0 -> 22786 bytes .../__pycache__/urls.cpython-312.pyc | Bin 0 -> 6149 bytes .../__pycache__/views.cpython-312.pyc | Bin 0 -> 28837 bytes .../add/__pycache__/urls.cpython-312.pyc | Bin 0 -> 2619 bytes .../add/__pycache__/views.cpython-312.pyc | Bin 0 -> 22054 bytes .../__pycache__/serializers.cpython-312.pyc | Bin 0 -> 1181 bytes .../api/__pycache__/urls.cpython-312.pyc | Bin 0 -> 394 bytes .../api/__pycache__/views.cpython-312.pyc | Bin 0 -> 1966 bytes .../delete/__pycache__/urls.cpython-312.pyc | Bin 0 -> 1568 bytes .../delete/__pycache__/views.cpython-312.pyc | Bin 0 -> 5239 bytes .../edit/__pycache__/urls.cpython-312.pyc | Bin 0 -> 2570 bytes .../edit/__pycache__/views.cpython-312.pyc | Bin 0 -> 23525 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 0 -> 3804 bytes ...ions_staffprofile_and_more.cpython-312.pyc | Bin 0 -> 3960 bytes .../0003_milestone.cpython-312.pyc | Bin 0 -> 1505 bytes .../__pycache__/0004_epic.cpython-312.pyc | Bin 0 -> 1447 bytes .../0005_staffprofile_image.cpython-312.pyc | Bin 0 -> 779 bytes .../__pycache__/0006_note.cpython-312.pyc | Bin 0 -> 1685 bytes ...ct_id_alter_project_status.cpython-312.pyc | Bin 0 -> 1058 bytes ...8_alter_project_project_id.cpython-312.pyc | Bin 0 -> 837 bytes ...9_alter_project_project_id.cpython-312.pyc | Bin 0 -> 821 bytes .../0010_remove_note_date.cpython-312.pyc | Bin 0 -> 672 bytes ...r_alter_note_text_and_more.cpython-312.pyc | Bin 0 -> 1808 bytes .../0012_projectrequirement.cpython-312.pyc | Bin 0 -> 1295 bytes .../0013_projectfile.cpython-312.pyc | Bin 0 -> 1410 bytes ...014_alter_projectfile_file.cpython-312.pyc | Bin 0 -> 790 bytes .../0015_projectcredentials.cpython-312.pyc | Bin 0 -> 1416 bytes ...dentials_projectcredential.cpython-312.pyc | Bin 0 -> 722 bytes ...e_alter_project_start_date.cpython-312.pyc | Bin 0 -> 966 bytes .../0018_epic_status.cpython-312.pyc | Bin 0 -> 866 bytes ...date_alter_epic_start_date.cpython-312.pyc | Bin 0 -> 924 bytes .../__pycache__/0020_task.cpython-312.pyc | Bin 0 -> 1942 bytes ...rprofile_business_and_more.cpython-312.pyc | Bin 0 -> 2856 bytes ...ustomerprofile_customer_id.cpython-312.pyc | Bin 0 -> 847 bytes .../0023_task_assigned_to.cpython-312.pyc | Bin 0 -> 1005 bytes .../0024_task_task_id.cpython-312.pyc | Bin 0 -> 793 bytes .../__pycache__/0025_status.cpython-312.pyc | Bin 0 -> 1576 bytes ...e_status_user_status_staff.cpython-312.pyc | Bin 0 -> 1128 bytes .../0027_alter_status_staff.cpython-312.pyc | Bin 0 -> 1046 bytes ...8_remove_projecttype_color.cpython-312.pyc | Bin 0 -> 682 bytes .../0029_alter_reference_date.cpython-312.pyc | Bin 0 -> 791 bytes .../__pycache__/0030_tag.cpython-312.pyc | Bin 0 -> 919 bytes ...1_alter_staffprofile_image.cpython-312.pyc | Bin 0 -> 797 bytes .../__pycache__/0032_point.cpython-312.pyc | Bin 0 -> 1429 bytes ...nt_date_workingon_and_more.cpython-312.pyc | Bin 0 -> 1219 bytes ...nt_date_completed_and_more.cpython-312.pyc | Bin 0 -> 1275 bytes .../0035_business_business_id.cpython-312.pyc | Bin 0 -> 829 bytes ...lter_staffprofile_position.cpython-312.pyc | Bin 0 -> 1160 bytes ...move_staffprofile_position.cpython-312.pyc | Bin 0 -> 714 bytes ...taffprofile_staff_position.cpython-312.pyc | Bin 0 -> 1029 bytes ...taffprofile_staff_position.cpython-312.pyc | Bin 0 -> 1054 bytes ...0040_staffprofile_staff_id.cpython-312.pyc | Bin 0 -> 829 bytes .../0041_dailyreport.cpython-312.pyc | Bin 0 -> 1467 bytes ...omerprofile_email_and_more.cpython-312.pyc | Bin 0 -> 1173 bytes .../0043_businesstype.cpython-312.pyc | Bin 0 -> 955 bytes ...ove_business_business_type.cpython-312.pyc | Bin 0 -> 686 bytes .../0045_business_type.cpython-312.pyc | Bin 0 -> 1019 bytes .../0046_task_requirement.cpython-312.pyc | Bin 0 -> 1015 bytes .../0047_task_status_date.cpython-312.pyc | Bin 0 -> 920 bytes ...r_customerprofile_business.cpython-312.pyc | Bin 0 -> 1074 bytes ...r_customerprofile_business.cpython-312.pyc | Bin 0 -> 1042 bytes ...by_projectrequirement_date.cpython-312.pyc | Bin 0 -> 1374 bytes ...051_alter_task_requirement.cpython-312.pyc | Bin 0 -> 1045 bytes .../0052_note_project.cpython-312.pyc | Bin 0 -> 998 bytes .../0053_pointactivity.cpython-312.pyc | Bin 0 -> 1289 bytes ...nt_date_completed_and_more.cpython-312.pyc | Bin 0 -> 926 bytes .../0055_alter_point_status.cpython-312.pyc | Bin 0 -> 921 bytes ...ter_pointactivity_end_time.cpython-312.pyc | Bin 0 -> 806 bytes ...otal_time_minutes_and_more.cpython-312.pyc | Bin 0 -> 1105 bytes ..._total_time_hours_and_more.cpython-312.pyc | Bin 0 -> 904 bytes ...059_alter_task_requirement.cpython-312.pyc | Bin 0 -> 1050 bytes ...0_pointactivity_total_time.cpython-312.pyc | Bin 0 -> 806 bytes ...date_alter_task_start_date.cpython-312.pyc | Bin 0 -> 927 bytes .../0062_connection.cpython-312.pyc | Bin 0 -> 1566 bytes ...0063_alter_connection_date.cpython-312.pyc | Bin 0 -> 773 bytes .../__pycache__/0064_reaction.cpython-312.pyc | Bin 0 -> 1596 bytes ...ter_customerprofile_status.cpython-312.pyc | Bin 0 -> 909 bytes ...business_business_customer.cpython-312.pyc | Bin 0 -> 1165 bytes ..._customerprofile_confirmed.cpython-312.pyc | Bin 0 -> 848 bytes ...profile_confirmed_and_more.cpython-312.pyc | Bin 0 -> 1053 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 198 bytes .../templates/email-confirmation-sent.html | 102 +++++++++++++++ .../templates/email_confirmation_sent.html | 0 .../forgot-password-confirmation.html | 121 ++++++++++++++++++ .../osinacore/templates/forgot-password.html | 110 ++++++++++++++++ osinaweb/osinacore/templates/login.html | 2 +- osinaweb/osinacore/urls.py | 3 + osinaweb/osinacore/views.py | 12 +- .../__pycache__/__init__.cpython-312.pyc | Bin 0 -> 186 bytes .../__pycache__/settings.cpython-312.pyc | Bin 0 -> 3512 bytes .../osinaweb/__pycache__/urls.cpython-312.pyc | Bin 0 -> 1477 bytes .../osinaweb/__pycache__/wsgi.cpython-312.pyc | Bin 0 -> 676 bytes .../forgot-password-confirmation.js | 53 ++++++++ 166 files changed, 406 insertions(+), 71 deletions(-) create mode 100644 osinaweb/addressbook/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/addressbook/__pycache__/admin.cpython-312.pyc create mode 100644 osinaweb/addressbook/__pycache__/apps.cpython-312.pyc create mode 100644 osinaweb/addressbook/__pycache__/models.cpython-312.pyc create mode 100644 osinaweb/addressbook/migrations/__pycache__/0001_initial.cpython-312.pyc create mode 100644 osinaweb/addressbook/migrations/__pycache__/0002_country_addressbook.cpython-312.pyc create mode 100644 osinaweb/addressbook/migrations/__pycache__/0003_contact.cpython-312.pyc create mode 100644 osinaweb/addressbook/migrations/__pycache__/0004_socialmedia.cpython-312.pyc create mode 100644 osinaweb/addressbook/migrations/__pycache__/0005_socialmedia_addressbook.cpython-312.pyc create mode 100644 osinaweb/addressbook/migrations/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/billing/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/billing/__pycache__/admin.cpython-312.pyc create mode 100644 osinaweb/billing/__pycache__/apps.cpython-312.pyc create mode 100644 osinaweb/billing/__pycache__/models.cpython-312.pyc create mode 100644 osinaweb/billing/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/billing/__pycache__/views.cpython-312.pyc create mode 100644 osinaweb/billing/add/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/billing/add/__pycache__/views.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0001_initial.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0002_service_active_service_cancelled_at_and_more.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0003_payment_servicepayment.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0004_rename_payment_paymenttype.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0005_service_recurring_cycle.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0006_alter_service_cancelled_at_alter_service_created_at_and_more.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0007_alter_service_recurring_cycle.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0008_alter_service_type.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0009_remove_service_due_at_remove_servicepayment_service_and_more.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0010_charge_amount.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0011_invoice.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0012_remove_servicepayment_charge_receipt_and_more.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0013_alter_invoice_date_created.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0014_servicepayment_comment.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0015_order.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0016_alter_order_status.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0017_service_order.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0018_alter_order_status.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0019_item_orderpayment_remove_service_customer_and_more.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0020_orderitem.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0021_remove_item_recurring_cycle_and_more.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0022_remove_item_cancelled_at_remove_item_created_at_and_more.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0023_alter_item_project_alter_item_type.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0024_remove_item_active.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0025_remove_item_project_item_customer.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0026_rename_type_item_item_type_remove_order_paid.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0027_item_type.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0028_remove_order_due_date.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0029_invoice_pdf.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0030_alter_invoice_order.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0031_alter_invoice_invoice_number.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0032_order_business.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0033_alter_order_status.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0034_alter_invoice_pdf.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0035_alter_invoice_pdf.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0036_alter_invoice_invoice_number.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/0037_recurringcycle_item.cpython-312.pyc create mode 100644 osinaweb/billing/migrations/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/customercore/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/customercore/__pycache__/admin.cpython-312.pyc create mode 100644 osinaweb/customercore/__pycache__/apps.cpython-312.pyc create mode 100644 osinaweb/customercore/__pycache__/decorators.cpython-312.pyc create mode 100644 osinaweb/customercore/__pycache__/models.cpython-312.pyc create mode 100644 osinaweb/customercore/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/customercore/__pycache__/views.cpython-312.pyc create mode 100644 osinaweb/customercore/migrations/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/admin.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/apps.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/custom_context.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/decorators.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/forms.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/models.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/osinacore/__pycache__/views.cpython-312.pyc create mode 100644 osinaweb/osinacore/add/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/osinacore/add/__pycache__/views.cpython-312.pyc create mode 100644 osinaweb/osinacore/api/__pycache__/serializers.cpython-312.pyc create mode 100644 osinaweb/osinacore/api/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/osinacore/api/__pycache__/views.cpython-312.pyc create mode 100644 osinaweb/osinacore/delete/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/osinacore/delete/__pycache__/views.cpython-312.pyc create mode 100644 osinaweb/osinacore/edit/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/osinacore/edit/__pycache__/views.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0003_milestone.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0004_epic.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0005_staffprofile_image.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0008_alter_project_project_id.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0009_alter_project_project_id.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0010_remove_note_date.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0011_note_date_alter_note_color_alter_note_text_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0013_projectfile.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0014_alter_projectfile_file.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0016_rename_projectcredentials_projectcredential.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0022_customerprofile_customer_id.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0023_task_assigned_to.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0025_status.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0026_remove_status_user_status_staff.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0027_alter_status_staff.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0029_alter_reference_date.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0030_tag.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0031_alter_staffprofile_image.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0034_alter_point_date_completed_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0035_business_business_id.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0037_remove_staffprofile_position.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0039_alter_staffprofile_staff_position.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0040_staffprofile_staff_id.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0041_dailyreport.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0044_remove_business_business_type.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0045_business_type.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0046_task_requirement.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0048_alter_customerprofile_business.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0049_alter_customerprofile_business.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0051_alter_task_requirement.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0054_remove_point_date_completed_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0055_alter_point_status.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0056_alter_pointactivity_end_time.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0057_point_total_time_hours_point_total_time_minutes_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0058_remove_point_total_time_hours_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0059_alter_task_requirement.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0060_pointactivity_total_time.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0061_alter_task_end_date_alter_task_start_date.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0062_connection.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0063_alter_connection_date.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0064_reaction.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0065_alter_customerprofile_status.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0066_remove_customerprofile_business_business_customer.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0067_customerprofile_confirmed.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0068_remove_customerprofile_confirmed_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/osinacore/templates/email-confirmation-sent.html delete mode 100644 osinaweb/osinacore/templates/email_confirmation_sent.html create mode 100644 osinaweb/osinacore/templates/forgot-password-confirmation.html create mode 100644 osinaweb/osinacore/templates/forgot-password.html create mode 100644 osinaweb/osinaweb/__pycache__/__init__.cpython-312.pyc create mode 100644 osinaweb/osinaweb/__pycache__/settings.cpython-312.pyc create mode 100644 osinaweb/osinaweb/__pycache__/urls.cpython-312.pyc create mode 100644 osinaweb/osinaweb/__pycache__/wsgi.cpython-312.pyc create mode 100644 osinaweb/static/js/forgot-password/forgot-password-confirmation.js diff --git a/osinaweb/addressbook/__pycache__/__init__.cpython-312.pyc b/osinaweb/addressbook/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..60d48e52f38323f4d8e74bc8417664d46a2c0cfd GIT binary patch literal 189 zcmX@j%ge<81Y6>j(m?cM5P=Rpvj9b=GgLBYGWxA#C}INgK7-W!iqQ`(PAw|d&o9m_ zNzTvJcgasK%}vcKDc1K(EJ@6%1WDv2>ZW8R=B4NB=cSf|`A{yHU7nhxpO}(Tlv-Sz wl%JoiA0MBYmst`YuUAm{i^C>2KczG$)vkyYXc;3A7lRldnHd=wiY5S>kOm&=8S7;MBMSQ)|G9}vN)q!81Hg*LLeUBkt@+pv2_xYEkj&fg$n z=fAKLBFdtbRlp*UE|t6aAO>vA6uWQU&YL&0&xL{wDxNMjF2B|NrITr-Ct$FN0PcVQ zK|TcN93dbnlJ--NDFhU?%&A~@w{kN)MbvmueRTXwWiF)3E~K&+Qsri)QE747^h89tG-{m1ZJFI? zv8qmFevc4Ng{U%irP(mTZY1+3%=NH;Oo@l@VW7>2XU?ghTsTa1bXnjWFgFfp7zwA2 zBkU*oA;jC`VVsb5M)@Qi;SOy$cx=~Db_%OqD(z%w?Wk#EpYHM%<)oJrO?C9s2%%3X teZXqp0%YFU*Y+C}U!Zt<*oC!sFn%$$F09WpM_nk*Gk?^)LWwUcuODF}jVu5F literal 0 HcmV?d00001 diff --git a/osinaweb/addressbook/__pycache__/apps.cpython-312.pyc b/osinaweb/addressbook/__pycache__/apps.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..84b231793a7df97d32c6908cb263ff230567805f GIT binary patch literal 505 zcmYjNJxjzu5S>kOa-X6i;uRKJ2q{cj3lUBa?XD9f&9Zm9Iig86W)qIs3HKjP{0Cy| zzp$}90#;Ub!fA7ryGca1n0asCykTZuI-MrS_l)=42btd$`F*ttEcPXs0R@VD2#|vi zXmAcxn*!AtdeX}}N6QSe_MwQ0@5h<54M>5mjWdDZvaFIEaFyQRL`UbBs(k zjeNaFY0QKea(-R5xZR;wBph>#4y}Mw<_qh@8~4(LpLxuud5iox24*di}wMB^)7k4 zZtAKBN8(^k&=XQm96{lbLl4O*J@nQ~ELp-@sh9RrZjo>=Idx_iY;YXWN?FO{nR(ya zH}B0i^Y-_amJosG7rAG~<_Y-=jr|8~=h^)e{?>>}R8AvVF2!-gLv9h(vqV%c<>q~R zxC4KWy{?h+I!GTN`6G}%2k8f-a0HTfkO4pjk3jkzWC)Pr5lA5)mRfc&Xo<7^Swp3o znLe-~vbQ0!dl|fIgpw4el9b0osCPba5a{YEx8-@vxq6CMy-OtJ&-*0a=5H}0x45Ii z&?aYxvdZ_eM)g^1F1?3#=Ae!%?w$m(Mt&soj{C5fgjf?0u1{C86#q@C&6qf~>s2Z~ zWm0Cw4Krh&%IsYPXd>2DbNP-=ZWeii6?T{?P zyK)-pVOf5VQ#5yk;g0R#;GDunGE`F;Qj@iS*d#21I=-DDEgj(p#XJFGiB!an;=s1p zQ4%}W&9Zp5FtqF8_!I6doX|X%_h97z=JJgh_a4Z&n`>dv$mtf#GmMl8Aa*boI1Uy? zPb-Qx6u5I1LxFp?eQ6*dJBD_B-|wJ_0#Cv01JP{X2T$TbS(F|Pxv#*9hYq1u-G9T# zTRQ|!^{U=2U#-_69eYTYPN|(V2bxbqsBRSp1JY?no+< z7o>nK-f&5M6G&Z8Oj7bPB(Tj-Yl^-AHI>se$-_F(7c_Jk8UnTGCdaTM6H@ez8MH$) z8D?4z+ifwMQB`0%65I}I%Dz7|VlbMS)yHVwNvR!}98SuKsqt}JNV}x5qZ5jrPZ}uQ za=?t){4Dm5Ms8pgFcf%(CN>M;MqBslyW4HurMB*k$#UCAg*%m4&uZUxtfv&~*+@Ta z|8=Mw8!e1gTDw;L+pS%t)~=1ga_fb{XeH8FoY{_amLi?&!iM^E=DG3AC`S^7Ta|E6 zab!E(QwsO2UwYyzhc7)EcKL;iAL7^kt+4wujMVw1a(E|D-#ik%;ZZ%*yXCFr3%S!A z=Y#C;H&^72Z@wvaz~78Hbw-E|BcM!mOG#UjPx9FOa8}7^>_Z3*EdPWtozWto$NHIyk|xZkX+)*cJwFOb*@{8n(p){kf45A0QkB)`d9=Vu`%;@a_J> z_{%T}pQ^P>_T*|={Jbz!iJZoypDsmCZ}gTU{gCWfFVdyA6zg3ddphv^+Ouor*qujX zZo={1hZ0_ED8IqT+fKO3A1LHErW{a0jTk|P7)=O3MIc6#b^)^kwWiXN4@x0hoHWuI zMVp{%Mv?qLh`@-Frg$H+0oWxtf}^@=DYHz;vQJzOcaL3mHGeX*U;*?~*9?qj^aXg6 z&aSu);l7cxa?_N31~xl~;yj3*iy)HFe6S%o{f4~<8aR+aPD@Hikp>#EIF8ltkqcnj zfgF4UIK3w@_2szJMQoo2QPkPQa545ViiZ2<68ccQ4?pu;5Xd0GVNh#R21PrI-)%=b zOVQ4ai%*i}=#|3lig>a(uyTF*`g(g=>;sm)&Z!r7ljYddKCN)U1hna(`z_M1PP?B4 z`~-fJxtBlQWlkwL1b1R=2>w;zs{4&`jokz=_6qYG5HGzP$NfQ0RYP9xL~&$ge0jV| zK&^&7+?nFcingp(38>Wo&kd~ht)2VnT$O-YZ4Gi`+&%#H>hUo573V_!A*efL@h{7B BIRXFx literal 0 HcmV?d00001 diff --git a/osinaweb/addressbook/migrations/__pycache__/0001_initial.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/0001_initial.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d942afee3b50b2be5bd6c59199a043e7d42f0e80 GIT binary patch literal 898 zcmZuvzi-n(6uvwEXzaKptqLImS_x%wCF(MQP$g*93PigAix(^17f?DdFz_cJu_RKZR5w*(p~8@ce!E-t&9+z4vo+QV0BebM7~O zLjZmWGCs-(oG){52r$4f03ozth-?G_0_y;yeSjqbo9Z~}>f4oaY)c*4RL%r35z|B8 zqi*WQQNq+P#w1AUS2+M=?eL59Puv^=0&IwZjWDz&57;sSL}?oTC*&9-EOFmNvviFQ zVu)p|9I0J7_cjoo$f9Sii7p&zT`q+<4dkICy^C_@L0j(>O@nD0<2Sr!$~ukPErxu& z#?bRsQ)Y(SPGhG|iJKD4iY@AgF6}tmq{Fm?P~Q#w_kQG7+8PmrQN=B*4k0S!4w#OK}{gI}R7H9T1KU$9da!1MwTqCj7`xc_C(C z(jpNiQQapA6$4?#m8`Q3Aw3m(Fyoo;J>@;Gi5g5>*>Y(P^|(bwv-$$gc__Htw%+hJ zBvzdGX*~|D)wtdcNt7nmrklD!M>rz)0dBgH7h4h8&G?9Bc$d^H7h_72q!!29*3~{( zOG`@+ol)zHtqv7Sl^FrDHQ5KJQ!{((LmAGhdoPCtpv`~O2ZgzQVeVx5_UZJ^UU}hQ zXHZ_~mlwXvKdL?3=|%Loob*cR$#l6_F+blLRLp+G{QBy+@~BsOJXECFsS8Eb^r2Lk zQ9rz(cgIyX`7pJ-^+jCE)XN0R`?@2-ve+@8niuK~ Ss2=EpQng>I{sEk1+5Z5DLFx4X literal 0 HcmV?d00001 diff --git a/osinaweb/addressbook/migrations/__pycache__/0002_country_addressbook.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/0002_country_addressbook.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..50c0cc083b3109dc696ab00d541d817485737b83 GIT binary patch literal 1847 zcmb7FO>E;t6dpT{lQ`+tX}e7mb(0Dzw64@Rum~tZyW3_de{Cgb3n*I2ax#;wQ^zj0 z(~@2QX%8ItMvq)kbLfFXk8oloF18fO)o?-L)LWz$koLrkov z=dm#XkoCRtLj4a8fZwPvT+sn@zDk&H00fZHL5ry{Ew;ikRA%)^g=4`x07f1I$RVZ~ zSQ{D$-$#+~U5R#BDSAc)iN!)oYgnqInTCz|mI;w=Z`49yNN)^;^AbzFBT!)=sIZV} zFqH@k5O5d(dcA?5w6*vxNx--K%*VzXDyy^|MGTzBbIhYxuIR{UIFB$_Bkg@gr%7Th+G?1u zYe)WWLq8bmV(3XW(0(8f#DL#NRe7W^^7ETYCY|$& zGAOMwf+_BHES`7|NQ^M{yX5Y84Ej7s-0nx%DgMi~z5o)1uLVDz_u~1}bne&mO*gaf zWY5nmc$tM0?&-W+QC!37Wo%b;PSY7TD;-YzS;@;v$D6(Ek}JOX5ABD&?CY-hMnA?) z-MEOx5<*|RAX8v`j+?SO5R-Q*m)XpKl->g z_lYZhdYYbf^TorupD%j(;>nA>{9RYPM{;pz7Y|qc*+p-5@%YsrUi)e3$0fhK>6JJA z@0^jGHSRzU1dhUXJ*2?{D^UTdug>AB)j+1d`6= z)CB+4`<6T`t;FL*cvMAL4O%ViuI%5+V)!p94!g&?J=|**DHoV35$;+1t+1c(T6c&@ luX?*cNI$|b%%419q+h_?1)pR1CxS1|d*b}>fCzzszW~$s(E;t6dpT{6FX@)>6Xp5s=5)XkX*V+%W^^isk9qZ`XeN$K!KIzWTuHz#}mfR zE?GbVX%8It#vTzj)EqfI8vol!v%>`ZxJm*+7oZ=dK-x{mS(>1&GR>J-n^OL zrlxcR?Pv4VgY5)De+m+}?CT6jNU^y@dROoNbOK9 z7Kp|p&=swg?8`>-Oh7~CddF@u%eSfPakWD+alE~Tn2THH5}dy!iPZ_JNf^~+EH$NC zLPkWnZY?ZhF{ietW0|WFEAS<;I!GNUk@Y~v>CiiO$XFf zNRpWRphaE6ZbmHqam(^OtJ`I>U^o*U_@o*wYBz`nwPSr@I>c@IEigubo?+o6u>uS% z1>NJq#C}Q>7?d>Xnox1XCtUU^7?dzp^}r?$_V$b$JZ*;In(PqRM$@BTUY&sAndsjA!4qo9mFas*vW|M$2Lm)T@*cyXkI2_Eg-q z+$QBRuJd#l7~Bh<+F1W^V}0{J*J+nr-j$!wIjEu+hvj|9xL2m0?Kfzryh$6q4sm_2 zyl45A(-#x2bvM#2yW~;GFKLJ$k$QO|E9I;ESca;&2UQUkK&jhjDy$fGBCp-A*QKCl1}-}(ctOrT z%@=|>R+A|zY20+kG16N^hGkQ z>Enbxqkj87TZ#8#s9cNkQNs1`^r8csduc31&r&Hq5cXR9FMC~}Q0gwA7wJk=BJZ$O mpyD0y?m#zANRsrAiX`KARJ>4glKNC1<(7uIrN0r7P~cyj?`v29 literal 0 HcmV?d00001 diff --git a/osinaweb/addressbook/migrations/__pycache__/0004_socialmedia.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/0004_socialmedia.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..98f311bf677f909c284024fc734eaa6ed85ebe1b GIT binary patch literal 1231 zcmZ`&O=ufO6rTOjdUqwelH*uaTiZ~4$hs&pO>zr?HpZ=k?L(TBR+nY8GnUudA9ZGx zM1evJIrNxY+*6>Z7VFSM4?Xr+=tTm9%$y26xhE036msgDU2S3rorRh2oB7_`_vXF% zV|La?Fn)30-+Nm_=r2j~QJ8|WTL7LRf`}5JP-!Zm+Ef*!qE8S}pCF=9<-o{|Uav>s zPmZS6*PX(tgpMlg&~G!G_;JLA5ypfD+>=N7NW%eg_BTw=5JgRepr%Tcw$jv8MD>GQ zkz2q@R3guegSiWvQ%H393d9)99O>ECo=VJAU4B#DM#TC-A@-nnq`p#@{!a~_X9sf^ zly9ZV`8WL%eNaA9a*u6&P|2+zFS|eQToTq!elu`QMN9~zoVVh*BTDP*>(^W_juPx8 zqWD?t`8e32#K%JQ$-PaXZf!WaDB)fbyB?!Bp+pqB%nvc^yB*pW7N-ns{Kr(39#Gbb zIdvl(QlTgPE_Dp}qq&JaDu2f+5GHI`TM-=lq~{3ovLQM{n+;?haSL>+<->yWM7y)2u+4^`e9~TXazXxuo^I- z2jJIH*n8QLo`!7f`7|JW*C`6qO|x)aVY@CgQ!k)^ORoD>4+l~#8KGSo5gK_u9{kz*4vg0nDHttX842;mrxN#qX=Z%>A zi5G{Bjo9mjG)j157biIA%Yz8l$pMbqaU-G+Q$D3Ben?x53zcrXejE*``E{44r4D7O zuXg)PzOr>9TiH)q4@9eR;JTjM0D$9RXE)T0~Palk{YoqGg zulnz+!=^io*m0E)%gITlI;=T|i{qLzsyQzZy7sj?LFkUQt(_zE&W;A8va6j`-W@L0 z4?iC-)kjP9pErKHd%X1Nu)GE4hbxDR&sV-*`7t@JT_2WjOsvAf+yTc3mXjl8srCavFU^}-F>kRtQ2A`QY=McUD9XPEQk-+6tQb%2 Pad~xAUi}9FNv;0_mBl|V literal 0 HcmV?d00001 diff --git a/osinaweb/addressbook/migrations/__pycache__/0005_socialmedia_addressbook.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/0005_socialmedia_addressbook.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..313c417e24a0a25f3de6c26ff813d76c7bdb1fe4 GIT binary patch literal 1000 zcmZuw&ubGw6rR~lCcE2IY6vYMRf`G2f@X8jLqLSmTB$#Js0y-|VUwALjk`N_H=#x^ z3O#u2t^a~zk3HzgKfsFtA!R&z@)l@C=*gMgtS+>3c=LU4-oAPBy|-UyXAL0MA-=jb zfdKrJBwhI_I9?NA9}qyG2YhHlU$GS^x#FpIP677-QFj5!QP_*Kr3sS#qnhk?eyEuF zUy_&#H+;7nI(?S~5l22F)QdJcNnm32DLFnAU>{ImLjr7tz%H~^1<>4icM*liGt|3~ zO_g9#pVlj#_4kVB_{!(_=Fj>_{s5)#J1C?`R9GBprq1<8=_AF9XB)r zHoxUkk8GH;T*I*+V{Tw9;szcSxQOwKf#b1*q0M8n8pk=ySu z-&$pzflq^eWNkQo#~aFnz`2p+wF0^m^C^w-4sBZ*DXjlvWC=-cWhKR#xW@J{M52P& zNOhxU!t8rFRvl^8qlNm>#mh&f+TOKssWvLr-j_ekf2n+~ zj9crY*7~@$IcjZ=TlT1Bf5R`omxd>WoNi21R6=j>hl}Y|CgOTheuK1QK@%A(|D26v z_#3Hyp&YZM)~ZBts!IZ$YPXZF-3gZj6@M#;t_U+xA%uSrfaVXdbb^Wy?HS{_`e?5H J8we67_zRAA|Hc3S literal 0 HcmV?d00001 diff --git a/osinaweb/addressbook/migrations/__pycache__/__init__.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..287278b07fbc2614662dd5c33a74406988bae503 GIT binary patch literal 200 zcmX@j%ge<81Y6>j(m?cM5P=Rpvj9b=GgLBYGWxA#C}INgK7-W!O4ko9PAw|d&o9m_ zNzTvJcgasK%}vcKDc1K(EJ@6%1WDv2>ZW8R=B4NB=cSf|`A{yHU7nhxpO}(Tlv-Sz zl%JoipPQLplvt9PpI59OAD@|*SrQ+wS5Wzj!zMRBr8Fniu80+AFC!2agBTx~85tRi Hn1L(+0!=r& literal 0 HcmV?d00001 diff --git a/osinaweb/billing/__pycache__/__init__.cpython-312.pyc b/osinaweb/billing/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ff8ea1e2391e72019d50fa90409cb875c0a2420e GIT binary patch literal 185 zcmX@j%ge<81Y6>j(m?cM5P=Rpvj9b=GgLBYGWxA#C}INgK7-W!iqH=&PAw|d&o9m_ zNzTvJcgasK%}vcKDc1K(EJ@6%1WDv2>ZW8R=B4NB=cSf|`A{yHU7nhxpOl%ClbM&U sA0MBYmst`YuUAm{i^C>2KczG$)vkyYXb~e27lRldnHd=wiY5Qb-yT)txyQYb;9RuRno0kJU>LL`cq#zro8W4Lf1VeewN(#qD(${!$N z=daL8I8hd@tkMP2rE>R7h*x@3?7s63&+ZJnFNH!Dcs!kNUbG0nw@4NdpNr`;uiSzL z8Zp2mXM}(j)8a<#F-8DMKe+&wdq1<(3x(1HKS#vBsAME66^TkmqB4=FY$PfdiOMf2 zFHx1o;t{HZNs4Cb)>ym>&&YPWT3{<$U$J_2O|>nT>Rl>60ZW>;hK9ouj_x8$Q|#%E zifw|e`YY9LEAT{M|=L^WQ_1Y6*wn%1SQtH|Xk!^mbYMXN1R)>OeqRSPMH%AJ)T8!-sO%IrL#8?6iESgq_A4lxdN7_yaRCv7P_` literal 0 HcmV?d00001 diff --git a/osinaweb/billing/__pycache__/apps.cpython-312.pyc b/osinaweb/billing/__pycache__/apps.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..34ca6e6556fb48a6427b8a70b33b560fc335aacd GIT binary patch literal 493 zcmXv~Jx{|h5VeyOO4}fW3K9bY3`iMBRtALBQh``9!IH&tYbOeFK8O=lVMFQ$Up== z2!RGJ0nuiF=oG%_%I9gNVYR*_v0$|^NYnEq_QPPJWEEjUmVE){fC3K^;AsSUI?+6% z)GebjhaqEO9H{d9eR7NAAhF5VjuJu{w})XcDDvbYq>NPSW94?OR@Fu*#t}uR>L4V{ z1(Udk&|QI9qihrEe{*CG~-Uf!+erN&M27_5sh>1xH!kG zltPS;)l^PQr!{YAji+?%G*dY^O}U+xnLK743<0<)!VE0-PTq~(MYsPj%H&V2yOv&c xo0Vm8CeN$NdlJ>gO@UVJQ?=q*wk4>%ESFdP)**x+;NWLXgFBB`zd)qA>JKNAf;IpE literal 0 HcmV?d00001 diff --git a/osinaweb/billing/__pycache__/models.cpython-312.pyc b/osinaweb/billing/__pycache__/models.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fe448ca275d5e95b6c6d1e87093b571147e53039 GIT binary patch literal 9358 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 literal 0 HcmV?d00001 diff --git a/osinaweb/billing/__pycache__/urls.cpython-312.pyc b/osinaweb/billing/__pycache__/urls.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..363716d9584201d1b0f3ee8754ac26efd47dbcd6 GIT binary patch literal 987 zcmZ9Kzi-n(6vxlbC2{Kf0u@R?VnC`;$PXjb2o*(D2T-?6L_`@HIlgP+;vbdIZj>+} zwvNd{){aGCU|`^XU`bR<5tf)35L>Hmow##sS;`IX-h1EAyPxl8CbI$P_}+PP^pOYP z4-3K}2F}fM4uB~@0C5`7xi+WsZJuK>uf=rOh8*Al=1`1U9>E!<*_hGw*zmPDhR6O+ zt6XSN{A*$sTSY#Xq+B{wqZuXFIDvB6NDn3f4GI|_%6@+bB)reGA4f~akbyT$HWdl8sM^BHi zt@JC3Lu^yWR>fa`RTSn}o#bu$U?)nlgN({+qp-F{L^q0QPejME z(KG#vTI}B~NR5{a9>I#URDv0SnG_Rq!F4*peJs|O7Hbkuqz^`4*T$AXzJME=0=I9a zCZX>onMAb}QHTniwcI=esFnioo!cgmNra-CqAt?~A>G%1}QxUl>S z3TF?-wP}4)KkvIxV)4Uqb9y*Aym;oqnqM(b6)$Sb(*B~fKR+ l%$x6BsL|Sa>gA7n%iY#uw>9sKT=?PYQ8vea5-rxr{{i%o21Eb= literal 0 HcmV?d00001 diff --git a/osinaweb/billing/__pycache__/views.cpython-312.pyc b/osinaweb/billing/__pycache__/views.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..07d79c3b139a8adb2db11000cb943d756c42da75 GIT binary patch literal 3649 zcmd5gco<6r`b*J=JXKxn(&!iEsCNSn3`t1jsx%kd0}&DfLP zxlTxAchjm5Agu&_Vpl@iR;pAGRN99=z6^d(XOSHgNx)3LjMMki@=IGTf@Kyz(5*SMXz8vpLCBmx0~Li@C3<1b$PhhC_xVEv zMup$z-+|mg#9v2w-#v{Lgz{8-*U-3!fd_Sq`QR=gOf}w@R`}PjF1)gJq0E;dG>^49C*9yrv8k1^1pFe9#X0>2-=EXm;6)wJ=dwEZQl9e^ELXO? zMQbT)$|i=0rl%J%Jw7G5 zL9G9>q+7%lGI$2`t}W0f-VajT3d9X&%_7mS6H9_wf{hm+4t@wPVGWvAj%3Zk;Fy^$ z74#yp1}8HlV=PiZG1IT*GsPKmu&6Jvd40VaG3o8_9?RaLw0HQ8#HqYl^9x2x*gE9V?_ba~>xYdksFv3juMnJB2z z^7-e@NNK&Dv|}f~TyR3CZQ=AL9EA3U;IBaPIuLw7O~Tj{e%u!Pv_P59aTQ?)JODJ? z;2}(6dK+Ac#m-u4-x+pq)sMUQ6B=NAkZ#~JhJo9F^MWnnHz*&aq@9w(lpF$L(L2OK zi(?G|l}4!W9Uu^faO3SzgZ*{i#liPHMdoCD1peE9a`I6s-^)D}iPH*Zgo zG_3TVZ;k^26gQGAX=s(XhunkutP%h;1^|sbX(UxhR(zS?fyVos8-U~_GT<%sXgbN{ z46BjKArX20>90#Xzwuarm%s^1=sTqZ21h?5z6){gyO$tYbMpv!dOV{n;UJz4d zYXAs1O^M&t@5$dNZ!MprK5Dt$z1v4;AN|}3y>AQezw9Gg9+;2b1n<0xj|hD`Hu5wj z?i%?6}$8LHbF8mMfARF=!QQXBj??bz1Ya zG%?fu2Di-x=Nx1^Ov#vCsF`$}Z8ibVO z0W9Pnkp_(Q(_KT9yv25DP_MRCHV<$Iuj(W_+jxbvSC&q}h7tH#zXn3DYT}QFzx>5F z>buJmPZP)fr2IjtC5~4U$5%eG6UUvzxGlt=#*cjQ@#i1c;zQN=(4%8^e8`EPw}nH` zCDhYv_nxiwUa0n7`1*wXvyYtK%TD*yT33&qe5aNit0u=DUHbZzlf3A3U3w<+inKgN z>sItL!3o8|^vgh|U}Qi(!+_lM8hsN>2K69UAQj*bhzwTQ*t7R)K+)GiXeZcbPz8FR zF?0p)Y(*^Z3BIzJ-?z2j=U}zP=eM33f49-uap==N0TlxpoIxlY*wBQskZTm!i|FWf zKkRW~k0C75Hn|eGj6PjjK-c-pXn{+K9>8%Q7)=E{7z@QrL3f*{OVHiumZe*%W;_h? zdbNdq)>Xz#-I_GXx$6{;@@QQZGmJ`^xjE>lnKAqWx^Wv$@kvtgIT@L$a zrYT@u*`K}y-S%D3^%dbxjDn$a@U!j%Sw`ytUQDdTdTX)aYHYX`8>z-dR=#J)Mx5BV zEk~cpNRF;W;2o6IZ!|xN9=Z`;jdpDyp-H_lv8uG!ltfiY zthRODx%RtjtI@<4;m^YW+^&89M0{9%#)ICvg4*LZ!cRkQeAe;%iXA=aghp&(fnG*rVh9*UOzct&6=2G zOT=Pj#mg2-T~;DcnJ_J8t_+^j>30gIAaJFE2_Gz$8>(y0!p8{<2d1s3+g4xpzfT4X zGei3-3V7C_dd<^OI;G_Z)9k=pd>^r^$uh|c`A2X}$4NVba9nU_}I7gbp3-4NihMDL6TSOqENx9)^?IR*!8Z*dU0yBc|<#Il3EU>nHE&&1S~aT#=D-&WHHxz#3|#c3A|Lb zikaH9<%G?s+Tni8#Y0lN;rYH7HmiVfO`d?d&ZpVJGZkYzMY~h9_iZA*@USyDdoPvWO6BpzL_7M>%zsX{2jwAoBx7r$ P9nK76L%Fy4CN%p2dwiNZ literal 0 HcmV?d00001 diff --git a/osinaweb/billing/add/__pycache__/views.cpython-312.pyc b/osinaweb/billing/add/__pycache__/views.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fd3f014dc85d910f53d5c03bb89e78eab3606df4 GIT binary patch literal 4838 zcmd6r&2JmW6~JftwY%J)nO_i zJ53d&aVwIF{u?Jx1$l&81=FHDK4Y=z;=j;r#psY9+W4XeNGnti|p5jA+Unl$?9|ixH2*Wy& zX1(?BD&RRA-co30mz&R7`Pnv8T5is@5Om2b&h=C>12@MAp?`!{@n*I+&%!%;I+;OV zXJ{9rLjI`mE=Gm@Q4xl#BvNaQ+{j8~xw%dY@-FnszFuV)qZEIX$_&q%w(qIiYi&JE z)eX5}S9TRwU5PG78Z8oGd%QlT=IOseOx+FUq=hI;c&#omV{UXg*eG8isg6k=DrE8& z554u~mA84A<(O@8&9s~>&CRh~vB1?FY`|%DYtH&u;(?sWBbj`$RA5|%eO#gxwj-C{ zqD8X=yE?){*pqg^3=|ieqK_0^p*MM0_@6VW~zsa36l*Z>8>LzZmyq(gy z2I}!EdK*-8x$#9gJeaX=(MJLCy#eDi)Fr6W{T;8H80A|qR7u%*V5N=whhaR zOOk#!XU#hkbGNvL%hg;UItugR+|Cyu?vVBPU@e}k#FMr7SS3DIjUTSXk5}TyS6{Ej zU%hj=E_eLuy$)W8?Nse0J#|>>fjS1 ztI;P0G5S7~tDQq@%Fu?=bNBXUFxVNnbK!|X^sc+3YXh%7c&DnJUkjao3{I16Bvhe7 zkno@1FbSE@!M5M-ZW$Z!zS@NycxVO%WB&uB(b4PeY1ZdjtKQsB%db0X3oUmsSH!np zW^vDk)*89;itIBMY58@n*-FcnUT*>d6m02@?n1BX+pFzjRMa1(vo6nww(sBPvDb?b zQv-5GfZS16bM+N{xp~$Cy?s8LF>i(|#0|P3v*UMxg&6Div;e<5-Pjg>8%{Wpqj#Q2DnsKUPoLYP3Qq{P8=h6%DcpIZ{S9_0@we{}gN7D}m9(JEE zE8j4$69-zz?i9#Y0NGtzk)0T>_a68nyaTf-F5fn0<98sKeH0Gn|5fyQSE3hy1TPT3 zwv8!6DaI+?ws`7Cu0Zydr%EAUl7*e3;db$CD~47X#)l%cC92Oz zuNNT=o~|e!4;P}YdXD_`M}#bB3~3-zTWxLbB(4UYcsCuLA*Oa7-_Dw-t20DeV-zCm zskGcIuc)5I68ZIyLxds7L^Ayo2BLROMDH<%a1#mWuWzG&Z1Q$+9Ka@MDd>i9=Mjfx zSjpkawGu>`mg6*t9c%#b7<8e>LBLHlETU%~!Wft9b0wO+k#Q_@I>UHGG&vN3dVBEM z5M4Akz}`hCQ0I2Ax8pch&NMCJG6d*$4ubFSn;5`1;Erp?RZ$_LcEyC4o#o(q5-b$w zzl!|=`)Ra7ECc$;HP3xyKRV1i9Lt7l1UQHeJM;ur$|AsrE+=vLR~`i_E`xBKejhqt zf}itF;~?09^sA++@!c(;uR`GcJb43sZ! z^bh@h@VA4t{_#rx`2Cq`|EY4v=f<9;*kY_^Br8U;zGq*(yC3AHOyUP0lTbWb4sYtD z@6aO>P^YBwh4t>l(&@$1weFEh_sG5ZweFE>ce;FTUEfpF_f_;S|eloG9C;z5j-3;USClNd;lxpYjnlikp5Vhy-)y-gFTX_HN2d`AMvumNV;;2Z) zxzV^6O*l7-lx0iI5jVI-WPtGiH^hx8Tcp-RzGzyu!#kQ+C$FqERosC8S12Ah6ytZ^ z+pLD&ApT;Ru!|Yojd+cKTd=sDO~4)RI>m#52a1lkafvWMY=Mu7Fj7PcUn-|z_L6OV zk6wn}h!O|mh0UNONuQC|D&)0wvVWZnenyUcO46T_p??tdk/', views.add_invoice_pdf, name='addinvoice'), + + + ] diff --git a/osinaweb/billing/add/views.py b/osinaweb/billing/add/views.py index 32d85ea7..ba9b8b33 100644 --- a/osinaweb/billing/add/views.py +++ b/osinaweb/billing/add/views.py @@ -5,7 +5,7 @@ from django.http import JsonResponse, HttpResponse from django.template.loader import get_template from django.conf import settings import os -from weasyprint import HTML, CSS + def add_product (request, *args, **kwargs): @@ -110,71 +110,5 @@ def add_order (request, *args, **kwargs): -def add_invoice_pdf(request, order_id): - - order = get_object_or_404(Order, id=order_id) - - - current_year = str(timezone.now().year)[-2:] - last_invoice = Invoice.objects.filter(invoice_number__startswith=current_year).order_by('-invoice_number').first() - if last_invoice: - last_invoice_number = int(last_invoice.invoice_number.split('-')[1].split('+')[0]) - new_invoice_number = f"${current_year}-{last_invoice_number + 1}" - else: - new_invoice_number = f"${current_year}-1425" - - - invoice = Invoice.objects.create( - invoice_number = new_invoice_number, - order=order, - date_created=datetime.now(), - ) - - template = get_template('details_templates/invoice-details.html') - context = {'order': order} - html_string = template.render(context) - - # Define the CSS string with Poppins font - css_string = ''' - @font-face { - font-family: 'Poppins'; - src: url('path_to_poppins_font_file.ttf') format('truetype'); /* Update the path to the font file */ - } - - body { - font-family: 'Poppins', sans-serif; /* Use Poppins font for the entire document */ - } - - /* Your existing CSS styles */ - /* Add or modify styles as needed */ - ''' - - # Generate PDF - pdf = HTML(string=html_string).write_pdf( - stylesheets=[ - CSS(string=css_string), - CSS(string='@page { margin: 30px; }') - ], - presentational_hints=True - ) - - - # Save PDF to a file - pdf_file_path = os.path.join(settings.MEDIA_ROOT, f'invoice_{invoice.id}.pdf') - with open(pdf_file_path, 'wb') as pdf_file: - pdf_file.write(pdf) - - # Associate PDF file path with the Invoice object - invoice.pdf = pdf_file_path - invoice.save() - - # Return PDF - response = HttpResponse(pdf, content_type='application/pdf') - response['Content-Disposition'] = 'attachment; filename="my_pdf.pdf"' - - return response - - - diff --git a/osinaweb/billing/migrations/__pycache__/0001_initial.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0001_initial.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..05d429c65cf79a4ef8783d4d814d971be3358607 GIT binary patch literal 2244 zcmcIlO>7%Q6y9Ci>z}x;o#vwhOa0<0a~UMx<)HZjiDW#k$p8kLtUbP z?+yk0kZ!o%2I~gHp3f6%fi{y196Cyl!4X9g5pPJEs$*8s0F?DLVX(p-;sfR3Ka3L{ zQZ*V-H3rZ%A7DhkJ6F=l~SpEoTN9qOpa?0MrE}HJz(ZrUIKXuin5cuV^jRICS2ML+9Zk zu44cSWG^z;lz9Q_o);jAlA+@;8lH#v2m)B=Te5*eLQ6L^1)`ng6P^k~TN7z@NroI@4F}0g0}94Y;_0G+Dd$7ZeL`oQ&Z%VVH`-0OGkFB*nAdU>IK;UOaU70t zgnH1DA(5jT_i>At9j=HLlvK$eyy7T;O{fB>3KG>^CBYWjl$83lDJ4x zwBk^VqpPX`MTk5tytKs+#dUbg7+|U%aRcq5rpb_3JuR|A%0Uv<_egqK(BM^3!wlHO zA(s%66C7Mxyt=elUB(fu2?tN~H`GJ273#5A{E(D{UL?mi1WhScHKC*9Iv$!eAGO5Jk(_cWbR4OfS16m5rHeyLMw+j+Mze^s&JJf^N z`0Y!5mI^P^eIGNy-hRIyp~7eGM(j}53T1nVvkwxJ=5+qvwmqG`*UWEGgZ`` z*3G!lOC-&7VfQsVU9i%H-_s>CzR(Z&CSs2QY&g=7J>x6&U%pP8sr>HCb}DbB^7}$J z^@bULvzN%4v!$;*Ia*0XUB`1_09^qLv}pqI#)*@fM@on5f93kNTC zv+tPk#a<$9&J=bx?3sc!Q#hFVDfwg4uB=*>Rl9P?3>^6Tm^t9EtWs;=AB>sIx;U4>Q^nvKu8na|Dm7rn%^nauA_*~z?> z%~o8`4Q?S9n$)VutQLk5R{l4XTN+Gogbzq$KtS; z+5*^gtJf>o_{>wS`_Cu0^jqlIyBMq{pEP-d%YcT_CFS@6*qauJ5C1`frw^ abAM2?kJuTSy%(|Lb5?xrFN!FxgMR_nqcdax literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0002_service_active_service_cancelled_at_and_more.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0002_service_active_service_cancelled_at_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ab4a108cbc909a7a30022c4e4f88338e83466fa7 GIT binary patch literal 1214 zcmb_bzi-qq7`2mJE=jMbL`4X-g>q^uWuPg{RV7eWBm|vc$zr*&d&7+_Md1YcdsYOVgu#*b~K@pYkV87?@`Pu$H`_uTi17v%T+MC-t z0G}19TVn)HRwQ@>2q2Jw7zQxb0u2HUJOo7B1w^N?Yu1a-#{=o7TA=p~ukl4ePZLfY zbyA#13D1NXCxo&rRH3?!jljtoRGU%|Kmr1dzzz&_4N#+79=MiQBhiS8ncXYD&MQU? zVjMOOv?_9F*2nsbSF`k*xWLQ0l$ZSb&SC7jd?9$KdG}WOVHei7>jsEw3e2Z z?xKiCd4!p0W;ET7LMlug=Fv8Ns-%Q&;)3PE;00rzF3YD%hB%I?oKt;cGop-$R)~2> z8KVT@T&}cmktc{JJ84ViQ8-~rab5<6NeU`O>z*SlR9Yb<9E7BG!KlP7gq|0eDSO2T z-J+aO9!4}v)uR&DeL~jMwyB|L>p_w*ig`ID>{Yo@1)XGzjvm`vaH8sY_S%0Y@0s~Y z7Uf|Q`>RP<#FXcmzm9XvdMd#29n!_TllYwOlzc=>yhAtqQ3n0<$Lz~o-b14lqAG(w z=+C)9m=k%`lrC=dQuS@hPJ!&B>~_J>1oqre*Cx#ukB1Jhr(Ze8)>Pk`8eE?pT)i=H z=l2$l-TA&dzfV3)9=R*0O~ZD6SKb=9ZKZ7Y-S+z*O(Dr<{mqpVt4tLnznN>*xbN_1u|SEXM`XC;;Y9%M=})FFi5OaQ%8a|)V! Q&hf-te`4+{kfdDw9sZCcSO5S3 literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0003_payment_servicepayment.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0003_payment_servicepayment.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8ba1202d457b4d7b69b541438b380bd51279ab62 GIT binary patch literal 1847 zcmbtV&u`mQ9JigsiPJPoO4lrF$Oh^GN2-$!fdWD(rCr&eE1kL>ngiC0->c`~*qQBg zOHUx}z;QQv;2%KEVFwQ71e}<}#nvjhdR&k=^%ki^NIUVKf2>9Agb**%*Wd5gUw=Q} z@ArM)%deA@S%$3dYD&9T(x^h7(!F&{H9 z@rZ#*#CC&haf0xr#PlZ`eOPGfjMuixUR9Ornr%%U(`d;KBF;hXz%-I-}>s~(V z?dHz$RnGBM&-&nNqv=!CU3?WXVZ{H#zIqP!%%~JIitJ13WM5RST^wE#%UHM-Q;YB{ z-O+SiGgQ3LXf&?LHnO%g1<62hv~Bd#RDhu%T}My`jtmSa_e=}n^g0;!kl|oXgLhUi zcXL@x;v5(_rmR>9I0)j2zNPhmHI%Jgmc@->XG zq^XN!k}I@xEG*pvR;cEd!~UWd%cP@F&90C=(NyD8GHD)mfuWk1gB_d+S|Jw+PA@HP zEG;fy$C-`mcjUFZtE)I`_EB`re8(IUVCKbk{Vo}WT{msbQOsU_*;EE}m+kr*aDYCf zFAOjrBGe7^Ah07d&>x^qJ(_C$S6Kn@5PI5srGo=FV(zKZ9n;R&TY%CVI7ogx8NKW zOKw@*o$AhY=9Oztl0Wgk2tNycYu#(D`>jo{wduDyUaRA(4-d*ix3Dvw z;Asy6>7h6^#eemQwGfX^u4l(IfZ(ku|oM2h@FP>q=-+U8hUu_ooElwXPgwmg^%nbDJ#dXblDI@TNi-{hD$3F_T*U(P2P}`! zdjTAL!ob%UnGs*tfDh)X$^TOT%QOAQ;8JV77-`mqYYO|MuinCS z!iDU%^d>Fv*(jH1bpoJ>_Zvvh43We_Fbs=wB z852Rdi{=~}6YTv)*EY@1uNw#KXJ4HgYwOzD`t=CE?OQ{)oklk{%rD2q!#;oF>cVb& z+GA5CyghtFMyRk&MEBNFJGd9cW2E@-pnQs^(Fq}UCXna1=7^ZzoSXHX>-C*GK%%n$ E0*nN;A^-pY literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0005_service_recurring_cycle.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0005_service_recurring_cycle.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ad3e528c14441559fa07d542097733dd91388be8 GIT binary patch literal 1015 zcmZuwO>5LZ7@kRXXOpnix|EjEYHM4B9NhGv$btxhR;qOmwFOBJ(`;tCWXZ=m$y(z{ zp$Ct>^)D#)*n^(@0bX1Xwv0zl-WFOB>cz=dRoWchd7gJ>-jC$FmfcOsZ+}3Xh z!1sg{UpWUyO9Jcx0tj@02TkZnrUVl%xw2W3zym=qoeTel z%CM+U>D12pJJoZ1W9RtB&-zGt9~J%WR|+I5tj3D2a`kc1r0BTPa$MK(+k9qmaq$Lb z)VDl}yH@N`KPuKJ?owU}DSPhNlwV}j?lC4VVLP^6y7qEB4^ltfNjG$vm;9dVay9U= z(2_=!OHm-)TB(II%r%U~xt>b}u44SGXSr#0f)U!KKB2zt z(2ymgs|nUC#m=KHW}vPE)*1TShL6@%OJX zgvvK@uB1@=KOyVgm?4opH5CEEr^4)jAp+{Hp)8G|S1UsesMBw>fil%srVb}&4=>Ff z*5-Gw4QliK+WgzG596OEKTZxB%l*dkpt0I-tPUC*{l>-(Cdfn za*;|$T+K?alUAx`rs3qNv!1<$dLbU0DDJZ91f`*_2y~*{&PH~JT@_S3UJ%X*Gn65O bzYu`>H!ypQsu1mJgVBZl=)zARNE+Y|fo=$% literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0006_alter_service_cancelled_at_alter_service_created_at_and_more.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0006_alter_service_cancelled_at_alter_service_created_at_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3ff53069fc25438a3064e244a638eadfef719918 GIT binary patch literal 1092 zcmb7CziSjh6rS1L+q+#8iAOL*b1Fv=wn#RG3W5ZLpdgw`n{9@l&j~8uj1gGMPm{K! zMUshJxoO6L=kZw$LS;MJar9G*Z3HO73`G{hZ5-Ja0;e;|7^`9yGcmVwam+bXnZumj z%8nk+yj^$H)<3YS=VR^GcJO~7dFLbjy{onz)p~w#L3vL`JZaLZt%UPLwAI|w($Z~` zgM699KqSOnDYc)(y_kcl4g+c;rXmK;fe~6f)c}(TSOP7|vH;5oJ*je87c|Oh;HerZO9)XuAsV8~LF*HQyy#MHV2s6J9RvdrCy+~X z0?NP73y=@Y52Rxp-irQ5X)8Zlhv7MVKu3nzlXu}WJx3m9c~Zn#8m?qy$I|~JDl=jdp^$lo+L&n0ha|<HE@(SU}llE%59Vz7)&v1(#qVc sT05!T8?1C$HneH3JfG8|Z)1#qxCjTw?q%$5`3F<;dsFk@kv7WeU*j$gll`6t8IDy2^}9Y$vq{sS|c`DX273?DxHAe}3v0RM`4HiX&AFam{E)gO;&?^VLld2N1r6#0|c}n1}zQ44s7WfAjWxTVGXO8*}d>D zRc>QLW@vS5|3|vjb9__h_@@8&;nIP*Z{+@ia#5?yvD&wsil{s;%9J&i+aaYP>xkv0 zrKQ`*rzznmA^b%c5ES?BJ$wsZD+MOc<<3si?#ZN!dwCgqFsRE?c77fS4ZP!d=WqyQ& zjbsA2M~Sqn2tDulRIODAlP$t9VL?a|uDUMlWmRKCv2Z1lup2V@u)`jazA$muXPsDR zxGk(K6L}ki^~764tId@aVaHo!d_~@aBPH?4E4L}@PTV*N(;$xA`*F~V2ul-p)lYre zR{`eV%86Y@wlh42nY~Tg?pPo9?-g`qL++eW{ZzeN*ZNkUn=*%NC`%)0%V7tMOi)>e zBVC&^U$2a8P?>#e53QMjHFJ1n?(ow5VQpde#;~?9s4cu({IK@<>DToy>qDk<@Ek6Rs>jE4C3^4S74=w0RmIPxid9sz0z#V|)eSmWWwvuRBfOLE(r=ykcN=E)? zObm(ZzT0GW@( zp4GL}-@$jZm;wnmXgt(4GcDUmafr|(|>)2krHfET#3B`muE(uwD{ajy; zQ(ljwuv{Xni^|+4y-T`W!7ZCM11{kPSCdS{v*3l5<*k+F)itgMZ8CZ)Z^3bV1*gn> zD2fbCQCZ{!zPTDW9iPxBG&gPGVmF?k_O&#wNy%QqM>N5Eq+yOsHUBl?lLM!&w*t8ew|+r9es*T;L`%Fj;ghawtOxe=7hQ-@)98 UQi95X-k(_LO)UHZf+PX{02&1wjQ{`u literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0009_remove_service_due_at_remove_servicepayment_service_and_more.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0009_remove_service_due_at_remove_servicepayment_service_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d999e0c19317c51b642f2d2477063709a9fd9cce GIT binary patch literal 1823 zcmcIl&2QsG6t^A6vD37hglt3Fv|G{g;Yx`saY-b!sM}Juz*gGwA*~NsZe|)B96LL9 zx=K$Vtq{lF*aLq6C^>TIp7x5w#TJzu4HqO%+#yPV3g6mw=u9Y02z`Y)5%}8MmiA5PXgJ|%#citu0syw zLhoXPugYNzh|g^3Q@Z*#(t$LZ8?up3{J79>{<o#y>lussh z$hG-VAwi@EzOynVA`OZ!>ko+kLx-=7N(qZbHxsSRtA)Y5T*lJ9gi3^0nFGT#4XcgI z8yg!9O*dVLGzX$1qXjj0(1SP=BP@VE)O0r_BPF0_>0OBVP|n3pJ$=xHmWze0FLcy~ zm@~j9JDA(umU*1h`>w6E5Y$}=@JtUGT^$XyFW~@7B;3$V;~3)H5kv>J1EcIBtqDi~ z&KQo?(+wcAI0N9J-Z$Oj8*%gXxH@S~vMr7D21x|x+A@bIQ?YPpKogLY(+b-AHf~k1fJOnCvcCB5Yf|sb9apPCYeq2UfL$xjnv#7+cu$YMJT&t zBWSd(56Qp;(9x~7jX7|D#c;pmX26-P&5yS>x8K9!CIE4e-GlMH@gs9isxi;MS3V{4 zaunM!+?L%{w(VA*el$nf(_P&h&=;0oiz+Ao@KO zjr)G%e$aT}Hy(JO+h^6Dmwz~s(xthJv`88)GE$XpV9^&B$7RxJWn5f6c_S#U`o+~B zN~iPBDo-mxbJuU~2F-oHxgRuDzo~kfeOByUWO$O|^>R`8`U9jSvyufYMIWdR4nodF z%&J@(>(PHkJ>d#^D~UyQs)eaGi1u83CnEN3^frO?igj)gF-fs3`?tWb@^8$_g|Ng5 RC)pss=I7V`Vh9Km`~#9y#Q*>R literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0010_charge_amount.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0010_charge_amount.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..98fc4a453314bf77032a55e83c1b5b07ad71e4cb GIT binary patch literal 853 zcmZ8g&ui2`6n>Lrvq{*Nb`eCkC`ebx!6pSSf)px6L9{67!CZ#f%rs`nk2OD9_omQ; z$KLukh&_1l5AdjXS`c>0)zjVZ^6ra{eG!*pY{d*_aAqN`(>nUP3ZI zj?zL6W6FZmUG@Oz3o@r1oB{&}QE()RJmkm{Fr{A#{<{UZ3@X;t{_4MZ!KgwTR6T3f za?Z3G@g23HZW@LDxYoo4HhX>$_>oua+O~ZMCoGH)8BSSp=(`NloMDpvmmQE{$fE2| z5s4@cAbL5oM9%50KUx$m(dd@GOT5;-UZX8;Bv73wArq({mNH7!&5xGVC zB=TY_Vn-!k&=Mc9p0zO5TE4zz+uJs-48oN^TZ3UDKBO`Tkly3r7-lNyFVIYuE~#%G z%?!{t-Wg-9GtxSf%hxCCS0?T5$<1-QJ8E}7KK;D?<@WdXlk=vc8#7sLt8X7BoqE%K zQz`UH+ZOGWhLko`$6gg>W$gw>7uwy*)t%%Tr~L1LRODweLg<$Y$UIkDNIfyeYn!9B K&7Z(Y+5H=ba^*?@ literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0011_invoice.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0011_invoice.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..41293d0d44bd629da0ee9d774a00a632a07d8ded GIT binary patch literal 1291 zcmZuxJ#5=X6h2ZEEz+_~8EKTnfF0Ft02+v7)o7+5LTcARg4kJ74_Ypi?#xi-k9(w? zGE)m=$e67iGZiSTv4cBxEs%u-4A8hN0WxJ1-~<6O^^PYs2C5VA_42?2;g|cF48U7XCaX9GXWIe+qMCt5niATqvBO%a{kz`Aqf()=S zEf$gyf2Z~<=cNQj3i}n2I-EID#Lm8qO1ZZ&#akQdM=Ua5%x^aLTM+!b#d`nZc`k6j zJZ10Fl)Wj6!}7Vfb9vk=|38T;!}-sCwlXx1SpWE9^{K>FbAf6*lM=If&vYHvb$pvH ztgpA$Vehd;Yz!?g82AyLx$7SWP7hPrK@Yd7e0R%KXxSP>0qhZMMHtc91LAlViQx}8 zrdo)JW4X>#Ov{Iubb}B>-|{f6I6?^e1Fwt8JH+xaCDv@~C+K3|jvmu8VtNxd*H_I?$G% z>se_jEiIi^ue_;#k<`{+9A>q(w6=Dv{Ii;LVB(XLT9_EoX|eSLQ-WOPpg-c#nx{( zvc*=q*h;?n?qqR0G471C;)TllVoB3S1${yNG$ literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0012_remove_servicepayment_charge_receipt_and_more.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0012_remove_servicepayment_charge_receipt_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2de7d5dd1ad9e847788354080c6e60e1f1386b90 GIT binary patch literal 1456 zcmZ`(&u<$=6rTOzwRi2fwwuPJHAUcvW>Yn86A><`Qc08oBB83v#h20AGudvsKit{1 zi*o|02QEmt!I2}#KK9T*0g206M6xv}Bu>3qN)S>{%*=X8EQL9|{ocNB-n{qC+x>lE z!2oQ%f*%~bQULgiJL$^I!0CMkegp_0$pxO&lsvg9OF#w>0g_(=q+sb#OE;ZA2P_|7 zO{K4znKvAoGBrHMCRXGGen>ShK-dl2Je02d44gia_@NjyB?Ou>l5DA|$N;N{qTrOC zJduo)p*oNgPp}H}4DO)}(pW5eSh^&ZMOlxWC!c^f3s!L)!|~AVR$XQ1Y2n?^q0&k z)%Q~U*=1x~j_W$UO$&GL-n$1KzZW=dOp75VJq9{f-@|@Hwf0ks*jU^izcJ`r9;T|W z*~hqzolZn$2R+%P^5;9IN()vu3SgUHE5eB8JH+uU(udD*pXw~PW4X=|riC6Rtsuln zx*|yuLBH#@FnNPm9PFa-sF;%f>q_;zu1l8rfePURm~6<14f|%1=Aft%LTW(BhPLZsh6@lr?^-UG zfqMvdu#d3cc5q1e?9=>X>;*l%%g?3xZ6U`V7m)B7qlHf$`vDUwiR;@;8rR0I0TRFN08Z@-)xK!5LhW1PD=%H5n)Z%xX}XBkB|rn!sn%h&%bUyG}2 z$GvfNZB$)*t^T$WH(~6PlWG{3qDlGvxW4)G*0{bos&BpyPwLxoX=ncJAN7yo($=JW zJ+5v1v^%bCjA|S4*8WNDtGM)Ns%I99XPF#3xB~PVFX+Z7cOxliQdvFza9mj(RaSpN z@y8EODxaNYRYraHYDN3*3$m8>xXVc6`v#tr);&TdlTNudXi zz2$F^di1~W6g(u%)sweCDnd`rY<5YV!<+AW^WK~HzL_6eTQ1mKq<)vA?X zbtJ(Q7%&n+Ogs{6o<=}}SHQG$U^wmvum!<2QQ8gqhH6}I3 z6xN%n7ui_77e-N-^u@vc{<8zhF;2%wGvwniz@a~hG0AE0-sgRkhXIDeocal)amrED z!(^PwIMHN&jx^vXH|FSaTs0z1{1}B%*xG4`5$igZXwbq>sj#Um!$uKG+@$ow$d6R4 zVho3vFie6FGp-aB_KPS-{!&%phH_ZP^0I;pI~`)F?pIi;$*(`UZ{-k~n`U7iq_KOP z1|u~~=63zuk0$CM@t?ARpY&5V!Lx#ww7_TBb4zjD&Fi^RrsvdGz0h)cdUN=_;e@Nl zEQ|u#p)}{PG{HI{OI^ETetNyM!Fu?`o;P-9joro0Lrvq@-6T?$pVAS^}6!KR`hf>eZ}AiAe|$z{l9rc1Vy$(m%h?oFWw zkG&QDfzlp4_%A#y2)oSHledMf2t7HIO;|gJH{bW>y_avk%#YPo2ju#WTZf+!z%NCr zRV%@KPl7WbKoEl%`6$+W4S@zPfoLZ{bc%Xr)wJBt^#%6zk>S>UE8=RxiKA{Bl#p_R|x*U1*8n3&dlE0^}J%lAjU=QTw9!6 zn3XI!&l=TTOW1EJMN(e96EPO?uDG+i``{rCSWZ(M@nI5$6q6vQI83SBh*-;LI+WRd zFp4S9MLkSn1rFqtT89PvNEm#;n5)Y>t9xP|#8l=~tQ|&_k+y3K3m18eg@duI8!#&I z3dZjS0aLY#5!$DmP##7!OO>s{dQQj-H6t|?wGZg~yx_t~`m{9oE6mlcuZG@RDK_(x zEXt)yZ$AkKN^0h{gFIj(b-;uBq!;jR;&FOh@RAnzn0CC<8E^RmJ?YUSeBB3J+OX3f zrRq@>L4oX<3@0!%!G1i`wGH#b>zM=g)+c9THOE$Sx_NJUxS*jbhBZ8e3jm;CbnHe*b9X_q*HiOII;NVrYb9HZ%K4zJzW^Pmo_Dp&m6KX d8D=^{=&uRLy);*ldFo8ox5w+-e?XF=`yW`$(CYvI literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0015_order.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0015_order.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4fee4f8e50c36c4501f91ec55729bf67c31ecfc6 GIT binary patch literal 1528 zcmZ`(O>7%Q6rSDnuI-JJ+G&0oj9WmtI8p3Snj#B?lsW{ZkhJO#hrNu}p0Ts;{+QWy zf&)k(^}w+=dgg|b0|yS}1UDifAzO;%Xt*G8%FSwmkb2_HuD9j@V`<*^y?Og)-uGtw z>*S=4VElmJX#A!i^rs;4P)Fc=6Tml!AR^hwkqpU^4OtRgwiP2GqYn^K9wU;VQY*|B zCy4AJ~x%QY^mOw8?zX-GBFz4)|D}iQR|f$jV+lzx_l@{ydgIeM>8>N zO2$-owm8Sr+p*-Jf7?bXbc}Dc08A|c_86*b}ZZqPu6!msKMt+LK|ks4&YLnpJJQ3 z&0v?OJW&d^$Qg;k)tYU(k60cUPq-c1=BZe%gN2uBmSW#XK~aI{Vz}Q>0+$0%oF^)> zVNsj-JH<;pg~Pfr<~qjk7&@Rl<{6AX>6o?%7L3p~lttaTMSUjT6rZSus&0$d!^Dl| znOjzK9rWH5sX@A3lSNS9gic#c_d}3fBQ4WydR!(oo(c~JuaGCJ>-Vec8}D=7Ytzxo z{0^N%R`i0FA404AGE^BrtIHc+y(9YVmv_v-w7X)#HCLj%WtZ-Ud_+UMPiy7T4Jwac zei`o48V-dnwYyA%y}~I8!2boN$7rab^gE}i>qAwU(Z2j>m_g}lU+aU^)qd*gY3|A& zx!K+`jvZwiqWqaJ$!Id_^g-xe3({erY_V}S|2LH{BNMuh38yk4_(veZ)NFF@PadS z&0J+N-Zo8yp-UC@x2TM{u$kp5<90I1mDO2h&cEBVqw8@$OJbhuI^%nEBno2`eNP0J zy`pdGL1`6{H09bYV{I?tf^|Y)H%OT$LejNl;uegXKC~zi$^J!MILo%LB-e> zBz?pNRQ9q+@`IAkX^9W`ZZtPGy7~$tWARf$t(MAYQW?BH94q@(mBE7ijR}V^^}ugW z9em6Curm$7U;PwJ8m-et>+JUG*^N7A&GylQNwa<0Z2tmyxPzwv?=ZES#QS&#a8uz~ z-Sva1<2AjHuhi<|l1}JqzY@I8c1x2=V=5Uf+gA48Gw8DMta5r&-8a literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0017_service_order.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0017_service_order.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..77cd3171bfcfd974a569fee5f034393a77a3ea34 GIT binary patch literal 989 zcmZuw&ui2`6rRbiO~S6!rPxaSQQ9Kp;HF;mB7$HlXx)olp*eKO?o310Nm7%nWz~a1 z4<38#zo4`S58_!*9=y09Y#EQ91P=?X2t7HIY_!nM;pO|@ym|B9_aYQ4BybmCc?)2Lz;2$cOi+Ax<>KqAeaTXP z3Svpj36 z%3@3AstP4h-(H2r&~O9@nFU<0?W=dL9+Af?={jB21!AK+;4E zj_J2CUJ^MH(IqpN;)Dc#bf5H@hPz(m$4tU)rss9=aWeg(vx1tfU6#M@hvbmx+ z&{(}f)5b+^&9{F{Y$D<2bXo(aHFVYn&f3uN2af-hKL1vKaad6db0lkZ?bW^HQhAxB zF{3ECf!n!?g?8uvIUB``Ztnak7bB+LhSu$I- zDL7p>-~c#qBq2c^l;93VfZ;iCya(J7s841?m-{!T!X0Pi2DKAQ0<8Tc?kZNqS(BZJ!->0kXnZ&??(`vvhDCx`W! zq{GGxnNu4hFYvYZa;D3OtZ&Cs#%WhK*VZ0BqPbA-<4DjGw9W zWFSQ$xVmDlG#RqVVrl4HMZFD{Mnc-me3fzASt^v(TZWS#Htpzo)XU6Oxvq1u!-ldj zhOrM+inLqwOx-UnqbW;-cFS1XiG}3tz|##{<|)-arKWEvg~4-_z8f-WdoAN)AW|;U zC>FW0FQomavJh(1o}yfv@HTp^;@Zy!V)|NN;nWo2LWQr5A9%n_$-TtiAak) zY_o#Nku9X`0q?W4n}w;^E%}s|cvozPQ-j0HuOT#6Kc>uTsf?zT!K;IjvR_vjEXZG( zum=+Y-pa(mH^|4Wi4We=XaBgdc+^-N-&`7ByESgM_U|1xTSv{-Z-Dz-cmnVSzqMP8 zB|ZbVp5U{(>-iIhG|8tIYH4;!J8-pE30~#frAehRm5fE(R`%X8=%VqYa(Z3eHPrk< fkl!|8;vj_1383JN%ptPxA1^E)EiC^5L(1vDmo?^Q literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0019_item_orderpayment_remove_service_customer_and_more.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0019_item_orderpayment_remove_service_customer_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..093052ba1445ee4c8545eb0e3509ca450cf633c2 GIT binary patch literal 4689 zcmcIoO>Eo96{cwYTd^g@u`J1!<-e?@+LGPI*?5y|t61yAZQ|`FPTkcaU}())p_d|6 zit?@ubkhQR*kjO3eatb1b?~7F_f#)>*Z{qdr~nGnOM#wpGY}UA_SBgXDJu?*x+o$8 z)Xd|@@4ffEH^Y(tdf|ef!Jj{J;Z~(T%7J66)I_`?Y_KhllK@HZ%kPJu>=B_Sqyr@EjE7q#2 zT!ux3IM(j#Ha8e3nOExE=dg}^Rj3HODC|HK*oMl6T!oy(mmzYgf-1sSFLCB62R^g# zUveUpO6n8T3t+XV2o-XI!M9u+A}@W8+}z9y>3 zZwA5fYKm1zb1P)6pg@tAicl0Gz;`fLQ5Ci!Mv!IRMtHCiTd=6^ggSy{OjD|dGGQqt z4xgr=3K6TysJ{~dSF9IBxHD)AY6qP0P+;& zGIF>)85@Jb0Hk05Q!m}KXIl`_R+ zp@`ZiNn!(OUz3yOg1n#xIT9Fh(#YIPlr!aMqdX7H`1;I&nKTMe7iJ{5bktK4v+rEA zf-r9q1(63A0pcb?9@DxrV8PxXa?on5rees;Q2{s(`8f^?Qp3xFLjjKaRgD)(HOLIW z3X}kpiUO=Eqzm-SgqN*Ql75C4k{fLCQb|TE*uWB!F2u_Nd6seymU8)zkoUnyYuxI?yLV9_ z-)@LDMeluBmbXnlZw>&{oTq(EgGT-Lc&WZ7ldI`BNA?JFELWiUYvK>gYn&eQ{qM35 zabHxkxOG+BR@uB|n$^gj{94K49cPgf z@b1EOmxxnn3Y^)Covn-GC4lRsz)YpCxN%_gf`8I5)tk5uUo%H;#&^Bt%^bOU2Hd~7 zdlX=Nqu=-qZ$kGbTA|24LYK5i`q{P-N$ZjHf%E00R^T*AX-2AAP;G^Vv{-ugvJp$` zvGjhi8T&vBUT=jGT5|5W+epso$+>;CnY^I|Z?-~FEk3h*)rimN@tOU}X8e6Ec&!y0 z))Mo(n?_<@Ps|@oH4{J4g1J^`L>tZSZX2UneKfld4hNc}%UbYuD>SN&%|9PB#^&|0 z`2*+SmFCzTEx1CtGlV;%$20rtA!fg=1@E*%F>QEuci9-8)rV*I^M}jdt$e#;SZ6E<9g0CKvR{g@gQ|s;xgV)*tKZkB#+`zFsoc zEBboHSg-5r^&^IP>R4xw8D{F2ES`iuWwByfG`%}$MALdSy+3d`_+9kdsFC|b&wXO# z3VNff=zkL*3))HgfPa~5##goA$5he` zku;+xGJi|VX~B6a#0(K)MjxKpzj6SY!%JE)f8=u!-(KuH-0eG(Y=z>-t{!anp0*F2 zVUL|*A3wt$v9rI2OL>Of7LVgR!4H$hjqBcci^MIFQQY=(c_L3XXC=y4B=-QX41WsKPw$2!KYfTn0p)5OuV9-e*y_MbMxw>ysB zMBXA0I81Q%TbTR;rO?k caispvB#+%s91iz0zY(0&gOmSa$c$3_2X{v^@&Et; literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0020_orderitem.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0020_orderitem.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7800021bfce8a6227e5216270474895499cd11f7 GIT binary patch literal 1344 zcmcgsO=}xR7@l3NR@$}X$i=lHlO`oKDUzwA7Nk-r0mrsVl14tXafn(vtTbaW@_wkZ zD+l@1LJm3l7XO7{A8aV3KcUdeE*REKFNL0R6F8yZQ)hOyNx(jL7G~b(-FKe%bNA1D zUI%>r25)Y?k^%TffMlho!dZ(8&jA8RGJz#^BunndlEAW=>L@b!2B6eafD|kZBDRDe zJ`Ymy*-4M(a{843Wtr&~=~Kfaj_oqlau7D%b}u%J_k`)}CrNn6pd%sBk&)DwIw=`o z>O~#W4)p_G zW3jmBng7vq?tRbw)L}k}gV!=Yo-JQt+JmGWyf>LHF->Ck*_ZYD=U+kMVGBAGVLCL% z7PdV|vE}Sw=wiAPTawulnhA_X&FEW{+?^{g1yH-|M&KP+P>``oZ z7_pflC6+t3bl3mPlJD7GI7em{yFjIv4-P|;!sz5wM&9Nb$8SG&udk#xS z;qB%Vs|a#4C8AKb2sV-1F3++oj94LLI^?0Ek%_sSgYf5(VG3h`5FTP1VY^4LOU3lE znbj!f2VzdCm>!n9L;5Q`o0gzvdW&aG`u2UEiHZh>-FKLbx-1*T$cLO|R#(1TU0GXa zx--Pn!G8hH#4wzb+C!ebTXS6E^&G3V=JZCQ&Tg%3c!oI^FKpwpn73x*ClQ{)NPdF5 zwQ26PcOO=*UjL#VcTSY8Ivi7#`-`>=7u-X>Jp~gLXdBWbCC{tBd^^#BcH@~IX0Hd? z>!)+q{+|2LFIM(;!eS*TR(@ChSn@m2x9LgI^$XtVT+uI8_7}oZB`8&nHeWtIejGN| zgT{K;Xa|jU*w_pjoBj{vq%`mg+oy9^{l(?|TjAnzu(*7*^^zQuu-OWlt+2TfG&jQL zqoDc7|8e_d(ew+}B%{pFzD{Q}eUj2XP=CEgKS{zbt4xavP(|ISM{!$9Zfr&3Ki zKtD?E(wjnxsFt{Np8Yx=gxmB}4*A~(xHtGVNlB9QuL`8{U*O}{>J>@d)5F42P*{2c IIEV=T13D^H(*OVf literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0021_remove_item_recurring_cycle_and_more.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0021_remove_item_recurring_cycle_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6cdb3164f7811100f0b1b99921102ee7be3c4090 GIT binary patch literal 1124 zcmZuwzi-n(7(JgI$9CEhLe&C=wzN^D48(;QAtB))LCF9OQa$wK*IF$(90WLrHMx%eDf+BY@>yfE6M&6Sc8G`aY1;x1H(0Qs%cH zCCH4xbE(tvqA+G^5MkoS)keB7jkysy`pLmQAi$O|upyRQ$(A7?%0+u&h~-1&fPaY? z$*PGIpN%+!g+jKOKbuW4ROpijuRY;34*osOr6%C-mJ(k(>h>xqKDW;)h7lfFB z5bs*sCmc^8^s4RnVrRiH*(M<-VZ$Ra70qY4XC#PTlZudG+5?OeM1>*Ds6>=_Zuo?B zn2MWD=td0UI@6NF@cY5E=hix^*4EaT5p9#vrTGYscr`fQHES`Uu^Gi)s}Tj}!>G{? zNZ5+as?&1(j+h9Y+o`Y_lAVN)Xo7c0-5gnDo?c3mn|}w<<<5qffFcGJ403JzrQzPvYYzWKh%*Xd~oi17tAcNcU3 zzRRE-l`%Nm6yOM8fFT7j^kJ;|8Uz}61h94huufpdEEiq9kA^I8}rA)%CD6y&M_vgjxYVxds8 z6EYIyisyF9Fkxz;i3?$tKNo8%EgB?yLS9hn>P+^C$>Z|MZbT^NwQj+}mqDgHc3g*B zNNs=+caTU17a}jjYY4q60xCC^5hh)dV3LFp$(Xz>eCnAx*F$A$ZDFhsGbCqkiyTLc zlXl7Y4t)Y=f&>@uy%!l_nU`i!9;UIkorXnBl05Tvf;^x-NhHBt+zFC)>Lp}f#p6)n zebVyAMfR@ls3*$3F;VV6%Q;D0R`Ie0Yuz4`e}{#v zymL;i<-WB%m~RYbSI#TC?F_B!-y4_Tm!y8NZ!Heyn}gYfLA`l+=d|AJ*P9>bK5u`k z-#@P!!a+DsDp&rdY}~4wZy&Qpne2{haC=mqHQZ9&QEeC%pkSo9wm- hp?ET>80rwhUnYR=xw!z%L+5m6wLi1^6No^q{tbGLA?pAD literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0023_alter_item_project_alter_item_type.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0023_alter_item_project_alter_item_type.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6c9f10e08c294871f0a671339ff8d612c54aa09b GIT binary patch literal 1370 zcmcgsId2m|7@a+BZyc1EKm;fdl7O@YUMmPB#34nAgT#@B1Q8b*t#`)OZuT&{Ya*xM zQVPm+`~{+tvDVD|yXZpWa)AyDBFhxj^Q5qN;b!)`+Y zqKdF=9Z8A$E0U0evsR&>Ns*OLQGc~Y`Zz__@f7t}B=2Ol#W>!{rmy{rzTAJ-ryQn_ z)-c~1Q1c{rH#LH~lJf%7)eX?-7P(h#hF?u7PbEBdCYJZunRaO$HyIK+exJyoC$#hM7Zxl^d)B9 zy^UK$Mwaf@J;I|Z$wo41qm#_+%)Qx}xiV3_22PrP3+%Gi*?+Dr1=tTXDl;@ZN1OAE zri0xu&=&Miw_9w()i1=nnv2(>I0+-XhO1g)ht~gdY1EjDiH(sjNj-l~u}TyhEnlWW zqA5c`utld0(33&#YB#&slY|lZ>78C4+hmzO%_m3DchQ?9kkwU4WhKNX(rWyGA)Q+_8I{YR1>05&(v?*VXh zj*qzp2MY4DTmIQpyDF1hT$UoLMpni4oH$4pIodjeU|~Jeg@-va)FaKmCn#qduZw#pg~0N13uYY_5c6? literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0024_remove_item_active.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0024_remove_item_active.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..43b9ab7bc0fb00b269e20df3b217c528471524ff GIT binary patch literal 682 zcmYjPJ#W-N5S{hM=IjtDgb0KLL7+&;MdApkP(&I85`rs`pm4MDd54ov{$lM*EArKGj(QR#f@dw7Oi8pTNxXJh$%XXnLB z7A6%67FU?ELgW*Ss@txrE>K!JDrp#1@jj{wZklsUSQe%#rtQ#Mk^|N{7?UnzN-#}O z;X90dpN5GRX~wa@jAItXSPH!kx%?T^d>`M%m~iRl15q?%3(k{Y?!{o^e6Vr(;PK_%hgY`gxQ%JA(Vrj0y*_{F znbPU*vdu^Bz+Le*t!QQI3f&BLyM?_G_Z3x74$4Q$G$tYBngV%xMVATv?Ov>Ip093R IgCcGAe{S2ddH?_b literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0025_remove_item_project_item_customer.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0025_remove_item_project_item_customer.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c358223c185e59d1cc1cc2f1ddc539092e326bf7 GIT binary patch literal 1176 zcmZuw%TE(Q9G-nY+8U@tL=fZ=l0DdMjCj$Q5GWWQ9289Gfys7f+HBoN-Q7ZJJV?U9 zBRArIpn-!2{{TIC@YGYAG4bNbTN7$bI61r9MGQ=`zxlr3%={kT%zn$|R6xfkI8%Mc z0`M~;=@16sc!h!kfB<4_;4o#zVaqHNan|O_JPTF<;`RXIF;kDDr2&%pkW1#W&|)>= zS41?HsE$?hjnMMkfQXKVupO+K$;QNH2ITk$1qT3wGJ`;wMGRtVY?)&L<}b>IIK&?b zhqRYy#JjQyK5OYNk*-Pgp|jouBMC`ZsgImrsb9LlcjW@#)$=|iA1Q}?;y+STO=u^% zRz}MbvRX1tvkYpiz z*);4Zcf=5GU>9N6v~b`@FNS2E#(k_rVTinlP>lRYL!z!wajcsA2)Brc>V{kM2#YF2 zj*Fp>ibzX~&z2UKOGNb=c<|6ZfMa?Xob2iw0rmr(wi%k9qc3}A)4^^S=xau3*sW;6 zHEt$xbruk{5^QF}5_CL;fMTON=7Jt@2tIb|EF?c`AywL+NYDDy5sE|2QgkBUOD_AqKTjz`zhH`*9>*}u9}zIx YcW|RG4m0Au+8LT_56%4sl*9r40y0cAZvX%Q literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0026_rename_type_item_item_type_remove_order_paid.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0026_rename_type_item_item_type_remove_order_paid.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8c63aae2c8c63ad9a69066780ff7e668807ac83a GIT binary patch literal 836 zcmZ8gzi-n(6nd-@WhMd+$5>N2lX~T;J)vcRvZhFGZTw zT7c8X5*z>nMiNL#NC+749GI~W%tSJ>nuO)|(5!K2Of0|kTM?fKFO7#qRK+|i2TLu$ zMIk0n4*($~3_^pEAqhHC`|4so}o|()#YBi;_ZuMV{V$5dkBj?blBSRx>Ph8&< z?(3!(-w^G7oFs8J6k9tx4<6D2Q~m*ITwzM{f{$=e)nqU(E1qH@EEN-0HOW!9TBo3I z$`Lukgl18S!r=*9pbYnF)ZztG`FRvG-zZjOSHe>2p6>{UY7wQvqf}lrPEg`iO5cy8 zM2Qq*m}AB;8^l-^%4V_h237D`j0sajHD42t=eRKZ8=NW!&c6h2ODxKOmvJ@VY4DT} z#wli18T6tmN+v3hMfce#%7#3UeQUm;8t-90SojqzA2g88J(AApHkBE*V;9~urt0~r z8h<;V6zb*mW=l}MklQ}YY;bpHrg6po_-f{Xd;7C@;&hLl?sVhUbp6J3{m#5?x!!-F z?)1{eyk*Msj(6Gq^s>0tT-}q;;?@Ifv%a>hu6tD}wCuV>=gyPb^4;R5r1EEgQh}LC a2syKX+@0HN#Qy4?tZg2zZJvQ7I{Od5wBY;z literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0027_item_type.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0027_item_type.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b33e90470fde85c8032c6a13d52209cb1e7d2360 GIT binary patch literal 859 zcmY*YO>5LZ7=9yR6RP&GWopd3YxIe&K=#@_ePut)B$omm-r> z8-vp|3HE^jBPnDgB$*K!1Ppit%-98HBI($Zq3QFBIl`gYxBS|PBEBKKENStmN{YM` zc2+P<%Xm5i;Eu^@TY`N+2nmDGV5CJt(*U$OTJXOkAZ0LBvpX06&nw0(R%;o|X7vMS zBI&@LAi34)d;W}YpHFm2k@d|aO_RJOZmzE0x=lIeQHHeYcabI)W}~1f$E?^!T5yJ( zcB6y|OLYiKRn?{!ykNb!;xkf;;xCbJCo%F_$xpt?@X9wuJ#H5=SxR@J_cX=4Rkekc z_tI1rJ?#=z5@b%r+E#)o+wfiCP@Sh#c$CV%UWyXWQu?kJrCPLP47->!%;N-0t}aD5 z_ZWMqc5q8k_dz@2nhUS!;`n+#!>KI7c@n%Xk(WVHCRJQy!Fmz*GR&(o*odkq?W;l_ z-C&(4Zxum~JDQKF#yhwfj2#W8*B?l4?@X;+>Grw$igZw*d@92(3~g{9lc8x`wm&=@ zdf+a8@{XK^LucW5e(Ctq{BfhXclD^zJZv-v*Y6M3!@;#TgZA42-~Q3qIjdW)H#F^r z{qYH3oNV9lE#Zy?uCPsQi8f;N{sq;hdzU0SckYgSUE^0ImH!BosyH+WA%AQj{+T^X S>^<*jZuxL-`8Pj* literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0028_remove_order_due_date.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0028_remove_order_due_date.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..cbff50554806e7b63f065c85c5da26d4f0167a12 GIT binary patch literal 663 zcmYjPJ#W-N5S{f`Y=@u_A}BzIKoOFQ#1Rb$MTi1{6oo60XxyxPx5LRNdwuZ-kvou5 zP^Qaoh(gJ~ph}f!TPiwBmo%x^U7vMqF@A6SW@p~+{$5-2L9So)*_XEj;Ey8xvKL_f zT7pwxz(@)ii3kA$J^(Y0ftg6AR$s9Eo|_$xjK&J=zlsDz_*pV3;ws5`IbLc3`VHoL zGJ6UL5n&J+j7&&m8i3YR5BYxy$o9KXw}S6*m=RQ5H72cvbaL2^|PE|N_m{2uv8odE5fBZL8x1{?hkxk~F5JP@!@(=30ZDZAKeNoL ANdN!< literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0029_invoice_pdf.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0029_invoice_pdf.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6dab73d451ffc7e43c8a329224d9086c4b326713 GIT binary patch literal 788 zcmY*XJ!{)Q7=BNZWl1C@F`=b#3dMwihDIS%3nh>e5-6>wcF}UkzO#{YI=T8t@YX_x zj@kSdTAHCle?a$6hJwwlow^yEQpnUhS;FlJUOmsfANT0deP3U9K(4R2)f*##pNdqg zR)WQ$1Y;mT5Q7N$DAIflfd;2Qv`Zj5MFX>HTD?E(OYG|-!>#>N#MOioh5aPR!kDMR zjABAr+FkVk*dhkG{GdNm;@OW^^l*(VV4ShNP4dY zxVorySisMO!E?rhoex@-tjigdcn#yX zdB9YyVuTJUCzN+XnkLFsVI2{2qGlw9qV`G1Xu*XO4{7P|Cs-&0ZqK|oDNRx@PQ$Dl zN8WMV%_GXQ)N2P>z(y*;gU4hL@P6!ZdQtF_7Wjg8ywVnL_5VC+&{JGGfu#|9!%?Cx zLJ<^5k7T%nxe4~cT-UbDcQ5A-*gGGbsnwiV&Dp(&v(3A+M(gU)w9%S0S|7K*9DjTM zqj7puH*9CFn+@~*i)6c+*>(+KFNN)qPGLo1!1C1ls;sDON_1;ITl#sJJdjjgZb)}z cnCl3kKPDje##}?@l{4Mgoowv>21$zUzoC!JP5=M^ literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0030_alter_invoice_order.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0030_alter_invoice_order.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f8cd2fe1eaa71c66fc44f79dfabb5bdb6fcc1f04 GIT binary patch literal 982 zcmZuwO=}ZD7@pZpHoHqAH5990YLybY2eUy>!XgN@Qi<_k1G0w>o6Iz9*pE27vBZ-? z4<38#Ur_9^2R-=%yciHtM)2avTObvoCujDf3hf-;d7fw9ednELX1`P_I^g37-P-v9 z0r)9MK8hKbZ*Xt`Fu>3QKD41P*%B07@?^Upfkyz#djJ;*93<890_prgPG`F~mW<*r zK@5rMzT2lx?1n+a6hFkoi`u<3F^yVA=0_YH00L}?fh}R!hqf#MQn+X@EMc*x3@-g& zD#g4%bx=L856Ty4ix+5D&TF`MsO0B6EaixISRSi}# zmw32sRG5kq9U-P8#PdcT;kb;@i;?4rT){9Ik^qyS=aPtui(>i%FD7(DRG|eSRGtQ8 zE94>3n1TmR&<~k}yG%`*;djW?XAiefyVGhhJsgtkV&8+guRN*@( zp~OM-oQFLyQ-HQMlch!Fb!(;rZTYP}RcjNqcD%H5eEI5ewZ31UR_l{${oVSLrvq@-6T?DIG(WMAE*sOTfiYN-Ad(ulTLpC$rW|>UZBx_yppwNTI z-s+#Av_}vA51tl;UFPbkw}q_;JvoyftaT2P?|bv!o9}&@AFHbl$n_1kcRwS5Uy9VL zQGvyd1V=!CAO!POqzt0Y%)#2lxMIX0jT7@&D^E_E zwJh1s8e6U{?3cA7DX-a!7>jscY;-#JIyhiCO>xBECQ(Rnk`kJVW<|wX9p|ICN7GXx zuXt6A7`(%b@_xQ23_fDa)#cb~RLp~z%9z?4yAfriD+O4%h+`}qjAh=4QHfVDelrS~ z%2kZeA?1YfFrrzioE6R^CGM%}k{T*tKi&&UE}UdYE0@2*LXCd@-g}+VH1m=y%EKh~ zo+RNYraaHQZjc9TtPXf^hYSMVPdrZd3trIz@6(=F+2bw$q9={I`=3!4joBWKQ}sTI zO@Zv8+zw!Fg58@i@5{#jZeG(kr|v{3!3-P-#W(HHprx`=!A<>2*ovi-$~sxsDL} YV*+x|%oSuFI@9&7$@R literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0032_order_business.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0032_order_business.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..42360846fcc1e6da4bb55096380a4b5b3deea897 GIT binary patch literal 1066 zcmZuwzi-n(6h5D0$FUMrLIr{%XlaDxfw+J`l|V>Eq)1S*&>+=APfqS?IoRiLwyDAd zQU}Iv{TD#(z`(!=69ZGGM90X)7O6!@ojBWZi`1Uvd+&Sq{C<4z?nkAf1F=4%Ya5FY zfL{s7moicImxZzeFu;-re94l0XhA8#(37nK1djohw*W2>shdX217vbn&ZMREp`rXv zfC0JgyAHD>H=rR`{Qwg$Y<4ooY|kU@e-U^G5MW6dSP)AXI?$3KAcfPiVHt~xh}u2# zf3Qr)3RZ~Lt)4vTmQS%wpJF?I(uUQ&;%*_c?`e6rj%1blB}3<>XL+Nd>rxQ9)b0d~ z@VSMByLXW7MTDVF97cgpSdRr8u18Q9*-;z{|6<$qJeN9&_wAb#Zf`FCR!S5PH2bP{cLIvSWQ4ld|~1-mL*C0s{+aR31$z} TillDq!>QU}s`dv6kOue%80#6l literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/0033_alter_order_status.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0033_alter_order_status.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e548ea10cba82e4fa2d1e789b19f8e031fefff2c GIT binary patch literal 907 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 Vj`SMTcdY){d~a<2HxMKj_zUh+0Q~>} literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/__init__.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ce04c14a17f1fe95258cd386a3b2f466dc931c30 GIT binary patch literal 196 zcmX@j%ge<81Y6>j(m?cM5P=Rpvj9b=GgLBYGWxA#C}INgK7-W!O4bi8PAw|d&o9m_ zNzTvJcgasK%}vcKDc1K(EJ@6%1WDv2>ZW8R=B4NB=cSf|`A{yHU7nhxpOl%ClbM&U zpPQLplvt9PpI59OAD@|*SrQ+wS5Wzj!zMRBr8Fniu80+ACnFFSgBTx~85tRin1L(+ D0K+y1 literal 0 HcmV?d00001 diff --git a/osinaweb/billing/templates/listing_pages/orders.html b/osinaweb/billing/templates/listing_pages/orders.html index 5cf75813..0d886564 100644 --- a/osinaweb/billing/templates/listing_pages/orders.html +++ b/osinaweb/billing/templates/listing_pages/orders.html @@ -86,7 +86,7 @@ {% if order.status == 'Pending' and not order.invoice %} - + diff --git a/osinaweb/customercore/__pycache__/__init__.cpython-312.pyc b/osinaweb/customercore/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1c57e6911d3a51af2a214d9b988ffe76aafdd6a0 GIT binary patch literal 190 zcmX@j%ge<81Y6>j(m?cM5P=Rpvj9b=GgLBYGWxA#C}INgK7-W!iq#J-PAw|d&o9m_ zNzTvJcgasK%}vcKDc1K(EJ@6%1WDv2>ZW8R=B4NB=cSf|`A{yHU7nhxpIlm8lAoJe xl$>9bsvjSpnU`4-AFo$X`HRCQH$SB`C)KWq6=)kH5Ep|OADI~$8H<>KEC8Nj((HlsV-N=hn4pZ$0zk%eh7^Vr#vF!R#wbQchDs()=9eI8O~zZS zi7C06d48HqxA;=B67$mY^^)`RN{TX*ikN{4Rx*4BsrwbBA6lGRRIHz0oLQ2bpR4bZ zpIn-onpaY+@0VDTm{SRo$V=3Pn4q7RS`OwzxnOpAYLb3(X>mz@Zfa3-eo?AE*j~MY l%3mBdx%nxjIjMF<96+lWfw&mN_`uA_$as%Ip@YaQu{-sh)}^n2O)#W>L5aG(XE?OcS(fa@ZR^`_rAw_@2%Tyfqbv{(0h{kQ<4AIsKN3`f;mv2D1Z<- z2!RHdK(!fAouL=Ks&lm5FdJWrn5fts#PN_voVJ1=@vc%;Ht9sn;(;E^^xkV>d$SDhib?#3GS;{Yb7SN*Ou35%rqiA9rk&t0r zv@n*AEKse{{%ED<&re(Lhj9&tAdS(FNU zOi~i$N{GmDHJTlQb?smD7~!P-ATG}lc_VahDwAU z3bq$LNqZFWV5z-G{|hfkD+HGIAfCJha*>{Vv(4HTbYS26y?x)mo&7d2(2L+4niIwA z3PL}n5go9@)0qafgB;{w4^{9o#u6)@Qc;)H5UXD7KmionM9bQ`X6V0U;vNpP8nf28 zfrB_Bj?0KG0OKhehlS6D3Q9hm42U<-Nc{C~qx~-4LPhN0&G`O#4tkC2co7*&;YukD zytiekuOQyz9aKl^UFdS+0!QfI)xY3qXx=CKqF6_X-Yy~q zZL4)uf)zgE1KmY+3po1w0W0DRd7W6Rk!Y5n=F^iSJ`@9zF#7mdd%%Welx!gRR zPH&u<*{9H)XDN4uO)J?))b=aTl4lE+u)KBYs9JZOvQ;h7Y?ahPyK9EHMpm+RcQBhW zl643uOHjr$YwN*)DR0CYaZK6$RVE5GJz8?BrkoV6iIbV}sBL+CHghFjF2v_S{N6xq z9i>Lz)wk=ddN7 z(cO_oGWQ{Wl+1m;-%REj@mvQ=A|@}Pp|Beg-vq(sHF=h1gP?+u|4hn;!7KUW6Chx& z6Rmga!Lc^fQ8evdM@9N@TcY+g)IZjUjj|yKD;Ro^kjx88Js)*>Deqb;8lk;xpj!Ju=J2!6knfE=O*w7~@kkev0m#pj#a!fyct6 EKTuWstN;K2 literal 0 HcmV?d00001 diff --git a/osinaweb/customercore/__pycache__/models.cpython-312.pyc b/osinaweb/customercore/__pycache__/models.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6b53993b488f5e60c1cdc5b34ec57267cc7facd1 GIT binary patch literal 231 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 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/__pycache__/admin.cpython-312.pyc b/osinaweb/osinacore/__pycache__/admin.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2d418b6dbe54bb0eb12d1bee94b83907780ebcaf GIT binary patch literal 3276 zcmbVO%}*Og6o0$kHOAN&wD?pts?t;`5b}i^0aYcdlC^lpXx;TLnO!%y z>H#FAwx@D~W7SJlp{hOf*#DrHSaM`EYEM1o7Rj7)>YG^`v!*R&N8;^!Z+^ddZ{EBa z^LsoV1suQTZxmNlfWNrW9%zfv{7nHk03CG6gtC;AB+z9&WXeCu63DO&y0QnlN~BV_ zP3?S-LY|&e1Tu`so(qtwKt>SRdjT>mkWobTA+o;{wXK~-j|gN8k?{+VJm!@)zw<4P zbo91HVn>pvOK=HRJP@lt5GxUgH4uoEB#|RIKs^QnMN0)@T?xb*3d9-?#2N|28YR7f zYCjez+SNd;@j$F=fmjnAR<%E!c*)x`EiqNo%ZBxm-&(Y!xq{cOo^0J^X!7fS00eT9 z4mp{Ga*8hH)T*2gvE(XwS}`ao6U%*InTACuK8}!0hgl?_x3n_J=UFtLFWY*>&!I+?8I zYG##BSlZiqNwYTXj76RayJZUf8QJha1)GwL*!TQamG*a#~%CNrH?m3e3&@|2kf49BB16&(y3ywI=aKx7($6PwY zfdxu*tf8Tq|D9*Dm1hV4@7WIVY`NgMpJqGZ%a%|3vJIhwkLECnvz;sIEXA^OqjuIDIDQZ9H~JN$t0#N(6SMW4TQ`+4mB-DR)# z9N|my^g3L{nNE^;6+*g$%A!wf!*WHMX@w~+b}|b)uI5%8v^3{4Ho#?G za~xySB6{An(-NKF0b9Qpr~>eSyfV#)C=TFDsf6F|L5Kg@Upl)|i?oLSv8+K_&N38q z61}YNYz{J09AXw($lfS9oIf>1MGIa>{fqI=uI9VbzlH#ZZ(s+G-<EmNzqK4BFN(OIU=GO-!6n*1JlIgc7TO&JQd25)sE?iG_;e+GRqqZE-h* z#nxP{SZrJE%fDXTBCMy?+N^g4kw~)$QM-tSE!1Ju?^!y0uMThcedn`0 Xzmt_Z-0-s=*5SI}bN>ZQi1z;*&Hz`e literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/__pycache__/apps.cpython-312.pyc b/osinaweb/osinacore/__pycache__/apps.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..316459468fb0df44d8e43e924299c4e61fc63df0 GIT binary patch literal 499 zcmXv~Jx{|h5VeyO^@9RJsEC092BZumD+59*RIrr^hAfsFJ5`Vqhd5CcHl+RlCi)u? zEB}Ipv5LgR#D-K@I$_7Dhr9Ru-kt95z1wXA`QFfB@GSF}BCFS^!Qx1Q86bc_1|sM| z2n=uqh%p7kr0~_$KF=sDyYa1v4a-(PNiKLCgkxXJI>MSPb|jbq3Oq=FXAtO_#PF=b zw5@XUT7)t7c}jJIhkbH~<1u&0$cZ?iOgQJ^xSwbIGNg=@Exz&(?MB%|D8>;*sB9x7 z?Kx9;9ijUivs&3EG{8B_5SC3)P<64C_5v1az~!xbBWNmI**WuhM>NiaJH#1g zg%Vb^qV_Q!+}eu9JFH3RNGg?~V%s_Gv<5QPi? literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/__pycache__/custom_context.cpython-312.pyc b/osinaweb/osinacore/__pycache__/custom_context.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6aebbef268e8f924440afd0beac114e6de90af2d GIT binary patch literal 6468 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 S-3jc+apLY_Vk5q?jDG>-UNidu literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/__pycache__/decorators.cpython-312.pyc b/osinaweb/osinacore/__pycache__/decorators.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e234c6499b09ddfaa57ebd01d853ffbbae60ec7b GIT binary patch literal 995 zcmZuw%}X0W6rb76ZW2El!EY=y2o+*&0%<4|#8VFzN>Y$qL`c`&N!)a^V`pX?EGc*p zs+aau^jJy{73-z=U-Xh_A+YG7^yDp&OYzhH=)_ly3}*HXgM zC8VGowSg+o!WVp~+o+*@#UErlY97WD@i<|Al-m`TdLpGW`Aq(h%}a(S)`%-?(-6e+ z2bP3UF27*3Y&*n{($y-=nEN`Yf-oj$k&5_HMqYb_3qNA83Rqv&0~vo~lX|J_xh9uw zCzHv|icI;5u2obTTO; z8H<201Z6zEzTpp+hotQgL%pE;%=N4PJ#dfaH$`zW$m3Gl+6^&-D@GG}^Iy|-a>|}VRIWY4( zF|jw^Ok_XjjuY8$k6VdsGnVbbm59mRODSwv;!$8+ZpX_c8v)^u+*T$V2a_Bdp9Tg+ zooapCPfoPauA*s=x+>DgIudp6pn=I|WP*)>TRx@xaXD~7sl%BJ_lGWrm*#7f3DXli zcr{)K}3kuO55N?TK2MRvM=d|{fKXOi8)oF zhxVji>{Yx;>&=7zgBOK@@~|gQJqThdLQlTgm-NfJu(Q8;GxM97op~Sg`5fZUd+Tcb z2S(^SDE&w6fiC4>13AdS9`dn?F<{A)eA$#!EPINtnkvVNqk7sq2_p&JM~=3NoD7kh zgMG@w@1`uUsi&Sg_skM}aGLGpj5E97VqiA(C?d2>i5n+bp+6rs+_Y|{L$QJFligQ5+>n^+*;V4PoNqs|JQ6hGWu`y0qo^HH$B-x_VOraD z8YHe5I@2u+qAiQ%EXxm_!~;BFS&tLj6BY_hvut_UrZX<_9Hu9|oGjmGeh{>hnCY!v zqPM6E&Fn9hpuDIQMs8dS{nEX#miQ!yqf*6=ZLb4{z`o%$?Vu5s0@6_Xk!sWH(`O5mrYx6^SyKwjE?9mhT%kACH~{Igj) z)(<~@xL3IO=y3VsVZKh%!7${GY$$9n-5>%j!VVqd>Wv(AA=M!lkxiw++1_AN?MQ~a zf9^O(ae>6Pp|M=urBR%YhGjjw2k8hWV=D1&*JIiK&%SvGrz(aM+2Fo(Dtv6UM=+KvsH*!#sZ@*b)9ahep;^HoUm53C{_BS}~N9^l*HFk6wf` z5Wp0{U0p?gBuQPuzYs`42o4n^$Hv9Hi?uL_saq}DNxWQ4Cr#l>GfmjV8eTZfIc+Wy zooYg13XDYTNm|bFmiP7BV%hJ|NuC2Pdo;zxPZ?vpgKq7hu^lw|4UO(;5?;VB$VT&J Va}NRD%gJ~Ne;S?mjR2&*`~}($GX?+v literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/__pycache__/models.cpython-312.pyc b/osinaweb/osinacore/__pycache__/models.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..299fef4ecfed8b0bdf6cc8b810c3a59aeec8ff66 GIT binary patch literal 22786 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 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/__pycache__/urls.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..73c8df7ade36195a0b0677fd406cde7e4c7333f6 GIT binary patch literal 6149 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

1~ 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 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/add/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/add/__pycache__/urls.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..cb16c9c0645f3b05ca150ebd059cbd2e04d70ce1 GIT binary patch literal 2619 zcmZ{lO>EnA6u_OvX_KZ+zw+77wKO5kwz}=s(3Lh7RR;{z3Iqcwd;~B4r=;Wy+o4J% z4%~LkPVKRr$TSWdIFu7tBrdUJ$->eOh|_LEyY0k#f7^3rJRjos@q6$8{_nlIe~yk0 zGw}RcSSob~8Rj2UtY_L3o^`wobH)ga;HfZGPu}BUgaN@@8K`>mUJo0rYOuixCP+mUAQX_ZV@=Q`z|@S*MPg?l5g3;C4pOV;ZhFnb>Nm= zxU_>?0WRgjWgOg9;LfkuwuDNh)Hg_D&$6D(v8&42h@#t)Wm%o1E zF%;i-WpXODha{Pon-ZsoctJ4aYF*$fh}ZZkX$Oi;Nv>Ck$mu~qEUg{5*ObaNB0(tH zEv-EWNlGP79|B`jB4XR$5bGzTD0BKSm`tTTgFZ+swzwTh7Pn1%p)BM$eZq{Tep*i3 zS1MNsr;mUKCBqmjibNnaxy)BMeG*)@ZUA#;+FD&EF6T_y1tDRcB=gcYM*S$Yqg4NY zk=QUZJ>{;tb35glye*P%n`Mzyp;qID;}HC!12jC`r~_#fi3Wok#Y50x)D|U;a?#}? z*lcvQee|ZZP412KTi@27_^Ih|aW8m&$UvUgPu# zqV58O&U?iu9f$Fyy(6C5KL?pE$5IE--s^Mm3{@BLCw%R=zSka-3s z=6RmGi+{=-Zbz|RX`!RWUpI!q)yOH;O_j>0muRcSPnF)O`yZe``CEnRQ+k3FrO{nY*B&IuewMa^dq`IH0>^4|>fmGM0rT3Ne ze(w(0zCbG0NotcRWir+MQe}70GI#FN;u}hQqj&32WshiJx|`H8IVF?p-Oj7*XJ+8p z>VwsbmddVEX7OV4r`(UZ-qyP+dxu)Gm%iUazlC~-1(p4ZS{5!M+G18&%wB@&us`fF z09OTrOF{GJ5iP+f39grYTV>xth?;IHiJQGQKTz2ZX`;mWrZ%&s%xv}cK2h0E5nDJ< zYSUR|I@{a*NM%1p(`=`y#nzPATJMebRQ7!|MLQ8~Vp*A3?(VAWEt+fXm!!6Fpllrc TkyF|H)AiZ0fggh64H(&fZrs_3 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/add/__pycache__/views.cpython-312.pyc b/osinaweb/osinacore/add/__pycache__/views.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..735ebcfce199206aa565963bf1db3c3ebbdb2ad1 GIT binary patch literal 22054 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 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/api/__pycache__/serializers.cpython-312.pyc b/osinaweb/osinacore/api/__pycache__/serializers.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fcf24b7a45843d0ba7668c3253e6c320e3f71e8a GIT binary patch literal 1181 zcmb7DJ8u&~5Z=9qF?QlOFJ3|+I1%u+Et}V;dE<#6_ zh62$=5gq@6hE$1Gbcliu;UJ_`%^HmLeD`U7zC>Vs^lPoRl#s6& zOqM-%MhQ3vBp?BeNK8FS(KjOFgF%Two{+#ClEC70uP`|}{Xa4@-?Mb34V8s|RN8|} zPVqY)bEqmyEc6p=Q@W`PyUjFqAE(V;%#*Hk8?4Ks0d6GhUa-fKcIqa)uj6s3{XXB#ikhk5F6)FY z08R+6cLvJB_lY8O!|BR7Fhg=$UD>zQ;`Zx;ScQbR3Z`*ri3$b_XsVO6SV2!$T|o~~ zv_W}EJTN4`4a08Gp9F1IidDJk{O_c%KkCVD8gubfq^&UGI~T9Y!Gh-X8sXih0>YsO zv^^R5+F!x+^woTv?m`bg>BYNTz+h*HPzy5vVhP%bWi&JNAd})Im@@n%Qi*Ke+P6=a zZhu~^

w3)LDQVm_vgf_IO;#?*`Jlk+F;0D8Gu}AjXyep@C3e2ov(Es&#>KsB6th zwXluan=+WqP&dlo{=E1g6Y)b)11Ka{-Usu;q?CRmcfOFdGs~n6`sVq`>gMt4<{820 VtYp%Scjc4yt>g8rUy#bK`3F9$5mx{J literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/api/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/api/__pycache__/urls.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b4fd0ea450c1749f2c67a7ab8ed453885c9c9bcc GIT binary patch literal 394 zcmYL^u};G<5QgnIDJi8OgwzEl7L+0N!iboV=+uoROJ(Atq>AIpPN>Sp#t0M7fMDb; zSU^HTiqwgzTT!=8*i9>L@crNU?mzpz+1x}X-g<{uk0$?ESckU~^NtZuh$D_uByfZ= z;tnUNBS=Irau8td0vY)0!T-#?*V+rIxQ`=myb<_Qivcd(Awd}=(&ZPilXEG+B8`R1MAF!-1+l5NCvI|P2?0Z$s>V_#BcjJ@kXEZk@w20`1 z2BoRgNghi<&tzN($Z}1)ENAK1USuq+d}#)wC9iO)M{rp+#Zm!f!-U%H?csRgp9sl| z6i(H)S!KVZkIXS67~=^#n4rC1A9?lr{RjANg`chPNCF|LT?#HJJxDOi;fKn-aM6qC?WDXWclaMoRW>C75p zWTYN?pi-qKC+MjhgP-C$|06-brJCAUW0a_Y?5%PT-H9m(VGpa1=s z**{xangLnAaM9V61AxCNVJ%w&?9URg0t6s15-2b;3_~$1u?5?V&BQjzUU1AfOl+5& z1=ozr#16^*BTJA|a7axQu>d**SB}|W>b3><*I=XJW~RB^6mNb>sW@ZU?_r468N-Pc zUMXR6;^yZ>ZeD~76i-4tCl@g!n7Q(jS~Khu!!?0=7PIj8a{uXN{z*IoqWE|h- z!4n201oj+mSh0!$PL~pxc4BnXW+k?ChOfF@o|O9J66^=MY=z0YPV&J)q0koLH=WI2 zvQ=z(&zt-TYk6P*kvPW!;h$P5fu&h4*_9T{dc}SuXGg_xZrmxtKgDasw&}1UTXHHs z%QhJsm&ho7i_TxP(Bc24dxP|rt_(QTB!1fJr$_fAmM$GVuj4Z;G5?n(l1RxEQC`Cc+nm$WTKm zf?!U>3Pezd;8HeA1ZPWU z98?Uqh`D)kAQ*Pc&qKqDp~6|=8SPdS6G)yFC3vWf=zt@74-Eh9si_IBulGG}XmaG{ z)X1>mgb2w98*L`1zqgmWb#s`T9QowlNMERB;KRC5Rz@&I93s=Y5l`Yq=-k-fMqUoK`8vwuX{T*Z^!DRs<($w-;I7V`t3)x zaQ6>)zrXt|q=oyJKi-KBKJTbT$5n4<%@@^u3C)+N`mWVt*Y#Lhi>05()L42u_Mz(U z+6i{9wX0XB)ySt+KBx1KHU4omSXTYzy}bf7|@3vXhRRGK~D8^dx5uC z$MtZZ7Vi6fKp(uX4c@N?rd99so-erCuEs{yx9(IkpXr&RmMKLu=S(CN*&%ac5)6-n{t@ z{0bF4^x&Z%LGZE*3&90X;-R-nZ#{_f*vW3UaSuE5|GnlvGrQjlg+4%@ua!Hszi9w| z(Ly|haB}fM0^lQn07@FrrLrUen1X37rKihj38Vm$pp4RutT09+%zU}=ndH)k>24Ao zTajbp4YLVdj_CRY8;!6pq01B9K*Wm~>`&+lL^mYZXoLd^-5}A8M7)^6p@eRj=*9#a zjc_EP8zs7lh!-e4SPvIl{#DvMtjI;qM_QsV>E7q>endZ2y;x{oL zE!m2L3EC-!IVL&Hn4w8)w$ci=ttH`Cf^esdXL_d;MMfyUo&Tnc_40_`yPM%5V$VU? zdzapx8wm2Sp&Ex~v1Mu4qJLxntPCB-`3jZp2f~`|!s31_91bs{!f%vgVUHDYVH~{` z<_eT`$Eo3vVuy7#mmdVjCgZX=A^fq(JlPldA8ce9_!GDw8v~d7%5#h?teCiNS4~~n zFsm&c88%k7Ra@2ClrYr${9qIV9kDtr+589{a8cE?kiy$h=m{2^?aS;6X|tuFRcnT< zM*lpPA~8Ic>iGPecqZToB0RKm*a5& literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/delete/__pycache__/views.cpython-312.pyc b/osinaweb/osinacore/delete/__pycache__/views.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..eb3432277c29bb10f57c419e498b846ea8451c42 GIT binary patch literal 5239 zcmd^D&2JM&6yLSi_Qq>_O~@C8k`z*?DTxC`h0+Sq0^*~U6B0_L^uuzpL*lUZhS@cN z$k0@(RFIHJPoSy?4je#GDTn?69FZzj+uBmARZx-2rBV+;^wd+|o1L{cshvt~4~34j z<9To1yxE=K`x<`}k4FV)UuQR++L922pONrdfDfKLguyjI6Esm53gW0(2#f{_!O@_I zynrr!6=0*F9x8-K!)z?+k%BxbvvEjoDMUx3Tv|bC64Sz;3U~Mhqj8`kJ~{!k?4wnn zTYPj9=%|lg1GM6!TY--G=(Rw{eRLbp2_M~lUQH!`!M8~ToiHUujZjCXM9Wh$ZaHfv zh?O+{=&lKt2tTY@HL0?ASG>ci3xTpQC3!OSUoCL@B|)I;%Yms#o$HOf zQx*lQ#p7wgJAAJZL6gdXym%pKDc)>Z&_dixh*<@yyi$lgCi%LmhqBl z83p)ENA`xZFKa|67Rg$qFs8RG8wYJL&p#A<)`dt&=FKw84 zYuqTL4;tg80x4Q%I+L?<`gxov=K8d$Tyerk7s(8xImyN|WXu&BHz?uXl0KU!GiLwv zd8eI!ZS7Uq$I(vM9}n3agl&d;O97TPw=2Ee$^bmBLeMJ``<> z#-VefV_-vZ^h1MFmx?$r+5m`Sk|LRJ9ITep&cmX zp;?o4(cB1gh^PfY7Rj8)VZZTZE&LX&oZ;-??YPzl}437J;z)T!B*n#BM% z-2lSa2(IJazZ#4((|{Ph0O!^S!&bhxE9e5)3$pl_8R)k@Y%p`RwH?Vp>7589kE@C9n~__`s)^lmhnEAXUQJw1ROK#2 zGG0-)*zy)cvUPs5GaO>$__9n|gU%H3H zJXK4|o`g^R=^x<;Im*^vzdZeCBYQ)Mx zR@OWVNr@Ed48f6#hDBz1PW*Gi_lyLk{FWlSNngqU-!&7|Mz>@CaOyR+`(n$)4uLn_Vete z=wj>Un}-*o)z;T9MShfHSCz}kmG~pI)9%`~F!RIiqu=d5T2+tP@-eh6bzbspOXfNI zo%<6N<)kg0T*bEj^Ch3p5@d)HR?a+aIuicOZfzDHaMlkwuk)l6z+WvgL~tPjJpceT zitcN?9Z}8&^%W2uK~Q;cZw9J|ABKczMcr)6n^(Z*m0Aby0c;st%DAxc`WLnk1PLBi zsecQDCLtl-0E{Ux)53x5<(MV zJpfz?`y4-9um4japVK>0bJCcZHu6v^L(MPc=!ALObzHgwHgG~iIOoF>!!pJAMe%)8 z5!Z8NrUDUV^9ZXGVmwFTSZ7U(I*Iyr*%H-FyuUD?_Pp9l>#jZ*`F$WX29J3hy5;V? z2q~W2lB=;DO;Y^B){bl2Ki@w0_M`R<*FRWTzYwps@0-gkD&02{6(wy;>HjbIv+-KQ zM~vvJaJ+O6bR1Q>7a27`>FY?o0iBa%n7XUY#z1!ZJ=l-to1owfJSIBx-$t`@*wT(?CE6ftAx2PZykwc|jomvQ`~M)xZt8eJ?}x}h zbko_$m*5`)G(Xm#D_N8M8Uc}|ttc8f#WTAtFneSr%kT0V@Y*Gv?4$3%6qbYLB6LeZ zQ51g?_J1erUlcYz5MFyAbUzTbFAAF=aRoXa2cqJL_#_C!B{p1ot|7OJbBF4(Lt;&K yxXvB+xC!w+kBh^lUan!#<3`0nacKkR4%A*@pvK!-FZ)b=A literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/edit/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/edit/__pycache__/urls.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..ea2bb3cfc2b7d515726c5492bdb7da4efb399953 GIT binary patch literal 2570 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 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a1fb9503a607223b997fd52f936cfb93fcb166ce GIT binary patch literal 3804 zcmcgvPf#1z8Q)#~7s5yw1LBYPZzBW}FvTS)aV#WZ)PUp&i3Cl<&Pw|vFOhcf+Z6;K zT6ZRg9&-ylm9~ebV;wm3Ku>i}@k}qfQ_ZaA_0Y`p#Eq$)iw~W?-IWZC#e{a+>ahC0 z_kQ31?|b|9&+Y9_0{{L%j~0I0Mi773nC8#YAYP_0@g>0$ELkGTWR@f~nkrFcQ`S^A zXU#fqDp|5tig-Y<=FbV%0!%wMnu^Zv(N7^~nJYp@ z;sjnq*0R8Yl9U~m0~WV@?97ozUf z(ZemYdaHfsT8qwVe^Uxen0H#$aNvJb!$IB0(H1_ERo?|4P1o>o=->2l_^NEOm-}qw znz-xtXJ5v{! z2Dvl+_8RN2PBl+9Jllc)tL^Dawr6zP!MA<JGRILV^^H`vYZRed|G-Z1aLjGCg zSZ^NiX=Gonh#U_@5m6kwf~a`ZZ$>VrA_;UJ0!9KXYTJcenSlrNr{DlNL;yLa#61DX zwFh8M5CP3IWq{1u^K>4EjbA6uGV>W-0(?<=ge;)UaHZ3KYC9D4;6G%o@Z94HK<)y^ zGkhNFqxniX2Ou)-F%p)yv7o?IN)qbH3*|C^Is}3uCrZYf3AuJ32|PA!h}rf*PUIwj zMa_JrR6^~!Mp(3TunYW7{91E`H#U-ycsLzTCN|)p?hbOU#=>jq)kruMgW3RKoOLbp zaVE6|hYYrTJ)Fp_gd^!pDxP=%hxOIh&O|aX^DvcMiKpR+0d&NonTW0(Y6lY5)E-Nu zW2tmFo><2e9Bbg#k`Lk=>3C!VYQv#fOvNy04Ne%WGn`2$*OTe^W(?lOOQ$c4bzAxw~6&xasTr~Z-!j!Z|#+;4gISIEW)UFn&OWbF6cbOapvOo`m&mTbTE`>U9y;kYW zMl40IC!?`7sbh8l*F(jfz3LmIa{% z7~bIQnbcYX6E8DGV9<^z&Rt`91?P$@@*m(CwX!=5kDG&HbI7iz3g6|BEfU^{grhOk zp5#GVz>kKcfU9U+_kK^j#QqVlxljftO$_0DN_YT6Q6XO`16~qC2}WW{2igYD%ot`u zJlNOy2CLJ!9}JLI!qEAJGBi6oJ4ZJ%8{9pBHf&FS*fAka;Dmloe0!tw>4P&X;h6k| zQ?=hw?03GhtCRPY$@_n?htEt@m-Xq|nUin~Y1=-~?EYch zGc1qJAKg|*=atd)*iXg@+8spis=>AV>{!c01siyyDx7xaHyt3SI zIL~~SvN7$n0 z7C%%Mx0J;#dAp!)?nv&g!l}B)75Dge1ZH#{{{oy;j=cZ? literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..65c00073c6ffc0b6951a9d8867e1cb49fc7113e5 GIT binary patch literal 3960 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 Bbu<6~ literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0005_staffprofile_image.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0005_staffprofile_image.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..16ab9eb8fa5433d70fb8c063d607917b52762e36 GIT binary patch literal 779 zcmY*XJ#W)M7=F)oT-!=fu_{q$CsL3+P-lRxDndda5M+YI%gOOwB1g8*_(N4TkTNiK z>t6u1BLn||DH2kmTbbA*r3k4LcjrVYH=Lj6-j93U$M<7<+X1n@;roLL0{A7#dbL(y zc_P3$5FjXl6a^^N0u6x%FM((iAUZ`Ob6vFgUg!-D^s(W!eoNwM+)3kM5mqtFN^Yi% z(4>quH2~I%Ec*hS1BCz)2sDC*D9|;a#z+aiSpq@^kuh_0>;H4fh(TJH=7rWoF1OaQ zL_ce6c{aD-t`!M+HY?*Sj95Xr-R*WCW17biZ%@&%|(g7T@@Ca^HU z?ksd|*ZlZq;edVc*_m1UQ)_>I=fV8;-rVh+J)F6nsoVLo``!KN9$#%4wzJSp*ZlOl zxV!Gy^9*h``i@9nS)z<+?%b1UD)*j1*Vb|4>q&7SsCd&*O0duoLVry_-j&%#=9x3w NIh^hs{sBQ$^*;;E$bbL< literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..958a706a8192266ed1d49ef78dc28d8e7df7d9fa GIT binary patch literal 1685 zcmaJ>&2QsG6t^A6vGcK;RNZD1p>73*t{Qb?SbRo*gpZ(9yoC55hNs#xY+7SsRkjCI4!40T`qg#d7Nx2wPGxd-+S|W-*4u( zTrSPQ`T@OY{G8ypzawV6k|W|&1L7MFbC|a{jfcNr37v$N;3HYW5<5vP*^xAf@w}DN zWPy8^!{P%DCrPqBH8wc;AAqlDX-c10r6&=&rSeqvi0_+r%TooK?wBoC_f5z4sMK*V zvAkx48?W4mI6dN{=m?8U69kSV+VU7Q`9mDp2{)z=KsQ>LZwXq8>E>g}*&Pcw0cT2k z`m8jju?SxhONXfgF_stthWr6Na~^##5&=eGn5+MbNt0arh4YB^wevEZ!C9Qc*~3d` z;<(Iw%w2#MNufP|UVc%p+OJ%ITR1PfxWb3|ajy-bl{_pQ2(f01*RJ%l>J(Kr$9;yT zD~@N{ded*yam(=u6->OnL526%RFP)&p6{ThOLU)L zn(4X#bo=Nt(x-|?TvNBqdxU215_i|}2(tAKSnk!-bs$06RTm9(3)|XvXh^D)H=+uSTR}FA#&Wmsrob876d=5RV0*v~B~DrRIz5oDhw}Ar<-tNdT&N$* zjT5;xOeUtKFK-UBoN_Hf%!cypNul^x;Yv`fJiI$7R>ETCNc?p^&`@BzkBeTA_W=-; z)JHRek{XuO;Xam9SL#Ui?w|Mfph?)Nh6LTZ8(YuzqJy*TcFV81}%p9~$=`m%bQs zT%jQhGt%^>r%6Rg4-=Uw>8lUi*T%`KXo-WYpvUyUf{^mU+~$#2C2{kHoiu+anSy$sth!Snp7#POv+xVb;M Zh2Ockr_vNJJxmYs^I?AeUk(^%=0A@Lv627) literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..21bbef04bdc1d90b79077dc0a8fbc1f4ddc2edb5 GIT binary patch literal 1058 zcmZWnL2J}N6n>Lrvq{=Yn-)acif&yYpiNJDDTUIaC|X4HlFN|IOw+8%WKFWxy(#pd zCwuGNlhPhU{1Jku1))o>o_bqsMd-`!T>(L;Kt@V3E+ny z)u@fY@d^ifK!BhSBIKY*awG&2+yx@-0Ffzbt5wn2e_t-KBli@mb|i=;k%C>;VM_5pX1eeB{UyP^DcMK3@Xd1`%^=`@+9@!H7bXgW5hn zoEQgcWvf_gvdo^3e64!1mU%u~Vjqb19ufV(_Twz{*NYRH z>q|>Zw=jz{n%6r?+@@ZZ8zX=N@`S5vtvmBM8n4MVP&;hCeaBbm1q z2OdrNuI@`5Qs!q{8`fB^;lcpMxq&e^)D0=e;}}2hx}h*77@-}$31wbD(?r~RuB{Ss zN0?0%LC5d0jQTVwQn|4jW);@gw%jTmcj)MCe1v0O2B&ZBrzuTRo3}CZ;>cc)y>3KV zmf9O`=7v2n!Q7jq?J_^M8Qm`Uh!%L8wn~w>1pDmu+59?g$J_p-T2@^;i z7`yc^fautPk)0_LQleX#x?|I&j^K;M1-&a>1kn04uc25w%PerO# zTY&kN1V=!Dq6lK-qgeAb1RCrB)eeB_4E4=wXt{sUOYG|-!>yev;%dT)!(K}AFyWan zf4Vcj{1phq(QU+Buvw!K|ykgX#HEJB2m7L>x zh2)9W$Z~CAzo;}xfp(IGoCHbA#NBqgeIF0fq|bubc zjF`kL7{3{kNcAd4*?@7%co4EIRi+E)krKGAPDu@wu%GOak_#spu*Cy>hPf=l`8)4b z#?s7_H_wA4_MRreFlIc@ybj4pG*Sgl?$JKsy~N{ezu*g6;C3bL>$Dxy8SpzJ@@9hd{LhpgKbXvl?2hpY#&@`q*%5CyKb5aN@9^k~~a! zCd@dYEXsn_41m2P3o5}8Fz^utU!$mxd|d-(3<|-2kARdxRm~in`!}x`HE4|*$7Utx zxLzT-qcyf%Ti8!4O;VtpWFaR(k}}cibUL>&iE@_WVVVqBkpEdjD(cIeaH?WRpPe-2 znXWEsy@>D^^19>|ju`Lfd&1zOD3T?oxHje_W-_N@Z8u~Q?Mf*YF7g-)2V>bcikQS} z7{45mNcAd4*^qI{co4EIRW1u>M~Qr(c1aDDu?9P8J+Zv8j z^-_wUK(-^p0nAOXZ_RbBX})*dkrKbiz(993Gy(@A-RvKkQ#?YXRu>lRo`)NC18t(l2)b<}Wok z2M(O%P>_TWu;49l>kPP!WbE_-%l*RcaAM7z(EVdbNK{Z{BgyJalvTRa0`wQm5486j z5E8;6u{ar##I^vPaa-j7A)wQ9`-gL3bzZIXW^U*y|9zh$w3IKZtYoQ>sJ7!cenDAY zqofll#+cUs_KYj16g4V`vl?|=Pza7WEm@&`#ty?3HK477QWa3D1=AcgzDMctl;uWb z7{>{g9LqGrN}3_4)el&R&-f<8oU1@ga4~`JFgK;&$>?K+vWj%6bt;PJwMeH0mUR^k zSE&Kea zZMeI9!zfzWrbc&zgKl82vMM}z8-HjPaPx%GfNx$#zs_bs?u-@RPly#-C$=)bpV Bu0H?( literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0011_note_date_alter_note_color_alter_note_text_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0011_note_date_alter_note_color_alter_note_text_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..7d2b59f8bae5998a0d41af72cd835a2e5bd4e2d3 GIT binary patch literal 1808 zcma)6&u<$=6rNr0u6H*!O_ro3G^x@gq}~H-_rL)OP_4uPK^r8RAaxHJZ9HRRXMdR8 zHK~CEm3rXV3*ui0at<6gaD)>FE?%{gt*HJiu76cyQ&9dE8p@GD%jP43gtr7mSB8)M9M$)4+I<}}gnjF>`c zqXkjJcd9{%$y}*)vjjuz1z%z42Qh}oi7}CwNF*k2(*yFJ>-hWB+IC$tLutpT27Sk4 zo@|zD4eTN!R|7W)zs{~~ZkFiSdNxndm~zNiMY0IjoVFX2sfOp&G2};d&$$m>?APNj zNH%i3mWv}I#rS?~3jCbZj&Nv7sS+|qQ~W-p05F9p#({a6s4xWsA<-eE;My*xat^{T z+m6csLKw2zklE!?h8WfUR zMre~I88V8I{01vc!^5eK=w&y?;ZRPCz_U}*B_jGdD-7S)wrO%h*G<}kM&17ecZhvUce0Tde2ebv| zaWzq|4z4T?X08m3wMT1xV=Xb(4!3`mo*3_+W+hEO)`517c`hdEV(R(Ez*y)TD~Ykv zH>||4e%}7=-JZSM+xL10-}DUYvGMIoPSQJ;*&WM?v3xlD#IRoOx5E6`9fzwl{^x(( z`~6b_D{P4W^5qnO*DE5AdVS7N9()`YNA)pvGBf6i z#i6LkrqVnao)@|H5eT-`^S$Cp1U5gcg(1OG{KbQ{Uqcg{NTYR9O&|M|yvHHJM(04yclb`5#shyygG^ literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..22cbc595a7144650ad35b59bd5ae7c179574f4b2 GIT binary patch literal 1295 zcmZux&u`O66dsQqCw9{`tzf&0B0#8sT(t?H)oPJgq^?U4zbZuG5}_Tro@sE_9*405 z1nsU^iNhYbtd@TPwFeFyIKl}eE{Rkr)o?-D6SqhOt;C5LPXd*;6Y2SVpP%3J_ug~f zOitQBoM-6B`ZfgMUkS!1H*$9B!ubbafVB`rT0@Iq18Ne(P;VFzoCjEc2(Ur4R+ep? zKwURO5EruO@*dIFroAC5%Om0@vbY(AcUz&_ZhfYJqvF&lY=_ELAsDRb+}xP79RR-6RX^J7N%k0(x? zJc($W5`;Zryf7t9VLuLIwwp-Fy%c#AqewnEbCty{;-}Zh?M}c*L}1bl; z-aQl&+Dvcpd|TDKKmFzHt0T(Mxj{Q&D1=cYHiM*u!!#C3jV!IX9*__xE6x-zpsW%? z+(tqN?u116MTBm5yif*9gh`uFOsF4_gvo8>6Kori1vaQ*qS5CL55A-SvkL!cVLcg-`T;Hmk>6L%V*hR@M_A84|zkl(=tJ5z} z58TzhyE<@h_T8HU7x!J<3x3#=0x{BAb z5vi$s_l2yg|A^|i>+JCOS$0%^4v!tK$hS$3AkNU literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0013_projectfile.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0013_projectfile.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d1e1974cbf0adfbe17e079ce330923dcae3e2348 GIT binary patch literal 1410 zcmZuxO>YxN7@i%kH{P`q)@i^pvO-mb!v5{DkSmA`=O0|ySAs`k`My{y$pj;5DNJ#n)XDkM(K><0-XV`=tzpLzVw%=^5% zf6dM+fQ{$oC+(v-0RH1aHu5RhZ8Go+KmZ92a0Nqfp#cRRLnmj55PS(x?h!yD7P@h^ zEJ5-dvb=m4`2p1OFFDj8Rb0D6tkCwofJ&~9uoG;w_*yn*Q?P3Ye0K~C0RaOdp(7YM z2(WnAUI-$-CUxhsG<#1ZvR@uaqnV+Yux*G6v0B|zWeCY5Wyp5sgXxN~Za#_k&!{w- z-KU$2bqo6y2_B{t%XK8y96P9C6)bg+ALP5GL%7-@+~PqFsiSh{KpS@Qqxm6BRIHBb z;3I8;%2zWhm@l#)*q+t$38s}ZXU?88d&KYJR!H#ezD=-;y^t2aOSq=(UzYVQRzLL37Qt4C5iRzJ?OJ4Devb!K4luDT$G(qg=?*4aet=ESaxoS8Y~N(1)&$lS z);-g~UMIXo#WqjRS-IbHd<&VOPesI1)0y;8_sj22TTdx1$1?UEhh4-oSyy2uhoP@Q z!cC@9+r|zGHncJ=nDGHjlPadkI0#8<`gM_TOOY#)#a@*dxjq9wEL4#d9Z24|u-EZ}|DM4ey3N2^A7d&ev$=mSo z-8fFe7~jQPiHMur*n15d%mF00|`GxrBQe>EsN46_Lq=q}?N>tUJ9Gg_NaaDV^ zxm{h2)Qcamm$$2*N9u+5*}to&BK7o6`FK=YdD5KJR>rlJXP^G|*&nOFuTJ#MvA#Lc zZ;bUD6CI6p6xly)*M5xD2h*aoF!w4i%gQuYoR=PcO-^MO(j+P;WvQdB*xJO+>N~QY ze3t5&FXUwQU$V?moa!_~Zwg-|{d0*lSjfK`!3j1^bAlkemVluB13rEwl?CasGEtYt L>eBy!1#yD6)pl-+ literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0014_alter_projectfile_file.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0014_alter_projectfile_file.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..99100fbbf3588e957179087c6aee5ed1bb5a00b3 GIT binary patch literal 790 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 L|JZZDln~=TjShQV literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0022_customerprofile_customer_id.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0022_customerprofile_customer_id.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..59a4e3936e630293711bc9ba964ba4150787a359 GIT binary patch literal 847 zcmZWoJ#W)M7=F)oT-&rzqDTl*7@`Vc3F=ZYqDp+IAOx9U@p8K4E~$fk4*pQdfCN$p z#%}!!AUZNIFt9U4LP~TiQ@2PdLh8hw6DtL7c>O%@$K9jneBW1A9FXfXZgjpPfS-z# zt1<`EZ3zy60!1N2$VZXpYX~%W1XSAxsx#Cx%b~^hlRm?~J}}(Mu_CS}oG9ofBnx7m z3Nwl+3)A*u2Ed+^DV5+582E^SuTj)RzODf?dWGP#BOql^RWp0%|IRB$4O*ebky*+) zS}Kv;(HdB;E$nBdCMnR4(}0t9oG@{7b93u9CSk@B+|JW1j#$!9;!Y4U+{$GeOH)iZ z#gXd1@K1|4S0->kpC8wx7FQRQR!I0uX#;tUL&m$=t}u8WhO*=oc3@5-CUYuQIspr5 zQ%baOk;hm#SRO}nDFKURj9=v>RK1E()@PhD-VRurDEEbRkJ25rM`9>yKiDNn!G#m| z+58?p!c-RF^o{o-Wl8Eu1G07;c@N`u9xZtQWkSMWJ4@E&W; znv{Ls;-)=mO?0hhzI{4zz+QXrjI8?5s*f+- z7+<_Lt~L&?kE)Gfweg|$rSa{~kLu%-CBt?mx>+^fJxQ*Vn>JlT*fXsgv{krMcrrWo xvT7@O>k^$>cV`xFCs!qv?*h^_874YH=(h>TJu#P&dEksz*N3a?zd({=`VV&=E{{o1P9bn=Iun-9;)iE-$MQQ=56L)r8Dz!JfexCQKy@_*+y_|Q0azojm1fHmWZ#c!_H_$A#V-7k z#8$W!`c3L3ejG8bhcPAr+pK4SnKeh`=s*~c zB!nwTEZkPAD~i03h!AND4W9&f(;njnO8p3N3n3BL5e*<-Lg;133uLThn6ycRNmTa< zqw*TLv4Zis%t19tt#vVu=;U0J)wt+-7_7ybbp zNhwdL^NbP795Gi?k3(lIu6IHbCCu6M5-;eesdgHMd`LzoG8;@~h*bW?Dm4FY9j~(Am6{ zt#dQ$x{9|`9W(W&PMy{41ypm{=wyDD&PbG|niJ^6xRYJhU3yJW@niwJD$G!Y5dPHx Zw10s4W4#3RU28DD*dJf~4FpLO`~x|K1U>)& literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a96e5da4b297fd7c88f4b3cfaf7dc85675935fa9 GIT binary patch literal 793 zcmY*Xzi-n(82!$69NTJ9iGmPKyF?X|2kHtsqDmDA5Q0pwcsX5i*VL(f4z{C`4Wtf? zo#?*+q9X$%J5wa2Mz=C`is%ZKBVwN~G$Ch8aRKz!gmqh)H6j91^VJ9hN zao$_j0JsY>rxKh2gAh>&4T}0GG!0f^c%8E>59HN~UYZ1t z)7~gyyvTzNDM&n40Z#7G0pa~L;OtoQ1=aYNb;~3rOtAcifs|;slxU&H_Hdl3*Px98 z`MxwKFtfo8W~R}!-@TZ5;BI{IE}YiHX-#i$PH(PH8|~A(7mfC$(f-u@*8aZxv+?Yz zZn@sfv>W#O=h=GIv*TOBEqB|dU9E=JpqzR~rRm(3MAy#4QqsL_Q&RcDA>WW@W+H_C Y*ns>idj;92-o@J1WNqs=NTRF%0*YtNHUIzs literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0025_status.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0025_status.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5ad121e79e56ba27f0d354ecbdf0af2339fb9835 GIT binary patch literal 1576 zcma)6&2Jk;6rcU@de?SR+n5^n5K0xPUQ4wrpa>*{YT^V!ogn4ovZ^#%dnV30`(bw1 zP2Cen72?<%{0TsO=z&B3gdz@jMI=YV0VGb9I2a{WrJg#o>#ZYdA!enS-+S|$_h#P5 z{<5%;0(ATYuk3v-0Pq(R;*pqw(=7_V1qdL{1Qw@p9K*cHTY@H7q9%s2U?wz)2cG~W z-Uldwh3;Z(Xto|vA8csJfuKrH7*shTd)W64yW^=mNm)k6)qTUUJtA2S!lt*`X1sXB zR!@KA*sU#jWQWu8gPfWt%0`@8nrFrF3|ntIE+)C_*WZ2@`nq=z zO$H*;wy*nrkMIWCStI;2H z+K|>D_A%johu&KZ?MizFHj%ffzD8six`L3TAfyG`H!;N-2*2p-CL=@WvI-#u?@;gc z^cLMmxQA_o?e@TB4M8r{cXvL8yW6Wq?UO*yz-0 zIM&!Th_XXpIfX0xx*NgN8V#<|v2W1;NvNya9f$C!Mda{3w82PnrM|sVZ>*A()5FuI z`vII%2jKaBZI=eatI;(1ZO5uLoOa*Bw(r$8bze6JY{S;CMRsd8J`Cll7~(_RibyQU zwOL!&Xu5AeFHCT?H*k~GT{yAs_5P;QeK3)LQvN12mahi#)$iqT`DReQ`I}rnkt>sg zP>{ZCPBK7wlQEV8dFdoq`ZM?Xs91S$XI!iV#mXb`@$yK6BilVLdZVm=k}Hl%>US5% zB{e9i55?osjZyZ!e`&XlOYe`eAN+^5!YovRQsrUcQRDI2uj@arkDIrH=IwD42TeR~ zT0zqqx%ZyYhj6#}f1>3KfJ;q&0zhtqpQNS2;#opbQWGJam%jSUt;Ww+Ws;8KS8Y4? zUQ`*%RD)V!5k=WAy;N4CKV&sdsmp3Ris&_lLgO`xp35IbwfT|z4i(w&&tsiE5jc)} fDgo}TKS23+aQRHibJByt z7JBg5TmJ>6J$UdB(31x*?rF;iUOahQ=!(#jlSxvAb|7zl@6DUvy!V^Q*WqCuu<_BF ztv4V5KVv5watcmX88`q4Ai)8yU7Y?*&wGeT1E0t(GJvb|`gDelTzVFfauKOo)VrV2Ti6>7ug`MBw7UAZ7Oem;g|lsi%nQ$>%oOp^vQ zhda8Fr`qF84yKLf2Tjke`2^Ga;^NI)RuI}@#B@q$DGD&*8pgU=p6y~PaVxWodVT%% z#2G`W76qa2V$vplz3E^>rgGJ>y%%gprL#SHDiRT7SFIOs#_Mjy2!x{4_VgB$adl~Vh`aq_7L`JO&pN;1eXwz@?o;uZ4r;f*_k1vf4 zWKq-mD$uUR@yV__$>Zb4#ku|Kz2aQAIQMS;!}_OZUp7B)_9`3Q%0{oU)vavxD)nxq z{w><+18@&MhXVjEZ^1!MVsv@EsO&x<*Rpa9g=$HoB~<12kO)3;7Az${Unx_XOlEt@ zOpG|yEJLU2o#e9bk_F}p>5GCO{84~ldUgx#n$M)B;F%7Wx!M^HV z5diqXNzvpHI9y?17hr&)4+3bxK(GYJx!{YIB!IgBi`xK81h%tmMS^_X6Z6rMdx9?i z}LNxdjcC<-D>{A9J6Pt5ysBXanWfn7j=1u?J$3|r6=1wf>;*1`hjG1NZ) zZ>k()iS1BnS58OT4h?U#yb*)GdHMOUf%uqc#OtwxC#I?X61 zv^GC~Dx{GvGV{6Nxguq{?0Uq`b?9s@XQ1*Yyd* zW!rw%b$mXTGfX-p#3XEbB#HU?Qf<*sNxZ_d#8M`#uqwS)c%Sqr!fhvPMO45Is$~0O z=T1vYi;tETmrbfg9WuHL@4zAV_&7DznHPz{%1xV5U@S+?Za~5`F;<<_@q0WFI@j~O zMo6|YKB5`kB8_|!ciZ@T+YILWE!*L{{m<%prxzo(bk>y^NHFWR!4Ls;VJHd{=+%Rv z2Gp51+CZ7^E7J#;W)Ci0KB!c8t_>>Hex>@h_I~Zt<1ZVZHwNZ<-&`M$J9n2k}GDJJtV7%5Jul)jyWC{KNNVpSN literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9a265391e0dc445510930c8f6b4c221e128ea4bf GIT binary patch literal 682 zcmYjPzi-qq6n@UHUUF0_rJ@X|2y{z^Hl+&)RZIvZ1UDeDWU@A?zwh~ben0F#>+2q<^_xDKj0wPBP5Nao!QzDi zr@(-b6fzPL0tUPRW}E;sk<6?HPaaGj?N;~E$7b?=rIK!0YQHIjecI>ao0c{<{n5U@l z9ZEmVqg0DDV_0C$Fpm=~g&u<(e!z@>#@7j^OnSV)9#l1d$ z?3>cO5%vitx5 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0029_alter_reference_date.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0029_alter_reference_date.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..cb0af4a945f4784439e74e28b05cfc82377dd41b GIT binary patch literal 791 zcmY*XF>ljA6nEec|l1WCN)K z14Fm|1yDQkBaoOPAtmz4)GbnqkUDYaBnsT{{C#)tz5Cwh`?0?6fm+{av;CO>{L*B( zDhn{%Q{WUha1uj8LXsGvLBN0)z>QPU@KC^q*{@>S(Tj!NCHJV=M z_EMDU<_xR8Q@F2}dXzX!U(EKzA?thBor^Oo-x4lVa7Ej&t9-XKPW*C>5A zV6o2CjAI{DuCD1~Cbgf1_ax3yKG$8Or8nHC2W-v@PxNu&?N^woL%2E&-ef4VKn<2h zA_<;}Xpmr)G{dULW_pVXQscgMBnsMh=v z{jBX?RxQ_?ns&|p_)^|j_G|f8;m-AK^ZnA3(uettb)8n`-c;zyc{De6Pu@~gKZ5MG d3R9C1^2Y|^U)pQLKJmsITceGw-=IiY{TIXb&J+Lu literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0030_tag.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0030_tag.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..abe751cd4c82b4b4bc9d0da9f79d734add28c850 GIT binary patch literal 919 zcmZuv&ubGw6rPz)*6cPdsnmvmR*_z|U=!Ml1u1AtMX^0dz2q`XGcVhX`ya@0M(@|N z1fkzL7?11-oUbZyggD~ZM**(lfK&-a1U*HZ93XB0ZkXewtAEEB;;PZkIN38DI7Hfk z=L(j1Q5Z`zh&cFh?J5VMRE}CW|D>iP1gMHRsuGS}Tr~)SOk>Qrmcky$IBF(x7K99E?Tjpq*LaDSV zRVKH5P&iNNn-=r+F*@SVgpezd9>hY|N=~e$f;M$kgf>g&pLp(LC3Qm|Ev>a(CWg?C znlLKk7j&+u=n~4Wl=Qf)97$?XP+pH}tpLI#E^o1f`E9)svIo4uLN_Xhu%E`GFva_@ zGbCw0%U6w3u2hyQG-2*yvn_O|rIQ9}?;N0kiLB*;L1xVNF9tTU?tZlUxw&3$?sR(g z*YvG!ap7>UUtH)F7rtkH%y+A_8;X-++$|)h)5UJd`8?Y%IlYqe_2o(FVYjd{$Qm^Gro08RnHoVUgSHeZ>d#7UAHwY<<2Q|nR_%ee^uO5p>C^KGX@66 Z_^*kub74+l^U&@W=6i+tKS%{>_CE+G@5cZD literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0031_alter_staffprofile_image.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0031_alter_staffprofile_image.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..28572d323e7d8b7ab7514bae8a171576af60de75 GIT binary patch literal 797 zcmY*XO^ee&7=9;7vq|X6S_D7qVOxb9+*G{E!h-mP_8{vemtoqOmUJgcO;VP6QrLsX z^|XIMaStB+0p2|ogqFE_@>b}IuqS7x4P7Vj=6T+a$um#p$L6L7a(%yt|$Oa93nOB{%^FA)*i(6!lSP8o;c97JP98qztNR_TbY0dBvzDpUSCS$~oOA zk=)T4JH9L2m!&2t&`t9wA>A}%!fCZ0v~WTCqM8?^*BfSOFXBv8qL}pAz5w48l@2G# zfv}Ph=fWKgc}gfQQd#lz>2N|~Cd(>TdJ*HaEx+hsoyS;s7|Xs9XA)O2elsFm^(sc$ zkR_BQ-H7FxGE;baykOa5wM%B{#51KtCxn*{*~;0^uuw-oe;d5cS(XR#NJTe|gGXt1 z6tkqrgElD$AFDz_?$H5B`e~4`L(NxI<3rY2HYr1b^}h?GHTN-5a_~iOu(oDrIL_3K z&_RKGPlh9y+u&}`P2-CF?#0{#_x1;G>eMGreRlQE?DDl)t#N#JT5C*djZe+5``=&v ztUW#3uv~9$+BN(A^Xx{sXWO@gyVSWuJK7v=$nvY#Rh#a;Dbcy}aOv=FR+m)Xa>#GV cFgFoGe{DeinO#Npu{YgnPPUqVKoULu4>}^yTmS$7 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..80eb8460050dd815b5d98e4a2420ba8f6407b699 GIT binary patch literal 1429 zcmZuxJ#5=X6h59PTBK!1a-1rv)5It|lrkcvDUvQlAXl!7{=_v97e%zNC*6srOp)r5 zvaL)lkfCF?X6{zlLxv6=+b#{zMFI@SxGn`cWfN)_1w8c~DMkj;6L9?AyHDS{`|gpy z&&?SK#*fyUt?d*-f5{*j=?OU90Pr26h$=4XD0QWS>sXO7c2ji~qYn{HJw{YzN;^_Z z1mfo*=*m$~_pzCNA)$$d(Q#}}LdW+4p>=%9++edQ*OHN)fYW=5tjS?Ko@yTN4m=4C< zxWwBP8dM5);|!2 z-({0G=Ld8O1<<)&`5dedDsa@W>31sYezVtMUKmt1Nl4tjT=2-vShwP_{V1M<5#DEw zm?XQRGJQ8I&>y$0uIz$xx6d`G7ELn%f?r{JjK&($-yNs$qW1NtV*}|ozBNXf>%+|T zll;{`^H&Ci(v!VWp)@R%eo~*W4C>avy4vXe9^|*Lvkh^=5 zFAkPgpWYoUtqzw~|3>J}13X6POWc%?HumrtLf3p5nM_rbLlc1<-lsy|`uW@!Jr}4@qzXrg2J9lz%m(n17(iS}^E!nf zmMH}P1tlphZ0rTA1L2Not4tPZ00Ib%Kn#5tYrY171|9>V?E#`w*fGmZXY+yNQ|9Xf!>t@C*VTj* zhi#6tFkz`M)zZo@3!8T{?SdpTJbL|Kz>*BBea_qyU+$(0h~wy_m8r^;$T?(LeoroSAQoTl#_my z!ycHJz-~@-?W+0u>BIr{@;hf_)rVGneEsJ5%F4Lb*uOohHHNju$KZ?cqjvvz&aj>T zoVjwXX1;mCm&jXsJ0|YW@NeHq9uG literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0034_alter_point_date_completed_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0034_alter_point_date_completed_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d5132dce78bfa6faf360a1087f1c42e492d73cdc GIT binary patch literal 1275 zcmd5+&ubGw7@gVOYjE|_c z^HT-jha~wZWMHx-z*|57fj$VJ3j@VfAW*=4K$LwzR0`XA9yI%Y5c%YA)xKsIjwG}d zZUtT|!ig8MnCn4Es2?|_DIdiQOzKc>N`VUra1{bu&{Y*cwRT!??mqnzg-Dy;E}dPM zjA*1lv_m~F=WroMf5~Q?Yc}&-vswS1t);m}|AJlQ=Hpy_(F!w+J%*cMMER|ajm=He z2|bn|f)k3GVbJkuLdpDMFO2p))(RQIjG#aU7Sb4AIve!#=&MlPR(YY}W40%nj$a_3 zvR1OoHP-cgVY1TZBZdPi*5q8+@u*L-T&H{SQsM=31!eryUbjtdpfnFc+(M!*()Fpp zMTDMru`hE=MremJLRr(JaU}01x9<1}jqb@^BTX)tcX#oWb1Ur7?4G^{6JZ1=ubpQx zjbca0mI!^E?XcMmC`)3ejuY(nrGeo!(#Ap~htXcjGn(QaZA_h{=+5jVI70rL2+L~b z^`12$*L%IwkK|KJCkf&&V%i5|9hgtxSXGwwmygC4FspB@p-~wamC@zu=;F$#Tsyci zEY}9*+PmdX*FSH6FF!b5&`j&U@Ljo7)?Yo0D*3_cw#Ln=ZtJ9x_A2eq^ypWmTk2aC s=)|}^ZTMDnO;GXE0I~EKs}RE9I)L`Eeg*0W)^KTcu(bLM2$Dws0mdvoq5uE@ literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0035_business_business_id.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0035_business_business_id.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a1720f45ba12d642879c28cfc70e64265c2b25a0 GIT binary patch literal 829 zcmY*Yzi-n(82!$6T-&s$M3E4rAQ4pv57d&P>fDmMY#mniE@0vQ;=U_XOY#?=D z?ACt)L>D9mMs}u1NQt~Mb&HfDq)yy9aRWDee($~?_wL#Lv9jWTTwiHp_X`2|rAWCd zb1>bO;0O?qgb)#*M4GP=(BLtkb^xez(lyJb#q+a1!@fQ++{%d}u9iDd&`DSp#3Iej zC`KNp?L`lOJttF?;0QSQ1i{ykbcnBOz>RJp_}>Q zvWur_exXD(z!xVqDZth9N-JdImApH9OG7R?*Q+PlHi@4lVv9cTR5Svn$ zMT>n(bBD@vupe@XmnnVSXQ8T940(?WWbaS&{P0 zTfAORx_6hJ+i?y8+~^Gw^}!TDfpkZP1DKd#?~sYE)y#L#CJxwZADod@A6oVCby;muLCF|0N|*1k2qZ~d%3IbAYrXQG=`^ZnE0YB{v&8o50axq+?1mcoqLu~$@C vQCpYj%(^%8c00Kysr(BdU6Wy=6GHx&K-^PvnV5&pXmx$Ky8as^DZ2jxeC6CV literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e28156c415e61c3f50a757dda40613cba0388661 GIT binary patch literal 1160 zcmZ`&&ubGw6rTN&ZFZB?BvwPvR*A8&1)D-qP_$56DvB*a^|F^?lbNI&_eb2_w8oP{ z4}u82)jvT=4jw%8;$85PKp|lcB6#X8(2CHLGrL*RgU-U+@4fxrn>XK^{hmrGfUYmF zQ2ojS@QXRoijBbW5(WDJ0mPZW;xx|UHJ$@JcmNQ;3y^@hx)ddi-)$kpn$Qx}*b#G7 zo+y@4b9LWvY>!BmgRtpU#yJ24?a;vS4{G)S1{#Ne#v`uAX#x+hSdSQIvJj8hH>o~( zCOCpfq)!YhN?V@2ki7e*m6f{a}lq`cM@$X3tPe7*$|(#D2Y=4uZG0VWK^MZ zE|R3iYf3AvW{A8VsX?WY9nY}!isNFEUszbY3Cm3yz@9e-1|q3VU$0i5P%aaZ@CJIi zM)-%Tsz{Q0(|2IS#k!9XNiNMa>8&pNB?vI&ypeWSKa zPrAlBBl60Y?uJlVHhmmnr-4WJ>=QVqY2fr-=^0hQE3wuqj#XN9DoqR9zE|4Necf!a z54L^-)pfh(lx(~c_#-#KJGdN@*pN!&n_Qyfx&=dpSamuWsIy*1u~0P_i8kM8x$K7t z3y&=jM93xdZWAv8%zZ z?H=a5ZrUGYa^1Z8;bK3p_VViI&BOfdZu-tJCQMD9#3Wf6P6By`Rh#a`rw6&~gUqEt zwy-zb&lY;w!pF*ic$mF+G9glCCY6=mJaVr^{cX^TC5Ix+qjE5lU<~023XB$Tixi#4 q?}me2a%ZW_{v+=)HA8{pxIYr$)D!7EC+#Wybg`E%{sz!iUDBjt*FNhg*kb(N+c&ebHSeg0Dc?NFLwzR zPc=9O4xHprkc1Gh;3aVD2)K=8;`9lt?}^>v#F{&i`^S)osIbV!lGT|gt90cB=nE|N zwR#K)3E_}foQz3gTY%1_ZSvm~(8qK8hjU_es&;yFH}X{Qwm&1XR3NIXWT}v-277yt z9@DC3qtR5WrU}aO8s$=xVwB}b`#rVZSvy(zy{?Ofh2WUek`<^N6Nk|?<Qnr_LRrP8 z<5U#!bCJ#pEbA&BvYO>{vr)2#e8S4Hh)X@y1JvhI9`@*$@u(91O@5^g> zqc1RwY!!5k4fsKO`>y(yakRE=jjsItZhFt;O-=QagzAnCjZFx-^nl#E@Yaa;Ej-)Y MJ>A^B1WnrPzrqN>K>z>% literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bde760d5c8e28eb60e9abf4b7884507a4964ea17 GIT binary patch literal 1029 zcmZuwO=}ZD7@pZpCc8^gYA7wC^`oW=doWw@pg|ErYovbUP!(h^!zMEc8}=jaCe{do zLJuB$>t9gpu?Ic*1H2dz62_w^Z-G{Xo}Agu_Jd|&-+i8U-hJkMpV|GM%V~gL`}k^8 zmH_xINOGko;GoLEE+BwF2e{CLu4GD3aLJL)lms3CB5wndqOcvQB?9sDvm8IobYIfb ze+1Dbrnz=2u)4PIg$%hqp-xz9#D#HGC*)wCgIz#@2?;PI0$b4Jt+S9G1;N+5CZD|IGIfGbvRY%P5cDKMXD=Tj_|Y z@c<=Kk1UOiEF33G@t;vj91IqccY`H?BB@Ip9VvI?bGsKTa|-z#UglveLkRyN0QFzs V$|1@^w4)7YR|c~ye*q_vz<+Hd4ZHvV literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0039_alter_staffprofile_staff_position.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0039_alter_staffprofile_staff_position.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..58543162eefd84eed697db9bcdaf2e8e16bef193 GIT binary patch literal 1054 zcmaJ=zi-n(6uvtJxFd$}_7??7pIz}e8NG(F@#GNlLm0I;A-@Wg>ci+AD-TBAZm=4(Z?96!+ z2!LN46r(gU4(rU=1sGr$fDqa+L^gsPqd>A{1Ren_Z38S5*v{Ds0WR!k$ zU?8f8ek*Y^KaNtWgfS*Ty4nvC!|Le+;*c@Oc8ESHLrwsS6*IvzPz+zQ9bUE z(L4AE4!MrU@67d-B&o?eYQ~|t5;waciL%sObu%~U@j&F>7QALewsJgzxxGaiB8h8l z{(osEQ~jRf@@g;AzSij_3acca%FIYzHf@8U0<`->2~8?*o(^@O&AitK>U3Y7KA5_B zaOuWDb$;j8pgP~L&VN|=wD$GI_l<8G18co+tq-itzO^~9yuRfP0SKUljsUn^M@MB@ z(}$8$Ro*^MW{NWng=(Uo8gAqo3tg|BIBVjUsTG1ISBt&LG`Di9>&!YoG9ogBnx7m z3Nwl+3)AjJ4}iTQODe%JFz^utU!$mxd|d-(406GjTR_U7DrXL^{JXChHE4wzCuS+< zWUWMUqBXHxTi7p4O;Vs8rvWG3IALPD)w**RlQ3fmPBYT$4U@PRgsdQVC@a-PMD=n~ zSUJN1eRW!w=exS7bV9-pbVscN#N-tm`ZA)1e&i64E z4#u)>Bu~boit(Ef3019PlnoiDjCTW;CdzSPJ)rc7nvoca+K={0l5^q2L$>n%6D(yC z&d1*ClqIRBuF{Po?{VB6MT}>u*CrVWCn~|oZ8{*lAA6jQbH1WE9PdZfWY=Vy`| z=I3~e|C6^A^H%30C0MAWxz5>_S33Dqe3estufOag%cL+Y4rUd#aa$R#3~<7Od@lE2 zF;=-&PfG&z(Sp$NtyaJ&uWW5y+A_n)vh6MlY{#XEVLF88b}h&4U!mQAMI1ZiV2|U^ zb`6>5tzHzEEk><~0jy0gDwRy6&BMp}jh<+E7>#f^pgJxh@>g zH=*lj1S%MHh0H_+jsiHp94k_7hq@%(Hwrv!#>=M3b<>1~?Lit$o;S^}dzLH6!XmUw zeM0?~LqjI|p67Pr6x2nBGtqZE|FP5FhUDyt&|Eu!Gtc18O^YQ^--ER1JKI-xws$|_deEh_i}WKpf(_7ful5zBIIKY$qE_J5c7s;Wqka_D z_N~Zr`(nYjE+lblKD`s$Gc(3_Xfq*+2B@7})f%+IMRP9W)o!1uuxC6i00@7B={}mO zNV_!6;8pe8FQ+=v&V8>>vTNh)+SB6NAH`QkrHu!-C#8*XY2&f{WPQ{yM?O0&g`-0B zv{)LIjfZC@Wn)}69?6I0cSnWy{^h-LSbl$0_~5_1XGfLIhi^_Qo8!vnqxHuJPp-MDXkL&&vp>L$i7+%+~kBEntb?I2qG<}-Mt*GC9 z&Mu^wZxu<#@92$VwJ50%^hsfTTv-1Lfe{Dz2eBG~-2eap literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0178ae86d2eb0487f4668d915a9bcc0af87df7e6 GIT binary patch literal 1173 zcma)5&ubGw6rR~lw!7OFqlhh9E0u~yuv^8GiYKWcnuFkFFXMFQC2ZK;S!Xte+!P9W z^yc3n_2_@$sRwD9t0!-Pw3nWo{Sgcyk<8)ozHh$wW8TdCTwQgMUO&jq_S+glzjH8N z^~xDN(#}`J5W^9Qv5zq_&~wC$1H??gT^%>Q4$YGBjX|wh|C56zR&E@21kFO8$Y3&J zxdNj-oEHM*V}^W#;STmq13|4@G&vc9ba`feuN@jC`yW+(A(gd|YH0zLy-;5^Tcj_W zEz+0GCi?2wzBO=~u5wMQ zP<4p)whnV+&LAQQjX~84>$XE7vyyQlI(F@pO4;XvsTG;gcDu^dYAz|86ly}0ONh?b zi$MD;guLs~D9@QA1}P*Ak{|>r^2ei=Uqj5_!(IpxQ!Y=TdO6?FD8KUaPu?2|LVEgO zS-@lO84r3fB$@PDG^5cV-$>{^)}={@dkORlT*1Qc!+t5s$Kw5ao1Pxf10ss@WNI{| zm<*u_(?=1olMY1wO$uXaNB+|001YkV+#Q<6W$VMsp^KawpWS17^T^&jS-W#`as9Mz zI_}V(=C9A;H|FryX7RV?B;oJAkyl>{s`{u{=v;)-mif=a- z5CFe)G8wrsI9pZV5Kus2076)WA*vz>5O@M8+6UBNuw_k(F8^I)gsVnsy17%GxJWvo z-{d6m<48y=j42C5{jvstOpcm3`>4VpV4w;qs3HoRuxcQ{%+`eQPZdQ}uUV~`e*z|?98EP4&1dZ5f7tes(}fdW6CF);l`VRx^X;_YPD^`paszc8I~IOK>M>`s zvb=n61#=e0yA0PmB8fxB+dOXg0mCdLet=0taj3b4#~oG2gxF5oOd_9dZ%FiX-8E%_ zbdng?IU@<9a;nY!knj}0VyUzR<30)ex2k@Z@meexj!4L)spIL266r!^FnNOm7B!O{ z7jb<>X*GNnP_gAYGLN$ojHQE>6xvbRuqXqG3*9T>{Uv|H|I4O{KJU^(PK^}Nr@HvPZWmq7QrJFQFo&aH725If48 zLF0h;yfKXp=j44u!F%$RUb&l>?&kHQt?RX?H@4}~#ayUjVfO17e1Wfhkj}V`O5B)FPx#+}U*tYESard++=F-F@%u?-LUS5aW|O*MbOu zpOWOGZ~_kN0_*|;2=qY!9T*@7LCKM?I4S}U0a3OAQ7P=E)$#(_x~F8TQy3t#@JkXC zaUbCu zRh&@kmd{7Jr3Rf-Cw<&to!??q|W*AXEH$T6y z;6^kEUs1Qw7dnmOGms2=lxw-pRms<0PoKVD%R@3?s=UzfJ@$gDtnd3`8|Df>X+k+l zLQ@f5OMhMF1yrQSxzOrRpRAe_Tys<1b-CfXBCqdLflIFYvhVpaS299-lo86B9U4dS zI=Qw)NL|*5WbfRli>5kl_LvShCS8xULyky;Yw0<}CG+C)(zE5I6`LDjkDgro2XH8j zI}WY&m`1TB+Dn>YV6BABen43gTdQ8;`2!hX-o31@#pqVbPiTs_Xd_FK=2~Z;mL+Vy z|G%xZ-XOwa*K{fh5PM?U24f8L#j%2>@S7)N1L)V^86$0WsLdYC+&Q>Bb5O4A+#QuG z!*b<)_2b%?=ifHIZj9{pp}jt`H;4A-$Zieo)))XEuAn0TuGr|PsOrX8!DamRQFJrk z)5KiQ&R!#p)XmJpYo}r@`yXn#dC}GU-ROoyX{lQR9czo(l|6{&1cl;>r9M_5gnuxA Y<_~cD2$vwHV%6u&z=j%`v@LdA#r0iqR>C5Sr!6GEz57pa9Vv`F>PlasqdPW_Rd9aUih zsRLuT{tKXXU_i_;F)(FHb&O1Gky?b*i95S4mD(Gg-|yYK-@W&Hz8@naCJ^g0zSlf~ z0Q{1mSfx|vXi+$OfB*sm5JDG*$VE_M6ezBWz;i&99Y9nH+ZkIykbn1;{Ogu_$SVDo zz(U*%{TB05KaLWvg)yN)veL*Cb6YSSeGzyMP~buWTtr|Cx(WhRz3eW6h}_fKSI<-B zK2b%5db@gYr(L-uHg-wu#>E&Z9ccS%9zQ4-y^0zuJ>4?6@v>-B^lZe5A9;gkVfh1n~Ad{wGNBhw2_|Mwp3oK2VS(v)uY^mwffUH;}T*p})V{T$B^11;Peg)&Lt{2E$i3sh` zh|s9v(}c-6a(#}FMajWr)7)GX-T19&nfACw+FsO(IU;qgXLX3_^78!LtNFPFhnsPS zo=*HDIFgE;FncYbEU`tCX(JBpg}Bj`eJA#cmwG`@ZbaV0oY#)%c7{)3=5Nz_o+MSZ z|Nm3A(Dw)+M~&RXAD8#o(%XJg(Q#Qd z%%P%HwRcNws<_kAxRIA%BlS$sT*ljH!CL+nYK4C6R&kb1N-v|jBfJy+X+E`Q?4E$) j@q$FghYE!7uLhv?6Wl%4Dp1=s2ct9n(V0I$fQ;ZD+FA!8 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8ce427a79259afed2d1c2fda218eb83eceacd0b9 GIT binary patch literal 920 zcmZuv&ubGw7@gVOOg3vGb!ik#RFD$bgV`QLFCqw`RB7Dz?t$(h|O7TP&{^WHb#yqWLKe6Q6EAjVhse*YT; z;Fl!DC@sNaLx3ZI0fqqxp#ww3QJ~~XpgNiYo&&5N0IU%>$kYmfd_Gb0*(r?`tMpqE zOW{W7?@%xCldYR zO!R?yIXhUrB6st0?o>Mw{>X7!DmoH3sg99V=9R6Y8PQoKW`5-LVoG>@ef{AhH}Tl6 zOUYj9QxcLW;hN0wYb^1Sl)2bThy{5WlfIV*iKPl}q#thNg@kKaEcJa7;I38Ux|`)) zmm97t>e7G+Ty@>O)C**-WS9&|gh|x%38T_}u0O+gLuyb>(ppCx`q~dkmg5Kyyl5xp zr8Mya#`Q$3yo)2k)hHfuBOa3FQyqhawBVfDZy2G>7Of_|IJ7%)FO{t^yXz%hFqR9E z_aK+GBQnbPl4f{Bw(}xsl>PrR*ut{Mxn&ppX%EK~iG#Bse+JtU;Q-7LsMvE=Sw-(( z%?(g#el(_fW1=@^x9-et+?|=N!`9SnP0ZHkw_o;;_osGeVt1zY=EUCoVZJykYZYUz zA`^XhNgIW}g?J^uY8!87_T{G4m&weecHt4N7yIaKi87g{KF*Kihrz literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0048_alter_customerprofile_business.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0048_alter_customerprofile_business.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b182ba720b2ab3fee65020e0873b6adef1760d0e GIT binary patch literal 1074 zcmZuwzi-n(6uvty*_|SnqauAdld5WVV@DLDX3lNpUcEXksr0cGdu1>CptlTdN zEW}N})r{P@6$XrJen_ats`WH6ozING!DnIY016yPfP)BZLPtS>s;8Yr5RoyhefEE< z)F!H^P;VDcM%sl_e3Pg6E}ry}9MSgjyCbdk^sHM^Wua$SCO4jCjf$>~khKE09!8X3 zn47zE7soDJ$1HZ^F2lr)DL+^5vN-f<)QQ4I%cEScb;Taa*fO8UVt5o}Z;Ho+MvHo+YK?InCw`2% ziLuD*dQ{j2j9+zKPv%NQXom)b2K5$Yk-Tee&U-P9mLyB0CXOZ1ajO|Tp*^mVwi`4< zj!2E`NnPR%@chF3^M(1v3OB6lZBS|SD~%xlui+ykmMW^DLjca#(P3US%%P$cwYQI>ne1pw<3`$3nbZ=U zQ*AFFJIm>BRL(?=u4H?oX=x=?*M)VY-%l^|K~xeDijT>Rp#mZNqXB6B05gYL0czXk PV7$~HFZ~7rBm{o}gEt+= literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0049_alter_customerprofile_business.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0049_alter_customerprofile_business.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e2d0775bf93909ba7cc7ec2b534407fa6b4de2de GIT binary patch literal 1042 zcmah|y>HV%6u&z=j%`vXq2fcR1vL@E191likN_!aT_irb&?40mJvq5ccpL07ep&z$?x9pz31P(_q+3#u`wO+=RKZo zok9S77a)HMhtA$SceVfl1bV=SHuRB=puotJY#D+3fJhsF$P{)`wwxeax20^g3w>l1 zeh6S7ru%L?auPQTVy5^ZpU>n*J0#rU}FM^23DV@`Q zQ)NDpd53DJd_2=Boe-NiA$I`qqx!IWi*c2nSU}&%~Ojn%12zaJZQ+Q(D0mKmB~TR z^Z0fF=DN~^GL(dd#5ET>$RTG3IqW-UwzTjGy-$Pt*!T zXqN_r22Gd7kvLYS*To3)f+Z3vFnykn=eC1~w9gdMae{Wp5NR+q?SvmUE6&!R%+}{D zriWd6cm>{qJt5)2y15k7C^q?UNi+1#xv<&uX^_O`f|EF2UnBzOM#gIfbS=e)F!k4H zBP$Xzn}05u$pydtAHi$gex&d=Qd8tk{EV9oFj9bacO;<+W&P1e2inwYeW*?j)XCio z*LTle-Yr))uMNwULAmm#`fl;#)6dJFmWS5Tz*-twD+6m~Xtf4b>+9;veE`nY(SA|Z z^pT{Ll~)gu5j-_y_22by=a<4 j$lqARM-qhamja;i4P4zJIc1shI literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f1cf28b83fc70c6667b28474c19728d2d27f6f5f GIT binary patch literal 1374 zcmaJ>y>HV%6hD8&J-aQmR-u$u2$G5>LNpm*h*Y6gYWXZh>c^4}S0{H3j{K3@j@oP> zbztm**qDpjfq?-g{s0y%kP;mO0~1@M!otLz9XA!Nc*FVk-uvCV=l9;-r@=uDFnNd4 zn-?SiesCp`R2LjAGw=#vfCUTKLP-!f7A?`1N|G&?WlUc#g>yR7O}*9YHj4CHO5#b{k2P{?KS-j z+vPKC6Q^xw=X#h*s&=R(=sy|rzfo&fPDjTwmJi{97<+oLSOtcfYEGl-^^^pJih;|_TGV6Y7&c)PzNR)!Vqq#{BOojhXfy&BIqtT{`?!=F zrVvGRgs6rP+umS#AUc51R>QD(2!uSDap{P^ZPe>VnfWoP69*Hg()9QU((`j`tM}2` z%EB^w{A7M%kq#U)OyW~Ghw)vWhQ}`f)$X!7m{sQyX;KB(45#W+5tk{9eud2{g)0lI zXlZS6k*f17?`SX8+&byb@*8l(0)am-^J_lw{5-2}P;u@2yjyATTKV}UBQUHccR0q) z_>8GiSPqJ`fe|2127K}P{< z_J!7hQz4w%hpp^vn4SFs=h|?llafZ1XN#QypiXeccnHVaqc_^a<83{&cfF-&LOruT z^8Vt-u@7Ud;)AgGpjBKBi_5LzdRSclyz#WPu@i3WeAS!3`eaq>X#WNpZR=?sC>`qQ z{rR`SSA8aC4)*KH^M_t0NjL{-e_WpFitB8~-Br65T#g1IZsORnaXNlirjzb@{4T~d zNOKegpJeC{oQdb_j+bRBe>8l~=tzPf{8oT)?K{YR16O}3x}fZ7t)a5LZ7@nDA(<<5qfea+0;TekawQvoyjxr`^@Cq__ztgbAYdH zP9p$*Ns>Q>AvjtRU=I*LpbrA*zyLW2N{)QRQ4x3uh_VBSN?|Ki%LTIWlah^2p^L1- zZ%Hh~&A@9iH}Rq{=2{RD>c_Q4wlIsvkQ^Ndum>n`AOQ{{un8Rn0jiGLiy$KBwARJ5 zQW+NY>8;ZFe5*JjH#s6Vbv{Q5`&!=L{#cGgg~hIJ8Qgf1Hz_(cqSy=FM#Lz;y|{R5 z5w}^?qK$;nt&YcNK*I#PgiwO(-BEMIO(<6rH-5n{ocU($)$FNo<-DY&a5e1szSus* z!euH%P!fr>nYxZcHxROEENptzCpBxF>p0D0%uS5Nx{gl;E@HgZaecW~GD6!lBs6Sz zG-mRUxp~h|C|i;$OidF@qFt{UKBir+k(L`aBaTR&>uDw8@VWlHOzsc zm9%${SUKOz(zuZoUm^9>(agn}(_|(4Q!2TAY&!pz%}SI?%?Wg(-^q^cF1soy6mNW4 ggnHV%6u+|_$F@?`MipPBfZ7Vl193s>hLEb(MdG6iEmA%7l;?Fl<0iRRGb>y9+B=?&+-y z|5If?)IYgDKP=|GiW*B@!#273ByUsnY({aD`n8A= zJ~cnTa0mH8LKsT?cndMI-Dxrs5}I(0MhW4?Hj7%MmaILWI6YSx#cYiis)0|pL~bVt z1T#fKLL!bSNo1=+UMVS}en>=$w1s+;1bEdR;|5CO2yqJ`k=F@`@Jk47cl;`$OOkpz z|6Y?Ll)a0jf@maGrQKz^xHL6I;l!RWyI`mTb780|llrU2LkpPK-dKHOs%K0ME=><6 zt`5qxd$;=K*pge9?{4bFTR&w9v3y!8mf9( zfBleM&o8reZe}%Ca5Ysi)9%V?u#!FfN-i3^oS$XW(o3ms2=BzWmyPN^n-Ng_t00!~ fp$Z}VqXTIF05^~I64dvs{`g#PeC{_8ASL(<2AKl5 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2ed0051ccc4da073a4a68edc376fadf5598d927b GIT binary patch literal 1289 zcma)6J#X7a7(SjTTBIdM3Y^$hAL$P`0(i-m_t!FD@!O!xeloYob2I{}u0fd#SBQLGFE zME$S3FvRjq>&~2)N-_D7Lyo(pT55^|pqyG;dBk{R>QAbq8=w7{O z?@sbNchsFfN5-&QzG%bKhxtiWcVI_7EF6g5$t7wtGn}bi;`-f5c}1;tKX5#|?Nh=_ zH*c7kl^Bs?wZRYGcY{;R5A8v8@#b!vcAY)K^Sgw${D2_O?h$ST%%%)6N8lXsaEh{hdCA_TcahW+LoLHqZ{WHj zL=TA>AdGOxd=aynh-o_xadEIMGRmPuA0ciaBnD>S5`psweKW9K=`0y0eQ_o6+71b* zoI5_fkwkx2P8gMa=lMHM#}s*ONoii#6uCVV!KT#M5>;|K-d7?;4R>v?<8z2xJeLF~ zrj<`^m=8A0&Cj^u_sMvIe*~wp`e%OQktj>h5LvRe-)n68?Lm)tENE=o%yx(Jz_UL} zbsHXen(#4A@Ke%Con*Hf@86Mz=vxydHM7T^s`rOf6SpSYlmNjGVtWoo8qilq891vw z`+8&mz52Zo=N6;f;z?=guhNxpZso;pJhu|ft^BP1z8qR8^yu+i5Ej`Te6bF2v^j z$h;q$R%BYS*^10o*!lLjJPeC_BRxAi^E#W;jZwz9tbO+-y)g;Arg1$jKpnS|mZe=< zcxSAqUx)gn19WNfUwU1lMCwC<&T^lob8(xl2r51sAgGFMlu;DrjRut3pJ3^=R#dbX PMqFHuip&23K@x$tw@gp* literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0054_remove_point_date_completed_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0054_remove_point_date_completed_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2a44ffd53f1ac9d4f18a303557ba3ccad4cfcd0a GIT binary patch literal 926 zcmb_aF>ljA6n#L zk%|5WRK&!;VCvNBRwgz}X_rpi*$F8N>cEry?)!Y-d-vYE`?0j-fwJ%P_Uq3Ez)wx) z)|!Fo0|oYh11AZjBqRh3cnaLu18yQ2So46zdSEsn*#fQ5E2fd!AYNlrU7UT>LSmFfI6O=U#$aGw6=e!S{G8;7gDtss=gK46UTR@ z`(oaeZ%8*QV!@&;N4d7Weg7^UX0a$)RK~k;IgzcJ%4N<A?hxR}iQX-J^MZd^0Kf_hcv&Ty>J;)^L*R_gFhyfnucG z9#l5Co0Vx?vEMzfJaBJ)^p2eFq0>F?bdOipPgFi z+~Pa+Fqd%%F97!uS$3GQG7814hZJHRZC`c5@8UB6l-?pPz+uN@oWE+0sVUs?KRWI_tfV>QyAVOOJ(`EmFDjgbq{ARHLNsbjJMB z@pm1b`Bpv?_GA?DRNF}3l9-Eb*2`@%jALE&3Ok9Q3D-FjYg-YIS=)E>Iw|sm+7 z;Caeb8fg16ZBTGmhQox5EDhQ;qw&ZT1ii`nRCHw^_;$f3w7}bZvurZv2h+O}=wnzT z)To)9Lh16#V5H35D}n*(Qyq3-?0~z0#umQhe0Vtaz+L#{9oFX$>hnjJ7mhAmIcm0c zuOBvB2hG+mfEzFI7$Cs|vuxvc_!Qvcdwe=$yWZGxn$E`uYN7f{+qZMK)V#tr3!e&a zN*(j2t>|6U=&XLbG<#iL(-i49y{g05LJ0kF0QslREOK_e!@1>yx#i!WNiqEw3zPII literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0056_alter_pointactivity_end_time.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0056_alter_pointactivity_end_time.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3499e4da1fa51f8a7b2f8023aaea4491d1d38e9c GIT binary patch literal 806 zcmY*Xzi-n(6n4?yk6!2iG$2`SO7Ol*--gw%;UCsxW0&)@fc-Fu(!N4@TWI^XcUqt6K7mnPMz zEy4Uifis{$Q35FnQEG$+0t21{HBNw<4E61*X!Sie7dSLWmS6j=iEl_Rje9u}amEX2 zrx|5Q5v^(foF$oe6*vP1A)*i(6!lPO8o;c6Iq>xoP-9RXv->yx_iIKiYF*UMjYZ_b zuEtXRoY9)^NcUAWks8mwZ>nwehM1F-DWA5rqnIVM?Yq*!r5|JIVXX3o2~&6-Vx8>se-M=>jMEvWRK>WQA|F1e*0^+O_9N8Mlgq?ZlYQsA#J*IQq`4_+56F9Nlj zh_W;|%%Wk+xF~`)5hNMu04MippYUE5aCThsB`xtW>n@VCGQsK>21=uc*EOnC!Idbx zgHf&@M`<)Do+xtyGaK9oGt;gEJXM5UgO*glujn-*v(rAqvtuLML z*3ZV{%QegOW~SY+KfcIsRUO;DCEdlOyR=&>RI0MLv#Ha{+}jFWIgb`HALLt#s^<>H e9c5-FLg=pz$iKALk$vh-Hg?7vJAXitvicv!I@GBE literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0057_point_total_time_hours_point_total_time_minutes_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0057_point_total_time_hours_point_total_time_minutes_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e18223800a263e0bb4017af2d86337412c7d3158 GIT binary patch literal 1105 zcmb_bL2J}N6rM@4*(9{GE@IUdLG21T*z83;CtH3jzx~2E^J1#HO(4&V!D>dv=9md+3Chw&(CqsZLgXlB2ckZ-ZGve&m z_F!e-cjra@AyfUoW%B+mQ`e5Yp&tg)e?Hep3Fa3(WjHBHDzCNMx9=dF30k6lkurf3 zk-kpF5K%^uNOLM{#x5J85I8d?^s*R~yj0BvA(VAOH}N17p{+Wh)kh4gFvsk*&6H+D zHctfSDH{mNPuVz43PyM*^reSPJVG)+NaY)3RN)1LUJY=jb81FtU)4uhl2Tskp^)AK zLLTXVm5!zhPne)xS{joKiawo9$R}{18+Y^}dckSQBPE4MiadH)B!iqX!J`gV_Z;d2 zhHsG`X5AuUbj$D=HF%3|R8CsR=y(PrCF$KtOmyPfMzgc#nHmTyxpS3htv@XFy96s z^=ti`-%_LLzI|F=p4Zn29qCt^tdR}V2qS-WgG<`Y_+C-y$h%*4bG=+qR6ifC!PJHj Z{&E2f58aE<-3i8x)lp;hCs4#h{|1>87!?2j literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0058_remove_point_total_time_hours_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0058_remove_point_total_time_hours_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e9162f79c5047a7ea5d6fb1f8122673984d52cdd GIT binary patch literal 904 zcma)4zi-n(6nd(WHBJ%LLNQOD`Qik1F?|o!G z@c2IK$Gj&(j@uQV(h6_mW-T)Ah4V`gY9AlbqH2HMx7yB`YwLqiVJ>79%!QF3b=ZN4 z1KxWwv8`3->+6XR-mS5J;CA-i&f)dW;g!3`P22M)?%Djki}Ne3W#`+g;_9qnH?Wmg zZ)u%vR=(BKtQtinyQa~p`=s{$S#d*Cq91uvhlx!HIdOp8K6X}!^W8saukE+jPC%2Y F`X7J>@PGgS literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0059_alter_task_requirement.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0059_alter_task_requirement.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..830611f154f48676e15a7c866edc09047a331140 GIT binary patch literal 1050 zcmZuwL2DC16rP#gY&UBvHI}MisyR+%+#u`rw zJ$US`e?e&v9>lYrJb20}WjuQF7HCE2$(h}5Ei?-|^S<|HzW3fYGe0ILEg-+ocy4_L z0q{$K?8}`PhfC7f1q2Z2g8(*QfEoxYjC`%3Bk%+eZ5t4s!cM}L5v22;md=e_AKAIz z3fM?kf!F44?1d~6Mi3I}N3~YEFdZ|d!!Hu=0ty>TuzUeW(ne#r9+c);~)W1KG^(t#D^i4Z2^3Sq1WzYFA@|fESITg1T z7w_J~oCe`5io2o5VjPFD>*Lr9D1I6Cc!XU>aG)0Ju^VlO3!HBDJh_Fkc;(IYQ?7EC zhaK9A&xCDV@C_%7b(Rn|Lu0trE;vUoXNeAmdSeNO#@Doh}C zVC>e39n_8t{0~f#kP_X>#1<({b)8Fkk2>#;P5j7_@&75 zX)M5ePl9uxKv4_{3Q(d28UhVo0@Y4|>I@CcWz*_?q1QOjM~2(@t%$1$CyDwQDWa6; z!c0=i;yhgS09Xq$?@4eD3<5+U&?xGoK-Yj7gG%uKEg)r3b!HB3-OMXS4QgCAF0}gO z(p<`t^Q_UDYYF?!QjwHrr+LIlm}X40eSh~cCULVq8QCJCIWvy_oPLVem4JU0v?1_QaedOy*Q<97ZgrUDp;CuJRZQ2V+@R z#!TXMjE_qat6Ie<8!}EA4DnFh!|Ry?_SPq7VztLsd%D?~-o8I=bzj#|9~V__dioT)b9WQ literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0061_alter_task_end_date_alter_task_start_date.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0061_alter_task_end_date_alter_task_start_date.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4e4a51736d1cfefc965c07ed9c2747c3348a14df GIT binary patch literal 927 zcmb7C&ui2`6n>Lr(sO{1J!qbAV%UnHqTiA-wlQWYITTujac=^6J-Vf<|P_<_Ful=4^j9O=nQ&i>8 z?7FFc?6mTKJN1mv89BZy+-LPFr%Bg}J763pY2 z35%2RrEpkAF(sTm_mQx&VUqZ!^h)`IGooZVHV$HzP~nxF6kO}O@?-~V4aUO5Sk?>^ zCh=8_Ukyp3>J+1FAkSb~6tl8WS0lWK31`J4wPRtagu5pj&|G-=fGw`+Bg~b17w>}? zB`eB6PR64=4fgVAn6iwQL6^vBMrt7=+q6%zULIuZQ1b=V_>k>aBIQf4df&a7^XffONx`)Y1YgOmUTsdMowpEL*3IbG|NZVwMl@s2~g)i$Rh2?l_igo zn|Z)K(Zi12Y5fTslEVfJ*nUER9VVdx9I%HC*r_)IX)isMl&mB`LIKkAK79C+d_VN} z=%^0Z_yb;Q{3HSJKR42m8G^$*4EzibK!O9>LQN1j79FuI)ugsulVe+QGBrg6Hvp0! z0hGZ~Yb3~bN!snYfkcKkJq>(VhY z1cyHe{8Sj!1O#fL2-uElDmwn+Oe=S6rD&I}Fbxr@vHHRpY7Oa45se^uFPFxE=|^Mz+o$!rLyBp}V$D0JHF&HweVT2J zpTS)`gS&K^J3Cf;=XS+J+Yp=bUOu&<$WPFvh92nx>59PxE}+H7$=|TArW3_8~N# z023IP{sV|z1d$owlbj!zB#2q6FM6(vEuMQS+UVX26>lyXGR>LYz=IaSY$>869b&gl z(t{6hk7_<9w&~bkVVZl0N!{}?bj>!V3iBIuc|j@bu4B8H@VGEDyWVKT_IYN%c*;qM zX02_{wy@8t&-@ZP*lh;eRCc?LLuGzoDtFmN@$Fp5N)j_l3_M22$!-lBJIG%%&Qle} z2Y`_35VHF1I+)=cgkN+`hl?R3ykO{rzhibfW}VF=++m@?uGJ&FKj^uIjeDQLjl0Wt z;OhF)@@<+sQrPT}Ba3k;R(W#}-lR15soh*)L0aL*pxWZLNrrHVoj!s33d@PzbZ@b+ zDX3+-O^=GGPSyB6Jm%TOg}aLjOUqREI(XQFzk)-y0eJ0HHdqAw3d?R_dF{%QXLZ}y z4gAWQ8JJFwPq^j>iQkHgcVc^J#&`$U6A`bC%5j%hSe1MPt)tYJJ3W$RTgETm(EdN{ z^#}|Upw0fM_tndhdifW%KYKlzz5YyHI8bj4GSY@K!ik zdi=0IS&Al0f5}g0!Ws-+vOnpE`QV^X45#LvT46oKhkA%Ii_ou!I z^WPp6Cc~ofQ=&+vcD5f4|?aE=SeneswLXuJx;%QFSxi zvie(owB_#?gD~G6Xqkzzml;*l2a-OneE&JAq&GBFI+BE`%wo_;3P2k&s2<6a?k5 P-p|iO`I%RM8L^Kyo;jGH literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0063_alter_connection_date.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0063_alter_connection_date.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8158e0fff544912d6f4766eb5d294215d3229fc4 GIT binary patch literal 773 zcmY*WL5tHs6n>MW(YLZfV5rsW? z+}r*IW%ua6@Kg|5a`oh`&=p}%&P!Wb=kVtH-n=*Sy>EUr8aAl)o!vkFNC18zS*_X< z%nubf0}h zy3HKbU9+^_tn?^xR+>jL2-8fI*AEV!JYr!gr3g`NX>VYI2Zea+lG2caICgb46;8rr zkO-B-SUZkH%sZ}Cnykt*R@#iIxRJqbl`(kP2H<;seS3~bzF0$NHQxsvEcx8@>xN~|bn4L0ud?RqzK&~@)BkM|7V=uD{oohD6sF$yOG+s%Y&^nBZ?0e(N(}yd` z$=tnc(1$(tZTS;6l7|!q-JdYni^KvlcZ?18)Hg%gmp<)EvXVgZyeqi+o!|ZGoO91T zSHDk8NPv!C;MMJKV*vc?8_|f5!SOl;KLP|0qXLa-GK`N|mDOU+n8r1^z>cZ$CeMOZ zfVd|B#c`}V896$A@6#CmXeI`+BLBjNMTQ6#wrxf4SVfjdn$j_4TQPKt@S1_JYBk!v zE*i-(ICdC6D-4Pr`>#RDmdNp;CUclo>yPjufr&vvIT;ASu2uAJvk>R@7@ z4S5=Q^8br`apliu)8P)LqTD)6Gc!mRGelgA8i00#XjqCaw+$1M{PpWMZ$MeKu?gFT zuH&}fBoN6qCc-+F1Cy`{y0=2u&z6cDNy&ZNfNc{~2_ng!sc5n}fM4SQ5iM*gvZ_4B zB(;OhmSJJ2%NizetQlS9#S|?VZA?j%zkw>&JN84uTefWXt;gw;l*%C!q)8LODyFHh zwn4Z)bx&z7aLI2gSVdN&I86i?M1hb<5Yp!EtC->xgpc~N>Wd*X{ca*N)~?*^$t}8$ za1ZMU>+ON*Umh}5-?;ZF+_<~E4%fb1TE0zECkh2yB)J&ucg?>!rhkJ;>Jz0?rDS$>`znt^64rQ?KB4 zx3WQZX;o-B?6#p*mW*~^!@6x%8nP{`1Ajr6-wXX#bi5nbV>7_JxD|^0^R1lT`wBhj z_aWUzaHQqlz)aA9!Q@|X>n}Pz0V5uW^FK(QaLpC2{Umtvx7_(#e+c!VaAOpY&G6sd z9;JZzmamv~h1p@I@K5FqCtG^D<7G>3w)89a+nm#cj&2@hEhlXcGnbuwY405`Uvl%M z!`4y$11J6AFq3l%3wt-c!h%~^INW(YcsB5At8Q)8tKD&Hcf8ttw|3w8$~Y?Yob;n% zChO!%dzZXi$<37xH=jRv_Q0zyyVYf{+Hk84ue#}0H=V7vw`I9o)=|!O(*2PbpP76a z7er|klcxFaKQ~L!ev1N0h9xW0p5G2TKpZou6*NnD%DEG=9R4-S(J7j9kvFsGqrmyQ z6ulNc3VZNlvqDY(muOw3(t<8 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0065_alter_customerprofile_status.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0065_alter_customerprofile_status.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fc83f20bfa5e9a334109d9da3da246be25332a0e GIT binary patch literal 909 zcmZ8gzi-n(6nNLM4Pmi-;;p2I>xg7*M4O1PDO~C`%UW>bs;){UhAjlq?9O z4vgKpGlANXKLUxVQ>$B9zUP7<~3>b+ZCT$WMZG(UTPkj5a_VB)xkVFx(034^x5NSCxt1Gv>2SDfo&2Ge_X@4~s{2r{b+tn!&K zn^pH}yH=UrbH?&;Zf)SUCY1AHtPEv3sSFbuq=KvZ;^MtKzTh;_s@26HmsuKf(HCha zjJUF8MzdV5woL4^m$B+C7ZZ4l9`h=feV#DR#AKOqSGkCBbcU%qri#j=?|Rcxm9>Z_ z8>$+tr(wXQsxsc8d6c1R^qn8^q?@g`Ok~hsB3sFfBaw+sRDR()_xOl9m2yKya9v=)(UpCLW88$(_ugyC zh4j#+EJ$PTQ5xhiPcrGP(2Pa{y^+w{tVfe>>Lq-$;3Hb#O}Jxm24{X~8q@ZN=R+5q*-!34ZDzkVb9m*};iapGjpp{v zgGO_|(fl&~3*i1!V+imPpE7>BM$b3_xV&MUR4vCHns&qf_)N@>k6FRXaZ33MY^|`Y zu&ER>qsxlg>xfQk4@%#c#0{kQSAo2SVQ3OU{@6fTC-x+HV%6hEIG$9CEhLPaS>{h$%T14$RUfRL&-E#jjCv`F>Plasqd3H}IYhbl}U zbzrQ-(0>8c4h;MOFflM?N_4O>u|;YSQYY^0xKy+!`Q7jR?%lh0zjyvNI%)tuKB4Q? zHU!|OaFUT4f}>Rq_5lW1a)2vYk_#;;2_HJLr9iL-u)GVfLZn8NElCj12XZ`HsWvoI zzl38#X1MhlwZppa1x$5)Oq^i75(maMGjxuAaIg;uup|sDh^3lj$q*3byt6RG@}Y9T zZz4t%H4@{~7Rxxr*V2vbX*R}K#VXMo<7ZbIW9M*}&*83|<#75?J5XZ&P)`)8L2I;a zm>H%&PQ>8K=zdW5?21nbn_E~|yp3!pBotLzLFl`LHmP5&I|K!x9kv2?;Xj^fW2@h({A332_GWL2bL z+7iYQqCzWXta1_RHSZy5GZi;%ujVs|%S?-k;ZKL9mzSO{FRhfA;Wx?fIeh>}d^0$H zSKJH;4T}7lVa0cgD}JTr5-$vj>vm{6ZL#3lx8l4-kL*PL(2ej8DaS#g8O47Ow#eJE zh-g&!nZ6|QqZ5#*TWGea$}5XZnuDOt%`WJxK)=(M;kf$xQQrXi%v+C`){VXf^lO5j>S$BFi8;>qa`SsPy1DsIZvK7#Jy$iS;wI$Yn@`NnJe`p~Qo?cD% z(iwrGRC631Yj@+`-=lf%O8g5%L|>L9>5mE|^E;Rws98zfGrHM)C!7BbxDzG#3vyF3 ATL1t6 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0067_customerprofile_confirmed.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0067_customerprofile_confirmed.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..893ce71f0731799f85781ae34d7d4001351416ce GIT binary patch literal 848 zcmZWozmL-}7`2l$O`;wg6%s$L6KW9|xZG40bP}f%NGGTmj-`v0#%`68*u_pbRV*Og zz-Pt9iM!_5@+&_y@eS#v@qmX} z%&3rd$}mYpwC(}GU6BP=;1m$hg&1@V3@w#I1mj}qH21s^kb6Xj_*nb z6?KH9hmg|c$^nu!gkI!fqP3b~G9nZc8pT9#oxXG)VEj<;!7WW|dyFL{q(w=3Y(!Q^ z@g6L6Ru`{=XM%7Ms0^}*rNKUn@|4g_1f4Jold)c);axlo>3{{492I;;3w%U+OOZ}6 zSRZzvvb^_Sh<|d~9*w!aL&c8E85|2UMvPfrOw!P?jvl^<7d2{|INNB@-ZZ zKw{}uW+qTO@<$*sWomURQ@4l)A$8*2IiVF2C;9pN-VghG@7?#wNgMEdb*jye8o&=p z#wRxdC(8)-fC41}grq@2t)UUn-~mu=2dK_S+Z-32z4!GDH}sxS%NyR_f<0i+AQT!JB`wm>HDE?t2|ix}D1+(;#y&P6kII_J@Og__ zIgI7orSsklQ?ms$|B287wGQlkBl8{<$4#`fhSi&>O$zJrSU)yn#fcxeUd)-OEH2)< z?RecJjYGyeJZ|~{bG$fe`aEP*O#KrQ*58<#ikyTKxgisVvSyOHX*XG~85qt#VG;GC z7QcYHkee%B>TfYVl~LXiM@LLJ&a18) zNZpcAro=>^&k`;#fhay@VZ6oe%g+dVB}f@pn9Df}YjxAjxUl068{LjCaDqWN{ZN0N zFrL(L)TtMT^?R|`4Ox^X^))wjgPsgT?oHZuqgGsx*tX&$s_-`3$dcru>Sy<_jw@So zxRUn&%{gvFu~p6%Iz2A0xiS(Y0h%2cm|!gpbZy3b`)FW;b>+Q%Sg7<1m7_~Hj;3da zIo+}c1+Xg8Ki4nJDgWi8a&`CmVY%8bS3l4E1Xy~Z4FK92m#;V4U3~~}aaAAY4JkrI58Su_Kk5c1muQX85j SV(!|9rTKno{udxo)qemLUlzUq literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/__init__.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/__init__.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..91372ccda5b3f837e421981a0044e96fe97bb65f GIT binary patch literal 198 zcmX@j%ge<81Y6>j(m?cM5P=Rpvj9b=GgLBYGWxA#C}INgK7-W!O4Sc7PAw|d&o9m_ zNzTvJcgasK%}vcKDc1K(EJ@6%1WDv2>ZW8R=B4NB=cSf|`A{yHU7nf*QIwotl&YVb znO>Awl9``ZtREkrnU`4-AFo$X`HRCQH$SB`C)KWq6=*9X5Ep|OADI~$8H<>KEC7Ri BHtPTY literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/templates/email-confirmation-sent.html b/osinaweb/osinacore/templates/email-confirmation-sent.html new file mode 100644 index 00000000..7c05e0f7 --- /dev/null +++ b/osinaweb/osinacore/templates/email-confirmation-sent.html @@ -0,0 +1,102 @@ +{% load static %} + + + + + + + + Osina + + + + + + + + + + +

+ + + + + +
+ + +
+
+
+
+
+
+
+
+
+ + + +
+ + + + + + + +
+
+

Thank you for signing up! + To help us + confirm your identity, we sent you an email to activate your account and verify + your email address

+
+
+
+
+
+
+ + + \ No newline at end of file diff --git a/osinaweb/osinacore/templates/email_confirmation_sent.html b/osinaweb/osinacore/templates/email_confirmation_sent.html deleted file mode 100644 index e69de29b..00000000 diff --git a/osinaweb/osinacore/templates/forgot-password-confirmation.html b/osinaweb/osinacore/templates/forgot-password-confirmation.html new file mode 100644 index 00000000..ef9013a9 --- /dev/null +++ b/osinaweb/osinacore/templates/forgot-password-confirmation.html @@ -0,0 +1,121 @@ +{% load static %} + + + + + + + + Osina + + + + + + + + + + +
+ + + + + +
+ + +
+
+
+
+
+
+
+
+
+ + + +
+ {% csrf_token %} + + + + + + + +
+
+

Enter your new password.

+ + + + + +

+ + +
+
+
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/osinaweb/osinacore/templates/forgot-password.html b/osinaweb/osinacore/templates/forgot-password.html new file mode 100644 index 00000000..afa17623 --- /dev/null +++ b/osinaweb/osinacore/templates/forgot-password.html @@ -0,0 +1,110 @@ +{% load static %} + + + + + + + + Osina + + + + + + + + + + +
+ + + + + +
+ + +
+
+
+
+
+
+
+
+
+ + + +
+ {% csrf_token %} + + + + + + + +
+
+

Enter your email address below, and + we'll email you instructions for setting a new one.

+ + + + +
+
+
+
+
+ + + \ No newline at end of file diff --git a/osinaweb/osinacore/templates/login.html b/osinaweb/osinacore/templates/login.html index 27aa3e99..672e269a 100644 --- a/osinaweb/osinacore/templates/login.html +++ b/osinaweb/osinacore/templates/login.html @@ -133,7 +133,7 @@
-
Forgot Your + Forgot Your Password?