c33817e4ab
Every operation updated user last login time, which was inefficient. Changed it to update only after logins from credentials or cookies.
164 lines
5.5 KiB
Text
164 lines
5.5 KiB
Text
This is transient file that lists functionalities to be implemented before
|
|
first major release.
|
|
|
|
everything related to posts:
|
|
- single post view
|
|
- basic information
|
|
- time of last edit
|
|
- time of last feature
|
|
- how many times the post was featured
|
|
- feature
|
|
- fav
|
|
- score (see notes about scoring)
|
|
- editing
|
|
- tags
|
|
- source
|
|
- safety
|
|
- content
|
|
- thumb
|
|
- relations
|
|
- ability to loop video posts
|
|
- post edit history (think
|
|
http://konachan.com/history?search=post%3A188614)
|
|
- relations
|
|
- previous and next post (difficult)
|
|
- extract Pager from PagedCollectionPresenter
|
|
- rename PagedCollectionPresenter to PagerPresenter
|
|
- remember last search
|
|
- take care of pages
|
|
- add A/D hotkeys
|
|
- hiding posts
|
|
- link to iqdb and/or tineye
|
|
|
|
- featured posts
|
|
- ability to feature the post
|
|
- show the post on main page
|
|
- tag list
|
|
- uploader
|
|
|
|
- random post
|
|
- regard safety settings
|
|
|
|
- ability to paste many urls in post upload
|
|
|
|
- post listing
|
|
- better thumbnail loading
|
|
- fav count
|
|
- score
|
|
- comment count
|
|
- regard safety settings
|
|
- add warning if no posts were found
|
|
- search filters
|
|
- tag
|
|
- -tag
|
|
- submit:rr-
|
|
- comment:rr-
|
|
- comment: 3..5
|
|
- fav:rr-
|
|
- fav:3..5
|
|
- score:3..5
|
|
- tag:3..5
|
|
- date:today
|
|
- date:yesterday
|
|
- date:yyyy[-mm[-dd]]..yyyy[-mm[-dd]]
|
|
- filesize:3K..5M
|
|
- imgsize:huge/large/medium/small
|
|
- id:3,4,5
|
|
- hash:postName
|
|
- type:img/flash/yt/video
|
|
- special:liked
|
|
- special:disliked
|
|
- special:fav
|
|
- special:hidden
|
|
- search order
|
|
- order:id
|
|
- order:date
|
|
- order:score
|
|
- order:comments
|
|
- order:favs
|
|
- order:tags
|
|
- order:commentdate
|
|
- order:favdate
|
|
- order:filesize
|
|
- order:random (at least unstable version)
|
|
- safe/sketchy/unsafe buttons and top navigation search goes to post
|
|
list presenter
|
|
|
|
everything related to users:
|
|
- banning
|
|
- show link to user's uploads
|
|
- show link to user's favs
|
|
- show link to user's liked posts
|
|
- better avatar loading
|
|
|
|
everything related to tags:
|
|
- tag listing
|
|
- tag autocompletion (difficult)
|
|
- time of last tag usage
|
|
- time of tag addition
|
|
- mass tag
|
|
- tag merging
|
|
- editing tags
|
|
- tag relations
|
|
- tag aliases
|
|
- tag categories (from config.ini)
|
|
- tag descriptions
|
|
- tag edit history
|
|
|
|
everything related to comments:
|
|
- adding comments
|
|
- listing comments in post view
|
|
- listing comments in comment list view
|
|
- deleting
|
|
- editing
|
|
- markdown
|
|
- score (see notes about scoring)
|
|
|
|
refactors:
|
|
- centralize markdown prefix decorators
|
|
- add enum validation in IValidatables (needs refactors of enums and
|
|
possible disposal of EnumHelper in favor of something more subtle)
|
|
- (idea) keep denormalized data in separate tables, i.e. tag usages in
|
|
tag_meta or post favorite count in post_meta, so that it's obvious what
|
|
can be recalculated on demand and what is real data
|
|
- change AbstractSearchService to AbstractSearchParser
|
|
- embed AbstractSearchService into Dao (it sucks to include XSearchService
|
|
together with Dao)
|
|
- simplify template loading in presenters - right now template loading
|
|
requires _, util and promise:
|
|
promise.wait(util.loadTemplate('blah'))
|
|
.then(function(html) {
|
|
template = _.template(html); });
|
|
- change content spinner to nprogress:
|
|
http://ricostacruz.com/nprogress/
|
|
|
|
miscellaneous:
|
|
- fix mouse trap hotkeys when leaving page
|
|
- add hotkeys for focusing items in top navigation
|
|
- add ability to select tags text in tag input
|
|
- pasting tags should "soft-add" latest word in clipboard to input
|
|
- pasting tags should have protection against very long clipboard content
|
|
- add protection against ridiculously long tag names
|
|
- add customizable favicon
|
|
- add customizable logo
|
|
- add log engine and log everything that should be logged
|
|
- I don't think browsing online logs is very necessary
|
|
- add help, api documentation
|
|
- add version on homepage that reads version from package.json and git hash
|
|
- add tool for migrating szurubooru database
|
|
- endless pager should include information about page number
|
|
- add README - apache2 has good README:
|
|
http://svn.apache.org/repos/asf/httpd/httpd/trunk/README
|
|
- add spinner to forms such as registration, user query, login, settings
|
|
etc. make sure the code isn't too duplicated.
|
|
|
|
notes about scoring:
|
|
- anonymous users should be able to score posts
|
|
- anonymous users should be able to revoke and correct their scores
|
|
- it should be difficult to score post repeatedly (add protection in local
|
|
storage, anything more is probably an overkill)
|
|
- scored of authorized users should be persisted into database so it can be
|
|
searched for with special:liked and special:disliked
|
|
|
|
some day:
|
|
- configure mails and ensure it works with gmail
|