mirror of
https://github.com/bitwarden/mobile
synced 2025-12-10 05:13:31 +00:00
handle iOS apps that don't specify a url properly
This commit is contained in:
@@ -14,6 +14,7 @@ using Bit.iOS.Core;
|
||||
using MobileCoreServices;
|
||||
using Bit.iOS.Core.Controllers;
|
||||
using Bit.App.Resources;
|
||||
using Bit.App.Models;
|
||||
|
||||
namespace Bit.iOS.Extension
|
||||
{
|
||||
@@ -119,8 +120,19 @@ namespace Bit.iOS.Extension
|
||||
|
||||
public async Task LoadItemsAsync()
|
||||
{
|
||||
var combinedLogins = new List<Login>();
|
||||
|
||||
var logins = await _loginService.GetAllAsync(_context.UrlString);
|
||||
_tableItems = logins?.Item1?.Select(s => new LoginViewModel(s))
|
||||
if(logins?.Item1 != null)
|
||||
{
|
||||
combinedLogins.AddRange(logins.Item1);
|
||||
}
|
||||
if(logins?.Item2 != null)
|
||||
{
|
||||
combinedLogins.AddRange(logins.Item2);
|
||||
}
|
||||
|
||||
_tableItems = combinedLogins.Select(s => new LoginViewModel(s))
|
||||
.OrderBy(s => s.Name)
|
||||
.ThenBy(s => s.Username)
|
||||
.ToList() ?? new List<LoginViewModel>();
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using Foundation;
|
||||
using Bit.App;
|
||||
|
||||
namespace Bit.iOS.Extension.Models
|
||||
{
|
||||
@@ -31,13 +32,18 @@ namespace Bit.iOS.Extension.Models
|
||||
set
|
||||
{
|
||||
_uriString = value;
|
||||
if(_uriString != null && _uriString.Contains("."))
|
||||
if(_uriString != null && !_uriString.StartsWith(Constants.iOSAppProtocol) && _uriString.Contains("."))
|
||||
{
|
||||
if(!_uriString.Contains("://") && !_uriString.Contains(" "))
|
||||
{
|
||||
_uriString = string.Concat("http://", _uriString);
|
||||
}
|
||||
}
|
||||
|
||||
if(!_uriString.StartsWith("http") && !_uriString.StartsWith(Constants.iOSAppProtocol))
|
||||
{
|
||||
_uriString = string.Concat(Constants.iOSAppProtocol, _uriString);
|
||||
}
|
||||
}
|
||||
}
|
||||
public string LoginTitle { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user