aboutsummaryrefslogtreecommitdiffstats
path: root/pysite/base_route.py (follow)
Commit message (Collapse)AuthorAgeLines
* Move from CSS to SCSS (#86)Gravatar Gareth Coles2018-06-05-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rewrite existing style.css with sass * Add "uses-rst" class for pages that use rendered RST This replaces the previous method of just listing every page in the sass * Remove old debug print * Mixins and error pages * Newly built CSS * Add SASS cache to .gitignore * New error SASS * Slight changes to error template * Add UIKit SCSS to repo This includes the LICENSE and our customizations, which makes life way easier for contributors * Reorganize sass folder; your watchers can avoid uikit now * Sass folder should be called scss * Change variable names * [SCSS] Linting * Fix scss_lint gem name [ci skip] * [SCSS] Now you can compile with just Python! * Temporary hack to make the wiki editor taller * [SCSS] @jchristgit * [SCSS.py] Require specification of include dir to simplify the SCSS imports * [SCSS] All inline styles have been removed * [SCSS] Update UIKit theme to import from our variables * [SCSS] Remove extra newlines in errors/_common.scss
* Privacy/Usability updates (#75)Gravatar Gareth Coles2018-05-20-4/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Use less intrusive oauth scopes, add login redirect method * Remove debugging prints, add missing __init__ * Work towards new privacy policy * Fix judging state icons on code jam management page * Jammer profile retraction and punishments based on jam status * Linting * [Jams] Deny profile saving for users < 13 years, and finish removal page * Fix tests * Clean up and address Volcyy's review * Add proper login redirection to require_roles decorator * Fix template is_staff() and add staff link to navigation * Address lemon's review * Linting * Privacy page formatting * Privacy page formatting
* Fix template date formatter, so it won't break on non-DTsGravatar Gareth Coles2018-05-19-1/+2
|
* Linting, and remove seconds from date formatterGravatar Gareth Coles2018-05-19-1/+1
|
* [Jams] Huge amount of work on code jam admin areaGravatar Gareth Coles2018-05-18-6/+7
|
* Restructure code jams page layoutGravatar Gareth Coles2018-05-17-0/+3
|
* LintingGravatar Gareth Coles2018-05-15-1/+1
|
* Add RedirectView class for views that only redirect elsewhereGravatar Gareth Coles2018-05-15-1/+48
|
* Add TemplateView class for views that only render a templateGravatar Gareth Coles2018-05-15-0/+37
|
* Declaring the encoding to be utf-8 is not necessary in Python3 projects, as ↵Gravatar Leon Sandøy2018-04-27-1/+0
| | | | this is the default encoding. Encoding declarations are only useful in py3 if you want to declare it to be something _other_ than utf-8. This was, however, a very useful convention in py2. (#56)
* Easier debugging and optimised importsGravatar Gareth Coles2018-04-08-2/+4
| | | | Simply set FLASK_DEBUG=1 in your env to skip OAuth checks
* Add CSRF protection and optimise importsGravatar Gareth Coles2018-04-01-0/+21
|
* Rewrite URLs in templates to use `url_for()`Gravatar Gareth Coles2018-03-29-2/+1
|
* More convenient static_file() function for templatesGravatar Gareth Coles2018-03-29-1/+5
|
* Fix error routing and more work on static filesGravatar Gareth Coles2018-03-29-7/+8
|
* Fix error handler managementGravatar Gareth Coles2018-03-29-1/+5
|
* Attempt to fix HTTPS and more OAuth issuesGravatar Gareth Coles2018-03-29-1/+2
|
* Oauth (#45)Gravatar Nate the great2018-03-29-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Creating a OAUTH login for the site. We still need to have a way to fill in credentials however. Signed-off-by: Zwork101 <[email protected]> * How ya like me now Travis? Signed-off-by: Zwork101 <[email protected]> * Fix slight error in database insertion * Revert "Fix slight error in database insertion" (wrong branch) This reverts commit 9ac6cbb * Don't have snekchek working, but I'll try again. Signed-off-by: Zwork101 <[email protected]> * Please enter the commit message for your changes. Lines starting * Adding Oauth2 login to site. * Add prefix * Add prefix * This never happened * Flipping Travis I still can't get snekchek to work locally. * Added a whole bunch of stuff, ready to be used. Signed-off-by: Zwork101 <[email protected]> * Making sessions more secure, and future safe. Signed-off-by: Zwork101 <[email protected]> * Adding some quick stuff Signed-off-by: Zwork101 <[email protected]> * Appease the flake8 gods Signed-off-by: Zwork101 <[email protected]> * Appease the flake8 gods Signed-off-by: Zwork101 <[email protected]> * Whoops Signed-off-by: Zwork101 <[email protected]> * Add comments, fix user_data function. Signed-off-by: Zwork101 <[email protected]> * Whooops, forgot to flake :/ Signed-off-by: Zwork101 <[email protected]> * Make it look nicer, thanks Aperture. Signed-off-by: Zwork101 <[email protected]> * Fixing login issues and added button * Add a OauthMixin to allow for easy data access. Clean stuff up. Signed-off-by: Zwork101 <[email protected]> * Fix a test, and use self.assertEqual rather then self.assertEquals! Signed-off-by: Zwork101 <[email protected]> * Please don't ask how that happened. Signed-off-by: Zwork101 <[email protected]> * Added some tests, moved a bunch of stuff around. Mainly cleaned stuff up. Signed-off-by: Zwork101 <[email protected]> * Add a ton of tests, try to please the coverall gods :D, moved some code into a function for testing. Signed-off-by: Zwork101 <[email protected]> * Just some stupid stuff I missed. Signed-off-by: Zwork101 <[email protected]> * Fix an issue with the test, and add docs Signed-off-by: Zwork101 <[email protected]> * Remove pointless function. (join_user) Signed-off-by: Zwork101 <[email protected]> * Fix test consistency
* API for tags (#34)Gravatar Leon Sandøy2018-03-06-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Help page and misc improvements Committing so I can go home >:| * [WIP] - API improvements for the tag features. Not completed. * renaming tag.py to tags.py and refactoring the nomenclature of docs to tags * fixed error message in tags, cleaning up app_test.py * tests for the tags feature * ignoring jsonify returns cause coverall can't handle them * Catch-all error view for the API blueprint * cleaning up APIErrorView a little * bringing coverage for tags.py to 100% * how did this get in here? * how did this get in here? ROUND 2 * Removing the 503 database error handling. It's not in use and we should probably rethink that whole custom error handling system anyway. * Converting the tags file to use the @api_params decorator instead of validating manually. Tested with bot staging.
* Info pages #13xan #13xak (#36)Gravatar Gareth Coles2018-03-04-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Info pages and templates * Info pages and templates * Info pages and templates * Update navigation and fix up HTML * Navigation HTML spacing for readability * Fix error views not using `self.render()` * `render()` method should accept Any for context values * Change header linking CSS to a dedicated class * Rules page * Basic resources page setup * Fix headers for new CSS class * Resource categories and initial resource data * Add link to JSON file on GH - won't work until the branch is merged * Remove info overview page and redirect info root url to resources * Flake8 * Add some tests * Line lengths
* brings coverage to 90% (#24)Gravatar Christopher Baklid2018-02-26-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * brings coverage to 75% * satisfy flake8 * missing docstring added * one more test * artificially inflate coverage because python acts strange * testing decorators * fixed instantiation of test route * straggling newlines from debugging code * remove debug comments * restructure tests into logical class separations. more exlusions. more tests * testing websocket echo tests * added missing comment * convert single quotes to double quotes to satisfy docstrings
* Cleanup of base_route moduleGravatar Gareth Coles2018-02-18-15/+17
|
* Error handlers can now handle more than one HTTP status codeGravatar Gareth Coles2018-02-18-4/+20
|
* Register error routes on the app instead of specific blueprints #1rchtGravatar Gareth Coles2018-02-18-1/+1
|
* Integrate websockets into the Flask webappGravatar Gareth Coles2018-02-17-52/+0
|
* API schema validation decorator #yzuf (#15)Gravatar Gareth Coles2018-02-16-2/+6
| | | | | | | | | | * API schema validation decorator * Remove stray comma * Remove unnecessary conditional * Only cast to list when needed to
* snekchekGravatar Gareth Coles2018-02-15-1/+2
|
* Fix up API key validation and database api locationGravatar Gareth Coles2018-02-15-1/+3
|
* Move API validation decorator to its own file #yxdkGravatar Gareth Coles2018-02-15-16/+1
|
* Database API Improvements #1qcra (#13)Gravatar Gareth Coles2018-02-14-3/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * A large set of changes, including: * A mixin for views that need the DB * Many changes to the database class in order to make things more fluid * Provide the route manager in view setup() methods * Pushing up the progress so far * snekchek * Full (undocumented) database implementation * snekchek * Don't rely on exceptions for table deletion * Add RethinkDB data to gitignore * Documentation for DB class * Make Flake8 ignore P102 What even is that? What does "docstring does contain unindexed parameters" mean? * Document the base_routes module * Cleanup RE latest reviews * snekchek (bah)
* SnekchekGravatar JoeBanks132018-02-13-1/+1
|
* @APIView.valid_api_key decoratorGravatar JoeBanks132018-02-13-2/+17
|
* RethinkDB API Views #yqhgGravatar lmn2018-02-13-1/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Refactoring the database implementation into a class of its own. * Refactoring the database implementation into a class of its own. * healthcheck should belong to the API. * dynamic subdomain loading, setting up basic handling for staff.pythondiscord.com, and started on a TagView for a bot tag feature. * Oops, forgot to fix some merges. * Some quality of life updates - default values for env variables that aren't secret, and starting to get through the tag view. * Refactoring the database implementation into a class of its own. * healthcheck should belong to the API. * dynamic subdomain loading, setting up basic handling for staff.pythondiscord.com, and started on a TagView for a bot tag feature. * Oops, forgot to fix some merges. * Some quality of life updates - default values for env variables that aren't secret, and starting to get through the tag view. * API validation added to the APIView class, TagView should be finished as well. * super important commit you guys * fixed a bug with the RethinkDB class where host and port attributes were accessed before being created * Fixed my editor now you guys * Fixing up some of the problems brought up in gdude's review * Handling GET requests with param indata and POST with JSON. Fixed error handling to use the constants and the baseclass self.error(). * Get API-key from headers, context manage the db assignment, and default env var values * Changed API-KEY header to X_API_Key. Added a default for secret key. it should no longer be necessary with environment variables to run this system locally. * Changing back the nav to have relative paths * Why am I like this
* Asana integration (#7)Gravatar Gareth Coles2018-02-11-2/+10
| | | | | | * Event dispatching and webhook sending * snekchek
* APIView should inherit RouteViewGravatar Gareth Coles2018-02-09-1/+1
|
* Guess who forgot to run snekchek!Gravatar Gareth Coles2018-02-09-1/+1
|
* Base API route and error codes enumGravatar Gareth Coles2018-02-09-1/+16
|
* Move from straight app registration to Blueprints (#6)Gravatar Gareth Coles2018-02-09-5/+5
|
* Merge remote-tracking branch 'origin/master'Gravatar Gareth Coles2018-02-08-7/+15
|\
| * Static files; basic templatesGravatar Gareth Coles2018-02-07-5/+7
| |
| * Template renderingGravatar Gareth Coles2018-02-06-3/+9
| |
* | PffftGravatar Gareth Coles2018-02-08-2/+0
|/
* Revert "Finally fix this garbage"Gravatar Gareth Coles2018-02-06-0/+29
| | | | This reverts commit 57abb43
* Finally fix this garbageGravatar martmists2018-02-05-29/+0
| | | | Signed-off-by: martmists <[email protected]>
* Fix hardcoded error code in error viewGravatar Gareth Coles2018-02-05-1/+1
|
* Revert "Major update"Gravatar Gareth Coles2018-02-05-0/+29
| | | | This reverts commit 80a1ab5
* Major updateGravatar martmists2018-02-05-29/+0
| | | | | | | | | | | | | | - Switch to Japronto - More linters - Rewrite route handling - Rewrite error handling - Rewrite static handling - Error when no `Index` propery is found - Probably some more stuff? idk Code needs testing; Maybe we could use pytest? Signed-off-by: martmists <[email protected]>
* Dynamic route loader; proper application structureGravatar Gareth Coles2018-02-05-0/+29
Also fixed flake8-imports getting the other wrong