From 33a8689592d393784b3070b90349704664755d39 Mon Sep 17 00:00:00 2001 From: emile Date: Sat, 11 May 2024 23:39:41 +0300 Subject: [PATCH] new --- .../__pycache__/__init__.cpython-310.pyc | Bin 194 -> 194 bytes .../__pycache__/admin.cpython-310.pyc | Bin 400 -> 400 bytes .../__pycache__/apps.cpython-310.pyc | Bin 483 -> 483 bytes .../__pycache__/models.cpython-310.pyc | Bin 1941 -> 1941 bytes .../__pycache__/0001_initial.cpython-310.pyc | Bin 700 -> 700 bytes .../0002_country_addressbook.cpython-310.pyc | Bin 1161 -> 1161 bytes .../__pycache__/0003_contact.cpython-310.pyc | Bin 1005 -> 1005 bytes .../0004_socialmedia.cpython-310.pyc | Bin 925 -> 925 bytes ...05_socialmedia_addressbook.cpython-310.pyc | Bin 764 -> 764 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 205 -> 205 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 190 -> 190 bytes .../billing/__pycache__/admin.cpython-310.pyc | Bin 499 -> 499 bytes .../billing/__pycache__/apps.cpython-310.pyc | Bin 471 -> 471 bytes .../__pycache__/models.cpython-310.pyc | Bin 5854 -> 5874 bytes .../billing/__pycache__/urls.cpython-310.pyc | Bin 831 -> 831 bytes .../billing/__pycache__/views.cpython-310.pyc | Bin 2445 -> 2233 bytes .../add/__pycache__/urls.cpython-310.pyc | Bin 909 -> 909 bytes .../add/__pycache__/views.cpython-310.pyc | Bin 6772 -> 6772 bytes .../delete/__pycache__/urls.cpython-310.pyc | Bin 489 -> 489 bytes .../delete/__pycache__/views.cpython-310.pyc | Bin 1009 -> 1009 bytes .../edit/__pycache__/urls.cpython-310.pyc | Bin 439 -> 503 bytes .../edit/__pycache__/views.cpython-310.pyc | Bin 1017 -> 1178 bytes .../__pycache__/0001_initial.cpython-310.pyc | Bin 1328 -> 1328 bytes ...vice_cancelled_at_and_more.cpython-310.pyc | Bin 824 -> 824 bytes ...003_payment_servicepayment.cpython-310.pyc | Bin 1169 -> 1169 bytes ...rename_payment_paymenttype.cpython-310.pyc | Bin 592 -> 592 bytes ...05_service_recurring_cycle.cpython-310.pyc | Bin 779 -> 779 bytes ...ervice_created_at_and_more.cpython-310.pyc | Bin 788 -> 788 bytes ...er_service_recurring_cycle.cpython-310.pyc | Bin 830 -> 830 bytes .../0008_alter_service_type.cpython-310.pyc | Bin 829 -> 829 bytes ...cepayment_service_and_more.cpython-310.pyc | Bin 1172 -> 1172 bytes .../0010_charge_amount.cpython-310.pyc | Bin 712 -> 712 bytes .../__pycache__/0011_invoice.cpython-310.pyc | Bin 905 -> 905 bytes ...nt_charge_receipt_and_more.cpython-310.pyc | Bin 1040 -> 1040 bytes ...alter_invoice_date_created.cpython-310.pyc | Bin 661 -> 661 bytes ...014_servicepayment_comment.cpython-310.pyc | Bin 660 -> 660 bytes .../__pycache__/0015_order.cpython-310.pyc | Bin 1111 -> 1111 bytes .../0016_alter_order_status.cpython-310.pyc | Bin 725 -> 725 bytes .../0017_service_order.cpython-310.pyc | Bin 751 -> 751 bytes .../0018_alter_order_status.cpython-310.pyc | Bin 733 -> 733 bytes ..._service_customer_and_more.cpython-310.pyc | Bin 2358 -> 2358 bytes .../0020_orderitem.cpython-310.pyc | Bin 904 -> 904 bytes ...m_recurring_cycle_and_more.cpython-310.pyc | Bin 837 -> 837 bytes ...e_item_created_at_and_more.cpython-310.pyc | Bin 843 -> 843 bytes ...em_project_alter_item_type.cpython-310.pyc | Bin 941 -> 941 bytes .../0024_remove_item_active.cpython-310.pyc | Bin 586 -> 586 bytes ...item_project_item_customer.cpython-310.pyc | Bin 888 -> 888 bytes ...tem_type_remove_order_paid.cpython-310.pyc | Bin 697 -> 697 bytes .../0027_item_type.cpython-310.pyc | Bin 709 -> 709 bytes ...0028_remove_order_due_date.cpython-310.pyc | Bin 567 -> 567 bytes .../0029_invoice_pdf.cpython-310.pyc | Bin 648 -> 648 bytes .../0030_alter_invoice_order.cpython-310.pyc | Bin 746 -> 746 bytes ...ter_invoice_invoice_number.cpython-310.pyc | Bin 671 -> 671 bytes .../0032_order_business.cpython-310.pyc | Bin 820 -> 820 bytes .../0033_alter_order_status.cpython-310.pyc | Bin 750 -> 750 bytes .../0034_alter_invoice_pdf.cpython-310.pyc | Bin 669 -> 669 bytes .../0035_alter_invoice_pdf.cpython-310.pyc | Bin 652 -> 652 bytes ...ter_invoice_invoice_number.cpython-310.pyc | Bin 678 -> 678 bytes .../0037_recurringcycle_item.cpython-310.pyc | Bin 762 -> 762 bytes .../0038_alter_invoice_pdf.cpython-310.pyc | Bin 669 -> 669 bytes ...recurringcycle_cycle_price.cpython-310.pyc | Bin 651 -> 651 bytes ..._orderitem_end_at_and_more.cpython-310.pyc | Bin 758 -> 758 bytes .../0041_orderitem_active.cpython-310.pyc | Bin 667 -> 667 bytes .../0042_order_due_date.cpython-310.pyc | Bin 634 -> 634 bytes .../0043_alter_invoice_pdf.cpython-310.pyc | Bin 667 -> 667 bytes ...044_alter_orderitem_active.cpython-310.pyc | Bin 650 -> 650 bytes ...ter_orderpayment_date_paid.cpython-310.pyc | Bin 740 -> 740 bytes ...t_order_orderpayment_order.cpython-310.pyc | Bin 855 -> 855 bytes ...cription_paymenttype_image.cpython-310.pyc | Bin 778 -> 778 bytes ...e_order_status_orderstatus.cpython-310.pyc | Bin 1112 -> 1112 bytes ...rename_due_date_order_date.cpython-310.pyc | Bin 618 -> 618 bytes ...ent_type_orderpayment_type.cpython-310.pyc | Bin 744 -> 744 bytes ..._alter_orderpayment_amount.cpython-310.pyc | Bin 670 -> 670 bytes ...2_alter_orderstatus_status.cpython-310.pyc | Bin 0 -> 780 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 201 -> 201 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 195 -> 195 bytes .../__pycache__/admin.cpython-310.pyc | Bin 458 -> 458 bytes .../__pycache__/apps.cpython-310.pyc | Bin 486 -> 486 bytes .../custom_context.cpython-310.pyc | Bin 1649 -> 1618 bytes .../__pycache__/decorators.cpython-310.pyc | Bin 965 -> 965 bytes .../__pycache__/models.cpython-310.pyc | Bin 3197 -> 3197 bytes .../__pycache__/urls.cpython-310.pyc | Bin 2041 -> 1804 bytes .../__pycache__/views.cpython-310.pyc | Bin 13753 -> 8129 bytes osinaweb/customercore/custom_context.py | 2 +- .../__pycache__/0001_initial.cpython-310.pyc | Bin 1969 -> 1969 bytes ...02_alter_ticket_department.cpython-310.pyc | Bin 836 -> 836 bytes ...mer_ticket_status_and_more.cpython-310.pyc | Bin 1114 -> 1114 bytes ...ket_ticket_number_and_more.cpython-310.pyc | Bin 929 -> 929 bytes .../0005_ticketstatusupdate.cpython-310.pyc | Bin 1204 -> 1204 bytes .../0006_ticketupdate_read.cpython-310.pyc | Bin 658 -> 658 bytes ...ead_ticketupdatereadstatus.cpython-310.pyc | Bin 1153 -> 1153 bytes ...pdatereadstatus_ticketread.cpython-310.pyc | Bin 755 -> 755 bytes ...er_ticketattachment_ticket.cpython-310.pyc | Bin 816 -> 816 bytes ...ction_ticketupdatereaction.cpython-310.pyc | Bin 641 -> 641 bytes ...ketupdatereaction_customer.cpython-310.pyc | Bin 894 -> 894 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 206 -> 206 bytes .../payment/__pycache__/urls.cpython-310.pyc | Bin 0 -> 990 bytes .../payment/__pycache__/views.cpython-310.pyc | Bin 0 -> 7395 bytes osinaweb/db.sqlite3 | Bin 1232896 -> 1245184 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 192 -> 192 bytes .../__pycache__/admin.cpython-310.pyc | Bin 1906 -> 1910 bytes .../__pycache__/apps.cpython-310.pyc | Bin 477 -> 477 bytes .../custom_context.cpython-310.pyc | Bin 3028 -> 3028 bytes .../__pycache__/decorators.cpython-310.pyc | Bin 948 -> 948 bytes .../__pycache__/forms.cpython-310.pyc | Bin 1075 -> 1075 bytes .../__pycache__/models.cpython-310.pyc | Bin 12921 -> 13187 bytes .../__pycache__/urls.cpython-310.pyc | Bin 3985 -> 3976 bytes .../__pycache__/views.cpython-310.pyc | Bin 18145 -> 18293 bytes .../add/__pycache__/urls.cpython-310.pyc | Bin 1900 -> 1900 bytes .../add/__pycache__/views.cpython-310.pyc | Bin 13549 -> 13200 bytes osinaweb/osinacore/admin.py | 2 +- .../__pycache__/serializers.cpython-310.pyc | Bin 1019 -> 1019 bytes .../api/__pycache__/urls.cpython-310.pyc | Bin 345 -> 345 bytes .../api/__pycache__/views.cpython-310.pyc | Bin 1177 -> 1177 bytes .../delete/__pycache__/urls.cpython-310.pyc | Bin 1215 -> 1215 bytes .../delete/__pycache__/views.cpython-310.pyc | Bin 3438 -> 3438 bytes .../edit/__pycache__/urls.cpython-310.pyc | Bin 1875 -> 1975 bytes .../edit/__pycache__/views.cpython-310.pyc | Bin 11452 -> 11879 bytes osinaweb/osinacore/edit/urls.py | 1 + osinaweb/osinacore/edit/views.py | 22 +++++++++ ...ect_status_project_active_projectstatus.py | 32 +++++++++++++ .../0078_alter_projectstatus_status.py | 18 ++++++++ ...oject_end_date_alter_project_start_date.py | 23 ++++++++++ .../__pycache__/0001_initial.cpython-310.pyc | Bin 2058 -> 2058 bytes ...ions_staffprofile_and_more.cpython-310.pyc | Bin 2180 -> 2180 bytes .../0003_milestone.cpython-310.pyc | Bin 1028 -> 1028 bytes .../__pycache__/0004_epic.cpython-310.pyc | Bin 971 -> 971 bytes .../0005_staffprofile_image.cpython-310.pyc | Bin 641 -> 641 bytes .../__pycache__/0006_note.cpython-310.pyc | Bin 1129 -> 1129 bytes ...ct_id_alter_project_status.cpython-310.pyc | Bin 824 -> 824 bytes ...8_alter_project_project_id.cpython-310.pyc | Bin 696 -> 696 bytes ...9_alter_project_project_id.cpython-310.pyc | Bin 681 -> 681 bytes .../0010_remove_note_date.cpython-310.pyc | Bin 576 -> 576 bytes ...r_alter_note_text_and_more.cpython-310.pyc | Bin 1187 -> 1187 bytes .../0012_projectrequirement.cpython-310.pyc | Bin 950 -> 950 bytes .../0013_projectfile.cpython-310.pyc | Bin 976 -> 976 bytes ...014_alter_projectfile_file.cpython-310.pyc | Bin 652 -> 652 bytes .../0015_projectcredentials.cpython-310.pyc | Bin 980 -> 980 bytes ...dentials_projectcredential.cpython-310.pyc | Bin 626 -> 626 bytes ...e_alter_project_start_date.cpython-310.pyc | Bin 747 -> 747 bytes .../0018_epic_status.cpython-310.pyc | Bin 716 -> 716 bytes ...date_alter_epic_start_date.cpython-310.pyc | Bin 706 -> 706 bytes .../__pycache__/0020_task.cpython-310.pyc | Bin 1203 -> 1203 bytes ...rprofile_business_and_more.cpython-310.pyc | Bin 1552 -> 1552 bytes ...ustomerprofile_customer_id.cpython-310.pyc | Bin 706 -> 706 bytes .../0023_task_assigned_to.cpython-310.pyc | Bin 769 -> 769 bytes .../0024_task_task_id.cpython-310.pyc | Bin 653 -> 653 bytes .../__pycache__/0025_status.cpython-310.pyc | Bin 1035 -> 1035 bytes ...e_status_user_status_staff.cpython-310.pyc | Bin 838 -> 838 bytes .../0027_alter_status_staff.cpython-310.pyc | Bin 798 -> 798 bytes ...8_remove_projecttype_color.cpython-310.pyc | Bin 586 -> 586 bytes .../0029_alter_reference_date.cpython-310.pyc | Bin 655 -> 655 bytes .../__pycache__/0030_tag.cpython-310.pyc | Bin 721 -> 721 bytes ...1_alter_staffprofile_image.cpython-310.pyc | Bin 657 -> 657 bytes .../__pycache__/0032_point.cpython-310.pyc | Bin 1015 -> 1015 bytes ...nt_date_workingon_and_more.cpython-310.pyc | Bin 829 -> 829 bytes ...nt_date_completed_and_more.cpython-310.pyc | Bin 876 -> 876 bytes .../0035_business_business_id.cpython-310.pyc | Bin 688 -> 688 bytes ...lter_staffprofile_position.cpython-310.pyc | Bin 878 -> 878 bytes ...move_staffprofile_position.cpython-310.pyc | Bin 617 -> 617 bytes ...taffprofile_staff_position.cpython-310.pyc | Bin 793 -> 793 bytes ...taffprofile_staff_position.cpython-310.pyc | Bin 809 -> 809 bytes ...0040_staffprofile_staff_id.cpython-310.pyc | Bin 688 -> 688 bytes .../0041_dailyreport.cpython-310.pyc | Bin 1012 -> 1012 bytes ...omerprofile_email_and_more.cpython-310.pyc | Bin 783 -> 783 bytes .../0043_businesstype.cpython-310.pyc | Bin 756 -> 756 bytes ...ove_business_business_type.cpython-310.pyc | Bin 590 -> 590 bytes .../0045_business_type.cpython-310.pyc | Bin 774 -> 774 bytes .../0046_task_requirement.cpython-310.pyc | Bin 770 -> 770 bytes .../0047_task_status_date.cpython-310.pyc | Bin 713 -> 713 bytes ...r_customerprofile_business.cpython-310.pyc | Bin 822 -> 822 bytes ...r_customerprofile_business.cpython-310.pyc | Bin 801 -> 801 bytes ...by_projectrequirement_date.cpython-310.pyc | Bin 965 -> 965 bytes ...051_alter_task_requirement.cpython-310.pyc | Bin 808 -> 808 bytes .../0052_note_project.cpython-310.pyc | Bin 760 -> 760 bytes .../0053_pointactivity.cpython-310.pyc | Bin 903 -> 903 bytes ...nt_date_completed_and_more.cpython-310.pyc | Bin 704 -> 704 bytes .../0055_alter_point_status.cpython-310.pyc | Bin 763 -> 763 bytes ...ter_pointactivity_end_time.cpython-310.pyc | Bin 668 -> 668 bytes ...otal_time_minutes_and_more.cpython-310.pyc | Bin 805 -> 805 bytes ..._total_time_hours_and_more.cpython-310.pyc | Bin 723 -> 723 bytes ...059_alter_task_requirement.cpython-310.pyc | Bin 804 -> 804 bytes ...0_pointactivity_total_time.cpython-310.pyc | Bin 668 -> 668 bytes ...date_alter_task_start_date.cpython-310.pyc | Bin 709 -> 709 bytes .../0062_connection.cpython-310.pyc | Bin 1078 -> 1078 bytes ...0063_alter_connection_date.cpython-310.pyc | Bin 637 -> 637 bytes .../__pycache__/0064_reaction.cpython-310.pyc | Bin 1022 -> 1022 bytes ...ter_customerprofile_status.cpython-310.pyc | Bin 750 -> 750 bytes ...business_business_customer.cpython-310.pyc | Bin 878 -> 878 bytes ..._customerprofile_confirmed.cpython-310.pyc | Bin 707 -> 707 bytes ...profile_confirmed_and_more.cpython-310.pyc | Bin 852 -> 852 bytes ..._projectfile_file_and_more.cpython-310.pyc | Bin 868 -> 868 bytes ...le_staff_position_and_more.cpython-310.pyc | Bin 1184 -> 1184 bytes ...jecttype_department_ticket.cpython-310.pyc | Bin 1403 -> 1403 bytes ...treaction_ticketattachment.cpython-310.pyc | Bin 1429 -> 1429 bytes ...073_alter_ticket_regarding.cpython-310.pyc | Bin 759 -> 759 bytes ...ed_ticketupdate_date_added.cpython-310.pyc | Bin 643 -> 643 bytes ...attachment_ticket_and_more.cpython-310.pyc | Bin 905 -> 905 bytes .../0076_alter_reference_date.cpython-310.pyc | Bin 647 -> 647 bytes ...oject_active_projectstatus.cpython-310.pyc | Bin 0 -> 1208 bytes ...alter_projectstatus_status.cpython-310.pyc | Bin 0 -> 782 bytes ...e_alter_project_start_date.cpython-310.pyc | Bin 0 -> 703 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 203 -> 203 bytes osinaweb/osinacore/models.py | 25 +++++++---- .../details_templates/project-details.html | 37 ++++++--------- .../edit-project-status-modal.html | 42 ++++++++++++++++++ .../edit_templates/edit-project.html | 33 ++++++++++---- .../templates/listing_pages/projects.html | 10 ++--- osinaweb/osinacore/views.py | 9 ++++ .../__pycache__/__init__.cpython-310.pyc | Bin 191 -> 191 bytes .../__pycache__/settings.cpython-310.pyc | Bin 3013 -> 3013 bytes .../osinaweb/__pycache__/urls.cpython-310.pyc | Bin 1240 -> 1240 bytes .../osinaweb/__pycache__/wsgi.cpython-310.pyc | Bin 596 -> 596 bytes osinaweb/static/js/pop-modals.js | 1 + 214 files changed, 209 insertions(+), 48 deletions(-) create mode 100644 osinaweb/billing/migrations/__pycache__/0052_alter_orderstatus_status.cpython-310.pyc create mode 100644 osinaweb/customercore/payment/__pycache__/urls.cpython-310.pyc create mode 100644 osinaweb/customercore/payment/__pycache__/views.cpython-310.pyc create mode 100644 osinaweb/osinacore/migrations/0077_remove_project_status_project_active_projectstatus.py create mode 100644 osinaweb/osinacore/migrations/0078_alter_projectstatus_status.py create mode 100644 osinaweb/osinacore/migrations/0079_alter_project_end_date_alter_project_start_date.py create mode 100644 osinaweb/osinacore/migrations/__pycache__/0077_remove_project_status_project_active_projectstatus.cpython-310.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0078_alter_projectstatus_status.cpython-310.pyc create mode 100644 osinaweb/osinacore/migrations/__pycache__/0079_alter_project_end_date_alter_project_start_date.cpython-310.pyc create mode 100644 osinaweb/osinacore/templates/edit_templates/edit-project-status-modal.html diff --git a/osinaweb/addressbook/__pycache__/__init__.cpython-310.pyc b/osinaweb/addressbook/__pycache__/__init__.cpython-310.pyc index faaaa519531ad0e210ba8d4499bc9456c8b001be..bd9d25ee7bf3a6b1a9a6c77d0dd7ec58e7ddb4ae 100644 GIT binary patch delta 19 ZcmX@ac!-fZpO=@50SK5*+fU@)4gf1=1cU$p delta 19 ZcmX@ac!-fZpO=@50SG2-v6;xd9RMyz1o{8~ diff --git a/osinaweb/addressbook/__pycache__/admin.cpython-310.pyc b/osinaweb/addressbook/__pycache__/admin.cpython-310.pyc index 6a86c81a49d0db7b53c07cfa59126f069b03f27c..1c101c58bed0b9d64eda5778c62076eb4b6ee781 100644 GIT binary patch delta 20 acmbQhJb{@zpO=@50SK5*+i&D#VFW+` delta 20 acmbQrKb4<5pO=@50SG2-vDwJo#SQ>2xCFKU diff --git a/osinaweb/addressbook/migrations/__pycache__/0001_initial.cpython-310.pyc b/osinaweb/addressbook/migrations/__pycache__/0001_initial.cpython-310.pyc index 78e5382dcfe170663ba46961993e2d72719c23c5..6f0f6e0f7fcec8fe7eb85e38ecdf766df019a654 100644 GIT binary patch delta 20 acmdnPx`&lJpO=@50SK5*+i&FF$OHf|3b%o{RD#m diff --git a/osinaweb/addressbook/migrations/__pycache__/0003_contact.cpython-310.pyc b/osinaweb/addressbook/migrations/__pycache__/0003_contact.cpython-310.pyc index 965a654644826f03cea42a3d092417d6ef13c784..4b52d2c9d371941606f61e4d495cd4935ae638ee 100644 GIT binary patch delta 20 acmaFM{+69PpO=@50SK5*+i&E4#0&s8{RK1t delta 20 acmaFM{+69PpO=@50SG2-vDwJ|h#3GoR0XO4 diff --git a/osinaweb/addressbook/migrations/__pycache__/0004_socialmedia.cpython-310.pyc b/osinaweb/addressbook/migrations/__pycache__/0004_socialmedia.cpython-310.pyc index e426d6400e41330f96fbf6689dc68d61eb8b9819..8740a0710581a78bd820b9101d531aecc5ce6e1b 100644 GIT binary patch delta 181 zcmbQsK9`+4pO=@50SK5*+i&FNU}U^CS%fj)mmesi$#jd;Gq1QLF})};w@3gY!WdB` z2w|~>WM-G-XBP=UxEwy2dD*EcnR!LR5CQhc{L+%rq|_pj$rl(c_{4#tw^(w3iZmIE wq$Z0oO=MFC3KgkOUdwb$3&I5RL4*cKF^5fVeoARhsvRScSIhz=1enB_0i|Lp5C8xG delta 181 zcmbQsK9`+4pO=@50SG2-vDwJY!N?djS%fj)mk%hS$#jd;Gq1QLF})};w}>Ai!WdB` z0AaC(WM-G-XBP=VxEwy2dD*EcnR!J*5CQhc{L+%rq|_qe$rl(c_{4ysw^(w3iZmIE wBqxh8O=MF83KgkMUdwb$3&I5RL4-O;F^5fVeoARhsvRScSIhz=1enB_0iMDs_y7O^ diff --git a/osinaweb/addressbook/migrations/__pycache__/0005_socialmedia_addressbook.cpython-310.pyc b/osinaweb/addressbook/migrations/__pycache__/0005_socialmedia_addressbook.cpython-310.pyc index e7f1477118438de88ae53e90754a6b23e6e230b9..97f420004c5eb1bb165b744646ecb2c2e95c8f0f 100644 GIT binary patch delta 66 zcmeyv`iGS}pO=@50SK5*+fU?v$QU*8?I$*IAiqd_@>9l#QbHgm3z&~eNKAgfBm)3E CNDoZ_ delta 66 zcmeyv`iGS}pO=@50SG2-v6;yIknz^Ux1ZP~fczqf$xj&{N(qCQEMPt=AvyU0lMDcC Ca1crW diff --git a/osinaweb/addressbook/migrations/__pycache__/__init__.cpython-310.pyc b/osinaweb/addressbook/migrations/__pycache__/__init__.cpython-310.pyc index cf13ccc831a78eb61a99102385e6e20717f3c85a..33fee86c9e25be9bdf2aa2c2dd3afbcee748af73 100644 GIT binary patch delta 19 ZcmX@hc$SenpO=@50SK5*+fU>^1OP1k1f>7~ delta 19 ZcmX@hc$SenpO=@50SG2-v6;wy2mmkM1sebW diff --git a/osinaweb/billing/__pycache__/__init__.cpython-310.pyc b/osinaweb/billing/__pycache__/__init__.cpython-310.pyc index 561effe0d1be91246e509718180b68fad71990cd..a4904e70db7d651a2acd1a006df2381bb18fffda 100644 GIT binary patch delta 19 ZcmdnTxQ~%LpO=@50SK5*+fU@)3;-(91b6@d delta 19 ZcmdnTxQ~%LpO=@50SG2-v6;xd82~M_1nvL; diff --git a/osinaweb/billing/__pycache__/admin.cpython-310.pyc b/osinaweb/billing/__pycache__/admin.cpython-310.pyc index 421a0ef4e6f9f68e1bf7e944ee0ce5ca9fe593d8..a2c1db744da4af4b40a9cc5885c7693204806727 100644 GIT binary patch delta 20 acmey&{F#|MpO=@50SK5*+i&E4!3Y32TLnA- delta 20 acmey&{F#|MpO=@50SHb?*>2>1!3Y33oCQz- diff --git a/osinaweb/billing/__pycache__/apps.cpython-310.pyc b/osinaweb/billing/__pycache__/apps.cpython-310.pyc index f4dfbe86d15683322b854bf8a27710f8cf022aef..a0076559a1c652352d47ac9454484dcc14c28fd9 100644 GIT binary patch delta 20 acmcc4e4Uv)pO=@50SK5*+i&DP!w3K~`vm9! delta 20 acmcc4e4Uv)pO=@50SG2-vDwIdh7kZaQUzWB diff --git a/osinaweb/billing/__pycache__/models.cpython-310.pyc b/osinaweb/billing/__pycache__/models.cpython-310.pyc index 747080e514b18843062e7a2e920edd13eba0cc76..a5e583c3cfaee79879e12f16164400fa845e2fda 100644 GIT binary patch delta 386 zcmcbo`$?BKpO=@50SK5*+owI*$Sc9k$U0e#+gVVP=@++WosoRQp%JMLq+l_7<;yUTR1_kZ{XP%}FUT0*Vy{fr!}2 z34&g%X+UQ5c?k`r78G*Ya5salEEnK6d)(j5)1#eXZ zX9uN|ga5!$5FFf{1V>$b7sWf?$K&4n-uJ%yEWedmm$95i=WK4}=<%NA4anlGv5JXt z1!JRv*#_9gA!|T@&#VRqSg@vNnnYNq=m`Q{v%v=I?+VCJCY$JF^B7y-(8Ors9a^|= zPeF)@jWok?)=Dj+zOt=OxZ5SDwZr2>xkztvM?rv*vr!Bw-J|GP1WJd4PFgyMj0{OZ z;D>Vy5-)ibPVj|S{fHVnilI#Dnwf58f{duUi1o>*Y(NFPc6~^2LDb1sUsNE%k(e*V zR612;J0)}Yr7LSRB2EQ8_XdXe;4T^G)Fk@~V*GNK{Q;#H6#vpWT9kMLYSTyWhpegMx3Q3?P6 diff --git a/osinaweb/billing/__pycache__/urls.cpython-310.pyc b/osinaweb/billing/__pycache__/urls.cpython-310.pyc index 284cf672badbc4b4ae74e1d2d755272883ffb7f1..8369d8b3e89d51fac2a318a2389085f2cea25187 100644 GIT binary patch delta 20 acmdnbwx5kVpO=@50SK5*+i&DHVFmy%sRSqh delta 20 acmdnbwx5kVpO=@50SL-PZ8vh8FarQCjsxWY diff --git a/osinaweb/billing/__pycache__/views.cpython-310.pyc b/osinaweb/billing/__pycache__/views.cpython-310.pyc index ad7fcc94b20b4b355d294b187a90a24be09e2ad4..553adc48c2feef2925e0a402766f56046fb02a3e 100644 GIT binary patch delta 905 zcmaJ=J8#rL5Wao*Z0CH=U2>0voQQ%TkrOF$6hVgqq9Kigcofi_tXqd%S^96wa5O*Lxi5LQq{M}Me zLzK{;4&@#3nSk&adSho2KPiMS{)1IcAB4{b(J<={qHHf==`w7*2(Tnh=}Z3tn7Ra1 zGf6AqEaKfhGv>|LDjsaX8K6HF|M+Gnq!8K(K~~YQ*>zLI48Nm z%(vvQoLPB^S$X*txmWV+z(f3sN<2fwk+!m>+0UYZQgPoylJ3S~<`Es0m2-V6oQkjI zjU$^AmB8U5(%u2_+bYI&v8Evck0C2h!}v**cH@4UNk?zHQ>7y;;-|bQCI9Ad zrnIDd4Z`D(hj~l9H`{a2Iu2?e7d0>@7-3ZY;gq>AzL^hemmqHi04~SZL||C&&m zdR*&RM~(zdIGaO9j-HrBS=f)$Ksi(RAt2|xjW*OW@T#)L_QT=hWIf$WPHca(t=vVc Z>$Y5irS1?PEJ*sR{q;v^iJtAD`Y))Sr*Z%Q delta 1109 zcmb7DOK;Oa5YBqnStoJQG)*6*t%_PvFi5nhj}sMD;Xp4fP&kxJ6lGnJ$Vt$8g9>t0 z5C={X5_<)yJ@&{E{s8>}octd+Ag)L-v+hHcA|!0>=h>N^&$ILRGT0j`bn^LZ3Z5U| zZ|{7{d@hU=a-^@5cOxz+WgZ~r^-f#)yXq(hG^*b_9x49?rH0r` diff --git a/osinaweb/billing/add/__pycache__/urls.cpython-310.pyc b/osinaweb/billing/add/__pycache__/urls.cpython-310.pyc index 72e069af589b2dedb11c20577676f6d992840ee4..895827a77d4eca95d5345571ae5105c16b6a594f 100644 GIT binary patch delta 36 ocmeBW?`7xB=jG*M00O4d_GykAd5f8OnfMs_n1GOxkCEdG0C+D32mk;8 delta 36 ncmeBW?`7xB=jG*M0D^C7wrLIn>c^Z~TAA)taJF!C^=rHKfkMMOYj5iqbJwK79!0;S%m5)dB= ziN^I=`rsQ7w28)$_yvp$mv-U8wTUrd;Xa9Fcmx!wTv#w9=mpep)6W*`G=MX9qBPdQGJ_EYJ5EzzJ zwHvqWLeaAAT)`9xq@4;W&iOhi$&Y+}l;u~x3{CKNU(p)CjrkAEL+nRBxkf<*hzS-A=tIicW*8U47>bxhj7?h|yc=rf z3&938jocMp47Sf?WLVX+!nDM6esj$#mc=Aio<9=o(!DE~fmUXAp|oJP@}5&pX~-j8gN;O^)cedJO!L)-i^ z`oo8g$K`>f_;u51?XH{&0y+ND)Z@jf;gX9dW7FyD$mhY5WKNg}EwBt$KtW=JYL_F8 z#2j$$#R%`mItDf{_W~TA(7{a*0ROj*>^=6yTh;prH@GK0tKoVG0q!_gCKvVSrP_bW zmCWTh@5K|eQ~4Zkq>c$}n*v!d4;H{S*a2Nmk)CGbgvU=xiyUoo7;=QJ*|}Br=Ct4=U1K-jqrC*&g#aAGvKVm^a&T@CU734Km%w7 zgJ4KfR_(cUOQ@KmE>o+Nbn(xENFYjrVJ0KQpS+RA`*Ld6N_0ghO;Jc8jkH5|Re;18 z2YuUgiFbWZXq1z>DdV)>N6+|$-bCZ2clsc;JNY6=IsqoZRd88iDq;#T4i#H?$EfFv zfm+S^jw^gC&^$FDcgp&N$XH@>?!k(cD~M4%5yQG`E|U?}m^wZ7S3byTy7O8m_rLGv z4}t5n&8~U zWLK=>YR(cv+!b!Cy@{PFJHMPQ{BAlghdZK9p(xJ`{#_aGg^RSt?U4)gk@JxhZSc#; z4-YCHmJLbr>$;P^O*s<;Zu8f=xEs5sOKu*IP7b88eh17;u89SN8DN3CU`b*cmCNDu za~iA8y*S5v(U#;o=5B!I2_58tAN*f7Rv)q_)~G!~xX$s|v=7%qtbw9)WzvxV*~&+K?J7& diff --git a/osinaweb/billing/delete/__pycache__/views.cpython-310.pyc b/osinaweb/billing/delete/__pycache__/views.cpython-310.pyc index 22766744ea33f3f4154b764dfdd211e886377dc6..69c843cb5312cc8be9def999be6f20c35e1a3766 100644 GIT binary patch delta 38 rcmey!{*j$KpO=@50SK5*+i&E)#Kd@O@;#;)Mv2MR%+)}0JF^u4(1{A# delta 38 rcmey!{*j$KpO=@50SJPWZ8vgXVq%P%e2*!HQGBvBb2X6M&TIt$zuO7^ diff --git a/osinaweb/billing/edit/__pycache__/urls.cpython-310.pyc b/osinaweb/billing/edit/__pycache__/urls.cpython-310.pyc index 8f83279a699363113fd5d50b95796c517ac725a0..63f7ec896d361ec4bde3087bded0d27645604685 100644 GIT binary patch delta 178 zcmdna{GC}lpO=@50SK5*+oy#xGB7*_agYH!kmCTv#aZi#u@t(bO5gX9p tTim5ZIR%L&C8!qChZ#hJnx%%I7&v7~~L z@z&(GjM9uElR25@%83DWB{PEbLID$yW&vVnApSi02$OyNO2#6P;7X<hB5|OsCX-*4F4&lo z)ZBuc#FErv{nCPz#FB_q-Tb1I)FR#DlEjkIVqLK5dKo3TIYkmceMOQW0?j?bV4bP) zV2$w*jp`tE(jWrlG(SzQ$$re)o*@5&T?ZCLG6!rT*mE23NpMrlUj$)Zei zunBOh?&tKun#<*~}lz)IdxY hFdvoB1#)k3*yQG?l;)(`F#>tTY(PSQiGxv$832Kn6W#y- delta 103 zcmbQpIgyh)pO=@50SG2-vDwJ|laVoMGAq+mHgTXxk;LQ$Oh?(YK}_w**~}lzR6$G@ hFdvoB0dj9~*yQG?l;)(`F#>tTY(PSQiGxv$832G+6UzVq diff --git a/osinaweb/billing/migrations/__pycache__/0004_rename_payment_paymenttype.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0004_rename_payment_paymenttype.cpython-310.pyc index 43171b0d70b75e4ec965ba9aae9b64da0d5c6956..e92d1753eb988489d92621670bda7b31c8dbc35b 100644 GIT binary patch delta 20 acmcb>a)E_ApO=@50SK5*+i&D{WdZ;)2n1FD delta 20 acmcb>a)E_ApO=@50SG2-vDwJ&$^-y4Uj)nm diff --git a/osinaweb/billing/migrations/__pycache__/0005_service_recurring_cycle.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0005_service_recurring_cycle.cpython-310.pyc index 94e0bf4b0e5f903600822cac3723e1fa0d9e52d9..90781d12eaa90bffa963ee7d03f114153bcf553a 100644 GIT binary patch delta 19 YcmeBX>t^H5=jG*M00O4d_6xb00VB`@d;kCd delta 19 ZcmeBX>t^H5=jG*M0D?(dY!-4e0{|wm1M&a> diff --git a/osinaweb/billing/migrations/__pycache__/0006_alter_service_cancelled_at_alter_service_created_at_and_more.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0006_alter_service_cancelled_at_alter_service_created_at_and_more.cpython-310.pyc index 3c628d69675d363846c18658cb6da485d0a82e07..634c2591b87fbfec1d9621733d73be90b1dfa968 100644 GIT binary patch delta 64 zcmbQjHieBlpO=@50SK5*+fU^F!FX#j3u7K5*W_Zx0yc4=aFO`tmyC>z0uVM>07OVk I{>3B(0Lmi`hX4Qo delta 64 zcmbQjHieBlpO=@50SG2-v6;yIgE49{3u7K5=j39>0yZ(AaFN*NmyC>z0uVM>07QsS I{>3B(0Lw28b^rhX diff --git a/osinaweb/billing/migrations/__pycache__/0007_alter_service_recurring_cycle.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0007_alter_service_recurring_cycle.cpython-310.pyc index a0153ee021f5815e1f2b67ff36c4481569125595..b7206cd003e6b46469097e7fa6f4ff8fe611c7fb 100644 GIT binary patch delta 20 acmdnTwvUZFpO=@50SK5*+i&DHW(EK+fdnN0 delta 20 acmdnTwvUZFpO=@50SG2-vDwIN%nSfB*aVvZ diff --git a/osinaweb/billing/migrations/__pycache__/0008_alter_service_type.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0008_alter_service_type.cpython-310.pyc index 8103ba906fe2bc916d353edf30b240dc611e99ce..9c6025d250fb9adddf3191f0b8466f4920ef6ef9 100644 GIT binary patch delta 69 zcmdnXwwH}NpO=@50SK5*+i&ESWMsUxS(TBAkxd3DR3tN5m+6+2IEcvt=A#m_lNFg| E0LO3(y#N3J delta 69 zcmdnXwwH}NpO=@50SG2-vDwHi$;cSBS(TBAkxd#XR3trFm+6+27>LON=A#lalNFg| E0LZ`#tN;K2 diff --git a/osinaweb/billing/migrations/__pycache__/0009_remove_service_due_at_remove_servicepayment_service_and_more.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0009_remove_service_due_at_remove_servicepayment_service_and_more.cpython-310.pyc index 95e305642f58f76e99ae355625e9214ea046fb19..1658728a4b17ef04d1b92cb33b81fecb42a78148 100644 GIT binary patch delta 120 zcmbQjIfauupO=@50SK5*+i&D{Wn_$+9LT6Bdy6flG&Mf4M3dYHttl^CTIL2MSV04kv|xq?Lo0F|#C Axc~qF diff --git a/osinaweb/billing/migrations/__pycache__/0010_charge_amount.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0010_charge_amount.cpython-310.pyc index 923569dd5e912fcefc8654bb7e5f4920dd233706..70a42f53757477db474587e8a0816204261ab609 100644 GIT binary patch delta 62 zcmX@XdV-ZZpO=@50SK5*+fU>^!x%O3h7)7dWNF6zY+^vsBC*L2821T4m|#AL5TCq` GNeTeuZVqk$ delta 62 zcmX@XdV-ZZpO=@50SG2-v6;wyhVjpO=@50SK5*+i&FVVgdju^aLjW delta 20 acmbQrI+c|>pO=@50SG2-vDwJo#RLE?O9Y(& diff --git a/osinaweb/billing/migrations/__pycache__/0014_servicepayment_comment.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0014_servicepayment_comment.cpython-310.pyc index 13779054b618b1175686f4ccc495fe9a6a19d02d..1c7e3cd95c04e03ab29922ce56eeee04c11a7599 100644 GIT binary patch delta 56 zcmbQjI)#-xpO=@50SK5*+fU?v%@{TD`!Y6RAiqd>@?ys00uUyc40G!1Q AVE_OC diff --git a/osinaweb/billing/migrations/__pycache__/0015_order.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0015_order.cpython-310.pyc index 2135839f09005c4dc02f89fecb28adfdb1631a05..86a67347ff9dd614090c450a57b2080ab73d5c75 100644 GIT binary patch delta 147 zcmcc4ah-!ZpO=@50SK5*+i&FdWn{cHIg+v3MGz>W$#jd&Eip4EHKj-h!sT>M%u7zq z0f`7hMA!pT^HMVN(u+hOd=|g_ywoC5Ag4%lvILVOqvYf$rgv-xAOVBPe$1Dpv_VW3 NFdvmLoNUb^0|0L)A&~$8 delta 147 zcmcc4ah-!ZpO=@50SG2-vDwJ&%g7itIg+v3MF1$G$#jd&Eip4EHKj-p!sT>M%u7zq z0f`7fMA!pT^HMVN(u;&4d=|g_ywoBQAg4%VvILVOqr~JWrgv=mAOZc!e$1Dpv_MQ2 NFdvmLm~71=0|0AIA$b4* diff --git a/osinaweb/billing/migrations/__pycache__/0016_alter_order_status.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0016_alter_order_status.cpython-310.pyc index b9abe06c6addf8575ee465c254c3eaec81aad043..074244ce74f565c81ee16c040decdaaa3ed01c41 100644 GIT binary patch delta 20 acmcc0dX<$spO=@50SK5*+i&DP#RLE|^aSSs delta 20 acmcc0dX<$spO=@50SG2-vDwIdiU|NWO9fp3 diff --git a/osinaweb/billing/migrations/__pycache__/0017_service_order.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0017_service_order.cpython-310.pyc index e8289bdd2d6c119c1d09ca21185516672ccbb0cb..92a6b667240c68b7fcdd2f196a5de0d87a117572 100644 GIT binary patch delta 20 acmaFQ`ks|LpO=@50SK5*+i&E4!UO;~1O+t! delta 20 acmaFQ`ks|LpO=@50SG2-vDwJ|gb4sUTLr5C diff --git a/osinaweb/billing/migrations/__pycache__/0018_alter_order_status.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0018_alter_order_status.cpython-310.pyc index e08bbd58d08116a9f568b9818ef09dc314d63d13..1bc8fb7f379359037a008ccdeaab254ecb69ac86 100644 GIT binary patch delta 20 acmcc1dY6?upO=@50SK5*+i&E)!~_5}Gz9+u delta 20 acmcc1dY6?upO=@50SG2-vDwIdi3tEWiv@K6 diff --git a/osinaweb/billing/migrations/__pycache__/0019_item_orderpayment_remove_service_customer_and_more.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0019_item_orderpayment_remove_service_customer_and_more.cpython-310.pyc index 8c023eb0d4ead089e8ce7e97a59bd09eecfc30f2..0c7c0313dd0bfa3feec70eb04c8e463f536993db 100644 GIT binary patch delta 70 zcmdlcv`vURpO=@50SK5*+i&Dv%gPwFc_-^sMz%npP*LFK5cV~UQm!C23s?Y^2%0R# GDFXm9`wo-< delta 70 zcmdlcv`vURpO=@50SG2-vDwJImX-0==AEol8QFq>LPbHFL)h0aO1Xj9EMNgtB6zYC GrwjmQeGicU diff --git a/osinaweb/billing/migrations/__pycache__/0020_orderitem.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0020_orderitem.cpython-310.pyc index ad6a7fd21e13a4421f20c32ea64a1d5c80632db4..623f33fc5afa2370c24272b83b185be06f85458b 100644 GIT binary patch delta 69 zcmeBR?_lT7=jG*M00O4d_8Ymm85wVF7H3RiWK#eN6)8-vXSysU4Pvr@`KW~A delta 69 zcmeBR?_lT7=jG*M0D?(dY&LRpGcrbP7H3RiWRnL970FMoXSysU1!A&*`KW}#||M{Pf`*fCJUI4 LO2|#tWR?K{=lc+B diff --git a/osinaweb/billing/migrations/__pycache__/0022_remove_item_cancelled_at_remove_item_created_at_and_more.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0022_remove_item_cancelled_at_remove_item_created_at_and_more.cpython-310.pyc index 1aee6945de7bf27ac048043638fb854d50cdbace..ced29d12441e968b77e34b611ac344461ee21b79 100644 GIT binary patch delta 70 zcmX@jcAAYlpO=@50SK5*+i&EKWaNqB%r8nwEy^rO&5fE|z_@}<6ew9Fx>=5inNa}3 N1`B`)vB`$aQUFao4!8gS delta 70 zcmX@jcAAYlpO=@50SG2-vDwHS$;fkyGruS$wJ5VBHTTx!0>%|=;y}qF@y&8f%!~pM OHdp{eNK7_lmI45i`Vcw* diff --git a/osinaweb/billing/migrations/__pycache__/0023_alter_item_project_alter_item_type.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0023_alter_item_project_alter_item_type.cpython-310.pyc index cbd8c671d50020c14a7b396dd8e597e0fe9b4b03..f17d50cadc236c06dd74140af8fe21b81876bc94 100644 GIT binary patch delta 20 acmZ3>zLuRkpO=@50SK5*+i&Dv#0&r}{RDIX delta 20 acmZ3>zLuRkpO=@50SG2-vDwJIh#3GeR0Qe( diff --git a/osinaweb/billing/migrations/__pycache__/0024_remove_item_active.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0024_remove_item_active.cpython-310.pyc index 6ada680bef1e927539d2e36160704d250df7d99c..43b68d8caf8ea45827670414545a77445e741a25 100644 GIT binary patch delta 56 zcmX@ba*BmJpO=@50SK5*+fU@)#27Vk-vTy%Ais!zath-f0SFV!2N4334Va_=a{&vh delta 56 zcmX@ba*BmJpO=@50SG2-v6;xdiSgFNeGAwGfczqX$tjF`1RzW>A4CXFHeiwh0GV41 ArvLx| diff --git a/osinaweb/billing/migrations/__pycache__/0025_remove_item_project_item_customer.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0025_remove_item_project_item_customer.cpython-310.pyc index a93e05677fa9516f25cbcbb12baaa62b3aca3b15..c1cecda21e93cc65d128bfcdebadbd79b3d74962 100644 GIT binary patch delta 79 zcmeyt_JfT(pO=@50SK5*+i&ESWn{cHS(CAejT^z!)|0OaUXuWLw4@HW8p`k;vrrj1L4LOfVlrh)$l* GBn1G=#0|Ls delta 62 zcmdnVx|5YVpO=@50SG2-v6;wyfbrJEGX;#ClWiGu*hGP%MWU0}Gd>W2Fu{BfAvSqF GlN12>2M)FX diff --git a/osinaweb/billing/migrations/__pycache__/0027_item_type.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0027_item_type.cpython-310.pyc index 502d5ebd3d9e62b4c6b01f451cc9dd3e3913f6d6..fd80e9f349ea9f3ef1c05e07d7c74098bfbc0556 100644 GIT binary patch delta 20 acmX@gdX$wrpO=@50SK5*+i&FF#RLE`bOg5m delta 20 acmX@gdX$wrpO=@50SG2-vDwJIiwOWU%LOd} diff --git a/osinaweb/billing/migrations/__pycache__/0028_remove_order_due_date.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0028_remove_order_due_date.cpython-310.pyc index bfc28c9d8f0ed104e37f13393290186bb18d7bb8..a0ece05a6ea7e87986be65dd087e8f9e6eb58d26 100644 GIT binary patch delta 30 kcmdnavYmxHpO=@50SK5*+fU@)#CU7sJ~76qjaQQx0e1oj^8f$< delta 30 lcmdnavYmxHpO=@50SG2-v6;xdi7{&8J~75y8?PoY0swq<326WT diff --git a/osinaweb/billing/migrations/__pycache__/0029_invoice_pdf.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0029_invoice_pdf.cpython-310.pyc index e7ce204c6ba929cb433139f44c5187b5789fa443..ec6207e6fa36fdc49f105af65eae7ec1183e8a80 100644 GIT binary patch delta 56 zcmeBR?O^53=jG*M00O4d_7l0!Fh)(hafD3_$S)F`yohm+0E7wVg9!1-c}!9OY7P0uUyc4^#dvGtwKHsDKz@9wKHs@Kz@^!x%O3#$`59Aiqd-@^!x%O3#zi(UAiqd#@_NRz0uUyc4(^b diff --git a/osinaweb/billing/migrations/__pycache__/0040_rename_due_at_orderitem_end_at_and_more.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0040_rename_due_at_orderitem_end_at_and_more.cpython-310.pyc index 448e581f2765d33437d9930291a022d4783f9a27..daf7585fcd7e57d618b073c1ba71e5291d002880 100644 GIT binary patch delta 20 acmeyy`i+%4pO=@50SK5*+i&E4%>)2B90f`M delta 20 acmeyy`i+%4pO=@50SG2-vDwJ|nh5|ra|OTv diff --git a/osinaweb/billing/migrations/__pycache__/0041_orderitem_active.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0041_orderitem_active.cpython-310.pyc index 213ab6b8399753a7dd58b9f31606c1f3fa2339d4..0440e03f04038b99fcd2da28350b84767393d553 100644 GIT binary patch delta 62 zcmbQuI-8X{pO=@50SK5*+fU>^#dvGtHC@JAlUW#-v55jji$o`HU_2-QVS@P}LTqv) GlN12w6Ao(t delta 62 zcmbQuI-8X{pO=@50SG2-v6;wyiZN>9HC@K2$t;Y^*o1+iMZ%LeFdh_uFu{BfAu_p< GNeTefa1GS} diff --git a/osinaweb/billing/migrations/__pycache__/0042_order_due_date.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0042_order_due_date.cpython-310.pyc index ddd1a8a72410df2ef1808eaf7b457cca3e034ff9..85278b7be7b58716af81502a906b565aeba26321 100644 GIT binary patch delta 56 zcmeyx@{5H#pO=@50SK5*+fU>^#TYg5+Ez9ZAiqdt@d1x!)^Yby*G delta 56 zcmeBT?PBH5=jG*M0D?(dY$kG_V!So++FmwMAiqd-@=V6#0uUyc4tf^1=jG*M00O4d_8Ymy85wU)R%Q%f;{=KnaZRpdtYwn~F(oJeVSFM0VS@P} KLTd5{CMf{n#tt3; delta 69 zcmeBT>tf^1=jG*M0D^0mZ8ma?Gcra^R%Q%f;{b{jaZavetYwn`F(oGdVSFM0VS@P} KLUQs4CMf{;f(~y0 diff --git a/osinaweb/billing/migrations/__pycache__/0048_remove_order_status_orderstatus.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0048_remove_order_status_orderstatus.cpython-310.pyc index e761dd1b8b21bb384a5cef3111e4e7fed2e0ebef..f26b4b6bd65a12ad3aa9a01abf7da486d23f7563 100644 GIT binary patch delta 20 acmcb?af5?9pO=@50SK5*+i&FdWdQ&)+5~t2 delta 20 acmcb?af5?9pO=@50SH>8Y&UZIvH$=xI0Q!k diff --git a/osinaweb/billing/migrations/__pycache__/0049_rename_due_date_order_date.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0049_rename_due_date_order_date.cpython-310.pyc index 784799cee6d912ede7ffe9c8f39c7f180bb11e2a..b1cb3ad9411dc2dbc617c4e20845e897fbdbdb77 100644 GIT binary patch delta 56 zcmaFG@`{B!pO=@50SK5*+fU@)!WcF2z!o+^Aiqd(auwq-0SFV!2N6P(1DK=$hzAT$ delta 56 zcmaFG@`{B!pO=@50SG2b*-qr%!gy=qfh}x8Kz@;)hI delta 20 acmaFC`ht}^pO=@50SI=g*ly&$%LD*7`2{Wj diff --git a/osinaweb/billing/migrations/__pycache__/0051_alter_orderpayment_amount.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0051_alter_orderpayment_amount.cpython-310.pyc index 79132a065e470702e33e9f922998b7f7d4897ace..dac0ae50e52da23bdeb138d46f45156a17668b32 100644 GIT binary patch delta 20 acmbQoI**k*pO=@50SK5*+i&Ea%me@{Tm(V@ delta 20 acmbQoI**k*pO=@50SIc; diff --git a/osinaweb/billing/migrations/__pycache__/0052_alter_orderstatus_status.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/0052_alter_orderstatus_status.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3b694976398b126b50151532e9e383688025672e GIT binary patch literal 780 zcmYjP&2H2%5Vn)-Zjx;!)B_g~>IrEtO{w69ps1(_2}-4kOD>i-o=vkjcCfQ5dqi;U zOK{^&kaz=MIrSAPp)z)gx|Tfl_sw{It+%&xf-Cy{a&Zt5^2dYCl^{68Z6Bi$L{Ldu zTGBQuBTC*75sCOa5i!tZ{4FkHk(`m)=n8GgEOL3<)Q0zsR@RMMEkN4Jt2S4P;1IWc ziULSU1t}vzYg)#TEJr>7jF*#|h~x(qBQX|}%UGnBFG-+@)id7emFmlBAZ^e46{a_wvk`j8j&$2e=s_5to%eYPN}x}Z z4S0Oa8;NS)yYPUk3Z!SIfw`W(RlBD~*9NRLTgZi%SHHYAc9ZH{Hx*bn5wPGZ*<+{p z7bZc~{W F{s&lF+j#&0 literal 0 HcmV?d00001 diff --git a/osinaweb/billing/migrations/__pycache__/__init__.cpython-310.pyc b/osinaweb/billing/migrations/__pycache__/__init__.cpython-310.pyc index cc0f6a195f2a284e3c7a00b470ab29815088e5de..365d085d6d29009ec1a24931fc9de9527806fb12 100644 GIT binary patch delta 19 ZcmX@fc#@GjpO=@50SK5*+fU@)2LLQ-1epK; delta 19 ZcmX@fc#@GjpO=@50SG2-v6;xd4*)Mp1rGoK diff --git a/osinaweb/customercore/__pycache__/__init__.cpython-310.pyc b/osinaweb/customercore/__pycache__/__init__.cpython-310.pyc index 49f82b599634726eab2e020d7e7b53b7e29b0bef..2b478517f8389f6b4d752d4bf5da21d9510fba4d 100644 GIT binary patch delta 19 ZcmX@ic$kqppO=@50SK5*+fU@)0RStD1cv|s delta 19 ZcmX@ic$kqppO=@50SG2-v6;xd0{|{;1pNR2 diff --git a/osinaweb/customercore/__pycache__/admin.cpython-310.pyc b/osinaweb/customercore/__pycache__/admin.cpython-310.pyc index cf27a1c0ccadf3e642deb0aade3d0c32312a5af6..5cedacf7c199a5507f0a2734de75332a95e9886a 100644 GIT binary patch delta 20 acmX@be2SSnpO=@50SK5*+i&FF&jF delta 20 acmX@be2SSnpO=@50SMkn+iv9E&j`5KM#>ISda(G&nex<7yQfb@zIEBWt+O zXo96#gu`GrG%_$W7h}O>L%|;)_yepNFtCHy^{QUID(ZLsJvS3$Qo(QeWB7cyFz?`K zvAo&7^3q0Dk+1@x1b4OgcKs41HBgnZP^4DLS`^whYgGd^#+*+mu_-n%DWPamv)05u zv(ZZV9GjTFkeHR=^UBw1%u9G6*03^Y)=)^2bw@<pd>FOW;DM z$o+Obwzffutuk7*)?)USGHl-yMRxI$xN+33n%TU=BRagUA>#rW+qFHe?r_xSfA``P zMa64mMnIAx(iCI&gMK0gz2gCF)I9uwz5YPDn6I@-&gU~fc|CTIIFp2-eAXC%OStrT zDQ`pg8trMPn1)}`G34Q{dV1Jm>e>}_7*6{CEJl;*_|0hQCU$)8XRcc*dKDz$i+XtN vRuvkCP4?<+=121>p84@d;r7F>eh;niNgu*N_^D5J4l3#X|8OTfj&J-05959Z delta 571 zcmY*XJ&P1E7)~-@+4;Er-a`cuQDotYb3trQ(L*d%@U%FTWtlg3Y~0(~&14RX3|ClK z4Y&+q;T5~rS^E+XBF`- z@9EpV&IUSeFBu?H*QhIn6;YOQeC0y_+vx#LtMG3oX9M#yk~3< z)A_M((Kt(Ga>B&pArV1&iM;%JN_OxKVe7}PoH)tmvT~jZV50Ka+jy1%tK5TW{D#T$ zyY&P&%f9_$)YWX!Gtk#?IQZu}P8MuFUWkOVSf*lN7~2Md^4#9Pe9NRQ4OK9kq;i}s zU?SNUBzDU`_9uL;{NRl6sQl&}-WeI{?*DMxDCyow0@;k+$GS?*C!vU9id#4&e*yAz Bm>d8A diff --git a/osinaweb/customercore/__pycache__/decorators.cpython-310.pyc b/osinaweb/customercore/__pycache__/decorators.cpython-310.pyc index bc6873e0098351fbf53d626fcd46ec07f8200b09..8c42edbf24ee1a15f8d0396c13b5417c5c6a79c5 100644 GIT binary patch delta 20 acmX@gew3X%pO=@50SK5*+i&FF#S8#3y#%}f delta 20 acmX@gew3X%pO=@50SG2-vDwJIix~hl6a_K> diff --git a/osinaweb/customercore/__pycache__/models.cpython-310.pyc b/osinaweb/customercore/__pycache__/models.cpython-310.pyc index c12ecab98e7cb177e165dd25b8f53724eda28916..0574dcd1209a6484dd2b6bd3e8c49d65bec65804 100644 GIT binary patch delta 20 acmew>@mGR7pO=@50SK5*+i&D9;sF3V>IDw~ delta 20 acmew>@mGR7pO=@50SMe=Y&UWj@c;lhq6DG< diff --git a/osinaweb/customercore/__pycache__/urls.cpython-310.pyc b/osinaweb/customercore/__pycache__/urls.cpython-310.pyc index 7d67831e1a25169af4693a354529aecb064f2f49..71f075c1c68d2659012ece1740984bb02ed7019f 100644 GIT binary patch delta 730 zcmZ9|&2G~`5CGuawH>F4<0MU*AE19wS`2ATPn8hj=LNWM^MMd$w#AVhM{5VvTyp3Q zl~b;$>O1fR+>m$!-%w9|gx(l8V^m>l?fquPv+KR7p4;=NQYkUK#P8R~Rgu{3bF_`C99|vsFCWZ60DLMs4_H3YbXm^q&BJo9a0x%!#&b{R23eO)=@Rs$TY|0 zH<5MNqU1Je6&{ivp&GD5dW>qqE@=<722V&1ss&Fooiw~QJbTZa-gS18j!5;%Ao-M< z{&*NnL0;oYGKZ(eXMazAiD$*h;53xu#GQ4A(>RGjsfLk~2NXV-s^G^3-{tF8c)CAP z(MS%H*!608@iMgdDK0;Bu_96+RqVd>$H|M^dEbXuuGh@VZ(|^nfgi-P=AD-N6m-2- zUQ4S{V)0S?weimBq-7Wl#wSs>vselI8>QhRWy)B5HNMx=dj5T%_O?@ad-$(uf4M7a p>UI7rPWt(BP&i&3ndi@Y*u2IpZt1qLxvk;QaV+nAmcM!N&tDh}#U}s& literal 2041 zcmZ{l&2r;J5XYt1Nu1c0KN81@mnFL_yO0G(u*GRBq$uD>!C~Q|i%M3{#G$uR(MmSbpzLRUPTB|>uEShtvc|h6?84sf4WxafU1$*1(h0mI`T}VTUlL7`PT`WsM>>PAG~Jv86Zra# zbMflEuJ?tzY!;E4zsE9b*uCTIURDFafD0C@X)bxnveFNFRw6}@%%YTS=f;tM?Od%? z?FhhEJicYh4+e25Rh}||qS30CR`S=0WdV_5{uR&EYm*joxb}mw&0P&QnN=rUOnG*f z^O#9L=-V_aRR@L0p^OyR+s~Fn~Q^~{~ zR^84%T16;eUT{)G3-q5dh2V;%bpe+9q*p_pam8`QFrKscHZRd&eXCii`lfy|jh;#s zsZyG9qYLACl&N~wx&d|X%}a*$sL&{8RJB@=E$}RoJVx)#%Eep37|C0Cb*cZGSD%ch zWY6jLMvaY4vpq_&Tb|hMg%sG>`q;)OWGnFV#iL~#-bL9>ep!k{iXA-fOGh;E7WD1W z4r%qF(-j=pvaebp_Up=` zD?)9Hb!9h|y0SgnMe1*GwwlaFY!{bp>>d7GD<(4eha=kfj{57Lng1IuOZqJ331dmZ z7tH^W$y=2d{+lS_>64$LLc=eTt2j@6tW6gA8N06^j5CaQ&t|?YZ=4I}Yrk9;i)HI7 o#oy0_UF-i9@)dq{oQ~@?J=bgCrSJMr-|e%BxZVzGc(wle7aUTzHvj+t diff --git a/osinaweb/customercore/__pycache__/views.cpython-310.pyc b/osinaweb/customercore/__pycache__/views.cpython-310.pyc index 36e1ecdabdf118c1a49f88075c4eb95adb5fa716..5a22e0ffb17b2f4454e40c6febf50708b05476e1 100644 GIT binary patch delta 3533 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 diff --git a/osinaweb/customercore/custom_context.py b/osinaweb/customercore/custom_context.py index e0bb04b1..e51fcf80 100644 --- a/osinaweb/customercore/custom_context.py +++ b/osinaweb/customercore/custom_context.py @@ -14,7 +14,7 @@ def utilities(request): customer = request.user.customerprofile active_subscriptions = OrderItem.objects.filter(active=True, order__customer=customer) - customer_open_projects = Project.objects.filter(Q(status='Active') | Q(status='Pending'), customer=customer) + customer_open_projects = Project.objects.filter(active=True, customer=customer) customer_open_projects_count = customer_open_projects.count() orders_with_invoice = Order.objects.filter(customer=customer, invoice__isnull=False) diff --git a/osinaweb/customercore/migrations/__pycache__/0001_initial.cpython-310.pyc b/osinaweb/customercore/migrations/__pycache__/0001_initial.cpython-310.pyc index 9fbf7b1ca9f9274b7590d37b363fd6dafd2b5505..09b26d812c686149668cbee339fc78553492e678 100644 GIT binary patch delta 20 acmdnUzmcCipO=@50SK5*+i&Dv#tr~4!32~5 delta 20 acmdnUzmcCipO=@50SG2-vDwJIj2!?o7zGLd diff --git a/osinaweb/customercore/migrations/__pycache__/0002_alter_ticket_department.cpython-310.pyc b/osinaweb/customercore/migrations/__pycache__/0002_alter_ticket_department.cpython-310.pyc index 3ddb58f0b15bfc8163d57137b9db26f8ce58466f..3e5c0ce7f6a9f0d9e0d7e4484ea9cba56af99ba0 100644 GIT binary patch delta 20 acmX@Yc7%;PpO=@50SK5*+i&EyWCj2*aRfI2 delta 20 acmX@Yc7%;PpO=@50SG2-vDwIN$qWE9$ONqb diff --git a/osinaweb/customercore/migrations/__pycache__/0003_ticket_customer_ticket_status_and_more.cpython-310.pyc b/osinaweb/customercore/migrations/__pycache__/0003_ticket_customer_ticket_status_and_more.cpython-310.pyc index 56ebeda71d5f2a2bf0ac07e9256e052b478bb836..26f41d01baa146181bef91a725eed617167538cc 100644 GIT binary patch delta 153 zcmcb`af^dHpO=@50SK5*+i&EKW@L<-oX$8wSr90q$@GgWJijPAGcR4iKd(p#EOd*_ zIVZn3HKj;+vJ{g7BiCeWCQU_2h!nSHUP@+KT53^hUP+M@M2tB&F{Ma)ax2p$HVvRi Zk;Z0OW_Cs?B@mkhEPzUAPPSu_0RSGgA{zhz delta 153 zcmcb`af^dHpO=@50SG2-vDwHS&B%CbaysJ#Wg(!5Cetsj@cg3e%)E33|GXk$u+S|w z=bZfF)RZET$x=)TjNFs0nKTupAX40(c`2D`X{kl2c_l^C5HaT9#FQeL$*oM2*ffD6 ZMVgysnb{eoltFA3umCEdHQA0u1^}c`BOd?& diff --git a/osinaweb/customercore/migrations/__pycache__/0004_ticket_ticket_number_and_more.cpython-310.pyc b/osinaweb/customercore/migrations/__pycache__/0004_ticket_ticket_number_and_more.cpython-310.pyc index 9cd06f1ec6d29bb3a66b3db40f3d4b4da875160e..b6d264e84df38b538bc27964fe66f99ed924193c 100644 GIT binary patch delta 97 zcmZ3;zL1?epO=@50SK5*+fU^F!+2{l2jdP#&dCQEH?b)Ig^Ls>S2BGvlLj$az!iZH?heBg^T1TS2BGvlL9eWzjYUauQ>gvH(y-lj#>%cz#iKW?s62e_oLwSm+j; zb54G7YD$sNWPT<)MzP6$Oh#;yK&c|B$!$#E+4Mn7{mISDKczH5Oja--l`xn*jYSRs Do1q-i diff --git a/osinaweb/customercore/migrations/__pycache__/0006_ticketupdate_read.cpython-310.pyc b/osinaweb/customercore/migrations/__pycache__/0006_ticketupdate_read.cpython-310.pyc index 226044a8285ae5f0f3c4445da67c4d0a98df6fde..2b3105e3b7739a4d30ae5226794927168ea46d70 100644 GIT binary patch delta 78 zcmbQlI*FA#pO=@50SK5*+fU>^&lolF_5n5#Aiqdt@kzpB diff --git a/osinaweb/customercore/migrations/__pycache__/0007_remove_ticketupdate_read_ticketupdatereadstatus.cpython-310.pyc b/osinaweb/customercore/migrations/__pycache__/0007_remove_ticketupdate_read_ticketupdatereadstatus.cpython-310.pyc index b394775e125084b676058b406a2f6f7f8472e9ce..6ce5b2e6788b14045ec78ec74a5b83ee7b6e2444 100644 GIT binary patch delta 101 zcmZqVY~LO delta 78 zcmZolbT*r7*3&I5RL4*L1xW!?Uo1ape RlWNBZ;`KW}<^3;-=61gHQ2 delta 19 ZcmX@dc#e@fpO=@50SG2-v6;wy7yvK>1s(tZ diff --git a/osinaweb/customercore/payment/__pycache__/urls.cpython-310.pyc b/osinaweb/customercore/payment/__pycache__/urls.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0fa6eead04b7428ea02e696d0b9f57182504d6b0 GIT binary patch literal 990 zcmaKryKdVs6ox6wcT38pt&?_WyJk?hbP9~LL&u^Wf-YJFT4Z86l4y`r4eK5H3f=oG zeFLqXvUcp$Ly9sSAgBP+{Qh$e`Rh;?VK_zb^nSg+O?-rY8#sJIfDbU#511&TUXBVc z@jOI()X#f`pZFeP9_=%K-KPUO{O$vdfChBzXaY2(Q%5tP5e*!LKw}y?Is%%|V@D@I zQ+n#?8PJSAck}`%pmRfalO&{PH|XO00X(7$ujy}yUOjj%48C!;RrQx}%jYG&fDsD72LSavU}r?!VgN%x7ok}70*ehy7`z_wtRV*ZBGFF=CO5ugl@~U7m zTai-R9j#(>EHPt7Jj01O@m4bC<*P zr_TFh#kg!{;0?Yl&19*5B5D3QcKW-6=O1{6K&k)$ literal 0 HcmV?d00001 diff --git a/osinaweb/customercore/payment/__pycache__/views.cpython-310.pyc b/osinaweb/customercore/payment/__pycache__/views.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..1a6f16a3c30e0575fcdb79397f35fc8e72e234a8 GIT binary patch literal 7395 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 U-25a}?GpZSN!5DAx|*K*9|bLx`~Uy| literal 0 HcmV?d00001 diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index e52caca6e041b4421826598237665119e2851f66..e79970f54f4408eeaa6d1912c014fd1fee01b6d3 100644 GIT binary patch delta 3278 zcmb7HeN+_J6`%KJmf6|enORm~VG&t~ibmL-ncZbSP!<$L1QCM@Nt>*@%km|#e5`<) z9)vYgQww-D`uw1NHEqm^ni^Wi*7h`7?Wvx&iMFR6b4+S&POJH&P1|Gtu{r6RT|fzX zdOGlCc=x{h@$S3#{VqF?SMJht-+JuMynV7NQv>+BADr%U|#H8z6ty|_Un8B=we^w|1=}ZP(dz!VqwJJv&Ggkz;(uM796Fx z>x6M4V(|gsjs4y#;I~Q$LCvcZtwJFaJL$fiMP*Xid5`5M{Z2UOojB+*Sq!3RmIRN@ z>5<$PL2?L!ZQ@Gvzf`fBR{G_d=C)12(7MishOV++X?;^=uyu>uHNT;(@`b9l-ZFc6 zce&jmRroiR+j@Jf>-~Mz)s>A~`zu?jUGBbhOKhE`%OpXv7YL4mNi%{+uv;XzfbGOG z!>`1xG}Q$nJ%RRid%&@=r+$6;aw%B9t#-Z;XpD3h84k8!LM48Jc7&OatThCbK>K0-eywA2ov;&$xzL#WQrLlp5@%s z)9CY5J(cbSx+D@nFVH4Fn#6~hsJeaOFTjgb?}GuT*`cIECWB5~130WEFGXbMO`rUX zxDKQ1Kt|VL>q?%#gLCcz!C$~Hg0RSXJsIKC@Sjzg1(`X3$;?@|ERP{F3vvKJBiUre z+IYBfp^C`1ffeEQ&bCk_)G!@G!7ShaD!+MH$^56T5g)HPZzieEG@3d=u%EIfbshbS zq?U zOhy$VW3*bqa1jy)VVWk|_zJDeckhVLk$8k0NBTo#?l3=2;z8k|!XpU}8V@xd3?3Sp zAJ;x4(`l}W;4kvMyn|P9A8?28^gX=0Iwjzh+<Qo=V|CPAMirAbHyoBbV4(^7Q_orFHb>qIH+UiIG(Iam$OhLE)8Rb zd^pIqE(Nd4s^csV)a)1=Ve8pqdF}~zfff>9#%^qQG>}075k4hiK$l4Y2YhN|fHuLK zx&OrWfhL^-Rycc;fH70R3tjQUiL?Z_gd$rz8|0szVap}bs;-vlyX;CpsRQbbsOnGb zO{o4Fns<*af$D0!)%&V=38s}nlZs>@%uq_t1JmOZquhL-9e<15Kwd`l7}o{K%X0r1 zx0+nIfLsd$9ZpvyXlwPiwAh=w`nR+-xuk775=Po+v%#o8;t#Zi0xfNA zEgenrM+Xh>K)L&w|85r)@2rzA^>D z>5jdfW*c}C9ULBq+u{&icF9>j=)wY(GXz{de_JHfJ+sVwi42|EdID!e!6P~>Zd+lY zOY{vov8Ej}G&z0Uq4sbuuJW=3luv4zQtk5xBP|L$!JTD7bbB1wgaTzwn`D<)ewO_6 z*GPffi|9^+50ZOv;>;&Yi{Hp%2!0u00aGg0By`ory90ALpmY%CMdD)8JJWZ`j&)lK zC7aFelz-D>aO!e-_Bg@c;?MHC`IqrEspCH7E^;xhm0Ql4*nhCs*yBo=x3l>RcbQZ~ z1}I(Eflnt?HdFBw#utjBYr(DzwC`l{oYYBNorK5ABhSZcqV=#%>q9{oV zb{VIIa0Kj5k04q^+%(uQD=p5F>qiW4gGF#9p&{ytq&n?+)gIQN8vzEQo;(cy4L33h z6iz-`lv4w(+QGtT5p4_>!NC{fIAcr1dn)?AmIj{?l-zb#ATXUjQ_RFtU`66-Djkgt zL)!FgY2^PNWt>EbT=Syb$>YTaau*L-qaNB=R0N{PItY#P5?Y>NPePXtkm;!8C5}dW zZzpd>o_DDfH1I%^g7l3*gG!>%l0vrp9I!lL>HQH%qv!vwu^c#Nn1_CJ1bcvSR)bFMhI-U~i)})^#JK@5+z_S zknGttl3fr4F+s5v*hCHg2=`|X3H~AfP|^H=N1dY-Wz2)vmP%={rXKvy!!wOnO;?#P UX+oN!NcLyDq&P6sCB@1A0@Luu{Z zibAlc{kB2^X6>7bpRXT8$5cQaP>~3HFE7RH!ScM&g6+?D5*dN>TEZ%I;d1 zR4YrBil^G?ab`aV|I663(JASptTnD|kAorxQn^~+rdIJ(DzZyf zJX%rw$sPaOXxnhduqPc3_cq5edmDUh8#@AB{qC~eRgx!>>TBAyr!PL#?raI}h=nrA zxYC}f>EG2-->wdiw01o1Z;v*5H$(rFm~W_-YihFB zm(TtcY=OpKfWx_}oq{Jn0+;Qj>o)v+rPDNMKd9NZ%$|E#pduVlzv$i#7Zet`; zulte-eY-|++-J$(R;nG<@?t4rNaWLolNkFsTWAsJLF#wr0QoD^G2>lSI878Aao&&I z&l4{g=u!It(iW%!qxBGIq7DA@MdC0qTG|P}{)sqGkDHz(ZB#IAhe3x?he-#i!>ohSL8C8cEH*;{!Mia2JfG2T=X8BE9cOd| za{5wy!3{?dNdW*TY%SH==4;vVl-Y=Zx+eJcX|@mrerh@W4$(ur1jz%;N7=Q@OE^3f zWY~#?AcGcy>=T>7)5ti_@&HCpvX!XeB)dZ6Aez0nyBDB0PqX`-M7cSP$eXMeK>ug# zGAz5rZq*ynCKSHS&Mpvb#BE4Ub4he)nrkF9|AF=Bw#F6z+wcML8V0TNCO6tT&HIUC z^{a9bL2qdM_pccyO-mT06XwHcB4O2Vz2Q3qTFO{!BY;81o7Q3)$KCL)PlY01Ji@ zm88w(0!R15t#hIS?1At5Ii2+fo%Q29#s?QfMulI^iL2nHJVt={39-g9+BUX^v?ZJH z(IHrM%UbZlKddZNzOahuFL$gdfF`dCKfno*_CoTeur3$B)im5%HvcsL1n=S*?sM)ur*ToPAxACah;`%n@YpNDL#Ta9d=r#d zj$#($B*x2JiVjlmnXiyhQ^2xloMc_hlwq^p+HT0R90kp!t*#Cqx2s*U zz?^6`-hcPOU(boB(B$*tX8=8SQAh%K^|*NHzXl-P057mG6PWyf*mlY^<}&Gr48!2! YjCc{pFf=(U{vDvZSA{9?`n)Lp2lTHpCjbBd diff --git a/osinaweb/osinacore/__pycache__/__init__.cpython-310.pyc b/osinaweb/osinacore/__pycache__/__init__.cpython-310.pyc index d0124e3e48e6795cc781231369b08d1bafb775cd..82bdaa9d4b3233348de163c0c0199e6b2b263c15 100644 GIT binary patch delta 19 ZcmX@Wcz}^RpO=@50SK5++fU@)3IHo21b+Yk delta 19 ZcmX@Wcz}^RpO=@50SG2=Mo?ZaLXeE8YH16Bv6>B1yZPOmb9>NFJxhN?{e;v2h}iR z(_%GATaVh-CI%CymFTDu(>iVKpnqf{wWg0zr~8Ma|LK3u_?H={`u)x&fOJ!K?(cr* zJLi1oJKyv2Z}q83zwY;ES?KTDpAJmC`+`5jim%r@ti`<+^>b?bS&Q1Pv8ljQws4KQ zchI8jTW+(i+B+0$+Iet16+NNxdfH1v&)}?))Do(u@&=QWHKg%)G!aP=tC3j$xJAJ0 zmpfdqFt$(p*?pPyij$r()+W-PF6K8E1|fCJD8I0!fj zI0WbdSOHEzx44*B9P9&G04N0X3N7$j$smzo*GX;6h^93DWlZb<91%OS>zm|J@=l{* z_5vOQNHG$mR4MSNIFsGTj*6Lre6f=K{p@L4ID*C1fNAl!P`P+Ec$me+N5Pkz@~CMs zlhaz1pm~j+f4K?V79Y!HKE@ML(CwV-Esqm>NU`xJ=xrLZ29yur2ka*3;lm);jT;Kw zk8u#Nhd`{jN}MM!Y8U^>ZS_QmR6KoruV~K;Wj1y{8G9BxG8x;z#668&venqM`V@Ak z;={bg`2mnNz!5+jV2U8^h{hw68ZQUqVSqFf48&&$!T}={nV1+!>g2Adp5T+jOgp0q z@?9eBjF=HEbv7dr8$azZ_gV-T;+gy^X23I69v3(BE0}IZV!?iv6s)Q^YmOwGg%mDg z1=Z}Dh?F;oGgaAQwV-ZHvn}TQz!J_~d*^AkseIK&Kks>KxPV4>)hEaP^R{rI8c?&( zTEayOmIj7WF>z0)H)L@7 z%h;h3%=y;t*JMOaXiBMI4F%%)ZT2#rizU*}X69jd9AJo{;=}VHBGXyqcb*zi$pUFN zRVhhH@AK1GDmDHrm#=vo7dS_cQA%K@S}qGRw|v|zAm8~`j&PE-we- zf_U9R*+@WY(>xpVHl~-U_!3Kz6m8WEZ z#y_OTK*w=g>@4UEpjItV3WY>t$>du8yj4=o-VlE&X>WT0623-|_NtmO&Z9}0xBssW zhf6pd&7TH5BR*&hg)R_zogM=>gs*#57bU3)!KzPyV=&YLAwmB0GItKFn^5J)wij#d}GX7LksSwQ@#W4%L<+qgHVS z>c1Jn0kdPgOwwmU--9&S7R0(z9-$0L!P7iy6NnPtJCF z#F46hcH&2>1y>+BT`BxC}=ZhF+?O zR7%W3*kiF|o1Z6&i|1p@Ve#MXMLWWNoku6>8!k4IiWt+p4^uL!3qkb~+*v-bW0tWj zabxG;{MN|8BE)pqt|g=6W;u~6NXI}A-U;|AV3Hv1fZHOQGGfWt)N;wO4*8zDYqH5|1e}R8v-!SN3;8+^+!?6&Ah%fEg*& z&By@b3xEvKut!|I@522*$Lw`;51nb@>p()J=y$-~eD8OJRzJWV5Uzi0|PhYRlY%{D7Ai`}yI|$Iv$AT_-QQ5M^=>nhl zq{$<$H9SF);AtGN!`QOCe^H!lY`$;90n+xUuw-oVtXba?qo(SsXhdbVXxxKS?^ay1 zkWm}DB@0TZ>0y=<$)=q((t%iRZkJBQ5n+cG*QcW9CvO`ZTJ#>V`ytd#gxeCNOXM^D zo)q{=lj^(*DZdlPca^)|C6byus;!bib^d!Sl}B&Z97X*$%{+=j?iO`uUds4wnJGoh z!&4v73Q7-G|HMQrn$Y-%kcHG3GRxjEj8g=k`E?=9xKS8n%aRIhs@S;ow)aWW$c92_ zkMiE&_bIg^Z}-*Fqc{@(Jn;lT-f0fhlYj-l1%Lp^>TwCwBH#)@W{`}(6%3_6U~Ud` X@b^VdOAYH3?Jae-;#|Lov=sjjB40mK delta 3457 zcmaJ^eQ;D)72mtruWWWVo6UYCyV-mJA+JCZlGe0*H9$-Q3W<=?`k+mh>`Ss_zqq@h zh^5piP65kDJz8rS1e9r;4k{Shp<1mobt<+69cP@;^^dBf&eU=VyWOJQJ3DB7*S31b zT5_x(E2j1tayhTmtfk8B(}lc|O&UqL!qm7&44Fw~6Gc{au)FohLYHz`Q#XeeE>UPJzxVs2W$lN1FQfC4f*Oqn;;GW zLVz$}kRJEFTtC91?tI+XT}TxT`4A=+1GZ6b^|B82Ds_&8+5-3@K$%gXtSW;#ovL0T zbZUtPX_wtkf2lrEo#w@(*w6|{^IQX+_HPmy`kVg+hk9L_p04SMja= zcpv#{dn$Lcs8w#2t7vm=eBp=>am3Y*K5Uy8@gj5!MZ9sri1X_G*kRCLYgZil0>lcy zHb5_6ilJmrWfBvHY=B}rK*b3Wl9EC96^e=R@zH#abC$|wUhj#QQtnAIH#lgi3x zmAXM}yfbUAn>;Ae3&9pqL~5)uOTP~`io7D^>QJ-TOU<@A_W`zW7*-1OWT;iVPUk~o z4=1bi8lz&5E$K08lHTK1Jz$QK*5g92Et7*v_9ZL$SAD!f4<-G{n!^@7{ETH>Bm>FX z!!AAYjKyZr>$oU`G#n1G2jk(!b*Pt;M;d9=-DozEF(e|cS7(gOZbKGE^D?)`7%OTv zxs3H($dwy&nS9znnI59O_2Gu6ST8#nG^_MM?gHFqN542jwn#Y<`XVh06JeN%@D*(C z1I#1Bm!VsT2rEC02xqYaj6dKRHc!z}NbEDTdiqzSDWo!P79!TA07Y6-x5@D!#2u8Y zi*8ol{J#|6%rKmLmY)I`W!6?e_=SrfoA5b2!b5+oi_?vui`GUbRrcHH{b;MWL?1=( zU3DC9{3=7KDrpqPWGb&%r(9I$27OD;o4Js2EI$G`N{__i_G2u*N{3<*af~?@rz^2S z-`6mWlGUu7G}{n2TlsY!q7`pU=L(#@Z(s=$H!@REmN`}S;OA2DEUH<&MHd@-dX$f5 zXs{37$`gS9^-`XMZqB)uQ#`)HPa(j7(Ab3E=2Fdv!y@D<<#HyzpQG~k_)c++HZ-o+ zz6~o2SypFn#H^}oNf#TJ#-8W#+x!&JsLb&D%=Y%YvR>6R68{$Vs2*lEIjh;^RDa9U z6HR^o`L9D^*1yQx-iK-2aWL)UtcHbrQ5lXl@ABL>JR$<7IqiL&ZY zd_98sqX5-hs}hAmY9h-Gx0sXQu6gNH-6xH`(i7!E042i$qP+-yCF-=FF2 zrJA^)DCus0P@JR3+9TQ<*!L0xe{VU46Vs^qA4B&fU@oG6$?srr(6N{M>KS#m7I7@H-{u#`v+27WL4D6%(9S zPsgx0uex$S9q8zCn31PT9YM3*fM2GQ*Kjq&-r@26ME1?=eVd9%hB(9+77N>a#@Egklu3ELGeQR*8el8|*`bx_YX`I_m3b buWt;v1J!}bfFs}xxB}gQF#jq8uCVLBAVkm4 diff --git a/osinaweb/osinacore/__pycache__/urls.cpython-310.pyc b/osinaweb/osinacore/__pycache__/urls.cpython-310.pyc index 81ee75c33b613080af9764fcfbb73634c5200b4c..94d68600bf7b60ec7e3357aa2a278dfeefeed830 100644 GIT binary patch delta 71 zcmbOz-yzSN&&$ij00hjZ?bDJs^4?(A<}4`6&q_@$Db}yz&aKpi@v7KL5{t8ef*e3W NFtdtnvm{3aI{^2r7M%b9 delta 80 zcmeB>pD53p&&$ij00g_Q*rerb2a!L}5vw`9q NFeX@Vvj9g0I{*y>8m0gM diff --git a/osinaweb/osinacore/__pycache__/views.cpython-310.pyc b/osinaweb/osinacore/__pycache__/views.cpython-310.pyc index 7a853f942f712eb306b23b31a2211d170f7316c2..f868ce81122d2128a6ea49b9fe849a3d5ca3bf3b 100644 GIT binary patch delta 1980 zcmY*Z3rv$&6z2RbKd-)^K#Q~@Sinjt0#*TGAZ{+sOf$FXVxqO9KU!oIZ+|kK_?nSy zOPD5SiOC-7Oq?XiUvqggLi4hl)BMQFqQ?ak0t&_1tsLcOLiL zdoOgt&3C~RHX4)T=y&Q^ZR6@CU8b|6%qCjO^v$L(G6C@BsM)X>pULi6*sf~=u~IcR z>6+yB_+VluG+Ba4!Q@WZmilqrDnpBT#73Tp!IVzvNqf7YJ>H+TtRQG;*N0%0QMIY^@kyDP z6ww4_c|&tsP>IGjgxgxwXhyhIY4Nv36ya9`k);v8rWO*%FyU24M$$fx!@)4k>4z_{ zzc>p!oEE6U&CcR98Dz-;qoqWhUax;>(1~6=?i_+Xa>GV2s z(~G|DYopgflGsZID)wt!HReF!H?)Xa)KJ4xMQv*h22{l#QB?6csl|E*7sI!>ICpKy zcPt(zh{`d7_=y(tQ`l zsS{@&I|lOSLuA$(G)Q_$o8l#W!+q3soZU7t93Y@+9%8wW z;3aX8H9Bz|o5s(D@A2UH+!Sq`Y!yfF%J>TVpDb!I{vs(VKN{X;E$_=kX1Ie&Q7%5^ z84VY4M^Qk&%7km0+2ygM80oNzKUjAiYdy}4izK@Bv)m9(jHrReMt>+MPT?|7y*$iL zr9`;{JuuBp>*jVgO`Ij}C`YwfW*~T!F z54S-|2T3P^%(HqxY)6*3NqVx2qN9M4g6Ojg5cpxLj6 zUQ>j`S{;^`&Y`>8QR)K|_LZ(SiQOZW(VX_+b7eE&Q+%(?ooZo!?G;I7DGl&su?;Vl znX?ygu@<6n*Xa`XO$Fbl&aG%J{~$d~_F+BQ^*XxhnZ$08aGl+nH;q$`Y|BPk(2(>> zYp6ln89F(394-$e*g0R8mM=GHv7*MFrZrD&QEac{MKAUlCRRg3oLC zzj{Zk@a;YubmCV&r{o0uCqEl+_@>x2FEgj(^Bav&loyv{zIdG@Mrjdv5R20Hk{H!7mTzI;o7ItDrWjPde zr1;K8A)x8Vw|nDPsu(sf@Ut!U6W}Y=wYCy+izYXOTUzMJ z4~1LAhivxX-s&1C#=om`z>9{OsqiDts+kGpG!BO((y^z;EoA_%E6>2&HR&mLsUKnE zj1#+UPhAJ_VRD@Uld-j~7?N>IT@h4tAF12P22t-%sAShFz^R2+yj*XBT)bOf4mI80 zX;spiUao*&dU1lGpW!qEKZ@cU!+C}a3=qRO delta 1757 zcmZuxZERCz6z;h#cVqn=+i177>o(T4cU?Eu?yGJc&Z$U1Ku1XA2enx{og3?XS5O3D z34)@LU`~vG6pf0+AQ)@{Mi7BSQOAebG+By)fe1#y4JL~6!s(>@kfLn2mIl>AQ%&{l9APTEQZ?A0H^(WP7?inz>fj z1b6pg_?e8gw9i+vOo1X5!lBU8$iO0_CY zC-x<`ItRdzlG}RX{jsPbiBB=VgbLoR`x|BiCDNlmPlp9p6%#a8I6ez zW>GUV`H++9r+@b2W?3BxB~J;Nv(pYaG7g1bDs7l)s4?CSu5vEX@F$bocp(C|w!G z-7?N|ErsE9%3-t-(lSXMo}&KkT83}CY}j3H*1tzQ@dNS1$dv!%^2f2gJRd!7 zOU~{|X%?+cr@L*C#i_fz4m7*-@i(_we_$%d>8Tvmo`-SBZL^3ol=~|t?BF72rU)lI ztuV@ZEn<{BLri&>DWmADv}3!nPX39H%hh)hD30xvs4mgLQ%7}cKLw;8Y2P!Sobu`K1XSzd2rL*818H#S90;$aYM5MDb+!Ylk z>F&8Q9M8?eSw4?E&haNH-j!>lShe-^Q0bArqQS+rg}B|fz?fv-8iEfck;L1+u>KFe zQLq0}%MVl;Y*tReBX5v$LDEVfbDM5(8oTW(-7E4!F~Nb?7&xE!6Gy6i@^v=PXA@oQt+9YM*A(!qY|?c z@kFF2oakB+6Lp+i7{Oc?Vh&}9K9n_jVIO?AVyRaglWE*)1RHun8 zGvL`WE3OHcVF|tx$fvzg)ndoPf%WE2QZk{V3_2~%K@Kjeb--0zQCkRkxVbhW=W+Z@ z9Iq|4uKJ(XGfmh~sas=JYXw-%>M2PQN!nlMB}o_Ss`UR!%E#jRYIp$`*E^&Fz+zV+ zzFgmARS5WKID(i-iG_lh^Uh=TWpLQsJNAt!k8olq+r!gHbd z)TF8w2V~=d76oSDs+J1<6%s9SS)D(*v*jv40Jq&6gF4i;`T)@1>V^8`^41;fklVs? z15+EZyR8&#xTP%sP01r|_eksaa#`Na;ur(3JTb&D%rL@mis3W^FAQ}hi1Tb+Vi;q% t!f=D(CWD@fSr~E{YzzeqMGPK>8U{bm-V^~g>lvDG^Mf0}gT}c}{tND+(d+;K diff --git a/osinaweb/osinacore/add/__pycache__/urls.cpython-310.pyc b/osinaweb/osinacore/add/__pycache__/urls.cpython-310.pyc index c5a6944c305495d0f00379b68040a8df5d22ac44..21f0bdf5040be632b1d57c853e41555706b86a45 100644 GIT binary patch delta 20 acmaFE_lA!IPvnzf?3k#1kI`&07o#ep`D6peCbksGUKR2~#ay(}|?=6;+%7Ro)t|CXE+~iZ7@{FF7UvZvbblkj| zOO}n%aq>lh5FkfQ(18(1r3-~i0mb&~Bmqe!-913^zV2h7#9_UcOq`lbetw#aewvz_ WnT!J%Cx@FTG3HFJGRbA)V*~*Als{(x delta 532 zcmbP`{x*{@pO=@50SFFUvPpXxGLcV)amqyPdyE#7xfoR$Ehif=HVLH)rI@9dw=gs_ zMro!<1~X_{ZQj9X%Ff6<`5lM49e*!ZEq@LF0`7$jj0`0_DFV%m!3;HwHB2djbC_xc zN_cA+QiN&*nwfzbh5d@ufp!(~0Et^HC6xuKlfyaVbu_tdaU_=(m*nTB78N;x6lj15 zXAt2EBHTcPJBV+S)P zH*_BZCHCmOWSY#RuFfboSxa4}K82;1v6i)jWdSSL$!saCASaiw10Bj%!U1+DyC2w% z5XXpsEM5X4gn>krc4A6Od`W6xYOy|$r(2L%nVXtdqMMsql98XHo134Kn4_0b zlAEK+Sp?P%@^FzTkceUpkOwL*FWLYSkp&U#Ac6@**aHbow#gHeL=uXkfb3iBP=kw9 zK+<4B6(lYJaspH?9%5-c*wPC?bBcw4O1PMK7z{q%Y@-HJb#)8R;#<^@9R#od delta 20 acmdnbxu26epO=@50SIKpY&UXmVF3Uwiv$w@ diff --git a/osinaweb/osinacore/delete/__pycache__/views.cpython-310.pyc b/osinaweb/osinacore/delete/__pycache__/views.cpython-310.pyc index b8d8deae858725d9cb37938f779dc514794bde2f..d877a701f057335d5cd69e01b730a5728aa5fa8f 100644 GIT binary patch delta 20 acmaDS^-hXApO=@50SK5++i&Df<^=#b;sodb delta 20 acmaDS^-hXApO=@50SMT|Y&UWz^8x@hwgfc* diff --git a/osinaweb/osinacore/edit/__pycache__/urls.cpython-310.pyc b/osinaweb/osinacore/edit/__pycache__/urls.cpython-310.pyc index 5760d0fd6d4333f99582aa3b2f0b3b91031569bf..19357acb019e5e7916955d7aeff92093a8e6b550 100644 GIT binary patch delta 202 zcmcc2x1C=*pO=@50SFddv`>@cU|@I*;vfSFAjbiSi!C;4t1?QYGNx#!GG~dW=%ldq zGN+3~Nu=loGid5fj$%AwAzx6GpOu_VOtI6C5=%|VEJ0C} zo1c=Hvssp@n3+*>@k60ZUx%7Z;;bGumSL7QFK92mKDfGT+yco_LuCr@NoWqb($rezZ_ diff --git a/osinaweb/osinacore/edit/__pycache__/views.cpython-310.pyc b/osinaweb/osinacore/edit/__pycache__/views.cpython-310.pyc index 13b32e5cc9eaea53d1d50fdb82f3d68dc999b33d..b63d151290267f1e703433a5ef75e5e0b0edbdb5 100644 GIT binary patch delta 2509 zcmb`JYiv_x7{||hPTO^t9=6`QuDf)DQJ`FcK?Ow;AS^K%)6Lts)Y8*INk^Brrvyl0 z;LsRgAiUl$xPe@}164mLc*74Sng~&hX`+c=KtE`L8b6Q_eg3C&rz47z*rvZcec$)| z-{=24?>RZAAGowq%{UxY5`E5nc}JgX*?zTwb)1~OfH{*6Evn7jDGjmS7Hw9y6q#K} zvy0X2N}=1)$~;|k3BL=t8<-1pi{0wyO}!K*WWrw`D+M~wP^A92Pf-FUd~JF zEhAP<8D(RUWt3^wVP&h5S4M235|i`_&6bzf+qH^exm(igc{#uyPj~SVqqeWRip+>G^GJUJ)YrATPVB#fl_t8>4Y-RaE2IY-;TWx|DzF#gEP$TPhnDm z^NnJGuN@NgF0s+)v*j_U8;VDL&fpSkSZgTOGH7}YRj16ik!pj?w}{I=FI{i93w_zqe);f6w2a5xu3AuGaxLu|-M@|%FGx{q}DX3Xpq zzXu++8mC|Es9(-jkgq$LEsFQbfdSs8Z;))FeTG^mUX zi`k($B)%pz*D*k{5qGJgDRC%tOFfQT(VEEQHt76u#I~{fXNCAJ)WTxI+t^fX9<5=q zs8MH6h_@T(uwx?H8WNVKZwGhNg?taN4|ojN4;%ml@Fb7~Rudwwu^ce)3}Bq@XAwOI zGy~5A^?-3xynqNf@`Hf!)OZom9gW}!VBF?NH&R);D@HL|mOuU;0uBQ&0d+=iPBk~% z-a#$f#Ji1?EvmwgQw_iCfuk#x&C%wrcrKgN$}ByFi=QS${5R-E%ndI}|D6-lh>@}# zJ5*qY>g&5HI@0m19*ZaR)W(#)dCV8CJ^~yy9R3n^+P;FrM)6Zy&~8&y+0OV$>f)z^ zFJqa}yjKvJeKT9;yFruCc@=mKcpZ2HcoVqB{1T&&ru+Zi#uHF0YvX5a4eV#}Lt865 zRj8SqV-A=qN}PPt!4!L^%pWw(nH>!LkLHRlJ)_6dLMGEV_3jOMfRBN)^KgDz6N`$=({8T#gl0M; zVKHm^nS1dL#8(0RKnCEzCSV(|1K0`RSNU2f*-*E delta 2062 zcmb`IYiOHQ7{_~(>}{Gfv0aj;Ns}hMEZu9{*sU^0SBhdMMP^p*Po9nhFEEZFNc&+}n_36*r_gg)z^+NqRCPf>&3glpBm|ZuskxbZ9 z!yFq$8t()i1)71!=#ceu)}8sYWQwtkG_ibALdJ-f&Rgu%WOK4E>af*~X>09bCTm!q zj7Rw6SX>A60Z#&(fl?q0JOw-ggaAKa0D1wvfNbSew*vhbMF14gV@t&bVi7eK4JUcx z8M}VN4Vfjz_h_vsNXQifsg#8?P=CS zI!7Dprw1HsSd4}pK}jp7pU#LdqhB0ewv~#?rtT_Z1qCToYtR?#`4Anh@X*I)*V#5I zHQQ*;S>p7IjNghyMzP+cvoa$y>PmE6rJtPBBI||nj^#-)DI_ivAAA$Q=~{W6n3P<1 zOT!2xX}s1>54%cPkosJ%H6tPz(Fx4IP=O@g4~jS6E+892+=d73?#&o&qtmX?KMre0 zc>b_vcZ2ji0!gj(VYi*N(H^&pjY5=;C+HLRaWM-(`Ap7?VR82ch4x>h0RRHSTwGNRb|T{?ejX=?#zt0 zp0Nq~x^k6RZtyi*2E?ASJ$FGdYWJ;mqph;bB8l{n%J*X|b*YM)PVsR%=&NGA^nuT3 z&RHgA`2_vwQ$_7h_*b!$^hK?gX8hley@;uofJtBvFa_)d_5lPaK#zcIyIBJQ2LY{% z4`K8Q;0F!^Za{1PS2043{0J}(yau#Xg0BOxPiuF%DA(z4%m=vE?h|-C3QPmXsI_{n zG%XBB)l#2-g~6)lr|3lWwM`K6N0GnL->IZivFHLN2e9yE0l9pMBIui%`v?9_K)!zM zrj0nE5GR=LEFxj0xko&d(r$)HTWc_ z_zh15=|lM*lU2vBij0t4MPD^s+|Z5eIItBM0#slG7zK6!JAvK6N#GPP3!DS409WaU P#(?-olY#+i3f}iO`YXw! diff --git a/osinaweb/osinacore/edit/urls.py b/osinaweb/osinacore/edit/urls.py index c8ef0e2f..33bb189d 100644 --- a/osinaweb/osinacore/edit/urls.py +++ b/osinaweb/osinacore/edit/urls.py @@ -8,6 +8,7 @@ urlpatterns = [ path('business//', views.edit_business, name='editbusiness'), path('staff//', views.edit_staff, name='editstaff'), path('project//', views.edit_project, name='editproject'), + path('projectstatus//', views.edit_project_status_modal, name='editprojectstatusmodal'), path('task//', views.edit_task, name='edittask'), path('task-status//', views.edit_task_status_modal, name='edittaskstatusmodal'), path('epic/', views.edit_epic, name='editepic'), diff --git a/osinaweb/osinacore/edit/views.py b/osinaweb/osinacore/edit/views.py index 4caac75e..a60ff363 100644 --- a/osinaweb/osinacore/edit/views.py +++ b/osinaweb/osinacore/edit/views.py @@ -205,6 +205,28 @@ def edit_project(request, project_id): +@staff_login_required +def edit_project_status_modal(request, project_id): + project = get_object_or_404(Project, id=project_id) + if request.method == 'POST': + project_status = ProjectStatus( + project = project, + status = request.POST.get('status'), + date = request.POST.get('date'), + ) + project_status.save() + + return redirect('detailed-project', project_id=project.project_id) + + context = { + 'project': project, + + } + + return render(request, 'edit_templates/edit-project-status-modal.html', context) + + + @staff_login_required def edit_task(request, task_id): task = get_object_or_404(Task, task_id=task_id) diff --git a/osinaweb/osinacore/migrations/0077_remove_project_status_project_active_projectstatus.py b/osinaweb/osinacore/migrations/0077_remove_project_status_project_active_projectstatus.py new file mode 100644 index 00000000..c5e2b5ca --- /dev/null +++ b/osinaweb/osinacore/migrations/0077_remove_project_status_project_active_projectstatus.py @@ -0,0 +1,32 @@ +# Generated by Django 4.2.5 on 2024-05-11 19:50 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('osinacore', '0076_alter_reference_date'), + ] + + operations = [ + migrations.RemoveField( + model_name='project', + name='status', + ), + migrations.AddField( + model_name='project', + name='active', + field=models.BooleanField(default=True, null=True), + ), + migrations.CreateModel( + name='ProjectStatus', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('status', models.CharField(choices=[('Active', 'Active'), ('Completed', 'Completed'), ('Pending', 'Pending'), ('Cancelled', 'Cancelled')], max_length=200)), + ('date', models.DateTimeField()), + ('project', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='osinacore.project')), + ], + ), + ] diff --git a/osinaweb/osinacore/migrations/0078_alter_projectstatus_status.py b/osinaweb/osinacore/migrations/0078_alter_projectstatus_status.py new file mode 100644 index 00000000..1680c92c --- /dev/null +++ b/osinaweb/osinacore/migrations/0078_alter_projectstatus_status.py @@ -0,0 +1,18 @@ +# Generated by Django 4.2.5 on 2024-05-11 20:10 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('osinacore', '0077_remove_project_status_project_active_projectstatus'), + ] + + operations = [ + migrations.AlterField( + model_name='projectstatus', + name='status', + field=models.CharField(choices=[('In Progress', 'In Progress'), ('Completed', 'Completed'), ('Pending', 'Pending'), ('Cancelled', 'Cancelled')], max_length=200), + ), + ] diff --git a/osinaweb/osinacore/migrations/0079_alter_project_end_date_alter_project_start_date.py b/osinaweb/osinacore/migrations/0079_alter_project_end_date_alter_project_start_date.py new file mode 100644 index 00000000..7c874e6a --- /dev/null +++ b/osinaweb/osinacore/migrations/0079_alter_project_end_date_alter_project_start_date.py @@ -0,0 +1,23 @@ +# Generated by Django 4.2.5 on 2024-05-11 20:35 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('osinacore', '0078_alter_projectstatus_status'), + ] + + operations = [ + migrations.AlterField( + model_name='project', + name='end_date', + field=models.DateField(), + ), + migrations.AlterField( + model_name='project', + name='start_date', + field=models.DateField(), + ), + ] diff --git a/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-310.pyc index d230e1e8b28f183ac1366b32addbf715bc911e79..06badf7791aacce39e727996659bca2d8a8304ed 100644 GIT binary patch delta 20 acmeAY=n~-0=jG*M00QRI_8YnXvjYGs)C8gc delta 20 acmeAY=n~-0=jG*M0D{R|Y<LX9oZ-D+L$; diff --git a/osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-310.pyc index 36557745e2477bce78587049d9be946714ae111e..a0ca67998c69b5f7e1cdf4893b602eb45048089e 100644 GIT binary patch delta 20 ZcmZn>Y!T$n=jG*M00QRI_8Yk?IRGgM1QP%N delta 20 acmZn>Y!T$n=jG*M0D{R|Y&LRNasU7G6Mi8zyy2% delta 20 acmZqSXyM?_=jG*M0D{R|Y<LWCj2%7Xy!DLSs1ppQg5n})V delta 81 zcmaFK@sfi(pO=@50SG2y{$x)U1ppR;5l{dC diff --git a/osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-310.pyc index 4e3e2d3fc6320d005b58bb4bb7a5e8ea41b14211..dd5d9e9c34a6e94211158763dd4c69c6f19124d5 100644 GIT binary patch delta 114 zcmdnNwu6m3pO=@50SK5++fU?v!5B61OS~x`kgv&fi_In;cNQNN%zg(-Q#*6U+w@@{{G5r2x>W9CZKy delta 114 zcmdnNwu6m3pO=@50SG2A^$9QYvt;cNQKz@<<W^8w6wk delta 20 acmZ3-P delta 133 zcmZ3?xtNnXpO=@50SG2L88Jz0hMAEV-AWfnIpHIM)+SQM4e0dj9~*yQG?l;)(`F#>tTAnQ1oco+p3 IIT*#50W=X9KmY&$ diff --git a/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-310.pyc index 4dc5c33f7734ea4be2b327afeccdc865f71efb68..115b2216489d125fbb839afb057c2184a2bf413c 100644 GIT binary patch delta 20 acmdnSzKxwbpO=@50SK5++i&Dv%?to9Yy^-1 delta 20 acmdnSzKxwbpO=@50SG2eu14kpO=@50SK5++i&DP$_xNAd<5PA delta 20 acmcb>eu14kpO=@50SG2g>9kY6M^c_!mYEeI3L2N7aG;ueQZZhlH> RPO2RvkXOtCBm|hmm;uW65GMct delta 78 zcmeBS?P2B4=jG*M0D{R|Y$kG_VT_u1V>g=!kY6M+c_!mYEeI3L2N9w`;ueQZZhlH> RPO2RvkXOtCBm|hmm;uWg5ElRd diff --git a/osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-310.pyc index 839cc7d6df63bcdf3435dedcf2d7d4bdee394821..6fe46c2936c0d537b34bea7fc0f38aa51b2b9f0a 100644 GIT binary patch delta 75 zcmcb@eubSopO=@50SK5++i&DnWMqt*tjj3F7`54pF^7>&87NVtJb4e(BPlr$lLgF2 LB~&KwV3q*@O6m@r delta 75 zcmcb@eubSopO=@50SG2+a}t{XP_Rf~av|e&EeI3L2N8lm;ueQZ VZhlH>PO2RvkXOtCBzTy_m;sdg61e~X delta 83 zcmeyw@`;5zpO=@50SG2+a}paLP_T$^av|e&EeI3L2NC>0;ueQZ VZhlH>PO2RvkXOtCBzTy_m;rYF5+eWr diff --git a/osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-310.pyc index 1f2e6821eb30ebc57e55a4ca0298a5a2988d123b..974c4c32e1b7ce4977e2e5ca0e635b5c362fcc9a 100644 GIT binary patch delta 56 zcmaFO`kIwHpO=@50SK5++fU?vz!)|0&0{uEAiqd-@>Rw+0uUyc4 delta 56 zcmaFO`kIwHpO=@50SG2uGfczq{$yXWQ2tb%%K8O&Xe33~C0MO75 A@c;k- diff --git a/osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-310.pyc index 4e83db31d02f7716f9ba48d459ceea78ce2fc91c..0bee30ba34d8813da8a93e528277bb659c29675f 100644 GIT binary patch delta 20 acmX@ZdWMxdpO=@50SK5++i&DP$OHf~lLXBG delta 20 acmX@ZdWMxdpO=@50SG2IFjp diff --git a/osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-310.pyc index 798b212eef5e5ac127b12cbb91751b7245f5c21f..877d8e12912e919bcff4171bb699f80b3bd5c841 100644 GIT binary patch delta 78 zcmX@adWe-fpO=@50SK5++fU?vz<6uon*(fOKz@;3{A4G@)iCY{tx%nxj SIjMGxKwdEmkPu)JV+H^K4G{bQ delta 78 zcmX@adWe-fpO=@50SG2;3{A4G@&iCY{tx%nxj SIjMGxKwdEmkPu)JV+H^KF%awk diff --git a/osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-310.pyc index 16a276b260ac9b9fdc4e5e8486f111f253d89cf4..909f237412f421eda27bfba49b6bc0cd7c22e005 100644 GIT binary patch delta 165 zcmdnYxtWtYpO=@50SK5++i&E~WMqt*T*|o6LJ%mT$@GgWJijPAGcR4iKd(p#EOd*_ zIVZn3HKj-x$bESNB*uJ;Jvk#kGdZ=mh<~ylQ#hm8ub2%;2rzLliZKHKYoI0O delta 165 zcmdnYxtWtYpO=@50SG2WHa^HWN5QtcRlyka&WA;84JD8>u`{bDBR diff --git a/osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-310.pyc index 1781385259c6e6488b5338f206c00025297aebc8..9154626df83807f140b1661246232da84765f925 100644 GIT binary patch delta 20 acmbQhGl7RYpO=@50SK5++i&D%Wdi^yGXtvt delta 20 acmbQhGl7RYpO=@50SG2fj=jG*M00QRI_7l19Gv3fj=jG*M0D{R|Y$kHwXN=nTnu(E35-3n4Ir%f=4KooClLgF2C8U7dTO2mI X`6;D2sdkJ&UNIYx5Mbh96k`Sef9Vk` diff --git a/osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-310.pyc index 86846cb00a93f9604d9f4ce33e7220f72f819c35..517441c453da32189b1bc295884fe6f9960e9551 100644 GIT binary patch delta 78 zcmeBW?PcZ8=jG*M00QRI_7l0!F-A?ib%ad}$S)F`yo7PT7K91rg9vdTaf`zyH$SB` RC)JJ-$SY<65&}$O%mA{O54`{Y delta 78 zcmeBW?PcZ8=jG*M0D{R|Y$kG_W4tx-))6*wAiqd_@)E}VS`a3f4g{vm5}VeGw`E diff --git a/osinaweb/osinacore/migrations/__pycache__/0026_remove_status_user_status_staff.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0026_remove_status_user_status_staff.cpython-310.pyc index 30e7dc2f16738bf40146143c336b4d9c358fd949..91d2059415b85741174b64d2e428929697d6f1e2 100644 GIT binary patch delta 77 zcmX@cc8rZXpO=@50SK5++fU?v&v delta 77 zcmX@cc8rZXpO=@50SG2G*F;OdNLo=Ei*9?lLgF2C1ilyTO2mI X`6;D2sdkJ&UNIYx5Mbh96k`SeN8u1U delta 91 zcmbQoHjj-vpO=@50SG2E;Z*kb< X=BJeAq}nk8dBto%LV$^bQH&V?khc*x diff --git a/osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-310.pyc index b5e71473e9c6f0d923369ed2f1cd66a8a398a52f..9a8dc1bd67a52eafad9a9d5c11cd064523905825 100644 GIT binary patch delta 20 acmX@ba*BmJpO=@50SK5++i&EyX955*9|T1J delta 20 acmX@ba*BmJpO=@50SG2up}j61X-OfVlrNCAmk Y95%W6DWy57c8ow?F$<6oU=m{n0A{HY1poj5 delta 84 zcmcb}dXbeopO=@50SG2*`$D?MN*UBGw#rWFu{BfAq^yM YaoFVMr%cz#iKW?s62e_oLgSm+j~ xbAE0?PHIVNN|Es7yNq^>;*({V&ai0%Ws9^Yzhk;Ar3PZMfcdC|&g9$7G63$e9G(CG delta 117 zcmey){+*pWpO=@50SG2%cz#iKW?s62e_oLwSm+j~ xbAE0?PHIVNN|DgyyNq^>Vv}W<&ai0#Ws9^Xzhk;Ar3zxQfcdC|_T<~lG63xy9Ekt` diff --git a/osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-310.pyc index 951fea3dc589a4e4585ec82ebb083ba4d9ac35b1..1a4ce30eb2fa301a966376f9d09439e3fc2d2be4 100644 GIT binary patch delta 20 acmdnXwwH}NpO=@50SK5++i&DHVg>*&U<4xo delta 20 acmdnXwwH}NpO=@50SG2xCF2O delta 20 acmaFE_J)l+pO=@50SG2^#~3y7)_pcHAiqd#@_xqSS`a3f4|PYeAS`K8TP261O;Pa`RJ4 Sb5iXXfxKcCAR)jc#tZ-tz7ahD diff --git a/osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-310.pyc index e5296020437ff2032459bcbff73e2a44ece7fc3d..4e41addc71ef6dcf82d7f6af6aae0581d30d4ce2 100644 GIT binary patch delta 20 acmaFI_KuA^pO=@50SK5++i&DfW(EK^2n4nO delta 20 acmaFI_KuA^pO=@50SG2X5P6ZeM diff --git a/osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-310.pyc index 1eb2652fcb76e9ac1a500b63482f043af19ee513..5ebe7a6f57dedf0fb4d8153adff5861c3fd6f6bb 100644 GIT binary patch delta 66 zcmbQqHj|AzpO=@50SK5++fU@a&vB(G7FQvplOcpR7m5`at%Pa!` D4*3mU diff --git a/osinaweb/osinacore/migrations/__pycache__/0040_staffprofile_staff_id.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0040_staffprofile_staff_id.cpython-310.pyc index 7af8072812d68da36b6ffda0dcd568226eaa536f..be8c8764cdce104bf700d0e089a9f717185e2abd 100644 GIT binary patch delta 78 zcmdnMx`CBDpO=@50SK5++fU>^$9QYvt$S?ZKz@<<;3{A4Et1iCY{tx%nxj SIjMGxKwdEmkPu)JV+H{6V-Usw delta 78 zcmdnMx`CBDpO=@50SG2;3{A4G@)iCY{tx%nxj SIjMGxKwdEmkPu)JV+H{6hY+>^ diff --git a/osinaweb/osinacore/migrations/__pycache__/0041_dailyreport.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0041_dailyreport.cpython-310.pyc index 46fcd82c8372dbfb17546c3bcc3246f5614704f1..c0a8ce96709dbc1e02c60111327354a338132079 100644 GIT binary patch delta 74 zcmeyu{)L@8pO=@50SK5++i&DnWn_$+Y{+<;k#F)}#s_SgK=C5Y$&ZAnEu{)#vVi%h Kg!bec%rXGj4-vHh diff --git a/osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-310.pyc index 6aad526a1d1a3f873f90c3fc84fc388446d13ea1..928e68cabcd672ae3dabfd9d6a1481654ac95e44 100644 GIT binary patch delta 81 zcmeBY>u2N6=jG*M00QRI_8Yl57#X7`i!dHy69$SD32(l`$jPV$VS@!ggb0wh#bJ}1 UpHiBWYR3rV6|(>d9wsqn0AQ&N<^TWy delta 81 zcmeBY>u2N6=jG*M0D{R|Y&LRpFf!hnEW&t*O#~=XB(nJqBPXL4gbfw|5u!li7Kcr4 UeoARhsvRScSIhz=c$mbP0iO>J;s5{u diff --git a/osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-310.pyc index e949ab6d4896ba6af5a71933a9a74da80d778691..4f85c47ceac8c60ecc0e650eb435e98eb5bc80b6 100644 GIT binary patch delta 20 acmeyu`h}G{pO=@50SK5++i&E4$pip6(*;EU delta 20 acmeyu`h}G{pO=@50SG2GXVf7#{_)< delta 20 acmZo;Yh&Zi=jG*M0D{R|Y<LW&!{#9t86M diff --git a/osinaweb/osinacore/migrations/__pycache__/0046_task_requirement.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0046_task_requirement.cpython-310.pyc index 9b194205289b5b8c74c6c410893eb1d71cd83222..92339e08f335e4d34d84a1355dac4520898ff89b 100644 GIT binary patch delta 20 acmZo-YhvTh=jG*M00QRI_8YmsGXVf7Cj@Z- delta 20 acmZo-YhvTh=jG*M0D{R|Y&LR#X955#egx+L diff --git a/osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-310.pyc index 0142c2b07ba7de70ff0612b10521d827628c3bb9..d6c96bad4536f4707ca318a1a8ca64cad94637a5 100644 GIT binary patch delta 66 zcmX@fdXkkppO=@50SK5++fU@a$#`qx(<^KeKz@ diff --git a/osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-310.pyc index c5b637774e1b301d79f4ed6d08c2ff3f76e4b987..c990c2da8f036b68121f562fa2126eab106735df 100644 GIT binary patch delta 20 acmX@gew3X%pO=@50SK5++i&FF#S8#3#00$n delta 20 acmX@gew3X%pO=@50SG2; D4;>9# diff --git a/osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-310.pyc index 02b6575edb77df154621e7e77f8ecdce2040980f..b35520eab4986714032da8b383ecc6b8077b0fb7 100644 GIT binary patch delta 66 zcmeyt`h%4_pO=@50SK5++fU?v$arhw+uv-`Kz@<*7BC-`kePgkNd^E^ C@(<$x delta 66 zcmeyt`h%4_pO=@50SG2k&!- diff --git a/osinaweb/osinacore/migrations/__pycache__/0055_alter_point_status.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0055_alter_point_status.cpython-310.pyc index 94043b1e8cdcf688641e3f318ce4f5d291e62e46..f6547187246151bd5ad333e0310dac7d7fe8c3f0 100644 GIT binary patch delta 20 acmey(`kR$IpO=@50SK5++i&Flzyts}>jhc> delta 20 acmey(`kR$IpO=@50SG2^!x%O3#!)sAAiqdt@?ysGS`a3f4t delta 78 zcmbQkI){}zpO=@50SG2%KpO=@50SK5++fU^F#&~No6XO>)F`z(^*yKNq{{%KpO=@50SG2)QJ_GP=;S|){{B$02_oT!?OcpR7m5`at!7Kv+ D49X2q diff --git a/osinaweb/osinacore/migrations/__pycache__/0060_pointactivity_total_time.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0060_pointactivity_total_time.cpython-310.pyc index 23409027926d65d3c268f18278ea979ea16ee606..3c5293fec4a04f0b9eb96d316674c716549e4d70 100644 GIT binary patch delta 20 acmbQkI){}zpO=@50SK5++i&Ea$OHf@69hc~ delta 20 acmbQkI){}zpO=@50SG2A4G^vUd<#00Hh2J Ay#N3J delta 56 zcmX@gdX$wrpO=@50SG2A4G^wUd<#00Hu%( AtpET3 diff --git a/osinaweb/osinacore/migrations/__pycache__/0062_connection.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0062_connection.cpython-310.pyc index 15be7784c6288a85051dbacd761dc5e7ae8a0cab..ae3cc90522446de174c0907e95e4eecb87a7f8e3 100644 GIT binary patch delta 20 acmdnSv5kW}pO=@50SK5++i&F7W&r>$kpvR} delta 20 acmdnSv5kW}pO=@50SG2n>1=md!X diff --git a/osinaweb/osinacore/migrations/__pycache__/0063_alter_connection_date.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0063_alter_connection_date.cpython-310.pyc index b912f3dfa11241c363e276c43c8fef432178689a..c860aff8a92c7dc504ee891be348ce923a6ff94e 100644 GIT binary patch delta 78 zcmey%@|T4>pO=@50SK5++fU>^#TYg5+Ilu&Aiqd>ayR1%EeI3L2N5Db;ueQZZhlH> RPO2RvkXOtCBm|hmm;vcd5L^HN delta 78 zcmey%@|T4>pO=@50SG2;3{A4G@(iCY{tx%nxj SIjMGxKwdEmkPu)JV+H^vUlCXU diff --git a/osinaweb/osinacore/migrations/__pycache__/0064_reaction.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0064_reaction.cpython-310.pyc index ab05e37f2aa16df0074c66191f0d0fcf9c6192d6..51ca1bcb0a4d2da0d6d589e40ea1bbc5aa0a192f 100644 GIT binary patch delta 20 acmeyz{*RqIpO=@50SK5++i&Fl%nSfJtOaNQ delta 20 acmeyz{*RqIpO=@50SG2(4QVKic62QfJ&A7QLvlL0YhCc7~`5r8nk Md=Mc!*@{^T08%C(c>n+a delta 136 zcmcb@c7=^QpO=@50SG24^Y@ N3FdwyQUCzhA_)Kh diff --git a/osinaweb/osinacore/migrations/__pycache__/0069_alter_business_logo_alter_projectfile_file_and_more.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0069_alter_business_logo_alter_projectfile_file_and_more.cpython-310.pyc index 12c2914963ac4b34de017b926d35601fed78d34f..64f93ac089e949b3bca017a13e548193158414a4 100644 GIT binary patch delta 20 acmaFD_JoZ)pO=@50SK5++i&EKWCj2=cm$XL delta 20 acmaFD_JoZ)pO=@50SG29pO=@50SK5++i&DHWMqt*Y|FTik$3Wa#(W^@&t%6f0+cNh1rcJCXE5z# v(*iNIHit6{Gn%P@*eqZHR6-lby~SaZo1apelWNBZ~V!MlogpuSgZE delta 121 zcmZ3$xqy>9pO=@50SG2%xIPO2RvkXOtGBm|f^7{!FB hzRAYSzu8PdDor<=u<$cVX@l6TU;$LZY;r8C8~{hIDVhKP delta 163 zcmey(^_z=3pO=@50SG2@ixbL8s?=mE i;+<^F{F}`Lq|#)w2@5}?lop813Kl>mOee>($^igF3@L*E diff --git a/osinaweb/osinacore/migrations/__pycache__/0072_ticketupdate_ticketreaction_ticketattachment.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0072_ticketupdate_ticketreaction_ticketattachment.cpython-310.pyc index 5aa935fd7886d9486efc8d9989fa08880e1a5b63..098f7bd94a861a1e0f0165bcf5d8ace46c0457a2 100644 GIT binary patch delta 93 zcmbQrJ(Zg~pO=@50SK5++i&E4%*Yru`8{JVkgR2rU=)}ChtG$wsE5uj|5=;qT*35;xp aAhzLVLlzxIDJ>A26)b>C7)>r`l>-1dDHKEi diff --git a/osinaweb/osinacore/migrations/__pycache__/0073_alter_ticket_regarding.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0073_alter_ticket_regarding.cpython-310.pyc index 88e44b02c6732e68dc606a66ab3f00eabcb20d71..a6f039fd02223d5add9c8beb98f60534ace3ba9d 100644 GIT binary patch delta 68 zcmey)`kj?KpO=@50SK5++fU@a#27X4ULqsMWCuoZM$X9*jLX<0fO16=lUbNf3P6}( MK8TQZD!@p=jG*M00QRI_7l0c>D-bwFfcccPs}MvEs8J6OwLX%i7!e`Pb^Bw%uBz; z0}&}LNJ%V7y*2S|KbsIxYmw08CdTVp5GI%pB7}j&Ee@O9{FKt1R69l>ub2f$@Gyxn F0|3CQAq)Tj delta 121 zcmZo>ZD!@p=jG*M0D{R|Y$kGV(}|KcFfcccPs}MvEs8J6OwLX%i7!e`Pb^Bw%uA2r zfrykAq$HN4MooO%&&ChbTEsuOiSfD?gbC(@2mv5*i^C>2KczG$)s7L!D`o)_JWOKD E0DMCq@Bjb+ diff --git a/osinaweb/osinacore/migrations/__pycache__/0075_remove_ticketattachment_ticket_and_more.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0075_remove_ticketattachment_ticket_and_more.cpython-310.pyc index 893fc6fb77f272fbbc46fe1c0cced8367ba02f63..b0868d641009ddd5d16314d1b81d8c185de29084 100644 GIT binary patch delta 93 zcmeBV?_}rB=jG*M00QRI_8Yl*7#X7`OEA^|$*GJ=;_N{2TLK}O$=RtTjwL0D$r-t+ ic_mSk&oMTzi2&t_L^g*oaWe`)*kAz=Av!sqSqcFAgcSM! delta 93 zcmeBV?_}rB=jG*M0D{R|Y<9Ff!hnEWuaiJMUX!UhX~2#Lx0%u)b)6Bh#j diff --git a/osinaweb/osinacore/migrations/__pycache__/0076_alter_reference_date.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0076_alter_reference_date.cpython-310.pyc index d618d0c508cb37791c3a2e5fc254702b4920ca46..1dfff1108ed0352b1eed5e32b291c0bf1d99960f 100644 GIT binary patch delta 56 zcmZo?ZD-}q=jG*M00QRI_7k~}G2WVZX&;*~kY6M`c^cz!0SFV!2N5EZbD5+7dQl93 delta 56 zcmZo?ZD-}q=jG*M0D{R|Y$kFaV~m=3X&;*qkY6M;c^cz!0SFV!2NA-PbD5+7d({kZ diff --git a/osinaweb/osinacore/migrations/__pycache__/0077_remove_project_status_project_active_projectstatus.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0077_remove_project_status_project_active_projectstatus.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f96b137122f4de6b093a34a681a72282a407bb0c GIT binary patch literal 1208 zcmYjQ&5qne5VqSrw&yR|O_n8l<2p#pL_s1K1Q}*ogdibegOKLZ>UGt4+iAOpwr9iU z3fGZ%0VLqYn;`K9edQF1GY15LYI}B*9=WFKtM0CJP2t0`TK{fuXzys;f>c9 zVZj6X>M02bAk;w_F2j;7S?F!1qb2_&fC%{a0dNe9-gnWm2kbPM^j^@JV8Yy>RJoOn zGF9#3(g5oEQRaQGuMrs!=&OGqfx$9_V96lN!)1iLpc{RREh9Z9y@yGWLQKD8%OKtQ zJ$>lIfbcChTn)Vf&c;H2OIpjgfbZH;S7@QtTD`a0_nx z9XW@CEz6_jEqH@!IduJpS4B`oeN(GSX2zmBx_kHjdqV04t+2R4i&cgKWP>hQTT@`x zxVUa)v#DDueEFi1B|6^9SZ0m7z$fHP09SIO8}e+loYT$xOV&f*5OS$}P7HRg{^DHPP8}ap z2~SkHyK!(rJy&`48SxrJA*+-a24;=BssA;w_b7o@{QcwX zD{4qR!%}G^BGo0%jW#`qKIrpU_voO(G3g#Q) P4??o)n8Y4S!^7x*=R9oR literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/0078_alter_projectstatus_status.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/0078_alter_projectstatus_status.cpython-310.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4c5df59a0175ae28308bb716f1561f02715ca30b GIT binary patch literal 782 zcmYjPv2GMG5VgH~ce@u(iYSnvN)>6FY(#Su2!et@NDv}LG}~Ctda~!kyWZG)gw#Np zpP)eEPbjIkrOGcvLSekVkXZ6~-prGqXU1kWn-W|eM?BRCXXe5zT zlbRN^W(A|E~76|5y|+7WTQ*ul8p7!T2)qb$~3MY*G7VNrBB^m69jv> z-D5OB3Mxs#B&}!>LA)G!0T?eQ6_N3GDo1jB!Q|v3!h9kV6ifT`-Hi%LrpBp8l*U3o z-`$U-g8SH+Ha`+t)mv{x>%n`cy3*A7 z(D}T9v%!%|(Nrb`&)_&XelGd#r^sBmx$)^$E>0ZmTveT6{m1jOTa1vO!MQF8ItO^%15}DAs!2y{ z+Oe8Z@{%Z~_(!5R&^79XMkrk^mwLs9N&tGrR5IQ%m?PX&u_x($#M6vujpk5K8ZR#Ye6etV3!?Z*>RcsOvD-? zd?5t(Y&4*KLx}eqsY74z6bv{T`lbbEk!IqH!?4ebFwyc5$d3>=`o1s&T+#N8*xQ(m z>hg2-)`4{ubgc%^y1jtv2;95T4AqI$ZFm2b9D?)4wPRztDsoWua2^e{mi@|1!E-pB zjKEMeUsHu#J^q&~u_fid@Jz$raACtc30LXvqRI&4$)6-;l+guEe$Q5R87q&=#OKpK gd+IbY5?P4J`Hv@S7bp7c>BQ|b8bAWtO?HR>1;iA`oB#j- literal 0 HcmV?d00001 diff --git a/osinaweb/osinacore/migrations/__pycache__/__init__.cpython-310.pyc b/osinaweb/osinacore/migrations/__pycache__/__init__.cpython-310.pyc index 2c3162a8fea24144580f8eb053c140fde9e0ed3e..259994faf6c2688f9c7c6f186442ebc0ba5570a4 100644 GIT binary patch delta 19 ZcmX@jc$$$rpO=@50SK5++fU>^001nx1fT!_ delta 19 ZcmX@jc$$$rpO=@50SG2 - {% if project.status == 'Completed' %} -
-

{{project.name}}

-

{{project.project_id}}

-
- {% endif %} - {% if project.status == 'Cancelled' %} -
-

{{project.name}}

-

{{project.project_id}}

-
- {% endif %} - {% if project.status == 'Active' %} -
-

{{project.name}}

-

{{project.project_id}}

-
- {% endif %} - {% if project.status == 'Pending' %} - @@ -92,7 +88,7 @@
-
@@ -100,11 +96,32 @@
-
+ + +
diff --git a/osinaweb/osinacore/templates/listing_pages/projects.html b/osinaweb/osinacore/templates/listing_pages/projects.html index c5f7ca6b..edf67577 100644 --- a/osinaweb/osinacore/templates/listing_pages/projects.html +++ b/osinaweb/osinacore/templates/listing_pages/projects.html @@ -51,10 +51,10 @@
-

{{project.name}}

@@ -79,7 +79,7 @@ d="M6 6.878V6a2.25 2.25 0 0 1 2.25-2.25h7.5A2.25 2.25 0 0 1 18 6v.878m-12 0c.235-.083.487-.128.75-.128h10.5c.263 0 .515.045.75.128m-12 0A2.25 2.25 0 0 0 4.5 9v.878m13.5-3A2.25 2.25 0 0 1 19.5 9v.878m0 0a2.246 2.246 0 0 0-.75-.128H5.25c-.263 0-.515.045-.75.128m15 0A2.25 2.25 0 0 1 21 12v6a2.25 2.25 0 0 1-2.25 2.25H5.25A2.25 2.25 0 0 1 3 18v-6c0-.98.626-1.813 1.5-2.122" /> -

6 Open Tasks

+

{{project.open_user_tasks_count}} Open {% if project.open_user_tasks_count == 1 %} Task {% else %} Tasks {% endif %}

diff --git a/osinaweb/osinacore/views.py b/osinaweb/osinacore/views.py index 6e0c3c68..0919004f 100644 --- a/osinaweb/osinacore/views.py +++ b/osinaweb/osinacore/views.py @@ -302,6 +302,15 @@ def my_projects(request, *args, **kwargs): project.total_time_worked_minutes = total_time_minutes project.total_time_worked_seconds = total_time_seconds + if user.is_superuser: + open_user_tasks_count = Task.objects.filter(project=project).exclude(status='Closed').count() + else: + open_user_tasks_count = Task.objects.filter(project=project, assigned_to=user.staffprofile).exclude(status='Closed').count() + + + project.open_user_tasks_count = open_user_tasks_count + + context = { 'projects': projects, } diff --git a/osinaweb/osinaweb/__pycache__/__init__.cpython-310.pyc b/osinaweb/osinaweb/__pycache__/__init__.cpython-310.pyc index 35e269ea30087710f6785b0c40fb337c60401301..16fc61802111d016d386b70cb26bc9dae18b9d46 100644 GIT binary patch delta 19 ZcmdnbxSx?bpO=@50SK5++fU@)0st!g1bhGh delta 19 ZcmdnbxSx?bpO=@50SG2qepH-0pO=@50SK5++i&FF#SH*73 delta 20 acmX>qepH-0pO=@50SG2