Commit Graph

495 Commits

Author SHA1 Message Date
Kfir Hadas c895f16532 Adjust for changes to the User model 2017-08-15 17:21:49 +03:00
Kfir Hadas 875c92cf7c Test models in a separate folder with a file per model 2017-08-15 17:19:45 +03:00
Kfir Hadas ec323433ab Ignore test log file 2017-08-15 17:19:45 +03:00
Kfir Hadas d8b5f83438 Simple tests for User model 2017-08-15 17:19:45 +03:00
Kfir Hadas f8c939d750 Simple test for create_app 2017-08-15 17:19:45 +03:00
Kfir Hadas 85688629b7 Test modify_query, create_magnet_from_es_info 2017-08-15 17:19:45 +03:00
Kfir Hadas fc226ed5f6 Update request_context 2017-08-15 17:19:45 +03:00
Kfir Hadas 0f2a3c4555 Test `static_cachebuster` filter
- Adds `request_context` to the NyaaTestCase class
2017-08-15 17:19:45 +03:00
Kfir Hadas d7d8d8ef14 Update tests, add tests structure for views 2017-08-15 17:19:45 +03:00
Kfir Hadas a758f5f078 Optimize routes (define url_prefix in Blueprints)
* /admin/*
* /api/*
2017-08-15 17:12:54 +03:00
nyaadev 0bcd782695 Minor improvements 2017-08-15 01:41:31 +02:00
Arylide 2cd2dbf66d Replaced dead tracker and give mods a hammer 2017-08-14 16:02:06 -07:00
mreweilk 2e50f14fb7 Change admin routes from /adminlog and /reports to /admin/log and /admin/reports 2017-08-14 13:30:17 -04:00
nyaadev d5b8a3a2ae Increase maximum comment size from 255 to 1024.
DB change: Change comment text field from VARCHAR(255) to mysql.TEXT
2017-08-14 19:08:36 +02:00
nyaadev 1c3724cae1 Delete cached torrent file when replacing torrent. 2017-08-07 00:20:02 +02:00
nyaadev 602d35bab7 Integrate tracker API for torrent ban/unban 2017-08-06 23:55:45 +02:00
Kfir Hadas 024c90022a Nyaa development helper (tool) (#324)
Add new tool for developing (lint/autopep8/isort/test)

New tool uses flake8 and isort for lint checks.
Deprecate existing tool (still works)
Update readme
Update Travis config
2017-08-06 00:04:38 +03:00
Kfir Hadas 9f508dc8aa Fix lint issues in utils/ 2017-08-06 00:00:18 +03:00
Arylide 5fb178f3a8 idk 2017-08-05 13:03:43 -07:00
TheAMM 7a04d64f9c Weed out last few hardcoded urls 2017-08-05 22:43:13 +03:00
A nyaa developer e728ca1818 Expose soft delete to users and allow reuploading of deleted torrents. (#331)
Add banning torrents for moderators which disallows reuploading.
New delete UI.
2017-08-05 15:41:59 -04:00
Kfir Hadas 81d8b0f86b lint.sh: fix default task
Fixes isort not running.
```
WARNING: Unable to parse file nyaa/ due to [Errno 13] Permission denied: '/path/to/nyaa/nyaa'
(venv)
```
2017-08-03 16:27:27 +03:00
Anna-Maria Meriniemi 95e35a10c9 Change torrent Content-Disposition back to inline
As per comments in #288, Firefox forces a "what do you want to do with this"-dialog for 'attachment' even when it's set to open them immediately in another program.
2017-08-03 11:28:21 +03:00
Kfir Hadas 87dd95f1e0 Refactor into an app factory [2 of 2] (#322)
* Replace all `from nyaa import app` imports with `app = flask.current_app` (or `from flask import current_app as app` where possible)
* Add a separate config object for top-level and class statements as `nyaa.extensions.config`
Required because those codes don't have app context at the time of evaluation/execution.
* Remove `routes.py` file and register all blueprints in `nyaa/__init__.py`
* Refactor `nyaa/__init__.py` into an app factory
* Update tools
* Update tests (temporary, will be replaced)
2017-08-01 21:02:08 +03:00
Kfir Hadas 0181d6cb33 Prepare for app factory [1 of 2] (#315)
* Move db, assets, debug toolbar and fix_paginate into nyaa.extensions
* Change all `from nyaa import db` imports to `from nyaa.extensions import db`
* Move `nyaa.torrents.create_magnet_from_es_info` context processor into template-utils blueprint
* Fix tools (wrap in `with app.app_context():` where needed)
2017-07-30 20:35:16 +03:00
TheAMM 1dae331156 Completely handle qBittorrent webseeds
Fixes #319

Zero webseeds: empty bytestring
One webseed: bytestring
More than one: a list of bytestrings (as the spec asks for!)
2017-07-30 11:49:13 +03:00
TheAMM 987103b213 Handle qButtorrent empty url-list/webseeds
url-list is supposed to be omitted in case of no webseeds,
but qB will instead use an empty bytestring '' as the value.
This commit makes the validation more lenient regarding url-list.
2017-07-30 11:36:38 +03:00
Anna-Maria Meriniemi 1bc36c5a17 [Schema change] Add webseed support (BEP-19) (#317)
Store webseeds in Trackers table with is_webseed flag
Adjusts torrent creation accordingly
2017-07-30 00:00:39 +03:00
Kfir Hadas 8a4793ffb0 Update Travis (#316)
* Update Travis to Trusty Q2 (they fixed the issue it had before, it works now)
* Fix charset in database creation on Travis to use `utf8mb4_unicode_ci`.
2017-07-29 03:24:05 +03:00
Kfir Hadas b992467dad Apply isort & flake8 (#312)
* Update isort settings
* Apply import sorting (isort) on all files in nyaa/
* Fixed Flake8 errors in nyaa/ (see PR for list)
* Add isort to lint.sh and requirements.txt
2017-07-28 20:01:19 +03:00
Kfir Hadas 99c052c85f Tiny code reformat 2017-07-27 23:29:25 +03:00
Kfir Hadas 42725d4a3c Hotfix Gravatar 2017-07-27 23:17:06 +03:00
Kfir Hadas ab6193d01d Update Gravatar (#313)
* Update help.html with a section about user avatars

* Update Gravatar implementation to use the rating feature
2017-07-27 16:03:13 -04:00
Kfir Hadas 2424639bf9 Refactor routes.py 2017-07-27 14:14:00 +03:00
Kfir Hadas c539795fdc Move the remaining template_global into 'template-utils' blueprint 2017-07-27 14:14:00 +03:00
Kfir Hadas 93f94023d1 Move delete_comment and submit_report into blueprint 2017-07-27 14:14:00 +03:00
Kfir Hadas ef56e54521 Move torrent magnet and torrent download into 'torrents' blueprint 2017-07-27 14:14:00 +03:00
Kfir Hadas 9fef343c1b Move torrent edit and upload into 'torrents' blueprint
Move supporting functions and variables into other files
* nyaa.views.torrents:
  - _create_upload_category_choices
* nyaa.backend:
  - get_category_id_map
2017-07-27 14:14:00 +03:00
Kfir Hadas 9acdd14e81 Move /view/<int:torrent_id> route into 'torrents' blueprint
and update templates.
2017-07-27 14:14:00 +03:00
Kfir Hadas 42535bbdab Move 404 handler into 'main' blueprint 2017-07-27 14:14:00 +03:00
Kfir Hadas 4aac17ff23 Move 'before_request' into 'main' blueprint
Update comment in api_handler with new before_request location
2017-07-27 14:14:00 +03:00
Kfir Hadas eccb0ebdff Move '/' and '/rss' routes into 'main' blueprint
and update templates.
2017-07-27 14:14:00 +03:00
Kfir Hadas f3b923ccca Move template filters and globals into blueprint (#301)
* Move 8 of 9 template filters and globals into a blueprint

* Rename nyaa.filters -> nyaa.template_utils

* Fix import sorting
2017-07-27 14:14:00 +03:00
Kfir Hadas 50529920bd Move /user/activate/<payload> route into users
Move supporting functions as well:
  - get_serializer
  - get_activation_link
2017-07-27 14:14:00 +03:00
Kfir Hadas 0887dde6fc Move /user/<user_name> route into a blueprint
Move supporting functions and variables into other files
* nyaa.utils:
  - cached_function
  - chain_get
* nyaa.search:
  - DEFAULT_MAX_SEARCH_RESULT
  - DEFAULT_PER_PAGE
  - SERACH_PAGINATE_DISPLAY_MSG
  - _generate_query_string
2017-07-27 14:14:00 +03:00
Kfir Hadas 3913d8cea2 Move admin routes into blueprint
and update templates

Routes:
* /reports
* /adminlog
2017-07-27 14:14:00 +03:00
Kfir Hadas f316353176 Move account routes into blueprint (#292)
and update templates,
and remove unused imports

Routes:
* /login
* /logout
* /register
* /profile
2017-07-27 14:14:00 +03:00
Kfir Hadas 911fbc317f Move static routes into a blueprint
and update templates

Routes:
* /help
* /rules
* /xmlns/nyaa
* /about (commented out)
2017-07-27 14:14:00 +03:00
Kfir Hadas 7e16616a5d Remove unused imports 2017-07-27 14:14:00 +03:00
Kfir Hadas de8bd047d5 Apply isort on routes.py 2017-07-27 14:14:00 +03:00