Commit Graph

227 Commits

Author SHA1 Message Date
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
Xu ccdf1aa8d5 add config option for other goodies 2023-01-31 01:51:31 +01:00
Igor Scheller 37a26c123e Validation: Fixed worklog comment: ... 2023-01-24 20:49:31 +01:00
Igor Scheller 89dc85c3d5
Add ShiftEntry model 2023-01-18 13:02:11 +01:00
Michael Weimann 01373cb192 Replace select 2 with choices.js and kill jQuery 2023-01-17 14:27:38 +01:00
Igor Scheller 3115870ec4
Added Shift model 2023-01-03 22:19:03 +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 3d88ae7916
convert `switch` to `match` 2022-12-22 00:08:54 +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
Michael Weimann 6dac44d67f
Rename class props to match ctor param 2022-12-20 22:19:52 +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
Michael Weimann aff8826c99
Set native return types
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2022-12-15 20:13:31 +01:00
Michael Weimann 2b88322c0c
Set native parameter types
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2022-12-15 20:13:30 +01:00
Igor Scheller 6c4e92baf2 Bump minimum PHP version to 8.1 and update packages 2022-12-13 22:03:08 +01:00
Thomas Rupprecht ce0ac6f823
Use specific ID parameter names in routes (#1023) 2022-12-11 18:01:34 +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
Joshua Bachmeier 6917f7805b Add support for oauth scopes
As defined in RFC6749:
* https://www.rfc-editor.org/rfc/rfc6749#section-4.1.1
* https://www.rfc-editor.org/rfc/rfc6749#section-3.3

Scopes can be configured per-provider in engelsystem config.
2022-12-02 15:35:10 +01:00
Joshua Bachmeier 44821019b6 Add error handling to oauth provider response processing 2022-12-02 15:35:10 +01:00
frischler 35815b0838 Settings Modernization: Applied suggested changed from #972 2022-11-01 16:55:23 +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
frischler d6899d37d9 Settings Modernization: Applying buildup and teardown time, add localization 2022-11-01 16:55:23 +01:00
frischler 203531629f Settings Modernization: Creating /settings/profile page with Controller methods and tests 2022-11-01 16:55:23 +01:00
Michael Weimann a81992ca04
Add countdowns to /design 2022-10-22 17:11:55 +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
frischler 3043a9512a Settings themes handled in SettingsController 2022-06-14 13:34:01 +02:00
Igor Scheller 743a79ceea Replace model data access workaround with twigbridge patch 2022-06-10 12:45:24 +02:00
Igor Scheller d9e4bf3cac Unified message display, scroll to newest after sending or deleting 2022-06-06 16:12:47 +02:00
Igor Scheller 9e5f0ff854 Use pronoun for other pages too, a bit more cleanup 2022-06-06 16:12:47 +02:00
Igor Scheller 7acd34ba74 Added unread messages as global var 2022-06-06 16:12:47 +02:00
frischler 865873c099 Enabled to write messages to myself 2022-06-06 16:12:47 +02:00
frischler 71d183df01 Applied changes as suggested in https://github.com/engelsystem/engelsystem/pull/915 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 d690d64d0e /metrics: Add newline at the end to be spec compliant
Fixes #909: Error trying to parse /metrics

See also https://prometheus.io/docs/instrumenting/exposition_formats/#text-format-details
2022-05-11 00:25:20 +02:00
Michael Weimann 66e7a3e183 Add unused imports phpcs rule 2022-04-19 23:33:44 +02:00
Igor Scheller d8076abc38 Make password enabled configurable via oauth settings 2022-03-20 18:29:51 +01:00
Igor Scheller 8fd2d5bfa5 Allow empty password in settings 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
Tobias Wiese e361400f68 news: remove html support
Since the support for markdown in news the html feature isn't really
necessary any more.
2022-01-01 16:33:40 +01:00
Igor Scheller 676a2113b4 Added User\License model 2021-12-29 17:12:19 +01:00
Igor Scheller 26ab0619f5 OAuth: Allow nested info attributes 2021-12-12 12:34:43 +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 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
Igor Scheller 2cfce86e25 Fixed formatting 2021-10-23 17:19:49 +02:00
Igor Scheller 657b44f9cf Redirect back from login after 403 (Not authorized) 2021-10-23 17:13:46 +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
Igor Scheller f201b2f1c8 Merge branch 'feature-bootstrap5'
# Conflicts:
#	package.json
#	tests/Unit/Renderer/Twig/Extensions/GlobalsTest.php
#	webpack.config.js
#	yarn.lock
2021-08-17 14:26:28 +02:00
Igor Scheller f7b9f59d95 OAuth: Compare strings so that numeric IDs can be used 2021-08-14 15:29:05 +02:00
Igor Scheller a8e012be72 Make news comments deletable 2021-08-08 19:11:16 +02:00
Igor Scheller ec355d40f5 Added user related factories 2021-08-08 18:31:33 +02:00
Igor Scheller 19fc114cf7
Added ?theme parameter to temporary change theme 2021-07-29 20:01:10 +02:00
Michael Weimann 5f7fcb9018
make all themes basically working with bs5
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>

migrate buttons and badges

Signed-off-by: Michael Weimann <mail@michael-weimann.eu>

upgrade bootstrap, fix devtool

remove postcss-preset-env

remove npm-run-all

add theme info to design

add theme configs for 2-15

make all themes compile

fix node env in script

refactor theme config

make all themes basically working

fix sass 3rd party warnings

replace slash div by math.div
2021-07-29 20:00:54 +02:00
Xu cb2ec5457e stats: added pronoun 2021-04-13 16:01:38 +02:00
Igor Scheller bb2a13f605 OAuth: Compare oauth users using exact compare 2021-04-12 17:13:48 +02:00
Igor Scheller a5757497e5 Add theme change to /design page 2021-04-12 16:42:15 +02:00
Igor Scheller 149155fbda Added email notification on new news 2021-04-12 16:15:25 +02:00
Igor Scheller 85044bc833 News: Add is_pinned 2020-12-27 10:59:28 +01:00
Igor Scheller d423bb07d3 OAuth: Save auth tokens 2020-12-26 21:09:24 +01:00
Igor Scheller 304b599cf4 OAuth: Allow - in URLs and fix response handling 2020-12-26 16:09:39 +01:00
Igor Scheller 53d5f8518b Questions: Change sorting 2020-12-20 20:48:12 +01:00
Igor Scheller b5c974b9e3 Add new questions frontend 2020-12-20 17:46:45 +01:00
Igor Scheller 857ed23548 Added FAQ 2020-12-20 17:46:45 +01:00
Xu ab82e1cbc0 NewsController: redirect after edit to /news instead of /news/[id] 2020-12-18 17:56:12 +01:00
msquare 39f96783cf review changes 2020-11-25 00:49:45 +01:00
msquare d3265ef70a add password settings page 2020-11-25 00:49:45 +01:00
Igor Scheller ebab34ee67 Schedule import: Add overview 2020-11-22 16:53:07 +01:00
Igor Scheller 251f2cbfa6 OAuth: Added display name and metrics, show providers on user page 2020-11-22 14:55:29 +01:00
Igor Scheller 80941c2999 Login: Added OAuth support 2020-11-22 14:55:29 +01:00
Igor Scheller a309d873a7 News: Show preview 2020-10-21 21:51:48 +02:00
Igor Scheller f8d9cddcc6 Added CleanupModel stub 2020-10-21 21:51:48 +02:00
Igor Scheller f732a4af6f Added Worklog model 2020-09-24 17:38:12 +02:00
Igor Scheller acf84f222d Added Room model 2020-09-24 09:34:00 +02:00
Igor Scheller c0c1dab711 Metrics: Added user enabled email targets and comments counts 2020-09-22 11:37:21 +02:00
Igor Scheller 9dd2525e93 Metrics: Add theme names 2020-09-22 11:37:21 +02:00
Igor Scheller a3f7942d0d Added k8s health checks and metrics scraping 2020-09-22 11:37:21 +02:00
Igor Scheller e4247cd0bd Metrics: Use buckets for work, worklog and vouchers 2020-09-22 11:37:21 +02:00
Igor Scheller 138ee996b0 Metrics: Add support for histogram 2020-09-22 11:37:21 +02:00
Igor Scheller b814cf51e4 News: Preselect "Is Meeting" when adding from Meeting overview 2020-06-14 13:55:08 +02:00
Igor Scheller ae744af814 HomeController: Fix redirect 2020-06-14 13:55:08 +02:00
Igor Scheller e947e788f9 Rebuild logs view 2020-05-01 21:41:06 +02:00
Igor Scheller 04fe35c822 Added /design path to show template elements 2020-04-25 17:04:57 +02:00
Igor Scheller e2e2ac0c68 Metrics: Added configured locales and themes, refactoring/formatting 2020-04-25 17:04:57 +02:00
Igor Scheller 795a0631cb Added application base url: Redirector now uses URLs instead of relative paths 2020-04-25 15:50:57 +02:00
Igor Scheller d323b75501 News: Rewrite 2020-04-25 15:50:57 +02:00
Igor Scheller 72f4839130 Added HasUserNotifications trait to show messages to the user 2020-04-25 15:50:57 +02:00
Igor Scheller b9bb68c8ac AuthController: Use configured home_site 2020-04-05 20:23:35 +02:00
Igor Scheller 61977f5da9 Metrics: Fixed message count 2019-12-30 21:12:22 +01:00
Igor Scheller 45d13ac998 Metrics: Strict types and type hinting 2019-12-25 09:57:11 +01:00
Igor Scheller c023c8a9c6 Metrics: Added users_force_active 2019-12-24 14:33:11 +01:00
Igor Scheller 8fc159f287 Stats: Added questions test 2019-12-07 21:29:11 +01:00
Michael Weimann e16e0b2644 Migrate Question usages 2019-12-07 21:29:11 +01:00
Igor Scheller 577c052aff Twig update to 3.0.0 and Renderer type hinting 2019-11-29 19:38:28 +01:00
Igor Scheller 68afc74b03 Formatting to follow PSR-12 2019-11-11 00:05:41 +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
Igor Scheller 8b5b9e2c65 src/: Formatting, doc block hints and cleanup 2019-11-06 13:43:57 +01:00
Igor Scheller dd03662968 Rebuild password reset 2019-10-08 16:17:06 +02:00
Igor Scheller 810068dcf8 Fixes: AuthController session error merging and StatsTest 2019-10-08 14:30:18 +02:00
Igor Scheller efaf29e5ef Metrics: Add database access time 2019-08-21 14:22:31 +02:00
msquare eefae43a47 simplified login form, show password recovery always, some camp theme tweaks 2019-07-21 18:53:51 +02:00
msquare 1e16f4c47e
Merge pull request #624 from MyIgel/version
Added version to credits and metrics page
2019-07-21 13:38:05 +02:00
msquare b03102e3c6 AuthController return types 2019-07-21 12:37:01 +02:00
Igor Scheller 4582f808f0 Added version to credits and metrics page 2019-07-21 03:19:19 +02:00
Igor Scheller 6d5ada2522 Added validation to AuthController 2019-07-09 22:27:34 +02:00
Igor Scheller 7414f9b23d Implemented Validation for controllers 2019-07-09 21:43:18 +02:00
Igor Scheller e9f157ec5c Renderer: Added shared data 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 da804fe720 Metrics: Added scrape memory usage 2019-07-08 00:22:16 +02:00
Igor Scheller e06affae17 Added tests to HomeController 2019-06-14 04:15:20 +02:00
Luca 9232513831 Fix caching issue for '/' route 2019-06-14 04:15:20 +02:00
Igor Scheller 6ed891fc04 Added logout via AuthController 2019-06-12 10:24:02 +02:00
Igor Scheller e948091066 Replaced old /api endpoint with ApiController 2019-06-12 10:20:08 +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 26f58b8156 metrics: Fix users stats 2018-12-25 20:56:46 +01:00
Igor Scheller 330356043d credits: Allow customization 2018-12-22 12:01:23 +01:00
Igor Scheller b3f059ad04 metrics: Added vouchers and tshirts 2018-12-22 11:31:33 +01:00
Igor Scheller 9a2f246511 metrics: Added more stats 2018-12-19 22:36:42 +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 c9d7e88cc7 Implemented controller permissions 2018-12-02 12:53:31 +01:00
Igor Scheller 9d34f371cb Added CreditsController 2018-09-03 15:42:51 +02:00