Commit Graph

219 Commits

Author SHA1 Message Date
Igor Scheller 42721e9572 Added Schedule parsing and replaced old Fahrplan importer
Resolves #553 (Change Frab Import from xCal to XML)
Resolves #538 (Feature Request: Multi Frab Import)
2019-12-08 02:20:48 +01:00
Igor Scheller 89742ecd55 Response: Added with and withInput methods and back/redirect functions 2019-12-08 02:12:56 +01:00
Igor Scheller d6cb9c6258 Questions: Moved user tests to user and fixed attribute names, added @covers 2019-12-07 21:29:11 +01:00
Igor Scheller 8fc159f287 Stats: Added questions test 2019-12-07 21:29:11 +01:00
Michael Weimann 4f63bbbaac Add Question model 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 15e6740e12 Twig update to > 2.11: Fixed namespaces, warnings and cleanup 2019-11-29 18:42:20 +01:00
Igor Scheller f8e1f85089 Removed not used {trans} twig token 2019-11-29 16:56:44 +01:00
Igor Scheller 5704174fe6 MessageTrait: Fixed HeaderBag::get parameter deprecation in Symfony 4.4 2019-11-22 11:15:27 +01:00
Michael Weimann 17192a2c41
Adapt code style to PSR-12 2019-11-12 22:04:39 +01:00
Michael Weimann 26b8d2b921
Introduce the NewsComments model 2019-11-12 21:58:40 +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
Michael Weimann 6534191d59 Migrate news to model class 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 867d720f15 Tests: Replaced setMethods as it is deprecated 2019-11-06 12:29:58 +01:00
Igor Scheller 109f112131 BaseModel: Removed methods as already provided by Eloquent Builder 2019-11-06 12:15:14 +01:00
Igor Scheller a514ba3adc HasUserModel: Moved user method to trait 2019-11-03 00:25:35 +01:00
Luca 6cde313e47 Move translations whose message ids do not appear as literals in the sources into a separate file
Test whether additional.{m,p}o files are loaded correctly
2019-10-28 14:25:31 +01:00
Igor Scheller 18de950d8f Mail log: Formatting 2019-10-27 13:28:40 +01:00
Igor Scheller af09865f3d Fix/Cleanup tests for DatabaseServiceProvider 2019-10-13 21:26:21 +02:00
Igor Scheller fa35187795 Removed .mo translation files from version control, use .po as fallback 2019-10-13 13:16:22 +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 810068dcf8 Fixes: AuthController session error merging and StatsTest 2019-10-08 14:30:18 +02:00
Igor Scheller ae0816ce8d Response: Fixed naming to use renderer instead of view and added setter 2019-10-08 14:07:28 +02:00
Igor Scheller e124b41977 Tests: TestCase: Initialize $this->app on every run 2019-10-08 13:57:50 +02:00
Igor Scheller 1b3e3b1d65 Exceptions: Added HttpNotFound exception 2019-10-07 22:02:28 +02:00
Igor Scheller 8d090438b6 Validation rules: min/max/between: Use string length to compare strings 2019-10-07 21:59:40 +02:00
Igor Scheller faf74150e9 Mailer: Use users locale for translation 2019-10-06 21:18:42 +02:00
Igor Scheller 154625bc8a CI: Fix tests 2019-09-17 22:16:53 +02:00
Igor Scheller 64c4743f57 Routes config: Added test to ensure that routes are cacheable in production 2019-09-06 17:30:04 +02:00
Igor Scheller efaf29e5ef Metrics: Add database access time 2019-08-21 14:22:31 +02:00
Igor Scheller 64e4d168e0 migration: Order by migrated and append not migrated 2019-07-21 20:54:17 +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 51a3c6eb44 ErrorHandler: Remove some form fields before serialization 2019-07-21 13:24:47 +02:00
Igor Scheller 4582f808f0 Added version to credits and metrics page 2019-07-21 03:19:19 +02:00
Igor Scheller fece50ca09 Basic coverage tests of logger classes for 100% unit tests coverage 2019-07-20 23:58:14 +02:00
Igor Scheller b9cb7d57fd Basic coverage tests of logger classes for 100% unit tests coverage 2019-07-16 02:59:33 +02:00
Igor Scheller b25924e868 Allow nested rules (not and optional) 2019-07-16 01:39:54 +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 508695efb2 Replaced gettext translation with package
This allows to check if no translation is available
2019-07-08 01:58:06 +02:00
Igor Scheller f90ab26fee Moved translation helpers to sub namespace 2019-07-08 01:58:06 +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 2e51fbff9d Added / route with redirects 2019-06-12 10:21:20 +02:00
Igor Scheller e948091066 Replaced old /api endpoint with ApiController 2019-06-12 10:20:08 +02:00
Igor Scheller 93e578e555 Added html content sniffer 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 236197faf8 Upgraded external components 2019-06-03 21:36:58 +02:00
Igor Scheller 819677c902 Use self references and fix class naming 2019-04-25 18:17:19 +02:00
Igor Scheller 8da8805f5d Replaced functions with mb_* equivalents 2019-04-25 18:17:19 +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 9930668837 Fixed test coverage 2019-04-25 17:56:06 +02:00
Igor Scheller c74fa7955d phpunit: Upgrade to version 8, fixed tests, formatting
Use `dms/phpunit-arraysubset-asserts` after `assertArraySubset` got deprecated
2019-04-25 17:56:06 +02:00
Igor Scheller 58ca7113f3 PSR-7: Replaced implementation with `Nyholm\Psr7` 2019-04-17 13:11:39 +02:00
Igor Scheller d9f898a0bb Bugfix: Replaced Diactoros with Symfony PsrHttpFactory to use PhpExtended\HttpMessage implementation
Prevents warnings that get converted to errors when run in dev mode
2019-04-16 20:20:56 +02:00
Igor Scheller 43b7b5c117 migration: Exclude add_angel_supporter_permissions from unit tests 2018-12-30 15:17:01 +01:00
Igor Scheller 491ee37651 Don't save sessions permanently on api and metrics paths
closes #530 (Session on API calls)
2018-12-28 20:35:44 +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
Igor Scheller 330356043d credits: Allow customization 2018-12-22 12:01:23 +01:00
Igor Scheller 393db49294 Renderer: Added twig extension for markdown rendering 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 3c8d0eeb44 ErrorHandler: Don't wrap the response if a content-type is defined 2018-12-19 22:36:42 +01:00
Igor Scheller c9d7e88cc7 Implemented controller permissions 2018-12-02 12:53:31 +01:00
Igor Scheller 55beca95cd Refactoring: Throw HttpAuthExpired on csrf token mismatch 2018-12-02 12:53:31 +01:00
Igor Scheller 9788c5095a Implemented HttpException 2018-12-02 12:53:31 +01:00
Igor Scheller c33940f64a Moved permission checks to Authenticator class 2018-12-02 12:53:31 +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 fd37c9d60e Added additional headers 2018-11-21 19:24:36 +01:00
Igor Scheller 23c0fae36f Added csrf middleware 2018-11-21 19:24:36 +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 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 8e62c4c52c Added new user models 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 63d1292bf8 Added EventConfig model 2018-10-30 21:13:56 +01:00
Igor Scheller c4867811e2 BaseModel: Added findOrNew 2018-10-30 21:13:56 +01:00
Igor Scheller c9afc27ab9 Tests: Moved ServiceProvider::setExpects to TestCase 2018-10-30 21:13:56 +01:00
Igor Scheller 4f04924e29 Privileges: grant user work log permissions to shikos & cleanup
Closes #478 (Make user work log available)
2018-10-24 22:27:31 +02:00
Igor Scheller d985d493a3 Migrations: Added namespace 2018-10-24 19:15:07 +02:00
Igor Scheller 5f46fd2f15 Database: Don't use `0000-00-00 00:00:00` as a datetime 2018-10-24 19:15:07 +02:00
Igor Scheller b46207f911 Merge remote-tracking branch 'MyIgel/session' 2018-09-30 19:33:14 +02:00
Igor Scheller 6187eed3bb Merge remote-tracking branch 'MyIgel/mailing' 2018-09-26 21:31:18 +02:00
Igor Scheller aa2124f655 RouteDispatcher: Allow installation into sub directory 2018-09-26 20:49:31 +02:00
Igor Scheller 0b0890f425 Session: Added DatabaseHandler, replaces Symfony PdoSessionHandler 2018-09-25 14:02:55 +02:00
Igor Scheller 66038eda14 Merge branch 'twig-templates' 2018-09-23 20:11:37 +02:00
Igor Scheller 104e4f4c43 Session: Added Symfony PDO backend 2018-09-16 14:56:07 +02:00
Igor Scheller edeab5e75f Added Database class as a replacement for Db, fixed naming 2018-09-16 14:53:33 +02:00
Igor Scheller 0734807eef Merge remote-tracking branch 'MyIgel/logentry-model' 2018-09-16 12:06:18 +02:00