You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
2.1 KiB
73 lines
2.1 KiB
using UnityEditor;
|
|
|
|
using Codice.Client.Common;
|
|
using Codice.Client.Common.Connection;
|
|
using PlasticGui;
|
|
using Unity.PlasticSCM.Editor.UI;
|
|
using Unity.PlasticSCM.Editor.Configuration.CloudEdition.Welcome;
|
|
|
|
namespace Unity.PlasticSCM.Editor.Configuration
|
|
{
|
|
internal class CredentialsUiImpl : AskCredentialsToUser.IGui
|
|
{
|
|
internal CredentialsUiImpl(EditorWindow parentWindow)
|
|
{
|
|
mParentWindow = parentWindow;
|
|
}
|
|
|
|
AskCredentialsToUser.DialogData AskCredentialsToUser.IGui.AskUserForCredentials(string servername)
|
|
{
|
|
AskCredentialsToUser.DialogData result = null;
|
|
|
|
GUIActionRunner.RunGUIAction(delegate
|
|
{
|
|
result = CredentialsDialog.RequestCredentials(
|
|
servername, mParentWindow);
|
|
});
|
|
|
|
return result;
|
|
}
|
|
|
|
void AskCredentialsToUser.IGui.ShowSaveProfileErrorMessage(string message)
|
|
{
|
|
GUIActionRunner.RunGUIAction(delegate
|
|
{
|
|
GuiMessage.ShowError(string.Format(
|
|
PlasticLocalization.GetString(
|
|
PlasticLocalization.Name.CredentialsErrorSavingProfile),
|
|
message));
|
|
});
|
|
}
|
|
|
|
AskCredentialsToUser.DialogData AskCredentialsToUser.IGui.AskUserForSSOCredentials(string cloudServer)
|
|
{
|
|
AskCredentialsToUser.DialogData result = null;
|
|
|
|
// Check SSO auto login here
|
|
GUIActionRunner.RunGUIAction(delegate
|
|
{
|
|
result = RunCredentialsRequest(cloudServer);
|
|
});
|
|
|
|
return result;
|
|
}
|
|
|
|
private AskCredentialsToUser.DialogData RunCredentialsRequest(string cloudServer)
|
|
{
|
|
AutoLogin autoLogin = new AutoLogin();
|
|
var response = autoLogin.Run();
|
|
|
|
if (response != ResponseType.None)
|
|
{
|
|
return autoLogin.BuildCredentialsDialogData(response);
|
|
}
|
|
else
|
|
{
|
|
return SSOCredentialsDialog.RequestCredentials(cloudServer, mParentWindow);
|
|
}
|
|
}
|
|
|
|
EditorWindow mParentWindow;
|
|
}
|
|
}
|