Ends in:
5 DAYS
5 HRS
13 MIN
17 SEC
Ends in:
5 D
5 H
13 M
17 S

Activities of "enisn"

Hi @cala

Sorry to hear that. We'll release a new 1.0 version for LeptonX as soon as possible. Thanks for your patience.

Also your credit is refunded.

Thanks, we reproduce the problem. We're working on it and solve it asap

You can provide different values per tenant while resolving service according to your requirement.

You can use the following way to use your services for making the configuration depending on tenants

https://learn.microsoft.com/en-us/aspnet/core/fundamentals/configuration/options?view=aspnetcore-7.0#use-di-services-to-configure-options

We couldn't reproduce the issue. Can you provide a reproducible project to us? You can send it to support@abp.io

We can't reproduce the issue. can you provide a sample project that reproduces the issue?

Configuring a blazor wasm project as Asp.NET Core Hosted isn't hard topic. It can be achieved easily. We don't provide this template for now but we're thinking of a much simpler blazor wasm template and it'll be aspnetcore hosted.

Can you try the following option?

Configure<LeptonXThemeBlazorOptions>(options =>
{
    // This will render only first 2 items
    options.MobileMenuSelector = (menuItems) => menuItems.Take(2);      
});

You don'T have to save database all the changes, you can keep data in Blazor component until saving it.

I'll present a simple example how to achieve that and how to modify items in memory in blazor ui

public partial Class MyPage
{
    public Dictionary<string, string> MyList {get;} = new();
    
    public string Key { get; set; }
    
    public string Value { get; set; }
    
    public void AddOption()
    {
        MyList.Add(Key, Value);
    }
    
    public async Task SaveAsync()
    {
        // TODO: Save 'MyList'.
    }
}

@foreach(var item in MyList)
{
    <Field>
        <FieldLabel>@item.Key</FieldLabel>
        <FieldBody>
            <TextEdit @bind-Value="@MyList[@item.Key].Value" />
        </FieldBody>
    </Field>
}
</hr />
<Field>
    <FieldLabel>Key</FieldLabel>
    <FieldBody>
        <TextEdit @bind-Value="@Key" />
    </FieldBody>
</Field>

<Field>
    <FieldLabel>Key</FieldLabel>
    <FieldBody>
        <TextEdit @bind-Value="@Value" />
    </FieldBody>
</Field>
<Button OnClick="()=>AddOption("")" />
 Text="</Button>Add Option

<Button OnClick="SaveAsync" >Save</Button>

We work on angular solution not mvc. What about per tenant payment gateway settings? Each tenant will have their own payment gateway settings? Do you have a sample for that how to change host payment settings for each individual tenant when they do payments?

Ok, You mean that tenants will receive payments instead of system owner receives payment from tenants. In that case, unfortunetely Payment module doesn't have tenant based configuration, you can configure it per application at the moment.

Oh sorry, I misunderstood the question.

All integration should go through payment request?

Yes, all the integration is on PaymentReques. After creating a payment request, you should redirect to a gateway selection page and users can pick one of configured payment ways and continue payment. Mostly payment completion is done synchronized with callback from payment provider.

  • You can see the available implemented providers packages from here

  • You can even add your own custom provider to show gateway selection page

Configure<PaymentOptions>(options =>
{
	options.Gateways.Add(
		new PaymentGatewayConfiguration(
			"MyPaymentGatewayName",
			new FixedLocalizableString("MyPaymentGatewayName"),
			typeof(MyPaymentGateway)
		)
	);
});
  • Gateway selection page is on /Payment/GatewaySelection route and you can redirect to that route with paymentRequestId querystring parameter after creating a payment request. On that page, if you configured more than one provider, users will see a payment gateway selection page otherwise, they'll be redirected to the payment page (paypal, stripe etc...)
public virtual async Task<IActionResult> OnPost()
    {
        var paymentRequest = await _paymentRequestAppService.CreateAsync(new PaymentRequestCreateDto()
        {
            Currency= "USD",
            Products = new List<PaymentRequestProductCreateDto>()
            {
                new PaymentRequestProductCreateDto
                {
                    Code = "Product_01",
                    Name = "LEGO Super Mario",
                    Count = 2,
                    UnitPrice = 60,
                    TotalPrice = 200
                }
            }
        });
        
        return LocalRedirectPreserveMethod("/Payment/GatewaySelection?paymentRequestId=" + paymentRequest.Id);
    }
Showing 141 to 150 of 496 entries
Made with ❤️ on ABP v9.1.0-preview. Updated on November 26, 2024, 12:49