diff options
author | Azul <azul@riseup.net> | 2018-02-05 09:27:48 +0100 |
---|---|---|
committer | Azul <azul@riseup.net> | 2018-02-05 09:27:48 +0100 |
commit | 0d622c2164a97c80027f113b7fce5878b4f585bb (patch) | |
tree | ff74ea6bab3cf88922cb4edcc0e36c8dd137a545 /lib/nickserver/couch_db/response.rb | |
parent | a43e647663100b7a5117008641765d3508edbe5b (diff) |
feature: hand out other key types like katzenpost keys
Diffstat (limited to 'lib/nickserver/couch_db/response.rb')
-rw-r--r-- | lib/nickserver/couch_db/response.rb | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/nickserver/couch_db/response.rb b/lib/nickserver/couch_db/response.rb index eae5cc1..427ac92 100644 --- a/lib/nickserver/couch_db/response.rb +++ b/lib/nickserver/couch_db/response.rb @@ -26,7 +26,7 @@ module Nickserver::CouchDB protected def key_response - format address: nick.to_s, openpgp: key + format keys.merge(address: nick.to_s) end def not_found_response @@ -37,8 +37,15 @@ module Nickserver::CouchDB response.to_json end - def key - rows.first['value'] + def keys + rows.first['value'].map do |k,v| + if k == 'pgp' + # created through webapps deprecated API + ['openpgp', v] + else + [k, v['value']] + end + end.to_h end def ok? @@ -46,7 +53,7 @@ module Nickserver::CouchDB end def empty? - rows.empty? + rows.empty? || keys.empty? end def rows |