|
|
82271ba85b
|
Add Field class to replace AbstractFilter::field
|
2020-08-17 22:24:50 +02:00 |
|
|
|
6afbf0cf77
|
Make Text component use htmlspecialchars, add Html component, update & fix uses
|
2020-08-17 18:59:45 +02:00 |
|
|
|
3f498335ac
|
Fix a few design and browser compatibility issues
|
2020-08-17 15:28:12 +02:00 |
|
|
|
2677a1321b
|
Add milestone delete page
|
2020-08-17 11:26:38 +02:00 |
|
|
|
2bd92c991d
|
Allow setting table filters from code
|
2020-08-17 10:51:52 +02:00 |
|
|
|
5b42253c81
|
Add milestone edit page & tweak milestone list
|
2020-08-16 23:06:45 +02:00 |
|
|
|
8b131a889c
|
Reuse LoadIssueId handler for generic numeric IDs
|
2020-08-16 21:03:38 +02:00 |
|
|
|
c04887170a
|
Split FieldOneOf into a nullable and non-nullable version & use correct ones in existing code
|
2020-08-16 17:36:44 +02:00 |
|
|
|
caa111fd59
|
Add per-tracker milestone ID to avoid leaking global IDs
|
2020-08-16 17:14:04 +02:00 |
|
|
|
c381c594fa
|
Fix or suppress several 'unused' IDE inspections
|
2020-08-16 11:33:46 +02:00 |
|
|
|
4f1680677b
|
Fix doubled htmlspecialchars in FormComponent fill method calls
|
2020-08-16 11:11:04 +02:00 |
|
|
|
0222574f74
|
Add special tracker owner role
|
2020-08-16 09:15:33 +02:00 |
|
|
|
617c00f082
|
Add transaction handling to update migration script
|
2020-08-16 09:13:32 +02:00 |
|
|
|
562c518a66
|
Add 'special' role flag
|
2020-08-16 09:11:38 +02:00 |
|
|
|
bf61835a6f
|
Add getLastInsertId utility function
|
2020-08-16 08:28:26 +02:00 |
|
|
|
eb668a0279
|
Refactor AbstractFilter to use IWhereCondition instead of multiple overrides & cleanup
|
2020-08-15 21:12:42 +02:00 |
|
|
|
3af33f180c
|
Refactor Request to include a convenience getAction method & use it
|
2020-08-15 20:26:16 +02:00 |
|
|
|
17ba93a623
|
Make tracker deletion a separate page with additional checks
|
2020-08-15 15:50:49 +02:00 |
|
|
|
f1cead5265
|
Fix cookie path & login return path to properly handle base path folders
|
2020-08-14 17:35:20 +02:00 |
|
|
|
43148e91cc
|
Sanitize login return url & add login requirement to certain tracker pages
|
2020-08-14 14:39:28 +02:00 |
|
|
|
f0704fd7d4
|
Allow FormComponents to have duplicate names without duplicate IDs
|
2020-08-12 21:04:09 +02:00 |
|
|
|
400071a419
|
Fix broken reset button on table filters
|
2020-08-12 19:10:12 +02:00 |
|
|
|
4260d2ae50
|
Ensure calling optional FormSelect with null value resets previous value
|
2020-08-12 17:15:41 +02:00 |
|
|
|
2c03cb4db0
|
Ensure FormNumberField initial value is within range & workaround step validation
|
2020-08-12 17:06:46 +02:00 |
|
|
|
3b6c687b93
|
Add 404 favicon route
|
2020-08-12 16:46:09 +02:00 |
|
|
|
da78cbca0b
|
Work on issue list page (show ID & last update w/ sorting), tweak collapsed column layout
|
2020-08-12 15:50:49 +02:00 |
|
|
|
35b58d958f
|
Fix broken default table sorting rules
|
2020-08-12 15:24:07 +02:00 |
|
|
|
0b2541bfbe
|
Add filters for trackers, users, issues, and tracker members
|
2020-08-12 15:12:14 +02:00 |
|
|
|
f1f239b68f
|
Implement SQL filtering & remove old code
|
2020-08-12 14:48:34 +02:00 |
|
|
|
62c1fdd39d
|
Remove table name parameter from AbstractFilter completely
|
2020-08-12 00:08:35 +02:00 |
|
|
|
7959c170d7
|
Move Filtering, Sorting, and Pagination classes
|
2020-08-12 00:08:35 +02:00 |
|
|
|
b6eb12cb45
|
Implement a filtering system w/ integration into table component (no SQL yet)
|
2020-08-12 00:08:35 +02:00 |
|
|
|
d239064235
|
Change sorting URLs to simplify code
|
2020-08-11 19:02:45 +02:00 |
|
|
|
afe1b7d25a
|
Cleanup code (formatting, missing 'final' modifiers)
|
2020-08-11 19:02:45 +02:00 |
|
|
|
a40e1002bf
|
Add multiselect form component (dropdown w/ checkboxes)
|
2020-08-11 19:02:45 +02:00 |
|
|
|
1a2ea4ae9a
|
Introduce common interface for AbstractIssueTag and IssueType
|
2020-08-11 12:05:42 +02:00 |
|
|
|
8c43d40ccb
|
Change some string functions to use mbstring
|
2020-08-10 22:51:42 +02:00 |
|
|
|
fb35d3cc13
|
Implement sorting in all tables & tweak default sorting rules
|
2020-08-10 22:32:41 +02:00 |
|
|
|
f10689fac9
|
Remove AbstractFilter table name parameter from ORDER BY clauses
|
2020-08-10 22:32:41 +02:00 |
|
|
|
7adc5208ad
|
Refactor AbstractFilter setup
|
2020-08-10 21:35:21 +02:00 |
|
|
|
e6338a2ae2
|
Implement a sorting system w/ integration into table component
|
2020-08-10 21:35:04 +02:00 |
|
|
|
03a1654a30
|
Add missing length validation to several fields
|
2020-08-10 16:26:10 +02:00 |
|
|
|
441deec263
|
Add account page with appearance settings
|
2020-08-10 16:21:00 +02:00 |
|
|
|
96e68a01b8
|
Allow changing position of form messages & update existing forms
|
2020-08-10 16:16:25 +02:00 |
|
|
|
0671789417
|
Move pagination elements per page property to a cookie
|
2020-08-10 15:05:49 +02:00 |
|
|
|
dcaaa09224
|
Implement client-side table layout fix to enable cell ellipsis
|
2020-08-10 14:28:56 +02:00 |
|
|
|
d8ad14ca08
|
Add missing column width % definitions
|
2020-08-10 14:25:38 +02:00 |
|
|
|
3681228a5f
|
Add resource versioning system
|
2020-08-10 11:35:43 +02:00 |
|
|
|
ef537673d2
|
Work on design (icons, buttons, milestone widget, accessibility)
|
2020-08-10 11:27:19 +02:00 |
|
|
|
3226d4299b
|
Finish CSRF protection (adding Origin header check alongside existing SameSite=Lax login token cookie)
|
2020-08-10 00:22:43 +02:00 |
|