diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index 0e1fecf9..4369eabf 100644 Binary files a/osinaweb/db.sqlite3 and b/osinaweb/db.sqlite3 differ diff --git a/osinaweb/input.css b/osinaweb/input.css index c417e1de..520b6dac 100644 --- a/osinaweb/input.css +++ b/osinaweb/input.css @@ -26,6 +26,7 @@ } } + /* TO ANIMATE THE BURGER MENU IN THE FIXED HEADER */ /* Default state */ .burgerMenuLine { @@ -37,4 +38,91 @@ .burgerMenuLine.expanded { width: 2px; height: 25px; +} + +.closeMenuLine { + width: 2px; + height: 25px; +} + +.closeMenuLine.expanded { + width: 25px; + height: 2px; +} + +/* SIDE BAR */ +@media (max-width: 1200px) { + #scrollPart { + margin-left: 0; + } + + .fixedSideHeader { + display: none; + margin-top: 100px; + width: 100% !important; + z-index: 50; + position: absolute; + } +} + + + +/* TO ANIMATION THE UER ACTIVITY FIXED BUTTON */ +@keyframes zoomInOut { + + 0%, + 100% { + transform: scale(1); + opacity: 0.5; + } + + 50% { + transform: scale(1.2); + /* Adjust the scale factor as needed */ + opacity: 1; + /* Adjust the opacity as needed */ + } +} + +.usersActivityIcon { + animation: zoomInOut 1.5s infinite; +} + + +/* DRAGGABLE SLIDER */ +.swiper-container { + width: 100%; + height: 100%; + overflow: hidden !important; + position: relative; +} + +.swiper-slide { + width: 33% !important; + margin-right: 20px; +} + +.swiper-slide:last-child { + margin-right: 0 !important; +} + +.swiper-wrapper::-webkit-scrollbar { + width: 0; + background: transparent; +} + +/* Hide the scrollbar thumb when not scrolling */ +.swiper-wrapper::-webkit-scrollbar-thumb { + background: transparent; +} + +/* Hide the scrollbar track when not scrolling */ +.swiper-wrapper::-webkit-scrollbar-track { + background: transparent; +} + +@media screen and (max-width: 500px) { + .swiper-slide { + width: 90% !important; + } } \ No newline at end of file diff --git a/osinaweb/osinacore/__pycache__/__init__.cpython-311.pyc b/osinaweb/osinacore/__pycache__/__init__.cpython-311.pyc index 5be1215c..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 c6c4c08a..0cadf2d6 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 460d0ed1..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 0cf6ceef..e1420bf4 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 a9c2edb8..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 7eae7cac..a525e97c 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 205ed401..d1742120 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 e5174441..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 23fd486b..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 f638258e..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 1dde3b84..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 97430402..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 53668bb1..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 5edb8910..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 f408d670..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 e76de82b..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 cbd43889..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 68d372ee..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 4754a6af..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 eb71e051..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 73065306..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 dbf1a515..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 4fb5b6ce..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 70ff4d8d..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 8c62ec4d..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 baf4f967..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 022a7135..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 e0b0d16e..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 59a009bb..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 b01c0d63..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 ebcb71a1..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 54fcdac3..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 7fab50d3..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 31785988..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 86e345f8..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 fa728006..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 a9679626..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 c7fa1787..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 17c86851..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 727bdc05..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 773810c6..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 48ba8280..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 e81f3271..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 50776cbd..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 5fff8941..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 4573c3d2..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 2c36b4b9..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 53d6df26..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 16da0896..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 new file mode 100644 index 00000000..c746f44c Binary files /dev/null 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 new file mode 100644 index 00000000..23b78dfc Binary files /dev/null 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 new file mode 100644 index 00000000..e13fefdb Binary files /dev/null and b/osinaweb/osinacore/migrations/__pycache__/0045_business_type.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 c6a3a909..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 db74d32c..abd05cff 100644 --- a/osinaweb/osinacore/views.py +++ b/osinaweb/osinacore/views.py @@ -519,32 +519,29 @@ def staff_position_modal(request): return render(request, 'popup_modals/add-staffposition-modal.html', context) +def status_mobile_modal (request, *args, **kwargs): + context = { + } + return render(request, 'popup_modals/status-on-mobile-modal.html', context) -#Fetch Views -def fetch_related_tasks(request): - # Get the selected epic ID from the request - epic_id = request.GET.get("epic_id") - # Fetch tasks related to the selected epic along with their project - related_tasks = Task.objects.filter(epic_id=epic_id).select_related("project") - task_data = [ - { - "name": task.name, - "status": task.status, - "start_date": task.formatted_start_date(), - "end_date": task.formatted_end_date(), - "extra": task.extra, - "task_id": task.task_id, - } - for task in related_tasks - ] - return JsonResponse({"tasks": task_data}) +#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) @@ -1296,6 +1293,9 @@ def edit_staff(request, staff_id): if new_image: staff.image = new_image + staff.active = request.POST.get('active') == 'on' + staff.intern = request.POST.get('intern') == 'on' + staff.save() diff --git a/osinaweb/osinaweb/__pycache__/__init__.cpython-311.pyc b/osinaweb/osinaweb/__pycache__/__init__.cpython-311.pyc index 84bc3c81..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 2f717b72..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 cbef19a4..17f42a18 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 678b54db..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 c3f76524..a88780f3 100644 --- a/osinaweb/osinaweb/urls.py +++ b/osinaweb/osinaweb/urls.py @@ -62,7 +62,7 @@ urlpatterns = [ #Fetch urls - path("fetch_related_tasks/", views.fetch_related_tasks, name="fetch_related_tasks"), + path('get_tasks//', views.get_tasks, name='get_tasks'), #Modals urls @@ -82,6 +82,7 @@ urlpatterns = [ path('add-tag/', views.add_tag_modal, name='addtag'), path('add-businesscustomer/', views.add_business_modal, name='addbusinesscustomer'), path('add-staffposition/', views.staff_position_modal, name='addstaffposition'), + path('statusmobilemodal/', views.status_mobile_modal, name='statusmobilemodal'), #Save Urls diff --git a/osinaweb/static/dist/output.css b/osinaweb/static/dist/output.css index 493aa298..0dcf4899 100644 --- a/osinaweb/static/dist/output.css +++ b/osinaweb/static/dist/output.css @@ -667,10 +667,18 @@ video { bottom: 0.5rem; } +.bottom-3 { + bottom: 0.75rem; +} + .bottom-5 { bottom: 1.25rem; } +.left-0 { + left: 0px; +} + .right-0 { right: 0px; } @@ -691,10 +699,18 @@ video { right: 1.25rem; } +.top-1 { + top: 0.25rem; +} + .top-3 { top: 0.75rem; } +.z-10 { + z-index: 10; +} + .z-20 { z-index: 20; } @@ -728,6 +744,10 @@ video { margin-bottom: 1.25rem; } +.ml-0 { + margin-left: 0px; +} + .ml-\[300px\] { margin-left: 300px; } @@ -784,6 +804,10 @@ video { display: block; } +.inline-block { + display: inline-block; +} + .flex { display: flex; } @@ -824,6 +848,10 @@ video { height: 150px; } +.h-\[25px\] { + height: 25px; +} + .h-\[2px\] { height: 2px; } @@ -881,10 +909,6 @@ video { width: 12rem; } -.w-\[10\%\] { - width: 10%; -} - .w-\[100\%\] { width: 100%; } @@ -901,10 +925,6 @@ video { width: 13px; } -.w-\[14\%\] { - width: 14%; -} - .w-\[15\%\] { width: 15%; } @@ -945,8 +965,8 @@ video { width: 25px; } -.w-\[3\%\] { - width: 3%; +.w-\[2px\] { + width: 2px; } .w-\[30\%\] { @@ -961,10 +981,6 @@ video { width: 30px; } -.w-\[33\.33\%\] { - width: 33.33%; -} - .w-\[35\%\] { width: 35%; } @@ -981,18 +997,10 @@ video { width: 40px; } -.w-\[45\%\] { - width: 45%; -} - .w-\[45px\] { width: 45px; } -.w-\[5\%\] { - width: 5%; -} - .w-\[50\%\] { width: 50%; } @@ -1005,8 +1013,8 @@ video { width: 50px; } -.w-\[55\%\] { - width: 55%; +.w-\[55px\] { + width: 55px; } .w-\[60px\] { @@ -1017,10 +1025,6 @@ video { width: 74.5%; } -.w-\[75\%\] { - width: 75%; -} - .w-\[80\%\] { width: 80%; } @@ -1062,6 +1066,10 @@ video { max-width: 24rem; } +.max-w-xl { + max-width: 36rem; +} + .max-w-xs { max-width: 20rem; } @@ -1078,6 +1086,11 @@ video { border-collapse: collapse; } +.-translate-y-1 { + --tw-translate-y: -0.25rem; + transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); +} + .transform { transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y)); } @@ -1106,6 +1119,10 @@ video { list-style-type: disc; } +.grid-cols-1 { + grid-template-columns: repeat(1, minmax(0, 1fr)); +} + .grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } @@ -1114,6 +1131,18 @@ video { grid-template-columns: repeat(3, minmax(0, 1fr)); } +.grid-cols-4 { + grid-template-columns: repeat(4, minmax(0, 1fr)); +} + +.grid-cols-6 { + grid-template-columns: repeat(6, minmax(0, 1fr)); +} + +.flex-row { + flex-direction: row; +} + .flex-col { flex-direction: column; } @@ -1154,6 +1183,10 @@ video { justify-content: space-between; } +.gap-0 { + gap: 0px; +} + .gap-1 { gap: 0.25rem; } @@ -1231,6 +1264,11 @@ video { border-radius: 0.375rem; } +.rounded-b-md { + border-bottom-right-radius: 0.375rem; + border-bottom-left-radius: 0.375rem; +} + .rounded-e-md { border-start-end-radius: 0.375rem; border-end-end-radius: 0.375rem; @@ -1294,6 +1332,11 @@ video { border-style: none; } +.border-black { + --tw-border-opacity: 1; + border-color: rgb(0 0 0 / var(--tw-border-opacity)); +} + .border-blue-500 { --tw-border-opacity: 1; border-color: rgb(59 130 246 / var(--tw-border-opacity)); @@ -1339,11 +1382,21 @@ video { border-color: rgb(239 68 68 / var(--tw-border-opacity)); } +.border-red-600 { + --tw-border-opacity: 1; + border-color: rgb(220 38 38 / var(--tw-border-opacity)); +} + .border-slate-600 { --tw-border-opacity: 1; border-color: rgb(71 85 105 / var(--tw-border-opacity)); } +.border-slate-700 { + --tw-border-opacity: 1; + border-color: rgb(51 65 85 / var(--tw-border-opacity)); +} + .border-slate-800 { --tw-border-opacity: 1; border-color: rgb(30 41 59 / var(--tw-border-opacity)); @@ -1546,6 +1599,14 @@ video { --tw-bg-opacity: 0.4; } +.bg-opacity-50 { + --tw-bg-opacity: 0.5; +} + +.bg-opacity-60 { + --tw-bg-opacity: 0.6; +} + .stroke-black { stroke: #000; } @@ -1610,6 +1671,11 @@ video { padding-right: 2rem; } +.px-9 { + padding-left: 2.25rem; + padding-right: 2.25rem; +} + .py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; @@ -1746,6 +1812,11 @@ video { line-height: 2rem; } +.text-black { + --tw-text-opacity: 1; + color: rgb(0 0 0 / var(--tw-text-opacity)); +} + .text-blue-500 { --tw-text-opacity: 1; color: rgb(59 130 246 / var(--tw-text-opacity)); @@ -1786,6 +1857,11 @@ video { color: rgb(239 68 68 / var(--tw-text-opacity)); } +.text-red-600 { + --tw-text-opacity: 1; + color: rgb(220 38 38 / var(--tw-text-opacity)); +} + .text-slate-700 { --tw-text-opacity: 1; color: rgb(51 65 85 / var(--tw-text-opacity)); @@ -1868,6 +1944,18 @@ video { outline-style: solid; } +.filter { + filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow); +} + +.transition { + transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter; + transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter; + transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter; + transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); + transition-duration: 150ms; +} + .transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); @@ -1880,10 +1968,24 @@ video { transition-duration: 150ms; } +.transition-transform { + transition-property: transform; + transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); + transition-duration: 150ms; +} + .duration-300 { transition-duration: 300ms; } +.duration-500 { + transition-duration: 500ms; +} + +.ease-in-out { + transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); +} + ::-webkit-scrollbar { width: 5px; /* Width of the entire scrollbar */ @@ -1923,6 +2025,94 @@ video { height: 25px; } +.closeMenuLine { + width: 2px; + height: 25px; +} + +.closeMenuLine.expanded { + width: 25px; + height: 2px; +} + +/* SIDE BAR */ + +@media (max-width: 1200px) { + #scrollPart { + margin-left: 0; + } + + .fixedSideHeader { + display: none; + margin-top: 100px; + width: 100% !important; + z-index: 50; + position: absolute; + } +} + +/* TO ANIMATION THE UER ACTIVITY FIXED BUTTON */ + +@keyframes zoomInOut { + 0%, + 100% { + transform: scale(1); + opacity: 0.5; + } + + 50% { + transform: scale(1.2); + /* Adjust the scale factor as needed */ + opacity: 1; + /* Adjust the opacity as needed */ + } +} + +.usersActivityIcon { + animation: zoomInOut 1.5s infinite; +} + +/* DRAGGABLE SLIDER */ + +.swiper-container { + width: 100%; + height: 100%; + overflow: hidden !important; + position: relative; +} + +.swiper-slide { + width: 33% !important; + margin-right: 20px; +} + +.swiper-slide:last-child { + margin-right: 0 !important; +} + +.swiper-wrapper::-webkit-scrollbar { + width: 0; + background: transparent; +} + +/* Hide the scrollbar thumb when not scrolling */ + +.swiper-wrapper::-webkit-scrollbar-thumb { + background: transparent; +} + +/* Hide the scrollbar track when not scrolling */ + +.swiper-wrapper::-webkit-scrollbar-track { + background: transparent; +} + +@media screen and (max-width: 500px) { + .swiper-slide { + width: 90% !important; + } +} + .hover\:bg-blue-500:hover { --tw-bg-opacity: 1; background-color: rgb(59 130 246 / var(--tw-bg-opacity)); @@ -1972,11 +2162,63 @@ video { outline-offset: 2px; } -.group:hover .group-hover\:opacity-100 { - opacity: 1; +.group:hover .group-hover\:flex { + display: flex; +} + +@media (min-width: 650px) { + .s\:h-\[35px\] { + height: 35px; + } + + .s\:h-\[50px\] { + height: 50px; + } + + .s\:w-\[35px\] { + width: 35px; + } + + .s\:w-\[50px\] { + width: 50px; + } + + .s\:w-fit { + width: -moz-fit-content; + width: fit-content; + } + + .s\:flex-row { + flex-direction: row; + } + + .s\:justify-end { + justify-content: flex-end; + } + + .s\:gap-0 { + gap: 0px; + } + + .s\:px-9 { + padding-left: 2.25rem; + padding-right: 2.25rem; + } } @media (min-width: 798px) { + .md\:block { + display: block; + } + + .md\:hidden { + display: none; + } + + .md\:h-\[150px\] { + height: 150px; + } + .md\:w-\[300px\] { width: 300px; } @@ -1985,4 +2227,60 @@ video { width: -moz-fit-content; width: fit-content; } +} + +@media (min-width: 1110px) { + .lg\:block { + display: block; + } + + .lg\:grid { + display: grid; + } + + .lg\:hidden { + display: none; + } + + .lg\:w-\[75\%\] { + width: 75%; + } +} + +@media (min-width: 1200px) { + .xlg1\:fixed { + position: fixed; + } + + .xlg1\:w-\[300px\] { + width: 300px; + } +} + +@media (min-width: 1300px) { + .xlg\:flex { + display: flex; + } + + .xlg\:hidden { + display: none; + } + + .xlg\:grid-cols-6 { + grid-template-columns: repeat(6, minmax(0, 1fr)); + } +} + +@media (min-width: 1350px) { + .xxlg1\:flex { + display: flex; + } + + .xxlg1\:hidden { + display: none; + } + + .xxlg1\:grid-cols-3 { + grid-template-columns: repeat(3, minmax(0, 1fr)); + } } \ No newline at end of file diff --git a/osinaweb/static/images/usersactivity.png b/osinaweb/static/images/usersactivity.png new file mode 100644 index 00000000..ef902c11 Binary files /dev/null and b/osinaweb/static/images/usersactivity.png differ diff --git a/osinaweb/static/js/draggable-slider.js b/osinaweb/static/js/draggable-slider.js new file mode 100644 index 00000000..0f98dfef --- /dev/null +++ b/osinaweb/static/js/draggable-slider.js @@ -0,0 +1,22 @@ +var swiper = new Swiper('.swiper-container', { + scrollbar: { + el: '.swiper-scrollbar', + hide: false, + draggable: true, + }, + loop: false, + slidesPerView: 'auto', + initialSlide: 0 +}); + +// FOR THE BUTTONS +var swiperRightButton = document.getElementById('sliderRight'); +var swiperLeftButton = document.getElementById('sliderLeft'); + +swiperRightButton.addEventListener('click', function() { + swiper.slideNext(); +}); + +swiperLeftButton.addEventListener('click', function() { + swiper.slidePrev(); +}); diff --git a/osinaweb/static/js/fetch-epic-tasks.js b/osinaweb/static/js/fetch-epic-tasks.js new file mode 100644 index 00000000..26b4514b --- /dev/null +++ b/osinaweb/static/js/fetch-epic-tasks.js @@ -0,0 +1,46 @@ + +$(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); + } + }); + + $('#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'); + } + }); +}); \ No newline at end of file diff --git a/osinaweb/static/js/pop-modals.js b/osinaweb/static/js/pop-modals.js index e1cd5cd8..eae5993a 100644 --- a/osinaweb/static/js/pop-modals.js +++ b/osinaweb/static/js/pop-modals.js @@ -59,6 +59,10 @@ document.addEventListener("DOMContentLoaded", function () { addButtonClickListener("addTagButton", "fit-content", "160px"); addButtonClickListener("addBusinessButton", "550px", "500px"); addButtonClickListener("addStaffPositionButton", "fit-content", "160px"); + addButtonClickListener("usersActivityIcon", "500px", "600px"); + addButtonClickListener("addStatusButtonMobile", "500px", "80px"); + + const closeButton = document.getElementById("closeModalButton"); closeButton.addEventListener("click", () => { diff --git a/osinaweb/static/js/show-notes.js b/osinaweb/static/js/show-notes.js index 57501399..237f3393 100644 --- a/osinaweb/static/js/show-notes.js +++ b/osinaweb/static/js/show-notes.js @@ -2,11 +2,10 @@ const showNotesButton = document.getElementById("showNotesButton"); const notesContainer = document.getElementById("notesContainer"); showNotesButton.addEventListener("click", () => { - if (notesContainer.style.display === "none" || notesContainer.style.display === "") { - notesContainer.style.display = "flex"; - showNotesButton.textContent = "Hide Notes"; // Change the button text - } else { - notesContainer.style.display = "none"; - showNotesButton.textContent = "Show Notes"; // Change the button text - } -}); \ No newline at end of file + // Toggle the 'hidden' class on notesContainer + notesContainer.classList.toggle("hidden"); + + // Update the button text based on the container's visibility + const isHidden = notesContainer.classList.contains("hidden"); + showNotesButton.textContent = isHidden ? "Show Notes" : "Hide Notes"; +}); diff --git a/osinaweb/static/js/side-bar.js b/osinaweb/static/js/side-bar.js index c1fc7cee..f2dc4138 100644 --- a/osinaweb/static/js/side-bar.js +++ b/osinaweb/static/js/side-bar.js @@ -1,13 +1,16 @@ -//TO OPEN AND CLOSE THE SIDE BAR + ADDING ANIMATION TO THE BURGER MENU BUTTON document.addEventListener('DOMContentLoaded', function () { - // This code will run when the DOM is fully loaded const fixedSideHeader = document.getElementById('fixedSideHeader'); const scrollPart = document.getElementById('scrollPart'); const burgerMenuButton = document.getElementById('burgerMenuButton'); const burgerMenuLines = document.querySelectorAll('.burgerMenuLine'); + const closeMenuButton = document.getElementById('closeMenuButton'); + const closeMenuLines = document.querySelectorAll('.closeMenuLine'); function toggleSideHeader() { - if (fixedSideHeader.style.display === 'none') { + const computedStyle = getComputedStyle(fixedSideHeader); + const isHidden = computedStyle.display === 'none'; + + if (isHidden) { fixedSideHeader.style.display = 'block'; burgerMenuButton.classList.add('flex-col'); @@ -17,7 +20,6 @@ document.addEventListener('DOMContentLoaded', function () { line.classList.remove('expanded'); }); - // scrollPart.classList.add('duration-1000'); scrollPart.classList.remove('w-full'); scrollPart.classList.add('flex-1'); scrollPart.classList.add('ml-[300px]'); @@ -31,7 +33,39 @@ document.addEventListener('DOMContentLoaded', function () { line.classList.add('expanded'); }); - // scrollPart.classList.add('duration-1000'); + scrollPart.classList.remove('flex-1'); + scrollPart.classList.remove('ml-[300px]'); + scrollPart.classList.add('w-full'); + } + } + + function toggleCloseMenu() { + const computedStyle = getComputedStyle(fixedSideHeader); + const isHidden = computedStyle.display === 'none'; + + if (isHidden) { + fixedSideHeader.style.display = 'block'; + + closeMenuButton.classList.add('flex-col'); + closeMenuButton.classList.remove('flex-row'); + + closeMenuLines.forEach((line) => { + line.classList.add('expanded'); + }); + + scrollPart.classList.remove('w-full'); + scrollPart.classList.add('flex-1'); + scrollPart.classList.add('ml-[300px]'); + } else { + fixedSideHeader.style.display = 'none'; + + closeMenuButton.classList.remove('flex-col'); + closeMenuButton.classList.add('flex-row'); + + closeMenuLines.forEach((line) => { + line.classList.remove('expanded'); + }); + scrollPart.classList.remove('flex-1'); scrollPart.classList.remove('ml-[300px]'); scrollPart.classList.add('w-full'); @@ -39,9 +73,11 @@ document.addEventListener('DOMContentLoaded', function () { } burgerMenuButton.addEventListener('click', toggleSideHeader); + closeMenuButton.addEventListener('click', toggleCloseMenu); }); + // SCRIPT FOR THE SIDEBAR MENU ITEMS const menuContainers = document.querySelectorAll('.menu-container'); diff --git a/osinaweb/templates/details_pages/project-details.html b/osinaweb/templates/details_pages/project-details.html index 5a65ced2..7931dff6 100644 --- a/osinaweb/templates/details_pages/project-details.html +++ b/osinaweb/templates/details_pages/project-details.html @@ -1,6 +1,7 @@ {% extends "main.html" %} {%load static%} {% block content %} + +
@@ -321,16 +323,14 @@
-
- -
+
- - -
- + +
- +
@@ -529,7 +382,7 @@

USERS ACTIVITY

- {% include 'recent-activities.html' %} + {% include 'recent-activities.html' %}
@@ -558,6 +411,9 @@ + + + {% endblock content %} \ No newline at end of file diff --git a/osinaweb/templates/edit_pages/edit-staff.html b/osinaweb/templates/edit_pages/edit-staff.html index e7c32907..439daff3 100644 --- a/osinaweb/templates/edit_pages/edit-staff.html +++ b/osinaweb/templates/edit_pages/edit-staff.html @@ -106,24 +106,30 @@ {% endfor %} - + {% if staff.active %}
- +

Active

-
- + {% else %} +
+ +

Active

+
+ {% endif %} + + {% if staff.intern %}
- +

Intern

-
+ {% else %} +
+ +

Intern

+
+ {% endif %} - - - - -
diff --git a/osinaweb/templates/epic-fetched-tasks.html b/osinaweb/templates/epic-fetched-tasks.html new file mode 100644 index 00000000..4cad0d69 --- /dev/null +++ b/osinaweb/templates/epic-fetched-tasks.html @@ -0,0 +1,156 @@ +{% load static %} + + +{% for task in related_tasks %} +
+
+ +
+
+

{{task.name}}

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

{{task.status}}

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

{{task.status}}

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

{{task.status}}

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

{{task.formatted_start_date}}

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

{{task.formatted_start_date}}

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

{{task.formatted_start_date}}

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

{{task.formatted_end_date}}

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

{{task.formatted_end_date}}

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

{{task.formatted_end_date}}

+
+ {% endif %} +
+ +
+ + +
+ +
+ +
+
+

Project:

+

{{task.project.name}}

+
+ +
+

Epic:

+

{{task.epic.title}}

+
+ +
+

Assigned To:

+

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

+
+ +
+

Files:

+

+
+
+

Tags:

+

+
+ +
+

Extra:

+

{{task.extra}}

+
+
+
+ + +
+ + + + + + + + + + + + + + + + + + + + + +
+
+
+
+{% endfor %} \ No newline at end of file diff --git a/osinaweb/templates/index.html b/osinaweb/templates/index.html index 2f9b4a58..78dda50b 100644 --- a/osinaweb/templates/index.html +++ b/osinaweb/templates/index.html @@ -1,11 +1,19 @@ {% extends "main.html" %} {%load static%} {% block content %} + + +
+ Users +
+ + -
-
-
-
+
+
+
+

Recent Note:

{{recent_note.text}}

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

{{task.name}}

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

{{task.name}}

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

{{task.status}}

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

{{task.status}}

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

{{task.formatted_start_date}}

+
+

{{task.start_date}}

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

{{task.formatted_start_date}}

+
+

{{task.start_date}}

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

{{task.formatted_end_date}}

+
+

{{task.end_date}}

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

{{task.formatted_end_date}}

+
+

{{task.end_date}}

{% endif %}
-
- -
- -
- -
-
-

Project:

-

{{task.project.name}}

-
- -
-

Epic:

-

{{task.epic.title}}

-
+
+
+

Project:

+

{{task.project.name}}

+
-
-

Assigned To:

-

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

-
+
+

Epic:

+

{{task.epic.title}}

+
-
-

Files:

-

-
-
-

Tags:

-

-
+
+

Assigned To:

+

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

+
-
-

Extra:

-

{{task.extra}}

-
+
+

Extra:

+

{{task.extra}}

- -
+ +
+

Actions

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

USERS ACTIVITY

-
- - {% include 'recent-activities.html' %} - -
-
-
- -
- + + -
-
-

#

-
-
-

Client

-
-
-

Last Update

-
-
-

Last Reply

-
-
-

Subject

-
-
-

Department

-
-
-

Status

-
-
-

Action

-
-
- -
- -
-
-

1

-
-
-

Emilio

-
-
-

Mon 18/2/2023 - 12:30PM

-
-
-

Nataly

-
-
-

Add a "Subsidiary of MetreKarre Koncept" under the - footer logo

-
-
-

Development

-
-
-

Open

-
-
- - -
-
- -
-
-

4

-
-
-

Emile

-
-
-

Wed 18/2/2023 - 12:30PM

-
-
-

Salim

-
-
-

Fix the ad banners based on screen size

-
-
-

Development

-
-
-

Working on

-
-
- - -
-
+
+ + + + + + + + + + + + + + - -
-
-

5

-
-
-

Fouad

-
-
-

Tue 18/2/2023 - 12:30PM

-
-
-

Reine

-
-
-

Fix the alignments of the categories in the inner - category page

-
-
-

Development

-
-
-

Waiting for client reply

-
-
- - -
-
+ + + + + + + + + + + + + + + + + + + + + +
+ # + + Client + + Last Update + + Last Reply + + Subject + + Department + + Status + + Actions +
+

1

+
+

Asaad

+
+

Mon 18/2/2023 - 12:30PM

+
+

Nataly

+
+

Change the homepage colors

+
+

Development

+
+

Open

+
+
+ +
+ +
+
+ + +
+ +
+
+ +
+ +
+
+
+
+
--> - -
-
-

10

-
-
-

Emilio

-
-
-

Wed 18/2/2023 - 02:30PM

-
-
-

Nataly

-
-
-

Add a "Subsidiary of MetreKarre Koncept" under the - footer logo

-
-
-

Development

-
-
-

Open

-
-
- - -
-
+
+ + + + +
+
@@ -427,4 +552,7 @@ + + + {% endblock content %} \ No newline at end of file diff --git a/osinaweb/templates/listing_pages/tasks.html b/osinaweb/templates/listing_pages/tasks.html index db92b3df..d2232f37 100644 --- a/osinaweb/templates/listing_pages/tasks.html +++ b/osinaweb/templates/listing_pages/tasks.html @@ -91,7 +91,6 @@
- {% for task in my_tasks %} {% for task in my_tasks %}
@@ -141,7 +140,7 @@ {% if task.status == 'Closed' %} -
+

{{task.formatted_end_date}}

{% endif %} @@ -246,7 +245,6 @@
{% endfor %} - {% endfor %}
diff --git a/osinaweb/templates/main.html b/osinaweb/templates/main.html index 05e1c8f2..2b8360cb 100644 --- a/osinaweb/templates/main.html +++ b/osinaweb/templates/main.html @@ -11,6 +11,10 @@ + + + + @@ -222,7 +226,7 @@
+ class="w-full xlg1:w-[300px] h-fit bg-slate-800 flex flex-col items-center absolute xlg1:fixed justify-center gap-2 py-2 bottom-0 inset-x-0">

Powered By Ositcom

Copyrights © 2023 All Rights Reserved

@@ -230,18 +234,25 @@
+
-
+
-
+ -
+
+
+
+
+
+ +