* 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
* 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
* Update search.go
* Update helpers.go
* Update search.jet.html
* Update search.jet.html
* Removing SortOrder and SortType from template's Search struct. Since we already have them in main torrentParam search struct and we don't need to overwrite them.
* Replaced old date search filter behaviour
* 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
* Add themeToggle handler to router.go
* Create themeToggle/router.go & ThemeToggle.go
* Add link to /dark in footer, remove display = none on toggle dark mode
* Remove JS that ordered toggle dark mode link to show as it is now constantly visible
* Rollback to fix errors
* Add some comments
* Create redirectUrl variable & set it's content then use it to redirect user
* Remove useless log
* Remove usage of fmt
* Add redirect get parameter to toggle link
* Add another url for toggleTheme
* wooo
* Update base.jet.html
* Update base.jet.html
* Add HTML for sorting by name etc
* Add CSS to hide inputs for sorting in refine
* Set value of SortOrder on true if on true (wew)
* Add SortOrder & SortType variables
* change translation strings
* add translation strings
* forgot a missing { and change ascending value
* Update search.go
* Improvement
You don't actually need to set a variable type. Golang infers it from the right side of the equal :).
I needed in templates to do that since I need to use it in conditions. But since you removed the condition, it's not necessary
* 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
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
They are in different folders and all loaded in controllers/router.go.
This means that you only have to create a folder with a router.go file and import this folder in main router.go to add a handler.
* Added configor as a new library
Now config is a singleton. You only need to do config.Get() instead of doing config.Conf.
* Forgot godep save 🐤
* Fix accidental removal of }
* API documentation
Using apiDocjs to generate it.
When updating API, you should back up all old comments of the api in _apidoc.json under the History comment
* Update rss handler
* API documentation done