From caddcba2279c789db63e308e89b0ba9cfec53006 Mon Sep 17 00:00:00 2001 From: nataly Date: Thu, 22 Aug 2024 15:38:58 +0300 Subject: [PATCH] New changes. --- .../__pycache__/__init__.cpython-312.pyc | Bin 189 -> 189 bytes .../__pycache__/admin.cpython-312.pyc | Bin 693 -> 693 bytes .../__pycache__/apps.cpython-312.pyc | Bin 505 -> 505 bytes .../__pycache__/models.cpython-312.pyc | Bin 2897 -> 2897 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 898 -> 898 bytes .../0002_country_addressbook.cpython-312.pyc | Bin 1847 -> 1847 bytes .../__pycache__/0003_contact.cpython-312.pyc | Bin 1410 -> 1410 bytes .../0004_socialmedia.cpython-312.pyc | Bin 1231 -> 1231 bytes ...05_socialmedia_addressbook.cpython-312.pyc | Bin 1000 -> 1000 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 200 -> 200 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 185 -> 185 bytes .../billing/__pycache__/admin.cpython-312.pyc | Bin 1024 -> 1024 bytes .../billing/__pycache__/apps.cpython-312.pyc | Bin 493 -> 493 bytes .../__pycache__/models.cpython-312.pyc | Bin 11314 -> 11314 bytes .../billing/__pycache__/urls.cpython-312.pyc | Bin 1226 -> 1226 bytes .../billing/__pycache__/views.cpython-312.pyc | Bin 3658 -> 3658 bytes .../add/__pycache__/urls.cpython-312.pyc | Bin 1070 -> 1068 bytes .../add/__pycache__/views.cpython-312.pyc | Bin 12211 -> 12211 bytes .../delete/__pycache__/urls.cpython-312.pyc | Bin 583 -> 583 bytes .../delete/__pycache__/views.cpython-312.pyc | Bin 1367 -> 1367 bytes .../edit/__pycache__/urls.cpython-312.pyc | Bin 648 -> 648 bytes .../edit/__pycache__/views.cpython-312.pyc | Bin 2353 -> 2353 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 2244 -> 2244 bytes ...vice_cancelled_at_and_more.cpython-312.pyc | Bin 1214 -> 1214 bytes ...003_payment_servicepayment.cpython-312.pyc | Bin 1847 -> 1847 bytes ...rename_payment_paymenttype.cpython-312.pyc | Bin 688 -> 688 bytes ...05_service_recurring_cycle.cpython-312.pyc | Bin 1015 -> 1015 bytes ...ervice_created_at_and_more.cpython-312.pyc | Bin 1092 -> 1092 bytes ...er_service_recurring_cycle.cpython-312.pyc | Bin 1076 -> 1076 bytes .../0008_alter_service_type.cpython-312.pyc | Bin 1067 -> 1067 bytes ...cepayment_service_and_more.cpython-312.pyc | Bin 1823 -> 1823 bytes .../0010_charge_amount.cpython-312.pyc | Bin 853 -> 853 bytes .../__pycache__/0011_invoice.cpython-312.pyc | Bin 1291 -> 1291 bytes ...nt_charge_receipt_and_more.cpython-312.pyc | Bin 1456 -> 1456 bytes ...alter_invoice_date_created.cpython-312.pyc | Bin 796 -> 796 bytes ...014_servicepayment_comment.cpython-312.pyc | Bin 798 -> 798 bytes .../__pycache__/0015_order.cpython-312.pyc | Bin 1528 -> 1528 bytes .../0016_alter_order_status.cpython-312.pyc | Bin 882 -> 882 bytes .../0017_service_order.cpython-312.pyc | Bin 989 -> 989 bytes .../0018_alter_order_status.cpython-312.pyc | Bin 890 -> 890 bytes ..._service_customer_and_more.cpython-312.pyc | Bin 4689 -> 4689 bytes .../0020_orderitem.cpython-312.pyc | Bin 1344 -> 1344 bytes ...m_recurring_cycle_and_more.cpython-312.pyc | Bin 1124 -> 1124 bytes ...e_item_created_at_and_more.cpython-312.pyc | Bin 1150 -> 1150 bytes ...em_project_alter_item_type.cpython-312.pyc | Bin 1370 -> 1370 bytes .../0024_remove_item_active.cpython-312.pyc | Bin 682 -> 682 bytes ...item_project_item_customer.cpython-312.pyc | Bin 1176 -> 1176 bytes ...tem_type_remove_order_paid.cpython-312.pyc | Bin 836 -> 836 bytes .../0027_item_type.cpython-312.pyc | Bin 859 -> 859 bytes ...0028_remove_order_due_date.cpython-312.pyc | Bin 663 -> 663 bytes .../0029_invoice_pdf.cpython-312.pyc | Bin 788 -> 788 bytes .../0030_alter_invoice_order.cpython-312.pyc | Bin 982 -> 982 bytes ...ter_invoice_invoice_number.cpython-312.pyc | Bin 809 -> 809 bytes .../0032_order_business.cpython-312.pyc | Bin 1066 -> 1066 bytes .../0033_alter_order_status.cpython-312.pyc | Bin 907 -> 907 bytes .../0034_alter_invoice_pdf.cpython-312.pyc | Bin 810 -> 810 bytes .../0035_alter_invoice_pdf.cpython-312.pyc | Bin 792 -> 792 bytes ...ter_invoice_invoice_number.cpython-312.pyc | Bin 818 -> 818 bytes .../0037_recurringcycle_item.cpython-312.pyc | Bin 998 -> 998 bytes .../0038_alter_invoice_pdf.cpython-312.pyc | Bin 810 -> 810 bytes ...recurringcycle_cycle_price.cpython-312.pyc | Bin 787 -> 787 bytes ..._orderitem_end_at_and_more.cpython-312.pyc | Bin 939 -> 939 bytes .../0041_orderitem_active.cpython-312.pyc | Bin 806 -> 806 bytes .../0042_order_due_date.cpython-312.pyc | Bin 772 -> 772 bytes .../0043_alter_invoice_pdf.cpython-312.pyc | Bin 808 -> 808 bytes ...044_alter_orderitem_active.cpython-312.pyc | Bin 788 -> 788 bytes ...ter_orderpayment_date_paid.cpython-312.pyc | Bin 962 -> 962 bytes ...t_order_orderpayment_order.cpython-312.pyc | Bin 1134 -> 1134 bytes ...cription_paymenttype_image.cpython-312.pyc | Bin 1003 -> 1003 bytes ...e_order_status_orderstatus.cpython-312.pyc | Bin 1565 -> 1565 bytes ...rename_due_date_order_date.cpython-312.pyc | Bin 715 -> 715 bytes ...ent_type_orderpayment_type.cpython-312.pyc | Bin 925 -> 925 bytes ..._alter_orderpayment_amount.cpython-312.pyc | Bin 807 -> 807 bytes ...2_alter_orderstatus_status.cpython-312.pyc | Bin 937 -> 937 bytes .../0053_item_photo.cpython-312.pyc | Bin 790 -> 790 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 196 -> 196 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 190 -> 190 bytes .../__pycache__/admin.cpython-312.pyc | Bin 234 -> 234 bytes .../__pycache__/apps.cpython-312.pyc | Bin 508 -> 508 bytes .../custom_context.cpython-312.pyc | Bin 2607 -> 2607 bytes .../__pycache__/decorators.cpython-312.pyc | Bin 1335 -> 1335 bytes .../__pycache__/models.cpython-312.pyc | Bin 188 -> 188 bytes .../__pycache__/urls.cpython-312.pyc | Bin 2852 -> 2852 bytes .../__pycache__/views.cpython-312.pyc | Bin 14455 -> 14455 bytes .../add/__pycache__/urls.cpython-312.pyc | Bin 429 -> 429 bytes .../add/__pycache__/views.cpython-312.pyc | Bin 4074 -> 4074 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 4262 -> 4262 bytes ...02_alter_ticket_department.cpython-312.pyc | Bin 1083 -> 1083 bytes ...mer_ticket_status_and_more.cpython-312.pyc | Bin 1548 -> 1548 bytes ...ket_ticket_number_and_more.cpython-312.pyc | Bin 1259 -> 1259 bytes .../0005_ticketstatusupdate.cpython-312.pyc | Bin 1859 -> 1859 bytes .../0006_ticketupdate_read.cpython-312.pyc | Bin 796 -> 796 bytes ...ead_ticketupdatereadstatus.cpython-312.pyc | Bin 1775 -> 1775 bytes ...pdatereadstatus_ticketread.cpython-312.pyc | Bin 916 -> 916 bytes ...er_ticketattachment_ticket.cpython-312.pyc | Bin 1062 -> 1062 bytes ...ction_ticketupdatereaction.cpython-312.pyc | Bin 737 -> 737 bytes ...ketupdatereaction_customer.cpython-312.pyc | Bin 1219 -> 1219 bytes ...0012_ticket_ticket_members.cpython-312.pyc | Bin 1034 -> 1034 bytes ...lter_ticket_ticket_members.cpython-312.pyc | Bin 903 -> 903 bytes ...partment_ticket_department.cpython-312.pyc | Bin 984 -> 984 bytes ...artment_ticket_departments.cpython-312.pyc | Bin 757 -> 757 bytes ...tstatusupdate_ticketstatus.cpython-312.pyc | Bin 901 -> 901 bytes .../0017_tickettask.cpython-312.pyc | Bin 1395 -> 1395 bytes ...lter_ticketattachment_file.cpython-312.pyc | Bin 809 -> 809 bytes .../__pycache__/0019_file.cpython-312.pyc | Bin 1109 -> 1109 bytes ...lter_ticketattachment_file.cpython-312.pyc | Bin 809 -> 809 bytes .../0021_file_ticket.cpython-312.pyc | Bin 1017 -> 1017 bytes .../0022_remove_file_ticket.cpython-312.pyc | Bin 669 -> 669 bytes ...etattachment_file_and_more.cpython-312.pyc | Bin 1017 -> 1017 bytes ...attachment_ticket_and_more.cpython-312.pyc | Bin 2067 -> 2067 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 201 -> 201 bytes .../payment/__pycache__/urls.cpython-312.pyc | Bin 1390 -> 1390 bytes .../payment/__pycache__/views.cpython-312.pyc | Bin 15464 -> 15464 bytes osinaweb/db.sqlite3 | Bin 1966080 -> 1966080 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 185 -> 185 bytes .../osichat/__pycache__/admin.cpython-312.pyc | Bin 1059 -> 1322 bytes .../osichat/__pycache__/apps.cpython-312.pyc | Bin 493 -> 493 bytes .../__pycache__/consumers.cpython-312.pyc | Bin 8908 -> 35435 bytes .../__pycache__/models.cpython-312.pyc | Bin 6257 -> 17699 bytes .../__pycache__/routing.cpython-312.pyc | Bin 520 -> 842 bytes .../osichat/__pycache__/urls.cpython-312.pyc | Bin 613 -> 599 bytes .../osichat/__pycache__/views.cpython-312.pyc | Bin 3318 -> 2933 bytes .../__pycache__/serializers.cpython-312.pyc | Bin 1176 -> 2378 bytes .../api/__pycache__/urls.cpython-312.pyc | Bin 371 -> 448 bytes .../api/__pycache__/views.cpython-312.pyc | Bin 960 -> 2444 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 4896 -> 4896 bytes ...atroom_created_by_and_more.cpython-312.pyc | Bin 1530 -> 1530 bytes ...ove_chatroom_guest_session.cpython-312.pyc | Bin 1278 -> 1278 bytes .../0004_chatroomguest_room.cpython-312.pyc | Bin 1019 -> 1019 bytes ...5_alter_chatmessage_member.cpython-312.pyc | Bin 1194 -> 1194 bytes ..._alter_chatmessage_content.cpython-312.pyc | Bin 798 -> 798 bytes .../0007_chatmessage_room.cpython-312.pyc | Bin 996 -> 996 bytes ...008_alter_chatmessage_room.cpython-312.pyc | Bin 992 -> 992 bytes .../__pycache__/0009_visitor.cpython-312.pyc | Bin 1138 -> 1138 bytes ...ft_date_visitor_visit_date.cpython-312.pyc | Bin 907 -> 907 bytes .../0011_visitor_country.cpython-312.pyc | Bin 805 -> 805 bytes ...12_alter_visitor_reference.cpython-312.pyc | Bin 782 -> 782 bytes ...reference_visitor_referrer.cpython-312.pyc | Bin 721 -> 721 bytes ...tmessageattachment_message.cpython-312.pyc | Bin 1030 -> 1030 bytes ...ter_chatmessageseen_member.cpython-312.pyc | Bin 0 -> 1516 bytes ..._chatmessageseen_seen_date.cpython-312.pyc | Bin 0 -> 822 bytes ...ted_chatroom_terminated_by.cpython-312.pyc | Bin 0 -> 1437 bytes ...est_mobile_number_and_more.cpython-312.pyc | Bin 0 -> 2556 bytes .../0019_visitorlog_visitor.cpython-312.pyc | Bin 0 -> 1026 bytes .../0020_chatroomreview.cpython-312.pyc | Bin 0 -> 1340 bytes ...021_chatroomreview_details.cpython-312.pyc | Bin 0 -> 786 bytes .../0022_visitorlog_title.cpython-312.pyc | Bin 0 -> 803 bytes ...owser_name_visitor_os_name.cpython-312.pyc | Bin 0 -> 952 bytes .../0024_chatotification.cpython-312.pyc | Bin 0 -> 1227 bytes ...ification_chatnotification.cpython-312.pyc | Bin 0 -> 707 bytes .../0026_visitor_region.cpython-312.pyc | Bin 0 -> 806 bytes ...0027_chatnotification_type.cpython-312.pyc | Bin 0 -> 849 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 196 -> 196 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 187 -> 187 bytes .../__pycache__/admin.cpython-312.pyc | Bin 3623 -> 3387 bytes .../__pycache__/apps.cpython-312.pyc | Bin 499 -> 499 bytes .../__pycache__/consumers.cpython-312.pyc | Bin 9772 -> 9772 bytes .../custom_context.cpython-312.pyc | Bin 6102 -> 6106 bytes .../__pycache__/decorators.cpython-312.pyc | Bin 1318 -> 1318 bytes .../__pycache__/forms.cpython-312.pyc | Bin 1270 -> 1270 bytes .../__pycache__/models.cpython-312.pyc | Bin 29882 -> 30301 bytes .../__pycache__/routing.cpython-312.pyc | Bin 633 -> 633 bytes .../__pycache__/urls.cpython-312.pyc | Bin 6275 -> 6275 bytes .../__pycache__/views.cpython-312.pyc | Bin 35611 -> 36156 bytes .../add/__pycache__/urls.cpython-312.pyc | Bin 3354 -> 4016 bytes .../add/__pycache__/views.cpython-312.pyc | Bin 31217 -> 33953 bytes osinaweb/osinacore/add/urls.py | 5 ++- osinaweb/osinacore/add/views.py | 38 +++++++++++++++-- .../__pycache__/serializers.cpython-312.pyc | Bin 1181 -> 1547 bytes .../api/__pycache__/urls.cpython-312.pyc | Bin 290 -> 452 bytes .../api/__pycache__/utils.cpython-312.pyc | Bin 2545 -> 2545 bytes .../api/__pycache__/views.cpython-312.pyc | Bin 188 -> 3751 bytes .../delete/__pycache__/urls.cpython-312.pyc | Bin 1984 -> 1984 bytes .../delete/__pycache__/views.cpython-312.pyc | Bin 7758 -> 7758 bytes .../edit/__pycache__/urls.cpython-312.pyc | Bin 3277 -> 3277 bytes .../edit/__pycache__/views.cpython-312.pyc | Bin 27061 -> 27061 bytes .../__pycache__/urls.cpython-312.pyc | Bin 415 -> 415 bytes .../__pycache__/views.cpython-312.pyc | Bin 643 -> 643 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 3804 -> 3804 bytes ...ions_staffprofile_and_more.cpython-312.pyc | Bin 3960 -> 3960 bytes .../0003_milestone.cpython-312.pyc | Bin 1505 -> 1505 bytes .../__pycache__/0004_epic.cpython-312.pyc | Bin 1447 -> 1447 bytes .../0005_staffprofile_image.cpython-312.pyc | Bin 779 -> 779 bytes .../__pycache__/0006_note.cpython-312.pyc | Bin 1685 -> 1685 bytes ...ct_id_alter_project_status.cpython-312.pyc | Bin 1058 -> 1058 bytes ...8_alter_project_project_id.cpython-312.pyc | Bin 837 -> 837 bytes ...9_alter_project_project_id.cpython-312.pyc | Bin 821 -> 821 bytes .../0010_remove_note_date.cpython-312.pyc | Bin 672 -> 672 bytes ...r_alter_note_text_and_more.cpython-312.pyc | Bin 1808 -> 1808 bytes .../0012_projectrequirement.cpython-312.pyc | Bin 1295 -> 1295 bytes .../0013_projectfile.cpython-312.pyc | Bin 1410 -> 1410 bytes ...014_alter_projectfile_file.cpython-312.pyc | Bin 790 -> 790 bytes .../0015_projectcredentials.cpython-312.pyc | Bin 1416 -> 1416 bytes ...dentials_projectcredential.cpython-312.pyc | Bin 722 -> 722 bytes ...e_alter_project_start_date.cpython-312.pyc | Bin 966 -> 966 bytes .../0018_epic_status.cpython-312.pyc | Bin 866 -> 866 bytes ...date_alter_epic_start_date.cpython-312.pyc | Bin 924 -> 924 bytes .../__pycache__/0020_task.cpython-312.pyc | Bin 1942 -> 1942 bytes ...rprofile_business_and_more.cpython-312.pyc | Bin 2856 -> 2856 bytes ...ustomerprofile_customer_id.cpython-312.pyc | Bin 847 -> 847 bytes .../0023_task_assigned_to.cpython-312.pyc | Bin 1005 -> 1005 bytes .../0024_task_task_id.cpython-312.pyc | Bin 793 -> 793 bytes .../__pycache__/0025_status.cpython-312.pyc | Bin 1576 -> 1576 bytes ...e_status_user_status_staff.cpython-312.pyc | Bin 1128 -> 1128 bytes .../0027_alter_status_staff.cpython-312.pyc | Bin 1046 -> 1046 bytes ...8_remove_projecttype_color.cpython-312.pyc | Bin 682 -> 682 bytes .../0029_alter_reference_date.cpython-312.pyc | Bin 791 -> 791 bytes .../__pycache__/0030_tag.cpython-312.pyc | Bin 919 -> 919 bytes ...1_alter_staffprofile_image.cpython-312.pyc | Bin 797 -> 797 bytes .../__pycache__/0032_point.cpython-312.pyc | Bin 1429 -> 1429 bytes ...nt_date_workingon_and_more.cpython-312.pyc | Bin 1219 -> 1219 bytes ...nt_date_completed_and_more.cpython-312.pyc | Bin 1275 -> 1275 bytes .../0035_business_business_id.cpython-312.pyc | Bin 829 -> 829 bytes ...lter_staffprofile_position.cpython-312.pyc | Bin 1160 -> 1160 bytes ...move_staffprofile_position.cpython-312.pyc | Bin 714 -> 714 bytes ...taffprofile_staff_position.cpython-312.pyc | Bin 1029 -> 1029 bytes ...taffprofile_staff_position.cpython-312.pyc | Bin 1054 -> 1054 bytes ...0040_staffprofile_staff_id.cpython-312.pyc | Bin 829 -> 829 bytes .../0041_dailyreport.cpython-312.pyc | Bin 1467 -> 1467 bytes ...omerprofile_email_and_more.cpython-312.pyc | Bin 1173 -> 1173 bytes .../0043_businesstype.cpython-312.pyc | Bin 955 -> 955 bytes ...ove_business_business_type.cpython-312.pyc | Bin 686 -> 686 bytes .../0045_business_type.cpython-312.pyc | Bin 1019 -> 1019 bytes .../0046_task_requirement.cpython-312.pyc | Bin 1015 -> 1015 bytes .../0047_task_status_date.cpython-312.pyc | Bin 920 -> 920 bytes ...r_customerprofile_business.cpython-312.pyc | Bin 1074 -> 1074 bytes ...r_customerprofile_business.cpython-312.pyc | Bin 1042 -> 1042 bytes ...by_projectrequirement_date.cpython-312.pyc | Bin 1374 -> 1374 bytes ...051_alter_task_requirement.cpython-312.pyc | Bin 1045 -> 1045 bytes .../0052_note_project.cpython-312.pyc | Bin 998 -> 998 bytes .../0053_pointactivity.cpython-312.pyc | Bin 1289 -> 1289 bytes ...nt_date_completed_and_more.cpython-312.pyc | Bin 926 -> 926 bytes .../0055_alter_point_status.cpython-312.pyc | Bin 921 -> 921 bytes ...ter_pointactivity_end_time.cpython-312.pyc | Bin 806 -> 806 bytes ...otal_time_minutes_and_more.cpython-312.pyc | Bin 1105 -> 1105 bytes ..._total_time_hours_and_more.cpython-312.pyc | Bin 904 -> 904 bytes ...059_alter_task_requirement.cpython-312.pyc | Bin 1050 -> 1050 bytes ...0_pointactivity_total_time.cpython-312.pyc | Bin 806 -> 806 bytes ...date_alter_task_start_date.cpython-312.pyc | Bin 927 -> 927 bytes .../0062_connection.cpython-312.pyc | Bin 1566 -> 1566 bytes ...0063_alter_connection_date.cpython-312.pyc | Bin 773 -> 773 bytes .../__pycache__/0064_reaction.cpython-312.pyc | Bin 1596 -> 1596 bytes ...ter_customerprofile_status.cpython-312.pyc | Bin 909 -> 909 bytes ...business_business_customer.cpython-312.pyc | Bin 1165 -> 1165 bytes ..._customerprofile_confirmed.cpython-312.pyc | Bin 848 -> 848 bytes ...profile_confirmed_and_more.cpython-312.pyc | Bin 1053 -> 1053 bytes ..._projectfile_file_and_more.cpython-312.pyc | Bin 1178 -> 1178 bytes ...le_staff_position_and_more.cpython-312.pyc | Bin 1755 -> 1755 bytes ...jecttype_department_ticket.cpython-312.pyc | Bin 2358 -> 2358 bytes ...treaction_ticketattachment.cpython-312.pyc | Bin 2736 -> 2736 bytes ...073_alter_ticket_regarding.cpython-312.pyc | Bin 927 -> 927 bytes ...ed_ticketupdate_date_added.cpython-312.pyc | Bin 740 -> 740 bytes ...attachment_ticket_and_more.cpython-312.pyc | Bin 1334 -> 1334 bytes .../0076_alter_reference_date.cpython-312.pyc | Bin 782 -> 782 bytes ...oject_active_projectstatus.cpython-312.pyc | Bin 1737 -> 1737 bytes ...alter_projectstatus_status.cpython-312.pyc | Bin 933 -> 933 bytes ...e_alter_project_start_date.cpython-312.pyc | Bin 917 -> 917 bytes .../0080_project_logo.cpython-312.pyc | Bin 822 -> 822 bytes .../0081_status_task.cpython-312.pyc | Bin 1030 -> 1030 bytes .../0082_pinnedproject.cpython-312.pyc | Bin 1499 -> 1499 bytes ...ition_jobposition_and_more.cpython-312.pyc | Bin 829 -> 829 bytes .../0084_staffposition.cpython-312.pyc | Bin 1484 -> 1484 bytes ...sition_start_date_and_more.cpython-312.pyc | Bin 937 -> 937 bytes ...s_connection_terminated_at.cpython-312.pyc | Bin 950 -> 950 bytes ...087_remove_connection_date.cpython-312.pyc | Bin 710 -> 710 bytes .../0088_connection_date.cpython-312.pyc | Bin 777 -> 777 bytes .../0089_connection_connected.cpython-312.pyc | Bin 782 -> 782 bytes ...ed_at_connection_last_seen.cpython-312.pyc | Bin 738 -> 738 bytes ...0091_alter_connection_user.cpython-312.pyc | Bin 1184 -> 1184 bytes ...onnected_connection_online.cpython-312.pyc | Bin 725 -> 725 bytes ...93_connection_disconnected.cpython-312.pyc | Bin 808 -> 808 bytes .../0094_customuser.cpython-312.pyc | Bin 1049 -> 1049 bytes .../0095_delete_customuser.cpython-312.pyc | Bin 642 -> 642 bytes .../0096_status_date_time.cpython-312.pyc | Bin 785 -> 785 bytes ...us_date_remove_status_time.cpython-312.pyc | Bin 755 -> 755 bytes ...ojectcredential_identifier.cpython-312.pyc | Bin 0 -> 776 bytes ...redential_usedfor_and_more.cpython-312.pyc | Bin 0 -> 950 bytes ...ojectcredential_date_added.cpython-312.pyc | Bin 0 -> 823 bytes ...ate_projectfile_date_added.cpython-312.pyc | Bin 0 -> 732 bytes ...ctfile_date_added_and_more.cpython-312.pyc | Bin 0 -> 1434 bytes ...rojectfilealbum_date_added.cpython-312.pyc | Bin 0 -> 811 bytes ...0104_projectfilealbum_file.cpython-312.pyc | Bin 0 -> 814 bytes ...ojectfile_project_and_more.cpython-312.pyc | Bin 0 -> 2115 bytes ...106_alter_projectfile_file.cpython-312.pyc | Bin 0 -> 851 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 198 -> 198 bytes .../templates/add_templates/add-ticket.html | 38 ++++++++++++++--- .../details_templates/customer-details.html | 2 +- .../details_templates/project-details.html | 5 ++- .../details_templates/task-details.html | 4 +- .../templates/listing_pages/tickets.html | 9 ++++ .../__pycache__/__init__.cpython-312.pyc | Bin 186 -> 186 bytes .../osinaweb/__pycache__/asgi.cpython-312.pyc | Bin 1093 -> 1093 bytes .../__pycache__/routing.cpython-312.pyc | Bin 444 -> 444 bytes .../__pycache__/settings.cpython-312.pyc | Bin 3775 -> 4210 bytes .../osinaweb/__pycache__/urls.cpython-312.pyc | Bin 1591 -> 1591 bytes .../js/tickets/add-ticket-no-customer.js | 39 ++++++++++++++++++ .../__pycache__/__init__.cpython-312.pyc | Bin 185 -> 185 bytes .../support/__pycache__/admin.cpython-312.pyc | Bin 1067 -> 1067 bytes .../support/__pycache__/apps.cpython-312.pyc | Bin 493 -> 493 bytes .../__pycache__/consumers.cpython-312.pyc | Bin 15869 -> 15869 bytes .../__pycache__/decorators.cpython-312.pyc | Bin 1451 -> 1451 bytes .../__pycache__/models.cpython-312.pyc | Bin 15765 -> 15825 bytes .../__pycache__/routing.cpython-312.pyc | Bin 639 -> 639 bytes .../support/__pycache__/urls.cpython-312.pyc | Bin 1515 -> 1515 bytes .../support/__pycache__/views.cpython-312.pyc | Bin 4884 -> 4884 bytes .../add/__pycache__/urls.cpython-312.pyc | Bin 698 -> 698 bytes .../add/__pycache__/views.cpython-312.pyc | Bin 2392 -> 2392 bytes .../__pycache__/0001_initial.cpython-312.pyc | Bin 7003 -> 7003 bytes ...icket_departments_and_more.cpython-312.pyc | Bin 2266 -> 2266 bytes .../0003_remove_ticket_status.cpython-312.pyc | Bin 686 -> 686 bytes ...ened_date_ticketconnection.cpython-312.pyc | Bin 1973 -> 1973 bytes ...er_ticketconnection_ticket.cpython-312.pyc | Bin 1019 -> 1019 bytes ...etconnection_type_and_more.cpython-312.pyc | Bin 909 -> 909 bytes ...07_alter_ticketstaff_staff.cpython-312.pyc | Bin 1081 -> 1081 bytes ...08_alter_tickettask_ticket.cpython-312.pyc | Bin 988 -> 988 bytes ...etconnection_terminated_at.cpython-312.pyc | Bin 815 -> 815 bytes ...icketconnection_terminated.cpython-312.pyc | Bin 710 -> 710 bytes .../__pycache__/__init__.cpython-312.pyc | Bin 196 -> 196 bytes 318 files changed, 127 insertions(+), 13 deletions(-) create mode 100644 osinaweb/osichat/migrations/__pycache__/0015_chatmessageseen_guest_alter_chatmessageseen_member.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0016_chatmessageseen_seen_date.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0017_chatroom_date_terminated_chatroom_terminated_by.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0018_visitorlog_remove_chatroomguest_mobile_number_and_more.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0019_visitorlog_visitor.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0020_chatroomreview.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0021_chatroomreview_details.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0022_visitorlog_title.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0023_visitor_browser_name_visitor_os_name.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0024_chatotification.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0025_rename_chatotification_chatnotification.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0026_visitor_region.cpython-312.pyc create mode 100644 osinaweb/osichat/migrations/__pycache__/0027_chatnotification_type.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0098_rename_emailorusername_projectcredential_identifier.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0099_remove_projectcredential_usedfor_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0100_projectcredential_date_added.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0101_rename_date_projectfile_date_added.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0102_remove_projectfile_date_added_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0103_alter_projectfilealbum_date_added.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0104_projectfilealbum_file.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0105_remove_projectfile_name_remove_projectfile_project_and_more.cpython-312.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0106_alter_projectfile_file.cpython-312.pyc create mode 100644 osinaweb/static/js/tickets/add-ticket-no-customer.js diff --git a/osinaweb/addressbook/__pycache__/__init__.cpython-312.pyc b/osinaweb/addressbook/__pycache__/__init__.cpython-312.pyc index 0231cefdc638f6e3d69b95a98e1b9c81807d1087..b06e4f66270537e186ed67687b603831247d1314 100644 GIT binary patch delta 19 ZcmdnXxR;UpG%qg~0}wQRIX01d696@s1^@s6 delta 19 ZcmdnXxR;UpG%qg~0}w1USU!<^696&@1w8-& diff --git a/osinaweb/addressbook/__pycache__/admin.cpython-312.pyc b/osinaweb/addressbook/__pycache__/admin.cpython-312.pyc index 910e2fe7d895e9bcbbd8d567223793ffbef184d0..f862ac4fdea6d00e64e44d6a8bb843a387da3867 100644 GIT binary patch delta 20 acmdnWx|NmtG%qg~0}wQRIku5|6%znEY6cPj delta 20 acmdnWx|NmtG%qg~0}w1USiX^a6%znA7X?oM diff --git a/osinaweb/addressbook/__pycache__/apps.cpython-312.pyc b/osinaweb/addressbook/__pycache__/apps.cpython-312.pyc index e03c9b17c303fefca0cce46d4080f0a3997d7b10..bb814d1d197023a520643d6f36e29873ae98173d 100644 GIT binary patch delta 20 acmey#{F9mcG%qg~0}wQRIku7e9U}lm!3Nm? delta 20 acmey#{F9mcG%qg~0}w1USiX__9U}liZUz@&CAQh00fO+j&0;FX9fT>y9Is# delta 20 acmZo-Z(`>@&CAQh00avSmT%-PX9fT-Xau_e diff --git a/osinaweb/addressbook/migrations/__pycache__/0002_country_addressbook.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/0002_country_addressbook.cpython-312.pyc index 63b778a45ad6c03dec0fc228ca1d4a210c61225b..9fb59deca876eff3494eab911903e9683a1e74fa 100644 GIT binary patch delta 20 acmdnax1EpsG%qg~0}wQRIku5ohaCVs0|l=D delta 20 acmdnax1EpsG%qg~0}w1USiX^4haCVnumtP? diff --git a/osinaweb/addressbook/migrations/__pycache__/0003_contact.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/0003_contact.cpython-312.pyc index d701008686c005775db8713600818386ba230612..bf06df32412d0a124d33dc9afca0cbccf9871e03 100644 GIT binary patch delta 20 acmZqTZsO)X&CAQh00fO+j&0;FX9WN>O$CSm delta 20 acmZqTZsO)X&CAQh00avSmT%-PX9WN+`UJ%Q diff --git a/osinaweb/addressbook/migrations/__pycache__/0004_socialmedia.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/0004_socialmedia.cpython-312.pyc index 5f4c31e7f932bfb299b4881720add073311776bd..bb8118d7e6af40f7537289452afa9a8d79f01784 100644 GIT binary patch delta 20 acmX@ld7hK|G%qg~0}wQRIku7e2nzr}3H diff --git a/osinaweb/addressbook/migrations/__pycache__/0005_socialmedia_addressbook.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/0005_socialmedia_addressbook.cpython-312.pyc index 8b1bec257807f46ee2b6ab015f2a3bc24ad8097c..733b4e798003681b9567be9c7c284bd2ce605c90 100644 GIT binary patch delta 20 acmaFC{(_zRG%qg~0}wQRIku7eE;9f_s|K(D delta 20 acmaFC{(_zRG%qg~0}w1USiX__E;9f>SOx6> diff --git a/osinaweb/addressbook/migrations/__pycache__/__init__.cpython-312.pyc b/osinaweb/addressbook/migrations/__pycache__/__init__.cpython-312.pyc index f55654ec699ed6dded38d1ab7a3bd9e9b6a0a531..f3981a6c885a20af5ab6fa14a38530567065606f 100644 GIT binary patch delta 19 ZcmX@Xc!H7pG%qg~0}wQRIX01dF90_$1|a|d delta 19 ZcmX@Xc!H7pG%qg~0}w1USU!<^F90*21zrFE diff --git a/osinaweb/billing/__pycache__/__init__.cpython-312.pyc b/osinaweb/billing/__pycache__/__init__.cpython-312.pyc index 6120a0c5693f1dc77f3109c4dc34229a7fea6e63..67b6c86dc5f8ac8554259c652b0c9b3ff518af24 100644 GIT binary patch delta 19 ZcmdnVxRa6lG%qg~0}wQRIX01d9RM{11@r&_ delta 19 ZcmdnVxRa6lG%qg~0}w1USU!<^9RM+O1u*~s diff --git a/osinaweb/billing/__pycache__/admin.cpython-312.pyc b/osinaweb/billing/__pycache__/admin.cpython-312.pyc index 945ac226f5dd99e2e499813adab12b99a3b8c042..c2296fd298d5a21f55fdec844cc94280ef83e270 100644 GIT binary patch delta 20 acmZqRXyD*J&CAQh00fO+j&0=r$_xNBj|KVw delta 20 acmZqRXyD*J&CAQh00avSmT%<#$_xN7JOwuZ diff --git a/osinaweb/billing/__pycache__/apps.cpython-312.pyc b/osinaweb/billing/__pycache__/apps.cpython-312.pyc index 26a89be0449a12ef8143dd544b66b2de4d12b9ab..bcbe9b1c1906b112c6ebbb86cfd9af0e6a006762 100644 GIT binary patch delta 20 acmaFM{Fa&fG%qg~0}wQRIku7e5hDOY;Rdw; delta 20 acmaFM{Fa&fG%qg~0}w1USiX__5hDOUjs@}n diff --git a/osinaweb/billing/__pycache__/models.cpython-312.pyc b/osinaweb/billing/__pycache__/models.cpython-312.pyc index 02d686531c52de5f308c9d602b51f94254f2f68d..5fbca3bfc59192f417983939545891d7398dbc67 100644 GIT binary patch delta 27 hcmdlKu_=Q4G%qg~0}wQRIku5IOp)={<|M@nTmXN)31|QS delta 27 hcmdlKu_=Q4G%qg~0}w1USiX@vOp)=|<|M@nTmW{}2*m&Z diff --git a/osinaweb/billing/__pycache__/urls.cpython-312.pyc b/osinaweb/billing/__pycache__/urls.cpython-312.pyc index 8821f5b6840be4002aa8131838860b2cf1b9e884..b04974d75948fedd61a2cc2e2755af52dc56a730 100644 GIT binary patch delta 20 acmX@bd5V+!G%qg~0}wQRIku5|KMMdqLlb4rH$G%qg~0}wQRIku78o(}*(`UVRC delta 20 acmX>lb4rH$G%qg~0}w1USiX_lo(}*#rv*p= diff --git a/osinaweb/billing/add/__pycache__/urls.cpython-312.pyc b/osinaweb/billing/add/__pycache__/urls.cpython-312.pyc index 25716f6e424a33e9706a2ae8d209495aa49958c1..0d5b1c760fbe229ae5e58d135ee78d5fb118db0e 100644 GIT binary patch delta 48 zcmZ3-v4(^9G%qg~0}#Y;98a6Mk++taapvT1W>@BiEF6=sGW&50bMrGbauh)c C2Mfml delta 50 zcmZ3(v5tfHG%qg~0}#}fuSlD{k++taarWeHW>?ma91N_SlP@#-af|cvGc|G-i31e@ E0AFSdTmS$7 diff --git a/osinaweb/billing/add/__pycache__/views.cpython-312.pyc b/osinaweb/billing/add/__pycache__/views.cpython-312.pyc index a9c7844ff79f1df7bef330fbbcd605a5eed2967e..0158838e98b30b094801f9d1b2a09efea46a2f8a 100644 GIT binary patch delta 20 acmdlSzd4@!G%qg~0}yx{9^c5lLLUG@=mqrv delta 20 acmdlSzd4@!G%qg~0}!mczG5Ty3Vi@a<_6yY diff --git a/osinaweb/billing/delete/__pycache__/urls.cpython-312.pyc b/osinaweb/billing/delete/__pycache__/urls.cpython-312.pyc index 14143fa1dbdadf0bf261b637e0977e6fe625b0e1..bd8dceede172a73f29a0a79c15222b10172699d6 100644 GIT binary patch delta 20 acmX@ka-4ictnuictnugM7;&CAQh00fO+jxFS71pqHa1rY!M delta 19 ZcmeC?>gM7;&CAQh00avSmM`RH1pq6x1Wo_| 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 index 10e330d024a837b6a75acfe17ef095b0dc40867d..3629ddfc7c2b7f438286934bcb7b7e35ee3c0d66 100644 GIT binary patch delta 20 acmdnMy@8wiG%qg~0}wQRIku5|DJuXweFhQ$ delta 20 acmdnMy@8wiG%qg~0}w1USiX^aDJuXsDg{pf diff --git a/osinaweb/billing/migrations/__pycache__/0013_alter_invoice_date_created.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0013_alter_invoice_date_created.cpython-312.pyc index fe26b04b5cd43604b5cff06e12235d80f2e44b18..f2f7d8c52a3c05c79c499e8c66e30fbaf471eece 100644 GIT binary patch delta 20 acmbQkHiwP-G%qg~0}wQRIku5okQo3rrv*v? delta 20 acmbQkHiwP-G%qg~0}w1USiX^4kQo3nR0M|r diff --git a/osinaweb/billing/migrations/__pycache__/0014_servicepayment_comment.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0014_servicepayment_comment.cpython-312.pyc index 9c116df2f9fd00d8903a34e430283a94fa99bd5a..e23cbee413554b356108ef317023f5c353b4875c 100644 GIT binary patch delta 20 acmbQoHjj<_G%qg~0}wQRIku5om>B>z_XSV@ delta 20 acmbQoHjj<_G%qg~0}w1USiX^4m>B>vqy&us diff --git a/osinaweb/billing/migrations/__pycache__/0015_order.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0015_order.cpython-312.pyc index bbc6565cca7955f2e2611bdcb0d0b784baa7ea4f..98cddac0a1f535c98f1c031d349535923ef8bb63 100644 GIT binary patch delta 20 acmeyt{ezqPG%qg~0}wQRIku7eEh_*#07}} diff --git a/osinaweb/billing/migrations/__pycache__/0017_service_order.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0017_service_order.cpython-312.pyc index 5856ff2616677c10fec2cfbe27275d9e52609bb0..e83790963b9416c74b07f70eb1254ceb6b5cfe17 100644 GIT binary patch delta 20 acmcc1ewUs5G%qg~0}wQRIku7e5;Fin^9GLq delta 20 acmcc1ewUs5G%qg~0}w1USiX__5;FijpaskT diff --git a/osinaweb/billing/migrations/__pycache__/0018_alter_order_status.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0018_alter_order_status.cpython-312.pyc index 365e1c06329b5518e600caf1b60bca5b2e847f08..b3debdfecaab116a57e4097581a2636896c15d2b 100644 GIT binary patch delta 20 acmeyx_KS`CG%qg~0}wQRIku5IpBVr}R|aGN delta 20 acmeyx_KS`CG%qg~0}w1USiX@vpBVr_1O=f0 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 index 2b3ed633deb179029b4aa085e1e0d81006a76a7f..65b7942905d111fdc5ad348d465ecd4929a396d1 100644 GIT binary patch delta 20 acmcbpa#4l*G%qg~0}wQRIku78O$Y!(HU=~R delta 20 acmcbpa#4l*G%qg~0}w1USiX_lO$Y!!;{|a5 diff --git a/osinaweb/billing/migrations/__pycache__/0020_orderitem.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0020_orderitem.cpython-312.pyc index 8fb7539fd9b365b86365384ca5989dda40d1ece1..1ec9c4f98b5e92b4123af839ce28f2c9f9f3dc67 100644 GIT binary patch delta 20 acmX@Wb%2ZeG%qg~0}wQRIku78lobFx*#*D= delta 20 acmX@Wb%2ZeG%qg~0}w1USiX_llobFth6Mcp 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 index 6f71258c1db81fac6544dd9cd18d97b2f584a8da..7d9e8a60fa44becd3f953349417c5922bf319b19 100644 GIT binary patch delta 20 acmaFD@q~l>G%qg~0}wQRIku5Ik_7-lFa{?8 delta 20 acmaFD@q~l>G%qg~0}w1USiX@vk_7-g-34R- diff --git a/osinaweb/billing/migrations/__pycache__/0022_remove_item_cancelled_at_remove_item_created_at_and_more.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0022_remove_item_cancelled_at_remove_item_created_at_and_more.cpython-312.pyc index 7bcb037710b0f55b362d998c968f4d22e2550bdb..90500b7051191539ce4bd62d0ef09d5552bd5d36 100644 GIT binary patch delta 20 acmeyz@sET1G%qg~0}wQRIku6zm<0evKn8UH delta 20 acmeyz@sET1G%qg~0}w1USiX_Fm<0eq?FF&` 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 index 8687f0ef9cde11ebbb5d85d8e4e4fa582f0fad3b..a2c0661fd454199708dc618ab141d5b7f77e99f6 100644 GIT binary patch delta 20 acmcb`b&HGpG%qg~0}wQRIku78pA`T==>`q} delta 20 acmcb`b&HGpG%qg~0}w1USiX_lpA`T+mIX@y 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 index 7ddc2b5f8e52427e9068a5f9f5353a7bd5cca279..5adc1db3802e7bb1a6a7676d5b485d08837180e4 100644 GIT binary patch delta 20 acmZ3*x{8(iG%qg~0}wQRIku5|J`(^rvIX$~ delta 20 acmZ3*x{8(iG%qg~0}w1USiX^aJ`(^nUj;4z 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 index a3784c6053a6667dd68b867ef97c4ec5ce1a472b..cea47d705c2ce89bf6d7f72c25cdb98717d63331 100644 GIT binary patch delta 20 acmbQiIfIk?G%qg~0}wQRIku6zmjwVfbOpr# delta 20 acmbQiIfIk?G%qg~0}w1USiX_FmjwVbAq4^e 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 index 2e126cfea77e2c34a423c12f9e1172b9ff65ea3e..6ee01f7253643dfb6066bab278b6270c9db213da 100644 GIT binary patch delta 20 acmX@Yc7%=lG%qg~0}wQRIku78k{JLz=LNz5 delta 20 acmX@Yc7%=lG%qg~0}w1USiX_lk{JLvlm!0( diff --git a/osinaweb/billing/migrations/__pycache__/0027_item_type.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0027_item_type.cpython-312.pyc index c808fd7d311191284fd04d26d90aa7218728cb66..6eb0d1a15fc5ed0f15c159fc4bb77796940e5a4e 100644 GIT binary patch delta 20 acmcc3cAJg+G%qg~0}wQRIku5IfEfTle+CBt delta 20 acmcc3cAJg+G%qg~0}w1USiX@vfEfThECoaW 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 index 0f1d8ee7d4448c955dd588cdab9718ea459f01fc..99722f4d7b9ee16ce09ca481bf97d5e8d8a3b62e 100644 GIT binary patch delta 20 acmbQvI-QmKG%qg~0}wQRIku6zhY0{Sx&^oZ delta 20 acmbQvI-QmKG%qg~0}w1USiX_FhY0{OX9V>C diff --git a/osinaweb/billing/migrations/__pycache__/0029_invoice_pdf.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0029_invoice_pdf.cpython-312.pyc index f63d1cd2d6a5d737d77cfe9b2cd9dab15e9babed..819d438e3a470d412008defe9b416eb6e6231d83 100644 GIT binary patch delta 20 acmbQjHieD*G%qg~0}wQRIku6TlNkUtX9Y3< delta 20 acmbQjHieD*G%qg~0}w1USiX^)lNkUp6a;So 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 index cc7cf6c7e3d6e8c93c01f46074c09b1a681ba921..6be7982091f270516d97b2de7d1a28c1555ac849 100644 GIT binary patch delta 20 acmcb{evO^`G%qg~0}wQRIku7eG&2A|+Xi|7 delta 20 acmcb{evO^`G%qg~0}w1USiX__G&2A^hy}L* diff --git a/osinaweb/billing/migrations/__pycache__/0031_alter_invoice_invoice_number.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0031_alter_invoice_invoice_number.cpython-312.pyc index c97bbf250c6047262a1a393cb367c0b1f6244324..7b5756010cc943fe8eacf099c3053a81aae84c0e 100644 GIT binary patch delta 20 acmZ3=dp 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 index 80d0fb7f57f843244ddb1d9bc7a457eaf49f43d8..56655deec54c8ad013bd7b9bfd55524b9b35dc64 100644 GIT binary patch delta 20 acmeBX?`G#d&CAQh00fO+j&0;_U;!B8 diff --git a/osinaweb/billing/migrations/__pycache__/0040_rename_due_at_orderitem_end_at_and_more.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0040_rename_due_at_orderitem_end_at_and_more.cpython-312.pyc index c20ef3e338afb2b9c3e72d49fcbeb01d2995256f..4a6d268a2dd7a02d67f6aab7deb7d3e8f4b9d9b1 100644 GIT binary patch delta 20 acmZ3@zM7r;G%qg~0}wQRIku5|0W$zPBL(>Y delta 20 acmZ3@zM7r;G%qg~0}w1USiX^a0W$zK&;>RC diff --git a/osinaweb/billing/migrations/__pycache__/0041_orderitem_active.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0041_orderitem_active.cpython-312.pyc index c7d7fdd6bd757935d086d93b36c22fd498068508..cec07373bd46d12f827e0a29109e45fb3472adeb 100644 GIT binary patch delta 20 acmZ3+wv3JYG%qg~0}wQRIku5oni&8%Hw9<_ delta 20 acmZ3+wv3JYG%qg~0}w1USiX^4ni&8yG%qg~0}wQRIku5|J2L=1y9Pc0 delta 20 acmX@aeu$m>G%qg~0}w1USiX^aJ2L<|Xa#!! diff --git a/osinaweb/billing/migrations/__pycache__/0046_remove_orderpayment_order_orderpayment_order.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0046_remove_orderpayment_order_orderpayment_order.cpython-312.pyc index c9695f18e84dd3b0300eab1157dbb1ee80227c54..2759b455459dfbf7086d8009fdc62a5c3df041a0 100644 GIT binary patch delta 20 acmaFI@s5N0G%qg~0}wQRIku5InFRntzy?JC delta 20 acmaFI@s5N0G%qg~0}w1USiX@vnFRnpZ3Th= diff --git a/osinaweb/billing/migrations/__pycache__/0047_paymenttype_description_paymenttype_image.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0047_paymenttype_description_paymenttype_image.cpython-312.pyc index 1ba78b8596434a269c954cfc53d7869773c4d226..8079fe3445f04fa8ff4c26c5b8d74ae79b9ea6c3 100644 GIT binary patch delta 20 acmaFO{+gZpG%qg~0}wQRIku7e0W$zZBL=wu delta 20 acmaFO{+gZpG%qg~0}w1USiX__0W$zU&;|AY diff --git a/osinaweb/billing/migrations/__pycache__/0048_remove_order_status_orderstatus.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0048_remove_order_status_orderstatus.cpython-312.pyc index 15d2a5c7bdd9cb9ef97dd570a5a3969abc6aa9d1..f5ceda7abe87e67ae4d58fce9740b2d2a4481314 100644 GIT binary patch delta 20 acmbQsGna?^G%qg~0}wQRIku5ohz$TYss&sC delta 20 acmbQsGna?^G%qg~0}w1USiX^4hz$TUR|J^= diff --git a/osinaweb/billing/migrations/__pycache__/0049_rename_due_date_order_date.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0049_rename_due_date_order_date.cpython-312.pyc index 0309f76e5c05301359f8ccba5bb1c5b89426a57c..fe82ea08d6029bfa89a9cd418a578fe9caeb31ba 100644 GIT binary patch delta 20 acmX@jdYYB{G%qg~0}wQRIku7e022T{+6Ghr delta 20 acmX@jdYYB{G%qg~0}w1USiX__022T@hXs)U diff --git a/osinaweb/billing/migrations/__pycache__/0050_remove_orderpayment_type_orderpayment_type.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0050_remove_orderpayment_type_orderpayment_type.cpython-312.pyc index 251ed9faad4ce5f4dcf0b5757ec302ef430509e2..05d50e165d21eb16864fd93992686ef3ac2a62cd 100644 GIT binary patch delta 20 acmbQsK9`;QG%qg~0}wQRIku5|5;Fid^99cU delta 20 acmbQsK9`;QG%qg~0}w1USiX^a5;FiZpal#7 diff --git a/osinaweb/billing/migrations/__pycache__/0051_alter_orderpayment_amount.cpython-312.pyc b/osinaweb/billing/migrations/__pycache__/0051_alter_orderpayment_amount.cpython-312.pyc index 7c4ca5f94d14227b8fac51575732caa105099dbe..c22ef7ac57d9c2170d0c4396daaba856dbfdf6d7 100644 GIT binary patch delta 20 acmZ3^ww#UoG%qg~0}wQRIku5oh8X}jUj=Ib delta 20 acmZ3^ww#UoG%qg~0}w1USiX^4h8X}f3aJ^(n01;hXV diff --git a/osinaweb/customercore/__pycache__/apps.cpython-312.pyc b/osinaweb/customercore/__pycache__/apps.cpython-312.pyc index 15e0a814f8b203101a518868a8c6d9dc8b66866b..808d71f155977ce93e29d01f6e5ff255ac7139c0 100644 GIT binary patch delta 20 acmeyv{D+zQG%qg~0}wQRIku7eBO?GtIR@eY delta 20 acmeyv{D+zQG%qg~0}w1USiX__BO?Go<^~@C diff --git a/osinaweb/customercore/__pycache__/custom_context.cpython-312.pyc b/osinaweb/customercore/__pycache__/custom_context.cpython-312.pyc index 7acb6e4465e8c65f82e68e19b3cdc3afd741a137..92771815f837a1ee88df24e3cac79af94f3c3250 100644 GIT binary patch delta 20 acmZ24vR;JyG%qg~0}wQRIku5og$n>Xo&}}= delta 20 acmZ24vR;JyG%qg~0}w1USiX^4g$n>TO9bNp diff --git a/osinaweb/customercore/__pycache__/decorators.cpython-312.pyc b/osinaweb/customercore/__pycache__/decorators.cpython-312.pyc index 19aaa9dcb249ae74fe972488686ec50e75e9e230..404760ee36be67ad072b8e727496144e180e71b4 100644 GIT binary patch delta 20 acmdnawVjLmG%qg~0}wQRIku5ohZO)jaRsFS delta 20 acmdnawVjLmG%qg~0}w1USiX^4hZO)f9t7e5 diff --git a/osinaweb/customercore/__pycache__/models.cpython-312.pyc b/osinaweb/customercore/__pycache__/models.cpython-312.pyc index 3ff0284b34c82535d9392e1eb2a92be61c7bb51d..9bef09903b0dc22629839ee4151a55ed3bb51882 100644 GIT binary patch delta 19 ZcmdnPxQCJZG%qg~0}wQRIX01dBLFpX1^oa3 delta 19 ZcmdnPxQCJZG%qg~0}w1USU!<^BLFeu1v&r# diff --git a/osinaweb/customercore/__pycache__/urls.cpython-312.pyc b/osinaweb/customercore/__pycache__/urls.cpython-312.pyc index 9b6d798c9141386f9443355b3f97ca99e88e1333..8163ef661bf19af9ebdb9c558d2b0b84cd169d80 100644 GIT binary patch delta 20 acmZ1?wnU8kG%qg~0}wQRIku5ok{bXzF9nJK delta 20 acmZ1?wnU8kG%qg~0}w1USiX^4k{bXu+yut} diff --git a/osinaweb/customercore/__pycache__/views.cpython-312.pyc b/osinaweb/customercore/__pycache__/views.cpython-312.pyc index e744807817cf995f1526578b26a156875947f148..6f501b2baaa56df41686d0ec08ed8ab45efc3f22 100644 GIT binary patch delta 20 acmexf@V$WhG%qg~0}wQRIku5I#{vLT{0C$J delta 20 acmexf@V$WhG%qg~0}w1USiX@v#{vLPsRp3{ diff --git a/osinaweb/customercore/add/__pycache__/urls.cpython-312.pyc b/osinaweb/customercore/add/__pycache__/urls.cpython-312.pyc index 1602532c511e85ad2dccb927faaea42c427b1f0b..e081da5e9f6f1107dee596fd9ec2e3e9b6005aa3 100644 GIT binary patch delta 20 acmZ3>yq1~!G%qg~0}wQRIku5|5hDOO;RW>o delta 20 acmZ3>yq1~!G%qg~0}w1USiX^a5hDOKjs-FR diff --git a/osinaweb/customercore/add/__pycache__/views.cpython-312.pyc b/osinaweb/customercore/add/__pycache__/views.cpython-312.pyc index fd10fa8e9bcd5213adef25fe1202d22650e7c3fc..bfcf12f560a31288773d1bb1fd401865e7f2a89c 100644 GIT binary patch delta 20 acmaDQ|4N?wG%qg~0}wQRIku7eK0g3QX9n^B delta 20 acmaDQ|4N?wG%qg~0}w1USiX__K0g3M6b3H< diff --git a/osinaweb/customercore/migrations/__pycache__/0001_initial.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0001_initial.cpython-312.pyc index 5a90c29c989f94b6099612286c73652e4ceecf9a..3d71d68e64d5ad8d53cd36858d9bd4efa5e118c9 100644 GIT binary patch delta 20 acmZ3cxJ;4zG%qg~0}wQRIku5|wg3P<5C$s% delta 20 acmZ3cxJ;4zG%qg~0}w1USiX^awg3P)y#;6h diff --git a/osinaweb/customercore/migrations/__pycache__/0002_alter_ticket_department.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0002_alter_ticket_department.cpython-312.pyc index 6d95bccbc83041ad6a730ea88b42530a4d6a609f..2fb6f9c45368f4b677b5f1278214dbb8871062ab 100644 GIT binary patch delta 20 acmdnZv73YYG%qg~0}wQRIku78fCT_M$OWtb delta 20 acmdnZv73YYG%qg~0}w1USiX_lfCT_Ibp+`E diff --git a/osinaweb/customercore/migrations/__pycache__/0003_ticket_customer_ticket_status_and_more.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0003_ticket_customer_ticket_status_and_more.cpython-312.pyc index f4e03b8b06921b5c75195f69393eb54a004437f8..b76207272dfe4d46c0eb2e9ae6f4f8827f6bed3e 100644 GIT binary patch delta 20 acmeC->EYo%&CAQh00fO+j&0;-WCH*-0tG1m delta 20 acmeC->EYo%&CAQh00avSmT%-{WCH*&uLNcQ diff --git a/osinaweb/customercore/migrations/__pycache__/0004_ticket_ticket_number_and_more.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0004_ticket_ticket_number_and_more.cpython-312.pyc index 6e3f4abdf1e6f6f353f6e72ab421f4e048c77608..f319966727095fd24572061e9e7d546ee9a442e6 100644 GIT binary patch delta 20 acmaFO`I?jaG%qg~0}wQRIku7e0Sf>`YzDpn delta 20 acmaFO`I?jaG%qg~0}w1USiX__0Sf>?83p?Q diff --git a/osinaweb/customercore/migrations/__pycache__/0005_ticketstatusupdate.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0005_ticketstatusupdate.cpython-312.pyc index 00b30682ee0fa2b8aae8457e8401d6bc871f4b4a..4ecc268574bdf009a01482537787f4d198224a86 100644 GIT binary patch delta 20 acmX@icbJd+G%qg~0}wQRIku78f*k-o;|0?I delta 20 acmX@icbJd+G%qg~0}w1USiX_lf*k-kkOdF` diff --git a/osinaweb/customercore/migrations/__pycache__/0006_ticketupdate_read.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0006_ticketupdate_read.cpython-312.pyc index ef77f6352b3a7a42aa998a338a32e21e132a6902..7e6af2b4d6f07f4536e2bc9de1b4d2e6221b192e 100644 GIT binary patch delta 20 acmbQkHiwP-G%qg~0}wQRIku5okQo3rrv*v? delta 20 acmbQkHiwP-G%qg~0}w1USiX^4kQo3nR0M|r diff --git a/osinaweb/customercore/migrations/__pycache__/0007_remove_ticketupdate_read_ticketupdatereadstatus.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0007_remove_ticketupdate_read_ticketupdatereadstatus.cpython-312.pyc index cc62a9bb98612aadf2b16973dcdf5a27d19b8431..e0edad4bd22bec884063a5135836de0c20685e84 100644 GIT binary patch delta 20 acmaFQ`<|EkG%qg~0}wQRIku7e2^#=Ko(9wa delta 20 acmaFQ`<|EkG%qg~0}w1USiX__2^#=GO9l}D diff --git a/osinaweb/customercore/migrations/__pycache__/0008_rename_ticketupdatereadstatus_ticketread.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0008_rename_ticketupdatereadstatus_ticketread.cpython-312.pyc index ea558ccbdc8fe926c05eeb55c74d6c33de151c75..bff1e4260d5e9191e20b55b834dc59516d8042f1 100644 GIT binary patch delta 20 acmbQjK82n8G%qg~0}wQRIku6zlNkUuiv_d* delta 20 acmbQjK82n8G%qg~0}w1USiX_FlNkUqI0W$k diff --git a/osinaweb/customercore/migrations/__pycache__/0009_alter_ticketattachment_ticket.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0009_alter_ticketattachment_ticket.cpython-312.pyc index 99d4c9a8f3b0732e5f65ad76a0efe2dae507d037..d06cbda3a4397df5410654f9508247832462040f 100644 GIT binary patch delta 20 acmZ3+v5bTJG%qg~0}wQRIku5ongswjfCX&; delta 20 acmZ3+v5bTJG%qg~0}w1USiX^4ngswfEd;6n diff --git a/osinaweb/customercore/migrations/__pycache__/0010_rename_ticketreaction_ticketupdatereaction.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0010_rename_ticketreaction_ticketupdatereaction.cpython-312.pyc index 46ebef409c0b875963ac71727efab89c3c8d219b..3392406e678aba2c6a4e56b25acdaeaa9736846f 100644 GIT binary patch delta 20 acmaFJ`jD0TG%qg~0}wQRIku7e8WR9QN(Pny delta 20 acmaFJ`jD0TG%qg~0}w1USiX__8WR9L_XX1c diff --git a/osinaweb/customercore/migrations/__pycache__/0011_ticketupdatereaction_customer.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0011_ticketupdatereaction_customer.cpython-312.pyc index 726f219fcabaff72b00e8821826a25ef079b2df5..7738cdbdfca7de85cc864c9acb3c45c192e5bed7 100644 GIT binary patch delta 20 acmX@id6<*?G%qg~0}wQRIku5|2MYi`ECxmZ delta 20 acmX@id6<*?G%qg~0}w1USiX^a2MYi>*#(0D diff --git a/osinaweb/customercore/migrations/__pycache__/0012_ticket_ticket_members.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0012_ticket_ticket_members.cpython-312.pyc index 4959d241999487df4235570348541d143480d372..6228a4fc0a2beb66407cd433ef7ed946c6ad0c3a 100644 GIT binary patch delta 20 acmeC;=;Gi$&CAQh00fO+j&0=r&kO)I9|jlz delta 20 acmeC;=;Gi$&CAQh00avSmT%<#&kO)D%mq~d diff --git a/osinaweb/customercore/migrations/__pycache__/0013_alter_ticket_ticket_members.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0013_alter_ticket_ticket_members.cpython-312.pyc index eb4beb01d84424f346c6c44957c402d61e67568c..96969bd17e77619f0ee614cc943198f39813af98 100644 GIT binary patch delta 20 acmZo?Z)fK|&CAQh00fO+j&0D+Yi7 delta 20 acmcb?euJI+G%qg~0}w1USiX__EHeN+*af`+ diff --git a/osinaweb/customercore/migrations/__pycache__/0015_rename_department_ticket_departments.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0015_rename_department_ticket_departments.cpython-312.pyc index 88018d230f152654a63eb33af1eb29c59c1cb743..8f27770adf859214e15d688e9f9eb93b7cc493af 100644 GIT binary patch delta 20 acmey$`jwUYG%qg~0}wQRIku7e6%znOY6j8( delta 20 acmey$`jwUYG%qg~0}w1USiX__6%znK7X}Xi diff --git a/osinaweb/customercore/migrations/__pycache__/0016_rename_ticketstatusupdate_ticketstatus.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0016_rename_ticketstatusupdate_ticketstatus.cpython-312.pyc index 3f19c0212a2ef5a6ad0cbea833b6594e4c8eea82..e317ef719dc1bc969ed690c405297e8a1c7b7e20 100644 GIT binary patch delta 20 acmZo=Z)N8`&CAQh00fO+j&0*-GX;kL delta 20 acmZo=Z)N8`&CAQh00avSmT%;)Vg>*&-~_|~ diff --git a/osinaweb/customercore/migrations/__pycache__/0017_tickettask.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0017_tickettask.cpython-312.pyc index 958e25e35abc354c2b7874a2ad2e4f0733450bc0..316c7a7a071153e09d322d5812d137415d81b694 100644 GIT binary patch delta 20 acmey&^_h$NG%qg~0}wQRIku5IgB1Wo(FR!n delta 20 acmey&^_h$NG%qg~0}w1USiX@vgB1Wkeg&2Q diff --git a/osinaweb/customercore/migrations/__pycache__/0018_alter_ticketattachment_file.cpython-312.pyc b/osinaweb/customercore/migrations/__pycache__/0018_alter_ticketattachment_file.cpython-312.pyc index 787cf33ba89e556c51ce2ce01c070f727d223b1b..9c801c29139f949623fe29cb08c2d53151b457db 100644 GIT binary patch delta 20 acmZ3Al$OlUR delta 20 acmaD+@uGtJG%qg~0}w1USiX@v)&>Ahbq0t4 diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index 28399a1eab9690241779bbf768febced50c48098..6a4633f77bd56933fe5824dc402769d9b5f01a6d 100644 GIT binary patch delta 702 zcmajdO;6Ks90zc^2gcK;h=2knOVooTBW>x!wuFSP8)FY;*~T_ljLW*V8)I!Z`nY+Z z0V9cCCLDIrMBV@gJ@m@K1mPs!y!i%{x8UD+G4bHxbNc=+-*0}FWm=ZmpNB5rEYR-D zp(Xv*DJP%2t9zcZTwLq4MPVz)c1pzv$w(-hGatnhX{3>=D@vx#ZANgZ7p*1mBArOl z1-hkm;-ap^qE)%O+=N$97{vl`Fo2?dI26XPFh(q4I7|c&FXW>O83G)D6L0};U>NWK zBfuyy28;s}_J!>Ix$hVqvF#gg^1aLTeTW~p`##a(um*d5-!uDb-**NrK6Ww=f;9~T zmYXJqn1V#|wGI(df&$4JZB6BM0+N4U4c?wl`;V@UeZVc?HZTd?0j7Yvz%(#pUmeee zSDXgqA9%jZ{%}D4lSylFuzEe~ox=ZahG7H_$wwdn?g96KIbhyiyXFNBucGyU7|^m*~oe|tqIZ?)$wUR+E+-qS<{^Wg`>@lH1sX6I}>1IJiUapy0mHFPzK3P?1 zD(00*+Wr>d1)gEC=Tmik35#cp{4;l?>$<}Pj#x!F#6Zdv-Swnhda{@6J5OV`D z&-UZ_yzlCnI5@X&f6wc+fQ6}nA!R!21iswqB@_7Km{=>eUz)(Tj**4s0fXA~D=YZa zrq4Mbs?dIF5+4xr1F--Q3j(na5DNpb2oQ?`vDo%glf+*Q!DqU{ zMRDGC-;3fvECIxlKr98s(%XG6%4}aJ!NpR=z;}~(6HhmH3YRUX82fv+6RZnasx}KY N#IbCzYLRWL1_1TbfsOzG diff --git a/osinaweb/osichat/__pycache__/__init__.cpython-312.pyc b/osinaweb/osichat/__pycache__/__init__.cpython-312.pyc index 443364d496caec1a7e0dc219b8f8123ec1989c04..11e7539ff48a34d8c1e7a0517c6a72b11a500534 100644 GIT binary patch delta 19 ZcmdnVxRa6lG%qg~0}wQRIX01d9RM{11@r&_ delta 19 ZcmdnVxRa6lG%qg~0}w1SSU!<^9RM+U1u_5t diff --git a/osinaweb/osichat/__pycache__/admin.cpython-312.pyc b/osinaweb/osichat/__pycache__/admin.cpython-312.pyc index 1b15a3ca756fb98d43557aedb5cd14c3bf5fe591..7f16a1229a5fd101ff5272957a31060d4e24f5c5 100644 GIT binary patch delta 178 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 delta 2404 zcmaJ?TWC~A7@pbtC1-Or=3<)LR&(M?Vv+; zQi!G0q(hrNiBca7`XH1-3q^csDHIB!fyl8!+lQ7w9~8GQKK1`+Q|kuxz<&FmZ~mG8 zI{*3dBl@^G@ROqW2t2{FH{)mg%Yic64Z7UW7_gDUB<5HkF(;#^ed2mWu^6SEe3#^1 zz`JvJx8yy*dvkb?WX5H+wNNwk09hY*k^XJ)VgEhc~(h#RIlZJCt)N^oo|LfdzD(gWc1vm#!{!u znazCI98qoD3;&iQHK%E-Htxq4=ad#rol&WL3#$Qf&mSz{c3kof&P4fef@v}FacSA8 z<(}5(QYKGZo?~MplDF)0T(dl!#Tn;}Tgp(>WRXOYWmkP?(WA*2kd{|t@vOK?p1|ou z819Ke?gB}I8wBG55!E}p6<_({?ki1~n||?CUK|uV8``{=-r~EYrnuWzPH%|b-q*LX zHr>tgV$KC}3zqRYuB2V6+wy?#=9sQ0IUdYC0FhODHe|1!nuJ0ylW|2fca?v&ukjS6 zs`zYgd!6Ohr%tnJ)399ega#UxN9QrdC#TYuGoIjvDgM}7UuD@-`umncM&>b09ycLq z)nPddro}~Vs4hPQ77YhL4LrO`jD;F#iTEJ2GLL~kqIm%RITnT&AYjUQApq1Tnq-!5 zSm!KpD)lx?TaIG}dNO_}G8sNLGGh6rIfJCez$;#c`xD?ReIT zUTo7q%=sMULux)p%P*^;{8x>`bIdR!(0jG$4L0Ea_1TQUYgo;DQDQ7*G{qu1fb1+8 zjO8BeA0O-=I>hVo984W=C8Uj5N>ZOnXlybymz;veEW(v-+2}wHp$>k=nE1A(rpsTs z*uLSfT=Q36GuHikFAm)=2`&w9lmypGf_LoeC2bdv-Y=|OD%~ioT`R1;Ilf-F|I(3c zwmQV`ZR-gP>Lmg2HZ=GKLJt7U0w#TvRgwN<9W6h0)Z}SBkz%p!F8AYRghnDN+mE

W8eSe~hjX>R6 zpzd1dH@n5(J+0ZE7?q*-^!_l9{jm8XfE<9YY|UrR@e`;oOM`Z@BMC-)blOblsqK!P zL=}WL;b#m1pkvkOSoNB?(ASZ5=_I;D7odGUOr>qA-O9&_a5S5RamG?S+q%A&_s&Zl z%xMh5W8i~?FnZJ?X8T$Lmxi;~6xY;z@o=Diehk%)16ag13a=*N*|J4zmnG;kb(!qn{l~m^J4spcDX^z z5RfxP1+-)F?3MGE&u0jTnV^HVEDf)WERSReh?xR$cc`YoLH8`}UI{ISkld3Ah(|*; T#Wvcz6kpMnwSNeRGQfWUQgk$* diff --git a/osinaweb/osichat/__pycache__/routing.cpython-312.pyc b/osinaweb/osichat/__pycache__/routing.cpython-312.pyc index d3612549baa2f6461cdf586266b649c0b189183f..df3e36751fff657ea38a08bdf9ff086eb2c0ea76 100644 GIT binary patch delta 351 zcmeBRImM=anwOW00SFqu97|iv$iVOz#DM`$DC6_5iR#51Obn@vDQu~16TLK<*&!51 zD*Hq)6^?Y)D2_@_O|FTH^tidpi}mx1Gm|qCOD3L^PpUFN@O2YYax?SvZHh~Ztcp{M zi!<}{;xkk1^ldWpN~}N{z`QDLppLT4;>?o#BDhg7tss?9Ij~|sP0ooQ%r)8lAvWIP z2Qo^M^K+enrUm8a=icIj%7j4-oNUh6#3cyy7SO8<#buKZGpdJo$j)G&&p(s@vV`Vk z7Ok5s92Yp%SIA%2bhxPLa9PvoGK(`<%z8)sb=#1Owjq~o!!EOggT>5t@Ljj?yJ+Ee W*&^UFOW+4?c1fm-45CH+K+^$}ym5E{ delta 126 zcmX@b*1@8FnwOW00SFcuEKj=%q#uJgFu(?7d@h@)Ud)ls6vbA_rpZ28jZtrMBBLy` zACUck(OiJvzc{lbIX~AqBe5hXKR&qcE>cW?qR^azW@AQ9MroZD dsn_-FFY4J}aErRa68(Xlg`cUByNC~{8vrA)6&C;i diff --git a/osinaweb/osichat/__pycache__/views.cpython-312.pyc b/osinaweb/osichat/__pycache__/views.cpython-312.pyc index 4228f7dd61a8c2e74031507bcc36c95eeb789d3a..be7ea50a6b682d0c4342e891397c96ac4a33b1f5 100644 GIT binary patch delta 1141 zcmah|O-vI(6rS1H|Lzt@Y+0n*5{X(d7$hW3_zMsdJ&4uD7>J3I&Vp@9A-gRFvMYKp z@xZ0d0Ssuk8cfva(Sr&a5>3Q#F+F+rAO_TggK@U7EkO-$vor6#`R04?&AjcbV7kB zDC{*Vsiy#SQ=oH*w4-4;NHq`r%~#|Fx&(P5ur2kUt9&zBUYk9>aBi)t@h-n90!5ph zczR`p|D;`5^F&wKDCuRj)*8C=b)ZY_j(|52sYgXikm(W8lE_g#4(X~ZrNj75i=6=& z=GXng7&N_@vB(qXJ2VCjHN&}Zj4+#ki#rUl{I_ZeLnoRI9k~BIQ#6>2!&{W3=xXIT z=~T8yFo$_8Sj-~3y1f91mS!QWxSiVqY|#?Qb>4?yvW6@O2T59}JzKs`m7=}#r6Y)eBcKVGFvmd9 z2O#~Xt9LrNqPM^fCQ^DqbjI|+uxAO6d8X3Sk4#l$ZxNe$**;HyG%oqWh zQbEzj6J{on9*PcRZiH3RDfMe%$#B}lsB-{CzFvp#=^6ZzAa`sX&|%9|D0;a)bfy`-ZRXCjkp|^7 z@25Vafy9+lC!D8NWPJoSs0xZPx5T#L5u8ow9Y#0xIW1x~lb1>$=z$mEdH^u$cSfV? L1}dpW7e)O6{anz4 delta 1421 zcmah}UuYvm7@ygl+1>1Jl3JTf^QSeXtu=k9wiu98TdhJBYZ~uBZILTWXD>}?lCryZ zIgj15!hs?cEGwMQ^I4A;Q3M|a3!)%MOAidoy$F31CEBV-??GphZ1#NeTXyF+-~8tL zzTfQ3{CVcDMC6BXSO(M);B%29)=2eJDM%Dr$R0k!|5H$Q*vp#SMZWqKb?-#rn58v6r4 zoNn}{-WTsRc?wU>emeD=^pmrrU~e=udzRmu;AV6DUJg^d!nymXZ{kNP@CL9tLIAKh zI;Uke+=V-xp2HE&24&!p6g29Tk=ofHes73c#K}+}q?KsGi z-LG-ly^H&%h(JUl*=Pr~X%4oS_?DG>d=#{usqYD~0qiFxpp}IKVFXel%Tb{IgElWZUds)!Zxs_ZSXO2LV=9Ij*L(s!xo5gHB2*f zih1>a;=|2?#a5?fHYQLJ}wW_v1HF~#1G^s zwo)Et&I|u0u$Cb2o?dP&t|o= z_j~hMNcTPQ(8bc4?n&%h)hfD?a_@=f$LXO!My*!yLPWFlWmB(O)FoDQ)6|N(Cu^3a zt*ln4+s#YKVYV2as$VIYR;gMnXx3^rX0RRPNzbin);SudGf>+8fKYQ&ww%1%ETn(nS@FAH)&?c7-!zz zPRYwb#U|YaAalPN1B|L%T3@SaWSPY=UZftD%G{#6a|0YH>6@>AI(A!`+IYV4<%LiN zz7|g^_}^*=db7QBqkcYiAF3zhmyiRI>W}|KcUnC zO5H{SM=12}$n}?wl=%M86W@;<^e-GLg?&``dl=%eCcQ?+PEB^5eH+QlrTFhscy2_@ zs$LH%Yt>?H!gRlqM+J7CjK|!cs3`56JP+W8~?P3-KG9VNu^T99%lPI`T z=|Wc$9zt>J%C-MNP**`A<6jULq7he$_rA7%jRxM~o_Ei^_q>}?{#8YLT`VdbeD|^! zI}0S%O#Vac`ij7Hxov64ZOid`Q=MTn4^%-aF{%PB02Sps#kLkd*_6wh`{91%2l4kc zxjKnym%k)SQ}UR9q#F;!qjLS>Oi+fg!3lu=Gujc(@t^5|a5jGFs`^B}?(ae?wf2ir zhq$Wp8}E_kMh#jN;DiW6?x<8hJ|WN{7nBg#*a}9*6jTgme6{G`PO!9eOt+D)Wnm^`D$eoa*ec94iCI*G@s}Iy#uH zXdYHnvHti8|6EZEiUI^&@}wGl+vwXK`)B>FEq_4`v-<-)ShFDj delta 224 zcmX>lG=r1xG%qg~0}xzmS&>%4IFV0+F>j)JK1(ILCdXt6#<0l+ENPQZFdFjlI%g!7 z1m)-Fx|gOFmrQ14>YuE`Dl&NqlM!R_R%A2t;sAcH~fE2eJG#*(PUk*u;aS1VHkFAVLU8{Nk|5%}*)KNwq7I1#%gIxL6-Z zd|+l|WW2*5bC*Hw3mY?|^o;E5a+Vk6EWa=SIbXO~fFjb@B~30$ntWvda=-=x0D?R< A3;+NC diff --git a/osinaweb/osichat/api/__pycache__/urls.cpython-312.pyc b/osinaweb/osichat/api/__pycache__/urls.cpython-312.pyc index 4d2e9409f498cb18b7e861f7a455bb03386b52d0..8efea74cdf2d271f6a5db5efed036c29e62b4608 100644 GIT binary patch delta 150 zcmey&bbwj?G%qg~0}ya>98X&Sq#uJgFu)3Be9oAt?#RW&kjj|Cn#!ETHPKI+ohgc~ zl1-C+Vu1!<6=zvyab`(=QL(-sP-M0i4^Mh(Njy|=;^8VTKA=I2KwNAx*_}~A<|YeA dhxCNh>tY%g#WXInXntU2=4Wc;F5&?y0RVl!BN6}r delta 98 zcmX@W{FzDpG%qg~0}w1SSe{l2q#uJgFu($3e0G_r?#PkO7{yx2s>wESiUzYEkUFI` hnTfH2ix;Sf5r~UbCbuvu@O)rq;%92)F5(6X0RW-U5*Ppg diff --git a/osinaweb/osichat/api/__pycache__/views.cpython-312.pyc b/osinaweb/osichat/api/__pycache__/views.cpython-312.pyc index c6067277d845a7a256778a1bfdb7fcc5d0122a5e..dc5ff19c0aea6f164edc1159fd2feafa177c3954 100644 GIT binary patch literal 2444 zcmbtVO>7fK6rP=3+iN>NY}R(05K1C}kR7n0qOC-$(yByI5J7=JOQ^ElcqhiL?M-La zghURtsvh9f<`h-xfkO`<(pwK4xfQ7wTef7nG7_l0a7z@VN}T#;?OnS8RYG0KZ{EEB zH}mH6@BRHD1Yc18ZQ*AhLVxm&`-vT9`&(evk%0^$kAA^In-e-5&f|hOD}q!6z0{FP zd0)Xl>vwE@`9MLQl?8+m5ew6z;0K$psVe!a5mDtPV`m53cH%JVE8uto(5a}o(AUzT)w-yIWC}h zV9JiAuj*ETFs5gSrWv|LG)9URv>ndt%+gAWT(;78sCUE)}3J zmYRZ~`DLys>W7S+Ud))OB3W|wovp(!k$G;!)1+WbQhZEUa&g%n;4{+APDdc63_o@b zNCo|+3^$eWnlj#05;Z09E33YLq5j@XRY}y9i%n&&rp#5fLe;!cSH7v7ZjC1ItUQn! zqmxx>xD}38V-wBT;aco)J$$4p9odGE=wE}!$Ho~v14dyTl~InH?D%r-v+I#}$81%2 z4KHsbS8-XOXUdp#Ih$cUa3fgEvHX2w&1ju4V-~b@`k((%n4nqhA$^ zOHkR#GG>$iud)rFo3FPjcv_u@{~8q~U%wI~upzsd{=46@m>cY#gUfm6Az6wmD~k{{ z=s|<8ER}t)ninJV6JGUOs^{nR3?LDnf>&wj)N;_lmPyfYIDm*f*Rt@wOqw?{8sI4K zZ3NLMJSzeQqrC=svanMh>(zGyfM>K<<9W{POzLSgEz63fe4h3}6LD<&(q^e>*>Wcg zi-%|wG`0w@*A852*G>63+Wv)X-XfIpr)A4VmRZ?i+M@gTR_R!FA&N#o9uLqMEOZYi zZ*j68h&|wD)7sfpZ{LL|yPp!aXcigaXQeZq6%dPmbeIR}!H?~RDXgF; z%A4z>Yol$1xqYy%q$;N$4aUAN-zql;_tpmY-VW6VCn~4@kcZZ;x73mK<7>y8YP_b# zH^v_xtA3_cPk-4+=naExA~cE5VOXZ|Wxkxiv-mkeM7V;t5SqAx0em7~;J<+qE&<9V z8GK8A8dQHgwIlk2V~xaAWBPnG%No;GEn(HwQd7NAQ*UsukHPD?A4PU|3wkJ3)p%V! z+f*;r)Jt{s^PBRM=$`etwYhq9e`TsQGI8hB{iBVMkE+ren|?Gj_9$|o897*s9NhAW zQGey^^APHb{ZOcf_f@5RbT=H*R6J~}4tl3eN|FHE$&!`LGkc(e5Y%&85uPvGc)~V6$i?(PiAF~VfNExo7~3{6jcNgTFFo(0i=q=fW$8j zo80`A(wtPgA~_%zWN@(#kodsN$jEqyLGccQ%v}b(I}B1E*%+9(I!rs%FEa{#WMXDC O`pnG0Bn)POO#=WO`X_P# diff --git a/osinaweb/osichat/migrations/__pycache__/0001_initial.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0001_initial.cpython-312.pyc index 278917b1e554668f31a28de3b506541f693b69e9..2c6ed233aa3970a5cc5d28d2bca77893e8264544 100644 GIT binary patch delta 20 acmZ3Wwm^;hG%qg~0}wQRIku5oR2Tp|*9E2k delta 20 acmZ3Wwm^;hG%qg~0}w1SSiX^4R2Tp^iv;8V diff --git a/osinaweb/osichat/migrations/__pycache__/0002_chatroom_guest_session_alter_chatroom_created_by_and_more.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0002_chatroom_guest_session_alter_chatroom_created_by_and_more.cpython-312.pyc index b755777bf3326e35c682c1500d2188e8eee044b2..cb6b3d6fbf03ab6fb7db3f468d66590564a4d558 100644 GIT binary patch delta 20 acmeyx{fnFXG%qg~0}wQRIku7eJu3i54F>Q4 delta 20 acmeyx{fnFXG%qg~0}w1SSiX__Ju3i0!3Hh> diff --git a/osinaweb/osichat/migrations/__pycache__/0003_chatroomguest_remove_chatroom_guest_session.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0003_chatroomguest_remove_chatroom_guest_session.cpython-312.pyc index 66ac2833f1fbfe2d1dc55003912bf34b7c569e63..6c1dec4d7b6bbda3cd0885e17621c0148926a522 100644 GIT binary patch delta 20 acmeyz`Hz$PG%qg~0}wQRIku7eGYbGmWCr&D delta 20 acmeyz`Hz$PG%qg~0}w1SSiX__GYbGi7zQ-} diff --git a/osinaweb/osichat/migrations/__pycache__/0004_chatroomguest_room.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0004_chatroomguest_room.cpython-312.pyc index 126ae9d0d035415366cd813a5ced70dea35aec60..f3a8c05de8b2546b3091048fa7287a15814e39b8 100644 GIT binary patch delta 20 acmey({+pfqG%qg~0}wQRIku7e12X_dqXy{! delta 20 acmey({+pfqG%qg~0}w1SSiX__12X_ZR|Y2l diff --git a/osinaweb/osichat/migrations/__pycache__/0005_alter_chatmessage_member.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0005_alter_chatmessage_member.cpython-312.pyc index f7fb3054ad4ce830a57fcd820fd77d01b60572d6..07e3515e355cad849d9554681ebfb16817c8e1fb 100644 GIT binary patch delta 20 acmZ3*xr&qfG%qg~0}wQRIku5|J_`UkLB>z_XSV@ delta 20 acmbQoHjj<_G%qg~0}w1SSiX^4m>B>vs|1b! diff --git a/osinaweb/osichat/migrations/__pycache__/0007_chatmessage_room.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0007_chatmessage_room.cpython-312.pyc index 66787c0ab6de9f760c95ef89b681fcb3977f014c..b9275af6dbbc6bf2d6d7175fa33ef955ceaca238 100644 GIT binary patch delta 20 acmaFD{)C(gG%qg~0}wQRIku5oiWvYn4+Uia delta 20 acmZ3=wv>(gG%qg~0}w1SSiX^4iWvYi!vv!M diff --git a/osinaweb/osichat/migrations/__pycache__/0012_alter_visitor_reference.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0012_alter_visitor_reference.cpython-312.pyc index 93500c017014d692bb8262918545f70916ca35c1..b8cfc67bdb57af3d8cb421ad3fbb84367e9f2693 100644 GIT binary patch delta 20 acmeBU>to|S&CAQh00fO+j&0;-W(EK>cLg8- delta 20 acmeBU>to|S&CAQh00fH+mT%-{W(EK-D+FEu diff --git a/osinaweb/osichat/migrations/__pycache__/0013_rename_reference_visitor_referrer.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0013_rename_reference_visitor_referrer.cpython-312.pyc index aa56cf927b7150e5de7459b532b8d42da380ca95..ec76ce382b9a048fa132b91ba402102a792928f9 100644 GIT binary patch delta 20 acmcb}dXbg;G%qg~0}wQRIku7e7!v?L$_8ct delta 20 acmcb}dXbg;G%qg~0}w1SSiX__7!v?Heg&ie diff --git a/osinaweb/osichat/migrations/__pycache__/0014_alter_chatmessageattachment_message.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0014_alter_chatmessageattachment_message.cpython-312.pyc index 58b7859b722b4114b3bbd19d643f2b06b805e460..5f441f50ef30bc25a5f28cd565cfabc130dcdbce 100644 GIT binary patch delta 20 acmZqUXyf2M&CAQh00fO+j&0=r%?toFe+CQy delta 20 acmZqUXyf2M&CAQh00b&!D>icfW(EK+Y6TMj diff --git a/osinaweb/osichat/migrations/__pycache__/0015_chatmessageseen_guest_alter_chatmessageseen_member.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0015_chatmessageseen_guest_alter_chatmessageseen_member.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c7cb143973f84b34b41b622926976336e993304e GIT binary patch literal 1516 zcmcgsy>HV%6hD8)c3Wse5#_4_TG3=6DH3c58Z`z4v`Ek(HA7EM?vf_;NANkS!UPfn zBVu7?1eJk50Tvh#5*9hdbIt% zh9v;Lb0JwuA8g%W;5k452{v$qvLJ9Q+M*+sB}XpHku2FtSrx%GfaJ#jDOhSANF42c zH`pC~l~WxltN!3HD^QK#AZWOCk`<}pH0r(;G(4A3)$tIv$zqk;C2Ob;wq6K4Dh$d3 z0%cJI>_#my+WlgsIlL<+XoH>Q3kh|xoQlql#?0OwiAZ8Py*a*@jWLpujE9;N`!&t< z0PffT?!V5EnT z8W1x3wv8DchVXvdviTVZeO@IxPS&kf%c?Lv!Y%9~>{dHIZ*qFDP+GbUOLxsXaN%~* zyhVq1EEYFcjHqavzMEsC8@15M2r?#>sACN&B? zYtdP1crDzYmRDelcgUY-`4YiC$+PSPRnN&6y=t2$l;jt!z_L4B;acb7JMu1GkL11> z;dNZ$Mm(+g-D%9Tie21WD_#s3<$Qk~BVC-&T&v@!SYXk{2b6qb+hfpEfu4C{bhVjK zn|Y~qGjm~P?u%B~)UNatXs2$%tlGz-a*i277J=;xBh3To6({GmE z-utlpZnA{1QT!QyxL339bz~^5KDyygCI6Sz=un)>T-9@HaVO|~234Y_i3@&ohs?#VTrR1! z&)ME-;kZqbtjLHMNt;q*6<`3g>Lt7$=fYIH}Z!_nzq IfC-V0zdG}C;s5{u literal 0 HcmV?d00001 diff --git a/osinaweb/osichat/migrations/__pycache__/0016_chatmessageseen_seen_date.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0016_chatmessageseen_seen_date.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c0b30e40abe9ed7e8852afaf2923fc84ce8f27cd GIT binary patch literal 822 zcmZWnzi-n}5WZ(Sj%_tiB193*SVefCZUx(iiFhYtxRl@5`@%=cTPfpzTy0R_wMf9eZH@iiUaDL%)cCt7{GTTt5aHn z*?|J*z=5*}V&=10^ECz>E!yMnZOd81`id7;#J%KjN?`en5~uGT*_zE$_+?(USwOVf=$y>HV%6hD8)b`vP30`VcfTG9rI1_odOM5P)Kv_UEf5*|1?xodFhk6^p1vQeo6 z8*KawMeV?Z7-4~d$pR_SF)%Q(1+@r?i90(c6;#~t?)Tok`@MJfJNrYSpaD8ox8E&Z z76ACloNPz~u(d$JbASNi9N=;$$1%)1yepW3E1F{B3yx&UJh%anxCW4fh1Q;oXgF`s z8f=)kj!=@nF<9b=65=Sby=GYAiRRkPz=~|&3yJLd2s>e=!Sb?^AAqe2$GXD6=fv9oU@<=Ua#WU1{mN#E$L~JN9o3DZ8J2Q{5OSJM5a?!e~b;jSzJ{yMC%g&JXRz zLn|W3&Ye4d5i;oFFtnOD#Mpz0K~{u`!j=NxcgbGn!w3hi?NNlPlt!vMmbXMiZ`pB5 z0#%r)3O&okG{&s7Xk!PF!f+d`cgWZdH{%aWQo!U43e*tQ_aLRhw1a$r9ab-;U169Huezq8l8Z>RkC-cR=o*p zcZ~%&e`nU1Bl$lWHV%n0gV1%>eZcON6lQ4?Rolf$jA+;W0NYLPHtrA^wJfjc6CTxx zl5|bqI8p8zRamLb%@NISy461%?g@WU!oIWHx0GR@#$k_{Jj2vF}#w>v?Oc9j_Rp@pxg zSp$6;s8dh0t}+=blj}-%>RLQ??V~c&Q!ex+VN8BJ*Utm>D9bn!D@S?gmO2 z#jakA_2PQiBAg@Ms#`gR&Y8yNJ$|h>4i-C6#Y^zr?2j6aE7|zw>d>yA#uqZ2;>brO!>xTkDd literal 0 HcmV?d00001 diff --git a/osinaweb/osichat/migrations/__pycache__/0018_visitorlog_remove_chatroomguest_mobile_number_and_more.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0018_visitorlog_remove_chatroomguest_mobile_number_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8c52caabf481e55120a4e52328743a3972ca1c7e GIT binary patch literal 2556 zcmb7GO-vg{6y9C0m-S)?dvP!XFceTEBNe9!YJ$?HqEK2|!ht3^__A6vW3yy`$n2Wb zIW-oT^B@*s3L4(@UkExLJa#Qcj(jT@xqRk!wq{?|t*lH*emX zncd%GF@+<)$EUv)j%AMfn>wvuI519Di1CyI9N7KBi7az=~xQk?t9e?PAGt05sk8O`qtu$-p`JfsB93K`zGw zE++uK$mc==2gOcv0RhlHY5PLEly3u({KG&x>^l&Bq#yv9vE%322LVJlk!~ESc&Ho* zXKMY7sh(FOyyyXc#*6jFD~1m*wA9H6al4h1wh6!hh#w|;V5vQ^276#7L98cMq$if# z6RZC%)=*mt0+VDS$?`hfp-+Ud?XmOtcC-VQ?to36$H2wIq1N6$Otmalr%ur&!7z(% zs)LdUM#v7i)Y9llE&dL*(f_TczC&%Svsy8lQ_JI-G>+VE9c6N^`yAKU+|oTff91*t z*EMP)$FVe^dr%Fp5YpvgVvlP77TD_1q-Xo84*YIlILif2-3m0 ze+L_77SjG_-B11QgM-WGMA<8>0)NI{?I8;I=mJuvKgdifZh4ZFv-^Zd|GEJ=P z(wSIX86FLis^EwT3jrb!7S)gn1~h?-W37c0OVIUj%yROEN#-e8c_yu}D~!#HX!Tix z6&JcLx#Bbf;665=gB}e88JY`#OemP0@W?d?J%|O*A?T$uoiK|6hoPk#<}n~R>895V zxkmMGG!xoIZ;PoM(+l|cC27_(gILyBM4E;bO(PMONXQzFYTAR6ZqoHp55OI0188p= z&_(pF#{Eky&$sEVjObm7qn{eZMN)wknhh-9-B|Oj*fOcd9m9gY+rI%VXE$)TUz{jX>s{899i1ZQ83Ecfx#Q%C+>tq!M*xE zdzTd3&5{gyn~s%Tb~Z~Ev^_Vwu6w#!rX9BazCT6Qh7Xw^xXgYC^OQuZnSK2R%96c$ zLksF*Iz8nR#E&XvNeyiCpB`=(YBN3&UY>y;$xsjMW4TlIWzm2E5;NzX}NiuI2e6$Nb z)CGU7KSnb)T9ro|G|o#6b$ah|U7fC~(?2GUhJGFSWu(5aT3uMJFKkp7HtGwx>O!uf z?bOr5=nZS1PO7tp-xeWsj50fB&J_1*VNT6+{rh&Q!nOg>K9$OsW-Xpx)y&^ zl^%bIuD7;GM#2$)N6vvfJ8%9G8#x2#{Li7e*6Bc3T4T|N)M8RMi1kYT$UoG#&`sjf n?+f=m(lkRn&;KiNeCAJX@>E*nd1+6n$7ibXnSVIyF^T^G!x&qI literal 0 HcmV?d00001 diff --git a/osinaweb/osichat/migrations/__pycache__/0019_visitorlog_visitor.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0019_visitorlog_visitor.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f61c89cf19b2fbe43db4c0a5043782efbf2ea520 GIT binary patch literal 1026 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 F{{l)V^ZNh* literal 0 HcmV?d00001 diff --git a/osinaweb/osichat/migrations/__pycache__/0024_chatotification.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0024_chatotification.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9a05cfe3e9ca9582c331ce1961ae2fa9cf5bfaa1 GIT binary patch literal 1227 zcmZ`&&1(}u6rbHB+w3N7HziUD(SX#-hT0VCNu^LNEsFM3FS!hp%rtJ@kGi{Q8&3)z zJoaY)0zuM)#~wY2;AMk_l({H)>MhWU;6>l;CN_%B!rS+o`Mr6c^Ko=kL$IEozF+?= zBlJ~(!AkX&lLb&-A&RJEAzP|Swp^7ZB%>8XfT6 zFAz<_m!iu4NIMyyuFEtXvGsqj)qSlEp2Y%QCgM%Rcv!ak065wIafIjn(KeJ-EMSgB z%zTW8CGf`2yf#w%`oIdZ&a`sI1Xmvn>IOv|aecG?hy>i2o4YoTw@lv*To2bgciU$k zc8JY>Z@PYj`S=|$a07GQtViYNvPsvLxqNrYNb)Rc1}?69j0BAG%%*4B#B1Tlti@Hh z(Il4nl=18q^J=co;tNxO8CdN2CnRD>&{wj9E#@?WM|{L)zE2vAr{J0fgMd>ti#U&Y z(rH>2*ZO`i3BWLR?YP^RPzuzfh@LC!CbOu&YGipD#|dGsVGI+~v>3)bi}8~tv7%G~ zQMSn(%AC5%d`}D>&)kW!c_2p26P@ST+h$`C@>~{Ia~100_0=`D6U6H15>#N#v{?)_ zca!y}^$j`^E&JhC9zsR@3bY`oyLM&Ctv7Av1b$_e1jK5I1BYCt8^me26^Cs{xDO+J zo7DtKG_Z2^8YsV|KHEDLU<%y>i38DC}LA*dc1*wZtFCpiZXZL#=QcEwjZu(*; zeeo!F=}YchI9cA^>Q0tBljVcthpDiNL&rOu^g}&3%AF4j<-O@{q1-8y-_{QcH$wg9 zQLYdcXZDu6#hFfV=2LMt)GL26^9M_Zg~d?6eU!Tpmge`ix~2I}Y5raQu(TZNE4_@8 zA3IH{s@6+nCY0y*yy-#Ut1w||T!C3yi`o-)Bu?$Jphes(p#4bSihI1^834so^ot;R b2}zQ^D@ZaBl~6n?VKj_ow`NH3jAN+GlunmCkZDWOXXh0@$m=;B2f)7BgbD)@^VW&-4d@pf>BWuzL?0=dBNcwp?DB>y=yi68afcApv zzKUJ|g9uTGEQ$sw!WOX3&@{Q60;)X4zdDyz6IDuQVh4`&4%!-lC09h5CST)9_I7t) zy(SupDm_XQ(}aBZ?p~m)1N|k5y2BM2B|OfVbU8aQs2{9Iml#Nh^a;rY9cN782ZS7t z<4nsnqin=DWjsk)S!he->Sv}84+LeI^u>tH{rCw}J;>d+@Jq>xGE|LMiO9qEA{pn5 zS7q3bt2mqJ10HYFVax|2R1FzErv{&}LoL#?h6}$#WxyUOO!50Z7|xfb-Wg2_{qxP{ zC{S*z?HpCI)I+doK@uf@UOdDSKX~!P{d^a E2TtL=k^lez literal 0 HcmV?d00001 diff --git a/osinaweb/osichat/migrations/__pycache__/0026_visitor_region.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0026_visitor_region.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b8a235563abc640e8147461854c13a61e49ca83b GIT binary patch literal 806 zcmY*XF>ljA6ney*>(AlLEiN9zj$_^rrt zRTf}+Ai)_>peTV91t>KF1AzfAff^@3O@_L7S+x3|n{ynP1Iw#iD&iTXo5pPs7IDV& z5~mquNgl0g0PF>sHYGR%1_7cF7!d-zt`>Z~1f&eA&T#j}|8d2rMJpHh+?bzS zRF|@3KYL(%PU*Z^Dw6W5Ssq87uqYqw?LB%-1mj`Kh>B!I+=?TuTyuUcP*y+0d0b?o z#DcZuY?qtzy0?1V@FPhWZx@}?;{7D?Olg4{o2bq*ruIrJW(jRbF*eb0LQ0nqnb%L4 z#A}4S?}v%jA{k{p#wp`b%yOYzF70QOzEC}crKt0~6AH~sH|w#5-``-WOt|9yyPS#K zm!lR@mimWT)K3{Na=#H4VKPt$JbXyIA#Z0sXGfYZsK!UEsgjf}{_21F(y}LH;e@nK z8L`_N2=zAfra=BwZYMCo;2fffY23n}UQb+bwm-WgduwQKjc?x@-`pJ6>ZkWdwfeAD z|JwXs{HpEGs+QwUOkBgquY|H!w`_P;>CC0=(xx^;TQI-$j!M(HcO|;A_velth;2#b fbBA1kiHQ*Uivf8vyoT_pJKES8ZtVO4Np$r;WKz_G literal 0 HcmV?d00001 diff --git a/osinaweb/osichat/migrations/__pycache__/0027_chatnotification_type.cpython-312.pyc b/osinaweb/osichat/migrations/__pycache__/0027_chatnotification_type.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5e6f12c8435f11e0a505653363d1f71e402dc4b9 GIT binary patch literal 849 zcmZ8gzi-n(6n1f&irLW(LRtF*2dU_q6D3Zx1$wG3HKj_;Z{@{eFUlx$S$ zz}T&S1EPNg0}D$cAtkz%savE3A$8)NlPJIq&);|Ny}R$eJAYqaw*bf4?Ays#0`OCk zcmby@6F;0E2?PlW6-rl3f^u3?@S)9;>w@|kz%TyF+{)zA9 zClOlK?{eAqc3zpR;l{|d7g(8;kX#!Wj%-yFy>{$-JVhhi4>aIWD{Bia>IDHNt=teA zxgp0n84D*q4_Mtcg+cRqN`*x!*7X98xJ2o@o*T$o$r$hQi1Entd74Q7h4GBBmvW6n zlhi~-NzR28clqKbKEo7~aMN>+Q=X&_9zXNq&^d^`UdW>?b?R>B27Q@`+#S|&qgL!h z{50nan&VU6ltt1ZXLZvK+W3V2ZyS}a?RNW#d^~xOAU(uz4ig>B?TM<~)jz(TSYU2` zvPMRAXjI1=_W1V3xKg`#FsjssmD=Fp^TENiMz4#b}6C8A$gqw?0U Ly!8u^$A?o`GskdQwI zkRb$8jta6wQTZTVD)(weh$tfiE?tv#7!|#VHIJ7F^JXwAiefcy@;RI`EKG{NSoL7> zlVB?QY9@ldDqs>(BEqpNm~c7v9!?n%W?Xu_aLP2`l-b6tSWm3iB~v*FdmT%VN#PF( z76yha(aBLPxV$w1r_3>&GJjZzPgU~xodB&bqwHRe4f8bOAiU@K=u*d*4PF}+y$tXU#olBlw0?75#RGhq)%S`wdmv4Sb zYK~({Ze||XrXq>Wzqyndxg3CsK$*7q>0}KaMP)uFM!pH9*TuCiifesg0CK)?FftlV VFug9Ud{J2W3j>g|xsGQgBLIoqd%gew literal 3623 zcmbVO%}?W25Px>;5KKY{EMLp=jar3mNiS7b)pn&VuyomlBA}`iRfFzWJL>$e*}qJh1kj)9*n$AR5sGgOr85AP`N|VutvWC=ih>5KY=6noNaK zyy4n>AH{qy!s+}^+)m= zh~zaG$?GO7sw3d>PCra*AW^fKZYbG?Eu-EH7z7UapDR7|*QICsm!%GBurtrlFgZNq}C?#(APp zFx4_G6u43-lr61lpq?xgo>WyM*y&zjR*4p!3#V`yu+-o(-FBGzBRNGfuRqOwVpC@4 zEL(SqRyj9k6{{H2&Mm8sYSeJURNvN0s<~z5O#0MY2TMZM*@B`R;l^6{FG6?rnCaUXkjIosBfPQR31wlDy1)4hJQTk|;pn+yfEwT%Uail;_? zP+q)s_eJu9-334QhzOB9zYaHHr%4j7LQE6kO2qaETnZ^Gb7jTSO~<2|mAK?UC-b=N zs7}>}m1=*^yHFNX+t#;Csudh7E3jb<82qAvN(ctT%$zQQI3QmMC3v?!tnZ)grHdy8 zPHXU=*c!=-%Nzt70W0sg$U)?iO^r<+vo=aL`j3qW0#DFEstC> z7Pc%Le&&+tux-gD6IWU0TrwEO{2$8$mkfoyW?eE6w#*;C?~*sdw#&RPf7@l&mosuX OkC#tg`jt$0H}G#on~|>o diff --git a/osinaweb/osinacore/__pycache__/apps.cpython-312.pyc b/osinaweb/osinacore/__pycache__/apps.cpython-312.pyc index 23b5d12254ee28e604a7605bcf12c2fa5a283aa9..00a7e033a7b31317192eb92153c8488320336880 100644 GIT binary patch delta 20 acmey&{F#~iG%qg~0}wQRIku7e1tS1N(FVr= delta 20 acmey&{F#~iG%qg~0}w1SSiX__1tS1Jg$4xx diff --git a/osinaweb/osinacore/__pycache__/consumers.cpython-312.pyc b/osinaweb/osinacore/__pycache__/consumers.cpython-312.pyc index df87d4b78c3a6fbb50eab08a612a7e6945fa2d09..94e76e233e14d9c080e8b09cf22e1bf43b44485d 100644 GIT binary patch delta 20 acmZ4Ev&M(}G%qg~0}wQRIku5oQ4Ih?A_ge{ delta 20 acmZ4Ev&M(}G%qg~0}w1SSiX^4Q4Ih-)&*w( diff --git a/osinaweb/osinacore/__pycache__/custom_context.cpython-312.pyc b/osinaweb/osinacore/__pycache__/custom_context.cpython-312.pyc index 50cca83aedfdf58df5304fce8d01e9f1abc38856..0481780e2da87041e064ee78e9a3211112fc18cf 100644 GIT binary patch delta 79 zcmcbne@mbDG%qg~0}wQRIhJ;JBkyuvM%&F>dCggPI9M4Nel#$AU}NAF-26@O1Pd#W hDWg95pqLW7Bp(mc2L`^$uf!g67Bez36~zNh007 delta 75 zcmcbme@&nFG%qg~0}w1SSe|xvBkyuvMw`uBdCgh4SXdbtel##V;1SsTL+}I(^8;zM e$w$SM*u{Bxm_9J@OnxW!n6rS9k*O#is2c!l>lM`i diff --git a/osinaweb/osinacore/__pycache__/decorators.cpython-312.pyc b/osinaweb/osinacore/__pycache__/decorators.cpython-312.pyc index 7b9aeb059097568a9a7e5d34a48357e47aa75014..9933bd1a3503f37a8112aed2a0fdef1e6d499828 100644 GIT binary patch delta 20 acmZ3+wTz4VG%qg~0}wQRIku5oniT*z$pvx% delta 20 acmZ3+wTz4VG%qg~0}w1SSiX^4niT*veFU%o diff --git a/osinaweb/osinacore/__pycache__/forms.cpython-312.pyc b/osinaweb/osinacore/__pycache__/forms.cpython-312.pyc index b8ca5d4d71a5cc924d18aec8b39990b8b9e632de..6cb8c51ec87dd9b99a63a7bb216dda62cd48894f 100644 GIT binary patch delta 20 acmeyy`HhqNG%qg~0}wQRIku7eH46YnBnICA delta 20 acmeyy`HhqNG%qg~0}w1SSiX__H46Yi*ajT{ diff --git a/osinaweb/osinacore/__pycache__/models.cpython-312.pyc b/osinaweb/osinacore/__pycache__/models.cpython-312.pyc index 56fd47cec84d284e126d7954545f37f814a72bdc..297fcb32fff39ed5a628396e8d783cad0c7f4948 100644 GIT binary patch delta 1323 zcmZ8gZA@Eb6u#%u7IynVyCU?1(gFj#v6ioj4u;5}HDRnWsX_?Q74EH;^#gA&P9hnd z5?!2e#S_DHKQ?2s5Q`IY|ENo5{Ii)XAtR|mnoJYp9}V%dzc41g?AmTEw3w@N2K(eI4cL^39&yhvyhauz%XH+m8u9&>ZI@yfe_E(<_SBR#~tV& zayi`6r2={Gy(-L`7#5z_H07#yEKS>%rgeY8(sq96Ab}Ch z({}iY^x+A7zSUE%BUf2AXTtVsE9P2F_-(QS@3k7xR8w22`>z|O#d5v^-#X#8bWnk` z`_efAA-ttPPoTF|u7@P#-*U zc-PvP>)Nq4Zd)7It2V<0Yd8KDs5AdxHeLyNl=p_;1kOg=LZJtnL$87jmxk@i&CnGV z+{)OgyDVD|_`9Pcux5toMA!4(Xqdw8J`&+f_nU5+zSKBo$-Bm)J}r& z8lK%ZhSIWUAf22~h%&j4$7rTH>ST+$k?2B(*t(QoCwu@rx+atG2wt45gJt}9@)kHS zKGi}jq(sh74^mjb8&gs6E9PmD)gPtSQQC-J%$^QFPPu)03~E$!H}#z&K3*$1D5V?y zGmEf>H)h^As)nPZB+*Gw=SJ$ItEUJQje`qPRF0=p>TF4BxG*Ij2fXjHalMpD;UZp| zO+v5o&#Vi;j!rSnIshSHvzSKZsJxKzMIsqlibSphS{!y|OLVc&je9SIU>$p2+#@AE z9QT@sXuMjQ;4Fnk=G7)p6argZ9YZkiG)Y~f}q#!ds~`fN&DItB0@UY&mhIu+YX z$HAxmC{>iK&c=^amfAD5bX6J^q2`pP@pY+zOOZW!nT$pGR5}J7EQBEU^4iksQi-AK klA#RRbIohsRd0zQ%aTb8?U!{|4euLD3|W@USSjcK1uZ6VUH||9 delta 1061 zcmZ8fZD?C%6u##+Nzm*j>w zx7Lcdh(-Em+Ia*WgIU}U2dPlKe?}Q@0}-Jp77HyAmFW)=#)diy&L8@oJ3;Vr@56bY z^PF>@b9ukN11rCRW7XlX3H!Wnr1xEu|KWWXG+LU@lQrefoWs#DCAotD*<%gjV z?+}F}f_!LBkR$Ja7r!%&n`Zk1Q9WV4)ekFpt8mOBSIMR&Gv4U*q4xy|8=}EJ(~_lJ z^{_?UF`QLPe7w5F?w${A*xhS(_c#87*R*wev=rU^kNno|DMhin z--QE5eQ=$-egZ?*X0Twlbsv7&`53nQY-ancIbgx9r@e3mcjw)0K0d1=DY;Z8tFq~$ z!t$w{Qn40N#o~<0)Tn-||82#oB+F JI{b9H{13`FE#?3K diff --git a/osinaweb/osinacore/__pycache__/routing.cpython-312.pyc b/osinaweb/osinacore/__pycache__/routing.cpython-312.pyc index 3b32acd730eaec79ebfeb3eb52dce0ef892b0e8d..ccd5bcbb927d21a1d3254f143d34b2e4f13e9619 100644 GIT binary patch delta 20 acmey#@{@)8G%qg~0}wQQIku5Ij|l)o?FL-{ delta 20 acmey#@{@)8G%qg~0}w1SSiX@vj|l)kngyBw diff --git a/osinaweb/osinacore/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/__pycache__/urls.cpython-312.pyc index 5a5ee9714e60189256c8bcfd4fd46acb7b31e8de..7a340928f2e6166e7bcd8d7d78cff2c862beff71 100644 GIT binary patch delta 20 acmZoRY&PUR&CAQh00d26j&0%FNHla0JN7~NTC1gK3o#Ld@Qrm6OF%-14vG>*{P22R| zWJ)+$YN&LsQzq|FaYM%DAF)4LqB6xFQ&a|mauYZ8354uzr6a$8w~FJ4 zCDRK&r;MVojl)n&xp+*qKKLcoiTc2B$S!<_(}oGo9Apf>(*tl4J8g&~7*cV+U2(MP zx3S!5*>z>9r@1Me<4PjU4KaU+$NUj-)7kF9qc}=l;-Pi@w9ZF-nHcM!{1Ux`l2npQ ze&QvP;wtjANm&utT%`WQ&#;JTmG{Cy8%MmfhHhMvT9KVzg3#hJ8|#X zWy(Tr=A|sW$1Xflpq3V5BRs*xL7c=z?4*NO755dP6vz+n6%tPAAOW~ITSfwSmHj;q zJ-@7_RlVt+)l@}Y%BNFVy=hNnUoI@_5LZs&ZjBy+)81$BEL>Fj9&JiVZ8@XP=ATnn z3TaJUq|2JV2ii#6rs;hkji$5eQ_K)PSCn{A8(>yr^u@Jm%aldWFqmL)lEEZ{;|xx~ zQ8k8=u%PNF2*0X9_;X5t|5T5VqUmvZh5A_t%)M3K5%-zmfFTZ;V$2X@HykxFRu_+% z;--_17w^jE;`v9FHZ3xjWd&~lrj|Hunao5AqoWCXsMe;C$6ep|_wm*LL*oAgbJ z>7!1^nY5m!&jO#Od)+F#ggFMU!0&0<)8Y&&?C3eLW{wF*jL;D?G-8BCU@TMPb2Phg zy?X&64SKREyT(@Qu$Dc*7if67x|zL?(5vv#Qk;K{3LjU0Ub=?RX&|{6PpI%EY~{W{ z%aB#u zKp%4$fbFp+Xpctfy|jfV`tYMuvryvEDGsMO^uy<92RQ?~(WKRj^bi$wR;?gYAae095So7;N5?@u|nV{Kwi!2f<8a$ya&`vdSPc2F{; zln!G2HnBrC-VM2UeS3({3v(DjNOHG9erOx_Rj6`cd}IvjCXY$od4D%dOy=avm|tG+ znIa?(y@?TPoOhXomx%^Bf#C!5TjDPvGw@}mQ=Y}dy7_NrjgUcjK|AC*OuU6W-69ik zC)py;BmW3JQ&r~oE8s#Mnf11_C zQH9)qq0F$H!GvUf$msH6{;7%^aHo`eqTC1Nvnd})7dY_#lsBRoAS+emiCMF9OVr!R T0NJw$V#P0!hrc86E_?Gopzzx^ diff --git a/osinaweb/osinacore/add/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/add/__pycache__/urls.cpython-312.pyc index 758436418f08c031ddc08af65833de749034048d..592b51fc796242ceb84476cef4956a3635446c16 100644 GIT binary patch delta 1561 zcmZwGTTCNW7zgl9Iqg!Gy>KbeE*4qZ+6!f9x6DGXTPR%+*;Q7&AX&EQWi3K$N_p5# zv@tP;2Orw7$r3dYpPVQUB=~@di9Q%L@nueOl1Yd>7=85N7+;NXzH?f^K$FgY=KFo$ znVHV?BkTTv>*q_C+H~6Ihbuqk|1s%wzrjKCV{GjFB^m0je&Jz#%B`;p^)(l4pRnyW zZ2LQGx7!64K_1II-siE$gYfv9hh5JGUf@yT@d=ObdHlhnyM=W|cw~8e$m1&>zwkha zbq*s}dtK1$azb_@*RmSizK?9pLYNgkK(=b5BdQgo=1reuHnwN{vV|WvI^$aB_(?}| zFMI1uXF}@?HT@*Blczc_2urp{Q|{!!9ukBF+uP;RYA#dpcYLN+EI zwWqULp!HHVz4qAN?9P;P*<7(wNUxolIXE`FrmtSF6f$q+Dq?1Hqf%PWmBmP*SP3p#|Y zQKS2c{#VqxWvNZ8-5%WSQTz#lCaFQI|7p}2Ok3A#Ikm@ydtCB61V!lufYx)s1keW1 zR~vg8ug7HzK{x0{C|9pS-CA2z%}#7~%F6_WXa`8A28zimFRH#d?3+^-3IwgvE}(8k z9(h_FPT}E{GXH>}G&KYDFmlUdsyB|k@$ZTREz(|)J|^P6S@q9hzqVeUpog?-0ki&p zN=dyz&@#OSbX}vZ-kRg-NPT4Y5kY=B1Z6v$7~CEEJoZ^k8J{6&mO22O45UNDx0k=Z ztjwIE7;eV#)TJOCfm zN3=RzmfGpWolf~aK@lnfi~`tp%&JAi7EzH>1l^{7kO0UtI|j8cfcpZ<#5_TFX!QnA z@V}uTwgi>%iv+zy$3Ud>Nw4|i9clcd; so9PT!m+VkI3G7KIGwhVJ4DYa2*^PU#)w@4JP=ekCdhcR+O8Y1M3v?0T1^@s6 delta 906 zcmZ{i%TE(Q9LIOtX+wD_k5XF7D|VZuKwA)2X=$4hs355iutt#x$Szvsl~N9vnCgv_ z>AHy!JXpQ3i5^IZNi`;V@SyQBlZ=^2!bKAg9t^~Pz}W@FgHH0v&VJ^*zu)AS-K<}C z@SjRb3K_bd`8TFs7ck5>?d5Pa9Bh8w12XTFW4ye;%j>-So|k{}N;S(XJ(L;BBg#9< z50*C@7>N~YlwHSU3aauUM*3nZ895v8$L8a7WtLQ$mH=QH3%b}+5)(sQO`b!p4^V8B~x^*f!Bl)(A zCqz-(&CZJxGj}Qu4<}QSD9xpl6Ej;c%~uSZJ)NAqEv0?k$+>i3a%nL=KP#oil497m zZJ`zRPnFM>^K9J~SNMcgJ{CRBMCmPA%A(7_FuO*UWp^0o4pXsL$e1iE_G}-i^q@)) zY>Q&h^92;F)MO=6#iJ@-y^BHU-=;d-xf+opsvU!qduFYWBby*rH?q3bQ49j~D`;s} z6QngWh*}5XP!fY_U3%0$(h@^0F&H1mU_vWjzs3=V7dgC}*D>hTQ*}8LX$YW(0E{Lu zxU9P-wUabQP;&&vu3<2`SD>}EWw}+a?9DA>(59yvbDbOEr(t-yAAawI zmBRQK2IG3DK4&G30%{cURK<05B9|as5OG1+GlaqL-?j3VgUQflq}+|l-739kH;t^+ ztyziPhwMHm#4tFcsoFIYscuKr?XWA3!MV(zSO>Cqz~BW8F8)X9a}bb2fT3XwE@>%e zc8S>h$mWNq&SEgAsj94%l(|ruOATSrMGdt0H#ySYi`siXgfSS=l`AI^w}9M2O`Z-* k8w9lQDn~p~()HohE70-S?2K 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 delta 2478 zcma)8du&rx7{BNCvGv`xdq1QM_Ncfq+?ayE+)EsfF&JSwC#Ck*tz&KH>7CJe%Z9H= zLJasBjf!zY5azb{xY4MI24|vCVG@8__la}onf-m6%`D(JTyyN!Pj()(=d;QeDz0R#47yn(D~ChuU`6S@!X(Au=&qKQ z+$(f159Ucr7g%fVG$7{gO?#m*!_~^yEQZr^o666e}F%M#>??7u_7d+ z!dWAfwR^#;GkHB|_#d+vu7uC)i`}s*O|QC74iE6hFqJe}-U`;5ve(1pktg z$OsOG0=|&MNfqmk#X`N2pyZRIWIPOCt=nLD4qa>2nuabNn}7$Jma=J>ZYoB6uW30u z4u3S&8z)GA8tR+t4X+`+U%jpQ7|VHqtWJU~f)@!?sA{cqO%r_y!E53M;>V$}+nw_= z(M1GS0@^SB3OvzTZg>OfA@%K6r>$5ivSXGQZD$ekj7iMrsgo-%cI`zOqmAO$L8 zLQHN{0^Z%x#7=>=YZE&IH+D4}zC`aLb-Zh%n3Im?rztO&;0&A z-y%7nx;G#8mt}*s+?>m+7Kpi0Vo=kYn+kDFv9zvP%8FYf>r-xz6n>II6JcK_UGPV;L+mJ+LC zRxG#<^cDTbkjtT=s2GawpnVIy)?TWpB8N8WaSjhyrDwU$xrM&-E$)D8Et2h)# zQU!ht*$j5Yw(w;IsqPwgD$e<^6a5CL?RAU&D`>-N3sWl^&r-5lgq!g|$6a#m#px)n zsiO3TxD|I&W`qg*7wZLiWhziA#&YUYPZvL@N>a(4f?`xM6j8~PE<2=;XUnTnQFs$9 zQnFKX#hbv>uAMV4#eOvdux(6>F2(ZQqAP(b#AWuOI*Q^!E#3hl_AK)2Scy_wqElYMFotqBtk z_WHRLiu5L18iSdEmCF)ldbUKON{p*;in+0s~8*+U!Ijz>9~4xl2>9U`CH-P$To|O ze0Bl{%ti8Zw06qqStQWrVuXU|3TA?h(P9uA7Qq8itFsin`>A`piZCjC1G7U@>LY`5 ztYFS$a2Q9||7sVkt^*Y(i&np~{$oqaNqviY`gV`bn9x&EAPy_|b6{jR>RgIS$x7S( z*iNhA&*5FhHE8@oRHeJ>bsNWM=KAE?5a%NVv_L!)0k_H~hXT8UvTtaRR+F1Zao#2c zWq)WO#w`?Xgm3rMvRo(_S#2pG104izg`FcsIoi^%Bcq3aH27k8aHQJUg!F<4Gb3NK z6>xO)9aaV5y}di=rvj(@oYS?*Un6*fV1|Hh5Kfl@r`v#kNia)5y_r*2=G1^W^;b@d z$*E-C1k3L(G;cwQe?qJgI`2;88CV-TuM@=Fvm()RPCe^jXS3CodzP@3bK*wET2p?F apX(9x*j9G74pZjD64svdCMj=5;lBZ|TUx^a diff --git a/osinaweb/osinacore/add/urls.py b/osinaweb/osinacore/add/urls.py index 2016ab14..079d3850 100644 --- a/osinaweb/osinacore/add/urls.py +++ b/osinaweb/osinacore/add/urls.py @@ -34,7 +34,10 @@ urlpatterns = [ path('reference/', views.add_reference_modal, name='addreferencemodal'), path('tag/', views.add_tag_modal, name='addtagmodal'), path('reaction///', views.add_reaction, name='add_reaction'), - path('ticket//', views.add_ticket, name='addticket'), + path('ticket/customer//', views.add_ticket, name='addcustomerticket'), + path('ticket/project//', views.add_ticket, name='addprojectticket'), + path('ticket', views.add_ticket, name='addticket'), + path('fetch-customer-information//', views.fetch_customer_information, name='fetch_customer_information'), path('ticketupdate//', views.add_ticket_update, name='addticketupdate'), diff --git a/osinaweb/osinacore/add/views.py b/osinaweb/osinacore/add/views.py index 7ec10f20..bcd6a4bb 100644 --- a/osinaweb/osinacore/add/views.py +++ b/osinaweb/osinacore/add/views.py @@ -674,8 +674,19 @@ def add_reaction(request, status_id, emoji): @staff_login_required -def add_ticket(request, customer_id): - customer = get_object_or_404(CustomerProfile, id=customer_id) +def add_ticket(request, customer_id=None, project_id=None): + if customer_id: + customer = get_object_or_404(CustomerProfile, id=customer_id) + else: + customer = None + + if project_id: + project = get_object_or_404(Project, id=project_id) + customer = project.customer + else: + project=None + + customers = CustomerProfile.objects.all().order_by('-id') customer_orders = Order.objects.filter(customer=customer) customer_orders_with_last_status = customer_orders.annotate(max_status_date=Max('orderstatus__date')) customer_orders_completed = customer_orders_with_last_status.filter(orderstatus__status='Completed', orderstatus__date=F('max_status_date')) @@ -746,12 +757,33 @@ def add_ticket(request, customer_id): 'customer_products': customer_products, 'customer_projects': customer_projects, 'customer': customer, - 'all_departments': all_departments + 'all_departments': all_departments, + 'project' : project, + 'customers' : customers, } return render(request, 'add_templates/add-ticket.html', context) +def fetch_customer_information(request, customer_id): + customer = get_object_or_404(CustomerProfile, id=customer_id) + customer_orders = Order.objects.filter(customer=customer) + customer_orders_with_last_status = customer_orders.annotate(max_status_date=Max('orderstatus__date')) + customer_orders_completed = customer_orders_with_last_status.filter(orderstatus__status='Completed', orderstatus__date=F('max_status_date')) + customer_products = OrderItem.objects.filter(active__in=[True, None], item__type='Product', order__customer=customer, order__in=customer_orders_completed) + customer_projects = Project.objects.filter(customer=customer) + + + response_data = { + 'orders': list(customer_orders_completed.values()), + 'products': list(customer_products.values()), + 'projects': list(customer_projects.values()), + } + + return JsonResponse(response_data, safe=False) + + + def upload_file(request): if 'file' not in request.FILES or 'filename' not in request.POST: return JsonResponse({'data': 'Invalid Request'}) diff --git a/osinaweb/osinacore/api/__pycache__/serializers.cpython-312.pyc b/osinaweb/osinacore/api/__pycache__/serializers.cpython-312.pyc index 2ffc737a2739c3c2482c319232fb757c3d7934c1..29551b6e3a64ee055d44b7963d8e522b7a5bb45b 100644 GIT binary patch delta 596 zcmbQs+0DaunwOW00SFqu981$>n#d=?IAfxEJ{J>%J3|V43quOWL?3xpwn|P-u8Fh4 z*!X?&(=+oXezms{0keWri!u{)GOJRH^n6oG5;d7`v8LuGX6D@DC`c?WF3&GYxy6%N z9A8{okXlq)oLc0!a&jHx!4R`fwjvRrrA1;u!fz!@5if|t2O{`k!bQR$7Fd-ih{XmY zSb>aU9w5=e@STZ?)%+6!kSG$FJeA3H;)j&_B2JJ(ke_aGrDYZsm&E5K=BD1_%t?eY z{fa=E(TxYWq(~Y_a04;a_!|Nu9jvzmeNkLnB#uS5BuETIa80gd5@!RuT5|F%rv1*S zKD)*5Tv}X`pPO0~P?VpRnUh*12+}Ep#YnJ&lz@8I i4ujkm7G_5C3E9`h3@?fqeqjJ|zHm)0VNqoPIS~NE_KR2}~peR2rGbgo32xOKp zh(NOhH%4giUqPI&+T diff --git a/osinaweb/osinacore/api/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/api/__pycache__/urls.cpython-312.pyc index 5118c8da7751eca39160c0e8465de11f4bba7a62..4de89b4474ca621c0c2bb9acea0f61640a917228 100644 GIT binary patch delta 268 zcmZ3)bc9*`G%qg~0}wQRIhM8nNIwQ~V1O0M_?$6OT{eJ;A(b(OC6zgg11684S2ID_ zU^T2jHDE&#@*oyWO*&H)TP2$&`$QjU*($c2{PfH`{VIW?)bz~alGGyIl+?1! zpn@zZ87{DVd}(oN(Jg+Mns|tsiOtpSd_aR4fwN_#+1cD`$tq s1k>xn$`^%|FSDrJWZ}5LDLo_fx~$PfS)<{9 delta 130 zcmX@YyogEtG%qg~0}w1SSf1t%q#uJgFu(+5d{&sKE~}Q#5XDl-qRILaB&x}Hi=`m3 zB;zF`gu_~vnOa`#r^!0;jMQXi#wryapg2gbSO`dbU}j`wyvrbSmqGXg8xucMBX<$V FRsd=38FT;u diff --git a/osinaweb/osinacore/api/__pycache__/utils.cpython-312.pyc b/osinaweb/osinacore/api/__pycache__/utils.cpython-312.pyc index 34510ab29c269cee07de6c51d803ce3947b08f7c..ce5fe8768d12231b3bcacb8ae731b600abae9caa 100644 GIT binary patch delta 20 acmew;{856qoi{%0vKoO;#|YPN)JB5ta;P zO1L4^y&8dEqZ^F?CYrw^4X%>5%==>ML#7)Os4(!5SpZ7WXUya|6VHypVohoqr_Ls4 zblaZI5rc^h-NBBT!9WKNkG^#fpEFaK`i{Rn{!Xe9gzF#Df>{=GMN|-$e0+aVa#X&h zuwu37b6QroV!`*Svl?O-sN4|idPTV)lYcpD_^wyR(#oYCE=WrWJ+PEa$&M6P` zr{JvTymTk0JZ$)vnz+RUU>E()1};r^bIQX7e>&o=IK_Q&OT{K9%4O+ZPI6q>## zPYTNu$of2OPNn-f88NJq+Ae z`E9u>FRkI{9Y?EPo5r~pgkH4jy>0Vsa;gszO+d~LzBbl+HdEp$1a^H~2D*`Az|(bh zaY-S-J-)o#K*hlMz&I2VhGzw5H{Sua28u!FM|@ofato`YS><6x{v8j&^Fh}G;8|f7 z%}J-wtPpD*qe|Y!B&%mIRd@|qSo4-?+h%quI%#6duww#YpA(c5A5(t#d1GPd^EPcZ z?WCQb!GwuoK39`Ucy5NQ1vTntY}23t^NcxR6|GclRU zPVOwu(%_^?Y$xdk6tHwo$~dE&78On7Gl5DOdupNW&1@=12u?Xs9(T_|+q>W`YUHq; z-Rwm1oM}5fu`u;PMbxP@g&i6^satt`h>#qiKBi5Za%a+D#irU%b5mw^9KzKta{&{= zY7lK6cl620<0Lm}TA2C)Iv{GQpUp{SbF(zS3+@mNu)1qt3*0Fw-NIQzC)CfFQ<=KZ z$iE!x6!2Wf#@ z@=xZSJi%}aE@p94wH~FBWFbr7k_y;n=Az#3`Ogw8mv$m&n@%d1NgT|j@)?|U?8F$P z-kN8EtUhR@_3TtGk;Sv_y0LWWS$w9h1hAs@^#34ciTdj_I%D%g(w10MUd8)HTYq`3wywJr9;~d3mzv`>t?i@2 z2ZgE@DQl5WJ4;%mq75zjYOT@h?UmO4MSrcc|N7j`j?XvzVZ#>_nj%x{9FXZq?l&toLCe;Nk2s>a$dZsK3Ly#Q~gW(-y?sGl(1RFb{X5C zR1`*-(V}pKnPCW+W8w+M924JV%m&(gQhbI`=X*?{^*!+cOWaUp-HuZ8j{nqDt*UmH z)$S)qkayIy^`-9Z%i7S_%1}-H0ps-p@9OAv>B`Y%ZPOiP(~Fwg{sf6~UrlLQ)IU_} zV&Tf+Wv%y)();3(46^6;KDgQohqfI$fd0HgW$-}c$R6o-L}74q`w>C9{kj13S3)y` zEs-Nb(pOtu&X5e8m*yMx{jzTJ^f&NU{@?SB*Adbzj&J?GXM*u&70C(kEr!pVCdLu; zs+C@oc1K*USI5vZwnBGUnX29w-WQkrD-(?mdiKf`rujPntgKQ)d!*8YG_M2w51wKltYQq@QG3=Q3;JNYVOCmXIa}@Que}k+g??B%4*LO znd%0V_6&iS{ZgfTS1Pp?^XI_B}D~3=Xu7O46761)%>V$pB+(=vueTv+5qt zK-aTus@9tj>$NuRBG9IilLRIa_#bmNZeUQ=ogA?Vd&^YLJEmom*BHH_-Z$QCsUbZL%;5~e#NYjxH2bw!UwpvV{){x8iRPC@_x delta 105 zcmZ23yNA*CG%qg~0}w1SSe^!=AA<;V@RLj{Te diff --git a/osinaweb/osinacore/delete/__pycache__/views.cpython-312.pyc b/osinaweb/osinacore/delete/__pycache__/views.cpython-312.pyc index 5c0658e2e581c3c677b7782f41c9999b1bd20b15..cecf298cf4eef34a83c26de789498c34d06ff4c4 100644 GIT binary patch delta 20 acmX?SbIykQG%qg~0}wQRIku78Sq=b3Dh6i& delta 20 acmX?SbIykQG%qg~0}w1SSiX_lSq=a}-UX!q diff --git a/osinaweb/osinacore/edit/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/edit/__pycache__/urls.cpython-312.pyc index 97be4f08b283ee7f1d62be58aea73ddb117e98fc..0ebac90bf750db45ca86af611c34b98d59082d1a 100644 GIT binary patch delta 20 acmX>rc~+A9G%qg~0}wQRIku7e5Dx%C1O|)% delta 20 acmX>rc~+A9G%qg~0}w1SSiX__5Dx%7xCP1p diff --git a/osinaweb/osinacore/edit/__pycache__/views.cpython-312.pyc b/osinaweb/osinacore/edit/__pycache__/views.cpython-312.pyc index b51b6238063a732c15efcf864e1296e712605940..8374d1ce088f678c87e9142e1cc7ed32751ca8b4 100644 GIT binary patch delta 22 ccmdmbnQ`l7M()$Ryj%=G(D>!pM($Oa09}X(7XSbN delta 22 ccmdmbnQ`l7M()$Ryj%=Gu*hKfM($Oa09iZ-RR910 diff --git a/osinaweb/osinacore/knowledge_base/__pycache__/urls.cpython-312.pyc b/osinaweb/osinacore/knowledge_base/__pycache__/urls.cpython-312.pyc index 4c518a55c3c7dce0adc28e7a78cd106f8d660267..48468f51fc596788ecb9158a9e77f6dc6630bac6 100644 GIT binary patch delta 20 acmbQwJfE5SG%qg~0}wQRIku5|3L^kFu?5Qj delta 20 acmbQwJfE5SG%qg~0}w1SSiX^a3L^kBWd#WU diff --git a/osinaweb/osinacore/knowledge_base/__pycache__/views.cpython-312.pyc b/osinaweb/osinacore/knowledge_base/__pycache__/views.cpython-312.pyc index 0b557a2aed7f7dd1385e4cdaae1b0394e3a47a9e..0275b05728aa47a8dbd4a173e663bc06a1cacca0 100644 GIT binary patch delta 20 acmZo>ZD!>@&CAQh00fO+j&0ZD!>@&CAQh00fH+mT%;)U;+RyP6WCD diff --git a/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-312.pyc index 8f1ce6b4b9cb0e802521680ed2383d19d71e9388..3f6ddf68d7300cdadd07717f5f5ace8f05af3c02 100644 GIT binary patch delta 20 acmca3dqt^FV&CAQh00fO+jxFS71^_O*1qT2C delta 19 ZcmeBX>t^FV&CAQh00fH+mM`RH1^_ED1VsP< diff --git a/osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-312.pyc index dd1068badf68726209c1114227b26e1e3747ff27..73a42f24fead0ad273610015ac9c4c38d31d7e13 100644 GIT binary patch delta 20 acmbQrJC&FFG%qg~0}wQRIku6ziwyubjs?a5 delta 20 acmbQrJC&FFG%qg~0}w1SSiX_FiwyuXLInf> 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 index 41befd194eb34c96889690d89ad0ae52bedc7fec..52af920ddde27215559974b2f475d7ea8fcd8d49 100644 GIT binary patch delta 20 acmZ3)v515FG%qg~0}wQRIku5ooCN?k;00j- delta 20 acmZ3)v515FG%qg~0}w1SSiX^4oCN?glmwpu diff --git a/osinaweb/osinacore/migrations/__pycache__/0008_alter_project_project_id.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0008_alter_project_project_id.cpython-312.pyc index c30a619f717628aaeb01c8786500ee7414aea815..41553729ec60bc68db322f85dfc8f92cfc04cb66 100644 GIT binary patch delta 20 acmX@gc9f0#G%qg~0}wQRIku78iWvYs4+X^l delta 20 acmX@gc9f0#G%qg~0}w1SSiX_liWvYn!vzBX diff --git a/osinaweb/osinacore/migrations/__pycache__/0009_alter_project_project_id.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0009_alter_project_project_id.cpython-312.pyc index e316fef5b2dead6cc2c588460ad44d0184ebe464..a1a07608bef862f5553a5315912383ee3c1910b6 100644 GIT binary patch delta 20 acmdnWwv~jgRh delta 20 acmbQhH-V4)G%qg~0}w1SSiX^)l^p;vp9FXS diff --git a/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-312.pyc index 2a690758247f3836f2da5ea146dfac9e05b6e82e..47b9cbb542d6b3347d65ea617499f77ad5a9e3cc 100644 GIT binary patch delta 20 acmeC@>gVD<&CAQh00fO+j&0;-VFds+F$FCE delta 20 acmeC@>gVD<&CAQh00fH+mT%-{VFds%O$CSm delta 20 acmZqTZsO)X&CAQh00fH+mT%-PX9WN-0R+YX 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 index 6eba81371f31478f5f70fd32ba294e5113a59401..a547dd52f36ae5631c9289145f415363337f98f6 100644 GIT binary patch delta 20 acmbQnHjRz@G%qg~0}wQRIku6Tn;8H#w*@!= delta 20 acmbQnHjRz@G%qg~0}w1SSiX^)n;8HxYXo)x diff --git a/osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-312.pyc index c940bc902e4a31c2508403c51c7f228dbb4a7e11..704406a2a5fec79735446c52c9fa635c69bde98b 100644 GIT binary patch delta 20 acmeC+?%?J=&CAQh00fO+j&0Or@&;)D delta 20 acmcb_dWn_$G%qg~0}w1SSiX__I1>OnrUj<} diff --git a/osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-312.pyc index fa5635e20f8d7a10467f397dfb37a62d0736fefe..859128c2264851fa939909c2c5a8f0321c9bd45b 100644 GIT binary patch delta 20 acmX@cevF;_G%qg~0}wQRIku5|H!}b}TLwx1 delta 20 acmX@cevF;_G%qg~0}w1SSiX^aH!}b_4+V$- diff --git a/osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-312.pyc index 5f11587302512f351e0b6cd551d0dde3438663b1..837f3034dbb3bab69dccc6df0e5ff0a0df2259b9 100644 GIT binary patch delta 20 acmaFF_K1!9G%qg~0}wQRIku5IoEZQ?mj)aF delta 20 acmaFF_K1!9G%qg~0}w1SSiX@voEZQ;O9fg0 diff --git a/osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-312.pyc index c9a09d2fcd7f331948534b24105dd1bb968fa576..32e252e245f55f8faa0c8b69ad2e1f5b9dad06b4 100644 GIT binary patch delta 20 acmbQkK8KzAG%qg~0}wQRIku5|A~OIt%LU8; delta 20 acmbQkK8KzAG%qg~0}w1SSiX^aA~OIpe+3Ev diff --git a/osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-312.pyc index c7667ab1f7b2667baaf54fb12839f5e91ba0d6d7..e69c15ac9df69cc489dbec34b2a87632c55e1828 100644 GIT binary patch delta 20 acmbQnKaHRJG%qg~0}wQRIku6zn;if*{{_wf delta 20 acmbQnKaHRJG%qg~0}w1SSiX_Fn;if%vjq$Q diff --git a/osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-312.pyc index 2dc423070376a431d7c4b83f846c33684288d36c..7b22e5cd97f9de4513ab3d9b88f338edd3fbcbca 100644 GIT binary patch delta 20 acmZ1>wnB{iG%qg~0}wQRIku5omKy*%&jpqM delta 20 acmZ1>wnB{iG%qg~0}w1SSiX^4mKy*zg9Ow7 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 index cb06de3464e1e7df40aaf26a69b1a927375193b3..40d276fca3d46363a83c027a5d2ab59dff5e3d04 100644 GIT binary patch delta 20 acmX@lcAkynD 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 index de6e8fe7605ec7b28fc3ab588f5d6a2571bb9409..b51ab37d0db8c21391fbda536d49f38427d2126f 100644 GIT binary patch delta 20 acmbQsHkXb2G%qg~0}wQRIku5oh#3Gj&jn2Y delta 20 acmbQsHkXb2G%qg~0}w1SSiX^4h#3Gfg9M8J diff --git a/osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-312.pyc index c5795c6ffa74fdb03e952d4a68ecdb7a0fbdf92a..8b18d5116f230b4aeb010c91e4d90104fd465bc9 100644 GIT binary patch delta 20 acmbQrJ(ZjLG%qg~0}wQRIku6zixmJjMFqhC delta 20 acmbQrJ(ZjLG%qg~0}w1SSiX_FixmJe`2_y} diff --git a/osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-312.pyc index 9992b87ff8978b2bfbd794dbbd3a5ed88abcf6a9..db3b3778e7362df7a65f82d3b5890484ba660b81 100644 GIT binary patch delta 20 acmX@id6<*?G%qg~0}wQQIku5|2MYi`GX_Th delta 20 acmX@id6<*?G%qg~0}w1SSiX^a2MYi>;01&L 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 index a8090394d7d10abf394d11c545e04c46ae7f8b37..5f33673c8b88fb1baf241cc92285b5413644d6c6 100644 GIT binary patch delta 20 acmey(`J0pbG%qg~0}wQQIku7e0}B8~^9Jt# delta 20 acmey(`J0pbG%qg~0}w1SSiX__0}B8`pav`e 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 index f5be9452466b076cf71dd07046dd704d6fc09940..26814e5221387916e2e1295bb9b13760f2c01512 100644 GIT binary patch delta 20 acmdnXwwI0jG%qg~0}wQQIku78h#3Go)&;Hr delta 20 acmdnXwwI0jG%qg~0}w1SSiX_lh#3Gkg9PgU 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 index 2ef8186cec14738d8f497f51e1fca528e66a0f01..b8095502d11ce37a5dd73b18e4f2f9d35ed7e30c 100644 GIT binary patch delta 20 acmeC+?BL`+&CAQh00d26j&0>5B 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 index 15f0eae180c21778592b58d2fae6da30c4880dc2..cfad4ec2bc4a8c6b5d993415a6057bdee998a581 100644 GIT binary patch delta 20 acmbQrIhB+9G%qg~0}wQQIku6ziv<8T0|mVR delta 20 acmbQrIhB+9G%qg~0}w1SSiX_Fiv<8Oumt)5 diff --git a/osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-312.pyc index b14e15491fb65fe8be75759c0a0b68590d2fa976..1f35d2d999648240e55204e3a1549bd7a6f91eff 100644 GIT binary patch delta 20 acmdnZzMGx!z 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 index 3bad3b870e17cc165936bb9a34aecd3099415423..75680085d6761468991678be27ec2c49557657c4 100644 GIT binary patch delta 20 acmbQlF^PlwG%qg~0}wQQIku6Todp0jX9Y3< delta 20 acmbQlF^PlwG%qg~0}w1SSiX^)odp0f6a;So 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 index 6ff728532df84a7c151610b6f5ce087953fe98be..1d1bb7bfb86aaf000a182f5724b238c425651842 100644 GIT binary patch delta 20 acmcb|b&retG%qg~0}wQQIku5Im=yp)kOmt7 delta 20 acmcb|b&retG%qg~0}w1SSiX@vm=yp$Jq1_* diff --git a/osinaweb/osinacore/migrations/__pycache__/0051_alter_task_requirement.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0051_alter_task_requirement.cpython-312.pyc index 78725aaef6881e5cf33de5a7e7a36e992027f68a..0454de25c7cfa68d2f0cd4ec82548ff69084cd9b 100644 GIT binary patch delta 20 acmbQrF_nY+G%qg~0}wQQIku6Tiv<8R-vv7W delta 20 acmbQrF_nY+G%qg~0}w1SSiX^)iv<8Nj0AW9 diff --git a/osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-312.pyc index db1fa01ea9ff8bd0ac80ccfa653855aba39a42f8..c4eefd1dd45a2391ce8e2e04050e0264405b1a01 100644 GIT binary patch delta 20 acmaFH{*0abG%qg~0}wQQIku7eHZuT2Vg{=K delta 20 acmaFH{*0abG%qg~0}w1SSiX__HZuS}4+ZD| diff --git a/osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-312.pyc index e4870207bb515d6fae2cbefa7aea249032e189cb..da4dd53f6a6344bca346dc6581a92d892d9395de 100644 GIT binary patch delta 20 acmeC=>g3`+&CAQh00d26j&0=r#{vL0M+O@J delta 20 acmeC=>g3`+&CAQh00fH+mT%<##{vK`^aWS| 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 index 76342ecd6d7adf913b8ad6cc7f70672beb97d1c7..8f31f8ad70312856a59dc5253b989fa2981bdf19 100644 GIT binary patch delta 20 acmbQoK98OIG%qg~0}wQQIku5|GBW@;A_da` delta 20 acmbQoK98OIG%qg~0}w1SSiX^aGBW@(&jkjb6% 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 index 2b5d9c476c77b5d457face4950297487a7dc2b2b..36bf778fe9cc00bc96903431712bdaf00172696b 100644 GIT binary patch delta 20 acmcb}agl@jG%qg~0}wQQIku78jRgQdKLzgq delta 20 acmcb}agl@jG%qg~0}w1SSiX_ljRgQY>;)_U 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 index 0932dd29cba8c04ea263481e19142821caa4de8e..838efdb079b481f25e36dc26a1643c74e787eb02 100644 GIT binary patch delta 20 acmeBR?_lRX&CAQh00d26j&0jb6% 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 index 307821d46cd6ba02a8bd6b8a4fabccfdb0543a39..938e78507826d47063b63d7a162c38b9863beaaf 100644 GIT binary patch delta 20 acmbQwKA)ZYG%qg~0}wQQIku5|3NrvWN(I&c delta 20 acmbQwKA)ZYG%qg~0}w1SSiX^a3NrvR_XQIG diff --git a/osinaweb/osinacore/migrations/__pycache__/0062_connection.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0062_connection.cpython-312.pyc index cbc31badfeb3315c6f79b3ecf04c160f76cc7705..861ff2d0d80dd1d8e157e2ade65bce7891c7cebf 100644 GIT binary patch delta 20 acmbQoGmnS+G%qg~0}wQQIku5om<<3o*#%$# delta 20 acmbQoGmnS+G%qg~0}w1SSiX^4m<<3kh6J4e 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 index 4d5baaf4319fafd92abc4d18b9bef08618583005..b7dd910fa4aee60687d8a24d86b5ce02784dd91d 100644 GIT binary patch delta 20 acmZo=Yh~j;&CAQh00d26j&0=r#RLE~6$S+W delta 20 acmZo=Yh~j;&CAQh00fH+mT%<##RLE_!UaMA diff --git a/osinaweb/osinacore/migrations/__pycache__/0064_reaction.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0064_reaction.cpython-312.pyc index cecddfef5e19744c9081e34a0f4de42619e3920c..5da592376f959b0e56f4e6418e2f3a436fb9555e 100644 GIT binary patch delta 20 acmdnPvxkTKG%qg~0}wQQIku78kPQGli3Pd< delta 20 acmdnPvxkTKG%qg~0}w1SSiX_lkPQGhHU#$o 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 index 2175f224aa568dc07df237f6db801e67e19bda73..d55bb69259fdf661c6e68f1c729716dd5b877260 100644 GIT binary patch delta 20 acmeBW?`7vc&CAQh00d26j&0;_Vg>*;dIg{W delta 20 acmeBW?`7vc&CAQh00fH+mT%;4Vg>*)Cj{L9 diff --git a/osinaweb/osinacore/migrations/__pycache__/0066_remove_customerprofile_business_business_customer.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0066_remove_customerprofile_business_business_customer.cpython-312.pyc index f1d333329faba2ee417c54b462b57b9122b42c45..f19ddcef1b119fafd3783d544d769b2f61927e84 100644 GIT binary patch delta 20 acmeC>?B(P>&CAQh00d26j&0;_VgUd(!v&=P delta 20 acmeC>?B(P>&CAQh00fH+mT%;4VgUd#a0KE2 diff --git a/osinaweb/osinacore/migrations/__pycache__/0067_customerprofile_confirmed.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0067_customerprofile_confirmed.cpython-312.pyc index 4aded2d2e3e1c6473a5b657e0a84a6f5c1d02513..ff424039733631d4bdee4661576c5086e57df81c 100644 GIT binary patch delta 20 acmcb>c7cuiG%qg~0}wQQIku78l^Fm&&IRWH delta 20 acmcb>c7cuiG%qg~0}w1SSiX_ll^Fm!dj%u_ diff --git a/osinaweb/osinacore/migrations/__pycache__/0068_remove_customerprofile_confirmed_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0068_remove_customerprofile_confirmed_and_more.cpython-312.pyc index ab22163bb21d19a59f2b2ddf5cd780c8e5b57843..e606a8c409f17e9b1345444a73aa714b0c28ac90 100644 GIT binary patch delta 20 acmbQsF_(k;G%qg~0}wQQIku5ohy?&Q9|cnY delta 20 acmbQsF_(k;G%qg~0}w1SSiX^4hy?&L%mk1C diff --git a/osinaweb/osinacore/migrations/__pycache__/0069_alter_business_logo_alter_projectfile_file_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0069_alter_business_logo_alter_projectfile_file_and_more.cpython-312.pyc index 380232e06c49459e223befe415ca1619754a77ef..3f4af297e17eae07653c75fdfe9eba5c9cfcbde6 100644 GIT binary patch delta 20 acmbQmIg69~G%qg~0}wQQIku6zp9KIn%LU8; delta 20 acmbQmIg69~G%qg~0}w1SSiX_Fp9KIjcm)Xn diff --git a/osinaweb/osinacore/migrations/__pycache__/0070_department_alter_staffprofile_staff_position_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0070_department_alter_staffprofile_staff_position_and_more.cpython-312.pyc index b0b1730d4613463104b3606e1ef4bb88cad9a995..fcf2d994c921c7c87e9d75c9364f7535ee1ebdda 100644 GIT binary patch delta 20 acmcc3dz+X0G%qg~0}wQQIku7e0viBAg$9`b delta 20 acmcc3dz+X0G%qg~0}w1SSiX__0viB6G6mKE diff --git a/osinaweb/osinacore/migrations/__pycache__/0071_projecttype_department_ticket.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0071_projecttype_department_ticket.cpython-312.pyc index aaf443fd6e636b451cc65c1424c97643ebb5b351..46a28be3d0b7d9d99cbe8969c372b4984d3c9720 100644 GIT binary patch delta 20 acmdlcv`vWnG%qg~0}wQQIku5on-c&$bOpBn delta 20 acmdlcv`vWnG%qg~0}w1SSiX^4n-c&yAq4aQ diff --git a/osinaweb/osinacore/migrations/__pycache__/0072_ticketupdate_ticketreaction_ticketattachment.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0072_ticketupdate_ticketreaction_ticketattachment.cpython-312.pyc index 447bde8d3e67a387806eb076a32a9988906d657d..b01ae1b6b0c35a4fbe739553b0e34096edf901e9 100644 GIT binary patch delta 20 acmdlWxto|S&CAQh00d26j&0;-W(EK>egz=_ delta 20 acmeBU>to|S&CAQh00fH+mT%-{W(EK-D+FEu diff --git a/osinaweb/osinacore/migrations/__pycache__/0077_remove_project_status_project_active_projectstatus.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0077_remove_project_status_project_active_projectstatus.cpython-312.pyc index 6713afb906a7df7b517add0b3dcfc5122bb52cca..9e9c077322633db4c093dffe4ab961350bd38a41 100644 GIT binary patch delta 20 acmX@fdy<#?G%qg~0}wQQIku5|9~%HawFYAV delta 20 acmX@fdy<#?G%qg~0}w1SSiX^a9~%HWVg;Z8 diff --git a/osinaweb/osinacore/migrations/__pycache__/0078_alter_projectstatus_status.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0078_alter_projectstatus_status.cpython-312.pyc index c9b8508f4822a763ed2901f4d0a394f0b2550f07..976114f3bdaadf2c0c97e6d8158ad477fb5bc869 100644 GIT binary patch delta 20 acmZ3=zLcH&G%qg~0}wQQIku5|7Bc`jItAze delta 20 acmZ3=zLcH&G%qg~0}w1SSiX^a7Bc`e=LIDI diff --git a/osinaweb/osinacore/migrations/__pycache__/0079_alter_project_end_date_alter_project_start_date.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0079_alter_project_end_date_alter_project_start_date.cpython-312.pyc index 071db41cc4aa60a559bdc609a5d1d356c81e5597..18807bc6ec8f550db2053a98b89478961e8c4271 100644 GIT binary patch delta 20 acmbQrK9!yOG%qg~0}wQQIku6zix~hmx&^oZ delta 20 acmbQrK9!yOG%qg~0}w1SSiX_Fix~hiX9V>C diff --git a/osinaweb/osinacore/migrations/__pycache__/0080_project_logo.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0080_project_logo.cpython-312.pyc index ef7d4e1fe7cf608a534a8392df4591a5ba5355a6..88f52678c38bad7ae1f67057c00d57d0d502bda1 100644 GIT binary patch delta 20 acmdnSwvCPZG%qg~0}wQQIku5on;8H)z6F^8 delta 20 acmdnSwvCPZG%qg~0}w1SSiX^4n;8H$YXsH+ diff --git a/osinaweb/osinacore/migrations/__pycache__/0081_status_task.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0081_status_task.cpython-312.pyc index 7a9edc4b669a90c46661dd7f79d60a4fb3c28026..d2614b8499d7c74003478db47891faacbb5dd654 100644 GIT binary patch delta 20 acmZqUXyf2M&CAQh00d26j&0=r%?toFh6W7) delta 20 acmZqUXyf2M&CAQh00fH+mT%<#%?toBGX+Wj diff --git a/osinaweb/osinacore/migrations/__pycache__/0082_pinnedproject.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0082_pinnedproject.cpython-312.pyc index 377a99f5874e09a2b68c40df0548ec3aa5c3ff22..c92ac080d4ef568117126441bb9269957d89ecb4 100644 GIT binary patch delta 20 acmcc3eVd#6G%qg~0}wQQIku7e0xJMQJO-2i delta 20 acmcc3eVd#6G%qg~0}w1SSiX__0xJML=>^dM diff --git a/osinaweb/osinacore/migrations/__pycache__/0083_rename_staffposition_jobposition_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0083_rename_staffposition_jobposition_and_more.cpython-312.pyc index b3846233c25de87b5f38c041ae52197475d98935..a73663742227cc29a21275ee71c5da8e3244ef5b 100644 GIT binary patch delta 20 acmdnXwwI0jG%qg~0}wQQIku78h#3Go)&;Hr delta 20 acmdnXwwI0jG%qg~0}w1SSiX_lh#3Gkg9PgU diff --git a/osinaweb/osinacore/migrations/__pycache__/0084_staffposition.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0084_staffposition.cpython-312.pyc index 0bdc39392b38597d4f6a495fd7106bc97a7900a7..26199baa7c02fb39c5977108bcc06ee19dc23dea 100644 GIT binary patch delta 20 acmX@ZeTJL+G%qg~0}wQQIku7eAS(brty3T&CAQh00d26j&0=r#{>X1wFVIY delta 20 acmeBV>ty3T&CAQh00fH+mT%<##{>W|Vg*hB diff --git a/osinaweb/osinacore/migrations/__pycache__/0089_connection_connected.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0089_connection_connected.cpython-312.pyc index bda38f4ed58332054f90ef75bcb8b08ec97b13b8..36a2a5e08ed89d4ba28631895eb6300653b48ee0 100644 GIT binary patch delta 20 acmeBU>to|S&CAQh00d26j&0;-W(EK>egz=_ delta 20 acmeBU>to|S&CAQh00fH+mT%-{W(EK-D+FEu diff --git a/osinaweb/osinacore/migrations/__pycache__/0090_rename_terminated_at_connection_last_seen.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0090_rename_terminated_at_connection_last_seen.cpython-312.pyc index 19447a2b8dc991136c58c4093dda68078fc4215c..1c7e513526cdd7f86d65d5e6014da24dd1179e41 100644 GIT binary patch delta 20 acmaFF`iPbLG%qg~0}wQQIku7eIuigwc?OyQ delta 20 acmaFF`iPbLG%qg~0}w1SSiX__IuigsCI#03 diff --git a/osinaweb/osinacore/migrations/__pycache__/0091_alter_connection_user.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0091_alter_connection_user.cpython-312.pyc index 0a768456aa5ff17d20c96ef5ad90baf6e42d283f..3108f4cfc238deb82202da893fd998d53f7aaad0 100644 GIT binary patch delta 20 acmZ3$xqy@VG%qg~0}wQQIku5|DhmKOy9M3= delta 20 acmZ3$xqy@VG%qg~0}w1SSiX^aDhmKKXaySp diff --git a/osinaweb/osinacore/migrations/__pycache__/0092_rename_connected_connection_online.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0092_rename_connected_connection_online.cpython-312.pyc index 772eba07c31ea187fbcdc075c8105975fdc3f2d0..e96cc61f934c77f762817a27e4409c7ac9314b9a 100644 GIT binary patch delta 20 acmcc0dX<&?G%qg~0}wQQIku7e6cYeIaRze$ delta 20 acmcc0dX<&?G%qg~0}w1SSiX__6cYeE9tE%f diff --git a/osinaweb/osinacore/migrations/__pycache__/0093_connection_disconnected.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0093_connection_disconnected.cpython-312.pyc index 6a676b7fafa22b0b474257b076c169b7b536af18..4528de66d65de9fcbbe9043488bcf8b3aa211893 100644 GIT binary patch delta 20 acmZ3%wt|iOG%qg~0}wQQIku5omKgvzjs8AqLF= delta 20 acmey&`k9scG%qg~0}w1SSiX__1rq>3&ISqq diff --git a/osinaweb/osinacore/migrations/__pycache__/0098_rename_emailorusername_projectcredential_identifier.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0098_rename_emailorusername_projectcredential_identifier.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b399a4813c07331fa73bb6b872bb21a5606d53f9 GIT binary patch literal 776 zcmZWnzi-n(6nqBm^0dShAe1zSqc+?F(m{DjT2< zj4Y`93kd!W7N$;(yfU#xYPxjd-6bKY-0=K;_r7=U-FN=EvJwKV50f7UUl_nIL*}bF z180v39D@YOQpi}BF>v4+NaqNoi>%+67c9Qt+$rul!$!OL+mJS^!z}4(Q6?%c;)NFA zZ=+q>JqCm>lhAb}>#?ru05Mio36lGO#DN4MwRVEqM*9KbkF)m|`67w<26A5%5BD1shpu44=w7@U_Q5y^E%|5>=4>XS;NL{+~m9;m7u1sLi9=;1MY9Q#gXL2f-d2yUv>T z?!`ES;LgYJ)L%dG*GD(EMysTVJLP){Mf+ tZVRRr^VN3Yk zFio=Dj8hI#7TnYjV$aCc8G;J}#G{;e8mBGl=^6o}tpwjLAt;0E1LG10kV|DP6!`Xz zStX2>+tu5r1?DC<2jzK(fi)N3(mcCw*PYycHP?+p*l89fevk^tceb~iJ4`_0$G{-= z!zdNK420qxk+vb|1_C%F-O!I%sK9XuB44@_&C6KHk5i$1lHM@cCO6bx;gAI)>`3np zF{5-8`N>-h_M)h+iwX`R;~bkA$NYrj zpaL45zL5W<+9b%{;C4zTCb19bMAw$hk1r<w()iO``)iwb6Peqv*OguPcOvE{8RgNBe#or8vIDvseCKM w+?Q!8cNNjK^`y9yUGV@Z#V1?CZK6|3|Cxl=r)HI!=gz3QIjnB}B}i2Df64&;P5=M^ literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0100_projectcredential_date_added.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0100_projectcredential_date_added.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..01e470855d998865acebc91345013eaf6dfe7606 GIT binary patch literal 823 zcmZuv&ubGw6rS1LY<8DM+8|bJy_LWUcGF`)3PMm3&8c4YGEVosgbn*6&TcHZh)NG0 zd+WbYY5xu{o&rL`UOjmWBqH?W%qAg<&SCcZ-n{qbd*9C2TFoJHeVl*kTv9^5E3#UZ zC72yaa6y0ojYv#=8f(5riAJ6h(9Q_xNPFh0X#Ks?7ueT_hFkfeh^rM&9CiiI!!*eX zGfn}cELhhNQeBeSYY8q05}yL`HK1MU>l#6$R|@{Kgh&~n&dlDezvGI5ab3BRqp5Xm zu0+Xh*0AbYh5d4+M~bu4EKGQi3M}@U&BH?`Fizhh>x;C9K^_PMO!AONY>**zQo(ov zELQnj|Kt=7@EjQjKsa`3VI+ena&_r|nwlj%Mj2Ckr4wQVZPzX=R>m1C947n1AVP^Z z7<)6|k;+vJu#brp5`>ruWpZIX26&=+2t(0YOI~~&##qJ*C+*|X^3P;AzR1w8W=)vPe>HdF!9*H4mE2{}{IR zV!uBW>baDg0-1VWXJl#;`x%|;+HLdwi>X8G-A~Tg+8J3plkEqSt^1RDV!Z-kO7Is%jxQSjT||4upL!d5UnyW zvh{C3@OQ82gwcR@ALcKz4yMm-@CgW(7IgxI{VB3{%F#yRt;{S z6Sx8ilEpA)0b^jm8<55vq={@~H3{qQ53|C7F|&HDznb)z^2X6H6GfCJdAQaB{4aDu zf3E-`U=jjDvLOph1JD|kO>U+Dm6xWpezuxYq_t;uZ%euFn<_m+xoI9HB1|(>o&IsZ z&nH#3wOvQgq8OE>1Ik;6dnQegN{o3T#;BY$mNiQ7yhH;k z@9+|Gt~}03K8=y^4(FeyBG!qTNt|Fp4TKTqnf6L;e?T349bqh$mrk%Y>O0)(x$o!x z#~icVr+JDn9s94+a5|<5a(^HS5zllW5zpjEB*WCFhDu)35})H~CDLyA>#Oj|mt&rl z#Xb@W`FZ;_PW=5-8&#sX8!}HZpSGA literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0102_remove_projectfile_date_added_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0102_remove_projectfile_date_added_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..27815b27aa3ab6029de8f781b977f915c197af78 GIT binary patch literal 1434 zcmaJ>&u<$=6rP=3uf1z0wM!}kg4l?N;vl?r&lZwNFbbp*qRnNcYPI%^tu^~2-Cd`0 zdTCJ)J(d$3xuWC`C?~`PA#quYN{)sL5+`n!5`@$fZ)UwEYSPY1v+sTL_IvNmH?zMj zE$Ilx*QdV>zL637i#yrKEsT>c7~dj-h~y$qG9?e2SmHi*WmCcEQ$*y4h$vJV3AT(N zeIEiZA7*ZX8@a!^*}zQqoMC9kPT)sO^#VfOXs6HDvQb(XC$}V?ogz~r$ize%N~Vkv zRW8a!Fp-axL!5s5im2QRQCYSuJG_ZX^1zTEmCt|+lN8|5h<;Q&R8nXFnML&F^U;S3 z2x72^Svem=i=)@iqod^uus1Kj-a3zw($P}369YVykCroUD4Uliml|cJ-N-}$MYJGt ze7hfnlwG~ny4JEn>f0W*h#gaFFAPSs9}gUN0oa64!ir~bri)0iAOz;3TAYF@>CC@o zxH})8I$gM8JTbm7qmF#gGSpASfQbF%{b~v%Vq7$Y?G<0m&IiRexPs3gi zQNez2<$2-FGv$bmd<$xzF=aRo8aU)CGj-rlmqa_zf58$Amc?|-fSaCxXdxLiy^25MNA3MViw2`iBo6t&X>Rs4e zXXt+p-Kb<_`@?`?(qjctBwPiS-{{=j=xlz%^k9!JuE!7Pgp2#^k+BOq5E;;I+z&is zGw6>!>c^3>W5>2T;S0X~VajXx^sew1uCVXYUK+$jHvYeW2FQIKuA{2P66!riW;*BCR9MWxS%^-=6D8t3A?Zh1F?c^|-orTzUI6Cu{n=@FHHl z0I$6JXXQ##U4OhktFBM0>ra$l*Aml8{P1ZtO3E>?B{k!_{aMYJ){Nh4t)zVYxU!nm zTi>g*dTUy5J?Z|m_2bs8y*+Jj&)U1w_U^2Gd)mI8^d?X12TA$fJg=-QpXTyV(rcB= z>Vwb1t65JCm1*gwHAzqCovQlAbFi8Iu9}%@;XB#4;d|T?RPTfJtk6ym)kon6;KF|l jMKze_vLs3Wsz_@5f$FDfRZ<`8v+~-sy!H}tWF2DD_5P)9_l&i8% z7DqBU2M(M>5R-t!Mqm&y;2Ch^6u60GV3$ps?}fR_19NP7mEQ_@hH&GspRpoLlU&$w z$}!5jn;w92(Bh4(o&!QaI0ObKeG-@kpf%8fw_8BU;A+nvT>ZbU(8ap+%_;@SN!4-1 zvxW1r)FOpBX&xr5n`S8P9XvRANHdJncSwg>I>2tx3nQeQ6-XK9$SF%WjTO1RMPN~9 z6bpAl^GtbRbxE4A7=@){r59qv+nyt;RM#mLE|t^xNS;B(4yA8LEK*#BI1Vx4m~=zT zGv%ppA4dgdPt}ynQia;F6!t2NQP+f<4sq@AS6Ha~Uw-mm=a}WbykyZ$WB)kqj$%xT z+;6jjMPs#*u={+#l78wZc%tzd>ih&dE0VIv-@KwP&3Z(cQnc-rwqnb${oy!MZ>xh! z@(XLnj{PO8n>t~a~ZoHbf!t!bk*X|#Se?k=xbjypH) zhW+7rcC#GU_AKG7wC?kc_DK7(I`D>~Y3{DfE~|$tqmQy%63Txb^4l`ZO+v_D8;G~G TcZhxFPV0M<`raRqKzIKGOy<|Q literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0104_projectfilealbum_file.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0104_projectfilealbum_file.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9659ded306993ecfeb1b3dba41075198601ef3c1 GIT binary patch literal 814 zcmZWnJ#W)M7=F)oT-$0!}jQ&d&*KwShIs45aF5`s*ycsX5sm&noiqyA8o4NwQh zZv6o)p!Nsw3s{&UAtkz%i7irskUDW^Ckh`oyndd0Kkm85_jPN_0lD5SzVtpIfbWW| zR$~d~M-p5B1&TOC$VZXpYX~%W22?u(sxve&S552hrCwuS9~o}rha#>foG9#PqzIEZ z7iN@D#`9p^17I!5yeq*4Fz^utU!$mxd|d-(3@X8Ywt$pDRn8pT_QI@ipvN#A?o+*=s^@P$BH6t?=wNK>v6&FsDvZdXhV6Hs49(u2HmgSzj zX%Qrm_cRI0h{Z+jbx1+@NF`!&j}A!OPrR57E54)^9{{ai?N+W-Uet%)R%KP~U5T!($F;Rb*{-DW*+Z_t bOh*X)G6A^@a}$~8&ZN0FZtndANviJOFz45= literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0105_remove_projectfile_name_remove_projectfile_project_and_more.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0105_remove_projectfile_name_remove_projectfile_project_and_more.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b5e99d026809682a3e7cba8c13c631c2f53ff1fe GIT binary patch literal 2115 zcmcgtOK;;;6uy4MvE6niF=aZ<%ydv&6)ZtABb7zOL#kSehDR5jnT;1%ZtiWyksrZ! z7&5Q`Gz*s9v0`7;{D87z$A%4-A|<*kS+R>~5n@){M_e+ki^2vk>~oGkf9JdBo_qY$ z+?)=`_0{Q*`+q3_{7RkdDvXVjZDM=_Ab^4ge8CcY(Gmsfi=Jf3B6t@-=_!CR5?YKc zBjC>?i9fAES2PR1QO6Xq?z_#%N!&1qvEqjidGStz1Nq$;J14)3G&=&80D&b!p($9B z2#}nY3yM(c$w%Z1di@KkFa=71#i>y0R4DNrYL;u9yc6{r(OhhmCZpVjI?`J67vrrf zIk9UwvFjIOaHcn#?M`nlvsl&g)fJh#N)D6WyK*G(_*6_PW4f8g1h4i=*$z&@r9j#Z z#nw^|R~hO(<3Di~7}x(*{}=M=-_)&AciwyvYaeDugq#;GjNQO#gb~7(J9qD_+wCZ9 zp+>UrddTtiI=)RUJTno-a^U!goi%#CZ0beyfa2m9g-a7~#)5U|B*=CkL=el2vcO(E zcv3l2P(A;ZDUnsG02nhg~U5%8LKv1kZoh#w#fkLc!=1uw*7I(@#s>i2T>aZ5Cshv z#SxuDcxD&*;U{RDioxmzgv^R$`cB^_<#n6E`>2Z**m8nqh()-ERkkEDs&H|0yL@FZBl&Bsck-TB5vwo8;xh&ci@C%0MEXyJ&aKl*T|BRM(EeJ!bZnO zK@!(?oW$|E^hMyj#*^0q^qBc$m)Vce9tY80sQoiVYose)w!iy%88FR(RKnz z>KCDEyBm>T0ARNwG2#QVAy2_b0owXV66cjKJ{ajhyZyC3P?u75X}GXDEH9iEBuyWw z=i`;UxH&A}x+I>Vu3A3zVZ2KQ6>_J^yevV4UIKQv6dQZhg*H)?j^W|p|MPH%c-$^C?AV` zpZ9O#46YFb+T J0}zK1{0(hE;v)b6 literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0106_alter_projectfile_file.cpython-312.pyc b/osinaweb/osinacore/migrations/__pycache__/0106_alter_projectfile_file.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8a7c2cdfef964e3f27004175e64c8ef3ac5bb2e6 GIT binary patch literal 851 zcmZuwKX21O9Q~c`xVCAaL`Vfh8KMZuL+diYgsLK;f)Hea#mnj9yF`v`U$7lYHb5O1 zyY(x8+7G}dfPpCzQleX#*diqesS|g0th5q0oZq|Ozo&P;AN9Hea(!HU>wZT7zZ9uf zZ3*Uk5}W`9iXw=Sk7CW&5NPlesCEQYXQ*#hMXT?rUSeM#8E);jBCaN!IP9e)4|$Ra zGv<^CUv_=tk9QPe}et^qUph2V=NAZ1V$Gy7LBpDRWUT01jOwK8(H zR>_k6tdZr~!hTsPlJabxg$W6G%EbQe{oMyRWifxt@F3-V7UbP9VmKi&```I82a|;2 zSarB^p-LF4_LZntS&C+IqLB=vNZ7+c#0kYYcXjEJ@}-y~!*ZIabwd`>wp453ay}Lg zmQ(0Z3c_L?<2OSR70M)|Y`_xAk|1PRs;)sekE5KW2dYbIr~~^z&M&xd_<$|1LI`&%8FtNi

- Add Ticket for {{customer.user.first_name}} {{customer.user.last_name}} + Add Ticket {% if customer %}for {{customer.user.first_name}} {{customer.user.last_name}}{% endif %} + {% if project %}
{{project.name}} {% endif %}

+ {% if customer %} + action="{% url 'addcustomerticket' customer.id %}" + {% elif project %} + action="{% url 'addprojectticket' project.id %}" + {% else %} + action="{% url 'addticket' %}" + {% endif %} + enctype="multipart/form-data"> {% csrf_token %}
@@ -18,6 +26,21 @@ class="w-full h-[50px] py-1 px-3 border border-gray-300 outline-none rounded-md mt-1">
+ {% if not customer %} +
+ + +
+ {% endif %} + + + {% if not project %}
+ + {% endif %}