dblista 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/dblista.rb +1 -0
- data/lib/dblista/constants.rb +40 -0
- data/lib/dblista/list/bot.rb +17 -1
- data/lib/dblista/list/server.rb +17 -1
- data/lib/dblista/user/actions.rb +8 -4
- data/lib/dblista/user/boosting.rb +4 -2
- data/lib/dblista/user/notifications.rb +6 -3
- data/lib/dblista/user/rating.rb +4 -2
- data/lib/dblista/user/voting.rb +2 -1
- data/lib/dblista/version.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a75838be15e70b98ad6b8f37c880a53539b82f8e0f11ff433ec7665efb9cb4f7
|
4
|
+
data.tar.gz: cf00504ac704fff20bb6eea3d4c585f7feb1337529aff5bf488e23e15496df18
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e8c280dae3019394510864fb8f8d8ac9f8b7fc59d0ab0278620fd159f64629768088f0654d4d060804a187ff7230cf07ef88819e313dcebd15e8ef70bf587146
|
7
|
+
data.tar.gz: 4de0995b3040d0ef57a8a6f8d3eb07b7e58d931f1a58ae5995944b1f121961bb52d0dbfbabc188b40d4baf076c12e25546dd09930e0c97dd33036dbf1a53ac98
|
data/Gemfile.lock
CHANGED
data/lib/dblista.rb
CHANGED
@@ -0,0 +1,40 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module DBLista
|
4
|
+
# Tags
|
5
|
+
module Tags
|
6
|
+
# Bot tags
|
7
|
+
module Bot
|
8
|
+
MODERATION = :moderacja
|
9
|
+
TOOLS = :narzędzia
|
10
|
+
MUSIC = :muzyka
|
11
|
+
DASHBOARD = :panel
|
12
|
+
FUN = :rozrywka
|
13
|
+
LEVELS = :poziomy
|
14
|
+
GAMES = :gry
|
15
|
+
ROLEPLAY = :roleplay
|
16
|
+
ECONOMY = :ekonomia
|
17
|
+
ANIME = :anime
|
18
|
+
NSFW = :nsfw
|
19
|
+
OTHER = :inne
|
20
|
+
end
|
21
|
+
# Server tags
|
22
|
+
module Server
|
23
|
+
COMMUNITY = :community
|
24
|
+
PROGRAMMING = :programowanie
|
25
|
+
GAMES = :gry
|
26
|
+
YOUTUBE = :youtube
|
27
|
+
HOBBY = :hobby
|
28
|
+
ANIME = :anime
|
29
|
+
ROLEPLAY = :roleplay
|
30
|
+
OTHER = :inne
|
31
|
+
end
|
32
|
+
end
|
33
|
+
# Permissions
|
34
|
+
module Permissions
|
35
|
+
USER = 0
|
36
|
+
MODERATOR = 1
|
37
|
+
BIG_MODERATOR = 2
|
38
|
+
ADMINISTRATOR = 3
|
39
|
+
end
|
40
|
+
end
|
data/lib/dblista/list/bot.rb
CHANGED
@@ -44,6 +44,22 @@ module DBLista::List
|
|
44
44
|
DBLista._get('/bots/list/rejected')
|
45
45
|
end
|
46
46
|
|
47
|
+
# Fetches all bots
|
48
|
+
#
|
49
|
+
# @return [Array] array of raw bot data from DBLista
|
50
|
+
def self.all
|
51
|
+
bots = []
|
52
|
+
i = 0
|
53
|
+
loop do
|
54
|
+
page = DBLista::List::Bot.top(i)
|
55
|
+
break if page.length.zero?
|
56
|
+
|
57
|
+
bots += page
|
58
|
+
i += 1
|
59
|
+
end
|
60
|
+
bots
|
61
|
+
end
|
62
|
+
|
47
63
|
# Bot search
|
48
64
|
#
|
49
65
|
# @param query [String] query search
|
@@ -51,7 +67,7 @@ module DBLista::List
|
|
51
67
|
def self.search(query)
|
52
68
|
raise DBLista::Error, DBLista::Errors::QUERY_NOT_PROVIDED unless query
|
53
69
|
|
54
|
-
DBLista._get("/bots/search/#{CGI.escape query}")
|
70
|
+
DBLista._get("/bots/search/#{CGI.escape query.to_s}")
|
55
71
|
end
|
56
72
|
end
|
57
73
|
end
|
data/lib/dblista/list/server.rb
CHANGED
@@ -23,6 +23,22 @@ module DBLista::List
|
|
23
23
|
DBLista._get("/servers/list/premium/#{page}")
|
24
24
|
end
|
25
25
|
|
26
|
+
# Fetches all servers
|
27
|
+
#
|
28
|
+
# @return [Array] array of raw server data from DBLista
|
29
|
+
def self.all
|
30
|
+
servers = []
|
31
|
+
i = 0
|
32
|
+
loop do
|
33
|
+
page = DBLista::List::Server.top(i)
|
34
|
+
break if page.length.zero?
|
35
|
+
|
36
|
+
servers += page
|
37
|
+
i += 1
|
38
|
+
end
|
39
|
+
servers
|
40
|
+
end
|
41
|
+
|
26
42
|
# Server search
|
27
43
|
#
|
28
44
|
# @param query [String] search query
|
@@ -30,7 +46,7 @@ module DBLista::List
|
|
30
46
|
def self.search(query)
|
31
47
|
raise DBLista::Error, DBLista::Errors::QUERY_NOT_PROVIDED unless query
|
32
48
|
|
33
|
-
DBLista._get("/servers/search/#{CGI.escape query}")
|
49
|
+
DBLista._get("/servers/search/#{CGI.escape query.to_s}")
|
34
50
|
end
|
35
51
|
end
|
36
52
|
end
|
data/lib/dblista/user/actions.rb
CHANGED
@@ -9,36 +9,39 @@ module DBLista::User
|
|
9
9
|
#
|
10
10
|
# @param body [Hash] raw body to send
|
11
11
|
# @param type [Symbol] type of entity (bot/server)
|
12
|
-
# @return [
|
12
|
+
# @return [Boolean] true if operation succeded
|
13
13
|
def add(body, type = 'bot')
|
14
14
|
raise DBLista::Error, DBLista::Errors::BODY_HASH unless body.is_a?(Hash)
|
15
15
|
raise DBLista::Error, DBLista::Errors::TYPE_NOT_ALLOWED unless DBLista::User::Client::ALLOWED_TYPES.include?(type)
|
16
16
|
|
17
17
|
DBLista._post("/#{type}s", body, @token)
|
18
|
+
true
|
18
19
|
end
|
19
20
|
|
20
21
|
# Edits bot/server in DBLista
|
21
22
|
#
|
22
23
|
# @param body [Hash] raw body to send
|
23
24
|
# @param type [Symbol] type of entity (bot/server)
|
24
|
-
# @return [
|
25
|
+
# @return [Boolean] true if operation succeded
|
25
26
|
def edit(body, type = :bot)
|
26
27
|
raise DBLista::Error, DBLista::Errors::BODY_HASH unless body.is_a?(Hash)
|
27
28
|
raise DBLista::Error, DBLista::Errors::TYPE_NOT_ALLOWED unless DBLista::User::Client::ALLOWED_TYPES.include?(type)
|
28
29
|
|
29
30
|
DBLista._put("/#{type}s", body, @token)
|
31
|
+
true
|
30
32
|
end
|
31
33
|
|
32
34
|
# Deletes bot/server from DBLista
|
33
35
|
#
|
34
36
|
# @param id [Integer] entity ID
|
35
37
|
# @param type [Symbol] type of entity (bot/server)
|
36
|
-
# @return [
|
38
|
+
# @return [Boolean] true if operation succeded
|
37
39
|
def delete(id, type = :bot)
|
38
40
|
DBLista._validate_id id
|
39
41
|
raise DBLista::Error, DBLista::Errors::TYPE_NOT_ALLOWED unless DBLista::User::Client::ALLOWED_TYPES.include?(type)
|
40
42
|
|
41
43
|
DBLista._delete("/#{type}s/#{id}", nil, @token)
|
44
|
+
true
|
42
45
|
end
|
43
46
|
|
44
47
|
# Manages user (bans or adds premium)
|
@@ -47,12 +50,13 @@ module DBLista::User
|
|
47
50
|
# @param id [Integer] user ID
|
48
51
|
# @param banned [Boolean] user ban status
|
49
52
|
# @param premium [Integer] days for premium
|
50
|
-
# @return [
|
53
|
+
# @return [Boolean] true if operation succeded
|
51
54
|
def manage_user(id, banned = false, premium = 0)
|
52
55
|
DBLista._post("/users/#{id}/manage", {
|
53
56
|
premium: premium,
|
54
57
|
ban: banned
|
55
58
|
}, @token)
|
59
|
+
true
|
56
60
|
end
|
57
61
|
end
|
58
62
|
end
|
@@ -7,24 +7,26 @@ module DBLista::User
|
|
7
7
|
#
|
8
8
|
# @param id [Integer] entity ID
|
9
9
|
# @param type [Symbol] type of entity (bot/server)
|
10
|
-
# @return [
|
10
|
+
# @return [Boolean] true if operation succeded
|
11
11
|
def boost(id, type = :bot)
|
12
12
|
DBLista._validate_id id
|
13
13
|
raise DBLista::Error, DBLista::Errors::TYPE_NOT_ALLOWED unless DBLista::User::Client::ALLOWED_TYPES.include?(type)
|
14
14
|
|
15
15
|
DBLista._post("/#{type}s/#{id}/boost", nil, @token)
|
16
|
+
true
|
16
17
|
end
|
17
18
|
|
18
19
|
# Removes boost from a selected bot/server
|
19
20
|
#
|
20
21
|
# @param id [Integer] entity ID
|
21
22
|
# @param type [Symbol] type of entity (bot/server)
|
22
|
-
# @return [
|
23
|
+
# @return [Boolean] true if operation succeded
|
23
24
|
def delete_boost(id, type = :bot)
|
24
25
|
DBLista._validate_id id
|
25
26
|
raise DBLista::Error, DBLista::Errors::TYPE_NOT_ALLOWED unless DBLista::User::Client::ALLOWED_TYPES.include?(type)
|
26
27
|
|
27
28
|
DBLista._delete("/#{type}s/#{id}/boost", nil, @token)
|
29
|
+
true
|
28
30
|
end
|
29
31
|
end
|
30
32
|
end
|
@@ -12,9 +12,10 @@ module DBLista::User
|
|
12
12
|
|
13
13
|
# Clears user notifications
|
14
14
|
#
|
15
|
-
# @return [
|
15
|
+
# @return [Boolean] true if operation succeded
|
16
16
|
def clear_notifications
|
17
17
|
DBLista._get('/users/me/notifications/clear', @token)
|
18
|
+
true
|
18
19
|
end
|
19
20
|
|
20
21
|
# Sends notification to specified user
|
@@ -23,13 +24,14 @@ module DBLista::User
|
|
23
24
|
# @param rank [Integer] user ID
|
24
25
|
# @param details [String] details (content)
|
25
26
|
# @param url [String] url to redirect if clicked
|
26
|
-
# @return [
|
27
|
+
# @return [Boolean] true if operation succeded
|
27
28
|
def send_notification(id, details, url = '#')
|
28
29
|
DBLista._validate_id id
|
29
30
|
DBLista._post("/users/#{id}/notifications", {
|
30
31
|
text: details,
|
31
32
|
url: url || '#'
|
32
33
|
}, @token)
|
34
|
+
true
|
33
35
|
end
|
34
36
|
|
35
37
|
# Sends notification to specified group (rank)
|
@@ -38,12 +40,13 @@ module DBLista::User
|
|
38
40
|
# @param rank [Integer] rank ID
|
39
41
|
# @param details [String] details (content)
|
40
42
|
# @param url [String] url to redirect if clicked
|
41
|
-
# @return [
|
43
|
+
# @return [Boolean] true if operation succeded
|
42
44
|
def send_group_notification(rank, details, url = '#')
|
43
45
|
DBLista._post("/users/group/#{rank}/notifications", {
|
44
46
|
text: details,
|
45
47
|
url: url || '#'
|
46
48
|
}, @token)
|
49
|
+
true
|
47
50
|
end
|
48
51
|
end
|
49
52
|
end
|
data/lib/dblista/user/rating.rb
CHANGED
@@ -9,7 +9,7 @@ module DBLista::User
|
|
9
9
|
# @param rating [Integer] rating from 0 to 5
|
10
10
|
# @param details [String] details (description)
|
11
11
|
# @param type [Symbol] type of entity (bot/server)
|
12
|
-
# @return [
|
12
|
+
# @return [Boolean] true if operation succeded
|
13
13
|
def rate(id, rating, details, type = :bot)
|
14
14
|
DBLista._validate_id id
|
15
15
|
raise DBLista::Error, DBLista::Errors::TYPE_NOT_ALLOWED unless DBLista::User::Client::ALLOWED_TYPES.include?(type)
|
@@ -18,6 +18,7 @@ module DBLista::User
|
|
18
18
|
rating: rating,
|
19
19
|
details: details
|
20
20
|
}, @token)
|
21
|
+
true
|
21
22
|
end
|
22
23
|
|
23
24
|
# Removes rate for a selected bot/server
|
@@ -25,12 +26,13 @@ module DBLista::User
|
|
25
26
|
# @param id [Integer] entity ID
|
26
27
|
# @param target_id [Integer] target user to remove rate from (for owners only)
|
27
28
|
# @param type [Symbol] type of entity (bot/server)
|
28
|
-
# @return [
|
29
|
+
# @return [Boolean] true if operation succeded
|
29
30
|
def delete_rate(id, target_id = nil, type = :bot)
|
30
31
|
DBLista._validate_id id
|
31
32
|
raise DBLista::Error, DBLista::Errors::TYPE_NOT_ALLOWED unless DBLista::User::Client::ALLOWED_TYPES.include?(type)
|
32
33
|
|
33
34
|
DBLista._delete("/#{type}s/#{id}/rate/#{target_id}", nil, @token)
|
35
|
+
true
|
34
36
|
end
|
35
37
|
end
|
36
38
|
end
|
data/lib/dblista/user/voting.rb
CHANGED
@@ -7,12 +7,13 @@ module DBLista::User
|
|
7
7
|
#
|
8
8
|
# @param id [Integer] entity ID
|
9
9
|
# @param type [Symbol] type of entity (bot/server)
|
10
|
-
# @return [
|
10
|
+
# @return [Boolean] true if operation succeded
|
11
11
|
def vote(id, type = :bot)
|
12
12
|
DBLista._validate_id id
|
13
13
|
raise DBLista::Error, DBLista::Errors::TYPE_NOT_ALLOWED unless DBLista::User::Client::ALLOWED_TYPES.include?(type)
|
14
14
|
|
15
15
|
DBLista._post("/#{type}s/#{id}/vote", nil, @token)
|
16
|
+
true
|
16
17
|
end
|
17
18
|
end
|
18
19
|
end
|
data/lib/dblista/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dblista
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- deepivin
|
@@ -70,6 +70,7 @@ files:
|
|
70
70
|
- dblista.gemspec
|
71
71
|
- example/info.rb
|
72
72
|
- lib/dblista.rb
|
73
|
+
- lib/dblista/constants.rb
|
73
74
|
- lib/dblista/errors.rb
|
74
75
|
- lib/dblista/helpers.rb
|
75
76
|
- lib/dblista/info.rb
|