2017-01-10 15:58:21 +01:00
|
|
|
|
using eShopOnContainers.Core.Models.Basket;
|
|
|
|
|
using eShopOnContainers.Core.Models.Catalog;
|
2017-06-19 18:50:28 +02:00
|
|
|
|
using eShopOnContainers.Core.Models.Marketing;
|
2017-03-20 16:31:35 +00:00
|
|
|
|
using eShopOnContainers.Core.ViewModels.Base;
|
2017-03-07 08:15:47 +01:00
|
|
|
|
using System;
|
2017-01-10 15:11:47 +01:00
|
|
|
|
using System.Collections.Generic;
|
2017-03-07 08:15:47 +01:00
|
|
|
|
using System.Diagnostics;
|
2017-01-10 15:11:47 +01:00
|
|
|
|
using System.Text.RegularExpressions;
|
|
|
|
|
|
|
|
|
|
namespace eShopOnContainers.Core.Helpers
|
|
|
|
|
{
|
|
|
|
|
public static class ServicesHelper
|
|
|
|
|
{
|
2017-01-10 15:58:21 +01:00
|
|
|
|
private static Regex IpRegex = new Regex(@"\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b");
|
|
|
|
|
|
2017-01-10 15:11:47 +01:00
|
|
|
|
public static void FixCatalogItemPictureUri(IEnumerable<CatalogItem> catalogItems)
|
|
|
|
|
{
|
2017-03-07 08:15:47 +01:00
|
|
|
|
if (catalogItems == null)
|
2017-01-10 15:11:47 +01:00
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
2017-03-07 08:15:47 +01:00
|
|
|
|
try
|
2017-01-10 15:11:47 +01:00
|
|
|
|
{
|
2017-03-20 16:31:35 +00:00
|
|
|
|
if (!ViewModelLocator.UseMockService
|
2017-03-07 08:15:47 +01:00
|
|
|
|
&& Settings.UrlBase != GlobalSetting.DefaultEndpoint)
|
2017-01-10 15:11:47 +01:00
|
|
|
|
{
|
2017-03-07 08:15:47 +01:00
|
|
|
|
foreach (var catalogItem in catalogItems)
|
2017-01-10 15:11:47 +01:00
|
|
|
|
{
|
2017-03-07 08:15:47 +01:00
|
|
|
|
MatchCollection serverResult = IpRegex.Matches(catalogItem.PictureUri);
|
|
|
|
|
MatchCollection localResult = IpRegex.Matches(Settings.UrlBase);
|
|
|
|
|
|
|
|
|
|
if (serverResult.Count != -1 && localResult.Count != -1)
|
|
|
|
|
{
|
|
|
|
|
var serviceIp = serverResult[0].Value;
|
|
|
|
|
var localIp = localResult[0].Value;
|
|
|
|
|
|
|
|
|
|
catalogItem.PictureUri = catalogItem.PictureUri.Replace(serviceIp, localIp);
|
|
|
|
|
}
|
2017-01-10 15:11:47 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2017-03-07 08:15:47 +01:00
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
Debug.WriteLine(ex.Message);
|
|
|
|
|
}
|
2017-01-10 15:11:47 +01:00
|
|
|
|
}
|
2017-01-10 15:58:21 +01:00
|
|
|
|
|
|
|
|
|
public static void FixBasketItemPictureUri(IEnumerable<BasketItem> basketItems)
|
|
|
|
|
{
|
|
|
|
|
if (basketItems == null)
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
2017-03-07 08:15:47 +01:00
|
|
|
|
try
|
2017-01-10 15:58:21 +01:00
|
|
|
|
{
|
2017-03-20 16:31:35 +00:00
|
|
|
|
if (!ViewModelLocator.UseMockService
|
2017-03-07 08:15:47 +01:00
|
|
|
|
&& Settings.UrlBase != GlobalSetting.DefaultEndpoint)
|
2017-01-10 15:58:21 +01:00
|
|
|
|
{
|
2017-03-07 08:15:47 +01:00
|
|
|
|
foreach (var basketItem in basketItems)
|
2017-01-10 15:58:21 +01:00
|
|
|
|
{
|
2017-03-07 08:15:47 +01:00
|
|
|
|
MatchCollection serverResult = IpRegex.Matches(basketItem.PictureUrl);
|
|
|
|
|
MatchCollection localResult = IpRegex.Matches(Settings.UrlBase);
|
|
|
|
|
|
|
|
|
|
if (serverResult.Count != -1 && localResult.Count != -1)
|
|
|
|
|
{
|
|
|
|
|
var serviceIp = serverResult[0].Value;
|
|
|
|
|
var localIp = localResult[0].Value;
|
|
|
|
|
basketItem.PictureUrl = basketItem.PictureUrl.Replace(serviceIp, localIp);
|
|
|
|
|
}
|
2017-01-10 15:58:21 +01:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2017-03-07 08:15:47 +01:00
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
Debug.WriteLine(ex.Message);
|
|
|
|
|
}
|
2017-01-10 15:58:21 +01:00
|
|
|
|
}
|
2017-06-19 18:50:28 +02:00
|
|
|
|
|
2017-07-31 15:09:28 +02:00
|
|
|
|
public static void FixCampaignItemPictureUri(IEnumerable<CampaignItem> campaignItems)
|
2017-06-19 18:50:28 +02:00
|
|
|
|
{
|
|
|
|
|
if (campaignItems == null)
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
if (!ViewModelLocator.UseMockService
|
|
|
|
|
&& Settings.UrlBase != GlobalSetting.DefaultEndpoint)
|
|
|
|
|
{
|
2017-07-31 15:09:28 +02:00
|
|
|
|
foreach (var campaignItem in campaignItems)
|
2017-06-19 18:50:28 +02:00
|
|
|
|
{
|
2017-07-31 15:09:28 +02:00
|
|
|
|
MatchCollection serverResult = IpRegex.Matches(campaignItem.PictureUri);
|
2017-06-19 18:50:28 +02:00
|
|
|
|
MatchCollection localResult = IpRegex.Matches(Settings.UrlBase);
|
|
|
|
|
|
|
|
|
|
if (serverResult.Count != -1 && localResult.Count != -1)
|
|
|
|
|
{
|
|
|
|
|
var serviceIp = serverResult[0].Value;
|
|
|
|
|
var localIp = localResult[0].Value;
|
|
|
|
|
|
2017-07-31 15:09:28 +02:00
|
|
|
|
campaignItem.PictureUri = campaignItem.PictureUri.Replace(serviceIp, localIp);
|
2017-06-19 18:50:28 +02:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
|
|
|
|
Debug.WriteLine(ex.Message);
|
|
|
|
|
}
|
|
|
|
|
}
|
2017-01-10 15:11:47 +01:00
|
|
|
|
}
|
|
|
|
|
}
|