Albirew/nyaa-pantsu
Albirew
/
nyaa-pantsu
Archivé
1
0
Bifurcation 0
Graphe des révisions

28 Révisions

Auteur SHA1 Message Date
kilo d5c2c6b676 Upload to nyaa.si, anidex & TokyoTosho [done] (#1633)
* Update upload.go

* Update helpers.go

* Update template_test.go

* Update upload_multiple.jet.html

* change variable names

* wrong copypaste

* change variable name

* ditto

* Fix travis

* Update main.css

* Update upload.go

* Update upload.jet.html

* Update main.css

* Update upload.go

* More compact form

* CSS changes to go along

* Update main.css

* Update upload.jet.html

* Slightly lower bottom margin

* Update upload_multiple.jet.html

* tomorrow color adjustements

* small css adjustements

* Update upload.go

* Update default_config.yml

* Update default_config.yml

* Update structs.go

* Update user.go

* Update structs.go

* Update upload.go

* Update default_config.yml

* Update upload_multiple.jet.html

* Update upload.go

* Update upload.jet.html

* Update template_test.go

* this one is optional for anidex

* Update default_config.yml

* Possible improvement
As mentionned in my comment, it seems that having a checkbox already checked and disabled for logged in user + having the input text for apikey is a bit tedious.
Moreover, asking to check and fill the input text to upload in anidex when you are not logged is doing things twice. If you don't want to upload to anidex, don't fill the input.

So this commit push a new behaviour:
* If you are logged in and you have filled your anidex/nyaasi api key : the form should only show the checkbox asking if you want to upload to nyaasi.
* If you're not logged in or you don't have filled your api key in your profile settings: you only show the input text for the api key and not the checkbox. If someone wants to upload to nyaasi/anidex, he will just need to fill the input.

* This adds back the support of anonymous upload when logged in or not.
This works simply by checking if the user wants to upload as anon (when he checks the checkbox "upload as anonymous") or by checking the emptyness of apikey.
+ reverts the condition statements since it was needed to have apikey empty

* Forgot to save this file

* This commit adds the go routines for each upload service (anidex, nyaasi, tosho).
New controller and url to check the upload status (/upload/status/:id).
If you add ?json at the end, it outputs a json format of the multi upload status.
To prevent memory overload, we only keep in memory the multiupload status for 5 minutes.
Moved multipleform struct from templates to upload utils.

* fix form display on classic theme

* This commit adds:
* Javascript refreshing of the upload status
* Localization of the pages
* Fixed some bugs

This works, only need to get torrent file now.

* Added a new function to get the Path to the torrent file.

* Added a function to check that a torrent file exists and if not generate it on multiupload

* Enabled file upload through http post request to anidex

* Fixed bugs

* Modified the behaviour to generate torrent preivously. It is a synchrone function now. So we need to make it asynchronous in download.go

Now torrents file are always generated at upload time in a background processus with the correct trackers (needed ones + the ones provided by the user).
I made the anidex tracker as a needed one to allow multiupload even if the user hasn't included in his torrent file/magnet url.

* Moving deadtrackers list to default config
Support torrent file creation when upload without scraping
* Fix possible bug where no one is seeding a torrent yet (first time upload)
Add primary tracker in torrent file

* Fixing issue with boolean pointer for private torrent

* fixing index out of range for announcelist filtering
Fixing anidex tracker not found

* Fixing lang id error

* Anidex upload works

* Fix for multiupload with magnet

* This adds TokyoTosho support. Since TokyoTosho API only support upload by URL (and not torrent file upload). We need to make the download url available without ddos protection.

Also TokyoTosho doesn't need a category select. Since it does have limited option, we can automatically convert our categories to the tokyotosho one.

* Removing the folder tosho and put categories.go directly in upload package.
Added category conversion for nyaasi too.
Added tests on category conversion.

* This should add nyaasi support.
Is not tested though.

* Updated defaut config with new nyaa.si behaviour?

* Forgot to commit this file
2018-01-03 18:21:07 +10:00
kilo fc8fe4bdf9
Update template_test.go 2017-11-01 02:53:12 +01:00
kilo 9b2b05b24a
Update template_test.go 2017-10-31 01:34:13 +01:00
kilo 0d03cd98d8
Update template_test.go 2017-10-29 04:46:14 +01:00
kilo 2201517574
Update template_test.go 2017-10-29 01:02:39 +02:00
akuma06 33c83030b9 Fix Api documetation (#1685)
* Fix Api documetation

Fix #1682
* Remove unused SubCategory field from struct TorrentRequest
* Change `category` argument in documentation to correct `c` (same key as the one in Search)

* Apidoc generation

* Remove SubCategory from template_test's torrentValidator

* Update template_test.go
2017-10-18 22:27:55 +02:00
kilo d6c030d9e6 [WIP] Anidex, TT & Nyaa.si uploading (#1604)
* Update main.css

* Update tomorrow.css

* Create upload_multiple.jet.html

* Create upload.js

* Update upload.jet.html

* Update upload.jet.html

* Update upload.jet.html

* Update tomorrow.css

* Update main.css

* Update tomorrow.css

* Update main.css

* Update user.go

* Update template_test.go

* Update main.css

* Update upload.jet.html

* Update edit.jet.html

* Update template_test.go

* Update upload.jet.html

* Update main.css

* new design for user edit

* Fix CRSF token

* Update upload_multiple.jet.html

* Update upload.jet.html

* Update profile.jet.html

* Update base.jet.html

* Update edit.jet.html

* Update forms.go

* Update forms_test.go

* Update forms_test.go

* Update forms.go

* Update forms_test.go

* Update main.css

* Fix 4+ torrent flags display on IE

* Fix userprofile buttons on IE, remove fancy css

* Fix torrent link being hidden on IE

* Update listing.jet.html

* Update main.css

* Update listing.jet.html

* Delete torrent_item_upload.jet.html

* Update torrent_item.jet.html

* Update main.css

* Update classic.css

* Update listing.jet.html

* Update classic.css

* Update profile.jet.html

* Update upload.jet.html

* Update classic.css

* Update classic.css

* Update main.css

* Update user.go

* Update upload.jet.html

* Update upload.jet.html

* Update edit.jet.html

* Update template_test.go

* Update forms.go

* Update forms_test.go

* Update main.css

* Update classic.css

* checkboxes next to language div

* wooo responsive checkboxes

* remove empty space

* need an !important here

* Fix flags being unaligned on IE

* Fix some inputs being too big on classic.css, remove fancy shit

* Update classic.css

* fix travis

* Update main.css

* Update upload.jet.html

* Update edit.jet.html
2017-09-30 15:10:47 +02:00
kilo 6ca8ffe5fc Default & dark theme set in .yml (#1610)
* Update default_config.yml

* Update publicSettings.go

* Update base.jet.html

* Update config.go

* Update structs.go

* Update base.jet.html

* Update base.jet.html

* Update main.js

* Update base.jet.html

* Update base.jet.html

* Update publicSettings.go

* Update template.go

* Update template_test.go

* Update template.go

* Update classic.css

* allow user profile URl to contain just ID

* Update router.go

* Add nyaa.pt to mirrors

* Update main.js

* Update main.js

* Add /username/:username userprofile route

* Update profile.go
2017-09-22 14:54:19 +10:00
kilo 216d241143 alt attribute for ads images, fix missing tags on upload, fix wrong name for translation string (#1577)
* alt attribute for ads images

* fix <tr> too much

* fix missing <tr> that created HTML error

* fix wrong translation string name

* ditto

* fix accepted tags not having background on classic

* Put tag table inside upload table

* Update classic.css

* Remove prefix of dlsite tag on view

* Update main.css

* 10px bigger website

* fix wrong css selector

* fix markdown scroll visually broken in classic.css

* Add magnet link on torrent file not found page

* don't show magnet <a> if empty

* Fetch magnet link in download.go and pass it on to torrent_file_missing

* add magnet in template_test
2017-09-18 10:15:39 +10:00
akuma06 421935f8be Change DLSite to String (#1576)
* Change DLSite to String

Fix #1573
Plus it seems the filtering search for ES didn't work for anidbid, vndbid and vgmdb. Should be fixed now.

* Update helpers.go
2017-09-17 21:27:20 +02:00
kilo 870b72f1e9 "No comments" message, avatar in comments, classic theme improvements, some other changes, Old Navigation (#1545)
* Update view.jet.html

* Update en-us.all.json

* Update view.jet.html

* Update CHANGELOG.md

* fix travis

* Update classic.css

* Update view.jet.html

* Update main.css

* Update classic.css

* Update classic.css

* Update classic.css

* add link to user page & avatar in comment

* stylisation for avatar in main.css

* Update classic.css

* Fix wrongly placed ::before

* Add rule list to terms of service

* import rules on register

* fix refine-container-2's inputs

* Update base.jet.html

* Update en-us.all.json

* Update CHANGELOG.md

* GenNav changes to constantly put HTML for nav arrows regardless of page

* css changes for website nav etc etc

* add OldNav global variable

* Add OldNav to test.go

* Update publicSettings.go

* change OldNav's value type

* Old navigation in settings

* add OldNav in user variables

* add oldNav input handler in settings.go

* Change OldNav's default value into false

* Create OldNav.jet.html

* Update search.jet.html

* remove character that had nothing to do here

* fix wrong variable name

* fix worng variable name and travis

* Update classic.css

* Add sort order & type to old nav

* add toString() function in test

* add toString() function

* translation string for oldnav setting

* Use translation string in settings.jet.html

* fix few html errors

* ditto

* travis fix test

* remove useless charset

* remove useless things

* add spaces before attributes

* attempt at fixing travis 2

* fix wrong variable name

* Update classic.css

* fix travis plsss
2017-09-11 19:45:39 +02:00
kilo d1d4bf8e28 Remove hide ads options (#1536)
* Update base.jet.html

* Update settings.jet.html

* Update template.go

* Update publicSettings.go

* Update user.go

* Update settings.go

* Update main.js

* Update base.jet.html

* Update template_test.go

* Update en-us.all.json
2017-09-08 20:46:45 +02:00
kilo 70a865e49a Show message pinned at the bottom of the window warning of cookie usage to comply with EU law (#1506)
* Add global variable to template_test

* Add global variable related to EU cookie law

* Add GetEUCookieFromRequest function that checks if the EU cookie exists (to comply with EU law)

* Add div at bottom of page if no EU cookie set

* add styling in css

* Prevent message from showing up any more than once

* prevent cookie from being erased by resetCookies() function

* Fix wrong function return type

* shorter condition

* Import timeHelper

* Update template_test.go

* remove variable name

* Update template_test.go
2017-09-06 07:55:00 +02:00
Miiiiaaooooo 25e6fe2942 Ads enabled settings, ads in FAQ, ads actually in code (#1493)
* Update base.jet.html

* Remove inline styling, put whole thing into a div instead of center to be able to move it at other places at will

* Move inline styling in there & some adjustements that will need further tweaking

* Add GetAdsEnabledFromRequest() function

* Ads Enabled global var

* Need to add global var in test file for it to work properly

* AdEnabled handler in settings

* Create AdsEnabled var for users

* Check if user wants to hide ads

* change var name

* change var name

* change var name

* change var name

* var name changes

* Add ad enabled settings & put each indiviidual setting into a span

* add |raw

* add translation strings

* add ads to faq

* Remove <br> and add faq link

* Fix travis

* Fix wrong condition check

* exclude aldColors & hideAds cookie from deletion

* remove useless things

* Fix template_test.go

* No idea why that part got removed

* Forgot }}

* lower padding for ad container
2017-09-04 21:48:47 +10:00
akuma06 49d8ca0c01 Fix RSS Link (#1495)
Fix #1486
2017-09-04 08:11:16 +10:00
akuma06 50a6e844db Fix adding tag form (nojs) + miscalleneous (#1468)
* Fix search Status
Should fix #1428 ?s=2 and others. Reason: the sql query wasn't correct when filtering (status >= ? = ?)

* Fix adding tag form (nojs) + miscalleneous
* Fix #1423 by checking http method before finding the tags.
* Form is now like other tags form
* New Middleware LoggedInMiddleware to protect routes to logged user only
* Display of Non-Accepted tags in torrent view improved by translating tagtype values

* Update tag.jet.html
2017-09-03 10:30:30 +10:00
kilo 5a184bfb50 "Alternating Colors" option in settings (#1440)
* Non-bold torrent name when using alternating background colors

* Add alternating colors for g.css

* Add alternating colors for classic.css

* Add alternating colors for tomorreuw

* Update classic.css

* Add alternating colors to settings page

* Add alt-colors class to tbody if enabled

* Add GetAltColorsFromRequest() function to get AltColors cookie value

* Create AltColors variable for usage in listing

* Make settings handle altColors input

* Add AltColors in user struct

* Returned the wrong variable here

* Turn function return value into bool

* Condition checks variable like a bool

* ditto

* better color for g.css

* even better color

* better

* Last change for g.css

* Improvement for tomorrow

* Update classic.css

* add alt-colors class to upload preview

* Add alt-colors to user profile

* more vivid color for g

* Fix typo

* Remove browser outline for refine when clicked on

* remove browser outline

* Fix rules that didn't apply and category icon being way too small on user profile thanks to usage of percentage

* Remove show-xs class for search inputs

* Turn refine button back into position: absolute to pin at very bottom of refine

* Alternating colors for g's trusted, remake & aplus

* Update tomorrow.css

* attempt at fixing travis

* test (will have to rollback that change)

* rollback

* will have to rollback

* will have to rollback

* will have to rollback

* will have to rollback

* add AltColors variable to template test

* rollback

* rollback

* rollback

* rollback
2017-08-30 15:21:45 +10:00
akuma06 53ba669ba6 Add remember me checkbox back (#1397)
I tried locally and I'm kept logged in. @ewhal check after update that you do have the same hash set in both nyaa and sukebei. If you do, just change the domain name (".pantsu.cat") in the functions getDomainName() to the subdomain. Because I don't see why it wouldn't work otherwise
2017-08-26 12:57:02 +10:00
akuma06 c6168be8b1 Tag Search + Tests + Search slight refactor [DONE] (#1342)
* Tag Search + Tests + Search slight refactor

First commit improving search. Different struct have their own file with their tests. This way of separating struct by files is inspired by the go packages I've seen so far.

Added new behaviour as discussed in #1334

* fix fallback to ES

* Added some comments to explain PG fallback + log err moved

* Refactored search

Nearly fully covered
WhereParams struct has disappeared for Query struct instead
In DB model, we use an interface implementing Query struct methods

* 1rst Refactor of Tags (WTF already?!)

Prepare Tags for the refactored system. Now there will be descriptive tags for a particular release (ecchi, BDSM, ....) and typed tags.
Typed tags are tags relevant to all torrents and can be limited to some input value. For example, video quality is a typed tag limited to some values (hd, full hd, sd, ...). In the same way, anidbid is also a typed tag but doesn't have default values.

Furthermore, the location storage of tags have changed, now accepted descriptive tags are stored in the torrents table in the column "tags" and they are separated by commas.
In the opposite, accepted typed tags can have have their own column in the torrents table. For example, anidbid, vndbid will populate the column DbID when accepted. On the other hand, videoquality will populate the same way as descriptive tags.

This behaviour depends on the callbackOnType function in tag/helpers.go

* fix for modtools :')

* Added anidb, vndb, dlsite & vmdb id fields in torrent model.
Tags don't have an accepted field anymore.
Accepted Tags are in torrent.AcceptedTags and non-accepted ones in torrrent.Tags.

New Helper + New Changelog for translation string.

* New upload/edit form for torrent tags.
Now the inputs are dynamically generated by the helper tag_form.
No more modal window in those form, only inputs.
Support of tags in API
New translation string for the  link to the modal on torrent view.
More comments in the functions for tags

* Improving how config for tags work. Adding a test on them with understandable messages.
Config for tags have now a Field attribute which is linked to the Torrent model. For example anidbid tag type has now a AnidbID field in config which is the name of the field in torrent model (AnidbID). Every new tag type need to have a field attribute with its counterpart in torrent Model.
Fixing some errors

* Fix compile error + Tests Errors

* Improve performance by caching the list of tags with an index
Adding/removing tags works/tested
New translation strings

TODO: test/fix adding tag on upload/edit

* Mini fix to display video quality
+ tags works/tested on modo edit

* Fix editing tags on modpanel

* Edit tags works

* Add translation string

* Add search backend for tags.
?tags=xxx,eee,ddd
?anidb=21
?vndb=23
?vgmdb=24
?vq=full_hd

* Fix Ajax tag Removal&Add

* Added form for descriptive tags

* Forgot to add the link between database and form for descriptive tags.

* Adding the increase/decrease pantsu for descriptive tags

* Fix #1370

* When you actually forgot to commit files after having forgotten commits
2017-08-22 11:48:10 +10:00
akuma06 1dbfe1b3b4 Added moderation part + tests 2017-08-03 03:38:07 +02:00
akuma06 0db143d685 Possibility to add tags from edit panel + upload 2017-08-01 23:38:13 +02:00
akuma06 51d7fe2ef7 Added html views + fix template test + View & JSON Controller 2017-07-29 14:43:12 +02:00
akuma06 03ea72595d OAuth API [done] (#1275)
* Initial Commit for OAuth API

This builds and run and return the right error.
Need to test it and then adding all users as possible client

* Added mising dependency

* just compile already...

* Fixing template test

* Imrpovements

Moved db stuff in models
Added some tests
Added form in modpanel to add/update a client
Added controllers for add/update of client

* Added Forms + speed improvements

Controller oauth client listing + html
Controller oauth client delete + messages
Messages on comment delete
New ES config that disable ES if set to false. Improve load speed on local development
Fix a load config bug
Fix index admin & translation string sign_out broken by @ewhal

* Sanitize empty strig in form array + css

Multiple empty array of strings are sanitized for the oauth client create form
Added some css for the form display

* Upload and Create form works

* Fix splitting response types

* Removing required on secret when updating

* fix travis error

* Fix travis template test

* Update dependency

* Moved to jinzhu instead of azhao

* randomizen secret on creation

* Final touch on oath api

improved display name
fix grant form csrf
fix login csrf on oauth

* Fix gorm test

* fix template test

* Fixing deleted dependency issue

* Make travis faster

* Fix typo

* Fix csrf for api calls

* This shouldn't be exempt

* Removing hard coded hash

@ewhal Don't forget to replace the hash in tokens.go with another one

* Added an example on how to use OAuth middleware

* Renamed fosite utils to oauth2 utils
2017-07-28 13:46:40 +10:00
akuma06 4714c5c0f5 Improviong dynamic load of configs by putting only one variable one 2017-07-21 01:36:25 +02:00
akuma06 c5b3702fcd Fix #1251
Removed the old search parameter on /api.
Fixed issue with navigatation.
Fixed issue with notifications.
Fixed issue with fake anonymous upload on search with userID.
Fixed issue with number of upload on user page.
Moved api to version 1.1.0 with search displaying same as /api
2017-07-20 20:21:57 +02:00
akuma06 b3a8471ac4 Fix notification issue.
Fix #1246
2017-07-20 13:33:50 +02:00
akuma06 9fdb749e61 Add back limit of torrents in profile to 20 and also fix issue with number of torrent uploaded maxed to 50 2017-07-20 00:38:23 +02:00
akuma06 ee95510242 Template refactor (#1212)
* Template rafactor

Now templates go files are in /templates in a templates package. Controllers only have controller files

* Fix template test. Forgot I moved ReassignForm
2017-07-16 17:20:35 +02:00
Renamed from controllers/template_test.go (Browse further)