mirror of
https://github.com/captbaritone/webamp.git
synced 2026-08-03 07:23:55 +00:00
More filter options for skins
This commit is contained in:
parent
4b64a69f49
commit
c5ec5d46a4
2 changed files with 36 additions and 5 deletions
|
|
@ -17,10 +17,26 @@ export default class SkinsConnection {
|
|||
_getQuery() {
|
||||
let query = knex("skins").where({ skin_type: 1 });
|
||||
|
||||
if (this._filter === "APPROVED") {
|
||||
query = query
|
||||
.leftJoin("skin_reviews", "skin_reviews.skin_md5", "=", "skins.md5")
|
||||
.where("review", "APPROVED");
|
||||
// TODO: What happens if there are multiple tweets/reviews?
|
||||
// Do we return multiple instances of that skin?
|
||||
switch (this._filter) {
|
||||
case "APPROVED":
|
||||
query = query
|
||||
.leftJoin("skin_reviews", "skin_reviews.skin_md5", "=", "skins.md5")
|
||||
.where("review", "APPROVED");
|
||||
break;
|
||||
case "REJECTED":
|
||||
query = query
|
||||
.leftJoin("skin_reviews", "skin_reviews.skin_md5", "=", "skins.md5")
|
||||
.where("review", "REJECTED");
|
||||
break;
|
||||
case "NSFW":
|
||||
query = query
|
||||
.leftJoin("skin_reviews", "skin_reviews.skin_md5", "=", "skins.md5")
|
||||
.where("review", "NSFW");
|
||||
break;
|
||||
case "TWEETED":
|
||||
query = query.leftJoin("tweets", "tweet.skin_md5", "=", "skins.md5");
|
||||
}
|
||||
|
||||
return query;
|
||||
|
|
|
|||
|
|
@ -248,9 +248,24 @@ enum SkinsSortOption {
|
|||
|
||||
enum SkinsFilterOption {
|
||||
"""
|
||||
All the skins that have been approved for tweeting
|
||||
Only the skins that have been approved for tweeting
|
||||
"""
|
||||
APPROVED
|
||||
|
||||
"""
|
||||
Only the skins that have been rejected for tweeting
|
||||
"""
|
||||
REJECTED
|
||||
|
||||
"""
|
||||
Only the skins that have been marked NSFW
|
||||
"""
|
||||
NSFW
|
||||
|
||||
"""
|
||||
Only the skins that have been tweeted
|
||||
"""
|
||||
TWEETED
|
||||
}
|
||||
|
||||
type Query {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue