2559346d96
fix(avs): new AVS from existing LDAP user no longer misses fields
2024-06-26 15:08:38 +02:00
f108c6cfec
fix(avs): match mobile number better between LDAP and AVS
2024-06-25 17:36:33 +02:00
e4fa1ddd68
fix(avs): priority for picking primary email demote superior
2024-06-25 15:54:55 +02:00
f8c36636ff
fix(letter): expiry and valid dates were wrong
2024-06-25 14:11:50 +02:00
766b8589d6
fix(avs): keep company on unchange address/email only if either is non-empty
2024-06-21 13:47:05 +02:00
822c43c8a7
fix(avs): fix type causing avs surname upate not working
2024-06-21 08:45:16 +00:00
ab5e432b77
refactor(avs): use associated type family to consistently produce CheckUpdate
2024-06-19 15:10:23 +02:00
a6d0105903
fix(avs): fix rare avs update bug involving values optional in avs but compulsory in user entity
2024-06-17 17:50:41 +02:00
0eac40457b
chore(avs): add more auto update indicators to profile page
2024-06-13 14:51:05 +02:00
76e0710c7b
fix(avs): fix #165 by updating userCompanyDepartmen and userCompanyPersonalNumer
...
- Die interne Firma Assoziation im User-Eintrag wird gelöscht, sobald der letzte erfolgreiche LDAP Sync älter ist als der eingestellte SYNCHRONISE_LDAP_EXPIRE (default = halbes Jahr).
- Firmen-Assoziation wird ebenfalls gelöscht, falls vorhanden
- Die Personalnummer bleibt erhalten, wenn das AVS diese noch liefert; ansonsten wird sie ebenfalls gelöscht.
- UserLdapPrimaryKey wird ggf. von AVS aktualisiert
2024-06-12 17:48:17 +02:00
a3beca87d1
chore(firm): filter associates by valid qualficiations
...
towards #157
2024-06-12 15:06:14 +02:00
996e6a0ce5
fix(avs): repeated avs sync enqueue no longe violates duplicate db uniqueness constraints
2024-06-12 11:47:23 +02:00
da74b95729
fix(avs): fix #164 by removing companyPersonalNumber and companyDepartment upon ldap sync expiry
...
SYNCHRONISE_LDAP_EXPIRE may be null (do nothing) or some seconds (15897600 = half a year). If no successful LDAP synch happened for the specified time, a successful AVS (sic!) update will delete the companyPersonalNumber and companyDepartment
2024-06-11 15:42:24 +02:00
64b21d6fe6
chore(cache): add caching for simpleLinks and modal access
2024-06-11 12:53:17 +02:00
9fd80f2552
fix(avs): update email on manual company switch
...
towards #164
2024-06-11 12:12:56 +02:00
e6c57035f9
chore(firm): only show/link primary company for a user in several places
...
contributes to #164
2024-06-10 18:40:58 +02:00
bb101dee7b
fix(avs): company update no longer fails on duplicate key
2024-06-10 14:56:33 +02:00
e553ad4358
fix(avs): profile page correctly indicates automatic email and postal addresses
2024-06-07 17:42:05 +02:00
aa1d230e49
fix(avs): steps towards #164
...
- link avs nr to status on profile page
- link companies on profile page
- swap icons for isAutomatic
- improve jsonWidget number display for integers and small floats
2024-06-07 12:31:54 +02:00
ea0fa9a3fa
chore(avs): add more debug message for company updates failing
2024-05-27 17:21:28 +02:00
9451d90a9e
fix(avs): company update checks uniques and ignores those updates if necessary
2024-05-23 17:08:30 +02:00
ff2347b1c9
fix(avs): avs update on company shorthands working now
2024-05-17 18:06:16 +02:00
ccf9340449
fix(avs): deal gracefully with empty card status results
2024-05-17 12:05:08 +02:00
3c4a0b86c1
fix(avs): fix #76 allowing company changes and fix #69
2024-05-06 19:35:59 +02:00
5944efcb86
chore(avs): change to secondary company (WIP) form missing
2024-05-02 17:29:04 +02:00
fdbaa3c9d4
chore(avs): add function to change to secondary company
2024-04-30 17:45:29 +02:00
697979c277
fix(avs): fix #69 by redesigning live avs status page
2024-04-26 17:55:29 +02:00
a5dfd5e10f
refactor(avs): add more logging to AVS synch ops
2024-04-26 16:04:28 +02:00
6fd45f6896
refactor(avs): complete rewrite AVS synch
...
Three former background jobs could be removed
2024-04-25 17:07:12 +02:00
2e4e1a94c9
refactor(avs): rewrite AVS synch (WIP)
2024-04-24 18:01:44 +02:00
a52c8a6ad7
fix(avs): several minor bugfixes
...
- See notes in #158 for details on update change policy
- fieldLensVal was not working
- create index for deleted table prevented start
- some hlint errors
2024-04-22 18:19:07 +02:00
4f8850b3b4
fix(avs): fix #36 and remove dead code
2024-04-18 18:30:23 +02:00
b7af6312f9
refactor(avs): complete createAvsUserById
2024-04-18 18:02:16 +02:00
234dd28f48
refactor(avs): rework fraport email recognition
2024-04-18 13:32:00 +02:00
cb2778e206
refactor(avs): rework createAvsUserById, dealing with supervision (WIP)
2024-04-16 17:31:55 +02:00
a373abad26
refactor(avs): safe old card-no to perform pdf pin pass updates
2024-04-16 12:56:03 +02:00
3b7762f451
refactor(avs): rework createAvsUserById (WIP)
2024-04-16 11:40:55 +02:00
54c08cc64b
refactor(avs): rework upsertAvsUserByCard/Id
2024-04-12 17:27:46 +02:00
1f7c175a58
refactor(avs): rework guessAvsUser
2024-04-11 17:54:45 +02:00
4c29150371
chore(AVS): implement user avs update to primary company as outlined in graph in wiki
2024-04-08 18:31:29 +02:00
d213c8e4a1
chore(AVS): (WIP) implement user avs update to primary company
2024-03-22 12:24:08 +01:00
7a5917131c
chore(avs): WIP properly update userCompany upon AVS change
2024-03-21 16:55:23 +01:00
1c5ca24dc5
chore(avs): WIP keep supervision if company keeps email or address
2024-03-20 18:07:27 +01:00
4a51f94a8f
chore(avs): WIP update UserCompany accodring to AVS
2024-03-19 18:29:38 +01:00
b51f8a454a
chore(log): display admin problem table with actions on admin problem view
2024-03-18 18:01:36 +01:00
08d2f8c2fc
chore(log): add admin problem table
2024-03-13 18:00:39 +01:00
66eaa4f7dc
fix(build): minor error non-development code
2024-03-13 11:23:25 +01:00
724e4a0bec
fix(build): add import needed for production only
2024-03-13 08:30:54 +01:00
dcb947b1fb
refactor(email): eliminate userAddress function due to user company linked email
2024-03-12 13:02:38 +01:00
09d10e1ba2
refactor(user): empty postal uses high priority company address instead working
2024-03-08 18:06:52 +01:00
9985151002
refactor(user): empty postal uses high priority company address instead (WIP)
2024-03-07 18:43:43 +01:00
c179c03f9d
chore(avs): update company supervisors on avs user update
2024-03-06 13:41:18 +01:00
0b7175c26c
refactor(avs): company upsert done
...
updating supervision is still a todo
2024-02-27 17:56:58 +01:00
c382be9325
fix(avs): invalidate contact cache after licence writes
2024-02-19 17:28:40 +01:00
d578e80282
fix(avs): disable caching by 0s no longer causes an exception
2024-02-19 10:57:09 +01:00
57a4aeb475
refactor(avs): remove need for undecideable super classes by simply using a sensible class definition
2024-02-19 09:39:06 +01:00
66ef4066b3
chore(avs): undecidableSuperclasses to sidestep consequences of type erasure
2024-02-14 13:28:19 +01:00
b39f69df12
chore(avs): remove avs_cards, add generic queries WIP
2024-02-13 19:05:10 +01:00
ad2375b338
fix(avs): fix #152 by providing new online avs card filter throughout
2024-02-13 17:05:30 +01:00
ef36e22f76
chore(avs): make avs timeouts setting configurable
2024-02-13 16:25:58 +01:00
ce4869f155
Merge branch 'master' into fradrive/cr3
2024-02-13 10:21:09 +01:00
d4f7dce716
chore(avs): card no filter basic functionality WIP compiles
2024-02-12 19:02:57 +01:00
42695cf5ef
fix(sql): remove potential bug in relation to missing parenthesis after not_
2024-02-12 12:00:40 +01:00
482dbe5c4e
chore(dbtable): add FilterColumnIO and proof-of-concept
...
This commit adds a new type of filter to dbtables in module Pagination. The filter can perform an arbitrary IO action on its arguments before producing an sql/esqueleto filter expression.
Also, we turn some unnecessarily monadic code pure.
2024-02-07 17:38:53 +01:00
bbb9f9fadb
chore(health): telling interface table compiles
2024-02-02 17:16:19 +01:00
d1fce58ec2
refactor(utils): minor changes for timeoutHandler
2024-01-30 15:32:46 +01:00
4154b1f26b
chore(utils): add timeoutHandler to run a sub-handler to be killed by timeout
2024-01-30 14:44:43 +01:00
de45731a9b
refactor(company): supervison and company tables changed
...
- company avs id must be unique now, companies with id 0 are deleted
- user supervision can be annotated with company and or a reason, used to avoid accidental supervision relations; company supervision resets ignore non-company supervisions
2024-01-22 18:54:33 +01:00
f40448cd31
refactor(avs): minor code cleaning
2024-01-19 16:59:42 +01:00
9bf38d8198
chore(avs): email updating implemented
2024-01-18 17:19:44 +01:00
e8d66a4734
chore(avs): lenses for virtual avs fields created
2024-01-17 19:04:42 +01:00
45c3f11a83
chore(avs): add failure notices after contact update
2024-01-12 18:13:23 +01:00
cb807fce98
refactor(avs): using MaybeT
2024-01-12 16:57:17 +01:00
b5340a18a2
chore(avs): heterogeneous list working
2024-01-12 15:48:54 +01:00
61aba7e515
updateAvsUser (partial) requires migration
2024-01-11 19:23:35 +01:00
88f24fe6f1
fix(firm): improve supervisor filter by caching
2023-12-19 18:15:09 +01:00
f36f234c42
chore(firm): improve efficiency of foreign supervisor filter
2023-12-13 16:25:11 +01:00
0b9a1257db
chore(admin): show lms and sap interface status on problem page
2023-12-07 13:16:55 +01:00
a15862ea72
fix(print): keep print jobs on user merge and lms id deletion
2023-12-04 16:03:31 +01:00
fcc802753a
chore(lms): remove obsolete lms handlers v1
2023-12-01 18:11:17 +01:00
6aa06292b8
Merge branch 'fradrive/company'
2023-12-01 17:02:55 +01:00
b1ce55597e
chore(lms): remove debug code
2023-12-01 13:29:38 +01:00
75e4975c52
refactor(mail): course and firm message are sent only once to each supervisor
2023-11-30 18:32:25 +01:00
92aca1b830
refactor(performance): disable modalAccess use for known admins
...
modalAccess displays a link to modal only
if the user has the rights to follow that link.
However, for large dbTables this checking takes
too long. So we use a conventional modal instead again.
Worst-case: some non-admins are shown links that they cannot follow
2023-11-28 15:32:33 +01:00
640a2e61d1
chore(messages): Add SomeMessages newtype
...
SomeMessages provides a RenderMessage instance for a list of messages.
2023-11-27 12:29:25 +01:00
fcceef265d
Merge branch 'fradrive/company'
2023-11-24 17:45:04 +01:00
c5c4a62de0
chore(firm): various
...
- multiSelectField working
- section hiding demo working
- modal links access rights checking
2023-11-22 17:59:15 +01:00
60fc5f8b63
Merge branch 'fradrive/company' into 'master'
...
Fradrive/company
Closes #67
See merge request fradrive/fradrive!23
2023-11-22 08:08:48 +00:00
83bab6b86b
chore(firm): implement fix #67 Maske Firmen
2023-11-21 18:45:51 +01:00
b9f2d3bda4
chore(firm): add setting for global communications cc
2023-11-21 16:53:06 +01:00
975c9c6c00
Merge branch 'fradrive/company'
2023-11-17 17:55:35 +00:00
44c4b3b6a8
chore(firm): implement several table actions; add supervisor form
2023-11-17 18:54:34 +01:00
715b751363
chore(firm): add columns and filters and refactor some
2023-11-16 18:49:41 +01:00
8c4f848675
fix(avs): preserve unset pin passwords in update
2023-11-15 15:30:37 +01:00
698a9c5497
refactor(firm): msg, titles and headings
2023-11-14 17:37:05 +01:00
65cdc8ddfe
fix(firm): firm messaging now works fine
2023-11-14 16:55:14 +01:00
42ff02d27e
fix(firm): sending messages works, but not test messages
2023-11-14 12:57:51 +01:00
25c4ba7136
chore(messaging): add debugging statements
2023-11-13 18:07:30 +01:00
a6fb00f072
minor refactor
2023-11-13 17:10:27 +01:00
674f6fd81f
fix(build)
2023-11-10 08:01:02 +00:00
5d8802732a
debug(firm): attempt to find error when using firm communication
2023-11-09 18:07:39 +01:00
f627de503e
Merge branch 'master' into fradrive/company
2023-11-08 17:58:31 +01:00
9ee80f8f7f
chore(lms): message action done for firm views
2023-11-08 17:41:59 +01:00
a98c3190e0
chore(firm): messaging almost complete - illegal variable name splicing dispatch
2023-11-08 13:00:31 +01:00
631d157688
chore(firm): add messaging action (WIP)
2023-11-07 18:38:21 +01:00
069561763c
refactor(firm); supervisor table sorting and company column
2023-11-06 12:17:11 +01:00
d7a94b9619
chore(lms): include lms ids in qualification audit log events triggered by e-learning
2023-11-03 14:41:31 +01:00
ce7597238d
fix build
2023-10-31 17:47:52 +01:00
13ee3e7315
chore(firm): separate firm name nr filters
2023-10-30 17:18:04 +01:00
ff176faa12
chore(users): remove duplicated link from company personal number
2023-10-27 17:28:00 +02:00
0ab1cd17be
chore(firm): add contact preference column
...
and make firm nr filter exact
2023-10-27 13:34:37 +02:00
a28786412e
chore(firm): add firm-all filters and code cleaning
2023-10-24 16:13:31 +00:00
dfa03f8ba8
refactor(firm): dbTable form for firm all with selection box working now
2023-10-24 10:07:12 +00:00
603f04f026
Merge branch 'master' into fradrive/company
2023-10-20 16:45:42 +00:00
5d8d8cf17e
fix(course): grant qualifications now issues and unblocks
2023-10-19 11:21:35 +00:00
92e83475a9
chore(firm): link firms throughout
2023-10-18 15:45:59 +00:00
e3b6a7e4c6
chore(qualification): block expired qualification users explicitly
2023-10-06 11:16:49 +00:00
f776aaaef5
chore(lms): prefix lms-ident with qualification shorthand
2023-10-06 09:14:19 +00:00
60644528fc
refactor(lms): show deletion days parameter and ensure audit log period is accounted for
2023-09-28 15:05:04 +00:00
8b0218ba89
refactor(qualification): more efficient correct code to discern expiry notifications
2023-09-28 11:29:02 +00:00
cdb23115ef
refactor(lms): clean lms handling code
2023-09-27 15:36:05 +00:00
bb708ca540
fix(qualifications): latest block could ignore itself
2023-09-25 15:46:48 +00:00
f7b2f35421
refactor(lms): clean code for nicer links in lms status widget
2023-09-25 15:39:09 +00:00
81b821c88a
chore(lms): better links in lms status widget
2023-09-25 15:25:38 +00:00
61d414e3d5
chore(qualifications): restrict regular renewal to half valid duration
2023-09-21 14:32:32 +00:00
e59a2fc373
Merge branch 'test'
2023-09-21 13:02:14 +00:00
a320ed498a
chore(lms): fix build erroneous signature
2023-09-21 09:08:35 +00:00
273cc288d4
chore(lms): more discreet debug info for simultaneous blocks
2023-09-21 08:17:43 +00:00
11752dc5ac
fix(lms): treat simultaneous blocks/unblocks correctly
2023-09-20 14:52:01 +00:00
29e5ed25df
Merge branch 'test'
2023-09-20 12:29:41 +00:00
dfa07a95eb
fix(time): midnight timezone conversion bug eliminated
2023-09-20 11:14:47 +00:00
520e649fc8
chore(lms): minor refactoring for selectValidQualifications
2023-09-20 09:51:43 +00:00
2bdb85faa1
chore(lms): full timestamps in LmsStatus too
2023-09-19 18:31:20 +00:00
ecd1a0fc21
fix(lms): simultaneous block/unblock lets unblock win in all situations
2023-09-19 12:56:19 +00:00
bf53c639e7
chore(table): allow compulsory multi filter criteria
2023-09-06 15:58:18 +00:00
4754ad4b80
chore(lms): allow table filtering by multiple LMS ids and names in several views
2023-09-01 15:11:26 +00:00
f7ad290053
chore(lms): clean learner icons and sorting
2023-08-31 12:22:47 +02:00
a452b032c4
fix(lms): negate learner locking condition
2023-08-30 07:44:38 +00:00
da26901f8b
chore(lms): minor fix reset tries conditions
2023-08-29 15:26:13 +00:00
69d689fe90
chore(lms): fix #93
2023-08-29 11:27:35 +00:00
d9a6eab833
chore(lms): reset tries mechanism implemeneted, display still todo
2023-08-28 15:48:04 +00:00
2909deb4f6
chore(lms): WIP reset tries and lock logic part 1
2023-08-25 15:31:26 +00:00
c6f2b21927
Merge branch 'test' into fradrive/lms-type-refactor
2023-08-25 14:10:55 +00:00
34ada53de0
fix(build): refix test commits somehow
2023-08-25 13:58:21 +00:00
3085b8d91d
chore(lms): implement report dispatch job DONE
2023-08-25 12:35:21 +00:00
12f4bcfa1b
chore(lms): WIP implement report dispatch job, PART 2
2023-08-24 15:45:54 +00:00
9c156f1b58
chore(lms): WIP implement report dispatch job
2023-08-23 15:42:55 +00:00
8ecdaca4d6
Quickfix for apc sever seeing ligatures that do not exist
2023-08-22 08:56:43 +00:00
3014b68992
Merge branch 'master' into test
2023-07-26 08:59:44 +00:00
5397c7be35
fix(qualification): new block/unblock mechanism working now
2023-07-26 08:59:08 +00:00