Commit graph

304 commits

Author SHA1 Message Date
Sebastian Pravda
a453117e89
feat: decrypt all parents details 2022-12-05 16:07:11 +01:00
Sebastian Pravda
617cddd698
feat: parents as vector 2022-12-05 15:57:50 +01:00
Sebastian Pravda
1467f0b8c6
feat: seperate candidate and parent 2022-12-05 15:42:59 +01:00
Sebastian Pravda
1262eda871
feat: application details structure 2022-12-05 15:21:30 +01:00
Sebastian Pravda
52c9671afb
feat: personal id number in csv 2022-12-04 15:43:58 +01:00
Sebastian Pravda
4a9d478e8c
fix: remove unsused structs 2022-11-30 15:18:52 +01:00
Sebastian Pravda
19e1f5a3e1
fix: remove responses.rs 2022-11-30 15:15:25 +01:00
Sebastian Pravda
52417d3c87
refactor: models, serde camelCase 2022-11-30 15:13:02 +01:00
Sebastian Pravda
4620ed2aeb
refactor: move filetype.rs, util.rs to utils directory 2022-11-27 23:13:01 +01:00
Sebastian Pravda
7d5fa12465
refactor: code cleanup 2022-11-27 23:07:01 +01:00
Sebastian Pravda
9957ea232f
refactor: code cleanup 2022-11-27 22:01:11 +01:00
Sebastian Pravda
d9f4090c6a
feat: set personal id number when user is created 2022-11-27 12:08:35 +01:00
Sebastian Pravda
8a9b7a4ae4
refactor: reset password response 2022-11-27 11:44:08 +01:00
Sebastian Pravda
314138a111
feat: new create candidate response 2022-11-27 11:25:36 +01:00
Sebastian Pravda
6a3158d958
refactor: base candidate response 2022-11-27 11:19:15 +01:00
Sebastian Pravda
02303d4b31
feat: use reference as constructor parameter 2022-11-27 11:03:37 +01:00
Sebastian Pravda
6499c8ce96
refactor: personal_id_number in ApplicationDetails 2022-11-27 10:55:16 +01:00
Sebastian Pravda
492fc5618f
feat: logout only current session, admin logout endpoint 2022-11-25 23:02:25 +01:00
Sebastian Pravda
35f591fb67
feat: candidate logout endpoint 2022-11-24 20:11:57 +01:00
Sebastian Pravda
8f282febc8
fix: not deleting sessions 2022-11-24 20:11:56 +01:00
Sebastian Pravda
2b3fc2e274
fix: add missing files 2022-11-23 18:14:23 +01:00
Sebastian Pravda
13d66c719f
feat: package cli function
- exports all personal data into csv file
 - exports all portfolios into specified directory
 - exports PostgreSQL database if specified
2022-11-23 18:00:59 +01:00
Sebastian Pravda
be61af2b05
refactor: export csv in core/
- feat: export candidate's application id
2022-11-23 16:07:55 +01:00
Sebastian Pravda
b2cd902e98
feat: cli csv export 2022-11-23 11:46:28 +01:00
Sebastian Pravda
9a30f1ff8a
feat: list candidates improvements
- sorting
 - pagination
2022-11-21 21:03:22 +01:00
Vojtěch Jungmann
c4092c3d29
Merge pull request #54 from EETagent/rework_api_tests 2022-11-21 18:15:33 +01:00
Sebastian Pravda
f84748fccb feat: submission progress endpoint 2022-11-21 16:19:36 +01:00
Sebastian Pravda
b8ae1a898d
feat: candidate endpoints tests 2022-11-20 21:17:45 +01:00
Sebastian Pravda
1bfc8f68c2
feat: return 401 error instead of panicking 2022-11-20 21:17:08 +01:00
Sebastian Pravda
6d8319d784
feat: api tests setup 2022-11-20 15:43:49 +01:00
Sebastian Pravda
ce5703497e
feat: get_portfolio test 2022-11-18 15:20:21 +01:00
Sebastian Pravda
f8938e65f7
fixed: portfolio letter 2022-11-18 11:02:13 +01:00
Sebastian Pravda
64bbd3d946
refactor: method params 2022-11-18 01:07:28 +01:00
Sebastian Pravda
a545de458d
refactor: method order, comments 2022-11-18 00:56:54 +01:00
Sebastian Pravda
77d5dd7834
refactor: portfolio service 2022-11-18 00:49:43 +01:00
Sebastian Pravda
7a8affb9b1
feat: candidate details tests 2022-11-17 23:47:33 +01:00
Sebastian Pravda
139248dc4c
refactor: struct name 2022-11-17 20:47:11 +01:00
Sebastian Pravda
d8a269edd3
feat: do not encrypt field of study; list candidates filtering 2022-11-17 20:41:03 +01:00
Sebastian Pravda
315966acba
feat: revoke all candidate sessions on password reset 2022-11-17 20:00:40 +01:00
Sebastian Pravda
2ccbba4e11
feat: reencrypt candidate details on password reset 2022-11-17 19:55:04 +01:00
Sebastian Pravda
45187147d8
feat: password reset 2022-11-17 19:28:04 +01:00
Sebastian Pravda
55f06c9de1
style: remove commented code block 2022-11-17 18:48:26 +01:00
Sebastian Pravda
0ffe203c5a
feat: get candidate admin endpoint 2022-11-17 17:44:50 +01:00
Sebastian Pravda
4375b9d932
feat: list candidates with id, name, surname, study 2022-11-17 17:44:50 +01:00
Sebastian Pravda
b6e4af6ef7
refactor: methods order 2022-11-17 17:44:50 +01:00
Sebastian Pravda
8ef28a65c4
feat: admin login test, code cleanup 2022-11-17 17:42:19 +01:00
EETagent
aa1df5c74e fix: reset env after test run 2022-11-17 12:50:19 +01:00
EETagent
f6a28aa226 feat: include custom errors in test coverage 2022-11-17 12:42:20 +01:00
EETagent
47e16ab48a feat: candidate details tests 2022-11-17 12:37:44 +01:00
EETagent
fe1ddf9342 feat: sqlite memory connection test 2022-11-17 12:25:21 +01:00
EETagent
225583f552 feat: query/mutation tests, lint warnings removal 2022-11-17 00:10:56 +01:00
EETagent
e2e9546120 fix: fix tests, same APPLICATION_ID for all test cases 2022-11-16 20:29:59 +01:00
EETagent
5431335a2a feat: add serial macro for tests, add more tests 2022-11-16 20:22:43 +01:00
EETagent
ee12ad3925 refactor: refactor write tests 2022-11-16 17:45:12 +01:00
EETagent
b9f842f258 feat: init file write tests 2022-11-16 17:08:53 +01:00
EETagent
e4dda4581d feat: specify file root dir in env 2022-11-16 16:56:16 +01:00
EETagent
eb5fc405e2 refactor: are_candidate_details_complete name 2022-11-16 16:42:18 +01:00
EETagent
8560c0b3a6 fix: do not remove cache dir completely 2022-11-16 16:39:24 +01:00
EETagent
fc614eadb8 feat: add cache validation functions 2022-11-16 16:38:23 +01:00
EETagent
e9f3a8042c refactor: refactor is_portfolio_prepared 2022-11-16 16:26:42 +01:00
EETagent
530994f33d feat: load cache into memory before deleting 2022-11-16 16:21:03 +01:00
EETagent
7e00d302d2 fix: correct error for incomplete portfolio 2022-11-16 16:09:28 +01:00
EETagent
a93549c906 fix: portfolio cleanup after unsuccessful request 2022-11-16 15:35:49 +01:00
EETagent
5821c7c190 fix: remove unwrap 2022-11-16 15:35:13 +01:00
EETagent
abfcf9f3eb refactor: refactor routes and function names 2022-11-16 14:35:36 +01:00
EETagent
62e341c26e feat: add is_submitted 2022-11-16 14:21:29 +01:00
EETagent
5bac182f83 fix: portfolio submit fix 2022-11-16 14:11:10 +01:00
EETagent
39aa1f0ad6 fix: possible crypto file write fixes 2022-11-16 14:11:01 +01:00
Sebastian Pravda
8579cc9987
feat: move 'get_sqlite_conn' to util.rs 2022-11-14 23:14:55 +01:00
Sebastian Pravda
f1692df760
refactor: use '? ' as much as possible 2022-11-14 23:04:46 +01:00
EETagent
b0e2129cf4 fix: rebasing fixes 2022-11-14 22:02:11 +01:00
EETagent
ad63cc2ff5 fix: mapp_err refactor & error fix 2022-11-14 21:55:51 +01:00
EETagent
c352dc0212 feat: decrypt portfolio 2022-11-14 21:55:51 +01:00
EETagent
6d386e90a4 feat: portfolio encryption 2022-11-14 21:55:51 +01:00
EETagent
c20f07e268 feat: submit portfolio 2022-11-14 21:55:51 +01:00
EETagent
91125ce7f1 feat: check if portfolio is complete 2022-11-14 21:55:29 +01:00
EETagent
4a8c520cae feat: implement folder & file creation 2022-11-14 21:55:29 +01:00
EETagent
7e3b96e41c refactor: refactor errors, define only codes 2022-11-14 20:58:38 +01:00
EETagent
54e88de2a9 refactor: remove some unwraps from crypto 2022-11-14 14:20:31 +01:00
EETagent
e1ee5b796a feat: convert crypto to our service error 2022-11-14 14:06:48 +01:00
EETagent
98c59694a7 feat: thiserror PoC 2022-11-14 13:47:14 +01:00
Sebastian Pravda
3bef8d9534
fix: create candidate error 2022-11-12 11:42:39 +01:00
Sebastian Pravda
2d9b755e5a
feat: async create candidate, async add details 2022-11-12 11:38:56 +01:00
Sebastian Pravda
c238b8ec45
feat: candidate fk on parent 2022-11-12 11:27:13 +01:00
Sebastian Pravda
12d25c9ffc
refactor: rename to aplication details 2022-11-12 00:13:32 +01:00
Sebastian Pravda
ef2cca94ea
refactor: decrypt private key method 2022-11-12 00:11:16 +01:00
Sebastian Pravda
97b087f4c2
refactor: application service 2022-11-11 23:59:16 +01:00
Sebastian Pravda
9e1ba16ef6
feat: parent details 2022-11-11 23:29:09 +01:00
Sebastian Pravda
3dff252a0a
feat: birthdate in candidate details 2022-11-11 19:44:51 +01:00
Sebastian Pravda
22ea58d521
refactor: candidate details enc, dec methods 2022-11-11 19:09:00 +01:00
Sebastian Pravda
5b70d8df4f
refactor: candidate variables 2022-11-11 18:53:01 +01:00
Sebastian Pravda
015607322d
refactor: CandidateDetails 2022-11-11 18:50:43 +01:00
Sebastian Pravda
e3a37dd59b
refactor: encrypted user details 2022-11-11 18:44:42 +01:00
EETagent
4b0416695d feat: add private key cookie 2022-11-10 20:05:17 +01:00
Sebastian Pravda
a7c01fd8c1 Merge branch 'master' into get_candidate_details 2022-11-09 01:27:44 +01:00
Sebastian Pravda
23c1a890c0 feat: is_set_up method 2022-11-09 00:38:37 +01:00
Sebastian Pravda
a575556bdd feat: return ServiceError instead of using unwraps 2022-11-08 14:57:25 +01:00
Sebastian Pravda
7b4707fae6 feat: get candidate details 2022-11-08 01:22:10 +01:00
EETagent
78d77cd735 feat: initial work on file upload 2022-11-07 19:53:04 +01:00
EETagent
766f3345a2 fix: argon2 test 2022-11-06 18:58:23 +01:00
Sebastian Pravda
ced7569086 refactor: change enc user details struct name 2022-11-06 18:58:23 +01:00
Sebastian Pravda
b6783c6de4 refactor: user details 2022-11-06 18:58:23 +01:00
Sebastian Pravda
e7f97ebd2c feat: decrypt user details 2022-11-06 18:58:23 +01:00
Sebastian Pravda
46dfbddad6 feat: add details endpoint 2022-11-06 18:58:23 +01:00
Sebastian Pravda
43fe565fa2 feat: json deserialization in core 2022-11-06 18:58:23 +01:00
EETagent
281ca22886 refactor: massive admin & candidate sessions rework, put admin back to own table 2022-11-06 15:17:21 +01:00
EETagent
5ef966341f feat: improve error handling, add crypto errors 2022-11-05 17:25:29 +01:00
EETagent
0a33695210 feat: remove structs in favor of function arguments, tokio::join for async encryption 2022-11-05 17:03:25 +01:00
EETagent
2833d9850b feat: parent mutation 2022-11-05 17:03:25 +01:00
EETagent
8b3305dae7 feat: admin query 2022-11-05 17:03:25 +01:00
EETagent
7bdec2482e fix: update hash, remove structs 2022-11-05 17:03:25 +01:00
Sebastian Pravda
2bd112beb8
feat: test put_user_data 2022-11-04 19:06:37 +01:00
Sebastian Pravda
713d978f2c
feat: put encrypted user personal data 2022-11-04 19:06:37 +01:00
Sebastian Pravda
4d4beeb686
fix: application_id in tests 2022-11-04 18:51:57 +01:00
Sebastian Pravda
36f751b36e
refactor: change variable names 2022-11-04 17:22:17 +01:00
Sebastian Pravda
ed783859b7
feat: validate application_id 2022-11-04 17:19:13 +01:00
Sebastian Pravda
702a79d1cf
feat: AdminService struct 2022-11-04 12:26:27 +01:00
Sebastian Pravda
9a422a17cd
refactor: session service
visible only in services mod
2022-11-04 12:26:26 +01:00
Sebastian Pravda
3b9bf7cdda
refactor: session auth public only in crate 2022-11-04 12:26:26 +01:00
Sebastian Pravda
05369b977a
feat: improve error handling
return status codes, messages
2022-11-04 12:26:26 +01:00
Sebastian Pravda
56f64a43c8
refactor: errors, services 2022-11-04 12:26:26 +01:00
Sebastian Pravda
b582d2e8e1
refactor: session service 2022-11-04 12:26:25 +01:00
Vojtěch Jungmann
eb04334081
Merge pull request #26 from EETagent/guards_routes_upload
WIP: Guards & Routes
2022-11-04 12:23:56 +01:00
Sebastian Pravda
891d498e76
style: comments 2022-11-01 17:32:51 +01:00
EETagent
493e3a3077 refactor: massive refactoring of query and mutation 2022-11-01 11:35:05 +01:00
EETagent
b142b3711f feat: improve argon2 security, (0.01s execution time in release mode, still fast) 2022-10-31 13:01:59 +01:00
EETagent
f77cd2aa1c chore: AES information 2022-10-30 22:02:33 +01:00
Sebastian Pravda
0731700f17
fix: use aes decrypt in test 2022-10-30 13:46:09 +01:00
Sebastian Pravda
8b26c14e8c
refactor: use aes encrypt function 2022-10-30 13:40:08 +01:00
Sebastian Pravda
c417abaa6a
Merge branch 'master' into refactor_requests 2022-10-30 13:27:03 +01:00
Sebastian Pravda
e09a347d49
fix: create_candidate parameters in tests 2022-10-30 13:13:46 +01:00
Sebastian Pravda
d0825b80d5
feat: PIdN not null 2022-10-30 13:06:45 +01:00
Sebastian Pravda
79ab4d0ed4
fix: candidate tests json 2022-10-30 13:06:07 +01:00
EETagent
b561714697 fix: aes256 key convert early return 2022-10-30 08:20:36 +01:00
EETagent
33ee9a50a2 feat: use more secure AES implementation 2022-10-30 01:28:57 +02:00
EETagent
764f762bc5 refactoring: formatting & aes key test improvement 2022-10-30 01:09:13 +02:00
EETagent
9221ed0d64 feat: ultra fast AES encryption 2022-10-30 00:49:43 +02:00
Sebastian Pravda
a36290987d
feat: encrypted PIDN in db 2022-10-29 22:52:46 +02:00
EETagent
9cffa8db9f fix: improve test_random_8_char_string 2022-10-29 21:10:39 +02:00
Vojtěch Jungmann
ed0ef793e0
Merge pull request #20 from EETagent/session_improvements
Improve session managment
2022-10-29 20:55:20 +02:00
Sebastian Pravda
9b10b86a3d
feat: add pub, encrypted privkey to db 2022-10-29 19:56:09 +02:00
Sebastian Pravda
137039df44
feat: limit n of sessions in db
save client's ip address
2022-10-29 18:33:37 +02:00
Sebastian Pravda
98e506e5ff
Merge pull request #17 from refresh_token_auth 2022-10-29 12:50:30 +02:00
Sebastian Pravda
7fdb0de11b
refactor: remove jwt completely 2022-10-29 12:31:39 +02:00
Sebastian Pravda
98110dcf96
refactor: change ip address inet type to string 2022-10-29 12:24:45 +02:00
Vojtěch Jungmann
3bc9f8c089
Merge pull request #16 from EETagent/age_file_io
I/O file functions with age encryption
2022-10-29 12:23:28 +02:00
Sebastian Pravda
5e36b7b3c8
refactor: session entity structure 2022-10-29 12:13:17 +02:00
Sebastian Pravda
59e028b0ed
refactor: rename get_session to new_session 2022-10-29 11:32:14 +02:00
Sebastian Pravda
433e45e315
feat: sync all in encrypt decrypt test 2022-10-29 11:27:32 +02:00
EETagent
96be1f4d83 feat: async tempfile for tests 2022-10-28 23:49:33 +02:00