2
0
mirror of https://github.com/inventree/InvenTree.git synced 2026-05-13 21:17:33 +00:00

[UI] Adjust week start date (#11934)

* Adjust week start date

Co-authored-by: Copilot <copilot@github.com>

* Change to global setting

---------

Co-authored-by: Copilot <copilot@github.com>
This commit is contained in:
Oliver
2026-05-13 17:32:59 +10:00
committed by GitHub
parent fc2cd3bea1
commit d0acbf1191
4 changed files with 74 additions and 28 deletions
+12 -1
View File
@@ -32,11 +32,22 @@ Configuration of basic server settings:
{{ globalsetting("INVENTREE_RESTRICT_ABOUT") }} {{ globalsetting("INVENTREE_RESTRICT_ABOUT") }}
{{ globalsetting("DISPLAY_FULL_NAMES") }} {{ globalsetting("DISPLAY_FULL_NAMES") }}
{{ globalsetting("DISPLAY_PROFILE_INFO") }} {{ globalsetting("DISPLAY_PROFILE_INFO") }}
{{ globalsetting("INVENTREE_UPDATE_CHECK_INTERVAL") }} {{ globalsetting("WEEK_STARTS_ON") }}
Configuration of image download settings:
| Name | Description | Default | Units |
| ---- | ----------- | ------- | ----- |
{{ globalsetting("INVENTREE_DOWNLOAD_FROM_URL") }} {{ globalsetting("INVENTREE_DOWNLOAD_FROM_URL") }}
{{ globalsetting("INVENTREE_DOWNLOAD_IMAGE_MAX_SIZE") }} {{ globalsetting("INVENTREE_DOWNLOAD_IMAGE_MAX_SIZE") }}
{{ globalsetting("INVENTREE_DOWNLOAD_FROM_URL_USER_AGENT") }} {{ globalsetting("INVENTREE_DOWNLOAD_FROM_URL_USER_AGENT") }}
{{ globalsetting("INVENTREE_STRICT_URLS") }} {{ globalsetting("INVENTREE_STRICT_URLS") }}
Configuration of various scheduled tasks:
| Name | Description | Default | Units |
| ---- | ----------- | ------- | ----- |
{{ globalsetting("INVENTREE_UPDATE_CHECK_INTERVAL") }}
{{ globalsetting("INVENTREE_BACKUP_ENABLE") }} {{ globalsetting("INVENTREE_BACKUP_ENABLE") }}
{{ globalsetting("INVENTREE_BACKUP_DAYS") }} {{ globalsetting("INVENTREE_BACKUP_DAYS") }}
{{ globalsetting("INVENTREE_DELETE_TASKS_DAYS") }} {{ globalsetting("INVENTREE_DELETE_TASKS_DAYS") }}
@@ -1210,6 +1210,20 @@ SYSTEM_SETTINGS: dict[str, InvenTreeSettingsKeyType] = {
'default': True, 'default': True,
'validator': bool, 'validator': bool,
}, },
'WEEK_STARTS_ON': {
'name': _('Week Starts On'),
'description': _('Starting day of the week, for display in calendar views'),
'default': '1',
'choices': [
('0', _('Sunday')),
('1', _('Monday')),
('2', _('Tuesday')),
('3', _('Wednesday')),
('4', _('Thursday')),
('5', _('Friday')),
('6', _('Saturday')),
],
},
'TEST_STATION_DATA': { 'TEST_STATION_DATA': {
'name': _('Enable Test Station Data'), 'name': _('Enable Test Station Data'),
'description': _('Enable test station data collection for test results'), 'description': _('Enable test station data collection for test results'),
@@ -37,6 +37,7 @@ import {
} from '../../contexts/LanguageContext'; } from '../../contexts/LanguageContext';
import type { CalendarState } from '../../hooks/UseCalendar'; import type { CalendarState } from '../../hooks/UseCalendar';
import { useLocalState } from '../../states/LocalState'; import { useLocalState } from '../../states/LocalState';
import { useGlobalSettingsState } from '../../states/SettingsStates';
import { FilterSelectDrawer } from '../../tables/FilterSelectDrawer'; import { FilterSelectDrawer } from '../../tables/FilterSelectDrawer';
export interface InvenTreeCalendarProps extends CalendarOptions { export interface InvenTreeCalendarProps extends CalendarOptions {
@@ -57,6 +58,8 @@ export default function Calendar({
state, state,
...calendarProps ...calendarProps
}: Readonly<InvenTreeCalendarProps>) { }: Readonly<InvenTreeCalendarProps>) {
const globalSettings = useGlobalSettingsState();
const [monthSelectOpened, setMonthSelectOpened] = useState<boolean>(false); const [monthSelectOpened, setMonthSelectOpened] = useState<boolean>(false);
const [filtersVisible, setFiltersVisible] = useState<boolean>(false); const [filtersVisible, setFiltersVisible] = useState<boolean>(false);
@@ -206,6 +209,10 @@ export default function Calendar({
initialView='dayGridMonth' initialView='dayGridMonth'
locales={allLocales} locales={allLocales}
locale={calendarLocale} locale={calendarLocale}
firstDay={Number.parseInt(
globalSettings.getSetting('WEEK_STARTS_ON') ?? '1',
10
)}
headerToolbar={false} headerToolbar={false}
footerToolbar={false} footerToolbar={false}
{...calendarProps} {...calendarProps}
@@ -44,33 +44,47 @@ export default function SystemSettings() {
label: t`Server`, label: t`Server`,
icon: <IconServerCog />, icon: <IconServerCog />,
content: ( content: (
<GlobalSettingList <>
keys={[ <GlobalSettingList
'INVENTREE_BASE_URL', heading={t`Server Settings`}
'INVENTREE_COMPANY_NAME', keys={[
'INVENTREE_INSTANCE', 'INVENTREE_BASE_URL',
'INVENTREE_INSTANCE_TITLE', 'INVENTREE_COMPANY_NAME',
'INVENTREE_INSTANCE_ID', 'INVENTREE_INSTANCE',
'INVENTREE_ANNOUNCE_ID', 'INVENTREE_INSTANCE_TITLE',
'INVENTREE_SHOW_SUPERUSER_BANNER', 'INVENTREE_INSTANCE_ID',
'INVENTREE_SHOW_ADMIN_BANNER', 'INVENTREE_ANNOUNCE_ID',
'INVENTREE_RESTRICT_ABOUT', 'INVENTREE_SHOW_SUPERUSER_BANNER',
'DISPLAY_FULL_NAMES', 'INVENTREE_SHOW_ADMIN_BANNER',
'DISPLAY_PROFILE_INFO', 'INVENTREE_RESTRICT_ABOUT',
'INVENTREE_UPDATE_CHECK_INTERVAL', 'DISPLAY_FULL_NAMES',
'INVENTREE_DOWNLOAD_FROM_URL', 'DISPLAY_PROFILE_INFO',
'INVENTREE_DOWNLOAD_IMAGE_MAX_SIZE', 'WEEK_STARTS_ON'
'INVENTREE_DOWNLOAD_FROM_URL_USER_AGENT', ]}
'INVENTREE_STRICT_URLS', />
'INVENTREE_BACKUP_ENABLE', <GlobalSettingList
'INVENTREE_BACKUP_DAYS', heading={t`Image Download Settings`}
'INVENTREE_DELETE_TASKS_DAYS', keys={[
'INVENTREE_DELETE_ERRORS_DAYS', 'INVENTREE_DOWNLOAD_FROM_URL',
'INVENTREE_DELETE_NOTIFICATIONS_DAYS', 'INVENTREE_DOWNLOAD_IMAGE_MAX_SIZE',
'INVENTREE_DELETE_EMAIL_DAYS', 'INVENTREE_DOWNLOAD_FROM_URL_USER_AGENT',
'INVENTREE_PROTECT_EMAIL_LOG' 'INVENTREE_STRICT_URLS'
]} ]}
/> />
<GlobalSettingList
heading={t`Scheduled Tasks`}
keys={[
'INVENTREE_UPDATE_CHECK_INTERVAL',
'INVENTREE_BACKUP_ENABLE',
'INVENTREE_BACKUP_DAYS',
'INVENTREE_DELETE_TASKS_DAYS',
'INVENTREE_DELETE_ERRORS_DAYS',
'INVENTREE_DELETE_NOTIFICATIONS_DAYS',
'INVENTREE_DELETE_EMAIL_DAYS',
'INVENTREE_PROTECT_EMAIL_LOG'
]}
/>
</>
) )
}, },
{ {