This commit is contained in:
2026-02-12 17:04:03 -05:00
parent 6c67e23221
commit a6aa36972a
14 changed files with 62 additions and 19 deletions

BIN
.DS_Store vendored

Binary file not shown.

BIN
app/.DS_Store vendored

Binary file not shown.

View File

@@ -1,16 +1,16 @@
{
"files": {
"main.css": "/static/css/main.3cda7e3a.css",
"main.js": "/static/js/main.ed5fc57f.js",
"main.css": "/static/css/main.c45089dc.css",
"main.js": "/static/js/main.9ae23a45.js",
"static/js/787.c4e7f8f9.chunk.js": "/static/js/787.c4e7f8f9.chunk.js",
"static/media/landing.png": "/static/media/landing.d4c6072db7a67dff6a78.png",
"index.html": "/index.html",
"main.3cda7e3a.css.map": "/static/css/main.3cda7e3a.css.map",
"main.ed5fc57f.js.map": "/static/js/main.ed5fc57f.js.map",
"main.c45089dc.css.map": "/static/css/main.c45089dc.css.map",
"main.9ae23a45.js.map": "/static/js/main.9ae23a45.js.map",
"787.c4e7f8f9.chunk.js.map": "/static/js/787.c4e7f8f9.chunk.js.map"
},
"entrypoints": [
"static/css/main.3cda7e3a.css",
"static/js/main.ed5fc57f.js"
"static/css/main.c45089dc.css",
"static/js/main.9ae23a45.js"
]
}

View File

@@ -1 +1 @@
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="Web site created using create-react-app"/><link rel="apple-touch-icon" href="/logo192.png"/><script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css"><link rel="manifest" href="/manifest.json"/><title>Worldshine Transportation</title><script defer="defer" src="/static/js/main.ed5fc57f.js"></script><link href="/static/css/main.3cda7e3a.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="/favicon.ico"/><meta name="viewport" content="width=device-width,initial-scale=1"/><meta name="theme-color" content="#000000"/><meta name="description" content="Web site created using create-react-app"/><link rel="apple-touch-icon" href="/logo192.png"/><script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css"><link rel="manifest" href="/manifest.json"/><title>Worldshine Transportation</title><script defer="defer" src="/static/js/main.9ae23a45.js"></script><link href="/static/css/main.c45089dc.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

BIN
client/.DS_Store vendored

Binary file not shown.

View File

@@ -3,13 +3,41 @@ body {
}
.btn-primary {
background-color: #0066B1;
background-color: #0066B1 !important;
border-color: #0066B1 !important;
color: white;
height: 35px;
font-size: 13px;
white-space: nowrap;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active, .btn-primary.active,
.btn-primary:active:focus, .show > .btn-primary.dropdown-toggle {
background-color: #005294 !important;
border-color: #005294 !important;
}
.personnel-info-table th {
background-color: #0066B1 !important;
color: #fff !important;
}
.btn-outline-primary {
color: #0066B1 !important;
border-color: #0066B1 !important;
}
.btn-outline-primary:hover, .btn-outline-primary:active, .btn-outline-primary.active {
background-color: #0066B1 !important;
border-color: #0066B1 !important;
color: #fff !important;
}
.page-item.active .page-link {
background-color: #0066B1 !important;
border-color: #0066B1 !important;
}
.btn-warning {
height: 35px;
font-size: 13px;
@@ -855,6 +883,10 @@ input[type="checkbox"] {
min-height: 150px;
}
.sx-react-calendar-wrapper {
--sx-color-primary: #0066B1 !important;
}
.sx__event-modal {
box-shadow: 1px -1px 20px rgba(0, 0, 0, 0.3);
border-radius: 8px;

View File

@@ -14,7 +14,7 @@ import { createEventsServicePlugin } from '@schedule-x/events-service';
import { createEventModalPlugin} from '@schedule-x/event-modal';
import { createEventRecurrencePlugin } from "@schedule-x/event-recurrence";
import '@schedule-x/theme-default/dist/calendar.css';
import { Archive, PencilSquare, Filter } from "react-bootstrap-icons";
import { Archive, PencilSquare, Filter, Plus } from "react-bootstrap-icons";
import DatePicker from "react-datepicker";
import { vehicleSlice } from "../../store";
import Select from 'react-select';
@@ -29,6 +29,7 @@ const EventsCalendar = () => {
const [allEvents, setAllEvents] = useState([]);
const [targetedEventType, setTargetedEventType] = useState('medical');
const [currentTab, setCurrentTab] = useState('medicalCalendar');
const currentTabRef = useRef('medicalCalendar');
const [customers, setCustomers] = useState([]);
const [resources, setResources] = useState([]);
const [fromDate, setFromDate] = useState(new Date(new Date().getFullYear(), new Date().getMonth(), 1));
@@ -243,12 +244,12 @@ const EventsCalendar = () => {
setToDate(new Date(endDate.getFullYear(), endDate.getMonth() + 1, 0));
},
onClickDate(date) {
if (currentTab === 'medicalCalendar') return;
if (currentTabRef.current === 'medicalCalendar') return;
// Parse as local date to avoid UTC timezone offset shifting the day
const [y, m, d] = date.split('-').map(Number);
const localDate = new Date(y, m - 1, d);
// Default to 10:00 AM for Activities tab
if (currentTab === 'activitiesCalendar') {
if (currentTabRef.current === 'activitiesCalendar') {
localDate.setHours(10, 0, 0, 0);
}
setNewEventStartDateTime(localDate);
@@ -256,7 +257,7 @@ const EventsCalendar = () => {
setShowCreationModal(true);
},
onClickDateTime(dateTime) {
if (currentTab === 'medicalCalendar') return;
if (currentTabRef.current === 'medicalCalendar') return;
setNewEventStartDateTime(new Date(dateTime.replace(' ', 'T')));
setNewEventEndDateTime(new Date(dateTime.replace(' ', 'T')));
setShowCreationModal(true);
@@ -799,6 +800,7 @@ const EventsCalendar = () => {
const goToTab = (value) => {
setTargetedEventType(eventTypeMap[value]);
setCurrentTab(value);
currentTabRef.current = value;
setSelectedColorFilters([]);
// Dismiss any open calendar event tile popup via plugin API
try {
@@ -1299,6 +1301,15 @@ const getReminderTitleLabel = (value) => {
</Tabs>
{ calendarView}
<div className="list-func-panel">
{currentTab !== 'medicalCalendar' && (
<button className="btn btn-primary me-2" onClick={() => {
setNewEventStartDateTime(new Date());
setNewEventEndDateTime(new Date());
setShowCreationModal(true);
}}>
<Plus size={18} className="me-1" />Add Event
</button>
)}
<Dropdown
key={'event-calendar-filter'}
id="event-calendar-filter"