diaspora_federation-rails 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d2c073fb6f129f342655357c413e15f71d8488f0
|
4
|
+
data.tar.gz: acb5f067af3627610f934df034fd13b33d377492
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d48b15881d82d5501fd0f240c4be60439dcb5b894858904a9d41fbb4f609b35275a549426930600e2615dbdd8cb4d8983af28c414712bc5083f16171fb919513
|
7
|
+
data.tar.gz: d9ee969284db6a11239a1e2901e2a87830f94bae9da483d1b3c82d906d3fcb75fc6594833fa9b3882b09147ddd4d16b95015d3ebc5d210434be312f6f488912c
|
data/README.md
CHANGED
@@ -43,16 +43,16 @@ DiasporaFederation.configure do |config|
|
|
43
43
|
config.server_uri = AppConfig.pod_uri
|
44
44
|
|
45
45
|
config.define_callbacks do
|
46
|
-
on :
|
47
|
-
person = Person.
|
46
|
+
on :fetch_person_for_webfinger do |diaspora_id|
|
47
|
+
person = Person.find_local_by_diaspora_id(diaspora_id)
|
48
48
|
if person
|
49
|
-
DiasporaFederation::
|
49
|
+
DiasporaFederation::Discovery::WebFinger.new(
|
50
50
|
# ...
|
51
51
|
)
|
52
52
|
end
|
53
53
|
end
|
54
54
|
|
55
|
-
on :
|
55
|
+
on :fetch_person_for_hcard do |guid|
|
56
56
|
# ...
|
57
57
|
end
|
58
58
|
end
|
@@ -7,12 +7,14 @@ module DiasporaFederation
|
|
7
7
|
#
|
8
8
|
# GET /hcard/users/:guid
|
9
9
|
def hcard
|
10
|
-
person_hcard = DiasporaFederation.callbacks.trigger(:
|
10
|
+
person_hcard = DiasporaFederation.callbacks.trigger(:fetch_person_for_hcard, params[:guid])
|
11
11
|
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
12
|
+
if person_hcard.nil?
|
13
|
+
render nothing: true, status: 404
|
14
|
+
else
|
15
|
+
logger.info "hcard profile request for: #{person_hcard.nickname}:#{person_hcard.guid}"
|
16
|
+
render html: person_hcard.to_html.html_safe
|
17
|
+
end
|
16
18
|
end
|
17
19
|
end
|
18
20
|
end
|
@@ -37,10 +37,12 @@ module DiasporaFederation
|
|
37
37
|
def legacy_webfinger
|
38
38
|
person_wf = find_person_webfinger(params[:q]) if params[:q]
|
39
39
|
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
40
|
+
if person_wf.nil?
|
41
|
+
render nothing: true, status: 404
|
42
|
+
else
|
43
|
+
logger.info "webfinger profile request for: #{person_wf.acct_uri}"
|
44
|
+
render body: person_wf.to_xml, content_type: "application/xrd+xml"
|
45
|
+
end
|
44
46
|
end
|
45
47
|
|
46
48
|
private
|
@@ -48,11 +50,11 @@ module DiasporaFederation
|
|
48
50
|
# creates the host-meta xml with the configured server_uri and caches it
|
49
51
|
# @return [String] XML string
|
50
52
|
def self.host_meta_xml
|
51
|
-
@host_meta_xml ||=
|
53
|
+
@host_meta_xml ||= Discovery::HostMeta.from_base_url(DiasporaFederation.server_uri.to_s).to_xml
|
52
54
|
end
|
53
55
|
|
54
56
|
def find_person_webfinger(query)
|
55
|
-
DiasporaFederation.callbacks.trigger(:
|
57
|
+
DiasporaFederation.callbacks.trigger(:fetch_person_for_webfinger, query.strip.downcase.sub("acct:", ""))
|
56
58
|
end
|
57
59
|
end
|
58
60
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: diaspora_federation-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Benjamin Neff
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-08-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -30,14 +30,14 @@ dependencies:
|
|
30
30
|
requirements:
|
31
31
|
- - '='
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: 0.0.
|
33
|
+
version: 0.0.4
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - '='
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: 0.0.
|
40
|
+
version: 0.0.4
|
41
41
|
description: A rails engine that adds the diaspora* federation protocol to a rails
|
42
42
|
app
|
43
43
|
email:
|