initial commit

This commit is contained in:
Adam 2024-11-09 20:09:35 +01:00
commit 86fce3dae1
232 changed files with 84883 additions and 0 deletions

View File

@ -0,0 +1,365 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
# User-specific files
*.rsuser
*.suo
*.user
*.userosscache
*.sln.docstates
# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
# Mono auto generated files
mono_crash.*
# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
[Ww][Ii][Nn]32/
[Aa][Rr][Mm]/
[Aa][Rr][Mm]64/
bld/
[Bb]in/
[Oo]bj/
[Oo]ut/
[Ll]og/
[Ll]ogs/
# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/
# Visual Studio 2017 auto generated files
Generated\ Files/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
# NUnit
*.VisualState.xml
TestResult.xml
nunit-*.xml
# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c
# Benchmark Results
BenchmarkDotNet.Artifacts/
# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
# ASP.NET Scaffolding
ScaffoldingReadMe.txt
# StyleCop
StyleCopReport.xml
# Files built by Visual Studio
*_i.c
*_p.c
*_h.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*_wpftmp.csproj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc
# Chutzpah Test files
_Chutzpah*
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb
# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap
# Visual Studio Trace Files
*.e2e
# TFS 2012 Local Workspace
$tf/
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json
# Coverlet is a free, cross platform Code Coverage Tool
coverage*.json
coverage*.xml
coverage*.info
# Visual Studio code coverage results
*.coverage
*.coveragexml
# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*
# MightyMoose
*.mm.*
AutoTest.Net/
# Web workbench (sass)
.sass-cache/
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj
# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/
# NuGet Packages
*.nupkg
# NuGet Symbol Packages
*.snupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets
# Microsoft Azure Build Output
csx/
*.build.csdef
# Microsoft Azure Emulator
ecf/
rcf/
# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx
*.appxbundle
*.appxupload
# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!?*.[Cc]ache/
# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs
# Including strong name files can present a security risk
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
#*.snk
# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
ServiceFabricBackup/
*.rptproj.bak
# SQL Server files
*.mdf
*.ldf
*.ndf
# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser
*- [Bb]ackup.rdl
*- [Bb]ackup ([0-9]).rdl
*- [Bb]ackup ([0-9][0-9]).rdl
# Microsoft Fakes
FakesAssemblies/
# GhostDoc plugin setting file
*.GhostDoc.xml
# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/
# Visual Studio 6 build log
*.plg
# Visual Studio 6 workspace options file
*.opt
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw
# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions
# Paket dependency manager
.paket/paket.exe
paket-files/
# FAKE - F# Make
.fake/
# CodeRush personal settings
.cr/personal
# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc
# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config
# Tabs Studio
*.tss
# Telerik's JustMock configuration file
*.jmconfig
# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs
# OpenCover UI analysis results
OpenCover/
# Azure Stream Analytics local run output
ASALocalRun/
# MSBuild Binary and Structured Log
*.binlog
# NVidia Nsight GPU debugger configuration file
*.nvuser
# MFractors (Xamarin productivity tool) working folder
.mfractor/
# Local History for Visual Studio
.localhistory/
# BeatPulse healthcheck temp database
healthchecksdb
# Backup folder for Package Reference Convert tool in Visual Studio 2017
MigrationBackup/
# Ionide (cross platform F# VS Code tools) working folder
.ionide/
# Fody - auto-generated XML schema
FodyWeavers.xsd
*.cache
*.dll

View File

@ -0,0 +1,10 @@
@inherits Nop.Web.Framework.Mvc.Razor.NopRazorPage<TModel>
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, Nop.Web.Framework
@using Microsoft.AspNetCore.Mvc.ViewFeatures
@using Nop.Web.Framework.UI
@using Nop.Web.Framework.Extensions
@using System.Text.Encodings.Web
@using Nop.Services.Events
@using Nop.Web.Framework.Events

View File

@ -0,0 +1,16 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Nop.Plugin.Misc.BillingoInvoicing
{
public class BillingoInvoicingDefaults
{
/// <summary>
/// Gets the configuration route name
/// </summary>
public static string ConfigurationRouteName => "Plugin.Misc.BillingoInvoicing.Configure";
}
}

View File

@ -0,0 +1,72 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Infrastructure;
using Microsoft.AspNetCore.Mvc.Routing;
using Nop.Services.Cms;
using Nop.Services.Common;
using Nop.Services.Configuration;
using Nop.Services.Localization;
using Nop.Services.Plugins;
using Nop.Web.Framework.Infrastructure;
namespace Nop.Plugin.Misc.BillingoInvoicing
{
/// <summary>
/// Rename this file and change to the correct type
/// </summary>
public class BillingoInvoicingPlugin : BasePlugin, IMiscPlugin
{
private readonly ISettingService _settingService;
private readonly IActionContextAccessor _actionContextAccessor;
private readonly IUrlHelperFactory _urlHelperFactory;
private readonly ILocalizationService _localizationService;
public BillingoInvoicingPlugin(ISettingService settingService,
IActionContextAccessor actionContextAccessor,
IUrlHelperFactory urlHelperFactory,
ILocalizationService localizationService)
{
_settingService = settingService;
_actionContextAccessor = actionContextAccessor;
_urlHelperFactory = urlHelperFactory;
_localizationService = localizationService;
}
public override async Task InstallAsync()
{
// settings
await _settingService.SaveSettingAsync(new BillingoInvoicingSettings
{
ApiKey = "YOUR_API_KEY"
});
//locales
await _localizationService.AddOrUpdateLocaleResourceAsync(new Dictionary<string, string>
{
["Plugins.Misc.BillingoInvoicing.Title"] = "Billingo számlázás",
["Plugins.Misc.BillingoInvoicing.Fields.ApiKey"] = "Billingo V3 API kulcs",
["Plugins.Misc.BillingoInvoicing.Fields.ApiKey.Hint"] = "app.billingo.hu - Összeköttetések - API",
["Plugins.Misc.BillingoInvoicing.Fields.BlockId"] = "Billingo számlatömb id",
["Plugins.Misc.BillingoInvoicing.Fields.BlockId.Hint"] = "app.billingo.hu - Beállítások - Bizonylat beállítások - Bizonylattömbök - API ID",
});
await base.InstallAsync();
}
public override async Task UninstallAsync()
{
await _settingService.DeleteSettingAsync<BillingoInvoicingSettings>();
await base.UninstallAsync();
}
/// <summary>
/// Gets a configuration page URL
/// </summary>
public override string GetConfigurationPageUrl()
{
return _urlHelperFactory.GetUrlHelper(_actionContextAccessor.ActionContext).RouteUrl(BillingoInvoicingDefaults.ConfigurationRouteName);
}
}
}

View File

@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Nop.Core.Configuration;
namespace Nop.Plugin.Misc.BillingoInvoicing
{
public class BillingoInvoicingSettings : ISettings
{
public string ApiKey { get; set; }
public int BlockId { get; set; }
}
}

View File

@ -0,0 +1,81 @@
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Nop.Core;
using Nop.Plugin.Misc.BillingoInvoicing.Models;
using Nop.Services.Configuration;
using Nop.Services.Localization;
using Nop.Services.Messages;
using Nop.Services.Security;
using Nop.Web.Framework;
using Nop.Web.Framework.Controllers;
using Nop.Web.Framework.Mvc.Filters;
namespace Nop.Plugin.Misc.BillingoInvoicing.Controllers
{
[Area(AreaNames.ADMIN)]
[AutoValidateAntiforgeryToken]
[AuthorizeAdmin]
public class BillingoInvoicingController : BasePluginController
{
private readonly ISettingService _settingService;
private readonly IStoreContext _storeContext;
private readonly INotificationService _notificationService;
private readonly ILocalizationService _localizationService;
private readonly IPermissionService _permissionService;
public BillingoInvoicingController(
ISettingService settingService,
IStoreContext storeContext,
INotificationService notificationService,
ILocalizationService localizationService,
IPermissionService permissionService)
{
_settingService = settingService;
_storeContext = storeContext;
_notificationService = notificationService;
_localizationService = localizationService;
_permissionService = permissionService;
}
public async Task<IActionResult> Configure()
{
if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageWidgets))
return AccessDeniedView();
var storeId = await _storeContext.GetActiveStoreScopeConfigurationAsync();
var settings = await _settingService.LoadSettingAsync<BillingoInvoicingSettings>(storeId);
var model = new ConfigurationModel()
{
ApiKey = settings.ApiKey,
BlockId = settings.BlockId
};
return View("~/Plugins/Misc.BillingoInvoicing/Views/Configure.cshtml", model);
}
[HttpPost, ActionName("Configure")]
[FormValueRequired("save")]
public async Task<IActionResult> Configure(ConfigurationModel model)
{
if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageWidgets))
return AccessDeniedView();
var storeId = await _storeContext.GetActiveStoreScopeConfigurationAsync();
var settings = await _settingService.LoadSettingAsync<BillingoInvoicingSettings>(storeId);
//set new settings values
settings.ApiKey = model.ApiKey;
settings.BlockId = model.BlockId;
await _settingService.SaveSettingOverridablePerStoreAsync(settings, setting => setting.ApiKey, true, storeId, false);
await _settingService.SaveSettingOverridablePerStoreAsync(settings, setting => setting.BlockId, true, storeId, false);
await _settingService.ClearCacheAsync();
_notificationService.SuccessNotification(await _localizationService.GetResourceAsync("Admin.Plugins.Saved"));
return await Configure();
}
}
}

View File

@ -0,0 +1,30 @@
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Mvc.Razor;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Nop.Core.Infrastructure;
using Nop.Plugin.Misc.BillingoInvoicing.Services;
namespace Nop.Plugin.Misc.BillingoInvoicing.Infrastructure
{
public class PluginNopStartup : INopStartup
{
public void ConfigureServices(IServiceCollection services, IConfiguration configuration)
{
services.Configure<RazorViewEngineOptions>(options =>
{
options.ViewLocationExpanders.Add(new ViewLocationExpander());
});
//register services and interfaces
services.AddScoped<BillingoClientService, BillingoClientService>();
services.AddScoped<BillingoEmailMessageService, BillingoEmailMessageService>();
}
public void Configure(IApplicationBuilder application)
{
}
public int Order => 11;
}
}

View File

@ -0,0 +1,29 @@
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Routing;
using Nop.Web.Framework.Mvc.Routing;
namespace Nop.Plugin.Misc.BillingoInvoicing.Infrastructure
{
/// <summary>
/// Represents plugin route provider
/// </summary>
public class RouteProvider : IRouteProvider
{
/// <summary>
/// Register routes
/// </summary>
/// <param name="endpointRouteBuilder">Route builder</param>
public void RegisterRoutes(IEndpointRouteBuilder endpointRouteBuilder)
{
endpointRouteBuilder.MapControllerRoute(BillingoInvoicingDefaults.ConfigurationRouteName,
"Admin/BillingoInvoicing/Configure",
new { controller = "BillingoInvoicing", action = "Configure" });
}
/// <summary>
/// Gets a priority of route provider
/// </summary>
public int Priority => 0;
}
}

View File

@ -0,0 +1,27 @@
using System.Collections.Generic;
using System.Linq;
using Microsoft.AspNetCore.Mvc.Razor;
namespace Nop.Plugin.Misc.BillingoInvoicing.Infrastructure
{
public class ViewLocationExpander : IViewLocationExpander
{
public void PopulateValues(ViewLocationExpanderContext context)
{
}
public IEnumerable<string> ExpandViewLocations(ViewLocationExpanderContext context, IEnumerable<string> viewLocations)
{
if (context.AreaName == "Admin")
{
viewLocations = new[] { $"/Plugins/Nop.Plugin.Misc.BillingoInvoicing/Areas/Admin/Views/{context.ControllerName}/{context.ViewName}.cshtml" }.Concat(viewLocations);
}
else
{
viewLocations = new[] { $"/Plugins/Nop.Plugin.Misc.BillingoInvoicing/Views/{context.ControllerName}/{context.ViewName}.cshtml" }.Concat(viewLocations);
}
return viewLocations;
}
}
}

View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) [year] [fullname]
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Nop.Web.Framework.Models;
using Nop.Web.Framework.Mvc.ModelBinding;
namespace Nop.Plugin.Misc.BillingoInvoicing.Models
{
public record ConfigurationModel : BaseNopModel
{
[NopResourceDisplayName("Plugins.Misc.BillingoInvoicing.Fields.ApiKey")]
public string ApiKey { get; set; }
[NopResourceDisplayName("Plugins.Misc.BillingoInvoicing.Fields.BlockId")]
public int BlockId { get; set; }
}
}

View File

@ -0,0 +1,46 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<OutputPath>..\..\..\..\NopCommerce\Presentation\Nop.Web\Plugins\Misc.BillingoInvoicing</OutputPath>
<OutDir>$(OutputPath)</OutDir>
<!--Set this parameter to true to get the dlls copied from the NuGet cache to the output of your project.
You need to set this parameter to true if your plugin has a nuget package
to ensure that the dlls copied from the NuGet cache to the output of your project-->
<CopyLocalLockFileAssemblies>false</CopyLocalLockFileAssemblies>
</PropertyGroup>
<ItemGroup>
<None Remove="logo.jpg" />
<None Remove="plugin.json" />
<None Remove="Views\_ViewImports.cshtml" />
<None Remove="Views\Configure.cshtml" />
</ItemGroup>
<ItemGroup>
<Content Include="logo.jpg">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="plugin.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Views\Configure.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\NopCommerce\Presentation\Nop.Web.Framework\Nop.Web.Framework.csproj" />
<ProjectReference Include="..\..\..\..\NopCommerce\Presentation\Nop.Web\Nop.Web.csproj" />
<ClearPluginAssemblies Include="$(MSBuildProjectDirectory)\..\..\..\..\NopCommerce\Build\ClearPluginAssemblies.proj" />
</ItemGroup>
<!-- This target execute after "Build" target -->
<Target Name="NopTarget" AfterTargets="Build">
<MSBuild Projects="@(ClearPluginAssemblies)" Properties="PluginPath=$(MSBuildProjectDirectory)\$(OutDir)" Targets="NopClear" />
</Target>
</Project>

View File

@ -0,0 +1,35 @@
### Billingo Invoicing Automatically
NopCommerce plugin
## Short description
With the Billingo Invoicing plugin you can create invoices automatically using <a href="https://www.billingo.hu/">Billingo</a>. The extension creates and sends the invoice to the user after payment.
## Full description
<a href="https://www.billingo.hu/">Billingo</a> is a well-known financial tool in Hungary. It has many useful services, the Billingo Invoicing extension uses the invoice generation part of them. You can configure Billingo to synchronize with NAV (as it is compulsory in Hungary).<br>
You'll need the "<a href="https://www.billingo.hu/arak/api-tomeges">API és tömeges számlagenerálás kiegészítő</a>" subscription to make the plugin working.<br>
The Billingo Invoicing plugin can create an invoice for you automatically after every payment in your nopCommerce store.
<h3>Features</h3>
<ul>
<li>Easy configuration in the admin area</li>
<li>Generate invoice automatically after every payment</li>
<li>The invoice includes the concrete items and quantities</li>
<li>Sending the invoice in email through Billingo</li>
</ul>
NO WARRANTY, use at your own risk! You can find the source code below.<br>
On the configuration page, the language is Hungarian because Billingo operates in Hungary.
You should only use PayPal payment with this extension.
<h3>Installation instructions:</h3>
<ol>
<li>Download the plugin archive.</li>
<li>Go to admin area > configuration > local plugins.</li>
Upload the plugin archive using the "Upload plugin or theme" plugin.</li>
<li>Scroll down through the list of plugins to find the newly installed plugin. Click on the "Install" button to install the plugin.</li>
<li>Please find more information about how to install plugins <a href="https://docs.nopcommerce.com/user-guide/configuring/system/plugins.html">here</a>.</li>
</ol>
<h3>Source code</h3>
The plugin is provided absolutely for free and includes source code. Find the project's GitHub repository <a href="https://github.com/vandreas73/Nop.Plugin.Misc.BillingoInvoicing">here</a>.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,294 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Threading.Tasks;
using Nop.Core;
using Nop.Core.Domain.Blogs;
using Nop.Core.Domain.Catalog;
using Nop.Core.Domain.Common;
using Nop.Core.Domain.Customers;
using Nop.Core.Domain.Forums;
using Nop.Core.Domain.Messages;
using Nop.Core.Domain.News;
using Nop.Core.Domain.Orders;
using Nop.Core.Domain.Shipping;
using Nop.Core.Domain.Vendors;
using Nop.Core.Events;
using Nop.Services.Affiliates;
using Nop.Services.Catalog;
using Nop.Services.Common;
using Nop.Services.Customers;
using Nop.Services.Localization;
using Nop.Services.Orders;
using Nop.Services.Stores;
using Nop.Services.Messages;
namespace Nop.Plugin.Misc.BillingoInvoicing.Services
{
/// <summary>
/// Workflow message service
/// </summary>
public partial class BillingoEmailMessageService
{
#region Fields
private readonly CommonSettings _commonSettings;
private readonly EmailAccountSettings _emailAccountSettings;
private readonly IAddressService _addressService;
private readonly IAffiliateService _affiliateService;
private readonly ICustomerService _customerService;
private readonly IEmailAccountService _emailAccountService;
private readonly IEventPublisher _eventPublisher;
private readonly ILanguageService _languageService;
private readonly ILocalizationService _localizationService;
private readonly IMessageTemplateService _messageTemplateService;
private readonly IMessageTokenProvider _messageTokenProvider;
private readonly IOrderService _orderService;
private readonly IProductService _productService;
private readonly IQueuedEmailService _queuedEmailService;
private readonly IStoreContext _storeContext;
private readonly IStoreService _storeService;
private readonly ITokenizer _tokenizer;
private readonly MessagesSettings _messagesSettings;
#endregion
#region Ctor
public BillingoEmailMessageService(CommonSettings commonSettings,
EmailAccountSettings emailAccountSettings,
IAddressService addressService,
IAffiliateService affiliateService,
ICustomerService customerService,
IEmailAccountService emailAccountService,
IEventPublisher eventPublisher,
ILanguageService languageService,
ILocalizationService localizationService,
IMessageTemplateService messageTemplateService,
IMessageTokenProvider messageTokenProvider,
IOrderService orderService,
IProductService productService,
IQueuedEmailService queuedEmailService,
IStoreContext storeContext,
IStoreService storeService,
ITokenizer tokenizer,
MessagesSettings messagesSettings)
{
_commonSettings = commonSettings;
_emailAccountSettings = emailAccountSettings;
_addressService = addressService;
_affiliateService = affiliateService;
_customerService = customerService;
_emailAccountService = emailAccountService;
_eventPublisher = eventPublisher;
_languageService = languageService;
_localizationService = localizationService;
_messageTemplateService = messageTemplateService;
_messageTokenProvider = messageTokenProvider;
_orderService = orderService;
_productService = productService;
_queuedEmailService = queuedEmailService;
_storeContext = storeContext;
_storeService = storeService;
_tokenizer = tokenizer;
_messagesSettings = messagesSettings;
}
#endregion
#region Utilities
/// <summary>
/// Get active message templates by the name
/// </summary>
/// <param name="messageTemplateName">Message template name</param>
/// <param name="storeId">Store identifier</param>
/// <returns>
/// A task that represents the asynchronous operation
/// The task result contains the list of message templates
/// </returns>
protected virtual async Task<IList<MessageTemplate>> GetActiveMessageTemplatesAsync(string messageTemplateName, int storeId)
{
//get message templates by the name
var messageTemplates = await _messageTemplateService.GetMessageTemplatesByNameAsync(messageTemplateName, storeId);
//no template found
if (!messageTemplates?.Any() ?? true)
return new List<MessageTemplate>();
//filter active templates
messageTemplates = messageTemplates.Where(messageTemplate => messageTemplate.IsActive).ToList();
return messageTemplates;
}
/// <summary>
/// Get EmailAccount to use with a message templates
/// </summary>
/// <param name="messageTemplate">Message template</param>
/// <param name="languageId">Language identifier</param>
/// <returns>
/// A task that represents the asynchronous operation
/// The task result contains the emailAccount
/// </returns>
protected virtual async Task<EmailAccount> GetEmailAccountOfMessageTemplateAsync(MessageTemplate messageTemplate, int languageId)
{
var emailAccountId = await _localizationService.GetLocalizedAsync(messageTemplate, mt => mt.EmailAccountId, languageId);
//some 0 validation (for localizable "Email account" dropdownlist which saves 0 if "Standard" value is chosen)
if (emailAccountId == 0)
emailAccountId = messageTemplate.EmailAccountId;
var emailAccount = (await _emailAccountService.GetEmailAccountByIdAsync(emailAccountId) ?? await _emailAccountService.GetEmailAccountByIdAsync(_emailAccountSettings.DefaultEmailAccountId)) ??
(await _emailAccountService.GetAllEmailAccountsAsync()).FirstOrDefault();
return emailAccount;
}
/// <summary>
/// Ensure language is active
/// </summary>
/// <param name="languageId">Language identifier</param>
/// <param name="storeId">Store identifier</param>
/// <returns>
/// A task that represents the asynchronous operation
/// The task result contains the return a value language identifier
/// </returns>
protected virtual async Task<int> EnsureLanguageIsActiveAsync(int languageId, int storeId)
{
//load language by specified ID
var language = await _languageService.GetLanguageByIdAsync(languageId);
if (language == null || !language.Published)
{
//load any language from the specified store
language = (await _languageService.GetAllLanguagesAsync(storeId: storeId)).FirstOrDefault();
}
if (language == null || !language.Published)
{
//load any language
language = (await _languageService.GetAllLanguagesAsync()).FirstOrDefault();
}
if (language == null)
throw new Exception("No active language could be loaded");
return language.Id;
}
/// <summary>
/// Get email and name to send email for store owner
/// </summary>
/// <param name="messageTemplateEmailAccount">Message template email account</param>
/// <returns>Email address and name to send email fore store owner</returns>
protected virtual async Task<(string email, string name)> GetStoreOwnerNameAndEmailAsync(EmailAccount messageTemplateEmailAccount)
{
var storeOwnerEmailAccount = _messagesSettings.UseDefaultEmailAccountForSendStoreOwnerEmails ? await _emailAccountService.GetEmailAccountByIdAsync(_emailAccountSettings.DefaultEmailAccountId) : null;
storeOwnerEmailAccount ??= messageTemplateEmailAccount;
return (storeOwnerEmailAccount.Email, storeOwnerEmailAccount.DisplayName);
}
#endregion
#region Methods
public virtual async Task<int> SendErrorToStoreOwnerNotificationMessageAsync(string errorMessage, int languageId, Order order)
{
var store = await _storeContext.GetCurrentStoreAsync();
languageId = await EnsureLanguageIsActiveAsync(languageId, store.Id);
//tokens
var commonTokens = new List<Token>();
await _messageTokenProvider.AddOrderTokensAsync(commonTokens, order, languageId);
await _messageTokenProvider.AddCustomerTokensAsync(commonTokens, order.CustomerId);
var messageTemplates = await _messageTemplateService.GetMessageTemplatesByNameAsync(MessageTemplateSystemNames.ORDER_PAID_STORE_OWNER_NOTIFICATION, store.Id);
var messageTemplate = messageTemplates.First();
//email account
var emailAccount = await GetEmailAccountOfMessageTemplateAsync(messageTemplate, languageId);
var tokens = new List<Token>(commonTokens);
await _messageTokenProvider.AddStoreTokensAsync(tokens, store, emailAccount);
var (toEmail, toName) = await GetStoreOwnerNameAndEmailAsync(emailAccount);
return await SendNotificationAsync(errorMessage, emailAccount, languageId, tokens, toEmail, toName);
}
#region Common
/// <summary>
/// Send notification
/// </summary>
/// <param name="messageTemplate">Message template</param>
/// <param name="emailAccount">Email account</param>
/// <param name="languageId">Language identifier</param>
/// <param name="tokens">Tokens</param>
/// <param name="toEmailAddress">Recipient email address</param>
/// <param name="toName">Recipient name</param>
/// <param name="attachmentFilePath">Attachment file path</param>
/// <param name="attachmentFileName">Attachment file name</param>
/// <param name="replyToEmailAddress">"Reply to" email</param>
/// <param name="replyToName">"Reply to" name</param>
/// <param name="fromEmail">Sender email. If specified, then it overrides passed "emailAccount" details</param>
/// <param name="fromName">Sender name. If specified, then it overrides passed "emailAccount" details</param>
/// <param name="subject">Subject. If specified, then it overrides subject of a message template</param>
/// <returns>
/// A task that represents the asynchronous operation
/// The task result contains the queued email identifier
/// </returns>
public virtual async Task<int> SendNotificationAsync(string errorMessage,
EmailAccount emailAccount, int languageId, IList<Token> tokens,
string toEmailAddress, string toName,
string attachmentFilePath = null, string attachmentFileName = null,
string replyToEmailAddress = null, string replyToName = null,
string fromEmail = null, string fromName = null, string subject = null)
{
if (emailAccount == null)
throw new ArgumentNullException(nameof(emailAccount));
if (string.IsNullOrEmpty(subject))
subject = "BillingoInvoicing error occured";
var body = errorMessage;
//Replace subject and body tokens
var subjectReplaced = _tokenizer.Replace(subject, tokens, false);
var bodyReplaced = _tokenizer.Replace(body, tokens, true);
//limit name length
toName = CommonHelper.EnsureMaximumLength(toName, 300);
var email = new QueuedEmail
{
Priority = QueuedEmailPriority.High,
From = !string.IsNullOrEmpty(fromEmail) ? fromEmail : emailAccount.Email,
FromName = !string.IsNullOrEmpty(fromName) ? fromName : emailAccount.DisplayName,
To = toEmailAddress,
ToName = toName,
ReplyTo = replyToEmailAddress,
ReplyToName = replyToName,
CC = string.Empty,
Subject = subjectReplaced,
Body = bodyReplaced,
AttachmentFilePath = attachmentFilePath,
AttachmentFileName = attachmentFileName,
CreatedOnUtc = DateTime.UtcNow,
EmailAccountId = emailAccount.Id,
};
await _queuedEmailService.InsertQueuedEmailAsync(email);
return email.Id;
}
#endregion
#endregion
}
}

View File

@ -0,0 +1,149 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using DocumentFormat.OpenXml.Spreadsheet;
using Nop.Core;
using Nop.Core.Domain.Orders;
using Nop.Services.Catalog;
using Nop.Services.Common;
using Nop.Services.Configuration;
using Nop.Services.Directory;
using Nop.Services.Events;
using Nop.Services.Logging;
using Nop.Services.Orders;
namespace Nop.Plugin.Misc.BillingoInvoicing.Services
{
public class InvoiceGenerator : IConsumer<OrderPaidEvent>
{
private BillingoClientService _billingoService;
private readonly IOrderService _orderService;
private readonly IProductService _productService;
private readonly IAddressService _addressService;
private readonly ICountryService _countryService;
private readonly ISettingService _settingService;
private readonly ILogger _logger;
private readonly BillingoEmailMessageService _billingoEmailMessageService;
private readonly IStoreContext _storeContext;
public InvoiceGenerator(
BillingoClientService billingoClientService,
IOrderService orderService,
IProductService productService,
IAddressService addressService,
ICountryService countryService,
IStoreContext storeContext,
ISettingService settingService,
ILogger logger,
BillingoEmailMessageService billingoEmailMessageService)
{
_billingoService = billingoClientService;
_orderService = orderService;
_productService = productService;
_addressService = addressService;
_countryService = countryService;
_storeContext = storeContext;
_settingService = settingService;
_logger = logger;
_billingoEmailMessageService = billingoEmailMessageService;
}
public async Task HandleEventAsync(OrderPaidEvent eventMessage)
{
try
{
if (eventMessage?.Order != null)
{
var orderItems = await _orderService.GetOrderItemsAsync(eventMessage.Order.Id);
var currentAddress = await _addressService.GetAddressByIdAsync(eventMessage.Order.BillingAddressId);
var currentCountry = (await _countryService.GetCountryByAddressAsync(currentAddress));
var partnersWithName = await _billingoService.ListPartnerAsync(1, 100, $"{currentAddress.LastName} {currentAddress.FirstName}");
Partner currentPartner = partnersWithName.Data.Where(partner => partner.Iban == eventMessage.Order.CardNumber
&& partner.Address.Country_code.ToString() == currentCountry.TwoLetterIsoCode
&& partner.Address.City == currentAddress.City
&& partner.Address.Post_code == currentAddress.ZipPostalCode
&& partner.Address.Address1 == currentAddress.Address1).FirstOrDefault();
if (currentPartner == null)
{
var partner = new Partner()
{
Name = $"{currentAddress.LastName} {currentAddress.FirstName}",
Address = new Address
{
Address1 = currentAddress.Address1,
City = currentAddress.City,
Country_code = currentCountry.TwoLetterIsoCode,
Post_code = currentAddress.ZipPostalCode
},
Emails = new List<string>() { currentAddress.Email }
};
currentPartner = await _billingoService.CreatePartnerAsync(partner);
}
var storeId = await _storeContext.GetActiveStoreScopeConfigurationAsync();
var settings = await _settingService.LoadSettingAsync<BillingoInvoicingSettings>(storeId);
var document = new DocumentInsert()
{
Partner_id = currentPartner.Id, //1802491707,
Block_id = settings.BlockId, //217127,
Bank_account_id = 179109,
Type = "invoice",
Fulfillment_date = DateTime.Now,
Due_date = DateTime.Now,
Payment_method = "paypal",
Language = "hu",
Currency = "HUF",
Conversion_rate = 1,
Electronic = false,
Paid = true,
Items = new List<DocumentProductData>(),
Settings = new DocumentSettings()
{
Mediated_service = false,
Without_financial_fulfillment = false,
Round = "one",
No_send_onlineszamla_by_user = true,
Order_number = eventMessage.Order.Id.ToString(),
Place_id = 0,
Instant_payment = true,
Selected_type = "invoice"
},
};
foreach (var orderItem in orderItems)
{
var product = await _productService.GetProductByIdAsync(orderItem.ProductId);
var productData = new DocumentProductData()
{
Name = product.Name,
Unit_price = (float)orderItem.UnitPriceInclTax,
Unit_price_type = "gross",
Quantity = orderItem.Quantity,
Unit = "db",
Vat = "27%",
Entitlement = "AAM"
};
document.Items.Add(productData);
}
var invoice = await _billingoService.CreateDocumentAsync(document);
await _billingoService.SendDocumentAsync(invoice.Id, new SendDocument
{
Emails = new List<string>() { currentAddress.Email },
});
}
}
catch (Exception ex)
{
var errorMessage = $"Billingo invoice creation failed at userId {eventMessage.Order.CustomerId}, message: {ex.Message}";
await _logger.ErrorAsync(errorMessage, ex);
await _billingoEmailMessageService.SendErrorToStoreOwnerNotificationMessageAsync(errorMessage, eventMessage.Order.CustomerLanguageId, eventMessage.Order);
}
}
}
}

View File

@ -0,0 +1,50 @@
@model ConfigurationModel
@{
Layout = "_ConfigurePlugin";
}
@await Component.InvokeAsync(typeof(StoreScopeConfigurationViewComponent))
<form asp-controller="BillingoInvoicing" asp-action="Configure" method="post">
<div class="cards-group">
<div class="card card-default card-outline card-info" id="pnlOnboarding">
<div class="card-header">
@T("Plugins.Misc.BillingoInvoicing.Title")
</div>
<div class="card-body">
<p>
Ez egy NopCommerce automatikus számlageneráló plugin a <a href="https://www.billingo.hu/ target=" _blank"">Billingo számlázórendszerhez</a>.<br />
Szükséges, hogy legyen <a href="https://www.billingo.hu/arak/api-tomeges" target="_blank">API és tömeges számlagenerálás előfizetése</a>.<br />
Kizárólag saját felelősségre használható!<br />
Hozzon létre egy V3 API kulcsot: <a href="https://support.billingo.hu/content/2092531786" target="_blank">Hol tudok API kulcsot generálni?</a>
Hozzon létre egy számlatömböt: <a href="https://support.billingo.hu/content/918716465">Új bizonylattömb létrehozása</a>
</p>
<hr />
<div class="form-group row">
<div class="col-md-3">
<nop-label asp-for="ApiKey" />
</div>
<div class="col-md-9">
<nop-editor asp-for="ApiKey" asp-required="true" />
<span asp-validation-for="ApiKey"></span>
</div>
</div>
<div class="form-group row">
<div class="col-md-3">
<nop-label asp-for="BlockId" />
</div>
<div class="col-md-9">
<nop-editor asp-for="BlockId" asp-required="true" />
<span asp-validation-for="BlockId"></span>
</div>
</div>
<div class="form-group row" id="pnlSave">
<div class="col-md-9 offset-md-3">
<button type="submit" name="save" class="btn btn-primary">@T("Admin.Common.Save")</button>
</div>
</div>
</div>
</div>
</div>
</form>

View File

@ -0,0 +1,13 @@
@inherits Nop.Web.Framework.Mvc.Razor.NopRazorPage<TModel>
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, Nop.Web.Framework
@using Nop.Web.Areas.Admin.Components
@using Microsoft.AspNetCore.Mvc.ViewFeatures
@using Nop.Web.Framework.UI
@using Nop.Web.Framework.Extensions
@using System.Text.Encodings.Web
@using Nop.Services.Events
@using Nop.Web.Framework.Events
@using Nop.Web.Framework.Infrastructure
@using Nop.Plugin.Misc.BillingoInvoicing.Models

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -0,0 +1,11 @@
{
"Group": "Misc",
"FriendlyName": "Billingo Invoicing",
"SystemName": "Misc.BillingoInvoicing",
"Version": "1.00",
"SupportedVersions": [ "4.70" ],
"Author": "András Vesztergombi",
"DisplayOrder": 1,
"FileName": "Nop.Plugin.Misc.BillingoInvoicing.dll",
"Description": ""
}

View File

@ -0,0 +1,10 @@
@inherits Nop.Web.Framework.Mvc.Razor.NopRazorPage<TModel>
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, Nop.Web.Framework
@using Microsoft.AspNetCore.Mvc.ViewFeatures
@using Nop.Web.Framework.UI
@using Nop.Web.Framework.Extensions
@using System.Text.Encodings.Web
@using Nop.Services.Events
@using Nop.Web.Framework.Events

View File

@ -0,0 +1,19 @@
using Microsoft.AspNetCore.Mvc;
using Nop.Web.Framework.Components;
namespace Nop.Plugin.Misc.MyTestPlugin1.Components
{
[ViewComponent(Name = "Custom")]
public class CustomViewComponent : NopViewComponent
{
public CustomViewComponent()
{
}
public IViewComponentResult Invoke(int productId)
{
throw new NotImplementedException();
}
}
}

View File

@ -0,0 +1,9 @@
using Nop.Core;
namespace Nop.Plugin.Misc.MyTestPlugin1.Domains
{
public partial class CustomTable : BaseEntity
{
}
}

View File

@ -0,0 +1,40 @@
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Mvc.Razor;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Nop.Core.Infrastructure;
namespace Nop.Plugin.Misc.MyTestPlugin1.Infrastructure
{
public class PluginNopStartup : INopStartup
{
/// <summary>
/// Add and configure any of the middleware
/// </summary>
/// <param name="services">Collection of service descriptors</param>
/// <param name="configuration">Configuration of the application</param>
public void ConfigureServices(IServiceCollection services, IConfiguration configuration)
{
services.Configure<RazorViewEngineOptions>(options =>
{
options.ViewLocationExpanders.Add(new ViewLocationExpander());
});
//register services and interfaces
//services.AddScoped<CustomModelFactory, ICustomerModelFactory>();
}
/// <summary>
/// Configure the using of added middleware
/// </summary>
/// <param name="application">Builder for configuring an application's request pipeline</param>
public void Configure(IApplicationBuilder application)
{
}
/// <summary>
/// Gets order of this startup configuration implementation
/// </summary>
public int Order => 3000;
}
}

View File

@ -0,0 +1,25 @@
using Microsoft.AspNetCore.Routing;
using Nop.Web.Framework.Mvc.Routing;
namespace Nop.Plugin.Misc.MyTestPlugin1.Infrastructure
{
/// <summary>
/// Represents plugin route provider
/// </summary>
public class RouteProvider : IRouteProvider
{
/// <summary>
/// Register routes
/// </summary>
/// <param name="endpointRouteBuilder">Route builder</param>
public void RegisterRoutes(IEndpointRouteBuilder endpointRouteBuilder)
{
}
/// <summary>
/// Gets a priority of route provider
/// </summary>
public int Priority => 0;
}
}

View File

@ -0,0 +1,39 @@
using Microsoft.AspNetCore.Mvc.Razor;
namespace Nop.Plugin.Misc.MyTestPlugin1.Infrastructure
{
public class ViewLocationExpander : IViewLocationExpander
{
/// <summary>
/// Invoked by a <see cref="T:Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine" /> to determine the values that would be consumed by this instance
/// of <see cref="T:Microsoft.AspNetCore.Mvc.Razor.IViewLocationExpander" />. The calculated values are used to determine if the view location
/// has changed since the last time it was located.
/// </summary>
/// <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Razor.ViewLocationExpanderContext" /> for the current view location
/// expansion operation.</param>
public void PopulateValues(ViewLocationExpanderContext context)
{
}
/// <summary>
/// Invoked by a <see cref="T:Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine" /> to determine potential locations for a view.
/// </summary>
/// <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Razor.ViewLocationExpanderContext" /> for the current view location
/// expansion operation.</param>
/// <param name="viewLocations">The sequence of view locations to expand.</param>
/// <returns>A list of expanded view locations.</returns>
public IEnumerable<string> ExpandViewLocations(ViewLocationExpanderContext context, IEnumerable<string> viewLocations)
{
if (context.AreaName == "Admin")
{
viewLocations = new[] { $"/Plugins/Nop.Plugin.Misc.MyTestPlugin1/Areas/Admin/Views/{context.ControllerName}/{context.ViewName}.cshtml" }.Concat(viewLocations);
}
else
{
viewLocations = new[] { $"/Plugins/Nop.Plugin.Misc.MyTestPlugin1/Views/{context.ControllerName}/{context.ViewName}.cshtml" }.Concat(viewLocations);
}
return viewLocations;
}
}
}

View File

@ -0,0 +1,21 @@
using FluentMigrator.Builders.Create.Table;
using Nop.Data.Mapping.Builders;
using Nop.Plugin.Misc.MyTestPlugin1.Domains;
namespace Nop.Plugin.Misc.MyTestPlugin1.Mapping.Builders
{
public class PluginBuilder : NopEntityBuilder<CustomTable>
{
#region Methods
/// <summary>
/// Apply entity configuration
/// </summary>
/// <param name="table">Create table expression builder</param>
public override void MapEntity(CreateTableExpressionBuilder table)
{
}
#endregion
}
}

View File

@ -0,0 +1,17 @@
using Nop.Data.Mapping;
namespace Nop.Plugin.Misc.MyTestPlugin1.Mapping
{
public partial class NameCompatibility : INameCompatibility
{
/// <summary>
/// Gets table name for mapping with the type
/// </summary>
public Dictionary<Type, string> TableNames => new();
/// <summary>
/// Gets column name for mapping with the entity's property and type
/// </summary>
public Dictionary<(Type, string), string> ColumnName => new();
}
}

View File

@ -0,0 +1,20 @@
using FluentMigrator;
using Nop.Data.Extensions;
using Nop.Data.Migrations;
using Nop.Plugin.Misc.MyTestPlugin1.Domains;
namespace Nop.Plugin.Misc.MyTestPlugin1.Migrations
{
//2022-04-05 17:00:00
[NopMigration("2024-10-22 11:45:18", "Nop.Plugin.Misc.MyTestPlugin1 schema", MigrationProcessType.Installation)]
public class SchemaMigration : AutoReversingMigration
{
/// <summary>
/// Collect the UP migration expressions
/// </summary>
public override void Up()
{
Create.TableFor<CustomTable>();
}
}
}

View File

@ -0,0 +1,11 @@
using Nop.Services.Plugins;
namespace Nop.Plugin.Misc.MyTestPlugin1
{
/// <summary>
/// Rename this file and change to the correct type
/// </summary>
public class MyTestPlugin : BasePlugin
{
}
}

View File

@ -0,0 +1,68 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<OutputPath>..\..\Presentation\Nop.Web\Plugins\Nop.Plugin.Misc.MyTestPlugin1</OutputPath>
<OutDir>$(OutputPath)</OutDir>
<!--Set this parameter to true to get the dlls copied from the NuGet cache to the output of your project.
You need to set this parameter to true if your plugin has a nuget package
to ensure that the dlls copied from the NuGet cache to the output of your project-->
<CopyLocalLockFileAssemblies>false</CopyLocalLockFileAssemblies>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<None Remove="logo.jpg" />
<None Remove="plugin.json" />
<None Remove="Views\_ViewImports.cshtml" />
<None Remove="Areas\Admin\Views\_ViewImports.cshtml" />
</ItemGroup>
<ItemGroup>
<Content Include="logo.jpg">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="plugin.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Areas\Admin\Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Update="Areas\Admin\Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Update="Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\Presentation\Nop.Web\Nop.Web.csproj" />
<ClearPluginAssemblies Include="$(MSBuildProjectDirectory)\..\..\Build\ClearPluginAssemblies.proj" />
</ItemGroup>
<ItemGroup>
<Folder Include="Areas\Admin\Components\" />
<Folder Include="Areas\Admin\Controllers\" />
<Folder Include="Areas\Admin\Extensions\" />
<Folder Include="Areas\Admin\Factories\" />
<Folder Include="Areas\Admin\Models\" />
<Folder Include="Areas\Admin\Validators\" />
<Folder Include="Components\" />
<Folder Include="Controllers\" />
<Folder Include="Extensions\" />
<Folder Include="Factories\" />
<Folder Include="Models\" />
<Folder Include="Services\" />
<Folder Include="Validators\" />
</ItemGroup>
<!-- This target execute after "Build" target -->
<Target Name="NopTarget" AfterTargets="Build">
<MSBuild Projects="@(ClearPluginAssemblies)" Properties="PluginPath=$(MSBuildProjectDirectory)\$(OutDir)" Targets="NopClear" />
</Target>
</Project>

View File

@ -0,0 +1,11 @@
@inherits Nop.Web.Framework.Mvc.Razor.NopRazorPage<TModel>
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, Nop.Web.Framework
@using Microsoft.AspNetCore.Mvc.ViewFeatures
@using Nop.Web.Framework.UI
@using Nop.Web.Framework.Extensions
@using System.Text.Encodings.Web
@using Nop.Services.Events
@using Nop.Web.Framework.Events
@using Nop.Web.Framework.Infrastructure

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]

View File

@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Nop.Plugin.Misc.MyTestPlugin1")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Nop.Plugin.Misc.MyTestPlugin1")]
[assembly: System.Reflection.AssemblyTitleAttribute("Nop.Plugin.Misc.MyTestPlugin1")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
d9c6bfc69fbee00446024090601d4e410296f5f89c4125785fc03c41f6f621a4

View File

@ -0,0 +1,13 @@
is_global = true
build_property.TargetFramework = net8.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = Nop.Plugin.Misc.MyTestPlugin1
build_property.ProjectDir = D:\Munka\MANGOWEB\LoveBits\NopSRC\Plugins\Nop.Plugin.Misc.MyTestPlugin1\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;

View File

@ -0,0 +1,617 @@
{
"format": 1,
"restore": {
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Plugins\\Nop.Plugin.Misc.MyTestPlugin1\\Nop.Plugin.Misc.MyTestPlugin1.csproj": {}
},
"projects": {
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj",
"projectName": "Nop.Core",
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"dependencies": {
"AutoMapper": {
"target": "Package",
"version": "[13.0.1, )"
},
"Autofac.Extensions.DependencyInjection": {
"target": "Package",
"version": "[10.0.0, )"
},
"Azure.Extensions.AspNetCore.DataProtection.Blobs": {
"target": "Package",
"version": "[1.3.4, )"
},
"Azure.Extensions.AspNetCore.DataProtection.Keys": {
"target": "Package",
"version": "[1.2.4, )"
},
"Azure.Identity": {
"target": "Package",
"version": "[1.13.0, )"
},
"Humanizer": {
"target": "Package",
"version": "[2.14.1, )"
},
"Microsoft.AspNetCore.Mvc.NewtonsoftJson": {
"target": "Package",
"version": "[8.0.10, )"
},
"Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation": {
"target": "Package",
"version": "[8.0.10, )"
},
"Microsoft.Extensions.Caching.SqlServer": {
"target": "Package",
"version": "[8.0.10, )"
},
"Microsoft.Extensions.Caching.StackExchangeRedis": {
"target": "Package",
"version": "[8.0.10, )"
},
"Nito.AsyncEx.Coordination": {
"target": "Package",
"version": "[5.1.2, )"
},
"System.IO.FileSystem.AccessControl": {
"target": "Package",
"version": "[5.0.0, )"
},
"System.Linq.Async": {
"target": "Package",
"version": "[6.0.1, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj",
"projectName": "Nop.Data",
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"dependencies": {
"FluentMigrator": {
"target": "Package",
"version": "[5.2.0, )"
},
"FluentMigrator.Runner": {
"target": "Package",
"version": "[5.1.0, )"
},
"Microsoft.Data.SqlClient": {
"target": "Package",
"version": "[5.2.0, )"
},
"MySqlConnector": {
"target": "Package",
"version": "[2.3.7, )"
},
"Npgsql": {
"target": "Package",
"version": "[8.0.5, )"
},
"System.Configuration.ConfigurationManager": {
"target": "Package",
"version": "[8.0.1, )"
},
"System.Net.NameResolution": {
"target": "Package",
"version": "[4.3.0, )"
},
"linq2db": {
"target": "Package",
"version": "[5.4.1, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Services\\Nop.Services.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Services\\Nop.Services.csproj",
"projectName": "Nop.Services",
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Services\\Nop.Services.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Services\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj"
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"dependencies": {
"Azure.Storage.Blobs": {
"target": "Package",
"version": "[12.22.2, )"
},
"ClosedXML": {
"target": "Package",
"version": "[0.104.1, )"
},
"Google.Apis.Auth": {
"target": "Package",
"version": "[1.68.0, )"
},
"HarfBuzzSharp.NativeAssets.Linux": {
"target": "Package",
"version": "[7.3.0.2, )"
},
"MailKit": {
"target": "Package",
"version": "[4.8.0, )"
},
"MaxMind.GeoIP2": {
"target": "Package",
"version": "[5.2.0, )"
},
"Microsoft.Identity.Client": {
"target": "Package",
"version": "[4.66.1, )"
},
"QuestPDF": {
"target": "Package",
"version": "[2024.10.1, )"
},
"SkiaSharp": {
"target": "Package",
"version": "[2.88.8, )"
},
"SkiaSharp.NativeAssets.Linux.NoDependencies": {
"target": "Package",
"version": "[2.88.8, )"
},
"Svg.Skia": {
"target": "Package",
"version": "[2.0.0.1, )"
},
"System.Linq.Dynamic.Core": {
"target": "Package",
"version": "[1.4.6, )"
},
"System.ServiceModel.Http": {
"target": "Package",
"version": "[8.0.0, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Plugins\\Nop.Plugin.Misc.MyTestPlugin1\\Nop.Plugin.Misc.MyTestPlugin1.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Plugins\\Nop.Plugin.Misc.MyTestPlugin1\\Nop.Plugin.Misc.MyTestPlugin1.csproj",
"projectName": "Nop.Plugin.Misc.MyTestPlugin1",
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Plugins\\Nop.Plugin.Misc.MyTestPlugin1\\Nop.Plugin.Misc.MyTestPlugin1.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Plugins\\Nop.Plugin.Misc.MyTestPlugin1\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web\\Nop.Web.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web\\Nop.Web.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj",
"projectName": "Nop.Web.Framework",
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web.Framework\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj"
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj"
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Services\\Nop.Services.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Services\\Nop.Services.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"dependencies": {
"FluentValidation.AspNetCore": {
"target": "Package",
"version": "[11.3.0, )"
},
"LigerShark.WebOptimizer.Core": {
"target": "Package",
"version": "[3.0.426, )"
},
"WebMarkupMin.AspNetCore8": {
"target": "Package",
"version": "[2.17.0, )"
},
"WebMarkupMin.NUglify": {
"target": "Package",
"version": "[2.17.0, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web\\Nop.Web.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web\\Nop.Web.csproj",
"projectName": "Nop.Web",
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web\\Nop.Web.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Core\\Nop.Core.csproj"
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Data\\Nop.Data.csproj"
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Services\\Nop.Services.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Libraries\\Nop.Services\\Nop.Services.csproj"
},
"D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj": {
"projectPath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.AspNetCore.App": {
"privateAssets": "none"
},
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
}
}
}

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Ádám\.nuget\packages\;C:\Program Files\DevExpress 24.1\Components\Offline Packages;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.10.1</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\Ádám\.nuget\packages\" />
<SourceRoot Include="C:\Program Files\DevExpress 24.1\Components\Offline Packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_CodeAnalysis_Analyzers Condition=" '$(PkgMicrosoft_CodeAnalysis_Analyzers)' == '' ">C:\Users\Ádám\.nuget\packages\microsoft.codeanalysis.analyzers\3.3.2</PkgMicrosoft_CodeAnalysis_Analyzers>
</PropertyGroup>
</Project>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)system.text.json\6.0.10\buildTransitive\netcoreapp3.1\System.Text.Json.targets" Condition="Exists('$(NuGetPackageRoot)system.text.json\6.0.10\buildTransitive\netcoreapp3.1\System.Text.Json.targets')" />
<Import Project="$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\8.0.2\buildTransitive\net6.0\Microsoft.Extensions.Logging.Abstractions.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\8.0.2\buildTransitive\net6.0\Microsoft.Extensions.Logging.Abstractions.targets')" />
<Import Project="$(NuGetPackageRoot)questpdf\2024.10.1\buildTransitive\QuestPDF.targets" Condition="Exists('$(NuGetPackageRoot)questpdf\2024.10.1\buildTransitive\QuestPDF.targets')" />
<Import Project="$(NuGetPackageRoot)microsoft.extensions.options\8.0.2\buildTransitive\net6.0\Microsoft.Extensions.Options.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.options\8.0.2\buildTransitive\net6.0\Microsoft.Extensions.Options.targets')" />
<Import Project="$(NuGetPackageRoot)microsoft.aspnetcore.mvc.razor.runtimecompilation\8.0.10\buildTransitive\net8.0\Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.aspnetcore.mvc.razor.runtimecompilation\8.0.10\buildTransitive\net8.0\Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.targets')" />
</ImportGroup>
</Project>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,234 @@
{
"version": 2,
"dgSpecHash": "sxeRWjTwVGA=",
"success": true,
"projectFilePath": "D:\\Munka\\MANGOWEB\\LoveBits\\NopSRC\\Plugins\\Nop.Plugin.Misc.MyTestPlugin1\\Nop.Plugin.Misc.MyTestPlugin1.csproj",
"expectedPackageFiles": [
"C:\\Users\\Ádám\\.nuget\\packages\\advancedstringbuilder\\0.1.1\\advancedstringbuilder.0.1.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\autofac\\8.1.0\\autofac.8.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\autofac.extensions.dependencyinjection\\10.0.0\\autofac.extensions.dependencyinjection.10.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\automapper\\13.0.1\\automapper.13.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.core\\1.44.1\\azure.core.1.44.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.extensions.aspnetcore.dataprotection.blobs\\1.3.4\\azure.extensions.aspnetcore.dataprotection.blobs.1.3.4.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.extensions.aspnetcore.dataprotection.keys\\1.2.4\\azure.extensions.aspnetcore.dataprotection.keys.1.2.4.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.identity\\1.13.0\\azure.identity.1.13.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.security.keyvault.keys\\4.6.0\\azure.security.keyvault.keys.4.6.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.storage.blobs\\12.22.2\\azure.storage.blobs.12.22.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.storage.common\\12.21.1\\azure.storage.common.12.21.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\bouncycastle.cryptography\\2.4.0\\bouncycastle.cryptography.2.4.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\closedxml\\0.104.1\\closedxml.0.104.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\closedxml.parser\\1.2.0\\closedxml.parser.1.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\documentformat.openxml\\3.0.1\\documentformat.openxml.3.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\documentformat.openxml.framework\\3.0.1\\documentformat.openxml.framework.3.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\excelnumberformat\\1.1.0\\excelnumberformat.1.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\excss\\4.2.3\\excss.4.2.3.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\firebirdsql.data.firebirdclient\\10.0.0\\firebirdsql.data.firebirdclient.10.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator\\5.2.0\\fluentmigrator.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.abstractions\\5.2.0\\fluentmigrator.abstractions.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.mysql\\5.1.0\\fluentmigrator.extensions.mysql.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.oracle\\5.1.0\\fluentmigrator.extensions.oracle.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.postgres\\5.1.0\\fluentmigrator.extensions.postgres.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.snowflake\\5.1.0\\fluentmigrator.extensions.snowflake.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.sqlserver\\5.1.0\\fluentmigrator.extensions.sqlserver.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner\\5.1.0\\fluentmigrator.runner.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.core\\5.1.0\\fluentmigrator.runner.core.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.db2\\5.1.0\\fluentmigrator.runner.db2.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.firebird\\5.1.0\\fluentmigrator.runner.firebird.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.hana\\5.1.0\\fluentmigrator.runner.hana.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.mysql\\5.1.0\\fluentmigrator.runner.mysql.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.oracle\\5.1.0\\fluentmigrator.runner.oracle.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.postgres\\5.1.0\\fluentmigrator.runner.postgres.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.redshift\\5.1.0\\fluentmigrator.runner.redshift.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.snowflake\\5.1.0\\fluentmigrator.runner.snowflake.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.sqlite\\5.1.0\\fluentmigrator.runner.sqlite.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.sqlserver\\5.1.0\\fluentmigrator.runner.sqlserver.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentvalidation\\11.5.1\\fluentvalidation.11.5.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentvalidation.aspnetcore\\11.3.0\\fluentvalidation.aspnetcore.11.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentvalidation.dependencyinjectionextensions\\11.5.1\\fluentvalidation.dependencyinjectionextensions.11.5.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\google.apis\\1.68.0\\google.apis.1.68.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\google.apis.auth\\1.68.0\\google.apis.auth.1.68.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\google.apis.core\\1.68.0\\google.apis.core.1.68.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\harfbuzzsharp\\7.3.0.2\\harfbuzzsharp.7.3.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\harfbuzzsharp.nativeassets.linux\\7.3.0.2\\harfbuzzsharp.nativeassets.linux.7.3.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\harfbuzzsharp.nativeassets.macos\\7.3.0.2\\harfbuzzsharp.nativeassets.macos.7.3.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\harfbuzzsharp.nativeassets.win32\\7.3.0.2\\harfbuzzsharp.nativeassets.win32.7.3.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer\\2.14.1\\humanizer.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core\\2.14.1\\humanizer.core.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.af\\2.14.1\\humanizer.core.af.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ar\\2.14.1\\humanizer.core.ar.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.az\\2.14.1\\humanizer.core.az.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.bg\\2.14.1\\humanizer.core.bg.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.bn-bd\\2.14.1\\humanizer.core.bn-bd.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.cs\\2.14.1\\humanizer.core.cs.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.da\\2.14.1\\humanizer.core.da.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.de\\2.14.1\\humanizer.core.de.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.el\\2.14.1\\humanizer.core.el.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.es\\2.14.1\\humanizer.core.es.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.fa\\2.14.1\\humanizer.core.fa.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.fi-fi\\2.14.1\\humanizer.core.fi-fi.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.fr\\2.14.1\\humanizer.core.fr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.fr-be\\2.14.1\\humanizer.core.fr-be.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.he\\2.14.1\\humanizer.core.he.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.hr\\2.14.1\\humanizer.core.hr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.hu\\2.14.1\\humanizer.core.hu.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.hy\\2.14.1\\humanizer.core.hy.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.id\\2.14.1\\humanizer.core.id.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.is\\2.14.1\\humanizer.core.is.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.it\\2.14.1\\humanizer.core.it.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ja\\2.14.1\\humanizer.core.ja.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ko-kr\\2.14.1\\humanizer.core.ko-kr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ku\\2.14.1\\humanizer.core.ku.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.lv\\2.14.1\\humanizer.core.lv.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ms-my\\2.14.1\\humanizer.core.ms-my.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.mt\\2.14.1\\humanizer.core.mt.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.nb\\2.14.1\\humanizer.core.nb.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.nb-no\\2.14.1\\humanizer.core.nb-no.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.nl\\2.14.1\\humanizer.core.nl.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.pl\\2.14.1\\humanizer.core.pl.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.pt\\2.14.1\\humanizer.core.pt.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ro\\2.14.1\\humanizer.core.ro.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ru\\2.14.1\\humanizer.core.ru.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sk\\2.14.1\\humanizer.core.sk.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sl\\2.14.1\\humanizer.core.sl.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sr\\2.14.1\\humanizer.core.sr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sr-latn\\2.14.1\\humanizer.core.sr-latn.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sv\\2.14.1\\humanizer.core.sv.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.th-th\\2.14.1\\humanizer.core.th-th.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.tr\\2.14.1\\humanizer.core.tr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.uk\\2.14.1\\humanizer.core.uk.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.uz-cyrl-uz\\2.14.1\\humanizer.core.uz-cyrl-uz.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.uz-latn-uz\\2.14.1\\humanizer.core.uz-latn-uz.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.vi\\2.14.1\\humanizer.core.vi.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.zh-cn\\2.14.1\\humanizer.core.zh-cn.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.zh-hans\\2.14.1\\humanizer.core.zh-hans.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.zh-hant\\2.14.1\\humanizer.core.zh-hant.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\ligershark.weboptimizer.core\\3.0.426\\ligershark.weboptimizer.core.3.0.426.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\linq2db\\5.4.1\\linq2db.5.4.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\mailkit\\4.8.0\\mailkit.4.8.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\maxmind.db\\4.1.0\\maxmind.db.4.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\maxmind.geoip2\\5.2.0\\maxmind.geoip2.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.cryptography.internal\\3.1.32\\microsoft.aspnetcore.cryptography.internal.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.dataprotection\\3.1.32\\microsoft.aspnetcore.dataprotection.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.dataprotection.abstractions\\3.1.32\\microsoft.aspnetcore.dataprotection.abstractions.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.jsonpatch\\8.0.10\\microsoft.aspnetcore.jsonpatch.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.mvc.newtonsoftjson\\8.0.10\\microsoft.aspnetcore.mvc.newtonsoftjson.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.mvc.razor.extensions\\6.0.0\\microsoft.aspnetcore.mvc.razor.extensions.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.mvc.razor.runtimecompilation\\8.0.10\\microsoft.aspnetcore.mvc.razor.runtimecompilation.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.razor.language\\6.0.0\\microsoft.aspnetcore.razor.language.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\6.0.0\\microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.codeanalysis.analyzers\\3.3.2\\microsoft.codeanalysis.analyzers.3.3.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.codeanalysis.common\\4.0.0\\microsoft.codeanalysis.common.4.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.codeanalysis.csharp\\4.0.0\\microsoft.codeanalysis.csharp.4.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.codeanalysis.razor\\6.0.0\\microsoft.codeanalysis.razor.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.data.sqlclient\\5.2.0\\microsoft.data.sqlclient.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.data.sqlclient.sni.runtime\\5.2.0\\microsoft.data.sqlclient.sni.runtime.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.caching.sqlserver\\8.0.10\\microsoft.extensions.caching.sqlserver.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.caching.stackexchangeredis\\8.0.10\\microsoft.extensions.caching.stackexchangeredis.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.0\\microsoft.extensions.dependencyinjection.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.2\\microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.dependencymodel\\8.0.2\\microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.fileproviders.abstractions\\3.1.32\\microsoft.extensions.fileproviders.abstractions.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.hosting.abstractions\\3.1.32\\microsoft.extensions.hosting.abstractions.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.logging\\8.0.0\\microsoft.extensions.logging.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.objectpool\\6.0.16\\microsoft.extensions.objectpool.6.0.16.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identity.client\\4.66.1\\microsoft.identity.client.4.66.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identity.client.extensions.msal\\4.65.0\\microsoft.identity.client.extensions.msal.4.65.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.abstractions\\6.35.0\\microsoft.identitymodel.abstractions.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.jsonwebtokens\\6.35.0\\microsoft.identitymodel.jsonwebtokens.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.logging\\6.35.0\\microsoft.identitymodel.logging.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.protocols\\6.35.0\\microsoft.identitymodel.protocols.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.protocols.openidconnect\\6.35.0\\microsoft.identitymodel.protocols.openidconnect.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.tokens\\6.35.0\\microsoft.identitymodel.tokens.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.netcore.platforms\\2.1.2\\microsoft.netcore.platforms.2.1.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.netcore.targets\\1.1.0\\microsoft.netcore.targets.1.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.sqlserver.server\\1.0.0\\microsoft.sqlserver.server.1.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.win32.registry\\4.7.0\\microsoft.win32.registry.4.7.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\mimekit\\4.8.0\\mimekit.4.8.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\mysqlconnector\\2.3.7\\mysqlconnector.2.3.7.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\newtonsoft.json\\13.0.3\\newtonsoft.json.13.0.3.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\newtonsoft.json.bson\\1.0.2\\newtonsoft.json.bson.1.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nito.asyncex.coordination\\5.1.2\\nito.asyncex.coordination.5.1.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nito.asyncex.tasks\\5.1.2\\nito.asyncex.tasks.5.1.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nito.collections.deque\\1.1.1\\nito.collections.deque.1.1.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nito.disposables\\2.2.1\\nito.disposables.2.2.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nuglify\\1.21.9\\nuglify.1.21.9.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\pipelines.sockets.unofficial\\2.2.8\\pipelines.sockets.unofficial.2.2.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\questpdf\\2024.10.1\\questpdf.2024.10.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\rbush\\3.2.0\\rbush.3.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\runtime.native.system\\4.3.0\\runtime.native.system.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\shimskiasharp\\2.0.0.1\\shimskiasharp.2.0.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\sixlabors.fonts\\1.0.0\\sixlabors.fonts.1.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp\\2.88.8\\skiasharp.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp.harfbuzz\\2.88.8\\skiasharp.harfbuzz.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp.nativeassets.linux.nodependencies\\2.88.8\\skiasharp.nativeassets.linux.nodependencies.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp.nativeassets.macos\\2.88.8\\skiasharp.nativeassets.macos.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp.nativeassets.win32\\2.88.8\\skiasharp.nativeassets.win32.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\stackexchange.redis\\2.7.27\\stackexchange.redis.2.7.27.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\svg.custom\\2.0.0.1\\svg.custom.2.0.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\svg.model\\2.0.0.1\\svg.model.2.0.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\svg.skia\\2.0.0.1\\svg.skia.2.0.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.clientmodel\\1.1.0\\system.clientmodel.1.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.codedom\\7.0.0\\system.codedom.7.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.collections\\4.3.0\\system.collections.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.collections.immutable\\5.0.0\\system.collections.immutable.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.componentmodel.annotations\\5.0.0\\system.componentmodel.annotations.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.configuration.configurationmanager\\8.0.1\\system.configuration.configurationmanager.8.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.diagnostics.diagnosticsource\\8.0.1\\system.diagnostics.diagnosticsource.8.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.diagnostics.eventlog\\8.0.1\\system.diagnostics.eventlog.8.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.diagnostics.tracing\\4.3.0\\system.diagnostics.tracing.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.formats.asn1\\8.0.1\\system.formats.asn1.8.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.globalization\\4.3.0\\system.globalization.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.identitymodel.tokens.jwt\\6.35.0\\system.identitymodel.tokens.jwt.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io\\4.3.0\\system.io.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io.filesystem.accesscontrol\\5.0.0\\system.io.filesystem.accesscontrol.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io.hashing\\6.0.0\\system.io.hashing.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io.packaging\\8.0.0\\system.io.packaging.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io.pipelines\\5.0.1\\system.io.pipelines.5.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.linq.async\\6.0.1\\system.linq.async.6.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.linq.dynamic.core\\1.4.6\\system.linq.dynamic.core.1.4.6.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.management\\7.0.2\\system.management.7.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.memory\\4.5.5\\system.memory.4.5.5.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.memory.data\\6.0.0\\system.memory.data.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.net.nameresolution\\4.3.0\\system.net.nameresolution.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.net.primitives\\4.3.0\\system.net.primitives.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.numerics.vectors\\4.5.0\\system.numerics.vectors.4.5.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.reflection\\4.3.0\\system.reflection.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.reflection.metadata\\5.0.0\\system.reflection.metadata.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.reflection.primitives\\4.3.0\\system.reflection.primitives.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.resources.resourcemanager\\4.3.0\\system.resources.resourcemanager.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime\\4.3.0\\system.runtime.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.caching\\8.0.0\\system.runtime.caching.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.extensions\\4.3.0\\system.runtime.extensions.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.handles\\4.3.0\\system.runtime.handles.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.interopservices\\4.3.0\\system.runtime.interopservices.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.accesscontrol\\6.0.0\\system.security.accesscontrol.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.cryptography.cng\\4.5.0\\system.security.cryptography.cng.4.5.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.cryptography.pkcs\\8.0.0\\system.security.cryptography.pkcs.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.cryptography.protecteddata\\8.0.0\\system.security.cryptography.protecteddata.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.cryptography.xml\\6.0.1\\system.security.cryptography.xml.6.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.principal.windows\\5.0.0\\system.security.principal.windows.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.servicemodel.http\\8.0.0\\system.servicemodel.http.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.servicemodel.primitives\\8.0.0\\system.servicemodel.primitives.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.text.encoding\\4.3.0\\system.text.encoding.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.text.encoding.codepages\\4.5.1\\system.text.encoding.codepages.4.5.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.text.encodings.web\\6.0.0\\system.text.encodings.web.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.text.json\\6.0.10\\system.text.json.6.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.threading\\4.3.0\\system.threading.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.threading.tasks\\4.3.0\\system.threading.tasks.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.threading.tasks.extensions\\4.5.4\\system.threading.tasks.extensions.4.5.4.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.valuetuple\\4.5.0\\system.valuetuple.4.5.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\webmarkupmin.aspnet.common\\2.17.0\\webmarkupmin.aspnet.common.2.17.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\webmarkupmin.aspnetcore8\\2.17.0\\webmarkupmin.aspnetcore8.2.17.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\webmarkupmin.core\\2.17.0\\webmarkupmin.core.2.17.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\webmarkupmin.nuglify\\2.17.0\\webmarkupmin.nuglify.2.17.0.nupkg.sha512"
],
"logs": []
}

View File

@ -0,0 +1,13 @@
{
"Group": "",
"FriendlyName": "",
"SystemName": "",
"Version": "1.00",
"SupportedVersions": [
"4.70"
],
"Author": "Author Name",
"DisplayOrder": 1,
"FileName": "Nop.Plugin.Misc.MyTestPlugin1.dll",
"Description": ""
}

View File

@ -0,0 +1,10 @@
@inherits Nop.Web.Framework.Mvc.Razor.NopRazorPage<TModel>
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, Nop.Web.Framework
@using Microsoft.AspNetCore.Mvc.ViewFeatures
@using Nop.Web.Framework.UI
@using Nop.Web.Framework.Extensions
@using System.Text.Encodings.Web
@using Nop.Services.Events
@using Nop.Web.Framework.Events

View File

@ -0,0 +1,19 @@
using Microsoft.AspNetCore.Mvc;
using Nop.Web.Framework.Components;
namespace Nop.Plugin.Misc.SignalRApi.Components
{
[ViewComponent(Name = "Custom")]
public class CustomViewComponent : NopViewComponent
{
public CustomViewComponent()
{
}
public IViewComponentResult Invoke(int productId)
{
throw new NotImplementedException();
}
}
}

View File

@ -0,0 +1,38 @@
using Microsoft.AspNetCore.Mvc;
using Nop.Web.Framework.Controllers;
using Nop.Web.Framework.Mvc.Filters;
using Nop.Web.Framework;
using Nop.Plugin.Misc.SignalRApi.Services;
using Nop.Plugin.Misc.SignalRApi.Models;
[AutoValidateAntiforgeryToken]
[AuthorizeAdmin]
[Area(AreaNames.ADMIN)]
public class SignalRApiAdminController : BasePluginController
{
private readonly SignalRservice _signalRservice;
public SignalRApiAdminController(SignalRservice signalRservice)
{
_signalRservice = signalRservice;
}
public async Task<IActionResult> Configure(bool showtour = false)
{
return View("~/Plugins/Misc.SignalRApi/Views/Configure.cshtml", new ConfigurationModel());
}
[HttpPost]
public async Task<IActionResult> TestHubConnection(string message)
{
try
{
await _signalRservice.TestHub();
return Json(new { success = true, message = $"Hub successfully called - {message}" });
}
catch (Exception ex)
{
return Json(new { success = false, message = $"Error: {ex.Message}" });
}
}
}

View File

@ -0,0 +1,28 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.SignalR;
using Nop.Plugin.Misc.SignalRApi.Hubs;
namespace Nop.Plugin.Misc.SignalRApi.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class ProductOfferController : ControllerBase
{
private IHubContext<MainHub, IMainHubClient> mainHub;
public ProductOfferController(IHubContext<MainHub, IMainHubClient> _mainHub)
{
mainHub = _mainHub;
}
[HttpPost]
[Route("productoffers")]
public string Get()
{
List<string> offers = new List<string>();
offers.Add("20% Off on IPhone 12");
offers.Add("15% Off on HP Pavillion");
offers.Add("25% Off on Samsung Smart TV");
mainHub.Clients.All.SendOffersToUser(offers);
return "Offers sent successfully to all users!";
}
}
}

View File

@ -0,0 +1,9 @@
using Nop.Core;
namespace Nop.Plugin.Misc.SignalRApi.Domains
{
public partial class CustomTable1 : BaseEntity
{
}
}

View File

@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Nop.Plugin.Misc.SignalRApi.Hubs
{
public interface IMainHubClient
{
Task SendOffersToUser(List<string> message);
Task ReceiveMessageFromClient(string message);
}
}

View File

@ -0,0 +1,94 @@
using DocumentFormat.OpenXml.EMMA;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.SignalR;
using Nop.Core.Domain.Customers;
using Nop.Plugin.Misc.SignalRApi.Services;
using Nop.Services.Customers;
using Nop.Services.Localization;
using Nop.Web.Models.Customer;
namespace Nop.Plugin.Misc.SignalRApi.Hubs
{
public class MainHub : Hub<IMainHubClient>
{
private readonly SignalRservice _signalRservice;
private readonly CustomerService _customerService;
private readonly CustomerRegistrationService _customerRegistrationService;
private readonly LocalizationService _localizationService;
public MainHub(SignalRservice signalRservice, CustomerRegistrationService customerRegistrationService, CustomerService customerService, LocalizationService localizationService)
{
_signalRservice = signalRservice;
_customerRegistrationService = customerRegistrationService;
_customerService = customerService;
_localizationService = localizationService;
}
// Existing method to send offers to clients
public async Task SendOffersToUser(List<string> message)
{
await Clients.All.SendOffersToUser(message);
}
// New method to handle incoming messages from clients
public async Task ReceiveMessageFromClient(string message)
{
// Broadcast the message received from the client to all clients
Console.Write($"Received message: {message}");
await Clients.All.SendOffersToUser(new List<string> { message });
//await _signalRservice.TestHub();
}
public async Task ValidateUser(LoginModel loginModel)
{
string result = "";
Console.Write($"Received login request");
var returnUrl = "/signalrtest";
if (loginModel!=null)
{
var customerEmail = loginModel.Email;
var loginResult = await _customerRegistrationService.ValidateCustomerAsync(customerEmail, loginModel.Password);
switch (loginResult)
{
case CustomerLoginResults.Successful:
{
var customer = await _customerService.GetCustomerByEmailAsync(customerEmail);
//var valami = await _customerRegistrationService.SignInCustomerAsync(customer, returnUrl, loginModel.RememberMe);
result = customer.FirstName;
break;
}
case CustomerLoginResults.CustomerNotExist:
result = await _localizationService.GetResourceAsync("Account.Login.WrongCredentials.CustomerNotExist");
break;
case CustomerLoginResults.Deleted:
result = await _localizationService.GetResourceAsync("Account.Login.WrongCredentials.Deleted");
break;
case CustomerLoginResults.NotActive:
result = await _localizationService.GetResourceAsync("Account.Login.WrongCredentials.NotActive");
break;
case CustomerLoginResults.NotRegistered:
result = await _localizationService.GetResourceAsync("Account.Login.WrongCredentials.NotRegistered");
break;
case CustomerLoginResults.LockedOut:
result = await _localizationService.GetResourceAsync("Account.Login.WrongCredentials.LockedOut");
break;
case CustomerLoginResults.WrongPassword:
default:
result = await _localizationService.GetResourceAsync("Account.Login.WrongCredentials");
break;
}
}
await Clients.Caller.SendOffersToUser(new List<string> { result });
}
}
}

View File

@ -0,0 +1,58 @@
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Mvc.Razor;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Nop.Core.Infrastructure;
using Nop.Plugin.Misc.SignalRApi.Hubs;
using Nop.Plugin.Misc.SignalRApi.Services;
using Nop.Services.Customers;
using Nop.Services.Localization;
namespace Nop.Plugin.Misc.SignalRApi.Infrastructure
{
public class PluginNopStartup : INopStartup
{
/// <summary>
/// Add and configure any of the middleware
/// </summary>
/// <param name="services">Collection of service descriptors</param>
/// <param name="configuration">Configuration of the application</param>
public void ConfigureServices(IServiceCollection services, IConfiguration configuration)
{
services.Configure<RazorViewEngineOptions>(options =>
{
options.ViewLocationExpanders.Add(new ViewLocationExpander());
});
//register services and interfaces
//services.AddScoped<CustomModelFactory, ICustomerModelFactory>();
services.AddSignalR();
services.AddScoped<SignalRservice>();
services.AddScoped<CustomerService>();
services.AddScoped<CustomerRegistrationService>();
services.AddScoped<LocalizationService>();
}
/// <summary>
/// Configure the using of added middleware
/// </summary>
/// <param name="application">Builder for configuring an application's request pipeline</param>
public void Configure(IApplicationBuilder application)
{
application.UseEndpoints(endpoints =>
{
endpoints.MapHub<MainHub>("/mainHub");
});
application.UseCors(options => {
options.AllowAnyMethod().AllowAnyHeader().AllowCredentials().SetIsOriginAllowed((hosts) => true);
});
}
/// <summary>
/// Gets order of this startup configuration implementation
/// </summary>
public int Order => 3000;
}
}

View File

@ -0,0 +1,35 @@
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Routing;
using Nop.Web.Framework;
using Nop.Web.Framework.Mvc.Routing;
namespace Nop.Plugin.Misc.SignalRApi.Infrastructure
{
/// <summary>
/// Represents plugin route provider
/// </summary>
public class RouteProvider : IRouteProvider
{
/// <summary>
/// Register routes
/// </summary>
/// <param name="endpointRouteBuilder">Route builder</param>
public void RegisterRoutes(IEndpointRouteBuilder endpointRouteBuilder)
{
endpointRouteBuilder.MapControllerRoute(name: "Plugin.Misc.SignalRapi.Configure",
pattern: "Admin/SignalRApi/Configure",
defaults: new { controller = "SignalRApiAdmin", action = "Configure", area = AreaNames.ADMIN });
endpointRouteBuilder.MapControllerRoute(name: "Plugin.Misc.SignalRapi.TestHubConnection",
pattern: "Admin/SignalRApi/TestHubConnection",
defaults: new { controller = "SignalRApiAdmin", action = "TestHubConnection", area = AreaNames.ADMIN });
endpointRouteBuilder.MapControllerRoute(name: "Plugin.Misc.SignalRapi.Hub",
pattern: "SignalRApi/hub",
defaults: new { controller = "SignalRHub", action = "Main" });
}
/// <summary>
/// Gets a priority of route provider
/// </summary>
public int Priority => 0;
}
}

View File

@ -0,0 +1,39 @@
using Microsoft.AspNetCore.Mvc.Razor;
namespace Nop.Plugin.Misc.SignalRApi.Infrastructure
{
public class ViewLocationExpander : IViewLocationExpander
{
/// <summary>
/// Invoked by a <see cref="T:Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine" /> to determine the values that would be consumed by this instance
/// of <see cref="T:Microsoft.AspNetCore.Mvc.Razor.IViewLocationExpander" />. The calculated values are used to determine if the view location
/// has changed since the last time it was located.
/// </summary>
/// <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Razor.ViewLocationExpanderContext" /> for the current view location
/// expansion operation.</param>
public void PopulateValues(ViewLocationExpanderContext context)
{
}
/// <summary>
/// Invoked by a <see cref="T:Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine" /> to determine potential locations for a view.
/// </summary>
/// <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Razor.ViewLocationExpanderContext" /> for the current view location
/// expansion operation.</param>
/// <param name="viewLocations">The sequence of view locations to expand.</param>
/// <returns>A list of expanded view locations.</returns>
public IEnumerable<string> ExpandViewLocations(ViewLocationExpanderContext context, IEnumerable<string> viewLocations)
{
if (context.AreaName == "Admin")
{
viewLocations = new[] { $"/Plugins/Nop.Plugin.Misc.SignalRApi/Areas/Admin/Views/{context.ControllerName}/{context.ViewName}.cshtml" }.Concat(viewLocations);
}
else
{
viewLocations = new[] { $"/Plugins/Nop.Plugin.Misc.SignalRApi/Views/{context.ControllerName}/{context.ViewName}.cshtml" }.Concat(viewLocations);
}
return viewLocations;
}
}
}

View File

@ -0,0 +1,21 @@
using FluentMigrator.Builders.Create.Table;
using Nop.Data.Mapping.Builders;
using Nop.Plugin.Misc.SignalRApi.Domains;
namespace Nop.Plugin.Misc.SignalRApi.Mapping.Builders
{
public class PluginBuilder : NopEntityBuilder<CustomTable1>
{
#region Methods
/// <summary>
/// Apply entity configuration
/// </summary>
/// <param name="table">Create table expression builder</param>
public override void MapEntity(CreateTableExpressionBuilder table)
{
}
#endregion
}
}

View File

@ -0,0 +1,17 @@
using Nop.Data.Mapping;
namespace Nop.Plugin.Misc.SignalRApi.Mapping
{
public partial class NameCompatibility : INameCompatibility
{
/// <summary>
/// Gets table name for mapping with the type
/// </summary>
public Dictionary<Type, string> TableNames => new();
/// <summary>
/// Gets column name for mapping with the entity's property and type
/// </summary>
public Dictionary<(Type, string), string> ColumnName => new();
}
}

View File

@ -0,0 +1,19 @@
using FluentMigrator;
using Nop.Data.Extensions;
using Nop.Data.Migrations;
using Nop.Plugin.Misc.SignalRApi.Domains;
namespace Nop.Plugin.Misc.SignalRApi.Migrations
{
[NopMigration("2024-10-31 21:27:08", "Nop.Plugin.Misc.SignalRApi schema", MigrationProcessType.Installation)]
public class SchemaMigration : AutoReversingMigration
{
/// <summary>
/// Collect the UP migration expressions
/// </summary>
public override void Up()
{
Create.TableFor<CustomTable1>();
}
}
}

View File

@ -0,0 +1,104 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Infrastructure;
using Microsoft.AspNetCore.Mvc.Routing;
using Microsoft.AspNetCore.Routing;
using Nop.Core.Domain.Media;
using Nop.Services.Common;
using Nop.Services.Configuration;
using Nop.Services.Localization;
using Nop.Services.Plugins;
using Nop.Services.ScheduleTasks;
using Nop.Services.Security;
using Nop.Web.Framework;
using Nop.Web.Framework.Menu;
namespace Nop.Plugin.Misc.SignalRApi
{
/// <summary>
/// Rename this file and change to the correct type
/// </summary>
public class MiscSignalRApiPlugin : BasePlugin, IAdminMenuPlugin, IMiscPlugin
{
protected readonly IActionContextAccessor _actionContextAccessor;
protected readonly IPermissionService _permissionService;
protected readonly ILocalizationService _localizationService;
protected readonly IUrlHelperFactory _urlHelperFactory;
public MiscSignalRApiPlugin(IActionContextAccessor actionContextAccessor,
ILocalizationService localizationService,
IPermissionService permissionService,
IUrlHelperFactory urlHelperFactory)
{
_actionContextAccessor = actionContextAccessor;
_localizationService = localizationService;
_permissionService = permissionService;
_urlHelperFactory = urlHelperFactory;
}
public override async Task InstallAsync()
{
//await _settingService.SaveSettingAsync(new PayPalStandardPaymentSettings
//{
// UseSandbox = true
//});
//await _localizationService.AddOrUpdateLocaleResourceAsync(new Dictionary<string, string>
//{
// //add custom translation
//});
await base.InstallAsync();
}
public override async Task UninstallAsync()
{
await base.UninstallAsync();
}
public async Task ManageSiteMapAsync(SiteMapNode rootNode)
{
if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManagePlugins))
return;
var configurationItem = rootNode.ChildNodes.FirstOrDefault(node => node.SystemName.Equals("Configuration"));
if (configurationItem is null)
return;
var shippingItem = configurationItem.ChildNodes.FirstOrDefault(node => node.SystemName.Equals("Shipping"));
var widgetsItem = configurationItem.ChildNodes.FirstOrDefault(node => node.SystemName.Equals("Widgets"));
if (shippingItem is null && widgetsItem is null)
return;
var index = shippingItem is not null ? configurationItem.ChildNodes.IndexOf(shippingItem) : -1;
if (index < 0)
index = widgetsItem is not null ? configurationItem.ChildNodes.IndexOf(widgetsItem) : -1;
if (index < 0)
return;
configurationItem.ChildNodes.Insert(index + 1, new SiteMapNode
{
Visible = true,
SystemName = "API plugins",
Title = await _localizationService.GetResourceAsync("Plugins.Misc.SignalRApi.Menu.Api"),
IconClass = "far fa-dot-circle",
ChildNodes = new List<SiteMapNode>
{
new()
{
Visible = true,
SystemName = PluginDescriptor.SystemName,
Title = PluginDescriptor.FriendlyName,
ControllerName = "SignalRApi",
ActionName = "Configure",
IconClass = "far fa-circle",
RouteValues = new RouteValueDictionary { { "area", AreaNames.ADMIN } }
}
}
});
}
public override string GetConfigurationPageUrl()
{
return _urlHelperFactory.GetUrlHelper(_actionContextAccessor.ActionContext).RouteUrl("Plugin.Misc.SignalRApi.Configure");
}
}
}

View File

@ -0,0 +1,27 @@
using System.ComponentModel.DataAnnotations;
using Nop.Web.Framework.Models;
using Nop.Web.Framework.Mvc;
using Nop.Web.Framework.Mvc.ModelBinding;
namespace Nop.Plugin.Misc.SignalRApi.Models;
/// <summary>
/// Represents a configuration model
/// </summary>
public record ConfigurationModel : BaseNopModel
{
#region Ctor
public ConfigurationModel()
{
Test = "";
}
#endregion
#region Properties
public string Test { get; set; }
#endregion
}

View File

@ -0,0 +1,72 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<OutputPath>..\..\..\..\NopCommerce\Presentation\Nop.Web\Plugins\Misc.SignalRApi</OutputPath>
<OutDir>$(OutputPath)</OutDir>
<!--Set this parameter to true to get the dlls copied from the NuGet cache to the output of your project.
You need to set this parameter to true if your plugin has a nuget package
to ensure that the dlls copied from the NuGet cache to the output of your project-->
<CopyLocalLockFileAssemblies>false</CopyLocalLockFileAssemblies>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<None Remove="logo.jpg" />
<None Remove="plugin.json" />
<None Remove="Views\Configure.cshtml" />
<None Remove="Views\_ViewImports.cshtml" />
<None Remove="Areas\Admin\Views\_ViewImports.cshtml" />
</ItemGroup>
<ItemGroup>
<Content Include="logo.jpg">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="plugin.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Views\Configure.cshtml">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Areas\Admin\Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Update="Areas\Admin\Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Update="Views\_ViewImports.cshtml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<ClearPluginAssemblies Include="$(MSBuildProjectDirectory)\..\..\..\..\NopCommerce\Build\ClearPluginAssemblies.proj" />
</ItemGroup>
<ItemGroup>
<Folder Include="Areas\Admin\Components\" />
<Folder Include="Areas\Admin\Controllers\" />
<Folder Include="Areas\Admin\Extensions\" />
<Folder Include="Areas\Admin\Factories\" />
<Folder Include="Areas\Admin\Models\" />
<Folder Include="Areas\Admin\Validators\" />
<Folder Include="Components\" />
<Folder Include="Extensions\" />
<Folder Include="Factories\" />
<Folder Include="Validators\" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\..\..\NopCommerce\Presentation\Nop.Web\Nop.Web.csproj" />
</ItemGroup>
<!-- This target execute after "Build" target -->
<Target Name="NopTarget" AfterTargets="Build">
<MSBuild Projects="@(ClearPluginAssemblies)" Properties="PluginPath=$(MSBuildProjectDirectory)\$(OutDir)" Targets="NopClear" />
</Target>
</Project>

View File

@ -0,0 +1,26 @@
using Microsoft.AspNetCore.SignalR;
using Nop.Plugin.Misc.SignalRApi.Hubs;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Nop.Plugin.Misc.SignalRApi.Services
{
public class SignalRservice
{
private readonly IHubContext<MainHub> _hubContext;
public SignalRservice(IHubContext<MainHub> hubContext)
{
_hubContext = hubContext;
}
public async Task TestHub()
{
// Check if you can access hub context
await _hubContext.Clients.All.SendAsync("TestMessage", "Hello from server");
}
}
}

View File

@ -0,0 +1,110 @@
@model ConfigurationModel
@{
Layout = "_ConfigurePlugin";
NopHtml.SetActiveMenuItemSystemName("API plugins");
}
<form asp-controller="SignalRApiAdmin" asp-action="Configure" method="post" id="configuration-form">
<div class="cards-group">
<div class="card card-default no-margin">
<div class="card-header">
TITLE comes here
</div>
<div class="card-body">
<div class="form-group row">
<div class="col-md-3">
<div class="label-wrapper">
<label class="col-form-label">
Connection Status
</label>
</div>
</div>
<div class="col-md-3">
<div class="form-text-row" id="connection-status">@Model.Test</div>
</div>
</div>
<!-- New button to call TestHub method -->
<!--nop-antiforgery-token /-->
<div class="form-group row">
<div class="col-md-3 offset-md-3">
<button type="button" class="btn btn-primary" id="test-hub-button">Test Hub Connection</button>
</div>
</div>
<div class="form-group row">
<div class="col-md-9 offset-md-3">
<button type="submit" name="credentials" class="btn btn-primary">@T("Admin.Common.Save")</button>
</div>
</div>
<!-- Result display area -->
<div class="form-group row">
<div class="col-md-3 offset-md-3">
<div id="test-hub-result"></div>
</div>
</div>
</div>
</div>
</div>
</form>
<script>
document.getElementById("test-hub-button").addEventListener("click", function () {
// Clear previous result
document.getElementById("test-hub-result").innerText = "Testing connection...";
var postData = {
message: 'hello'
};
addAntiForgeryToken(postData);
$.ajax({
cache: false,
type: 'POST',
url: '@Url.Action("TestHubConnection", "SignalRApi")',
data: postData,
traditional: true,
success: function (data, textStatus, jqXHR) {
if (data.message) {
document.getElementById("test-hub-result").innerText = data.message;
} else {
//display errors if returned
document.getElementById("test-hub-result").innerText = data.message;
display_nop_error(data);
}
},
complete: function (jqXHR, textStatus) {
console.log('Complete');
}
});
// // Send AJAX request to TestHubConnection action
// fetch('@Url.Action("TestHubConnection", "SignalRApi")', {
// method: 'POST',
// headers: {
// 'Content-Type': 'application/json',
// 'RequestVerificationToken': 'addAntiForgeryToken(postData);'
// }
// })
// .then(response => response.json())
// .then(data => {
// // Update the result based on response
// if (data.success) {
// document.getElementById("test-hub-result").innerText = data.message;
// } else {
// document.getElementById("test-hub-result").innerText = data.message;
// }
// })
// .catch(error => {
// document.getElementById("test-hub-result").innerText = "Error: " + error;
// });
});
</script>

View File

@ -0,0 +1,27 @@
@inherits Nop.Web.Framework.Mvc.Razor.NopRazorPage<TModel>
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, Nop.Web.Framework
@inject INopHtmlHelper NopHtml
@using Microsoft.AspNetCore.Mvc.ViewFeatures
@using Microsoft.AspNetCore.Mvc
@using System.Text.Encodings.Web
@using Nop.Core
@using Nop.Core.Infrastructure
@using Nop.Core.Domain.Catalog
@using Nop.Web.Areas.Admin.Models.Catalog
@using Nop.Web.Extensions
@using Nop.Web.Framework
@using Nop.Web.Framework.Extensions
@using Nop.Web.Framework.Infrastructure
@using Nop.Web.Framework.Models
@using Nop.Web.Framework.Models.DataTables
@using Nop.Web.Framework.Security.Captcha
@using Nop.Web.Framework.Security.Honeypot
@using Nop.Web.Framework.Themes
@using Nop.Web.Framework.UI
@using Nop.Plugin.Misc.SignalRApi
@using Nop.Plugin.Misc.SignalRApi.Models
@using Nop.Plugin.Misc.SignalRApi.Services
@using Nop.Plugin.Misc.SignalRApi.Hubs

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]

View File

@ -0,0 +1,23 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("Nop.Plugin.Misc.SignalRApi")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
[assembly: System.Reflection.AssemblyProductAttribute("Nop.Plugin.Misc.SignalRApi")]
[assembly: System.Reflection.AssemblyTitleAttribute("Nop.Plugin.Misc.SignalRApi")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generated by the MSBuild WriteCodeFragment class.

View File

@ -0,0 +1 @@
026479745d5c9bd84249d084e1e2e65424d4f228211d0fbc2a5e0ae6f7a8714b

View File

@ -0,0 +1,13 @@
is_global = true
build_property.TargetFramework = net8.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = Nop.Plugin.Misc.SignalRApi
build_property.ProjectDir = D:\REPOS\MANGO\source\Nopcommerce.Common\4.70\Plugins\Nop.Plugin.Misc.SignalRApi\
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -0,0 +1,8 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;

View File

@ -0,0 +1 @@
65b2fe020fc3751d0c6e62f8a21ad741d9d38e80a46d77aab6bdf868e57bf357

View File

@ -0,0 +1,617 @@
{
"format": 1,
"restore": {
"D:\\REPOS\\MANGO\\source\\Nopcommerce.Common\\4.70\\Plugins\\Nop.Plugin.Misc.SignalRApi\\Nop.Plugin.Misc.SignalRApi.csproj": {}
},
"projects": {
"D:\\REPOS\\MANGO\\source\\Nopcommerce.Common\\4.70\\Plugins\\Nop.Plugin.Misc.SignalRApi\\Nop.Plugin.Misc.SignalRApi.csproj": {
"version": "1.0.0",
"restore": {
"projectUniqueName": "D:\\REPOS\\MANGO\\source\\Nopcommerce.Common\\4.70\\Plugins\\Nop.Plugin.Misc.SignalRApi\\Nop.Plugin.Misc.SignalRApi.csproj",
"projectName": "Nop.Plugin.Misc.SignalRApi",
"projectPath": "D:\\REPOS\\MANGO\\source\\Nopcommerce.Common\\4.70\\Plugins\\Nop.Plugin.Misc.SignalRApi\\Nop.Plugin.Misc.SignalRApi.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\REPOS\\MANGO\\source\\Nopcommerce.Common\\4.70\\Plugins\\Nop.Plugin.Misc.SignalRApi\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web\\Nop.Web.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web\\Nop.Web.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj",
"projectName": "Nop.Core",
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"dependencies": {
"AutoMapper": {
"target": "Package",
"version": "[13.0.1, )"
},
"Autofac.Extensions.DependencyInjection": {
"target": "Package",
"version": "[10.0.0, )"
},
"Azure.Extensions.AspNetCore.DataProtection.Blobs": {
"target": "Package",
"version": "[1.3.4, )"
},
"Azure.Extensions.AspNetCore.DataProtection.Keys": {
"target": "Package",
"version": "[1.2.4, )"
},
"Azure.Identity": {
"target": "Package",
"version": "[1.13.0, )"
},
"Humanizer": {
"target": "Package",
"version": "[2.14.1, )"
},
"Microsoft.AspNetCore.Mvc.NewtonsoftJson": {
"target": "Package",
"version": "[8.0.10, )"
},
"Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation": {
"target": "Package",
"version": "[8.0.10, )"
},
"Microsoft.Extensions.Caching.SqlServer": {
"target": "Package",
"version": "[8.0.10, )"
},
"Microsoft.Extensions.Caching.StackExchangeRedis": {
"target": "Package",
"version": "[8.0.10, )"
},
"Nito.AsyncEx.Coordination": {
"target": "Package",
"version": "[5.1.2, )"
},
"System.IO.FileSystem.AccessControl": {
"target": "Package",
"version": "[5.0.0, )"
},
"System.Linq.Async": {
"target": "Package",
"version": "[6.0.1, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj",
"projectName": "Nop.Data",
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"dependencies": {
"FluentMigrator": {
"target": "Package",
"version": "[5.2.0, )"
},
"FluentMigrator.Runner": {
"target": "Package",
"version": "[5.1.0, )"
},
"Microsoft.Data.SqlClient": {
"target": "Package",
"version": "[5.2.0, )"
},
"MySqlConnector": {
"target": "Package",
"version": "[2.3.7, )"
},
"Npgsql": {
"target": "Package",
"version": "[8.0.5, )"
},
"System.Configuration.ConfigurationManager": {
"target": "Package",
"version": "[8.0.1, )"
},
"System.Net.NameResolution": {
"target": "Package",
"version": "[4.3.0, )"
},
"linq2db": {
"target": "Package",
"version": "[5.4.1, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Services\\Nop.Services.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Services\\Nop.Services.csproj",
"projectName": "Nop.Services",
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Services\\Nop.Services.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Services\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj"
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"dependencies": {
"Azure.Storage.Blobs": {
"target": "Package",
"version": "[12.22.2, )"
},
"ClosedXML": {
"target": "Package",
"version": "[0.104.1, )"
},
"Google.Apis.Auth": {
"target": "Package",
"version": "[1.68.0, )"
},
"HarfBuzzSharp.NativeAssets.Linux": {
"target": "Package",
"version": "[7.3.0.2, )"
},
"MailKit": {
"target": "Package",
"version": "[4.8.0, )"
},
"MaxMind.GeoIP2": {
"target": "Package",
"version": "[5.2.0, )"
},
"Microsoft.Identity.Client": {
"target": "Package",
"version": "[4.66.1, )"
},
"QuestPDF": {
"target": "Package",
"version": "[2024.10.1, )"
},
"SkiaSharp": {
"target": "Package",
"version": "[2.88.8, )"
},
"SkiaSharp.NativeAssets.Linux.NoDependencies": {
"target": "Package",
"version": "[2.88.8, )"
},
"Svg.Skia": {
"target": "Package",
"version": "[2.0.0.1, )"
},
"System.Linq.Dynamic.Core": {
"target": "Package",
"version": "[1.4.6, )"
},
"System.ServiceModel.Http": {
"target": "Package",
"version": "[8.0.0, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj",
"projectName": "Nop.Web.Framework",
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web.Framework\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj"
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj"
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Services\\Nop.Services.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Services\\Nop.Services.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"dependencies": {
"FluentValidation.AspNetCore": {
"target": "Package",
"version": "[11.3.0, )"
},
"LigerShark.WebOptimizer.Core": {
"target": "Package",
"version": "[3.0.426, )"
},
"WebMarkupMin.AspNetCore8": {
"target": "Package",
"version": "[2.17.0, )"
},
"WebMarkupMin.NUglify": {
"target": "Package",
"version": "[2.17.0, )"
}
},
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web\\Nop.Web.csproj": {
"version": "4.70.0",
"restore": {
"projectUniqueName": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web\\Nop.Web.csproj",
"projectName": "Nop.Web",
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web\\Nop.Web.csproj",
"packagesPath": "C:\\Users\\Ádám\\.nuget\\packages\\",
"outputPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web\\obj\\",
"projectStyle": "PackageReference",
"fallbackFolders": [
"C:\\Program Files\\DevExpress 24.1\\Components\\Offline Packages",
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
],
"configFilePaths": [
"C:\\Users\\Ádám\\AppData\\Roaming\\NuGet\\NuGet.Config",
"C:\\Program Files (x86)\\NuGet\\Config\\DevExpress 24.1.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
],
"originalTargetFrameworks": [
"net8.0"
],
"sources": {
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
"C:\\Program Files\\DevExpress 24.1\\Components\\System\\Components\\Packages": {},
"C:\\Program Files\\dotnet\\library-packs": {},
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"projectReferences": {
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Core\\Nop.Core.csproj"
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Data\\Nop.Data.csproj"
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Services\\Nop.Services.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Libraries\\Nop.Services\\Nop.Services.csproj"
},
"D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj": {
"projectPath": "D:\\REPOS\\MANGO\\source\\NopCommerce\\Presentation\\Nop.Web.Framework\\Nop.Web.Framework.csproj"
}
}
}
},
"warningProperties": {
"warnAsError": [
"NU1605"
]
},
"restoreAuditProperties": {
"enableAudit": "true",
"auditLevel": "low",
"auditMode": "direct"
}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"imports": [
"net461",
"net462",
"net47",
"net471",
"net472",
"net48",
"net481"
],
"assetTargetFallback": true,
"warn": true,
"frameworkReferences": {
"Microsoft.AspNetCore.App": {
"privateAssets": "none"
},
"Microsoft.NETCore.App": {
"privateAssets": "all"
}
},
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\8.0.300/PortableRuntimeIdentifierGraph.json"
}
}
}
}
}

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\Ádám\.nuget\packages\;C:\Program Files\DevExpress 24.1\Components\Offline Packages;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages</NuGetPackageFolders>
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">6.10.1</NuGetToolVersion>
</PropertyGroup>
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<SourceRoot Include="C:\Users\Ádám\.nuget\packages\" />
<SourceRoot Include="C:\Program Files\DevExpress 24.1\Components\Offline Packages\" />
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
</ItemGroup>
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<PkgMicrosoft_CodeAnalysis_Analyzers Condition=" '$(PkgMicrosoft_CodeAnalysis_Analyzers)' == '' ">C:\Users\Ádám\.nuget\packages\microsoft.codeanalysis.analyzers\3.3.2</PkgMicrosoft_CodeAnalysis_Analyzers>
</PropertyGroup>
</Project>

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
<Import Project="$(NuGetPackageRoot)system.text.json\6.0.10\buildTransitive\netcoreapp3.1\System.Text.Json.targets" Condition="Exists('$(NuGetPackageRoot)system.text.json\6.0.10\buildTransitive\netcoreapp3.1\System.Text.Json.targets')" />
<Import Project="$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\8.0.2\buildTransitive\net6.0\Microsoft.Extensions.Logging.Abstractions.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\8.0.2\buildTransitive\net6.0\Microsoft.Extensions.Logging.Abstractions.targets')" />
<Import Project="$(NuGetPackageRoot)questpdf\2024.10.1\buildTransitive\QuestPDF.targets" Condition="Exists('$(NuGetPackageRoot)questpdf\2024.10.1\buildTransitive\QuestPDF.targets')" />
<Import Project="$(NuGetPackageRoot)microsoft.extensions.options\8.0.2\buildTransitive\net6.0\Microsoft.Extensions.Options.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.options\8.0.2\buildTransitive\net6.0\Microsoft.Extensions.Options.targets')" />
<Import Project="$(NuGetPackageRoot)microsoft.aspnetcore.mvc.razor.runtimecompilation\8.0.10\buildTransitive\net8.0\Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.aspnetcore.mvc.razor.runtimecompilation\8.0.10\buildTransitive\net8.0\Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation.targets')" />
</ImportGroup>
</Project>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,234 @@
{
"version": 2,
"dgSpecHash": "WWKUKQxi3MA=",
"success": true,
"projectFilePath": "D:\\REPOS\\MANGO\\source\\Nopcommerce.Common\\4.70\\Plugins\\Nop.Plugin.Misc.SignalRApi\\Nop.Plugin.Misc.SignalRApi.csproj",
"expectedPackageFiles": [
"C:\\Users\\Ádám\\.nuget\\packages\\advancedstringbuilder\\0.1.1\\advancedstringbuilder.0.1.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\autofac\\8.1.0\\autofac.8.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\autofac.extensions.dependencyinjection\\10.0.0\\autofac.extensions.dependencyinjection.10.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\automapper\\13.0.1\\automapper.13.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.core\\1.44.1\\azure.core.1.44.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.extensions.aspnetcore.dataprotection.blobs\\1.3.4\\azure.extensions.aspnetcore.dataprotection.blobs.1.3.4.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.extensions.aspnetcore.dataprotection.keys\\1.2.4\\azure.extensions.aspnetcore.dataprotection.keys.1.2.4.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.identity\\1.13.0\\azure.identity.1.13.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.security.keyvault.keys\\4.6.0\\azure.security.keyvault.keys.4.6.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.storage.blobs\\12.22.2\\azure.storage.blobs.12.22.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\azure.storage.common\\12.21.1\\azure.storage.common.12.21.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\bouncycastle.cryptography\\2.4.0\\bouncycastle.cryptography.2.4.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\closedxml\\0.104.1\\closedxml.0.104.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\closedxml.parser\\1.2.0\\closedxml.parser.1.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\documentformat.openxml\\3.0.1\\documentformat.openxml.3.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\documentformat.openxml.framework\\3.0.1\\documentformat.openxml.framework.3.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\excelnumberformat\\1.1.0\\excelnumberformat.1.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\excss\\4.2.3\\excss.4.2.3.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\firebirdsql.data.firebirdclient\\10.0.0\\firebirdsql.data.firebirdclient.10.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator\\5.2.0\\fluentmigrator.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.abstractions\\5.2.0\\fluentmigrator.abstractions.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.mysql\\5.1.0\\fluentmigrator.extensions.mysql.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.oracle\\5.1.0\\fluentmigrator.extensions.oracle.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.postgres\\5.1.0\\fluentmigrator.extensions.postgres.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.snowflake\\5.1.0\\fluentmigrator.extensions.snowflake.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.extensions.sqlserver\\5.1.0\\fluentmigrator.extensions.sqlserver.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner\\5.1.0\\fluentmigrator.runner.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.core\\5.1.0\\fluentmigrator.runner.core.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.db2\\5.1.0\\fluentmigrator.runner.db2.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.firebird\\5.1.0\\fluentmigrator.runner.firebird.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.hana\\5.1.0\\fluentmigrator.runner.hana.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.mysql\\5.1.0\\fluentmigrator.runner.mysql.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.oracle\\5.1.0\\fluentmigrator.runner.oracle.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.postgres\\5.1.0\\fluentmigrator.runner.postgres.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.redshift\\5.1.0\\fluentmigrator.runner.redshift.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.snowflake\\5.1.0\\fluentmigrator.runner.snowflake.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.sqlite\\5.1.0\\fluentmigrator.runner.sqlite.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentmigrator.runner.sqlserver\\5.1.0\\fluentmigrator.runner.sqlserver.5.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentvalidation\\11.5.1\\fluentvalidation.11.5.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentvalidation.aspnetcore\\11.3.0\\fluentvalidation.aspnetcore.11.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\fluentvalidation.dependencyinjectionextensions\\11.5.1\\fluentvalidation.dependencyinjectionextensions.11.5.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\google.apis\\1.68.0\\google.apis.1.68.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\google.apis.auth\\1.68.0\\google.apis.auth.1.68.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\google.apis.core\\1.68.0\\google.apis.core.1.68.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\harfbuzzsharp\\7.3.0.2\\harfbuzzsharp.7.3.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\harfbuzzsharp.nativeassets.linux\\7.3.0.2\\harfbuzzsharp.nativeassets.linux.7.3.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\harfbuzzsharp.nativeassets.macos\\7.3.0.2\\harfbuzzsharp.nativeassets.macos.7.3.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\harfbuzzsharp.nativeassets.win32\\7.3.0.2\\harfbuzzsharp.nativeassets.win32.7.3.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer\\2.14.1\\humanizer.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core\\2.14.1\\humanizer.core.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.af\\2.14.1\\humanizer.core.af.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ar\\2.14.1\\humanizer.core.ar.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.az\\2.14.1\\humanizer.core.az.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.bg\\2.14.1\\humanizer.core.bg.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.bn-bd\\2.14.1\\humanizer.core.bn-bd.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.cs\\2.14.1\\humanizer.core.cs.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.da\\2.14.1\\humanizer.core.da.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.de\\2.14.1\\humanizer.core.de.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.el\\2.14.1\\humanizer.core.el.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.es\\2.14.1\\humanizer.core.es.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.fa\\2.14.1\\humanizer.core.fa.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.fi-fi\\2.14.1\\humanizer.core.fi-fi.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.fr\\2.14.1\\humanizer.core.fr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.fr-be\\2.14.1\\humanizer.core.fr-be.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.he\\2.14.1\\humanizer.core.he.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.hr\\2.14.1\\humanizer.core.hr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.hu\\2.14.1\\humanizer.core.hu.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.hy\\2.14.1\\humanizer.core.hy.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.id\\2.14.1\\humanizer.core.id.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.is\\2.14.1\\humanizer.core.is.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.it\\2.14.1\\humanizer.core.it.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ja\\2.14.1\\humanizer.core.ja.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ko-kr\\2.14.1\\humanizer.core.ko-kr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ku\\2.14.1\\humanizer.core.ku.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.lv\\2.14.1\\humanizer.core.lv.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ms-my\\2.14.1\\humanizer.core.ms-my.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.mt\\2.14.1\\humanizer.core.mt.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.nb\\2.14.1\\humanizer.core.nb.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.nb-no\\2.14.1\\humanizer.core.nb-no.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.nl\\2.14.1\\humanizer.core.nl.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.pl\\2.14.1\\humanizer.core.pl.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.pt\\2.14.1\\humanizer.core.pt.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ro\\2.14.1\\humanizer.core.ro.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.ru\\2.14.1\\humanizer.core.ru.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sk\\2.14.1\\humanizer.core.sk.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sl\\2.14.1\\humanizer.core.sl.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sr\\2.14.1\\humanizer.core.sr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sr-latn\\2.14.1\\humanizer.core.sr-latn.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.sv\\2.14.1\\humanizer.core.sv.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.th-th\\2.14.1\\humanizer.core.th-th.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.tr\\2.14.1\\humanizer.core.tr.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.uk\\2.14.1\\humanizer.core.uk.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.uz-cyrl-uz\\2.14.1\\humanizer.core.uz-cyrl-uz.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.uz-latn-uz\\2.14.1\\humanizer.core.uz-latn-uz.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.vi\\2.14.1\\humanizer.core.vi.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.zh-cn\\2.14.1\\humanizer.core.zh-cn.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.zh-hans\\2.14.1\\humanizer.core.zh-hans.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\humanizer.core.zh-hant\\2.14.1\\humanizer.core.zh-hant.2.14.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\ligershark.weboptimizer.core\\3.0.426\\ligershark.weboptimizer.core.3.0.426.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\linq2db\\5.4.1\\linq2db.5.4.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\mailkit\\4.8.0\\mailkit.4.8.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\maxmind.db\\4.1.0\\maxmind.db.4.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\maxmind.geoip2\\5.2.0\\maxmind.geoip2.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.cryptography.internal\\3.1.32\\microsoft.aspnetcore.cryptography.internal.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.dataprotection\\3.1.32\\microsoft.aspnetcore.dataprotection.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.dataprotection.abstractions\\3.1.32\\microsoft.aspnetcore.dataprotection.abstractions.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.jsonpatch\\8.0.10\\microsoft.aspnetcore.jsonpatch.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.mvc.newtonsoftjson\\8.0.10\\microsoft.aspnetcore.mvc.newtonsoftjson.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.mvc.razor.extensions\\6.0.0\\microsoft.aspnetcore.mvc.razor.extensions.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.mvc.razor.runtimecompilation\\8.0.10\\microsoft.aspnetcore.mvc.razor.runtimecompilation.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.aspnetcore.razor.language\\6.0.0\\microsoft.aspnetcore.razor.language.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.bcl.asyncinterfaces\\6.0.0\\microsoft.bcl.asyncinterfaces.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.codeanalysis.analyzers\\3.3.2\\microsoft.codeanalysis.analyzers.3.3.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.codeanalysis.common\\4.0.0\\microsoft.codeanalysis.common.4.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.codeanalysis.csharp\\4.0.0\\microsoft.codeanalysis.csharp.4.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.codeanalysis.razor\\6.0.0\\microsoft.codeanalysis.razor.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.csharp\\4.7.0\\microsoft.csharp.4.7.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.data.sqlclient\\5.2.0\\microsoft.data.sqlclient.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.data.sqlclient.sni.runtime\\5.2.0\\microsoft.data.sqlclient.sni.runtime.5.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.caching.abstractions\\8.0.0\\microsoft.extensions.caching.abstractions.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.caching.sqlserver\\8.0.10\\microsoft.extensions.caching.sqlserver.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.caching.stackexchangeredis\\8.0.10\\microsoft.extensions.caching.stackexchangeredis.8.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.configuration.abstractions\\8.0.0\\microsoft.extensions.configuration.abstractions.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.dependencyinjection\\8.0.0\\microsoft.extensions.dependencyinjection.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.dependencyinjection.abstractions\\8.0.2\\microsoft.extensions.dependencyinjection.abstractions.8.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.dependencymodel\\8.0.2\\microsoft.extensions.dependencymodel.8.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.fileproviders.abstractions\\3.1.32\\microsoft.extensions.fileproviders.abstractions.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.hosting.abstractions\\3.1.32\\microsoft.extensions.hosting.abstractions.3.1.32.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.logging\\8.0.0\\microsoft.extensions.logging.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.logging.abstractions\\8.0.2\\microsoft.extensions.logging.abstractions.8.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.objectpool\\6.0.16\\microsoft.extensions.objectpool.6.0.16.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.options\\8.0.2\\microsoft.extensions.options.8.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.extensions.primitives\\8.0.0\\microsoft.extensions.primitives.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identity.client\\4.66.1\\microsoft.identity.client.4.66.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identity.client.extensions.msal\\4.65.0\\microsoft.identity.client.extensions.msal.4.65.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.abstractions\\6.35.0\\microsoft.identitymodel.abstractions.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.jsonwebtokens\\6.35.0\\microsoft.identitymodel.jsonwebtokens.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.logging\\6.35.0\\microsoft.identitymodel.logging.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.protocols\\6.35.0\\microsoft.identitymodel.protocols.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.protocols.openidconnect\\6.35.0\\microsoft.identitymodel.protocols.openidconnect.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.identitymodel.tokens\\6.35.0\\microsoft.identitymodel.tokens.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.netcore.platforms\\2.1.2\\microsoft.netcore.platforms.2.1.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.netcore.targets\\1.1.0\\microsoft.netcore.targets.1.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.sqlserver.server\\1.0.0\\microsoft.sqlserver.server.1.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\microsoft.win32.registry\\4.7.0\\microsoft.win32.registry.4.7.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\mimekit\\4.8.0\\mimekit.4.8.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\mysqlconnector\\2.3.7\\mysqlconnector.2.3.7.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\newtonsoft.json\\13.0.3\\newtonsoft.json.13.0.3.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\newtonsoft.json.bson\\1.0.2\\newtonsoft.json.bson.1.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nito.asyncex.coordination\\5.1.2\\nito.asyncex.coordination.5.1.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nito.asyncex.tasks\\5.1.2\\nito.asyncex.tasks.5.1.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nito.collections.deque\\1.1.1\\nito.collections.deque.1.1.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nito.disposables\\2.2.1\\nito.disposables.2.2.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\npgsql\\8.0.5\\npgsql.8.0.5.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\nuglify\\1.21.9\\nuglify.1.21.9.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\pipelines.sockets.unofficial\\2.2.8\\pipelines.sockets.unofficial.2.2.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\questpdf\\2024.10.1\\questpdf.2024.10.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\rbush\\3.2.0\\rbush.3.2.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\runtime.native.system\\4.3.0\\runtime.native.system.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\shimskiasharp\\2.0.0.1\\shimskiasharp.2.0.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\sixlabors.fonts\\1.0.0\\sixlabors.fonts.1.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp\\2.88.8\\skiasharp.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp.harfbuzz\\2.88.8\\skiasharp.harfbuzz.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp.nativeassets.linux.nodependencies\\2.88.8\\skiasharp.nativeassets.linux.nodependencies.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp.nativeassets.macos\\2.88.8\\skiasharp.nativeassets.macos.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\skiasharp.nativeassets.win32\\2.88.8\\skiasharp.nativeassets.win32.2.88.8.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\stackexchange.redis\\2.7.27\\stackexchange.redis.2.7.27.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\svg.custom\\2.0.0.1\\svg.custom.2.0.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\svg.model\\2.0.0.1\\svg.model.2.0.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\svg.skia\\2.0.0.1\\svg.skia.2.0.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.clientmodel\\1.1.0\\system.clientmodel.1.1.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.codedom\\7.0.0\\system.codedom.7.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.collections\\4.3.0\\system.collections.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.collections.immutable\\5.0.0\\system.collections.immutable.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.componentmodel.annotations\\5.0.0\\system.componentmodel.annotations.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.configuration.configurationmanager\\8.0.1\\system.configuration.configurationmanager.8.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.diagnostics.diagnosticsource\\8.0.1\\system.diagnostics.diagnosticsource.8.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.diagnostics.eventlog\\8.0.1\\system.diagnostics.eventlog.8.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.diagnostics.tracing\\4.3.0\\system.diagnostics.tracing.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.formats.asn1\\8.0.1\\system.formats.asn1.8.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.globalization\\4.3.0\\system.globalization.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.identitymodel.tokens.jwt\\6.35.0\\system.identitymodel.tokens.jwt.6.35.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io\\4.3.0\\system.io.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io.filesystem.accesscontrol\\5.0.0\\system.io.filesystem.accesscontrol.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io.hashing\\6.0.0\\system.io.hashing.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io.packaging\\8.0.0\\system.io.packaging.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.io.pipelines\\5.0.1\\system.io.pipelines.5.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.linq.async\\6.0.1\\system.linq.async.6.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.linq.dynamic.core\\1.4.6\\system.linq.dynamic.core.1.4.6.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.management\\7.0.2\\system.management.7.0.2.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.memory\\4.5.5\\system.memory.4.5.5.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.memory.data\\6.0.0\\system.memory.data.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.net.nameresolution\\4.3.0\\system.net.nameresolution.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.net.primitives\\4.3.0\\system.net.primitives.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.numerics.vectors\\4.5.0\\system.numerics.vectors.4.5.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.reflection\\4.3.0\\system.reflection.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.reflection.metadata\\5.0.0\\system.reflection.metadata.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.reflection.primitives\\4.3.0\\system.reflection.primitives.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.resources.resourcemanager\\4.3.0\\system.resources.resourcemanager.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime\\4.3.0\\system.runtime.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.caching\\8.0.0\\system.runtime.caching.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\6.0.0\\system.runtime.compilerservices.unsafe.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.extensions\\4.3.0\\system.runtime.extensions.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.handles\\4.3.0\\system.runtime.handles.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.runtime.interopservices\\4.3.0\\system.runtime.interopservices.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.accesscontrol\\6.0.0\\system.security.accesscontrol.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.cryptography.cng\\4.5.0\\system.security.cryptography.cng.4.5.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.cryptography.pkcs\\8.0.0\\system.security.cryptography.pkcs.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.cryptography.protecteddata\\8.0.0\\system.security.cryptography.protecteddata.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.cryptography.xml\\6.0.1\\system.security.cryptography.xml.6.0.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.security.principal.windows\\5.0.0\\system.security.principal.windows.5.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.servicemodel.http\\8.0.0\\system.servicemodel.http.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.servicemodel.primitives\\8.0.0\\system.servicemodel.primitives.8.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.text.encoding\\4.3.0\\system.text.encoding.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.text.encoding.codepages\\4.5.1\\system.text.encoding.codepages.4.5.1.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.text.encodings.web\\6.0.0\\system.text.encodings.web.6.0.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.text.json\\6.0.10\\system.text.json.6.0.10.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.threading\\4.3.0\\system.threading.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.threading.tasks\\4.3.0\\system.threading.tasks.4.3.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.threading.tasks.extensions\\4.5.4\\system.threading.tasks.extensions.4.5.4.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\system.valuetuple\\4.5.0\\system.valuetuple.4.5.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\webmarkupmin.aspnet.common\\2.17.0\\webmarkupmin.aspnet.common.2.17.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\webmarkupmin.aspnetcore8\\2.17.0\\webmarkupmin.aspnetcore8.2.17.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\webmarkupmin.core\\2.17.0\\webmarkupmin.core.2.17.0.nupkg.sha512",
"C:\\Users\\Ádám\\.nuget\\packages\\webmarkupmin.nuglify\\2.17.0\\webmarkupmin.nuglify.2.17.0.nupkg.sha512"
],
"logs": []
}

View File

@ -0,0 +1,13 @@
{
"Group": "Misc",
"FriendlyName": "SignalR Api",
"SystemName": "Misc.SignalRApi",
"Version": "1.00",
"SupportedVersions": [
"4.70"
],
"Author": "Adam Gelencser",
"DisplayOrder": 1,
"FileName": "Nop.Plugin.Misc.SignalRApi.dll",
"Description": "This plugin adds SignalR to access data from outside"
}

View File

@ -0,0 +1,36 @@
using Nop.Plugin.Misc.TestPlugin.Components;
using Nop.Services.Cms;
using Nop.Services.Plugins;
using Nop.Web.Framework.Infrastructure;
namespace Nop.Plugin.Misc.TestPlugin;
/// <summary>
/// Rename this file and change to the correct type
/// </summary>
public class AgeVerificationPlugin : BasePlugin, IWidgetPlugin
{
public bool HideInWidgetList => true;
public Type GetWidgetViewComponent(string widgetZone)
{
return typeof(AgeVerificationViewComponent);
}
public Task<IList<string>> GetWidgetZonesAsync()
{
return Task.FromResult<IList<string>>(new List<string> { PublicWidgetZones.HomepageTop });
}
public override async Task InstallAsync()
{
// Add installation logic if needed
await base.InstallAsync();
}
public override async Task UninstallAsync()
{
// Add uninstallation logic if needed
await base.UninstallAsync();
}
}

View File

@ -0,0 +1,10 @@
@inherits Nop.Web.Framework.Mvc.Razor.NopRazorPage<TModel>
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@addTagHelper *, Nop.Web.Framework
@using Microsoft.AspNetCore.Mvc.ViewFeatures
@using Nop.Web.Framework.UI
@using Nop.Web.Framework.Extensions
@using System.Text.Encodings.Web
@using Nop.Services.Events
@using Nop.Web.Framework.Events

View File

@ -0,0 +1,13 @@
using Microsoft.AspNetCore.Mvc;
using Nop.Web.Framework.Components;
namespace Nop.Plugin.Misc.TestPlugin.Components;
[ViewComponent(Name = "AgeVerification")]
public class AgeVerificationViewComponent : NopViewComponent
{
public IViewComponentResult Invoke()
{
return View("~/Plugins/Misc.AgeVerification/Views/AgeVerificationPopup.cshtml");
}
}

View File

@ -0,0 +1,13 @@
using Microsoft.AspNetCore.Mvc;
using Nop.Web.Framework.Controllers;
namespace Nop.Plugin.Widgets.AgeVerification.Controllers
{
public class AgeVerificationController : BasePluginController
{
public IActionResult Popup()
{
return View("~/Plugins/Misc.AgeVerification/Views/AgeVerificationPopup.cshtml");
}
}
}

View File

@ -0,0 +1,7 @@
using Nop.Core;
namespace Nop.Plugin.Misc.TestPlugin.Domains;
public partial class CustomTable : BaseEntity
{
}

View File

@ -0,0 +1,38 @@
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Mvc.Razor;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Nop.Core.Infrastructure;
namespace Nop.Plugin.Misc.TestPlugin.Infrastructure;
public class PluginNopStartup : INopStartup
{
/// <summary>
/// Add and configure any of the middleware
/// </summary>
/// <param name="services">Collection of service descriptors</param>
/// <param name="configuration">Configuration of the application</param>
public void ConfigureServices(IServiceCollection services, IConfiguration configuration)
{
services.Configure<RazorViewEngineOptions>(options =>
{
options.ViewLocationExpanders.Add(new ViewLocationExpander());
});
//register services and interfaces
//services.AddScoped<CustomModelFactory, ICustomerModelFactory>();
}
/// <summary>
/// Configure the using of added middleware
/// </summary>
/// <param name="application">Builder for configuring an application's request pipeline</param>
public void Configure(IApplicationBuilder application)
{
}
/// <summary>
/// Gets order of this startup configuration implementation
/// </summary>
public int Order => 3000;
}

View File

@ -0,0 +1,23 @@
using Microsoft.AspNetCore.Routing;
using Nop.Web.Framework.Mvc.Routing;
namespace Nop.Plugin.Misc.TestPlugin.Infrastructure;
/// <summary>
/// Represents plugin route provider
/// </summary>
public class RouteProvider : IRouteProvider
{
/// <summary>
/// Register routes
/// </summary>
/// <param name="endpointRouteBuilder">Route builder</param>
public void RegisterRoutes(IEndpointRouteBuilder endpointRouteBuilder)
{
}
/// <summary>
/// Gets a priority of route provider
/// </summary>
public int Priority => 0;
}

View File

@ -0,0 +1,37 @@
using Microsoft.AspNetCore.Mvc.Razor;
namespace Nop.Plugin.Misc.TestPlugin.Infrastructure;
public class ViewLocationExpander : IViewLocationExpander
{
/// <summary>
/// Invoked by a <see cref="T:Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine" /> to determine the values that would be consumed by this instance
/// of <see cref="T:Microsoft.AspNetCore.Mvc.Razor.IViewLocationExpander" />. The calculated values are used to determine if the view location
/// has changed since the last time it was located.
/// </summary>
/// <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Razor.ViewLocationExpanderContext" /> for the current view location
/// expansion operation.</param>
public void PopulateValues(ViewLocationExpanderContext context)
{
}
/// <summary>
/// Invoked by a <see cref="T:Microsoft.AspNetCore.Mvc.Razor.RazorViewEngine" /> to determine potential locations for a view.
/// </summary>
/// <param name="context">The <see cref="T:Microsoft.AspNetCore.Mvc.Razor.ViewLocationExpanderContext" /> for the current view location
/// expansion operation.</param>
/// <param name="viewLocations">The sequence of view locations to expand.</param>
/// <returns>A list of expanded view locations.</returns>
public IEnumerable<string> ExpandViewLocations(ViewLocationExpanderContext context, IEnumerable<string> viewLocations)
{
if (context.AreaName == "Admin")
{
viewLocations = new[] { $"/Plugins/Nop.Plugin.Misc.TestPlugin/Areas/Admin/Views/{context.ControllerName}/{context.ViewName}.cshtml" }.Concat(viewLocations);
}
else
{
viewLocations = new[] { $"/Plugins/Nop.Plugin.Misc.TestPlugin/Views/{context.ControllerName}/{context.ViewName}.cshtml" }.Concat(viewLocations);
}
return viewLocations;
}
}

View File

@ -0,0 +1,19 @@
using FluentMigrator.Builders.Create.Table;
using Nop.Data.Mapping.Builders;
using Nop.Plugin.Misc.TestPlugin.Domains;
namespace Nop.Plugin.Misc.TestPlugin.Mapping.Builders;
public class PluginBuilder : NopEntityBuilder<CustomTable>
{
#region Methods
/// <summary>
/// Apply entity configuration
/// </summary>
/// <param name="table">Create table expression builder</param>
public override void MapEntity(CreateTableExpressionBuilder table)
{
}
#endregion
}

View File

@ -0,0 +1,15 @@
using Nop.Data.Mapping;
namespace Nop.Plugin.Misc.TestPlugin.Mapping;
public partial class NameCompatibility : INameCompatibility
{
/// <summary>
/// Gets table name for mapping with the type
/// </summary>
public Dictionary<Type, string> TableNames => new();
/// <summary>
/// Gets column name for mapping with the entity's property and type
/// </summary>
public Dictionary<(Type, string), string> ColumnName => new();
}

View File

@ -0,0 +1,18 @@
using FluentMigrator;
using Nop.Data.Extensions;
using Nop.Data.Migrations;
using Nop.Plugin.Misc.TestPlugin.Domains;
namespace Nop.Plugin.Misc.TestPlugin.Migrations;
//2022-04-05 17:00:00
[NopMigration("2024-08-01 23:07:37", "Nop.Plugin.Misc.TestPlugin schema", MigrationProcessType.Installation)]
public class SchemaMigration : AutoReversingMigration
{
/// <summary>
/// Collect the UP migration expressions
/// </summary>
public override void Up()
{
Create.TableFor<CustomTable>();
}
}

Some files were not shown because too many files have changed in this diff Show More