File tree Expand file tree Collapse file tree 1 file changed +18
-9
lines changed Expand file tree Collapse file tree 1 file changed +18
-9
lines changed Original file line number Diff line number Diff line change @@ -196,17 +196,26 @@ defmodule Algora.Workspace do
196
196
end
197
197
end
198
198
199
- def ensure_user ( token , owner ) do
199
+ def ensure_user ( token , owner , reload \\ false ) do
200
200
case Repo . get_by ( User , provider: "github" , provider_login: owner ) do
201
201
% User { } = user ->
202
- if is_nil ( user . provider_meta [ "followers" ] ) do
203
- with { :ok , user_data } <- Github . get_user_by_username ( token , owner ) do
204
- user
205
- |> User . github_changeset ( user_data )
206
- |> Repo . update ( )
207
- end
208
- else
209
- { :ok , user }
202
+ cond do
203
+ reload ->
204
+ with { :ok , user_data } <- Github . get_user ( token , user . provider_id ) do
205
+ user
206
+ |> User . github_changeset ( user_data )
207
+ |> Repo . update ( )
208
+ end
209
+
210
+ is_nil ( user . provider_meta [ "followers" ] ) ->
211
+ with { :ok , user_data } <- Github . get_user_by_username ( token , owner ) do
212
+ user
213
+ |> User . github_changeset ( user_data )
214
+ |> Repo . update ( )
215
+ end
216
+
217
+ true ->
218
+ { :ok , user }
210
219
end
211
220
212
221
nil ->
You can’t perform that action at this time.
0 commit comments