ArchiveSettingClientFunctions.cs
1.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
using System;
using System.Collections.Generic;
using System.Linq;
using Sungero.Core;
using Sungero.CoreEntities;
using DirRX.Container.ArchiveSetting;
namespace DirRX.Container.Client
{
partial class ArchiveSettingFunctions
{
/// <summary>
/// Отобразить параметры подключения к сервису импорта контейнеров.
/// </summary>
public virtual void ShowIntegrationServiceParams()
{
var apiAuth = _obj.WebApiAuthentication;
var apiLogin = string.Empty;
var apiPassword = string.Empty;
if (!string.IsNullOrEmpty(apiAuth))
{
// Раскодировать строку аутентификации.
var byteArray = System.Convert.FromBase64String(apiAuth);
var decoded = System.Text.Encoding.ASCII.GetString(byteArray).Split(new char[] { ':' }, 2);
apiLogin = decoded[0];
apiPassword = decoded[1];
}
var dialog = Dialogs.CreateInputDialog("Аутентификация");
var apiLoginSelector = dialog.AddString("Логин", true, apiLogin);
var apiPasswordSelector = dialog.AddPasswordString("Пароль", true, apiPassword);
if (dialog.Show() == DialogButtons.Ok)
{
var newAuth = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(string.Format("{0}:{1}", apiLoginSelector.Value, apiPasswordSelector.Value)));
if (newAuth != apiAuth)
_obj.WebApiAuthentication = newAuth;
}
}
}
}