Skip to content

Commit

Permalink
Merge pull request #12 from openstore-ecommerce/feature/improve-payme…
Browse files Browse the repository at this point in the history
…nt-description

Feature/improve payment description
  • Loading branch information
skamphuis committed Sep 8, 2021
2 parents 9da8778 + adf7063 commit 2ac4951
Show file tree
Hide file tree
Showing 8 changed files with 79 additions and 6 deletions.
15 changes: 15 additions & 0 deletions App_LocalResources/Payment.ascx.nl-NL.resx
Expand Up @@ -174,4 +174,19 @@
<data name="IdealOnlyMessage.Text" xml:space="preserve">
<value>Keuze voor betaalmethode bij Mollie overslaan en direct het bank-selectie scherm van iDeal tonen.</value>
</data>
<data name="AddUsernameLabel.Text" xml:space="preserve">
<value>Gebruikersnaam toevoegen</value>
</data>
<data name="AddUsernameMessage.Text" xml:space="preserve">
<value>Gebruikersnaam toevoegen aan de omschrijving van de betaling op het bankafschrift.</value>
</data>
<data name="PaymentDescription.Text" xml:space="preserve">
<value>Omschrijving betaling</value>
</data>
<data name="PaymentDescriptionDefault.Text" xml:space="preserve">
<value>Bestelling ID: [ORDERNUMBER]</value>
</data>
<data name="PaymentDescriptionHelp.Text" xml:space="preserve">
<value>De omschrijving van de betaling zoals zichtbaar op het bankafschrift. Gebruik [ORDERNUMBER] voor het bestelnummer. Is dat er niet, dan wordt het bestelnummer aan het eind van de omschrijving geplaatst.</value>
</data>
</root>
15 changes: 15 additions & 0 deletions App_LocalResources/Payment.ascx.resx
Expand Up @@ -174,4 +174,19 @@
<data name="IdealOnlyMessage.Text" xml:space="preserve">
<value>Skip payment method selection at Mollie and go straight to iDeal bank selection instead.</value>
</data>
<data name="AddUsernameLabel.Text" xml:space="preserve">
<value>Add Username</value>
</data>
<data name="AddUsernameMessage.Text" xml:space="preserve">
<value>Add username to payment description on the bank statement</value>
</data>
<data name="PaymentDescription.Text" xml:space="preserve">
<value>Payment description</value>
</data>
<data name="PaymentDescriptionDefault.Text" xml:space="preserve">
<value>Order ID: [ORDERNUMBER]</value>
</data>
<data name="PaymentDescriptionHelp.Text" xml:space="preserve">
<value>Payment description as writen on the bank statement. Use [ORDERNUMBER] for ordernumber. If that's missing, the ordernumber will be written at the end of the description.</value>
</data>
</root>
32 changes: 30 additions & 2 deletions Components/PaymentProvider.cs
Expand Up @@ -11,6 +11,7 @@
using DotNetNuke.Entities.Portals;
using DotNetNuke.Entities.Users;
using DotNetNuke.Services.Log.EventLog;
using DotNetNuke.Services.Tokens;
using Mollie.Api.Client;
using Mollie.Api.Client.Abstract;
using Mollie.Api.Models;
Expand Down Expand Up @@ -59,21 +60,48 @@ public override string RedirectForPayment(OrderData orderData)

var info = ProviderUtils.GetProviderSettings();

string cartDesc = info.GetXmlProperty("genxml/textbox/cartdescription");
string cartDesc = info.GetXmlProperty("genxml/lang/genxml/textbox/paymentdescription");
if (string.IsNullOrEmpty(cartDesc)) // default to previous behaviour
{
cartDesc = "Bestelling ID: [ORDERNUMBER]";
}
var ApiKey = info.GetXmlProperty("genxml/textbox/key");
var idealOnly = true; // default to previous behaviour
if (info.XMLDoc.SelectSingleNode("genxml/checkbox/idealonly") != null)
{
// take the value from the settings, if it exists
idealOnly = info.GetXmlPropertyBool("genxml/checkbox/idealonly");
}
var addUsername = false; // default to previous behaviour
if (info.XMLDoc.SelectSingleNode("genxml/checkbox/addusername") != null)
{
// take the value from the settings, if it exists
addUsername = info.GetXmlPropertyBool("genxml/checkbox/addusername");
}
var notifyUrl = Utils.ToAbsoluteUrl("/DesktopModules/NBright/OS_Mollie/notify.ashx");
var returnUrl = Globals.NavigateURL(StoreSettings.Current.PaymentTabId, "");

//orderid/itemid
var ItemId = orderData.PurchaseInfo.ItemID.ToString("");

var productOrderNumber = orderData.OrderNumber;
if (cartDesc.Contains("[ORDERNUMBER]"))
{
cartDesc = cartDesc.Replace("[ORDERNUMBER]", productOrderNumber);
}
else
{
cartDesc = cartDesc.Trim() + " " + productOrderNumber;
}

if (addUsername)
{
var orderUser = UserController.Instance.GetUser(orderData.PortalId, orderData.UserId);
if (!string.IsNullOrEmpty(orderUser?.Username))
{
cartDesc = cartDesc + "/" + orderUser?.Username;
}
}

////var nbi = new NBrightInfo();
//nbi.XMLData = orderData.payselectionXml;
Expand All @@ -95,7 +123,7 @@ public override string RedirectForPayment(OrderData orderData)
IdealPaymentRequest paymentRequestIdeal = new IdealPaymentRequest()
{
Amount = new Amount(Currency.EUR, totalPrijsString2),
Description = "Bestelling ID: " + " " + productOrderNumber + " " + cartDesc,
Description = cartDesc,
RedirectUrl = returnUrl + "/orderid/" + ItemId,
WebhookUrl = notifyUrl + "?orderid=" + ItemId,
Locale = Locale.nl_NL,
Expand Down
2 changes: 1 addition & 1 deletion DNNpackager.dnnpack
@@ -1,5 +1,5 @@
<root>
<version>1.4.1</version>
<version>1.4.2</version>
<websitedestrelpath>\DesktopModules\NBright\OS_Mollie</websitedestrelpath>
<websitedestbinrelpath>\bin</websitedestbinrelpath>
<!-- Include only files that match the regular expression -->
Expand Down
Binary file added Installation/OpenStore_Mollie_1.4.2_Install.zip
Binary file not shown.
2 changes: 1 addition & 1 deletion OS_Mollie.dnn
@@ -1,6 +1,6 @@
<dotnetnuke type="Package" version="5.0">
<packages>
<package name="OS_Mollie" type="Module" version="1.4.1">
<package name="OS_Mollie" type="Module" version="1.5.0">
<friendlyName>OS_Mollie</friendlyName>
<description>Mollie Payment provider for Open-Store</description>
<iconFile>~/DesktopModules/NBright/NBrightBuy/icon-openstore.png</iconFile>
Expand Down
4 changes: 2 additions & 2 deletions Properties/AssemblyInfo.cs
Expand Up @@ -32,5 +32,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.4.1.0")]
[assembly: AssemblyFileVersion("1.4.1.0")]
[assembly: AssemblyVersion("1.4.2.0")]
[assembly: AssemblyFileVersion("1.4.2.0")]
15 changes: 15 additions & 0 deletions Themes/config/default/settingsfields.cshtml
Expand Up @@ -118,6 +118,13 @@ var info = (NBrightInfo)Model.List.First();
@TextBox(info, "genxml/textbox/key", "class='form-control'", "999")
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">@ResourceKey("Payment.PaymentDescription", info.Lang)</label>
<div class="col-sm-3">
@NBrightTextBox(info, "genxml/lang/genxml/textbox/paymentdescription", "maxlength='100'", ResourceKey("CartView.PaymentDescriptionDefault", info.Lang).ToString())
<span class="help-block">@ResourceKey("Payment.PaymentDescriptionHelp", info.Lang)</span>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">@ResourceKey("Payment.IdealOnlyLabel", info.Lang)</label>
<div class="col-sm-5">
Expand All @@ -126,6 +133,14 @@ var info = (NBrightInfo)Model.List.First();
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">@ResourceKey("Payment.AddUsernameLabel", info.Lang)</label>
<div class="col-sm-5">
<div class="dnnFormItem">
@CheckBox(info, "genxml/checkbox/addusername", ResourceKey("Payment.AddUsernameMessage", info.Lang).ToString(), "", false)
</div>
</div>
</div>
</div>

<div class="row">
Expand Down

0 comments on commit 2ac4951

Please sign in to comment.