diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index 29417acf..b31ab36d 100644 Binary files a/osinaweb/db.sqlite3 and b/osinaweb/db.sqlite3 differ diff --git a/osinaweb/input.css b/osinaweb/input.css index c9028ebf..d52c032b 100644 --- a/osinaweb/input.css +++ b/osinaweb/input.css @@ -28,6 +28,14 @@ } +/* GIVE THIS CLASS TO THE SELECTED EPIC IN PROJECT DETAILS PAGE */ +.selectedEpic { + color: white !important; + font-weight: bold !important; +} + + + /* TO ANIMATE THE BURGER MENU IN THE FIXED HEADER */ /* Default state */ .burgerMenuLine { diff --git a/osinaweb/osinacore/__pycache__/__init__.cpython-311.pyc b/osinaweb/osinacore/__pycache__/__init__.cpython-311.pyc index 0d90ec5f..d56b89c2 100644 Binary files a/osinaweb/osinacore/__pycache__/__init__.cpython-311.pyc and b/osinaweb/osinacore/__pycache__/__init__.cpython-311.pyc differ diff --git a/osinaweb/osinacore/__pycache__/admin.cpython-311.pyc b/osinaweb/osinacore/__pycache__/admin.cpython-311.pyc index 8addf20a..805d0e6d 100644 Binary files a/osinaweb/osinacore/__pycache__/admin.cpython-311.pyc and b/osinaweb/osinacore/__pycache__/admin.cpython-311.pyc differ diff --git a/osinaweb/osinacore/__pycache__/apps.cpython-311.pyc b/osinaweb/osinacore/__pycache__/apps.cpython-311.pyc index 7c70a641..a3a923a9 100644 Binary files a/osinaweb/osinacore/__pycache__/apps.cpython-311.pyc and b/osinaweb/osinacore/__pycache__/apps.cpython-311.pyc differ diff --git a/osinaweb/osinacore/__pycache__/custom_context.cpython-311.pyc b/osinaweb/osinacore/__pycache__/custom_context.cpython-311.pyc index e469db85..c703e930 100644 Binary files a/osinaweb/osinacore/__pycache__/custom_context.cpython-311.pyc and b/osinaweb/osinacore/__pycache__/custom_context.cpython-311.pyc differ diff --git a/osinaweb/osinacore/__pycache__/forms.cpython-311.pyc b/osinaweb/osinacore/__pycache__/forms.cpython-311.pyc index 6eca4606..a473788b 100644 Binary files a/osinaweb/osinacore/__pycache__/forms.cpython-311.pyc and b/osinaweb/osinacore/__pycache__/forms.cpython-311.pyc differ diff --git a/osinaweb/osinacore/__pycache__/models.cpython-311.pyc b/osinaweb/osinacore/__pycache__/models.cpython-311.pyc index 527ae3a1..fa80e075 100644 Binary files a/osinaweb/osinacore/__pycache__/models.cpython-311.pyc and b/osinaweb/osinacore/__pycache__/models.cpython-311.pyc differ diff --git a/osinaweb/osinacore/__pycache__/views.cpython-311.pyc b/osinaweb/osinacore/__pycache__/views.cpython-311.pyc index adceb7f8..4a3f2167 100644 Binary files a/osinaweb/osinacore/__pycache__/views.cpython-311.pyc and b/osinaweb/osinacore/__pycache__/views.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-311.pyc index 7a09ecc6..66cdc241 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0001_initial.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-311.pyc index 75f22956..80a35a2c 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0002_projecttype_alter_business_options_staffprofile_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0003_milestone.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0003_milestone.cpython-311.pyc index 26124260..9f126052 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0003_milestone.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0003_milestone.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0004_epic.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0004_epic.cpython-311.pyc index 67f64071..c92f584e 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0004_epic.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0004_epic.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0005_staffprofile_image.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0005_staffprofile_image.cpython-311.pyc index 1734fa60..7e1f431c 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0005_staffprofile_image.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0005_staffprofile_image.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-311.pyc index b55069cc..c9ed9d9a 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0006_note.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-311.pyc index a0dd1280..179f3efc 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0007_project_project_id_alter_project_status.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0008_alter_project_project_id.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0008_alter_project_project_id.cpython-311.pyc index 1b9714dc..9dfa70ce 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0008_alter_project_project_id.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0008_alter_project_project_id.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0009_alter_project_project_id.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0009_alter_project_project_id.cpython-311.pyc index e67ea405..db079114 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0009_alter_project_project_id.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0009_alter_project_project_id.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0010_remove_note_date.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0010_remove_note_date.cpython-311.pyc index 63b9c81c..f26cfbe4 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0010_remove_note_date.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0010_remove_note_date.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0011_note_date_alter_note_color_alter_note_text_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0011_note_date_alter_note_color_alter_note_text_and_more.cpython-311.pyc index 8d8e6f36..1bfcc1b7 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0011_note_date_alter_note_color_alter_note_text_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0011_note_date_alter_note_color_alter_note_text_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-311.pyc index 3033039e..4a1ec663 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0012_projectrequirement.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0013_projectfile.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0013_projectfile.cpython-311.pyc index 59876156..a0880bfc 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0013_projectfile.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0013_projectfile.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0014_alter_projectfile_file.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0014_alter_projectfile_file.cpython-311.pyc index ee80f0e2..e273dcbc 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0014_alter_projectfile_file.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0014_alter_projectfile_file.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-311.pyc index 97325f50..2e054c45 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0015_projectcredentials.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0016_rename_projectcredentials_projectcredential.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0016_rename_projectcredentials_projectcredential.cpython-311.pyc index f85bb32b..89935fd9 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0016_rename_projectcredentials_projectcredential.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0016_rename_projectcredentials_projectcredential.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-311.pyc index e0a704eb..b8195a3f 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0017_alter_project_end_date_alter_project_start_date.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-311.pyc index dfbad6c6..d19f1d41 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0018_epic_status.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-311.pyc index 9cd2a4b9..933decd5 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0019_alter_epic_end_date_alter_epic_start_date.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-311.pyc index 4e2ba03c..8aa23702 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0020_task.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-311.pyc index 5ada5af7..ee3f58d7 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0021_alter_customerprofile_business_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0022_customerprofile_customer_id.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0022_customerprofile_customer_id.cpython-311.pyc index 35f5a3be..62bf9f9d 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0022_customerprofile_customer_id.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0022_customerprofile_customer_id.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0023_task_assigned_to.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0023_task_assigned_to.cpython-311.pyc index 7cdc7436..b52162bb 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0023_task_assigned_to.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0023_task_assigned_to.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-311.pyc index 20ba57b8..d481f606 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0024_task_task_id.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0025_status.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0025_status.cpython-311.pyc index 4e1aff44..0b4f0c00 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0025_status.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0025_status.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0026_remove_status_user_status_staff.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0026_remove_status_user_status_staff.cpython-311.pyc index 05ac039f..b1ab094e 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0026_remove_status_user_status_staff.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0026_remove_status_user_status_staff.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0027_alter_status_staff.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0027_alter_status_staff.cpython-311.pyc index ace491f7..57305948 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0027_alter_status_staff.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0027_alter_status_staff.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-311.pyc index 43394d77..1151e05c 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0028_remove_projecttype_color.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0029_alter_reference_date.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0029_alter_reference_date.cpython-311.pyc index 91d64392..f694c5fa 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0029_alter_reference_date.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0029_alter_reference_date.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0030_tag.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0030_tag.cpython-311.pyc index 946e1fad..03ee3c9d 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0030_tag.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0030_tag.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0031_alter_staffprofile_image.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0031_alter_staffprofile_image.cpython-311.pyc index bee67bf4..bc15f5c2 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0031_alter_staffprofile_image.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0031_alter_staffprofile_image.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-311.pyc index 32a28510..16d322ba 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0032_point.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-311.pyc index 464a831b..aa9ee7c9 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0033_point_date_completed_point_date_workingon_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0034_alter_point_date_completed_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0034_alter_point_date_completed_and_more.cpython-311.pyc index c844fd59..f7fcdb56 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0034_alter_point_date_completed_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0034_alter_point_date_completed_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0035_business_business_id.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0035_business_business_id.cpython-311.pyc index 41214963..fdd5859a 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0035_business_business_id.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0035_business_business_id.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-311.pyc index 81c288b0..a5feb393 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0036_staffposition_alter_staffprofile_position.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0037_remove_staffprofile_position.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0037_remove_staffprofile_position.cpython-311.pyc index 5cbda20a..13dba58e 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0037_remove_staffprofile_position.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0037_remove_staffprofile_position.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-311.pyc index 4b179a67..a8937ffb 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0038_staffprofile_staff_position.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0039_alter_staffprofile_staff_position.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0039_alter_staffprofile_staff_position.cpython-311.pyc index 89cfd770..3b16e5a8 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0039_alter_staffprofile_staff_position.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0039_alter_staffprofile_staff_position.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0040_staffprofile_staff_id.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0040_staffprofile_staff_id.cpython-311.pyc index bed3a79b..be5bdb98 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0040_staffprofile_staff_id.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0040_staffprofile_staff_id.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0041_dailyreport.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0041_dailyreport.cpython-311.pyc index 36438d15..c5442f77 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0041_dailyreport.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0041_dailyreport.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-311.pyc index ca5b16d8..1f5b0f87 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0042_remove_customerprofile_email_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-311.pyc index 0289a3c6..c746f44c 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0043_businesstype.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0044_remove_business_business_type.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0044_remove_business_business_type.cpython-311.pyc index 3dd79757..23b78dfc 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0044_remove_business_business_type.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0044_remove_business_business_type.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0045_business_type.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0045_business_type.cpython-311.pyc index 1dbddcef..e13fefdb 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0045_business_type.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0045_business_type.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0046_task_requirement.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0046_task_requirement.cpython-311.pyc index 9bbe5bef..dee18be3 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0046_task_requirement.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0046_task_requirement.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-311.pyc index 5610a82c..63084076 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0047_task_status_date.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0048_alter_customerprofile_business.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0048_alter_customerprofile_business.cpython-311.pyc index 4c2b5ddc..13e6b35b 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0048_alter_customerprofile_business.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0048_alter_customerprofile_business.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0049_alter_customerprofile_business.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0049_alter_customerprofile_business.cpython-311.pyc index 29d9e8ad..aeba789d 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0049_alter_customerprofile_business.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0049_alter_customerprofile_business.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-311.pyc index f63a606e..9ff35666 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0050_projectrequirement_added_by_projectrequirement_date.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0051_alter_task_requirement.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0051_alter_task_requirement.cpython-311.pyc index 8ce7e451..0fb6b1a1 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0051_alter_task_requirement.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0051_alter_task_requirement.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-311.pyc index 624d8f16..e8d93213 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0052_note_project.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-311.pyc index ac669032..6e281c45 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0053_pointactivity.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0054_remove_point_date_completed_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0054_remove_point_date_completed_and_more.cpython-311.pyc index 0aceb8bd..fe9d9f1c 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0054_remove_point_date_completed_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0054_remove_point_date_completed_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0055_alter_point_status.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0055_alter_point_status.cpython-311.pyc index 1d902fba..945ca759 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0055_alter_point_status.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0055_alter_point_status.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0056_alter_pointactivity_end_time.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0056_alter_pointactivity_end_time.cpython-311.pyc index 2e3c876b..a3eee187 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0056_alter_pointactivity_end_time.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0056_alter_pointactivity_end_time.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0057_point_total_time_hours_point_total_time_minutes_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0057_point_total_time_hours_point_total_time_minutes_and_more.cpython-311.pyc index e25551a4..64e208ca 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0057_point_total_time_hours_point_total_time_minutes_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0057_point_total_time_hours_point_total_time_minutes_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/0058_remove_point_total_time_hours_and_more.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/0058_remove_point_total_time_hours_and_more.cpython-311.pyc index 4fc3ec26..75a9b855 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/0058_remove_point_total_time_hours_and_more.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/0058_remove_point_total_time_hours_and_more.cpython-311.pyc differ diff --git a/osinaweb/osinacore/migrations/__pycache__/__init__.cpython-311.pyc b/osinaweb/osinacore/migrations/__pycache__/__init__.cpython-311.pyc index 546c37ac..1b432b03 100644 Binary files a/osinaweb/osinacore/migrations/__pycache__/__init__.cpython-311.pyc and b/osinaweb/osinacore/migrations/__pycache__/__init__.cpython-311.pyc differ diff --git a/osinaweb/osinacore/views.py b/osinaweb/osinacore/views.py index e2adebcc..fed3176d 100644 --- a/osinaweb/osinacore/views.py +++ b/osinaweb/osinacore/views.py @@ -234,6 +234,30 @@ def staff_positions(request): return render(request, 'listing_pages/staff-positions.html', context) +#FETCH EPIC RELATED TASKS +def get_tasks(request, epic_id): + epic = get_object_or_404(Epic, id=epic_id) + related_tasks = Task.objects.filter(epic=epic).order_by('-id') + + context = { + 'epic': epic, + 'related_tasks': related_tasks, + } + + return render(request, 'epic-fetched-tasks.html', context) + + +# TO DISPALY ALL THE OPEN TASKS OF THIS PROJECT +def open_tasks_for_project(request, project_id): + project = Project.objects.get(pk=project_id) + open_tasks = Task.objects.filter(project=project, status='Open').order_by('-id') + + context = { + 'project': project, + 'open_tasks': open_tasks, + } + + return render(request, 'project-open-tasks.html', context) @@ -244,29 +268,13 @@ def staff_positions(request): @login_required def detailed_project(request, project_id): project = get_object_or_404(Project, project_id=project_id) - epics = Epic.objects.filter(project=project) - latest_epic = Epic.objects.filter(project=project).last() + epics = Epic.objects.filter(project=project).order_by('-id') project_notes = Note.objects.filter(project=project).order_by('-id') - if latest_epic: - epics = epics.exclude(pk=latest_epic.pk) - - selected_epic_id = request.GET.get('epic_id') - - if selected_epic_id: - selected_epic = get_object_or_404(Epic, id=selected_epic_id) - related_tasks = Task.objects.filter(epic=selected_epic) - else: - selected_epic = None - related_tasks = [] - context = { 'project': project, 'epics': epics, - 'selected_epic': selected_epic, - 'related_tasks': related_tasks, - 'latest_epic': latest_epic, 'project_notes' : project_notes, } @@ -656,48 +664,6 @@ def user_recent_activities_modal(request, user_id): -#FETCH EPIC RELATED TASKS -def get_tasks (request, epic_id): - epic = get_object_or_404(Epic, id=epic_id) - related_tasks = Task.objects.filter(epic_id=epic).order_by('-id') - - context = { - 'epic': epic, - 'related_tasks': related_tasks, - } - - return render(request, 'epic-fetched-tasks.html', context) - - -# TO FETCH THE LATEST EPIC AND ITS TASKS -def get_latest_epic(request, project_id): - try: - project = get_object_or_404(Project, id=project_id) - latest_epic = Epic.objects.filter(project=project).order_by('-id').first() - - if latest_epic: - related_tasks = Task.objects.filter(epic=latest_epic) - else: - related_tasks = [] - - context = { - 'latest_epic': latest_epic, - 'related_tasks': related_tasks, - } - - return render(request, 'epic-fetched-tasks.html', context) - except Http404: - # Handle case where the specified project does not exist - return HttpResponseServerError("Project not found") - except Exception as e: - # Log the error or return a specific error response - print(f"An error occurred: {str(e)}") - return HttpResponseServerError("Internal Server Error") - - - - - #Save Functions diff --git a/osinaweb/osinaweb/__pycache__/__init__.cpython-311.pyc b/osinaweb/osinaweb/__pycache__/__init__.cpython-311.pyc index 20da8714..1dd63b9d 100644 Binary files a/osinaweb/osinaweb/__pycache__/__init__.cpython-311.pyc and b/osinaweb/osinaweb/__pycache__/__init__.cpython-311.pyc differ diff --git a/osinaweb/osinaweb/__pycache__/settings.cpython-311.pyc b/osinaweb/osinaweb/__pycache__/settings.cpython-311.pyc index afac2d7f..51960a62 100644 Binary files a/osinaweb/osinaweb/__pycache__/settings.cpython-311.pyc and b/osinaweb/osinaweb/__pycache__/settings.cpython-311.pyc differ diff --git a/osinaweb/osinaweb/__pycache__/urls.cpython-311.pyc b/osinaweb/osinaweb/__pycache__/urls.cpython-311.pyc index ddafd22a..0b0167ad 100644 Binary files a/osinaweb/osinaweb/__pycache__/urls.cpython-311.pyc and b/osinaweb/osinaweb/__pycache__/urls.cpython-311.pyc differ diff --git a/osinaweb/osinaweb/__pycache__/wsgi.cpython-311.pyc b/osinaweb/osinaweb/__pycache__/wsgi.cpython-311.pyc index a1a8da73..8261e340 100644 Binary files a/osinaweb/osinaweb/__pycache__/wsgi.cpython-311.pyc and b/osinaweb/osinaweb/__pycache__/wsgi.cpython-311.pyc differ diff --git a/osinaweb/osinaweb/urls.py b/osinaweb/osinaweb/urls.py index c5cb47c8..7c0c0348 100644 --- a/osinaweb/osinaweb/urls.py +++ b/osinaweb/osinaweb/urls.py @@ -66,7 +66,7 @@ urlpatterns = [ #Fetch urls path('get_tasks//', views.get_tasks, name='get_tasks'), - path('get_latest_epic//', views.get_latest_epic, name='get_latest_epic'), + path('open_tasks_for_project//', views.open_tasks_for_project, name='open_tasks_for_project'), #Modals urls diff --git a/osinaweb/static/dist/output.css b/osinaweb/static/dist/output.css index 817adf27..8904b18c 100644 --- a/osinaweb/static/dist/output.css +++ b/osinaweb/static/dist/output.css @@ -1371,6 +1371,10 @@ video { border-bottom-width: 1px; } +.border-b-2 { + border-bottom-width: 2px; +} + .border-r { border-right-width: 1px; } @@ -1907,6 +1911,10 @@ video { padding-bottom: 2.25rem; } +.pb-1 { + padding-bottom: 0.25rem; +} + .pb-2 { padding-bottom: 0.5rem; } @@ -2010,6 +2018,10 @@ video { font-weight: 700; } +.font-extralight { + font-weight: 200; +} + .font-light { font-weight: 300; } @@ -2040,6 +2052,16 @@ video { color: rgb(59 130 246 / var(--tw-text-opacity)); } +.text-blue-600 { + --tw-text-opacity: 1; + color: rgb(37 99 235 / var(--tw-text-opacity)); +} + +.text-gray-300 { + --tw-text-opacity: 1; + color: rgb(209 213 219 / var(--tw-text-opacity)); +} + .text-gray-400 { --tw-text-opacity: 1; color: rgb(156 163 175 / var(--tw-text-opacity)); @@ -2245,6 +2267,13 @@ video { } } +/* GIVE THIS CLASS TO THE SELECTED EPIC IN PROJECT DETAILS PAGE */ + +.selectedEpic { + color: white !important; + font-weight: bold !important; +} + /* TO ANIMATE THE BURGER MENU IN THE FIXED HEADER */ /* Default state */ @@ -2390,10 +2419,6 @@ video { background-color: rgb(239 68 68 / var(--tw-bg-opacity)); } -.hover\:bg-transparent:hover { - background-color: transparent; -} - .hover\:bg-white:hover { --tw-bg-opacity: 1; background-color: rgb(255 255 255 / var(--tw-bg-opacity)); @@ -2580,10 +2605,6 @@ video { width: 300px; } - .l\:w-\[50\%\] { - width: 50%; - } - .l\:w-fit { width: -moz-fit-content; width: fit-content; @@ -2659,22 +2680,9 @@ video { } @media (min-width: 1536px) { - .xl\:w-\[250px\] { - width: 250px; - } - - .xl\:w-fit { - width: -moz-fit-content; - width: fit-content; - } - .xl\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } - - .xl\:flex-row { - flex-direction: row; - } } @media (min-width: 1600px) { diff --git a/osinaweb/static/js/epics.js b/osinaweb/static/js/epics.js deleted file mode 100644 index 6deb23a5..00000000 --- a/osinaweb/static/js/epics.js +++ /dev/null @@ -1,14 +0,0 @@ -const epicSelect = document.getElementById('epicSelect'); -const epicDetails = document.getElementById('epicDetails'); -const latestEpicDetails = document.getElementById('latestEpicDetails'); - -epicSelect.addEventListener('change', function () { - if (this.value !== 'EPICS') { - epicDetails.classList.remove('hidden'); - epicDetails.classList.add('flex'); - - latestEpicDetails.classList.add('hidden'); - } else { - epicDetails.classList.add('hidden'); - } -}); \ No newline at end of file diff --git a/osinaweb/static/js/fetch-epic-tasks.js b/osinaweb/static/js/fetch-epic-tasks.js index 2cdb007c..ac245e81 100644 --- a/osinaweb/static/js/fetch-epic-tasks.js +++ b/osinaweb/static/js/fetch-epic-tasks.js @@ -1,79 +1,57 @@ - -$(document).ready(function () { - // Function to fetch related tasks based on epic ID - function fetchRelatedTasks(epicId) { - - $.ajax({ - type: "GET", - url: "/get_tasks/" + epicId + "/", - success: function (data) { - // console.log("Ajax call success. Data received:", data); - - $("#epicRelatedTasksContainer").html(data); - }, - error: function (xhr, status, error) { - console.log("Ajax call failed. Error details:"); - console.log("XHR Object:", xhr); - console.log("Status:", status); - console.log("Error:", error); - } - }); - } - - $("select#epicSelect").change(function () { - // Get the selected option's value - var selectedEpicId = $(this).val(); - - if (selectedEpicId) { - // Fetch related tasks based on the selected epic - fetchRelatedTasks(selectedEpicId); +function fetchOpenTasks() { + var projectId = $('#projectId').text().trim(); + + $.ajax({ + url: '/open_tasks_for_project/' + projectId + '/', + method: 'GET', + success: function (data) { + console.log('Success:', data); + $('#epicRelatedTasksContainer').html(data); + console.log('Updated Container:', $('#epicRelatedTasksContainer').html()); + }, + error: function (error) { + console.error('Error fetching open tasks:', error); } }); +} - - // TO FETCH THE LATEST EPIC BY DEFAULT - var projectId = $("#projectId").text().trim(); - - function fetchLatestEpicTasks(projectId) { - $.ajax({ - type: "GET", - url: "/get_latest_epic/" + projectId + "/", - success: function (data) { - var latestEpicId = data.latest_epic ? data.latest_epic.id : null; - - if (latestEpicId) { - // Fetch related tasks based on the latest epic - fetchRelatedTasks(latestEpicId); - } else { - // console.log("No latest epic found."); - } - - $("#epicRelatedTasksContainer").html(data); - }, - error: function (xhr, status, error) { - console.log("Ajax call failed. Error details:"); - console.log("XHR Object:", xhr); - console.log("Status:", status); - console.log("Error:", error); - } - }); - } - - fetchLatestEpicTasks(projectId); - - - - $('#epicSelect').change(function () { - var selectedEpic = $(this).find(':selected'); - var startDate = selectedEpic.data('start-date'); - var endDate = selectedEpic.data('end-date'); - - if (startDate && endDate) { - $('#epicDetails').removeClass('hidden'); - $('#epicDetails span#startDate').text(startDate); - $('#epicDetails span#endDate').text(endDate); - } else { - $('#epicDetails').addClass('hidden'); +// To load to display open tasks by default +$(document).ready(function () { + fetchOpenTasks(); +}); + +// Click event handler for the "All Open Tasks" link +$('.openTasks').on('click', function () { + // Remove the selectedEpic class from all epic titles + $('.epicTitle').removeClass('selectedEpic'); + $('.openTasks').removeClass('selectedEpic'); + + // Add the selectedEpic class to the "All Open Tasks" link + $(this).addClass('selectedEpic'); + + fetchOpenTasks(); +}); + +// Click event handler for the epic titles +$('.epicTitle').on('click', function () { + // Remove the selectedEpic class from all epic titles + $('.epicTitle').removeClass('selectedEpic'); + $('.openTasks').removeClass('selectedEpic'); + + var epicId = $(this).data('epic-id'); + + $(this).addClass('selectedEpic'); + + $.ajax({ + url: '/get_tasks/' + epicId + '/', + method: 'GET', + success: function (data) { + console.log('Success:', data); + $('#epicRelatedTasksContainer').html(data); + console.log('Updated Container:', $('#epicRelatedTasksContainer').html()); + }, + error: function (error) { + console.error('Error fetching tasks:', error); } }); -}); \ No newline at end of file +}); diff --git a/osinaweb/templates/details_pages/project-details.html b/osinaweb/templates/details_pages/project-details.html index d06590a3..bf646e8b 100644 --- a/osinaweb/templates/details_pages/project-details.html +++ b/osinaweb/templates/details_pages/project-details.html @@ -2,6 +2,9 @@ {%load static%} {% block content %} + + +
@@ -541,9 +544,17 @@ - +
+ + +
{% endfor %} @@ -579,51 +590,25 @@
+ +
-
-
- -
-
-
- - -
- -
- {{latest_epic.start_date}} - {{latest_epic.end_date}} -
- - +
+

Filter Tasks by Epics

+
+ +

|

+ {% for epic in epics %} + +

|

+ {% endfor %}
@@ -836,8 +821,6 @@ - - diff --git a/osinaweb/templates/epic-fetched-tasks.html b/osinaweb/templates/epic-fetched-tasks.html index c6700fe3..4a25096c 100644 --- a/osinaweb/templates/epic-fetched-tasks.html +++ b/osinaweb/templates/epic-fetched-tasks.html @@ -1,174 +1,206 @@ {% load static %} +
+
+

{{epic.start_date}} - {{epic.end_date}}

+

+
+ + + +
+
- @@ -280,8 +312,8 @@ data-modal-url="{% url 'addtime' %}">Add Time - +
{% endfor %} -
+ \ No newline at end of file diff --git a/osinaweb/templates/listing_pages/tasks.html b/osinaweb/templates/listing_pages/tasks.html index 25737f9a..11e647e7 100644 --- a/osinaweb/templates/listing_pages/tasks.html +++ b/osinaweb/templates/listing_pages/tasks.html @@ -165,7 +165,7 @@

{{task.name}}

{% endif %} - + {% if task.status == 'Working On' %}
@@ -224,492 +224,475 @@ {% endif %} {% if task.status == 'Open' %} - {% if task.end_date < current_date %} -
-

{{task.formatted_end_date}}

-
- {% else %} -
-

{{task.formatted_end_date}}

-
- {% endif %} - {% endif %} + {% if task.end_date < current_date %}
+

{{task.formatted_end_date}}

+
+ {% else %} +
+

{{task.formatted_end_date}}

+
+ {% endif %} + {% endif %} - {% if task.status == 'Working On' %} - {% if task.end_date < current_date %} -
-

{{task.formatted_end_date}}

-
- {% else %} -
-

{{task.formatted_end_date}}

-
- {% endif %} - {% endif %} + {% if task.status == 'Working On' %} + {% if task.end_date < current_date %}
+

{{task.formatted_end_date}}

+
+ {% else %} +
+

{{task.formatted_end_date}}

+
+ {% endif %} + {% endif %} - {% if task.status == 'Closed' %} - {% if task.end_date < current_date %} -
-

{{task.formatted_end_date}}

-
- {% else %} -
-

{{task.formatted_end_date}}

-
- {% endif %} - {% endif %} -
+ {% if task.status == 'Closed' %} + {% if task.end_date < current_date %}
+

{{task.formatted_end_date}}

+
+ {% else %} +
+

{{task.formatted_end_date}}

+
+ {% endif %} + {% endif %} + + + +
+ +
+ + - {% endfor %} + + +
+ + + + + + + + + + + + + + + + + + + + + +
+
+ + {% endfor %} + - -
- {% for task in my_tasks %} -
-
-
- {% if task.status == 'Open' %} -
-

{{task.name}}

-
- {% endif %} + +
+ {% for task in my_tasks %} +
+
+
+ {% if task.status == 'Open' %} +
+

{{task.name}}

+
+ {% endif %} - {% if task.status == 'Working On' %} -
-

{{task.name}}

-
- {% endif %} + {% if task.status == 'Working On' %} +
+

{{task.name}}

+
+ {% endif %} - {% if task.status == 'Closed' %} -
-

{{task.name}}

-
- {% endif %} -
+ {% if task.status == 'Closed' %} +
+

{{task.name}}

+
+ {% endif %} +
-
- {% if task.status == 'Closed' %} -
-

{{task.status}}

-
- {% endif %} +
+ {% if task.status == 'Closed' %} +
+

{{task.status}}

+
+ {% endif %} - {% if task.status == 'Open' %} -
-

{{task.status}}

-
- {% endif %} + {% if task.status == 'Open' %} +
+

{{task.status}}

+
+ {% endif %} - {% if task.status == 'Working On' %} -
-

{{task.status}}

-
- {% endif %} + {% if task.status == 'Working On' %} +
+

{{task.status}}

+
+ {% endif %} - {% if task.status == 'Open' %} -
-

{{task.start_date}}

-
- {% endif %} + {% if task.status == 'Open' %} +
+

{{task.start_date}}

+
+ {% endif %} - {% if task.status == 'Working On' %} -
-

{{task.start_date}}

-
- {% endif %} + {% if task.status == 'Working On' %} +
+

{{task.start_date}}

+
+ {% endif %} - {% if task.status == 'Closed' %} -
-

{{task.start_date}}

-
- {% endif %} + {% if task.status == 'Closed' %} +
+

{{task.start_date}}

+
+ {% endif %} - {% if task.status == 'Open' %} -
-

{{task.end_date}}

-
- {% endif %} + {% if task.status == 'Open' %} +
+

{{task.end_date}}

+
+ {% endif %} - {% if task.status == 'Working On' %} -
-

{{task.end_date}}

-
- {% endif %} + {% if task.status == 'Working On' %} +
+

{{task.end_date}}

+
+ {% endif %} - {% if task.status == 'Closed' %} -
-

{{task.end_date}}

-
- {% endif %} -
+ {% if task.status == 'Closed' %} +
+

{{task.end_date}}

+
+ {% endif %} +
-
-
-

Project:

-

{{task.project.name}}

-
+
+
+

Project:

+

{{task.project.name}}

+
-
-

Epic:

-

{{task.epic.title}}

-
+
+

Epic:

+

{{task.epic.title}}

+
-
-

Assigned To:

-

{{task.assigned_to.user.first_name}} - {{task.assigned_to.user.last_name}}

-
+
+

Assigned To:

+

{{task.assigned_to.user.first_name}} + {{task.assigned_to.user.last_name}}

+
-
-

Extra:

-

{{task.extra}}

-
-
+
+

Extra:

+

{{task.extra}}

+
+
-
-

Actions

- - -
+
+

Actions

+ + +
- -
- {% endfor %} +
+ {% endfor %} +
+
+ - -