mirror of
https://framagit.org/tom79/fedilab-tube
synced 2025-04-25 15:38:52 +02:00
Fetch openId version
This commit is contained in:
parent
1e0eafef9b
commit
2b43f32772
@ -24,6 +24,7 @@ import android.text.SpannableString;
|
|||||||
import android.text.Spanned;
|
import android.text.Spanned;
|
||||||
import android.text.style.ForegroundColorSpan;
|
import android.text.style.ForegroundColorSpan;
|
||||||
import android.text.style.UnderlineSpan;
|
import android.text.style.UnderlineSpan;
|
||||||
|
import android.util.Log;
|
||||||
import android.util.Patterns;
|
import android.util.Patterns;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
@ -40,10 +41,13 @@ import java.net.MalformedURLException;
|
|||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Locale;
|
||||||
|
|
||||||
import app.fedilab.fedilabtube.BuildConfig;
|
import app.fedilab.fedilabtube.BuildConfig;
|
||||||
import app.fedilab.fedilabtube.R;
|
import app.fedilab.fedilabtube.R;
|
||||||
import app.fedilab.fedilabtube.client.RetrofitPeertubeAPI;
|
import app.fedilab.fedilabtube.client.RetrofitPeertubeAPI;
|
||||||
|
import app.fedilab.fedilabtube.client.data.InstanceData;
|
||||||
|
import app.fedilab.fedilabtube.client.data.PluginData;
|
||||||
import app.fedilab.fedilabtube.client.entities.AcadInstances;
|
import app.fedilab.fedilabtube.client.entities.AcadInstances;
|
||||||
import app.fedilab.fedilabtube.client.entities.Error;
|
import app.fedilab.fedilabtube.client.entities.Error;
|
||||||
import app.fedilab.fedilabtube.client.entities.Oauth;
|
import app.fedilab.fedilabtube.client.entities.Oauth;
|
||||||
@ -190,6 +194,15 @@ public class LoginActivity extends BaseActivity {
|
|||||||
if (!BuildConfig.full_instances && AcadInstances.isOpenId(acadInstance)) {
|
if (!BuildConfig.full_instances && AcadInstances.isOpenId(acadInstance)) {
|
||||||
new Thread(() -> {
|
new Thread(() -> {
|
||||||
try {
|
try {
|
||||||
|
InstanceData.InstanceConfig instanceConfig = new RetrofitPeertubeAPI(LoginActivity.this).getConfigInstance();
|
||||||
|
PluginData.Plugin plugin = instanceConfig.getPlugin();
|
||||||
|
List<PluginData.PluginInfo> pluginInfos = plugin.getRegistered();
|
||||||
|
String openIdVersion = "0.0.7";
|
||||||
|
for(PluginData.PluginInfo pluginInfo: pluginInfos) {
|
||||||
|
if(pluginInfo.getName().toLowerCase().contains("openid")) {
|
||||||
|
openIdVersion = pluginInfo.getVersion();
|
||||||
|
}
|
||||||
|
}
|
||||||
Oauth oauth = new RetrofitPeertubeAPI(LoginActivity.this, acadInstance, null).oauthClient(null, null, null, null);
|
Oauth oauth = new RetrofitPeertubeAPI(LoginActivity.this, acadInstance, null).oauthClient(null, null, null, null);
|
||||||
if (oauth == null) {
|
if (oauth == null) {
|
||||||
runOnUiThread(() -> {
|
runOnUiThread(() -> {
|
||||||
@ -207,7 +220,7 @@ public class LoginActivity extends BaseActivity {
|
|||||||
editor.apply();
|
editor.apply();
|
||||||
Intent intent = new Intent(LoginActivity.this, WebviewConnectActivity.class);
|
Intent intent = new Intent(LoginActivity.this, WebviewConnectActivity.class);
|
||||||
Bundle b = new Bundle();
|
Bundle b = new Bundle();
|
||||||
b.putString("url", "https://" + acadInstance + "/plugins/auth-openid-connect/0.0.7/auth/openid-connect");
|
b.putString("url", "https://" + acadInstance + "/plugins/auth-openid-connect/"+openIdVersion+"/auth/openid-connect");
|
||||||
intent.putExtras(b);
|
intent.putExtras(b);
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||||
startActivity(intent);
|
startActivity(intent);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user