add support for trial periods
This commit is contained in:
parent
233da1508b
commit
07165ce68d
|
@ -80,6 +80,7 @@ else
|
||||||
<strong>@(String.Format("{0:n0}", context.Downloads))</strong> @SharedLocalizer["Search.Downloads"] |
|
<strong>@(String.Format("{0:n0}", context.Downloads))</strong> @SharedLocalizer["Search.Downloads"] |
|
||||||
@SharedLocalizer["Search.Released"]: <strong>@context.ReleaseDate.ToString("MMM dd, yyyy")</strong> |
|
@SharedLocalizer["Search.Released"]: <strong>@context.ReleaseDate.ToString("MMM dd, yyyy")</strong> |
|
||||||
@SharedLocalizer["Search.Version"]: <strong>@context.Version</strong>
|
@SharedLocalizer["Search.Version"]: <strong>@context.Version</strong>
|
||||||
|
@((MarkupString)(context.TrialPeriod > 0 ? " | <strong>" + context.TrialPeriod + " " + @SharedLocalizer["Trial"] + "</strong>" : ""))
|
||||||
</td>
|
</td>
|
||||||
<td style="width: 1px; vertical-align: middle;">
|
<td style="width: 1px; vertical-align: middle;">
|
||||||
@if (context.Price > 0 && !string.IsNullOrEmpty(context.PackageUrl))
|
@if (context.Price > 0 && !string.IsNullOrEmpty(context.PackageUrl))
|
||||||
|
|
|
@ -32,6 +32,10 @@ else
|
||||||
{
|
{
|
||||||
<button type="button" class="btn btn-success" @onclick=@(async () => await DownloadLanguage(context.Code))>@SharedLocalizer["Upgrade"]</button>
|
<button type="button" class="btn btn-success" @onclick=@(async () => await DownloadLanguage(context.Code))>@SharedLocalizer["Upgrade"]</button>
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
@((MarkupString)PurchaseLink(context.Code))
|
||||||
|
}
|
||||||
</td>
|
</td>
|
||||||
</Row>
|
</Row>
|
||||||
</Pager>
|
</Pager>
|
||||||
|
@ -91,6 +95,23 @@ else
|
||||||
return upgradeavailable;
|
return upgradeavailable;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string PurchaseLink(string code)
|
||||||
|
{
|
||||||
|
string link = "";
|
||||||
|
if (_packages != null)
|
||||||
|
{
|
||||||
|
var package = _packages.Where(item => item.PackageId == (Constants.PackageId + ".Client." + code)).FirstOrDefault();
|
||||||
|
if (package != null)
|
||||||
|
{
|
||||||
|
if (package.Price > 0 && !string.IsNullOrEmpty(package.PaymentUrl))
|
||||||
|
{
|
||||||
|
link = "<a class=\"btn btn-primary\" style=\"text-decoration: none !important\" href=\"" + package.PaymentUrl + "\" target=\"_new\">" + package.Price.ToString("$#,##0.00") + "</a>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return link;
|
||||||
|
}
|
||||||
|
|
||||||
private async Task DownloadLanguage(string code)
|
private async Task DownloadLanguage(string code)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
|
@ -37,6 +37,7 @@
|
||||||
<strong>@(String.Format("{0:n0}", context.Downloads))</strong> @SharedLocalizer["Search.Downloads"] |
|
<strong>@(String.Format("{0:n0}", context.Downloads))</strong> @SharedLocalizer["Search.Downloads"] |
|
||||||
@SharedLocalizer["Search.Released"]: <strong>@context.ReleaseDate.ToString("MMM dd, yyyy")</strong> |
|
@SharedLocalizer["Search.Released"]: <strong>@context.ReleaseDate.ToString("MMM dd, yyyy")</strong> |
|
||||||
@SharedLocalizer["Search.Version"]: <strong>@context.Version</strong>
|
@SharedLocalizer["Search.Version"]: <strong>@context.Version</strong>
|
||||||
|
@((MarkupString)(context.TrialPeriod > 0 ? " | <strong>" + context.TrialPeriod + " " + @SharedLocalizer["Trial"] + "</strong>" : ""))
|
||||||
</td>
|
</td>
|
||||||
<td style="width: 1px; vertical-align: middle;">
|
<td style="width: 1px; vertical-align: middle;">
|
||||||
@if (context.Price > 0 && !string.IsNullOrEmpty(context.PackageUrl))
|
@if (context.Price > 0 && !string.IsNullOrEmpty(context.PackageUrl))
|
||||||
|
|
|
@ -39,6 +39,10 @@ else
|
||||||
{
|
{
|
||||||
<button type="button" class="btn btn-success" @onclick=@(async () => await DownloadModule(context.PackageName, context.Version))>@SharedLocalizer["Upgrade"]</button>
|
<button type="button" class="btn btn-success" @onclick=@(async () => await DownloadModule(context.PackageName, context.Version))>@SharedLocalizer["Upgrade"]</button>
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
@((MarkupString)PurchaseLink(context.PackageName))
|
||||||
|
}
|
||||||
</td>
|
</td>
|
||||||
</Row>
|
</Row>
|
||||||
</Pager>
|
</Pager>
|
||||||
|
@ -82,6 +86,23 @@ else
|
||||||
return upgradeavailable;
|
return upgradeavailable;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string PurchaseLink(string packagename)
|
||||||
|
{
|
||||||
|
string link = "";
|
||||||
|
if (!string.IsNullOrEmpty(packagename) && _packages != null)
|
||||||
|
{
|
||||||
|
var package = _packages.Where(item => item.PackageId == packagename).FirstOrDefault();
|
||||||
|
if (package != null)
|
||||||
|
{
|
||||||
|
if (package.Price > 0 && !string.IsNullOrEmpty(package.PaymentUrl))
|
||||||
|
{
|
||||||
|
link = "<a class=\"btn btn-primary\" style=\"text-decoration: none !important\" href=\"" + package.PaymentUrl + "\" target=\"_new\">" + package.Price.ToString("$#,##0.00") + "</a>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return link;
|
||||||
|
}
|
||||||
|
|
||||||
private async Task DownloadModule(string packagename, string version)
|
private async Task DownloadModule(string packagename, string version)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
|
@ -37,6 +37,7 @@
|
||||||
<strong>@(String.Format("{0:n0}", context.Downloads))</strong> @SharedLocalizer["Search.Downloads"] |
|
<strong>@(String.Format("{0:n0}", context.Downloads))</strong> @SharedLocalizer["Search.Downloads"] |
|
||||||
@SharedLocalizer["Search.Released"]: <strong>@context.ReleaseDate.ToString("MMM dd, yyyy")</strong> |
|
@SharedLocalizer["Search.Released"]: <strong>@context.ReleaseDate.ToString("MMM dd, yyyy")</strong> |
|
||||||
@SharedLocalizer["Search.Version"]: <strong>@context.Version</strong>
|
@SharedLocalizer["Search.Version"]: <strong>@context.Version</strong>
|
||||||
|
@((MarkupString)(context.TrialPeriod > 0 ? " | <strong>" + context.TrialPeriod + " " + @SharedLocalizer["Trial"] + "</strong>" : ""))
|
||||||
</td>
|
</td>
|
||||||
<td style="width: 1px; vertical-align: middle;">
|
<td style="width: 1px; vertical-align: middle;">
|
||||||
@if (context.Price > 0 && !string.IsNullOrEmpty(context.PackageUrl))
|
@if (context.Price > 0 && !string.IsNullOrEmpty(context.PackageUrl))
|
||||||
|
|
|
@ -40,6 +40,10 @@ else
|
||||||
{
|
{
|
||||||
<button type="button" class="btn btn-success" @onclick=@(async () => await DownloadTheme(context.PackageName, context.Version))>@SharedLocalizer["Upgrade"]</button>
|
<button type="button" class="btn btn-success" @onclick=@(async () => await DownloadTheme(context.PackageName, context.Version))>@SharedLocalizer["Upgrade"]</button>
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
@((MarkupString)PurchaseLink(context.PackageName))
|
||||||
|
}
|
||||||
</td>
|
</td>
|
||||||
<td></td>
|
<td></td>
|
||||||
</Row>
|
</Row>
|
||||||
|
@ -99,6 +103,23 @@ else
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string PurchaseLink(string packagename)
|
||||||
|
{
|
||||||
|
string link = "";
|
||||||
|
if (!string.IsNullOrEmpty(packagename) && _packages != null)
|
||||||
|
{
|
||||||
|
var package = _packages.Where(item => item.PackageId == packagename).FirstOrDefault();
|
||||||
|
if (package != null)
|
||||||
|
{
|
||||||
|
if (package.Price > 0 && !string.IsNullOrEmpty(package.PaymentUrl))
|
||||||
|
{
|
||||||
|
link = "<a class=\"btn btn-primary\" style=\"text-decoration: none !important\" href=\"" + package.PaymentUrl + "\" target=\"_new\">" + package.Price.ToString("$#,##0.00") + "</a>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return link;
|
||||||
|
}
|
||||||
|
|
||||||
private async Task DeleteTheme(Theme Theme)
|
private async Task DeleteTheme(Theme Theme)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
|
|
@ -300,4 +300,7 @@
|
||||||
<data name="Review License Terms" xml:space="preserve">
|
<data name="Review License Terms" xml:space="preserve">
|
||||||
<value>Review License Terms</value>
|
<value>Review License Terms</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="Trial" xml:space="preserve">
|
||||||
|
<value>Day Trial</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -76,5 +76,10 @@ namespace Oqtane.Models
|
||||||
/// The Url for purchasing the package ( if commercial )
|
/// The Url for purchasing the package ( if commercial )
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string PaymentUrl { get; set; }
|
public string PaymentUrl { get; set; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The trial period in days ( if commercial )
|
||||||
|
/// </summary>
|
||||||
|
public int TrialPeriod { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user