summaryrefslogtreecommitdiff
path: root/server.rb
diff options
context:
space:
mode:
authorpdp8 <pdp8@pdp8.info>2023-10-06 16:58:15 +0200
committerpdp8 <pdp8@pdp8.info>2023-10-06 16:58:15 +0200
commit443b6fd42abf9cb1392125199cca449702898327 (patch)
tree551282e32062ba302f3a589b874545a2c1363c26 /server.rb
parent580c684f792d6fab16c58b9a08d566cd03c72ca4 (diff)
html create/announce outboxes separated
Diffstat (limited to 'server.rb')
-rw-r--r--server.rb38
1 files changed, 28 insertions, 10 deletions
diff --git a/server.rb b/server.rb
index e2d4896..c083cb1 100644
--- a/server.rb
+++ b/server.rb
@@ -20,8 +20,20 @@ get '/' do
redirect 'https://social.pdp8.info/outbox'
end
+get '/outbox/announce', provides: 'html' do
+ @objects = announce_outbox.collect { |a| a['object'] }
+ @type = 'announce'
+ erb :outbox
+end
+
+get '/outbox/create', provides: 'html' do
+ @objects = create_outbox.collect { |a| a['object'] }
+ @type = 'create'
+ erb :outbox
+end
+
get '/outbox', provides: 'html' do
- @activities = public_outbox
+ redirect 'https://social.pdp8.info/outbox/create'
erb :outbox
end
@@ -35,7 +47,7 @@ get '/outbox' do
end
get '/pdp8', provides: 'html' do
- redirect 'https://social.pdp8.info/outbox'
+ redirect 'https://social.pdp8.info/outbox/create'
end
get '/pdp8' do
@@ -158,14 +170,20 @@ helpers do
File.open(File.join(INBOX[:dir], 'visited'), 'a+') { |f| f.puts @object['id'] }
end
+ def create_outbox
+ Dir[File.join('outbox', 'create', '*.json')].collect do |f|
+ JSON.load_file(f)
+ end.select { |a| a['to'].include?('https://www.w3.org/ns/activitystreams#Public') }.sort_by { |a| a['published'] }.reverse
+ end
+
+ def announce_outbox
+ Dir[File.join('outbox', 'announce', '*.json')].collect do |f|
+ JSON.load_file(f)
+ end.select { |a| a['to'].include?('https://www.w3.org/ns/activitystreams#Public') }.sort_by { |a| a['published'] }.reverse
+ end
+
def public_outbox
- create = Dir[File.join('outbox', 'create', '*.json')].collect do |f|
- JSON.load_file(f)
- end.select { |a| a['to'].include?('https://www.w3.org/ns/activitystreams#Public') }.sort_by { |a| a['published'] }.reverse
- announce = Dir[File.join('outbox', 'announce', '*.json')].collect do |f|
- JSON.load_file(f)
- end.select { |a| a['to'].include?('https://www.w3.org/ns/activitystreams#Public') }.sort_by { |a| a['published'] }.reverse
- create + announce
+ create_outbox + announce_outbox
end
# https://github.com/mastodon/mastodon/blob/main/app/controllers/concerns/signature_verification.rb
@@ -220,6 +238,6 @@ helpers do
# p signature
puts comparison
# jj @activity
- # halt 403
+ halt 403
end
end