@@ -9,15 +9,33 @@ def initialize(account)
99 end
1010
1111 def to_blocked_accounts_csv
12- to_csv account . blocking
12+ to_csv account . blocking . select ( :username , :domain )
1313 end
1414
1515 def to_muted_accounts_csv
16- to_csv account . muting
16+ to_csv account . muting . select ( :username , :domain )
1717 end
1818
1919 def to_following_accounts_csv
20- to_csv account . following
20+ to_csv account . following . select ( :username , :domain )
21+ end
22+
23+ def to_lists_csv
24+ CSV . generate do |csv |
25+ account . owned_lists . select ( :title ) . each do |list |
26+ list . accounts . select ( :username , :domain ) . each do |account |
27+ csv << [ list . title , acct ( account ) ]
28+ end
29+ end
30+ end
31+ end
32+
33+ def to_blocked_domains_csv
34+ CSV . generate do |csv |
35+ account . domain_blocks . pluck ( :domain ) . each do |domain |
36+ csv << [ domain ]
37+ end
38+ end
2139 end
2240
2341 def total_storage
@@ -32,6 +50,10 @@ def total_follows
3250 account . following_count
3351 end
3452
53+ def total_lists
54+ account . owned_lists . count
55+ end
56+
3557 def total_followers
3658 account . followers_count
3759 end
@@ -44,13 +66,21 @@ def total_mutes
4466 account . muting . count
4567 end
4668
69+ def total_domain_blocks
70+ account . domain_blocks . count
71+ end
72+
4773 private
4874
4975 def to_csv ( accounts )
5076 CSV . generate do |csv |
5177 accounts . each do |account |
52- csv << [ ( account . local? ? account . local_username_and_domain : account . acct ) ]
78+ csv << [ acct ( account ) ]
5379 end
5480 end
5581 end
82+
83+ def acct ( account )
84+ account . local? ? account . local_username_and_domain : account . acct
85+ end
5686end
0 commit comments