Compare commits
17 Commits
896ffdc2a7
...
ec8f51ebb1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ec8f51ebb1 | ||
|
|
ec1168308c | ||
|
|
5a3c628583 | ||
|
|
a84f5d755e | ||
|
|
bef574b0b5 | ||
|
|
c4e2f153ff | ||
|
|
b562297e58 | ||
|
|
b182016b90 | ||
|
|
15137a50bf | ||
|
|
72bc6ff360 | ||
|
|
2721e2a037 | ||
|
|
68c52ae8b6 | ||
|
|
6add9399f8 | ||
|
|
c43f2ca1af | ||
|
|
6dd08cd528 | ||
|
|
4255f872ae | ||
|
|
c6f63d0641 |
@@ -319,6 +319,13 @@ export function TimeshiftSpreadsheet({ teamId, teamName }: TimeshiftSpreadsheetP
|
||||
}
|
||||
}
|
||||
|
||||
// Add top border to year row (row 3) from A3 to end of table (excluding last column)
|
||||
for (let col = 0; col < (data[0]?.length || 0) - 1; col++) {
|
||||
const colLetter = getExcelColumnName(col)
|
||||
const existingStyle = styles[`${colLetter}3`] || ""
|
||||
styles[`${colLetter}3`] = existingStyle + " border-top: 1px solid #000000;"
|
||||
}
|
||||
|
||||
// Style header rows
|
||||
for (let col = 1; col < (data[0]?.length || 0); col++) {
|
||||
const colLetter = getExcelColumnName(col)
|
||||
@@ -336,16 +343,19 @@ export function TimeshiftSpreadsheet({ teamId, teamName }: TimeshiftSpreadsheetP
|
||||
const colLetter = getExcelColumnName(col)
|
||||
const nextColLetter = getExcelColumnName(col + 1)
|
||||
|
||||
// Weekend day name row (row 2) - merged cells with conditional top border
|
||||
const hasBorder1 = colLetter !== 'BZ' && colLetter !== 'CA' ? " border-top: 1px solid #000000;" : ""
|
||||
const hasBorder2 = nextColLetter !== 'BZ' && nextColLetter !== 'CA' ? " border-top: 1px solid #000000;" : ""
|
||||
styles[`${colLetter}2`] = `background-color: #ffd966; height: 50px;${hasBorder1}` // Weekend day name with conditional border
|
||||
styles[`${nextColLetter}2`] = `background-color: #ffd966; height: 50px;${hasBorder2}`
|
||||
// Weekend day name row (row 2) - merged cells with conditional borders
|
||||
const hasBorders1 = colLetter !== 'BZ' && colLetter !== 'CA' ? " border-top: 1px solid #000000; border-left: 1px solid #000000;" : ""
|
||||
const hasBorders2 = nextColLetter !== 'BZ' && nextColLetter !== 'CA' ? " border-top: 1px solid #000000; border-left: 1px solid #000000;" : ""
|
||||
styles[`${colLetter}2`] = `background-color: #ffd966; height: 50px;${hasBorders1}` // Weekend day name with conditional borders
|
||||
styles[`${nextColLetter}2`] = `background-color: #ffd966; height: 50px;${hasBorders2}`
|
||||
|
||||
// Weekend date columns (rows 3, 4, 5 - year, month, day)
|
||||
for (let row = 3; row <= 5; row++) {
|
||||
styles[`${colLetter}${row}`] = "background-color: #ffd966;" // Weekend date values
|
||||
styles[`${nextColLetter}${row}`] = "background-color: #ffd966;" // Weekend date values
|
||||
// Preserve existing styles (like borders) and add weekend background
|
||||
const existingStyle1 = styles[`${colLetter}${row}`] || ""
|
||||
const existingStyle2 = styles[`${nextColLetter}${row}`] || ""
|
||||
styles[`${colLetter}${row}`] = existingStyle1 + " background-color: #ffd966;" // Weekend date values
|
||||
styles[`${nextColLetter}${row}`] = existingStyle2 + " background-color: #ffd966;" // Weekend date values
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -393,9 +403,7 @@ export function TimeshiftSpreadsheet({ teamId, teamName }: TimeshiftSpreadsheetP
|
||||
allowInsertColumn: false,
|
||||
allowDeleteRow: true,
|
||||
allowDeleteColumn: false,
|
||||
contextMenu: function(obj: any, x: number, y: number) {
|
||||
return [] // Empty context menu to avoid issues
|
||||
},
|
||||
contextMenu: false,
|
||||
tableOverflow: true,
|
||||
tableWidth: "100%",
|
||||
tableHeight: "500px",
|
||||
|
||||
@@ -256,3 +256,45 @@
|
||||
2025-07-31 04:24:51 +02:00: ✅ Restore point created
|
||||
2025-07-31 04:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 04:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 04:56:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 05:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 05:26:11 +02:00: ✅ Restore point created
|
||||
2025-07-31 05:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 05:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 05:56:09 +02:00: ✅ Restore point created
|
||||
2025-07-31 06:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 06:26:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 06:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 06:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 06:56:11 +02:00: ✅ Restore point created
|
||||
2025-07-31 07:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 07:26:12 +02:00: ✅ Restore point created
|
||||
2025-07-31 07:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 07:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 07:56:09 +02:00: ✅ Restore point created
|
||||
2025-07-31 08:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 08:26:09 +02:00: ✅ Restore point created
|
||||
2025-07-31 08:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 08:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 08:55:17 +02:00: ✅ Restore point created
|
||||
2025-07-31 09:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 09:26:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 09:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 09:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 09:56:11 +02:00: ✅ Restore point created
|
||||
2025-07-31 10:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 10:26:13 +02:00: ✅ Restore point created
|
||||
2025-07-31 10:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 10:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 10:56:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 11:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 11:26:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 11:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 11:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 11:56:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 12:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 12:26:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 12:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 12:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 12:56:13 +02:00: ✅ Restore point created
|
||||
2025-07-31 13:24:37 +02:00: 🔖 Creating restore point...
|
||||
|
||||
@@ -252,3 +252,45 @@
|
||||
2025-07-31 04:24:51 +02:00: ✅ Restore point created
|
||||
2025-07-31 04:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 04:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 04:56:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 05:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 05:26:11 +02:00: ✅ Restore point created
|
||||
2025-07-31 05:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 05:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 05:56:09 +02:00: ✅ Restore point created
|
||||
2025-07-31 06:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 06:26:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 06:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 06:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 06:56:11 +02:00: ✅ Restore point created
|
||||
2025-07-31 07:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 07:26:12 +02:00: ✅ Restore point created
|
||||
2025-07-31 07:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 07:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 07:56:09 +02:00: ✅ Restore point created
|
||||
2025-07-31 08:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 08:26:09 +02:00: ✅ Restore point created
|
||||
2025-07-31 08:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 08:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 08:55:17 +02:00: ✅ Restore point created
|
||||
2025-07-31 09:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 09:26:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 09:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 09:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 09:56:11 +02:00: ✅ Restore point created
|
||||
2025-07-31 10:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 10:26:13 +02:00: ✅ Restore point created
|
||||
2025-07-31 10:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 10:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 10:56:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 11:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 11:26:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 11:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 11:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 11:56:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 12:24:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 12:26:08 +02:00: ✅ Restore point created
|
||||
2025-07-31 12:54:37 +02:00: 🔄 Hourly reset: Commit counter reset to 0
|
||||
2025-07-31 12:54:37 +02:00: 🔖 Creating restore point...
|
||||
2025-07-31 12:56:13 +02:00: ✅ Restore point created
|
||||
2025-07-31 13:24:37 +02:00: 🔖 Creating restore point...
|
||||
|
||||
Reference in New Issue
Block a user