* Update dependency prettier to v3
* upgrade eslint-plugin-prettier and run prettier on all files
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jeldrik Hanschke <admin@jhanschke.de>
* replace ember-cp-validations with custom validation logic for poll creation
* refactor poll participation to not use ember-cp-validations
* drop ember-cp-validations from create.settings route
* remove unused leftovers from ember-cp-validations
* fix potential leak
* assertion thrown in CI tests (Firefox) indicate that listener is cleaned up automatically
* synchronize translations
* mark string as html safe before passing to translation instead of bypassing HTML escape using {{{unsafe}}} syntax
* replace ember-i18n with ember-intl
- Drops floatthead and additional scrollbar
- Makes header and first column sticky
- Refactors code for readability
Sticky header is only working in Firefox. Chrome and Edge does not support `position: sticky` for `<thead>`. Haven't tested Safari.
started replacing ember-easy-form-extensions by ember-form-master-2000
and ember-validations by ember-cp-validations
using ember-form-master-2000 in old 0.2 release cause newer releases does not work with ember 0.12
should move to ember 2.x as soon as possible
therefore ember-easy-form-extensions has to be dropped and ember-i18n been updated
part of #76
Therefore sha256 hash of encryption key is validated against one which is stored
on server on poll creation.
This one is transfered as X-Croodle-Proof-Key-Knowledge HTTP HEADER.
Prevents an attacker of transmitting data with wrong encryption key, which
would cause decryption errors for legit users.
before it was done as computed properties of model
accessing encryption key in serializer is done via global application var.
this should be removed in long-term
therefore we have to duplicate it in store:
* encrypted for to serve for clients (encryptedExpirationDate)
* unencrypted for server to check if it's exceeded (serverExpirationDate)
serverExpirationDate should never be send to client
There were some timezone issues especially concerning daylight saving time (DST).
We should not rely on timezone offset since this will change due to DST.
Instead determine the users timezone (using jsTimezoneDetect therefore) and
then using this via moment-timezone.
This commit changes poll model. It drops timezoneOffset and adds timezone as a new property.
It's not tested yet against polls created before without timezone property. This has to be done before merge.
Also we should consider using ember-moment template helpers instead of our own formatted-date helper.