diff options
author | Eugen <eugen@zeonfederated.com> | 2017-04-13 13:26:16 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-04-13 13:26:16 +0200 |
commit | 1a12fd14d438380e24421e9c8a8894cc705aba51 (patch) | |
tree | b276d81e18839706eaebe1db5870edc0b8628064 /app/models/export.rb | |
parent | a18fd491b9ad9b2e1677d0e0355712a08967fe14 (diff) | |
parent | 282bb55c3cae07229d4c9a2fe58c1c2a136c57b9 (diff) |
Merge branch 'master' into master
Diffstat (limited to 'app/models/export.rb')
-rw-r--r-- | app/models/export.rb | 38 |
1 files changed, 34 insertions, 4 deletions
diff --git a/app/models/export.rb b/app/models/export.rb index cd1a58eb6..f0d5dd255 100644 --- a/app/models/export.rb +++ b/app/models/export.rb @@ -2,13 +2,43 @@ require 'csv' class Export - attr_reader :accounts + attr_reader :account - def initialize(accounts) - @accounts = accounts + def initialize(account) + @account = account end - def to_csv + def to_blocked_accounts_csv + to_csv account.blocking + end + + def to_muted_accounts_csv + to_csv account.muting + end + + def to_following_accounts_csv + to_csv account.following + end + + def total_storage + account.media_attachments.sum(:file_file_size) + end + + def total_follows + account.following.count + end + + def total_blocks + account.blocking.count + end + + def total_mutes + account.muting.count + end + + private + + def to_csv(accounts) CSV.generate do |csv| accounts.each do |account| csv << [(account.local? ? account.local_username_and_domain : account.acct)] |