Commit Graph

1490 Commits

Author SHA1 Message Date
Thomas Rupprecht 2ff953ef89 fix php docs types 2023-02-07 15:37:20 +01:00
Igor Scheller 7eccf2c535 Reimplemented shifts json export 2023-02-02 20:01:31 +01:00
Igor Scheller b0b4cb54ec Reimplemented shifts ical export 2023-02-02 20:01:31 +01:00
Igor Scheller 3d0d5067fd Reimplemented news Atom feed, added RSS feed 2023-02-02 20:01:31 +01:00
Igor Scheller a9cd00c37a Authenticator: Improve auth methods handling, esp. for api endpoints 2023-02-02 20:01:31 +01:00
Xu ccdf1aa8d5 add config option for other goodies 2023-01-31 01:51:31 +01:00
Igor Scheller 3ca39dc8e1 Fixed shifts bulk deletion 2023-01-25 01:00:42 +01:00
Xu b99e6ed8c1 add hint on how many shifts to be created 2023-01-24 21:33:13 +01:00
Igor Scheller bfa0d91704 Fix empty checks 2023-01-24 20:49:31 +01:00
Thomas Rupprecht 733586dfd5 replace sticky-headers javascript impl with css 2023-01-24 20:13:13 +01:00
Thomas Rupprecht e844c98871
Convert class const's to enum's (#1050)
* convert `Migrate::(UP|DOWN)` class const to `MigrateDirection` enum
* convert `Handler::(ENV_PRODUCTION|ENV_DEVELOPMENT)` class const to `Environment` enum
* convert `ShiftSignupState::(FREE|...|NOT_ARRIVED)` class const to `ShiftSignupStatus::(FREE|...|NOT_ARRIVED)` enum
2023-01-24 19:23:57 +01:00
Thomas Rupprecht 5a2b8f7ff9
Improve navbar 2023-01-22 19:16:33 +01:00
Igor Scheller 96f703bf22
Migrate NeededAngelType model 2023-01-22 18:43:09 +01:00
Igor Scheller 89dc85c3d5
Add ShiftEntry model 2023-01-18 13:02:11 +01:00
xuwhite 89f9b423b1
room view & angeltype view: show all shifts (#1067) 2023-01-17 20:01:29 +01:00
Thomas Rupprecht d18185f49e
Improve alerts and conversation (#1062)
* add role="alert"
* improve conversation styling
* replace alert with card for conversation
2023-01-17 15:05:47 +01:00
Igor Scheller 2be8e565bf Refactored UUID generation: use pseudo unique named UUID for schedules 2023-01-06 14:16:41 +01:00
Igor Scheller 23424830e7 Removed unused reference 2023-01-03 22:42:50 +01:00
Igor Scheller 3115870ec4
Added Shift model 2023-01-03 22:19:03 +01:00
Thomas Rupprecht 30f50dab6d
Extract shifts filter JavaScript and improve HTML structure 2023-01-02 18:54:32 +01:00
Igor Scheller 26b5a6e1f0 Fix shifts edit page 2022-12-28 12:31:31 +01:00
Michael Weimann 59cfce0c76
Enable space after cast sniff and remove .git-blame-ignore-revs 2022-12-25 11:59:45 +01:00
Thomas Rupprecht 2bab370221
enable/disable all html-tags corresponding to a radio button checked state (#1046) 2022-12-23 18:31:26 +01:00
Johannes Rudolph b1b08afd23
Make user view columns dynamic by config 2022-12-23 04:46:32 +01:00
Johannes Rudolph 92e0b8be65
Hide dect, voucher and t-shirt options shown to users when disabled via config 2022-12-23 04:22:39 +01:00
Johannes Rudolph 737066414e
Fix i18n on User Edit Page 2022-12-23 03:20:10 +01:00
Thomas Rupprecht 3d88ae7916
convert `switch` to `match` 2022-12-22 00:08:54 +01:00
Thomas Rupprecht fdddd63aae
fix input radio id and default to multi on shift creation 2022-12-21 23:53:47 +01:00
Thomas Rupprecht f24d31b928
Improve countdown logic
use `Intl.RelativeTimeFormat` to support different l10n add week as possible duration
2022-12-21 14:18:21 +01:00
Igor Scheller 98a3187899
Use native types where possible + ctor prop promotion 💣 2022-12-21 12:46:40 +01:00
Igor Scheller d92733f658 Schedule: Make URLs klickable on overview and handle connection errors 2022-12-21 12:08:48 +01:00
Igor Scheller 700d841a87 Fix atom, ical and json exports 2022-12-21 11:42:55 +01:00
Michael Weimann 2ad4203dd3
Add useless comment phpcs sniff 2022-12-20 22:19:49 +01:00
Michael Weimann 61139e03c3
Use constructor property promotion
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2022-12-20 22:18:34 +01:00
Michael Weimann b004f865b4
Set native property types
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2022-12-15 20:13:50 +01:00
Igor Scheller 5b8805f884 Moved OAuth2 event helper and added tests 2022-12-13 22:46:16 +01:00
Igor Scheller 7f78f59840 Added UserAngelType model 2022-12-13 22:46:16 +01:00
Thomas Rupprecht 2d454ca8ae move js code for spinner into js file
now the code is needed only once for all spinners
2022-12-11 18:44:58 +01:00
Thomas Rupprecht f12f8a1b3b set autocomplete attribute for password inputs 2022-12-11 18:17:42 +01:00
Thomas Rupprecht ce0ac6f823
Use specific ID parameter names in routes (#1023) 2022-12-11 18:01:34 +01:00
Thomas Rupprecht 5bd922d109 code improvements
unify lowercase variant of form method post
remove duplicate class selector
improve comments
2022-12-11 10:21:47 +01:00
Michael Weimann 4c3dc1e081 Fix shift creation
Regression introduced by changing the angeltype count field IDs
2022-12-11 10:20:44 +01:00
Thomas Rupprecht 5604176675 fix mailto link 2022-12-11 10:14:07 +01:00
Thomas Rupprecht c906af1010 use int instead of float for spinner value 2022-12-10 17:25:04 +01:00
Thomas Rupprecht 59e623c938 add function parameter types for form_spinner 2022-12-10 17:25:04 +01:00
Thomas Rupprecht fbe52117ed improve spinner control
use input type `number` with `min` and `step`
use `.stepDown()` and `.stepUp()` to change value
hide browser controls
2022-12-10 17:25:04 +01:00
Thomas Rupprecht 3bcbca97ab improve spinner ids 2022-12-10 17:25:04 +01:00
Thomas Rupprecht 7a376399b8 use better and more icons 2022-12-10 17:22:11 +01:00
Igor Scheller 6686d58c06 Implemented AngelTypes model 2022-12-08 18:35:22 +01:00
frischler bdc62eaac3
Worklog Refactoring 2022-12-08 17:40:24 +01:00
Thomas Rupprecht 0e3d47f2e1
replace md5 with random_bytes and use 64 chars for api_key 2022-12-08 15:57:13 +01:00
Thomas Rupprecht 1d158da441 remove self closing tag 2022-12-08 15:43:34 +01:00
Thomas Rupprecht 3b8a275e1c remove unused `form_multi_checkboxes` function 2022-12-08 15:43:34 +01:00
Thomas Rupprecht e8ccbd7c5e style checkboxes with bootstrap classes 2022-12-08 15:43:34 +01:00
Thomas Rupprecht 0a1014496a fix tag nesting 2022-12-08 15:36:44 +01:00
Michael Weimann 282f4b45ac
Replace jQuery with VanillaJS 2022-12-02 17:07:12 +01:00
Thomas Rupprecht 65dca1cebd improve admin-shifts ui
on larger screens put start & end next to each other
size of the "needed angles" fit on more screen sizes
2022-12-02 14:49:14 +01:00
Thomas Rupprecht 6d5748f9f8
fix label to input link for `form_spinner`, `form_date` and `form_datetime` 2022-12-02 14:45:23 +01:00
Thomas Rupprecht 4ccceb271c style input radios with bootstrap classes 2022-12-02 14:19:45 +01:00
Thomas Rupprecht 37c7b876f3 fix select_array. needed for a correct format for select2
if `$data` is a `Collection` than the return format is `[{"key":["value"]}]` and not `[{"key":"value"}]`
2022-12-02 13:53:29 +01:00
Igor Scheller 992e708276 Replaced ShiftTypes with shift_types / ShiftType model 2022-11-27 14:17:02 +01:00
Igor Scheller ac162f4411 Removed referenced angeltype from shift type 2022-11-27 14:17:02 +01:00
Igor Scheller 354ec084eb Show driver's license button on user page when angeltype requires it 2022-11-27 12:14:14 +01:00
Thomas Rupprecht 23d7e8632b javascript improvements
use `const` instead of `var`/`let`
use `$(function () { ... })` instead of `$(document).ready(function () { ... })`
unify codestyle
2022-11-25 13:44:39 +01:00
Igor Scheller 99afe3f651
Permissions refactoring
* Migration: Added groups, privileges, user_groups, group_privileges, improved references
* Models: Added Group, Privilege and integrated it into User
* Replaced old permission handling with new models
2022-11-06 12:41:52 +01:00
frischler dba7bc29f9 Settings Modernization: Added mobile_show setting to /settings/profile page. 2022-11-01 16:55:23 +01:00
frischler 63f1c12429 Settings Modernization: Refactoring
Settings Modernization: Fixing Date issue

Settings Modernization: Reroute

Settings Modernization: Reroute settings to /settings/profile, Cleanup and Refactoring
2022-11-01 16:55:23 +01:00
Igor Scheller 96f4e1b3a8 Fix typo in config, default group on registration and edit comparison 2022-10-24 00:07:05 +02:00
Igor Scheller 4d9f4694ae Groups: Fix naming and update IDs 2022-10-22 17:49:20 +02:00
Michael Weimann 7049a08bcd
Replace moment-countdown with countdown function 2022-10-22 17:22:53 +02:00
Xu b860b37ba9 add option to hide angeltype at registration 2022-10-21 22:30:17 +02:00
Igor Scheller 855d3535db Fixed formatting 2022-10-18 22:08:49 +02:00
Xu f9da096308 add option to show mobile number of user in users view 2022-10-18 22:06:08 +02:00
Xu 4d6da1894a added dect option for rooms 2022-10-18 21:22:37 +02:00
Michael Weimann 88c727bf8e
Manually migrate /includes code to be phpcs compliant 2022-10-18 19:30:43 +02:00
Michael Weimann f7d499b362
Include phpcs for /includes 2022-10-18 19:15:22 +02:00
Igor Scheller 7cd4befdfa Refactored shift entry deletion: Use event for notification and worklog creation 2022-10-14 16:27:51 +02:00
Igor Scheller 870a92efd5 Move NightShiftMultiplier calculation to Shifts helper 2022-10-14 16:27:51 +02:00
Igor Scheller f2c9e4a3d6 Change "delete" to "sign off" when removing user from shift 2022-10-01 19:53:44 +02:00
Michael Weimann c502694e59 Add direct link to the angeltyes page from user view 2022-08-14 00:13:35 +02:00
Michael Weimann d26965e95b Improve voucher texts 2022-07-23 21:44:02 +02:00
Igor Scheller e750436a82 Fix worklog input validation error and default to current day during buildup 2022-07-20 20:16:57 +02:00
Igor Scheller d7c148fa89 Allow more characters for room names 2022-07-20 19:14:56 +02:00
Igor Scheller a03472ebc1 Shifts overview: select current day during the event 2022-07-20 18:15:28 +02:00
Igor Scheller 58d9750d0c Vouchers page: Show force active state 2022-07-20 18:15:18 +02:00
Igor Scheller 1245d81ad8 Create shifts: Default to manually select angel types 2022-07-18 19:59:09 +02:00
Igor Scheller c99531decb Allow changing the username match pattern from the config 2022-07-18 16:15:22 +02:00
Michael Weimann 1277f8f96f Replace chart-js with backend rendering
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2022-07-11 23:30:41 +02:00
frischler 8380536055 Settings language handled in SettingsController 2022-06-30 14:05:46 +02:00
Igor Scheller 5e81b8d2af Cleanup: Simplification and removed dead code and duplicated/outdated declarations 2022-06-17 21:08:53 +02:00
Bot 3ebea2ae15 Replaced DB with Db 2022-06-17 20:57:52 +02:00
Xu 05e94bbfee add config option and permission for food voucher 2022-06-17 20:55:16 +02:00
Xu 53009c21a4 Message link in User view 2022-06-16 23:39:18 +02:00
frischler 3043a9512a Settings themes handled in SettingsController 2022-06-14 13:34:01 +02:00
Igor Scheller bb49b308fb Generate UUID as shifts transaction id and fixed translation 2022-06-12 17:02:19 +02:00
Igor Scheller 7c448e6064 Use locking for shift transacton id generation 2022-06-12 17:02:19 +02:00
Igor Scheller 96277dcfc4 Added transaction id to shifts for bulk deletion 2022-06-12 17:02:17 +02:00
Xu 9001907b74 added voucher angel group right 2022-06-12 16:14:22 +02:00
Igor Scheller 743a79ceea Replace model data access workaround with twigbridge patch 2022-06-10 12:45:24 +02:00
Igor Scheller 7acd34ba74 Added unread messages as global var 2022-06-06 16:12:47 +02:00
frischler 2c0d516578 Improved Messages UI and shrinking includes/user_messages.php 2022-06-06 16:12:47 +02:00
Igor Scheller 724894316a Add transaction around user creation to safeguard against partially created users 2022-05-29 12:29:34 +02:00
Xu 939f20709f fixed unanswered questions link and added links to design page alerts 2022-05-20 14:02:02 +02:00
Michael Weimann 6ea938460a Clean up styles 2022-04-29 15:16:23 +02:00
Michael Weimann c4b2fbda1a Remove date/time pickers 2022-04-19 23:33:44 +02:00
msquare dd6963a2bd closes #877: sequential numbers for arrived angels view 2022-03-20 18:43:08 +01:00
Igor Scheller d8076abc38 Make password enabled configurable via oauth settings 2022-03-20 18:29:51 +01:00
Igor Scheller b5ba5f6188 Fix sso disabled password inconsistencies 2022-03-20 18:29:51 +01:00
Fabian Freyer 63be666a67 Allow password-less registration
Introduce a configuration option that, when unset, causes registration
to not require setting a password. Users registered without a password
will not be able to login unless through SSO.
2022-03-20 18:29:51 +01:00
Igor Scheller b345bf4ea7 Fix metrics and notifications when sql_mode is only_full_group_by (since MySQL 5.7/8.0) 2022-03-20 15:32:44 +01:00
msquare fb573fd1d9 improve variable length shift creation 2022-03-20 14:39:33 +01:00
Igor Scheller 485df38786 SHow right count of angels in shift view for additional angeltypes 2022-01-01 17:43:45 +01:00
Igor Scheller 38043ee35f Fix list of additional angeltypes on shift view 2022-01-01 17:31:50 +01:00
Thies Mueller e2a99a5b1d removed the tshirt part 2021-12-30 20:37:08 +01:00
Igor Scheller 6a79aaeeaa Replaced swift mailer with symfony mailer 2021-12-29 22:28:12 +01:00
Igor Scheller f6c86285d9 Select current day on angeltype/room shifts list 2021-12-29 17:12:19 +01:00
Igor Scheller ea0a4777d8 Fix additional shift description formatting 2021-12-29 17:12:19 +01:00
Igor Scheller a129f18c2c Make confirmation optional when adding a user to an angeltype 2021-12-29 17:12:19 +01:00
Igor Scheller 02c69073f0 Add shift links to shift changed/assigned mails 2021-12-29 17:12:19 +01:00
Igor Scheller 676a2113b4 Added User\License model 2021-12-29 17:12:19 +01:00
Igor Scheller a79e1ebb5c Added email notification when added to angeltype 2021-12-29 17:12:19 +01:00
Igor Scheller 1e3bd9aaad Added email notification on angeltype confirmation 2021-12-29 17:12:19 +01:00
Igor Scheller 8d436d988a More PHP 8.1 fixes to be compatible 2021-12-29 11:00:02 +01:00
Igor Scheller 643c4c8da7 Upgraded composer packages, fixed class naming and return types 2021-12-29 11:00:02 +01:00
Lena Schneider 200ac26b24 Register page layout rework
As discussed with @MyIgel the whole register page is in dire need of gasoline and a lighter. I started to refactor it by rearranging the row & column grid (removed 2 nesting levels) and changed the order of the field to something with a little more sense. The page still needs to be moved to a proper view...
2021-12-28 16:00:23 +01:00
msquare f286373b21 theme improvements 2021-12-27 21:49:07 +01:00
msquare 8d405b8b7c fix bug when creating varialbe shits 2021-12-15 17:14:09 +01:00
Igor Scheller 0f280e68dc Another date validation fix for arrival/departure dates 2021-12-12 13:23:01 +01:00
Igor Scheller 8256b9d6bd Hide oauth from profile and settings page if not configured / should be hidden 2021-12-12 12:34:43 +01:00
Igor Scheller 2d45e04a90 Added option to allow sso account creation even if public registration is disabled 2021-12-12 12:34:43 +01:00
Igor Scheller 1ba4b57eac Added OAuth2 SSO login group mapping 2021-12-12 12:34:43 +01:00
Igor Scheller 38dda01330 Use RFC3339 strings to represent start and end times for shifts json start/stop, fixed ical timezone output 2021-12-09 20:14:07 +01:00
Igor Scheller 39f83ef082 Angeltype: Only show defined contact infos 2021-12-09 20:14:07 +01:00
Igor Scheller 6c288bceb5 Fixed maintenance page assets for subpaths and send 503 Service Unavailable 2021-12-09 20:14:07 +01:00
msquare bf1ea07eab shift edit: fix form info for description field 2021-12-05 11:57:02 +01:00
Igor Scheller dc0cf101b2 Moved gdpr goodie mail opt in to own configurable option
Co-authored-by: Michael Weimann <mail@michael-weimann.eu>
2021-12-04 11:58:06 +01:00
xuwhite 15d9abd280 changes for gdpr legal foo 2021-12-04 11:58:06 +01:00
--global ccc0889d00 email option updated 2021-12-04 11:58:06 +01:00
xuwhite a1f5454bf5
Optional description for shifts 2021-11-27 11:34:20 +01:00
Igor Scheller 56e0d3bcbd Disabled button on own shift sign out on shift view if not supporter or shift admin 2021-10-23 17:20:53 +02:00
Igor Scheller 2cfce86e25 Fixed formatting 2021-10-23 17:19:49 +02:00
Igor Scheller a68c8ae6d2 Fixes #824: Server error when no shifts configured and with 'user_shifts' as home site 2021-10-23 17:17:29 +02:00
Igor Scheller 657b44f9cf Redirect back from login after 403 (Not authorized) 2021-10-23 17:13:46 +02:00
Igor Scheller c2c1a4d281 Fixed admin free join query nesting 2021-10-23 17:11:59 +02:00
Igor Scheller 71d9077a03 Admin free: Only generate query on search 2021-10-23 17:11:59 +02:00
msquare 6fc3b62a74 small improvement on admin free translation 2021-10-23 17:11:43 +02:00
Igor Scheller 6d2b36a746 Fixed shifts filter to show partially occupied shifts as free and not occupied
As suggested by @pjdeltour in #829 (Shifts filter - not showing all filtered shifts)
2021-10-23 17:07:19 +02:00
msquare ca8f851ab1 user shirt edit: finetuning shirt edit view and logs 2021-10-23 17:04:19 +02:00
Igor Scheller 5c90a1ef37 Added shirt edit view 2021-10-23 17:04:19 +02:00
Tim Neumann 5667fc2326 Allow specifying the deadline for signup in terms of shift length
Allow finer control over the specification of the
time after shift start where signup is still allowed.

The new config field is multiplied by the shift duration,
and the result added to the start time to determine the
time when signup is closed.

The existing signup_post_minutes is just added to the time
calculated by this new feature.

The feature is useful when the signup should be allowed
not just a few minutes after shift start but for a larger part
of the shift (like for half of the shift).
With the previous option it would not make sense to allow a late signup
longer than the shortest shift of the event.

This is a follow-up to a50dd9cae0
2021-10-08 17:38:28 +02:00