Michael Weimann
35a7d853ff
Migrate view to the NewsComments model
2019-11-12 21:58:50 +01:00
Igor Scheller
b878740f80
News: Bug fixes, cleanup, comments & formatting
...
Use more magically available methods and properties
Fixed atom feed and stats not using the new model
2019-11-10 22:10:11 +01:00
Michael Weimann
6534191d59
Migrate news to model class
2019-11-10 22:10:11 +01:00
msquare
416c49ae0b
fix #634 by also allowing only restricted angeltypes
2019-11-03 12:37:48 +01:00
msquare
2b27b45aba
remove legacy file guest start
2019-11-03 12:21:37 +01:00
msquare
613d258c87
fix #345 by adding a badge to shift view wich contains number of missing angels
2019-11-03 12:08:46 +01:00
msquare
dc3de33a4b
fix #287 : handle IDN email addresses
2019-11-03 11:43:13 +01:00
Igor Scheller
9b08b951a2
Merge pull request #651 from MyIgel/shift-deletion-worklog
...
Save time of past shifts as worklog if they get deleted
2019-10-21 09:12:10 +02:00
Igor Scheller
eec1eff65b
Shifts overview: Style cleanup
2019-10-20 15:38:09 +02:00
Wonko T. Sane
1a5c10dd41
adding a dashed line when expandable
2019-10-20 14:59:15 +02:00
Wonko T. Sane
b14d352140
Fix for #526
...
Implementation idea stolen from http://jsfiddle.net/6K7t4/24/
2019-10-20 14:59:15 +02:00
Igor Scheller
4154e97f3f
Deleted shift: Multiply with night shifts multiplier for worklog entry
2019-10-13 20:28:34 +02:00
Igor Scheller
fc773b25b3
Use 403 forbidden on shifts json, atom export and ical export
2019-10-13 13:15:08 +02:00
Igor Scheller
dd03662968
Rebuild password reset
2019-10-08 16:17:06 +02:00
Igor Scheller
8f8130634e
Show normal login page after registration, added msg() template function
2019-10-08 15:28:23 +02:00
Igor Scheller
c5dd21cbd6
Deleted shift: Added message about worklog entry
2019-09-18 04:38:49 +02:00
Igor Scheller
85e4403392
Rooms: Save times as Worklog and notify on room deletion
2019-09-18 04:27:59 +02:00
Igor Scheller
d71b27b78b
Shifts: Save time as worklog if past shift gets deleted
2019-09-18 04:27:56 +02:00
Igor Scheller
a02f5e61be
Edit user: Prevent overwriting first and last name if temporary disabled
2019-08-24 12:53:26 +02:00
Igor Scheller
a51bfae6e5
User view: Fix shifts order if user has worklogs
2019-08-24 12:32:34 +02:00
Igor Scheller
100602437f
User admin: Allow setting new groups if user has none assigned
2019-08-24 11:58:57 +02:00
msquare
3ce3129b6e
feature: disable lastname+prename in config
2019-08-24 10:56:59 +02:00
msquare
1604d2bce0
format freeloader duration on user myshifts page
2019-08-23 15:55:22 +02:00
msquare
d4e0fb0013
format freeloader duration on user myshifts page
2019-08-23 15:49:41 +02:00
msquare
39fda9b04f
format freeloader duration on user myshifts page
2019-08-23 15:47:17 +02:00
msquare
10fcd66da3
format freeloader duration on user myshifts page
2019-08-23 15:44:52 +02:00
msquare
edcf794a32
fixes #644 : display shifts with same start time on user myshifts page
2019-08-23 15:23:04 +02:00
Igor Scheller
69b3a2440c
Admin user: Show force active status in log
2019-08-22 23:26:00 +02:00
Igor Scheller
088d351b2b
Sort angeltypes shifts date dropdown
2019-08-22 21:18:36 +02:00
msquare
ce6419e308
Merge pull request #643 from MyIgel/show-angetypes
...
Shift page: show additional angeltypes if shift entries where found
2019-08-21 22:22:05 +02:00
Igor Scheller
f73b8e7a0e
Fix translation methods
2019-08-21 22:11:20 +02:00
Igor Scheller
b2a4225a62
Shift page: show additional angeltypes if shift entries where found
2019-08-21 22:08:48 +02:00
msquare
4d4fb81cd3
Merge pull request #641 from MyIgel/shift-signup-log
...
Shift signup/signout: Be more verbose
2019-08-21 01:30:53 +02:00
msquare
548d7317b4
redo fix shift view bug
2019-08-21 01:28:47 +02:00
msquare
8139f2fb4e
redo fix shift view bug
2019-08-21 01:27:38 +02:00
msquare
a521ace9f7
fix shift view bug
2019-08-21 01:26:01 +02:00
Igor Scheller
27895f2639
Shift signup/signout: Be more verbose
2019-08-21 01:22:46 +02:00
msquare
a5f838d56a
fix back button on shift create preview
2019-08-19 22:05:10 +02:00
msquare
53ec14b9c4
better bar min calculation
2019-08-19 10:20:44 +02:00
msquare
7d82103762
better bar min calculation
2019-08-19 10:20:07 +02:00
msquare
89ca2bb398
better bar min calculation
2019-08-19 10:19:27 +02:00
msquare
ead2b1582b
add overnight shift creation feature flag
2019-08-17 18:46:03 +02:00
Yannik Enss
770202e03d
Declare summary of atom feed items as HTML
...
RFC4287 Section 3.1.1 requires HTML content to be declared
as such with the "type" attribute, this commit adds that attribute
to the generated atom feeds.
2019-08-15 23:42:44 +02:00
msquare
76a7ceb27b
fixes #635 : set end of the last created shift to the official end inestead of first shift change on next day
2019-08-15 21:14:54 +02:00
msquare
d376c0d038
fix edit user error
2019-08-04 17:55:07 +02:00
msquare
1b3781cb2f
format admin_arrive dates accordingly as in user list
2019-07-25 19:02:08 +02:00
msquare
af580389c1
no time for arrival day needed
2019-07-25 18:53:27 +02:00
Igor Scheller
d794efe7bd
User overview: Order by planned arrival/departure dates
2019-07-25 17:40:59 +02:00
msquare
0c51d3c487
make shift calendar printable
2019-07-24 20:57:27 +02:00
Igor Scheller
f90ab26fee
Moved translation helpers to sub namespace
2019-07-08 01:58:06 +02:00
Igor Scheller
bcce2625a8
Implemented AuthController for login
...
* Moved /login functionality to AuthController
* Refactored password handling logic to use the Authenticator
2019-07-08 01:57:59 +02:00
Igor Scheller
6ed891fc04
Added logout via AuthController
2019-06-12 10:24:02 +02:00
Igor Scheller
0458ce9509
Added more error messages
2019-06-04 21:24:59 +02:00
MichiK
142871f852
Add a config option for maximum signup in advance
...
We now have `signup_advance_hours` in the configuration that
only allows signup for shifts so many hours in the future.
A notice is displayed in the shift view for shifts in the
far future, together with an info notice on when signup for
that shift will be possible.
In addition, we now have a new shift state `NOT_YET` for this
purpose so we do not have to abuse `SHIFT_ENDED` anymore for
`signup_requires_arrival` as well.
2019-06-04 21:24:59 +02:00
Igor Scheller
ead56a89fe
Only show the shift "Comment" field for own entries
2019-06-04 21:23:34 +02:00
Igor Scheller
b6eda8dbfc
Fix profile link to mark angels as arrived
2019-06-04 21:22:19 +02:00
Igor Scheller
94fea1edad
Use ini timezone setting
2019-06-04 21:21:34 +02:00
Igor Scheller
4e709d0d23
Log messages without inline HTML
2019-06-03 20:33:09 +02:00
Igor Scheller
e7f10d846e
Escape log messages
2019-06-03 20:33:09 +02:00
msquare
f6a87535a0
add help button to ical export for android, fixes #402
2019-05-05 15:23:13 +02:00
Igor Scheller
ca0b2d8b5f
Improved email error logging
2019-04-30 18:09:08 +02:00
msquare
a9499f4e5a
fix hour format for work log entries on myshifts page
2019-04-28 14:58:43 +02:00
msquare
ef2d917c59
catch mail exceptions, execute the action, inform the user about the error and create a log entry
2019-04-28 14:54:32 +02:00
msquare
4f1cef546e
better nick validation, fixes #429
2019-04-28 14:39:49 +02:00
Igor Scheller
79c92da8c1
Formatting
...
```bash
php-cs-fixer fix --allow-risky=yes --rules=@PSR2,psr4,mb_str_functions.php_unit_construct,php_unit_ordered_covers,trailing_comma_in_multiline_array --rules='{"array_syntax": {"syntax":"short"}}' [tests/|src/]
```
2019-04-25 18:17:19 +02:00
Igor Scheller
7c3a0c70e8
Bugfix: default value for planned_arrival_date and don't overwrite dect
...
Fixed registration form formatting
Fixed profile request attributes fallback values
2019-04-25 17:56:23 +02:00
Janne Heß
79b30fa3a8
Support disabling the planned arrival
...
We also use Engelsystem for single-day events, and the planned
arrival/departure feature doesn't make sense for us.
2019-04-23 21:05:56 +02:00
Janne Heß
665e444e88
Support disabling the DECT field
...
It's a really chaos-event-specific feature and is confusing for many
people on non-chaos events.
2019-04-23 12:43:45 +02:00
Igor Scheller
69c47dcc42
admin-free: Improved formattig
2019-04-21 17:54:10 +02:00
Janne Heß
69ac1b2d21
Support disabling the arrival feature
...
Setting `autoarrive` to true will now cause all newly registered angels
to be automatically confirmed as arrived.
2019-03-09 13:53:08 +01:00
Janne Heß
afa4506e11
Support alternative home sites
2019-03-09 13:52:13 +01:00
msquare
60ad343b22
fixes #178 : Show not only next but also last shift in free angels view
2019-01-13 16:04:44 +01:00
Igor Scheller
d208cab1ac
When only free shifts should be shown: filter for selected angel types
...
closes #556 (shifts shown, where not selected angeltype is free)
2018-12-30 12:11:51 +01:00
Igor Scheller
1fefe93bc8
users_controller: formatting
2018-12-30 12:11:51 +01:00
Igor Scheller
1bb2c57842
comments: Don't strip characters
...
closes #510 (htmlentities-like content in a comment gets removed)
2018-12-28 23:08:39 +01:00
Igor Scheller
6df3dc8489
questions: Don't strip content from messages
...
closes #545 ("=" removed in Questions & Answers)
2018-12-28 23:08:39 +01:00
Igor Scheller
012d5a4722
Don't strip characters from direct messages
2018-12-28 23:08:39 +01:00
Igor Scheller
540efef63e
active angels: Bugfix and prevent errors when searching double spaces
2018-12-28 21:39:23 +01:00
Igor Scheller
0150aca6ad
Order rooms in shift overview by name
...
closes #551 (Order of Rooms in overview)
2018-12-28 15:36:45 +01:00
msquare
794df6f99e
fixes #548 : users with only worklog and no shifts had 0 minutes on admin-active. query fixed
2018-12-27 19:53:48 +01:00
msquare
db26412e6c
fixes #549 : fill missing arrival dates and prevent setting arrival by admin-user instead of admin-arrive
2018-12-27 19:08:35 +01:00
Igor Scheller
689735ad51
Sort users on team page
2018-12-27 14:16:09 +01:00
Igor Scheller
acd9ec6966
add multiple shifts: Fix hour regex and sorting, cleanup and formatting
2018-12-26 19:49:01 +01:00
Igor Scheller
36830c43e7
Fix warning if searching two whitespaces and formatting
2018-12-26 19:39:40 +01:00
Igor Scheller
31d9efb2b8
Bugfix: Edit user: Show groups list if angel has no rights
2018-12-25 14:46:14 +01:00
Igor Scheller
d214525e24
Sort Angels Alphabetical
...
closes #541 (Shift Signup: Sort Angels Alphabetical)
2018-12-25 10:25:32 +01:00
jwacalex
8c5b52aa11
reformatted code due to guidelines
2018-12-22 12:10:16 +01:00
jwacalex
60a9c15454
first draft for #536
2018-12-22 12:10:16 +01:00
Igor Scheller
b1d8fede46
user: allow up to 40 characters for dect numbers
...
closes #309 (EPVPN number in DECT field is shortened)
closes #529 (For dect numbers are only 5 digits allowed)
2018-12-22 12:03:24 +01:00
Clemens
482721eb1b
user view: Show multiple worklog entries per day
...
closes #531 (Multiple worklogs on same day not displayed in users shift list (but counted in sum))
2018-12-21 21:18:14 +01:00
Igor Scheller
c5621b82cf
Implemented /metrics endpoint and reimplemented /stats
...
closes #418 (/metrics endpoint)
Usage:
```yaml
scrape_configs:
- job_name: 'engelsystem'
static_configs:
- targets: ['engelsystem.example.com:80']
```
2018-12-19 22:36:42 +01:00
Igor Scheller
9a15fbc71e
worklog: Fix hours validation
...
closes #527 (Worklog entries with floating point numbers with a comma dispatches a team of untrained monkeys)
2018-12-18 13:48:46 +01:00
Igor Scheller
204ff4c0e7
rooms admin: Set a maximum character length
...
closes #525 (Room names with more than 35 characters dispatch a team of untrained monkeys)
2018-12-18 13:22:10 +01:00
Igor Scheller
c676e73cf6
php7.3: Fix username validation regex
...
closes #523 (Login does not work ->Invalid range in character class)
2018-12-18 12:44:09 +01:00
msquare
412be8e188
upgrade chart.js lib and fix bargraph. fixes #511
2018-12-09 13:07:19 +01:00
msquare
93b819025c
fix margin of form submit in tables
2018-12-09 12:51:48 +01:00
MichiK
252f003b94
Really fix the data/timepicker CSS and JS
...
Attaching the timepicker to the input instead of the sorrounding div didn't
turn out as expected. Therefore, I used the same mechanism for DOM attachment
and lazy initialization for the timepicker like for the datepicker.
Instead of trying to load the CSS through webpack and some JS voodoo, it's
a lot simpler to just include it via the normal base theme CSS. This works.
In addition, I noticed that there is an easier way to read the current locale.
No need to do this twice via different ways.
This closes #516 .
2018-12-08 21:14:20 +01:00
MichiK
7e53c45890
Change the color of "reset" in admin_arrive
2018-12-07 17:26:44 +01:00
MichiK
ed5ee3235e
Add timepickers in shifts view
2018-12-05 18:43:51 +01:00
MichiK
4e3232e57a
Replace datepicker and remove datepicker inline JS
2018-12-04 21:03:32 +01:00
MichiK
36b7f8d2a2
Fix datepicker
...
`<input type="date">` and JS datepicker combined cause trouble in some
browsers, so this changes all the date input fields' type to `text`
via JS so that the browser's datepicker is only used when a user has
disabled JavaScript.
In addition, it adds a placeholder so the user knows which date format
to use when entering the date manually.
This closes #507 .
2018-12-03 19:21:45 +01:00
Igor Scheller
c33940f64a
Moved permission checks to Authenticator class
2018-12-02 12:53:31 +01:00
msquare
e0de2c2c65
more work on 35c3 theme
2018-11-25 15:40:53 +01:00
Igor Scheller
f845a5ab8b
Added caching for templating and routing
...
See #486 (Implement caching)
2018-11-24 16:30:36 +01:00
Igor Scheller
944c29b964
Require POST for sending forms
...
* Ensure that the form is submitted with a post request
* Replaced several links with forms
Closes #494 (Security Vulnerability)
2018-11-21 19:24:36 +01:00
Igor Scheller
23c0fae36f
Added csrf middleware
2018-11-21 19:24:36 +01:00
msquare
8236989be0
fix missing unique mail validation on user register
2018-11-18 12:13:00 +01:00
Igor Scheller
15751f9c7a
Fix error when accessing undefined date
...
Closes #491 (Edit User fails when User never logged in before)
2018-11-02 18:03:40 +01:00
Igor Scheller
88f3bafa5e
Replaced `Auth()` with `auth()`
2018-10-31 13:43:23 +01:00
Igor Scheller
82b22160fd
Fixed error if shirt size is not configured
2018-10-31 13:43:23 +01:00
Igor Scheller
a2aaba9cab
User: Bugfixes & code cleanup
2018-10-31 13:43:23 +01:00
Igor Scheller
d7aea575ff
Replaced more sql queries and old data
2018-10-31 13:43:23 +01:00
Igor Scheller
57932be428
Moved arrival_date to state
2018-10-31 13:43:23 +01:00
Igor Scheller
4e09ee3eb2
Replaced more user related stuff
...
(Contains some buggy stuff too...)
2018-10-31 13:43:23 +01:00
Igor Scheller
7c6afc2bfe
Removed `User($id)` function 🎉
2018-10-31 13:43:23 +01:00
Igor Scheller
89e62c95a7
Changed more functions 🎉
2018-10-31 13:43:23 +01:00
Igor Scheller
b069a938c6
Changed user_link and some other user functions to use the user id
2018-10-31 13:43:23 +01:00
Igor Scheller
2dcb7cc2de
Replaced some global `$user` variables
2018-10-31 13:43:23 +01:00
Igor Scheller
d15946df2d
Changed `src/` code and templates to use the new user model
2018-10-31 13:43:23 +01:00
Igor Scheller
b443b53919
Translation: added pluralization support
2018-10-30 22:50:22 +01:00
Igor Scheller
90e1a94962
Make application name configurable
...
* Added app_name configuration option
* Extended `EngelsystemMailer` to prepend the application name to all mails
Closes #426
2018-10-30 22:50:22 +01:00
Igor Scheller
7f61dc95be
EventConfig: Merge event configuration from database to global config
2018-10-30 21:13:56 +01:00
Igor Scheller
7762c0eb2b
Translatable user groups & cutoff fix
...
Closes #318 (Typo: "irt Manager" instead of "Shirt Manager")
2018-10-24 19:18:35 +02:00
Igor Scheller
6187eed3bb
Merge remote-tracking branch 'MyIgel/mailing'
2018-09-26 21:31:18 +02:00
Igor Scheller
66038eda14
Merge branch 'twig-templates'
2018-09-23 20:11:37 +02:00
Nos-
b2303c0723
Tried to fix inputfields for date, email, tel
2018-09-23 11:48:09 +02:00
Igor Scheller
2a134e6c0b
Config: Removed nightshifts query
2018-09-23 11:40:53 +02:00
Igor Scheller
0734807eef
Merge remote-tracking branch 'MyIgel/logentry-model'
2018-09-16 12:06:18 +02:00
Igor Scheller
d0abc27c07
Merge remote-tracking branch 'MyIgel/translations'
2018-09-15 14:58:31 +02:00
Igor Scheller
8456a3cf6f
Moved emojis to assets
2018-09-10 22:49:46 +02:00
Igor Scheller
c1a1180d1f
Moved frontend, templates and lang to resources
2018-09-10 18:22:48 +02:00
Igor Scheller
222c9fed7d
Merge remote-tracking branch 'MyIgel/templating'
2018-09-09 12:11:12 +02:00
Igor Scheller
01e9c22695
Implemented mailing abstraction
...
Closes #434
2018-09-05 13:44:43 +02:00
Igor Scheller
36dafdb68a
Merge remote-tracking branch 'MyIgel/rebuild-psr7'
2018-09-03 22:55:54 +02:00
Igor Scheller
9d34f371cb
Added CreditsController
2018-09-03 15:42:51 +02:00
Igor Scheller
9e217d87c0
Template refactoring to use twig
2018-09-02 02:09:56 +02:00
Igor Scheller
ac48332166
Models: Added LogEntry model
2018-08-31 03:24:54 +02:00
Igor Scheller
2bebbeb191
Installation: Added migrations for install.sql and update.sql files
2018-08-30 16:07:50 +02:00
Igor Scheller
9d9aa71eb7
Installation: Added migrations for install.sql and update.sql files
2018-08-30 15:53:37 +02:00
Igor Scheller
5456fea503
$bugfixes
2018-08-29 23:46:32 +02:00
Bot
e8f8fc7f5f
Replaced gettext translation `_()` with `__()` that uses the Translator class
2018-08-29 23:46:32 +02:00
Igor Scheller
acfe72cb91
Removed translation from config file
2018-08-29 23:46:32 +02:00
Igor Scheller
427315195b
Moved translation/internationalization to Helpers\Translator class
2018-08-29 23:46:31 +02:00
Igor Scheller
bb3d16d273
Added Twig template renderer, closes #338
2018-08-29 23:46:11 +02:00
Igor Scheller
175c335810
Db::selectOne() should return null if result is empty
2018-08-29 18:11:35 +02:00
msquare
1090d5e889
Update shifts_controller.php
...
fix problem when missing needed angeltype entry
2018-08-28 18:28:09 +02:00
Igor Scheller
d93ace2eae
Prevent object serialization in session
2018-08-20 21:08:06 +02:00
Igor Scheller
d6c8f1a614
Merge branch 'master' to 'rebuild-database'
2018-08-20 21:07:57 +02:00
Igor Scheller
f3b3b6683c
Added middleware tests
2018-08-19 13:59:39 +02:00
msquare
df30f7d5d8
merge pr #427 : Use npm to handle frontend dependencies
2018-08-12 12:42:58 +02:00