aboutsummaryrefslogtreecommitdiffstats
path: root/backend/routes/forms (follow)
Commit message (Collapse)AuthorAgeLines
* Run ruff on codeHEADmainGravatar Joe Banks2025-08-08-8/+14
|
* Validate unique responses on submissionGravatar Joe Banks2025-08-08-0/+16
|
* Calculate form ancillary data when fetching form dataGravatar Joe Banks2025-08-08-4/+66
|
* ruff formatGravatar Joe Banks2025-05-31-1/+1
|
* thread_id is a param, not a body itemGravatar Joe Banks2025-05-31-5/+7
|
* Use thread_id for webhook execute on submissionGravatar Joe Banks2025-05-31-0/+3
|
* Use redis for the discord member cache over mongoGravatar Chris Lovering2024-07-16-1/+1
|
* Ensure requested condorcet calculations are on vote componentsGravatar Joe Banks2024-07-11-0/+5
|
* Add new endpoint for performing condorcet calculation on form responsesGravatar Joe Banks2024-07-11-0/+99
|
* Move unittest filtering to the Form.dict() functionGravatar Chris Lovering2024-07-09-19/+1
|
* Remove erroneous await from non-async set_response_tokenGravatar Joe Banks2024-07-08-1/+1
|
* Apply fixable lint settings with RuffGravatar Joe Banks2024-07-08-177/+155
|
* Add tearDown feature to unittestsGravatar Janine vN2023-08-11-0/+2
|
* Check If User Exists Before Sending WebhookGravatar Hassan Abouelela2022-07-10-5/+5
| | | | Signed-off-by: Hassan Abouelela <[email protected]>
* Handle Improper Output For UnittestsGravatar Hassan Abouelela2022-07-01-37/+80
| | | | | | | | | | The old testing code only checks the first character of the stdout, meaning that if a user succeeds in printing a 1 before the rest of the output, the testing code will consider that a pass and discard the rest. This change checks that the rest of the stdout is empty as expected. Signed-off-by: Hassan Abouelela <[email protected]>
* Fix Broken Error MessageGravatar Hassan Abouelela2022-06-29-1/+1
| | | | Signed-off-by: Hassan Abouelela <[email protected]>
* Ensure All Tests Are Prefixed By `test_`Gravatar Hassan Abouelela2022-06-25-1/+2
| | | | Signed-off-by: Hassan Abouelela <[email protected]>
* Make Unittests AsyncGravatar Hassan Abouelela2022-06-24-6/+8
| | | | | | | | The codejam test suite uses async functions, which would be annoying to deal with in our current template. Switching to async makes that available to those who want it, without affecting those who don't. Signed-off-by: Hassan Abouelela <[email protected]>
* Allow Setup For UnittestsGravatar Hassan Abouelela2022-06-24-2/+4
| | | | | | | | | | Adds the setup method as a special method for unittest question types. Additionally, a couple QoL fixes are included. I changed `unit` to `self` to clarify what it actually is, and I changed an `lstrip` to a `removeprefix` to avoid removing unintentional portions of the name (for instance `something` -> `omething`) Signed-off-by: Hassan Abouelela <[email protected]>
* Enable Login Form In ProductionGravatar Hassan Abouelela2022-06-17-16/+29
| | | | | | | | Adds a non-discoverable login form in all environments to make it easier to authenticate. Ideally, we'd have an actual login button, but this is an easy solution in the meantime. Signed-off-by: Hassan Abouelela <[email protected]>
* Fix Error For Unauthorized Form AccessGravatar Hassan Abouelela2022-06-13-2/+6
| | | | | | | | | Fixes an error where accessing a form without having the proper authorization would cause an unexpected state and raise a 500. Closes #175. Signed-off-by: Hassan Abouelela <[email protected]>
* Explicitly Use `_id` Over `id`Gravatar Hassan Abouelela2022-03-14-2/+2
| | | Co-authored-by: Kieran Siek <[email protected]>
* Use HTTPException To Propagate Access FailuresGravatar Hassan Abouelela2022-02-05-30/+11
| | | | | Co-authored-by: Bluenix <[email protected]> Signed-off-by: Hassan Abouelela <[email protected]>
* Add Role Based Editors To FormsGravatar Hassan Abouelela2022-02-05-33/+44
| | | | | | Adds the ability to specify who can edit forms using discord roles. Signed-off-by: Hassan Abouelela <[email protected]>
* Add Role Based Authorized ReadersGravatar Hassan Abouelela2022-02-05-12/+25
| | | | | | | Adds a new property on forms to declare which roles are authorized to access form responses. Signed-off-by: Hassan Abouelela <[email protected]>
* Overhaul Scope SystemGravatar Hassan Abouelela2022-02-05-1/+1
| | | | | | | Adds discord role support to the pre-existing scopes system to power more complex access permissions. Signed-off-by: Hassan Abouelela <[email protected]>
* Don't include user mention for anonymous form submissionsGravatar Chris Lovering2022-01-21-1/+5
| | | | | | We currently use WEBHOOK_ENABLED to determine whether user data should be stored to the db. However, when webhooking a form submission this config is ignored, and the user mention is always included if available. This means that if a user login in using another form, and then submits an anonymous form with the same session, their name will be included in the webhook.
* Model: makes Form.id case insensitiveGravatar Matteo Bertucci2021-12-26-9/+6
| | | | Note that it will make any existing form with an upper case letter impossible to access until its ID is changed, which shouldn't be the case in production according to @HassanAbouelela
* Hash Cf-Connecting-IP if given, else remote hostGravatar Joe Banks2021-12-25-1/+5
|
* Uses Backend URL In EmbedGravatar Hassan Abouelela2021-07-06-1/+1
| | | | | | | Temporarily switches the URL in discord embeds from the frontend, to the backend, to allow for easier viewing until the frontend is ready. Signed-off-by: Hassan Abouelela <[email protected]>
* Merge pull request #92 from python-discord/unittest_failuresGravatar Hassan Abouelela2021-06-20-15/+73
|\ | | | | Allow Unittest Failures
| * Updates Unittest Filter To Match New ModelGravatar Hassan Abouelela2021-06-19-1/+1
| | | | | | | | Signed-off-by: Hassan Abouelela <[email protected]>
| * Verifies Unittest Error ResponsesGravatar Hassan Abouelela2021-06-03-1/+14
| | | | | | | | Signed-off-by: Hassan Abouelela <[email protected]>
| * Handles Code Questions With No TestsGravatar Hassan Abouelela2021-06-03-1/+13
| | | | | | | | | | | | Adds a check to handle code questions with no test suites. Signed-off-by: Hassan Abouelela <[email protected]>
| * Documents Return Code Gravatar Hassan Abouelela2021-06-02-0/+1
| | | | | | | | | | Adds a comment which explains when a certain return_code is used. Co-authored-by: Joe Banks <[email protected]>
| * Uses 422 For Failed Tests Gravatar Hassan Abouelela2021-06-02-1/+1
| | | | | | | | | | Uses 422 instead of 403 to indicate a test has failed. Co-authored-by: Joe Banks <[email protected]>
| * Reports All Unittest Failure ReasonsGravatar Hassan Abouelela2021-06-02-2/+9
| | | | | | | | | | | | Records the reason of failure for non-zero exit codes. Signed-off-by: Hassan Abouelela <[email protected]>
| * Records Failed UnittestsGravatar Hassan Abouelela2021-06-02-8/+33
| | | | | | | | | | | | | | Adds logic for saving submissions of failed unittests. Updates schema docs. Signed-off-by: Hassan Abouelela <[email protected]>
| * Adds Code Question ModelGravatar Hassan Abouelela2021-06-02-4/+4
| | | | | | | | | | | | | | Adds an explicit model for questions of type `code`, to allow more complex parsing. Updates schema docs. Signed-off-by: Hassan Abouelela <[email protected]>
* | Merge pull request #90 from python-discord/auth-formGravatar Hassan Abouelela2021-06-20-5/+37
|\ \ | | | | | | Empty Authorization Form
| * | Adds An Empty Form For AuthorizationGravatar Hassan Abouelela2021-05-17-5/+37
| | | | | | | | | | | | | | | | | | | | | Returns a form with no questions, if the server is not running in production, and no other forms are found, to aid in setting up. Signed-off-by: Hassan Abouelela <[email protected]>
* | | Handles Null WebhooksGravatar Hassan Abouelela2021-06-04-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | The form model specifies webhook as nullable, but the validator code does not properly handle them. This PR adds logic to handle that scenario. Signed-off-by: Hassan Abouelela <[email protected]>
* | | Reverts "Validates Form Patch Request"Gravatar Hassan Abouelela2021-06-03-2/+6
| |/ |/| | | | | | | | | | | Reverts the changes made in 4f28ae85 because they made it impossible to send a partial patch request. Changes to a simpler try/except instead. Signed-off-by: Hassan Abouelela <[email protected]>
* | Set Form Viewing URLGravatar Hassan Abouelela2021-05-30-1/+1
| | | | | | | | Signed-off-by: Hassan Abouelela <[email protected]>
* | Validates Form Patch RequestGravatar Hassan Abouelela2021-05-30-1/+3
|/ | | | | | Makes sure patch requests send a validated request. Signed-off-by: Hassan Abouelela <[email protected]>
* Simplify role assigning rate limit handlingGravatar ks1292021-03-09-12/+6
| | | Co-authored-by: Hassan Abouelela <[email protected]>
* Merge branch 'main' into ks123/role-assigningGravatar ks1292021-03-09-6/+185
|\
| * Switches Forwarded Protocol HeaderGravatar Hassan Abouelela2021-03-07-4/+1
| | | | | | | | | | | | | | | | Traefik forwards https traffic to http, which causes issues with the protocol in a request's URL. This switch uses the protocol header to correctly set the protocol. Signed-off-by: Hassan Abouelela <[email protected]>
| * Fixes Domain URL On Token CookieGravatar Hassan Abouelela2021-03-07-1/+3
| | | | | | | | Signed-off-by: Hassan Abouelela <[email protected]>
| * Makes Helper To Handle Token SameSite LogicGravatar Hassan Abouelela2021-03-07-5/+4
| | | | | | | | | | | | Adds a helper method to allow tokens to work on deploy previews. Signed-off-by: Hassan Abouelela <[email protected]>