Commit Graph
727 Commits
Author SHA1 Message Date
shockrah 22998a8119 * Got no longer throws errors like mad, this leaves only our own errors to get thrown
* url parameter in Request is replace with domain, port & path
* params handled by gotjs
* body defaults to null and is only added with truth like values with allowGetBody protection
2021-02-11 16:18:36 -08:00
shockrah 23c732390d Starting a mega simple testing suite 2021-02-11 16:16:50 -08:00
shockrah 90563b3214 Updating packages to newest version and opting to use gotjs for requests 2021-02-11 15:08:06 -08:00
shockrah fb36f70d95 Response logs now optionally show the query string when logging, defaulting to always show the logs for now however 2021-02-11 15:04:41 -08:00
shockrah ab6b8e460b VSCodium python interpreter directory change 2021-02-10 23:21:11 -08:00
shockrah 25755bf394 Percent decoder func found on crates.io
Link: https://docs.rs/urldecode/0.1.1/src/urldecode/lib.rs.html#1-21

Why rob? Well its slightly modified(very smol change) in that it now takes a &str and allocates a string from it
Later patches will change this so that we don't _always_ allocate frivolously
2021-02-10 23:20:51 -08:00
shockrah 16276c97e0 Moving option parameters to the query string
Large payloads will remain the body as those are typically required for post endpoints such as /message/send
2021-02-10 23:18:24 -08:00
shockrah 286a77d9ac Using virtualenv python interpreter from now on 2021-02-10 23:16:41 -08:00
shockrah f585cf122c * switching to building options in query string
* payloads for things like /message/send are now send through the request body
* no longer sending body data in gets

This whole patch is basically so we can allow js clients to exist btw -_-
2021-02-10 23:16:19 -08:00
shockrah 21b184b324 Client tester now uses channel_id where applicable for api parameters
as well as being less explicit about what it passes to the query string
2021-02-10 23:15:05 -08:00
shockrah 2d6739438a removing unused redis dependancy 2021-02-10 18:20:28 -08:00
shockrah 28c99d8160 removing rouge syntax error 2021-02-10 17:45:58 -08:00
shockrah 4ef274d302 using newly updated docker image 2021-02-10 17:43:25 -08:00
shockrah 2a3210e819 using base rust image for building for sizing reasons 2021-02-10 17:40:26 -08:00
shockrah f3408d33aa Shifting json-api to its own bin folder 2021-02-10 16:05:22 -08:00
shockrah aa5cd8c4ac Moving sample.env into the auto build script and using a reworked freechat docker image on hub.docker.com 2021-02-09 19:42:36 -08:00
shockrah c3d9e2d3b3 +Putting apt-get all in one place
+--no-install-recommends
+Allowing curl pipe to fail early with previous SHELL command
* Using WORKDIR instead of cd
2021-02-09 15:15:16 -08:00
shockrah 8dd42606bd New pipeline script for master branch updated to support new project structure 2021-02-09 14:58:20 -08:00
shockrah eb338e03a0 + Test for qs_param behavior
Pretty simple and contains a special note about qs_param usage
2021-02-05 16:57:31 -08:00
shockrah 769aa72cdf Opting for qs_param to reduce on visual cancer 2021-02-05 16:39:24 -08:00
shockrah ab9fef2ccc route_dispatcher now reflects new hashmap usage over serde_json::Value's
HashMap of query string parameters is generated in main_responder before passed on
2021-02-05 16:32:03 -08:00
shockrah 33ae768ae4 *+ More qs_param! usage 2021-02-05 16:29:32 -08:00
shockrah 3369b4ec48 - Removing unused code 'process_expires_parameter' function
* Switching to qs_param in only a few cases for now
2021-02-05 16:28:47 -08:00
shockrah 2cb2d2b29e + Adding serialize to db::Invite type
* Invite initialization using shorthand notation now
2021-02-05 16:26:43 -08:00
shockrah ba5db17706 * Replacing extract_uid with qs_param!(...) usage 2021-02-05 16:25:35 -08:00
shockrah 4c92b20e74 * replacing extract_uid usage with qs_param!(....).unwrap() usage 2021-02-05 16:25:12 -08:00
shockrah 8e98df1d37 - Removed parse_json_params as its no longer used
+ Adding qs_param macro to remove boilerplate in pulling out Option<T> data from hashmaps
2021-02-05 16:24:39 -08:00
shockrah c2e384a13a */message/send
Now polls content from the request body
* flattened a bunch of checks with data fetches to the db
Outright reduction of branches yey
2021-02-04 01:58:57 -08:00
shockrah 20aca8a069 +Parsing channel_id param correctly
+ Checking for proper permissions in user

moar if let bindings!!!1
2021-02-03 23:29:53 -08:00
shockrah 42e783ccf1 Clarification on failure return value in delete trait method 2021-02-03 23:28:14 -08:00
shockrah 7334bb287d renamed add to 'new' to show its _real_ intentions 2021-02-03 21:56:34 -08:00
shockrah 44b51133d2 * /channels/create handler uses hashmaps
* cleaned up wall of parameter parsing to be less cancerous(read diff to die instantly)
- Removed repeated db::Response in response mutator match

 Simplified how parameters are parsed by making them actually readable
2021-02-03 21:56:09 -08:00
shockrah c1ef4c6336 -Removed _most_ direct sql manipulation for invite creation
- Removed unused/irrelevant unit tests, which now have to be rebuilt for the new codebase
2021-02-03 21:26:26 -08:00
shockrah 39a4d2a247 +New .add method for db::Invites
+New new() method to reduce on eye clutter
2021-02-03 21:25:27 -08:00
shockrah 9fac3aa117 * /join route handler now uses hashmaps among and returns more sensible http codes 2021-02-03 21:09:12 -08:00
shockrah 98803eec26 First pass of using hashmaps in /invite/create handler
+ Adding allowed_perm_invite, a helper function pulling permissions form the database to check if the user can make invites
2021-02-03 20:50:06 -08:00
shockrah 45af62ceb3 Inlining helper func for permission checking 2021-02-03 19:31:38 -08:00
shockrah e36d0e5823 * using hashmap instead serde::ValueMap for extract_uid 2021-02-03 19:30:46 -08:00
shockrah 5737f9824d Setting payload for jwt with http:set_json_body
- Removed visual clutter extracting uid from user params
2021-02-03 19:30:12 -08:00
shockrah e21c5c7624 auth module now parses from the query string hashmap, not serde_values 2021-02-03 13:55:25 -08:00
shockrah 9ceeabea3b Moving query parameters to the query string
This should allow js developers to write their own apps now as js doesn't allow for bodies in GET requests

From now the body is used for raw payloads
2021-02-03 13:54:29 -08:00
shockrah 154086e740 removing random empty file 2021-02-01 16:48:10 -08:00
shockrah 2ed07a519e Port now defaults to 4536 and is configurable with -p 2021-02-01 16:47:43 -08:00
shockrah 1e6a9ac844 +Setting proper callbacks on
* Prefering server domains for get's in build_server_list

* Fixing jsdoc for new_node to not be garbage
2021-01-28 18:01:38 -08:00
shockrah ac9668557b Testing out a new module for channels api hits 2021-01-28 17:56:40 -08:00
shockrah 91a4e06cb7 moving jwt and login related things to new auth module 2021-01-28 17:55:26 -08:00
shockrah 1b7092fd34 Simple request/response api to wrap 'got' calls away 2021-01-28 17:54:49 -08:00
shockrah e2360834f1 jsonwebtoken library added 2021-01-28 16:20:08 -08:00
shockrah 051e5e73e3 Modularized modal styling's
* Also fixed white on white text that I missed in join-form's text field
2021-01-28 12:40:31 -08:00
shockrah f548449f8c dev things 2021-01-27 19:20:53 -08:00