summaryrefslogtreecommitdiff
path: root/lib/nickserver/couch_db/response.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/nickserver/couch_db/response.rb')
-rw-r--r--lib/nickserver/couch_db/response.rb15
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