Commit graph

276 commits

Author SHA1 Message Date
realaravinth
b6445000fe
feat: migrate delete captcha to use db_* interface 2022-05-12 19:56:23 +05:30
realaravinth
0c1a82b4c5
feat: migrate tests utils to use db_* interface 2022-05-12 19:33:26 +05:30
realaravinth
81ad030338
feat: migrate captcha exists to use db_* interface 2022-05-12 19:32:08 +05:30
realaravinth
bd75fc625c
feat: migrate adding captcha to use db_* interface 2022-05-12 19:10:04 +05:30
realaravinth
0d3d552ae0
feat: migrate create captcha to use db_* 2022-05-12 18:59:44 +05:30
realaravinth
049f2b6eea
feat: migrate update secret to use db_* interface 2022-05-12 10:42:55 +05:30
realaravinth
25b3d316db
feat: migrate get password and get secret to use db_* interface 2022-05-11 20:21:55 +05:30
realaravinth
f165581e17
chore: lints 2022-05-11 20:11:11 +05:30
realaravinth
96995bc068
feat: migrate get password to use db_* interface 2022-05-11 20:11:02 +05:30
realaravinth
39ee2ad221
feat: migrate update username to use db_* interface 2022-05-11 20:02:03 +05:30
realaravinth
748f48e0d2
feat: migrate update password to use db_* interface 2022-05-11 19:52:20 +05:30
realaravinth
f398c4b61c
feat: migrate get password to use db_* interface 2022-05-11 18:54:36 +05:30
realaravinth
78eac8b6b7
feat: migrate email update to use db_* interface 2022-05-11 15:26:00 +05:30
realaravinth
621e400ea8
feat: migrate email exists to use db_* interface 2022-05-11 13:33:30 +05:30
realaravinth
1cd4ce7318
feat: migrate username exists to use db_* interface 2022-05-11 13:33:29 +05:30
realaravinth
9f91854c4d
feat: migrate account deletion to use db_* interface 2022-05-11 13:33:29 +05:30
realaravinth
4248959b13
feat: migrate user regisration to use db_* 2022-05-11 13:33:29 +05:30
realaravinth
8dde022851
feat: define interface for username registration" 2022-05-11 13:33:29 +05:30
realaravinth
43aac949e3
feat: convert db errors to service errors 2022-05-11 13:33:29 +05:30
realaravinth
f337721b25
feat: move health endpoint to use ping from db_* 2022-05-11 13:33:29 +05:30
realaravinth
79506a93b9
feat: load db_* db connection 2022-05-11 13:33:29 +05:30
realaravinth
1d8554cb36
chore: rust fmpt 2022-05-11 13:33:29 +05:30
realaravinth
246dcfddb7
feat: mv db migrations to workspace 2022-05-11 13:33:29 +05:30
realaravinth
56225ae2e4
chore: actix-web updates: replace deprecated methods 2022-05-11 13:33:28 +05:30
realaravinth
91c6f77cab
chore: update actix-* deps 2022-05-07 16:10:14 +05:30
realaravinth
6d6b494c6f
feat: rm middleware mod and migrate codebase to use actix_auth_middleware 2022-05-07 12:30:00 +05:30
realaravinth
a668fafa62
feat: migrate v1 api mod to use actix_auth_middleware 2022-05-07 12:29:37 +05:30
realaravinth
b057e48d72
feat: migrate pages mod to use actix_auth_middleware 2022-05-07 12:29:02 +05:30
realaravinth
abe494b6e5
feat: upadte cache-busted 2022-05-07 12:28:37 +05:30
realaravinth
fc8a1670d2
update copyright notice 2022-01-08 22:16:05 +05:30
realaravinth
c46b3f4f4c
Implement easy edit view
When user tries to visit this view without an easy configuration
available, i.e, user had created the CAPTCHA using advance view and no
TrafficPattern is available in database, the user will be automatically
redirected to the advance edit page.

But the default edit link everywhere is to the easy edit view.
2021-12-18 21:01:19 +05:30
realaravinth
708a157ee1
rm comments 2021-12-18 19:39:59 +05:30
realaravinth
784aa26dbb
mv edit sitekey into advance edit sitekey 2021-12-18 18:19:23 +05:30
realaravinth
a73542cf18
implement easy sitekey addition 2021-12-18 16:42:27 +05:30
realaravinth
fa9762200e
mv sitekey edit to easy edit 2021-12-18 16:41:00 +05:30
realaravinth
5a49940b89
Get sitekey routes using methods on pages::panel::sitekey::routes::Sitekey
for consistency purposes
2021-12-18 16:00:09 +05:30
realaravinth
f15df541c1
rm url field from DatabaseBuilder 2021-12-18 15:33:17 +05:30
realaravinth
fe1fc3fb20
address clippy lints 2021-12-18 14:10:05 +05:30
realaravinth
855dbc60ef
Fixes #8
```
$ cargo test
<--- snip --->
 thread panicked while panicking. aborting.
     Running unittests (target/debug/deps/tests_migrate-7d90f83f506b1b25)
 ```

gdb revealed that demo::demo_account_works receives a SIGKILL due to a
failed test. No idea why it didn't fail the usual way. The part where
the test fails hits an endpoint with the wrong datatype payload, it
should have failed with a 404 when the status was asserted but it
didn't. Fixing that fixed #8.

Additionally, all demo user functionality was restructured to include an
abort functionality, which can be used to kill the loop that deletes and
creates demo user throughout the runtime of the app.
2021-12-18 13:53:05 +05:30
realaravinth
73ce2d1cb1
refactor captcha.rs and levels.rs and rm duration routes 2021-12-16 20:46:50 +05:30
realaravinth
cf4a0f9b73
Update CAPTCHA configuration by updating user provided traffic pattern 2021-12-16 18:15:15 +05:30
realaravinth
05f7e81c21
rename from_user_provided_traffic_pattern to create_easy
isolate non-async test in separate module
2021-12-16 17:47:30 +05:30
realaravinth
b2297eab6d
mv add form into advance 2021-12-10 06:16:38 +05:30
realaravinth
5afa531bb8
build sass using dart-sass, bypassing css extractor 2021-12-10 06:16:03 +05:30
realaravinth
54b14291ec
Implement CAPTCHA configuration estimation from avg, peak and
broke_my_site_traffic

The above metrics are sourced from the user and are stored in the
database to reuse at a later point in time when the mCaptcha instance's
admin changes suggested configuration.

I'm not sure if I want to recompute configuration every time the admin
updates suggested configurations or give the user an option to recompute
based on latest trends. If we recompute on every update, then should the
admin choose very high difficulty_factors then it would hold back the
user's visitors, which is not nice. But there should also be an option
to rerun estimates when older configuration no longer works properly.
2021-12-03 14:26:23 +05:30
realaravinth
42544ec421
rename pow section in settings to captcha and add options to configure
suggested difficulty factors for use in CAPTCHA configurations
estimates

The current CAPTCHA configuration panel requires the user to provide
difficulty factor <--> visitor threshold mapping, which can be tedious
if the user isn't familiar with those parameters. Also, it could lead to
ineffective limiting from mCaptcha's side, should it be configured
improperly.

So an estimate computed from well known statistics like peak, avg and
broke-my-site traffic could go a long way.
2021-12-03 14:21:18 +05:30
realaravinth
032f6040b8
fix clippy lints 2021-12-03 13:41:24 +05:30
realaravinth
b5af9ee259
it appears actix-web's scope behaviour has changed in the latest beta
release:

Routes 404'd when scope contained trailing slash like so:
let scope = "/api/v1/pow/";
web::scope(scope)//

So had to rm trailing slash in scope
2021-11-29 17:33:08 +05:30
realaravinth
428d60ebb0
setup openapi spec build chain 2021-10-08 15:55:53 +05:30
realaravinth
9afb63c738
use yaml directly for displaying open api spec 2021-10-08 15:36:42 +05:30
realaravinth
53720ff740
frontend linting 2021-10-08 15:24:29 +05:30
realaravinth
f7afc72d81
update levels in cache when db is updated 2021-08-31 13:54:05 +05:30
realaravinth
a8c3eaa617
clean up systemgroup interface 2021-08-20 19:17:40 +05:30
realaravinth
068c49080e
handle libmcaptcha actor errors 2021-08-20 18:15:55 +05:30
realaravinth
6ef941f73d
update username 2021-08-13 18:58:04 +05:30
realaravinth
595e79a014
update sqlx data, delete user in username_change test 2021-08-12 17:22:41 +05:30
realaravinth
a65b1c219c
username update 2021-08-12 17:13:17 +05:30
realaravinth
751a1046fb
add sitekey helper in list sitekey page 2021-08-12 08:38:09 +05:30
realaravinth
78ebc46c64
register demo user only when it's absent 2021-08-12 08:26:49 +05:30
realaravinth
02b62fb1d0
demo user banner 2021-08-09 12:23:06 +05:30
realaravinth
147f563ec8
demo user task 2021-08-09 11:56:25 +05:30
realaravinth
3c72d27b36
demo user 2021-08-09 10:37:19 +05:30
realaravinth
a5558e4b6f
clippy fixes and env docs update 2021-08-08 18:29:17 +05:30
realaravinth
65ffc37549
strict transport policy heaer 2021-08-05 21:05:27 +05:30
realaravinth
6763867cbe
make billing section optional 2021-08-04 19:24:35 +05:30
realaravinth
1d759fcb25
captcha stats 2021-07-27 15:28:21 +05:30
realaravinth
8830961e04
stats endpoint 2021-07-25 21:15:59 +05:30
realaravinth
0a8d36dc9f
sitemap generates URL 2021-07-25 20:15:44 +05:30
realaravinth
189510c008
lazy init asset paths, store asset alt and prep svg for embedding 2021-07-22 12:35:25 +05:30
realaravinth
e9e6aac770
sitemap 2021-07-21 22:15:52 +05:30
realaravinth
861998af75
lazy element, settings: account delete and secret update 2021-07-21 20:44:22 +05:30
realaravinth
b603208d48
add-data rendering & clipboard takes element 2021-07-21 10:42:25 +05:30
realaravinth
4b18992f6a
settings page, clipboard component 2021-07-20 18:14:23 +05:30
realaravinth
db941d51b7
delete captcha option and sudo page 2021-07-20 15:22:15 +05:30
realaravinth
00768cce34
delete captcha 2021-07-20 13:02:53 +05:30
realaravinth
f7c9217667
update and rename captcha plumbing 2021-07-19 17:12:56 +05:30
realaravinth
1b0a95e768
tests: get status code from err 2021-07-17 18:57:33 +05:30
realaravinth
c3e43ff584
update password 2021-07-17 18:51:20 +05:30
realaravinth
dda936d207
"duplicate email check" 2021-07-17 18:14:03 +05:30
realaravinth
8f87efeeb3
error correction, tests for err branches, rm get_token, get_token,
delete captcha
2021-07-17 17:43:53 +05:30
realaravinth
6f690734c5
notification mark read 2021-07-16 21:16:49 +05:30
realaravinth
102ef5b4a1
edit sitekey button in sitekey list table 2021-07-16 17:50:38 +05:30
realaravinth
ea8264054a
edit sitekey, router pattern matching, sitekey update optimization, rm level delete and level err handling 2021-07-16 17:40:52 +05:30
realaravinth
863d22f62c
list sitekey: copy sitekey 2021-07-15 18:07:12 +05:30
realaravinth
883aa122b2
notification date formatting 2021-07-14 21:38:03 +05:30
realaravinth
69de0aaeef
notifications styling 2021-07-14 20:09:00 +05:30
realaravinth
558dbef712
dupe email check and notifications table 2021-07-13 21:23:08 +05:30
realaravinth
47cca5c9a7
notifications view 2021-07-12 21:22:26 +05:30
realaravinth
b7ec1bca22
duplicate email check and address clippy warnings 2021-07-11 21:46:50 +05:30
realaravinth
0880dd27ce
configuration docs, make test 2021-07-09 12:04:48 +05:30
realaravinth
67a35a6e43
clear cookie after account deletion and CI: skip build 2021-07-09 11:49:01 +05:30
realaravinth
bfebca6e0e
widget static resources are now built locally 2021-07-07 00:28:32 +05:30
realaravinth
791935f245
mobile layout: fix logo highlight 2021-07-03 22:17:45 +05:30
realaravinth
43d970980f
responsive navbar 2021-07-01 22:36:22 +05:30
realaravinth
362e2aeae0
email verification test 2021-07-01 15:48:59 +05:30
realaravinth
574efc2252
email verification 2021-06-30 20:57:26 +05:30
realaravinth
c05888d648
cargo fmt 2021-06-30 20:14:15 +05:30
realaravinth
9f940c317a
upgrading to actix-v4-beta 2021-06-30 20:13:12 +05:30
realaravinth
9ed458ebfa
create email client 2021-06-30 14:16:48 +05:30
realaravinth
804c81da38
read SMTP configuration 2021-06-29 21:08:40 +05:30