This commit is contained in:
2022-03-03 18:46:08 +00:00
parent 1ac4c7f51a
commit 122056a9da
59 changed files with 1259 additions and 474 deletions
@@ -92,10 +92,12 @@ namespace Saxonite.Net.Core.Web.Base.Consoles
// Filter.
SaxActivityIndex.Params prmActivityIndex = new SaxActivityIndex.Params();
prmActivityIndex.SportIdsIncluded.AddRange(context.SportIds);
prmActivityIndex.RegionIdsIncluded.AddRange(context.RegionIds);
prmActivityIndex.UserAccountIdsOwnerIncluded.AddRange(context.UserAccountIdsOwner);
prmActivityIndex.OrganisationIdsOwnerIncluded.AddRange(context.OrganisationIdsOwner);
prmActivityIndex.SportRegionIdsIncluded.AddRange(context.SportRegionIdsIncluded);
prmActivityIndex.EffectiveFrom = context.EffectiveFrom;
prmActivityIndex.EffectiveTo = context.EffectiveTo;
prmActivityIndex.NotExpiredOn = context.NotExpiredOn;
prmActivityIndex.Alias_ActivityIndex = alias_ActivityIndex;
prmActivityIndex.ResultsPaging.PageNo = 1;
prmActivityIndex.ResultsPaging.PageLength = 100;
@@ -389,14 +391,18 @@ namespace Saxonite.Net.Core.Web.Base.Consoles
IndexEntryData indexEntrydata = indexEntryDataList.Find(item => item.MatchesIds(indexEntry));
if (indexEntrydata != null)
{
// Match found - if the effective date differs, update it.
if (!indexEntry.EffectiveOn.Equals(indexEntrydata.EffectiveOn))
// Match found - update properties.
indexEntry.UserAccountIdOwner = indexEntrydata.UserAccountIdOwner;
indexEntry.OrganisationIdOwner = indexEntrydata.OrganisationIdOwner;
indexEntry.EffectiveOn = indexEntrydata.EffectiveOn;
indexEntry.ExpiresOn = indexEntrydata.ExpiresOn;
if (indexEntry.Changed)
{
indexEntry.EffectiveOn = indexEntrydata.EffectiveOn;
if (Internals.ActivityMgr.UpdateActivityIndex(indexEntry, dbUpdateInfo))
stats.EntriesUpdated++;
else SaLogger.Warn(fn + " Failed to update Activity Index - " + Internals.ActivityMgr.ErrorStateMessage);
}
// Remove the entry from the 'required' list.
// Entries remaining in this list will be created.
indexEntryDataList.Remove(indexEntrydata);
@@ -412,7 +418,11 @@ namespace Saxonite.Net.Core.Web.Base.Consoles
// The remaining required Index entries will be created.
foreach (IndexEntryData indexEntry in indexEntryDataList)
{
SaxActivityIndex itemIndexEntry = Internals.ActivityMgr.CreateActivityIndex(indexEntry.ItemId, indexEntry.SportId, indexEntry.RegionId, indexEntry.EffectiveOn);
SaxActivityIndex itemIndexEntry = Internals.ActivityMgr.CreateActivityIndex(indexEntry.ItemId, indexEntry.SportId, indexEntry.RegionId);
itemIndexEntry.UserAccountIdOwner = indexEntry.UserAccountIdOwner;
itemIndexEntry.OrganisationIdOwner = indexEntry.OrganisationIdOwner;
itemIndexEntry.EffectiveOn = indexEntry.EffectiveOn;
itemIndexEntry.ExpiresOn = indexEntry.ExpiresOn;
if (Internals.ActivityMgr.InsertActivityIndex(itemIndexEntry, dbUpdateInfo))
stats.EntriesInserted++;
else SaLogger.Warn(fn + " Failed to insert Activity Index - " + Internals.ActivityMgr.ErrorStateMessage);
@@ -439,7 +449,8 @@ namespace Saxonite.Net.Core.Web.Base.Consoles
" And " + SaxDbDfn_Core.GetColumnName(SaxDbDfn_Core.ColumnIdx.ActivityIndex_ItemId) + "=" + itemId.Id.ToLong();
ISacsDatabase db = SaxGlobals.App.GetCoreDatabase(SessionContext);
int recordsDeleted = db.ExecuteDelete(tableName, filter);
SaLogger.Info(fn + " Records deleted: " + recordsDeleted + ". Filter: " + filter, true);
if (recordsDeleted > 0)
SaLogger.Info(fn + " Records deleted: " + recordsDeleted + ". Filter: " + filter, true);
return true;
}
@@ -447,10 +458,10 @@ namespace Saxonite.Net.Core.Web.Base.Consoles
// User Activities
//-------------------------------------------------------------------
/// <summary>
/// Record listing of activties by user - those populated to the application page.
/// Record listing of activities by user - those populated to the application page.
/// <para>- Activities not previously listed are added to the user's list.</para>
/// <para>- Activities previously listed are updated in the user's list.</para>
/// <para>- User Activties no longer listed are flagged as 'Not currently listed'.</para>
/// <para>- User Activities no longer listed are flagged as 'Not currently listed'.</para>
/// </summary>
public override bool RecordUserActivitiesListed(SysId userAccountId, List<ItemId> activityItemIds, DbUpdateInfo dbUpdateInfo)
{
@@ -36,6 +36,8 @@ namespace Saxonite.Net.Core.Web.Base.Middleware
//-------------------------------------------------------------------
protected override async Task<AuthenticateResult> HandleAuthenticateAsync()
{
// NoOp task to avoid compiler warning.
await Task.Yield();
Context.Response.StatusCode = (int)HttpStatusCode.Unauthorized;
return AuthenticateResult.NoResult();
}
+15 -4
View File
@@ -238,9 +238,13 @@ namespace Saxonite.Net.Core.Web.Base.Models
case SaxDbDfn_Core.ColumnIdx.Organisation_PhoneMain:
case SaxDbDfn_Core.ColumnIdx.Organisation_PhoneAlt:
return Math.Min(maxLength, 20);
//case SaxDbDfn.ColumnIdx.UserAccount_Postcode:
//case SaxDbDfn.ColumnIdx.ItemAddress_Postcode:
// return Math.Min(maxLength, 16);
//case SaxDbDfn.ColumnIdx.UserAccount_Postcode:
//case SaxDbDfn.ColumnIdx.ItemAddress_Postcode:
// return Math.Min(maxLength, 16);
case SaxDbDfn_Core.ColumnIdx.Article_Headline:
return Math.Min(maxLength, 2000);
case SaxDbDfn_Core.ColumnIdx.Article_Summary:
return Math.Min(maxLength, 1000);
}
return maxLength;
}
@@ -288,7 +292,14 @@ namespace Saxonite.Net.Core.Web.Base.Models
}
public DateTime ParseDateFromForm(String value)
{
return DateUtil.ParseExact(value, "dd-MMM-yyyy", SessionCulture);
DateTime date = DateUtil.ParseExact(value, "dd-MMM-yyyy", SessionCulture);
if (!date.IsValid())
date = DateUtil.ParseExact(value, "dd-MMM-yyyy", CultureInfo.CurrentUICulture);
if (!date.IsValid())
date = DateUtil.ParseExact(value, "dd-MMM-yyyy", CultureInfo.CurrentCulture);
if (!date.IsValid())
date = DateUtil.ParseExact(value, "dd-MMM-yyyy", CultureInfo.InvariantCulture);
return date;
}
//-------------------------------------------------------------------