Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Calv
pleroma
Commits
cc06d22d
Commit
cc06d22d
authored
Jun 20, 2017
by
dtluna
Browse files
Merge branch 'develop' of ssh.gitgud.io:lambadalambda/pleroma into refactor/status-view
parents
34d3a90b
42633406
Changes
7
Hide whitespace changes
Inline
Side-by-side
lib/pleroma/activity.ex
View file @
cc06d22d
...
...
@@ -12,16 +12,17 @@ defmodule Pleroma.Activity do
def
get_by_ap_id
(
ap_id
)
do
Repo
.
one
(
from
activity
in
Activity
,
where:
fragment
(
"
? @>
?"
,
activity
.
data
,
^
%{
id:
ap_id
}
))
where:
fragment
(
"
(?)->>'id' =
?"
,
activity
.
data
,
^
to_string
(
ap_id
)
))
end
def
all_by_object_ap_id
(
ap_id
)
do
Repo
.
all
(
from
activity
in
Activity
,
where:
fragment
(
"
? @>
?"
,
activity
.
data
,
^
%{
object:
%{
id:
ap_id
}}
))
where:
fragment
(
"
(?)->'object'->>'id' =
?"
,
activity
.
data
,
^
to_string
(
ap_id
)
))
end
def
get_create_activity_by_object_ap_id
(
ap_id
)
do
Repo
.
one
(
from
activity
in
Activity
,
where:
fragment
(
"? @> ?"
,
activity
.
data
,
^
%{
type:
"Create"
,
object:
%{
id:
ap_id
}}))
where:
fragment
(
"(?)->'object'->>'id' = ?"
,
activity
.
data
,
^
to_string
(
ap_id
))
and
fragment
(
"(?)->>'type' = 'Create'"
,
activity
.
data
))
end
end
lib/pleroma/web/router.ex
View file @
cc06d22d
...
...
@@ -26,8 +26,8 @@ defmodule Pleroma.Web.Router do
scope
"/api"
,
Pleroma
.
Web
do
pipe_through
:api
get
"/help/test"
,
TwitterAPI
.
Controller
,
:help_test
get
"/statusnet/config"
,
TwitterAPI
.
Controller
,
:config
get
"/help/test"
,
TwitterAPI
.
Util
Controller
,
:help_test
get
"/statusnet/config"
,
TwitterAPI
.
Util
Controller
,
:config
get
"/statuses/public_timeline"
,
TwitterAPI
.
Controller
,
:public_timeline
get
"/statuses/public_and_external_timeline"
,
TwitterAPI
.
Controller
,
:public_and_external_timeline
...
...
lib/pleroma/web/twitter_api/controllers/util_controller.ex
0 → 100644
View file @
cc06d22d
defmodule
Pleroma
.
Web
.
TwitterAPI
.
UtilController
do
use
Pleroma
.
Web
,
:controller
alias
Pleroma
.
Web
def
help_test
(
conn
,
_params
)
do
json
(
conn
,
"ok"
)
end
def
config
(
conn
,
_params
)
do
json
(
conn
,
%{
site:
%{
name:
Web
.
base_url
,
server:
Web
.
base_url
,
textlimit:
-
1
}
})
end
end
lib/pleroma/web/twitter_api/twitter_api_controller.ex
View file @
cc06d22d
defmodule
Pleroma
.
Web
.
TwitterAPI
.
Controller
do
use
Pleroma
.
Web
,
:controller
alias
Pleroma
.
Web
.
TwitterAPI
.
{
StatusView
,
TwitterAPI
,
UserView
}
alias
Pleroma
.
{
Web
,
Repo
,
Activity
}
alias
Pleroma
.
{
Repo
,
Activity
}
alias
Pleroma
.
Web
.
ActivityPub
.
ActivityPub
alias
Ecto
.
Changeset
...
...
@@ -110,26 +110,12 @@ defmodule Pleroma.Web.TwitterAPI.Controller do
|>
send_resp
(
200
,
response
)
end
def
help_test
(
conn
,
_params
)
do
json
(
conn
,
"ok"
)
end
def
upload_json
(
conn
,
%{
"media"
=>
media
})
do
response
=
TwitterAPI
.
upload
(
media
,
"json"
)
conn
|>
json_reply
(
200
,
response
)
end
def
config
(
conn
,
_params
)
do
json
(
conn
,
%{
site:
%{
name:
Web
.
base_url
,
server:
Web
.
base_url
,
textlimit:
-
1
}
})
end
def
favorite
(%{
assigns:
%{
user:
user
}}
=
conn
,
%{
"id"
=>
id
})
do
activity
=
Repo
.
get
(
Activity
,
id
)
{
:ok
,
activity
}
=
TwitterAPI
.
favorite
(
user
,
activity
)
...
...
lib/pleroma/web/websub/websub.ex
View file @
cc06d22d
...
...
@@ -50,13 +50,17 @@ defmodule Pleroma.Web.Websub do
|>
to_string
signature
=
sign
(
sub
.
secret
||
""
,
response
)
Logger
.
debug
(
fn
->
"Pushing to
#{
sub
.
callback
}
"
end
)
Logger
.
debug
(
fn
->
"Pushing
#{
topic
}
to
#{
sub
.
callback
}
"
end
)
Task
.
start
(
fn
->
@httpoison
.
post
(
sub
.
callback
,
response
,
[
with
{
:ok
,
%{
status_code:
code
}}
<-
@httpoison
.
post
(
sub
.
callback
,
response
,
[
{
"Content-Type"
,
"application/atom+xml"
},
{
"X-Hub-Signature"
,
"sha1=
#{
signature
}
"
}
])
])
do
Logger
.
debug
(
fn
->
"Pushed to
#{
sub
.
callback
}
, code
#{
code
}
"
end
)
else
e
->
Logger
.
debug
(
fn
->
"Couldn't push to
#{
sub
.
callback
}
,
#{
inspect
(
e
)
}
"
end
)
end
end
)
end
)
end
...
...
priv/repo/migrations/20170620133028_add_object_activity_index.exs
0 → 100644
View file @
cc06d22d
defmodule
Pleroma
.
Repo
.
Migrations
.
AddObjectActivityIndex
do
use
Ecto
.
Migration
def
change
do
create
index
(
:objects
,
[
"(data->'object'->>'id')"
,
"(data->>'type')"
],
name:
:activities_create_objects_index
)
end
end
priv/repo/migrations/20170620142420_add_object_activity_index_part_two.exs
0 → 100644
View file @
cc06d22d
defmodule
Pleroma
.
Repo
.
Migrations
.
AddObjectActivityIndexPartTwo
do
use
Ecto
.
Migration
def
change
do
drop
index
(
:objects
,
[
"(data->'object'->>'id')"
,
"(data->>'type')"
],
name:
:activities_create_objects_index
)
create
index
(
:activities
,
[
"(data->'object'->>'id')"
,
"(data->>'type')"
],
name:
:activities_create_objects_index
)
end
end
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment