Commit Graph

208 Commits

Author SHA1 Message Date
Michael Weimann 2b88322c0c
Set native parameter types
Signed-off-by: Michael Weimann <mail@michael-weimann.eu>
2022-12-15 20:13:30 +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
Michael Weimann 9396a49412 Add phpstan 2022-12-08 16:32:04 +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
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 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
Igor Scheller c957b2784a Cleanup duplicated app calls, replaced deprecated methods, readability improvements 2022-07-11 23:30:41 +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
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 80d87617f2 Fix migration and test improvements 2022-01-01 16:33:40 +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 657b44f9cf Redirect back from login after 403 (Not authorized) 2021-10-23 17:13:46 +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 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
Igor Scheller 03185f8865
Fixed globals and design unit tests 2021-07-29 20:00:57 +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 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 e322867716 Tests: Added abstract ControllerTest 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 0c3ff73454 new setting page layout 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 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 4a6f18d41f Fixed Symfony 5.1 compatibility 2020-06-01 13:31:16 +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 93ae2442f6 Formatting, syntax, typehint and namespace fixes, cleanups 2020-04-25 16:54:30 +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
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 2cce967eb0 Tests: Replaced duplicates and formatting/cleanup 2019-11-06 13:16:00 +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 e124b41977 Tests: TestCase: Initialize $this->app on every run 2019-10-08 13:57:50 +02:00
Igor Scheller efaf29e5ef Metrics: Add database access time 2019-08-21 14:22:31 +02:00
msquare 6df62659da show password recovery always, fix test 2019-07-21 19:17:41 +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
Igor Scheller 4582f808f0 Added version to credits and metrics page 2019-07-21 03:19:19 +02:00
Igor Scheller 6743106d9a Replaced validation with `respect/validation` 2019-07-10 13:34:15 +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 e06affae17 Added tests to HomeController 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 1f433694d2 Tests: Fix type warning 2019-06-12 02:56:18 +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 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