Implemented missing code for trial request to generate proper subscription / perpetual keys on request

Removed unused or implemented main navigation item raven license key as it's done through trial requests or customer only
This commit is contained in:
2022-08-22 20:35:10 +00:00
parent 95bc3d08cf
commit e01bfd1625
6 changed files with 65 additions and 66 deletions

View File

@@ -26,6 +26,7 @@ namespace rockfishCore.Controllers
{ {
[Required] [Required]
public string DbId { get; set; } public string DbId { get; set; }
public bool Perpetual { get; set; } = true;//not required and default true to not break any older beta testers out there, can set to required in future
[Required, EmailAddress] [Required, EmailAddress]
public string Email { get; set; } public string Email { get; set; }
[Required] [Required]
@@ -51,8 +52,8 @@ namespace rockfishCore.Controllers
return BadRequest(ModelState); return BadRequest(ModelState);
} }
// if (r.DbId == Guid.Empty) // if (r.DbId == Guid.Empty)
if(string.IsNullOrWhiteSpace(r.DbId)) if (string.IsNullOrWhiteSpace(r.DbId))
{ {
return BadRequest("E1000 - DBId invalid"); return BadRequest("E1000 - DBId invalid");
} }
@@ -70,7 +71,7 @@ namespace rockfishCore.Controllers
} }
//if there is an active trial for this db then can't do this they must request we re-release it or completely zap the database instead //if there is an active trial for this db then can't do this they must request we re-release it or completely zap the database instead
var MustBeOlderThan = DateUtil.DateToEpoch(DateTime.Now.AddDays((RavenKeyFactory.TRIAL_PERIOD_DAYS * -1))); var MustBeOlderThan = DateUtil.DateToEpoch(DateTime.Now.AddDays((RavenKeyFactory.TRIAL_PERIOD_DAYS * -1)));
@@ -85,6 +86,7 @@ namespace rockfishCore.Controllers
NewRequest.DbId = r.DbId; NewRequest.DbId = r.DbId;
NewRequest.CompanyName = r.Company; NewRequest.CompanyName = r.Company;
NewRequest.ContactName = r.Contact; NewRequest.ContactName = r.Contact;
NewRequest.Perpetual=r.Perpetual;
await ct.TrialRequest.AddAsync(NewRequest); await ct.TrialRequest.AddAsync(NewRequest);
await ct.SaveChangesAsync(); await ct.SaveChangesAsync();
NewRequest.EmailConfirmCode = NewRequest.Id.ToString() + FetchKeyCode.generate(); NewRequest.EmailConfirmCode = NewRequest.Id.ToString() + FetchKeyCode.generate();

View File

@@ -5,7 +5,7 @@
1) SET VERSION 1) SET VERSION
SET app.api RFVERSION property SET app.api RFVERSION property
RENAME ?rfv=6.18 parameter in default.htm to the new version so all files update on mobile RENAME ?rfv=6.19 parameter in default.htm to the new version so all files update on mobile
1.5) Run buildtemplates.bat if handlebars templates have changed at all 1.5) Run buildtemplates.bat if handlebars templates have changed at all

View File

@@ -2,7 +2,7 @@ namespace rockfishCore.Util
{ {
public static class RfVersion public static class RfVersion
{ {
public const string NumberOnly="6.18"; public const string NumberOnly="6.19";
public const string Full = "Rockfish server " + NumberOnly; public const string Full = "Rockfish server " + NumberOnly;
} }
} }

View File

@@ -11,73 +11,73 @@
<title>Rockfish loading....</title> <title>Rockfish loading....</title>
<!-- ICONS / MANIFEST --> <!-- ICONS / MANIFEST -->
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png?rfv=6.18"> <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png?rfv=6.19">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png?rfv=6.18"> <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png?rfv=6.19">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png?rfv=6.18"> <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png?rfv=6.19">
<link rel="manifest" href="/manifest.json?rfv=6.18"> <link rel="manifest" href="/manifest.json?rfv=6.19">
<link rel="mask-icon" href="/safari-pinned-tab.svg?rfv=6.18" color="#5bbad5"> <link rel="mask-icon" href="/safari-pinned-tab.svg?rfv=6.19" color="#5bbad5">
<meta name="theme-color" content="#ffffff"> <meta name="theme-color" content="#ffffff">
<!-- 3rd party components fonts and icons --> <!-- 3rd party components fonts and icons -->
<link href="css/materialdesignicons.min.css?rfv=6.18" media="all" rel="stylesheet" type="text/css" /> <link href="css/materialdesignicons.min.css?rfv=6.19" media="all" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="css/bootstrap.min.css?rfv=6.18" type="text/css" /> <link rel="stylesheet" href="css/bootstrap.min.css?rfv=6.19" type="text/css" />
<link rel="stylesheet" href="css/app.css?rfv=6.18" type="text/css" /> <link rel="stylesheet" href="css/app.css?rfv=6.19" type="text/css" />
<link rel="stylesheet" href="css/mdi-bs4-compat.css?rfv=6.18" type="text/css" /> <link rel="stylesheet" href="css/mdi-bs4-compat.css?rfv=6.19" type="text/css" />
<!-- third-party javascript --> <!-- third-party javascript -->
<script src="js/lib/jquery-3.3.1.min.js?rfv=6.18"></script> <script src="js/lib/jquery-3.3.1.min.js?rfv=6.19"></script>
<script src="js/lib/page.js?rfv=6.18"></script> <script src="js/lib/page.js?rfv=6.19"></script>
<script src="js/lib/jquery.event.gevent.js?rfv=6.18"></script> <script src="js/lib/jquery.event.gevent.js?rfv=6.19"></script>
<script src="js/lib/jquery.gzserialize.js?rfv=6.18"></script> <script src="js/lib/jquery.gzserialize.js?rfv=6.19"></script>
<script src="js/lib/handlebars.runtime.min-v4.7.6.js?rfv=6.18"></script> <script src="js/lib/handlebars.runtime.min-v4.7.6.js?rfv=6.19"></script>
<script src="js/lib/store.min.js?rfv=6.18"></script> <script src="js/lib/store.min.js?rfv=6.19"></script>
<script src="js/lib/jquery.autocomplete.min.js?rfv=6.18"></script> <script src="js/lib/jquery.autocomplete.min.js?rfv=6.19"></script>
<script src="js/lib/moment.min.js?rfv=6.18"></script> <script src="js/lib/moment.min.js?rfv=6.19"></script>
<!-- our javascript --> <!-- our javascript -->
<script src="js/index.js?rfv=6.18"></script> <script src="js/index.js?rfv=6.19"></script>
<script src="js/app.util.js?rfv=6.18"></script> <script src="js/app.util.js?rfv=6.19"></script>
<script src="js/app.api.js?rfv=6.18"></script> <script src="js/app.api.js?rfv=6.19"></script>
<script src="js/app.utilB.js?rfv=6.18"></script> <script src="js/app.utilB.js?rfv=6.19"></script>
<script src="js/app.nav.js?rfv=6.18"></script> <script src="js/app.nav.js?rfv=6.19"></script>
<script src="js/app.shell.js?rfv=6.18"></script> <script src="js/app.shell.js?rfv=6.19"></script>
<script src="js/app.fourohfour.js?rfv=6.18"></script> <script src="js/app.fourohfour.js?rfv=6.19"></script>
<script src="js/app.authenticate.js?rfv=6.18"></script> <script src="js/app.authenticate.js?rfv=6.19"></script>
<script src="js/app.customers.js?rfv=6.18"></script> <script src="js/app.customers.js?rfv=6.19"></script>
<script src="js/app.customerEdit.js?rfv=6.18"></script> <script src="js/app.customerEdit.js?rfv=6.19"></script>
<script src="js/app.customerSites.js?rfv=6.18"></script> <script src="js/app.customerSites.js?rfv=6.19"></script>
<script src="js/app.customerSiteEdit.js?rfv=6.18"></script> <script src="js/app.customerSiteEdit.js?rfv=6.19"></script>
<script src="js/app.purchases.js?rfv=6.18"></script> <script src="js/app.purchases.js?rfv=6.19"></script>
<script src="js/app.purchaseEdit.js?rfv=6.18"></script> <script src="js/app.purchaseEdit.js?rfv=6.19"></script>
<script src="js/app.license.js?rfv=6.18"></script> <script src="js/app.license.js?rfv=6.19"></script>
<script src="js/app.licenseTemplates.js?rfv=6.18"></script> <script src="js/app.licenseTemplates.js?rfv=6.19"></script>
<script src="js/app.licenseRequestEdit.js?rfv=6.18"></script> <script src="js/app.licenseRequestEdit.js?rfv=6.19"></script>
<script src="js/app.licenses.js?rfv=6.18"></script> <script src="js/app.licenses.js?rfv=6.19"></script>
<script src="js/app.licenseView.js?rfv=6.18"></script> <script src="js/app.licenseView.js?rfv=6.19"></script>
<script src="js/app.reportData.js?rfv=6.18"></script> <script src="js/app.reportData.js?rfv=6.19"></script>
<script src="js/app.reportDataProdEmail.js?rfv=6.18"></script> <script src="js/app.reportDataProdEmail.js?rfv=6.19"></script>
<script src="js/app.reportDataExpires.js?rfv=6.18"></script> <script src="js/app.reportDataExpires.js?rfv=6.19"></script>
<script src="js/app.search.js?rfv=6.18"></script> <script src="js/app.search.js?rfv=6.19"></script>
<script src="js/app.subscription.js?rfv=6.18"></script> <script src="js/app.subscription.js?rfv=6.19"></script>
<script src="js/app.subnotify.js?rfv=6.18"></script> <script src="js/app.subnotify.js?rfv=6.19"></script>
<script src="js/app.templates.js?rfv=6.18"></script> <script src="js/app.templates.js?rfv=6.19"></script>
<script src="js/app.templateEdit.js?rfv=6.18"></script> <script src="js/app.templateEdit.js?rfv=6.19"></script>
<script src="js/app.inbox.js?rfv=6.18"></script> <script src="js/app.inbox.js?rfv=6.19"></script>
<script src="js/app.mailEdit.js?rfv=6.18"></script> <script src="js/app.mailEdit.js?rfv=6.19"></script>
<script src="js/app.rfcaseEdit.js?rfv=6.18"></script> <script src="js/app.rfcaseEdit.js?rfv=6.19"></script>
<script src="js/app.rfcases.js?rfv=6.18"></script> <script src="js/app.rfcases.js?rfv=6.19"></script>
<script src="js/app.rfsettings.js?rfv=6.18"></script> <script src="js/app.rfsettings.js?rfv=6.19"></script>
<script src="js/app.ops.js?rfv=6.18"></script> <script src="js/app.ops.js?rfv=6.19"></script>
<script src="js/app.trials.js?rfv=6.18"></script> <script src="js/app.trials.js?rfv=6.19"></script>
<script src="js/app.trialEdit.js?rfv=6.18"></script> <script src="js/app.trialEdit.js?rfv=6.19"></script>
<script src="js/app.ravLicenses.js?rfv=6.18"></script> <script src="js/app.ravLicenses.js?rfv=6.19"></script>
<script src="js/app.ravLicense.js?rfv=6.18"></script> <script src="js/app.ravLicense.js?rfv=6.19"></script>
<!-- handlebars templates --> <!-- handlebars templates -->
<script src="js/templates/templates.js?rfv=6.18"></script> <script src="js/templates/templates.js?rfv=6.19"></script>
<script> <script>
@@ -107,7 +107,7 @@ window.onerror = function ( error ) {
<body class="rf-body"> <body class="rf-body">
<div id="app" class="container"></div> <div id="app" class="container"></div>
<script src="js/lib/bootstrap.min.js?rfv=6.18"></script> <script src="js/lib/bootstrap.min.js?rfv=6.19"></script>
</body> </body>
</html> </html>

View File

@@ -29,7 +29,7 @@ app.api = (function () {
generateFromRequest, generateFromRequest,
licenseEmailResponse; licenseEmailResponse;
RockFishVersion = "6.18"; RockFishVersion = "6.19";
////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////
// NOT AUTHORIZED ERROR HANDLER // NOT AUTHORIZED ERROR HANDLER

View File

@@ -24,10 +24,7 @@
<a class="rfac nav-link mdi mdi-basket" href="#!/subscription">Subscriptions </a> <a class="rfac nav-link mdi mdi-basket" href="#!/subscription">Subscriptions </a>
</li> </li>
<li id="ravlicense" class="nav-item">
<a class="rfac nav-link mdi mdi-ticket" href="#!/ravlicense">Raven License </a>
</li>
<li id="license" class="nav-item"> <li id="license" class="nav-item">
<a class="rfac nav-link mdi mdi-key" href="#!/license">v7 License </a> <a class="rfac nav-link mdi mdi-key" href="#!/license">v7 License </a>
</li> </li>