﻿<?xml version="1.0" encoding="utf-8"?>
<configuration>
	<configSections>
		<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Culture=neutral" requirePermission="false" />
		<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
		<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
			<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
			<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
		</sectionGroup>
	</configSections>

	<appSettings>
		<add key="webpages:Version" value="3.0.0.0" />
		<add key="webpages:Enabled" value="false" />
		<add key="ClientValidationEnabled" value="true" />
		<add key="UnobtrusiveJavaScriptEnabled" value="true" />
		<add key="IncludeGoogleAnalytics" value="false" />
		
		<add key="Environment" value="Base" />
		<add key="AutomaticMigrationsEnabled" value="true" />

		<!-- Override the all of the settings below this message when running locally -->
		
		<add key="PortalPaymentsURL" value="Your Payment Portal URL here" />
		<add key="FinishURL" value="The URL you want to see at the end of the payment process" />
		<add key="ApplicationEventLogSourceName" value="PaymentPortal" />
		<add key="Layout.Strapline" value="A strap line for your organisation"/>
		<add key="OtherWaysToPayUrl" value="A link to a list of other ways to pay"/>

		<!-- ReferenceSalt should be identical across all web projects -->
		<add key="ReferenceSalt" value ="The salt used when creating transaction references" />

		<!-- Email settings should be identical across all web projects -->
		<add key="EmailMessageFrom" value="noreply@your-organisation.com" />
		<add key="EmailMessageFromDisplayName" value="Organisation Name" />
		<add key="EmailHost" value="emailhost.your-organisation.com" />
		<add key="Notification.Email.Recipient" value="webmaster@your-organisation.com" />
		<add key="DuplicateTransaction.Email.Recipient" value="webmaster@your-organisation.com" />

		<!-- Organisation settings should be identical across all web projects -->
		<add key="Organisation.Name" value="Your organisation name"/>
		<add key="Organisation.ShortName" value="Your organisation short name"/>
		<add key="Organisation.AbbreviatedName" value="Your organisation abbreviation"/>
		<add key="Organisation.Website" value="https://www.your-organisation.com"/>
		<add key="Organisation.Logo" value="https://www.your-organisaition.com/logo.png"/>
		<add key="Organisation.Logo.Printable" value="https://www.your-organisaition.com/print-logo.png"/>
		<add key="Organisation.VatNumber" value="123456789"/>
		<add key="Organisation.VatRegisteredAddress.AddressLine1" value="VAT Address Line 1"/>
		<add key="Organisation.VatRegisteredAddress.AddressLine2" value="VAT Address Line 2"/>
		<add key="Organisation.VatRegisteredAddress.AddressLine3" value="VAT Address Line 3"/>
		<add key="Organisation.VatRegisteredAddress.PostCode" value="VAT Address Post Code"/>
		<add key="Organisation.Address.AddressLine1" value="Address Line 1"/>
		<add key="Organisation.Address.AddressLine2" value="Address Line 2"/>
		<add key="Organisation.Address.AddressLine3" value="Address Line 3"/>
		<add key="Organisation.Address.PostCode" value="Post Code"/>

		<!-- Seed data - Demo data -->
		<add key="SeedData.DemoData.PaymentIntegration.Name" value="Integration"/>
		<add key="SeedData.DemoData.PaymentIntegration.BaseUri" value="https://www.your-payment-integration.com/Payment"/>
		<add key="SeedData.DemoData.User1.Username" value="tester1@your-organisation.com"/>
		<add key="SeedData.DemoData.User1.Name" value="Tester 1"/>
		<add key="SeedData.DemoData.User1.PasswordHash" value="AP59Z8CoHL2gGqqgLb/CTu0u2sbCkw+zkSxqA1lh+MmGRkqvORuRRFG2lHMdmsqbTg=="/>
		<add key="SeedData.DemoData.User2.Username" value="tester2@your-organisation.com"/>
		<add key="SeedData.DemoData.User2.Name" value="Tester 2"/>
		<add key="SeedData.DemoData.User2.PasswordHash" value="AP59Z8CoHL2gGqqgLb/CTu0u2sbCkw+zkSxqA1lh+MmGRkqvORuRRFG2lHMdmsqbTg=="/>
		<add key="SeedData.DemoData.FundMetadata.Key1" value="Key"/>
		<add key="SeedData.DemoData.FundMetadata.Value1" value="Value"/>
		<add key="SeedData.DemoData.FundMetadata.FundCode1" value="FundCode"/>
		
		<!-- Seed data - UI test data -->
		<add key="SeedData.UITestData.PaymentIntegration.Name" value="Integration"/>
		<add key="SeedData.UITestData.PaymentIntegration.BaseUri" value="https://www.your-ui-test-payment-integration.com/Payment"/>		

	</appSettings>

	<log4net configSource="log4net.config"/>

	<entityFramework>
	  <contexts>
		<context type="DataAccess.Persistence.IncomeDbContext, DataAccess">
			<databaseInitializer type="System.Data.Entity.MigrateDatabaseToLatestVersion`2[[DataAccess.Persistence.IncomeDbContext, DataAccess], [DataAccess.Migrations.Configuration, DataAccess]], EntityFramework">
				<parameters>
					<parameter type="System.Boolean" value="true" />
				</parameters>
			</databaseInitializer>
		</context>
	  </contexts>
	</entityFramework>

	<system.web>
		<globalization uiCulture="en-GB" culture="en-GB" />
		<compilation debug="true" targetFramework="4.8" />
		<httpRuntime targetFramework="4.8" />
		<customErrors mode="Off" />
		<sessionState mode="InProc" customProvider="DefaultSessionProvider" timeout="60">
			<providers>
				<add name="DefaultSessionProvider" type="System.Web.Providers.DefaultSessionStateProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" />
			</providers>
		</sessionState>
	</system.web>

	<system.web.webPages.razor>
		<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
		<pages pageBaseType="System.Web.MVC.WebViewPage">
			<namespaces>
				<add namespace="System.Web.Mvc" />
				<add namespace="System.Web.Mvc.Ajax" />
				<add namespace="System.Web.Mvc.Html" />
				<add namespace="System.Web.Optimization" />
				<add namespace="System.Web.Routing" />
				<add namespace="PaymentPortal" />
			</namespaces>
		</pages>
	</system.web.webPages.razor>

	<connectionStrings>
		<add name="IncomeDb" connectionString="Your connection string here" providerName="System.Data.SqlClient"/>
	</connectionStrings>

	<runtime>
		<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
			<dependentAssembly>
				<assemblyIdentity name="WebGrease" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="Unity.Abstractions" publicKeyToken="489B6ACCFAF20EF0" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-5.11.7.0" newVersion="5.11.7.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-5.2.9.0" newVersion="5.2.9.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="CC7B13FFCD2DDD51" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="B03F5F7F11D50A3A" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="System.Collections.Immutable" publicKeyToken="B03F5F7F11D50A3A" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="System.Buffers" publicKeyToken="CC7B13FFCD2DDD51" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30AD4FE6B2A6AEED" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="Microsoft.Web.Infrastructure" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="Microsoft.Bcl.AsyncInterfaces" publicKeyToken="CC7B13FFCD2DDD51" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="log4net" publicKeyToken="669E0DDF0BB1AA2A" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-2.0.15.0" newVersion="2.0.15.0"/>
			</dependentAssembly>
			<dependentAssembly>
				<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="EB42632606E9261F" culture="neutral"/>
				<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2"/>
			</dependentAssembly>
		</assemblyBinding>
	</runtime>
</configuration>